]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/modules/Makefile
Merge release 1.14 of bsnmp.
[FreeBSD/FreeBSD.git] / sys / modules / Makefile
1 # $FreeBSD$
2
3 SYSDIR?=${SRCTOP}/sys
4 .include "${SYSDIR}/conf/kern.opts.mk"
5
6 SUBDIR_PARALLEL=
7
8 # Modules that include binary-only blobs of microcode should be selectable by
9 # MK_SOURCELESS_UCODE option (see below).
10
11 .include "${SYSDIR}/conf/config.mk"
12
13 .if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
14 SUBDIR=${MODULES_OVERRIDE}
15 .else
16 SUBDIR= \
17         ${_3dfx} \
18         ${_3dfx_linux} \
19         ${_aac} \
20         ${_aacraid} \
21         accf_data \
22         accf_dns \
23         accf_http \
24         acl_nfs4 \
25         acl_posix1e \
26         ${_acpi} \
27         ae \
28         ${_aesni} \
29         age \
30         ${_agp} \
31         ahci \
32         aic7xxx \
33         alc \
34         ale \
35         alq \
36         ${_amd_ecc_inject} \
37         ${_amdgpio} \
38         ${_amdsbwd} \
39         ${_amdsmn} \
40         ${_amdtemp} \
41         amr \
42         ${_an} \
43         ${_aout} \
44         ${_apm} \
45         ${_arcmsr} \
46         ${_allwinner} \
47         ${_armv8crypto} \
48         ${_asmc} \
49         ata \
50         ath \
51         ath_dfs \
52         ath_hal \
53         ath_hal_ar5210 \
54         ath_hal_ar5211 \
55         ath_hal_ar5212 \
56         ath_hal_ar5416 \
57         ath_hal_ar9300 \
58         ath_main \
59         ath_rate \
60         ath_pci \
61         ${_autofs} \
62         ${_bce} \
63         ${_bcm283x_clkman} \
64         ${_bcm283x_pwm} \
65         bfe \
66         bge \
67         bhnd \
68         ${_bxe} \
69         ${_bios} \
70         ${_blake2} \
71         bnxt \
72         bridgestp \
73         bwi \
74         bwn \
75         ${_bytgpio} \
76         ${_chvgpio} \
77         cam \
78         ${_cardbus} \
79         ${_carp} \
80         cas \
81         ${_cbb} \
82         cc \
83         ${_ccp} \
84         cd9660 \
85         cd9660_iconv \
86         ${_ce} \
87         ${_cfi} \
88         ${_chromebook_platform} \
89         ${_ciss} \
90         cloudabi \
91         ${_cloudabi32} \
92         ${_cloudabi64} \
93         ${_cmx} \
94         ${_coretemp} \
95         ${_cp} \
96         ${_cpsw} \
97         ${_cpuctl} \
98         ${_cpufreq} \
99         ${_crypto} \
100         ${_cryptodev} \
101         ctl \
102         ${_cxgb} \
103         ${_cxgbe} \
104         dc \
105         dcons \
106         dcons_crom \
107         ${_dpms} \
108         dummynet \
109         ${_efirt} \
110         ${_em} \
111         ${_ena} \
112         esp \
113         ${_et} \
114         evdev \
115         ${_exca} \
116         ext2fs \
117         fdc \
118         fdescfs \
119         ${_ffec} \
120         filemon \
121         firewire \
122         firmware \
123         fusefs \
124         ${_fxp} \
125         gem \
126         geom \
127         ${_glxiic} \
128         ${_glxsb} \
129         gpio \
130         hifn \
131         hme \
132         ${_hpt27xx} \
133         ${_hptiop} \
134         ${_hptmv} \
135         ${_hptnr} \
136         ${_hptrr} \
137         hwpmc \
138         ${_hwpmc_mips24k} \
139         ${_hwpmc_mips74k} \
140         ${_hyperv} \
141         i2c \
142         ${_iavf} \
143         ${_ibcore} \
144         ${_ichwd} \
145         ${_ida} \
146         if_bridge \
147         if_disc \
148         if_edsc \
149         ${_if_enc} \
150         if_epair \
151         ${_if_gif} \
152         ${_if_gre} \
153         ${_if_me} \
154         if_lagg \
155         ${_if_ndis} \
156         ${_if_stf} \
157         if_tuntap \
158         if_vlan \
159         if_vxlan \
160         iflib \
161         ${_iir} \
162         imgact_binmisc \
163         ${_intelspi} \
164         ${_io} \
165         ${_ioat} \
166         ${_ipoib} \
167         ${_ipdivert} \
168         ${_ipfilter} \
169         ${_ipfw} \
170         ipfw_nat \
171         ${_ipfw_nat64} \
172         ${_ipfw_nptv6} \
173         ${_ipfw_pmod} \
174         ${_ipmi} \
175         ip6_mroute_mod \
176         ip_mroute_mod \
177         ${_ips} \
178         ${_ipsec} \
179         ${_ipw} \
180         ${_ipwfw} \
181         ${_isci} \
182         ${_iser} \
183         isp \
184         ${_ispfw} \
185         ${_itwd} \
186         ${_iwi} \
187         ${_iwifw} \
188         ${_iwm} \
189         ${_iwmfw} \
190         ${_iwn} \
191         ${_iwnfw} \
192         ${_ix} \
193         ${_ixv} \
194         ${_ixl} \
195         jme \
196         kbdmux \
197         kgssapi \
198         kgssapi_krb5 \
199         khelp \
200         krpc \
201         ksyms \
202         ${_ktls_ocf} \
203         le \
204         lge \
205         libalias \
206         libiconv \
207         libmchain \
208         lindebugfs \
209         linuxkpi \
210         ${_lio} \
211         lpt \
212         mac_biba \
213         mac_bsdextended \
214         mac_ifoff \
215         mac_lomac \
216         mac_mls \
217         mac_none \
218         mac_ntpd \
219         mac_partition \
220         mac_portacl \
221         mac_seeotheruids \
222         mac_stub \
223         mac_test \
224         malo \
225         md \
226         mdio \
227         mem \
228         mfi \
229         mii \
230         mlx \
231         mlxfw \
232         ${_mlx4} \
233         ${_mlx4ib} \
234         ${_mlx4en} \
235         ${_mlx5} \
236         ${_mlx5en} \
237         ${_mlx5ib} \
238         ${_mly} \
239         mmc \
240         mmcsd \
241         ${_mpr} \
242         ${_mps} \
243         mpt \
244         mqueue \
245         mrsas \
246         msdosfs \
247         msdosfs_iconv \
248         msk \
249         ${_mthca} \
250         mvs \
251         mwl \
252         ${_mwlfw} \
253         mxge \
254         my \
255         ${_nctgpio} \
256         ${_ndis} \
257         ${_netgraph} \
258         ${_nfe} \
259         nfscl \
260         nfscommon \
261         nfsd \
262         nfslock \
263         nfslockd \
264         nfssvc \
265         nge \
266         nmdm \
267         nullfs \
268         ${_ntb} \
269         ${_nvd} \
270         ${_nvdimm} \
271         ${_nvme} \
272         ${_nvram} \
273         oce \
274         ${_ocs_fc} \
275         otus \
276         ${_otusfw} \
277         ow \
278         ${_padlock} \
279         ${_padlock_rng} \
280         ${_pccard} \
281         ${_pchtherm} \
282         ${_pcfclock} \
283         ${_pf} \
284         ${_pflog} \
285         ${_pfsync} \
286         plip \
287         ${_pms} \
288         ppbus \
289         ppc \
290         ppi \
291         pps \
292         procfs \
293         proto \
294         pseudofs \
295         ${_pst} \
296         pty  \
297         puc \
298         pwm \
299         ${_qlxge} \
300         ${_qlxgb} \
301         ${_qlxgbe} \
302         ${_qlnx} \
303         ral \
304         ${_ralfw} \
305         ${_random_fortuna} \
306         ${_random_other} \
307         rc4 \
308         ${_rdma} \
309         ${_rdrand_rng} \
310         re \
311         rl \
312         ${_rockchip} \
313         rtwn \
314         rtwn_pci \
315         rtwn_usb \
316         ${_rtwnfw} \
317         ${_s3} \
318         ${_safe} \
319         ${_sbni} \
320         scc \
321         sdhci \
322         ${_sdhci_acpi} \
323         sdhci_pci \
324         sdio \
325         sem \
326         send \
327         ${_sfxge} \
328         sge \
329         ${_sgx} \
330         ${_sgx_linux} \
331         siftr \
332         siis \
333         sis \
334         sk \
335         ${_smartpqi} \
336         smbfs \
337         snp \
338         sound \
339         ${_speaker} \
340         spi \
341         ${_splash} \
342         ${_sppp} \
343         ste \
344         stge \
345         ${_superio} \
346         ${_sym} \
347         ${_syscons} \
348         sysvipc \
349         tcp \
350         ${_ti} \
351         tmpfs \
352         ${_toecore} \
353         ${_tpm} \
354         ${_twa} \
355         twe \
356         tws \
357         uart \
358         ubsec \
359         udf \
360         udf_iconv \
361         ufs \
362         uinput \
363         unionfs \
364         usb \
365         ${_vesa} \
366         ${_virtio} \
367         vge \
368         ${_viawd} \
369         videomode \
370         vkbd \
371         ${_vmd} \
372         ${_vmm} \
373         ${_vmware} \
374         vr \
375         vte \
376         ${_wbwd} \
377         ${_wi} \
378         wlan \
379         wlan_acl \
380         wlan_amrr \
381         wlan_ccmp \
382         wlan_rssadapt \
383         wlan_tkip \
384         wlan_wep \
385         wlan_xauth \
386         ${_wpi} \
387         ${_wpifw} \
388         ${_x86bios} \
389         xl \
390         xz \
391         zlib
392
393 .if ${MK_AUTOFS} != "no" || defined(ALL_MODULES)
394 _autofs=        autofs
395 .endif
396
397 .if ${MK_CDDL} != "no" || defined(ALL_MODULES)
398 .if (${MACHINE_CPUARCH} != "arm" || ${MACHINE_ARCH:Marmv[67]*} != "") && \
399         ${MACHINE_CPUARCH} != "mips"
400 .if ${KERN_OPTS:MKDTRACE_HOOKS}
401 SUBDIR+=        dtrace
402 .endif
403 .endif
404 SUBDIR+=        opensolaris
405 .endif
406
407 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
408 .if exists(${SRCTOP}/sys/opencrypto)
409 _crypto=        crypto
410 _cryptodev=     cryptodev
411 _random_fortuna=random_fortuna
412 _random_other=  random_other
413 _ktls_ocf=      ktls_ocf
414 .endif
415 .endif
416
417 .if ${MK_CUSE} != "no" || defined(ALL_MODULES)
418 SUBDIR+=        cuse
419 .endif
420
421 .if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \
422         defined(ALL_MODULES)
423 _carp=          carp
424 _toecore=       toecore
425 _if_enc=        if_enc
426 _if_gif=        if_gif
427 _if_gre=        if_gre
428 _ipfw_pmod=     ipfw_pmod
429 .if ${MK_IPSEC_SUPPORT} != "no"
430 _ipsec=         ipsec
431 .endif
432 .endif
433
434 .if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \
435         defined(ALL_MODULES)
436 _if_stf=        if_stf
437 .endif
438
439 .if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES)
440 _if_me=         if_me
441 _ipdivert=      ipdivert
442 _ipfw=          ipfw
443 .if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES)
444 _ipfw_nat64=    ipfw_nat64
445 .endif
446 .endif
447
448 .if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES)
449 _ipfw_nptv6=    ipfw_nptv6
450 .endif
451
452 .if ${MK_IPFILTER} != "no" || defined(ALL_MODULES)
453 _ipfilter=      ipfilter
454 .endif
455
456 .if ${MK_ISCSI} != "no" || defined(ALL_MODULES)
457 SUBDIR+=        cfiscsi
458 SUBDIR+=        iscsi
459 SUBDIR+=        iscsi_initiator
460 .endif
461
462 .if !empty(OPT_FDT)
463 SUBDIR+=        fdt
464 .endif
465
466 # Linuxulator
467 .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
468     ${MACHINE_CPUARCH} == "i386"
469 SUBDIR+=        linprocfs
470 SUBDIR+=        linsysfs
471 .endif
472 .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
473 SUBDIR+=        linux
474 .endif
475 .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64"
476 SUBDIR+=        linux64
477 SUBDIR+=        linux_common
478 .endif
479
480 .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
481     ${MACHINE_CPUARCH} == "i386"
482 _ena=           ena
483 .if ${MK_OFED} != "no" || defined(ALL_MODULES)
484 _ibcore=        ibcore
485 _ipoib=         ipoib
486 _iser=          iser
487 .endif
488 _mlx4=          mlx4
489 _mlx5=          mlx5
490 .if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \
491         defined(ALL_MODULES)
492 _mlx4en=        mlx4en
493 _mlx5en=        mlx5en
494 .endif
495 .if ${MK_OFED} != "no" || defined(ALL_MODULES)
496 _mthca=         mthca
497 _mlx4ib=        mlx4ib
498 _mlx5ib=        mlx5ib
499 .endif
500 .endif
501
502 .if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES)
503 _netgraph=      netgraph
504 .endif
505
506 .if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \
507         ${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES)
508 _pf=            pf
509 _pflog=         pflog
510 .if ${MK_INET_SUPPORT} != "no"
511 _pfsync=        pfsync
512 .endif
513 .endif
514
515 .if ${MK_SOURCELESS_UCODE} != "no"
516 _bce=           bce
517 _fxp=           fxp
518 _ispfw=         ispfw
519 _ti=            ti
520
521 .if ${MACHINE_CPUARCH} != "mips"
522 _mwlfw=         mwlfw
523 _otusfw=        otusfw
524 _ralfw=         ralfw
525 _rtwnfw=        rtwnfw
526 .endif
527 .endif
528
529 .if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} != "arm" && \
530         ${MACHINE_CPUARCH} != "mips" && \
531         ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" && \
532         ${MACHINE_CPUARCH} != "riscv"
533 _cxgbe=         cxgbe
534 .endif
535
536 # These rely on 64bit atomics
537 .if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" && \
538         ${MACHINE_CPUARCH} != "mips"
539 _mps=           mps
540 _mpr=           mpr
541 .endif
542
543 .if ${MK_TESTS} != "no" || defined(ALL_MODULES)
544 SUBDIR+=        tests
545 .endif
546
547 .if ${MK_ZFS} != "no" || defined(ALL_MODULES)
548 SUBDIR+=        zfs
549 .endif
550
551 .if (${MACHINE_CPUARCH} == "mips" && ${MACHINE_ARCH:Mmips64} == "")
552 _hwpmc_mips24k= hwpmc_mips24k
553 _hwpmc_mips74k= hwpmc_mips74k
554 .endif
555
556 .if ${MACHINE_CPUARCH} != "aarch64" && ${MACHINE_CPUARCH} != "arm" && \
557         ${MACHINE_CPUARCH} != "mips" && ${MACHINE_CPUARCH} != "powerpc" && \
558         ${MACHINE_CPUARCH} != "riscv"
559 _syscons=       syscons
560 .endif
561
562 .if ${MACHINE_CPUARCH} != "mips"
563 # no BUS_SPACE_UNSPECIFIED
564 # No barrier instruction support (specific to this driver)
565 _sym=           sym
566 # intr_disable() is a macro, causes problems
567 .if ${MK_SOURCELESS_UCODE} != "no"
568 _cxgb=          cxgb
569 .endif
570 .endif
571
572 .if ${MACHINE_CPUARCH} == "aarch64"
573 _allwinner=     allwinner
574 _armv8crypto=   armv8crypto
575 _efirt=         efirt
576 _em=            em
577 _rockchip=      rockchip
578 .endif
579
580 .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
581 _agp=           agp
582 _an=            an
583 _aout=          aout
584 _bios=          bios
585 .if ${MK_SOURCELESS_UCODE} != "no"
586 _bxe=           bxe
587 .endif
588 _cardbus=       cardbus
589 _cbb=           cbb
590 _cpuctl=        cpuctl
591 _cpufreq=       cpufreq
592 _dpms=          dpms
593 _em=            em
594 _et=            et
595 _exca=          exca
596 _if_ndis=       if_ndis
597 _io=            io
598 _itwd=          itwd
599 _ix=            ix
600 _ixv=           ixv
601 .if ${MK_SOURCELESS_UCODE} != "no"
602 _lio=           lio
603 .endif
604 _nctgpio=       nctgpio
605 _ndis=          ndis
606 _ntb=           ntb
607 _ocs_fc=        ocs_fc
608 _pccard=        pccard
609 .if ${MK_OFED} != "no" || defined(ALL_MODULES)
610 _rdma=          rdma
611 .endif
612 _safe=          safe
613 _speaker=       speaker
614 _splash=        splash
615 _sppp=          sppp
616 _vmware=        vmware
617 _wbwd=          wbwd
618 _wi=            wi
619
620 _aac=           aac
621 _aacraid=       aacraid
622 _acpi=          acpi
623 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
624 .if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} > 40201
625 _aesni=         aesni
626 .endif
627 .endif
628 _amd_ecc_inject=amd_ecc_inject
629 _amdsbwd=       amdsbwd
630 _amdsmn=        amdsmn
631 _amdtemp=       amdtemp
632 _arcmsr=        arcmsr
633 _asmc=          asmc
634 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
635 _blake2=        blake2
636 .endif
637 _bytgpio=       bytgpio
638 _chvgpio=       chvgpio
639 _ciss=          ciss
640 _chromebook_platform=   chromebook_platform
641 _cmx=           cmx
642 _coretemp=      coretemp
643 .if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED)
644 _hpt27xx=       hpt27xx
645 .endif
646 _hptiop=        hptiop
647 .if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED)
648 _hptmv=         hptmv
649 _hptnr=         hptnr
650 _hptrr=         hptrr
651 .endif
652 _hyperv=        hyperv
653 _ichwd=         ichwd
654 _ida=           ida
655 _iir=           iir
656 _intelspi=      intelspi
657 _ipmi=          ipmi
658 _ips=           ips
659 _isci=          isci
660 _ipw=           ipw
661 _iwi=           iwi
662 _iwm=           iwm
663 _iwn=           iwn
664 .if ${MK_SOURCELESS_UCODE} != "no"
665 _ipwfw=         ipwfw
666 _iwifw=         iwifw
667 _iwmfw=         iwmfw
668 _iwnfw=         iwnfw
669 .endif
670 _mly=           mly
671 _nfe=           nfe
672 _nvd=           nvd
673 _nvme=          nvme
674 _nvram=         nvram
675 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
676 _padlock=       padlock
677 _padlock_rng=   padlock_rng
678 _rdrand_rng=    rdrand_rng
679 .endif
680 _pchtherm = pchtherm
681 _s3=            s3
682 _sdhci_acpi=    sdhci_acpi
683 _superio=       superio
684 _tpm=           tpm
685 _twa=           twa
686 _vesa=          vesa
687 _viawd=         viawd
688 _virtio=        virtio
689 _wpi=           wpi
690 .if ${MK_SOURCELESS_UCODE} != "no"
691 _wpifw=         wpifw
692 .endif
693 _x86bios=       x86bios
694 .endif
695
696 .if ${MACHINE_CPUARCH} == "amd64"
697 _amdgpio=       amdgpio
698 _ccp=           ccp
699 _efirt=         efirt
700 _iavf=          iavf
701 _ioat=          ioat
702 _ixl=           ixl
703 _nvdimm=        nvdimm
704 _pms=           pms
705 _qlxge=         qlxge
706 _qlxgb=         qlxgb
707 _vmd=           vmd
708 .if ${MK_SOURCELESS_UCODE} != "no"
709 _qlxgbe=        qlxgbe
710 _qlnx=          qlnx
711 .endif
712 _sfxge=         sfxge
713 _sgx=           sgx
714 _sgx_linux=     sgx_linux
715 _smartpqi=      smartpqi
716
717 .if ${MK_BHYVE} != "no" || defined(ALL_MODULES)
718 .if ${KERN_OPTS:MSMP}
719 _vmm=           vmm
720 .endif
721 .endif
722 .endif
723
724 .if ${MACHINE_CPUARCH} == "i386"
725 # XXX some of these can move to the general case when de-i386'ed
726 # XXX some of these can move now, but are untested on other architectures.
727 _3dfx=          3dfx
728 _3dfx_linux=    3dfx_linux
729 _apm=           apm
730 .if ${MK_SOURCELESS_HOST} != "no"
731 _ce=            ce
732 .endif
733 .if ${MK_SOURCELESS_UCODE} != "no"
734 _cp=            cp
735 .endif
736 _glxiic=        glxiic
737 _glxsb=         glxsb
738 _pcfclock=      pcfclock
739 _pst=           pst
740 _sbni=          sbni
741 .endif
742
743 .if ${MACHINE_CPUARCH} == "arm"
744 _cfi=           cfi
745 _cpsw=          cpsw
746 .endif
747
748 .if ${MACHINE_CPUARCH} == "powerpc"
749 _aacraid=       aacraid
750 _agp=           agp
751 _an=            an
752 _cardbus=       cardbus
753 _cbb=           cbb
754 _cfi=           cfi
755 _cpufreq=       cpufreq
756 _exca=          exca
757 _ffec=          ffec
758 _nvd=           nvd
759 _nvme=          nvme
760 _pccard=        pccard
761 _wi=            wi
762 _virtio=        virtio
763 .endif
764
765 .if ${MACHINE_ARCH} == "powerpc64"
766 _ipmi=          ipmi
767 _ixl=           ixl
768 _nvram=         opal_nvram
769 .endif
770 .if ${MACHINE_ARCH} == "powerpc64" || ${MACHINE_ARCH} == "powerpc"
771 # Don't build powermac_nvram for powerpcspe, it's never supported.
772 _nvram+=        powermac_nvram
773 .endif
774
775 .if (${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
776      ${MACHINE_ARCH:Marmv[67]*} != "" || ${MACHINE_CPUARCH} == "i386")
777 _cloudabi32=    cloudabi32
778 .endif
779 .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64"
780 _cloudabi64=    cloudabi64
781 .endif
782
783 .endif
784
785 .if ${MACHINE_ARCH:Marmv[67]*} != "" || ${MACHINE_CPUARCH} == "aarch64"
786 _bcm283x_clkman=  bcm283x_clkman
787 _bcm283x_pwm=  bcm283x_pwm
788 .endif
789
790 SUBDIR+=${MODULES_EXTRA}
791
792 .for reject in ${WITHOUT_MODULES}
793 SUBDIR:= ${SUBDIR:N${reject}}
794 .endfor
795
796 # Calling kldxref(8) for each module is expensive.
797 .if !defined(NO_XREF)
798 .MAKEFLAGS+=    -DNO_XREF
799 afterinstall: .PHONY
800         @if type kldxref >/dev/null 2>&1; then \
801                 ${ECHO} ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \
802                 ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \
803         fi
804 .endif
805
806 SUBDIR:= ${SUBDIR:u:O}
807
808 .include <bsd.subdir.mk>