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