]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/modules/Makefile
Remove tests for obsolete compilers in the build system
[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         nfslockd \
263         nfssvc \
264         nge \
265         nmdm \
266         nullfs \
267         ${_ntb} \
268         ${_nvd} \
269         ${_nvdimm} \
270         ${_nvme} \
271         ${_nvram} \
272         oce \
273         ${_ocs_fc} \
274         otus \
275         ${_otusfw} \
276         ow \
277         ${_padlock} \
278         ${_padlock_rng} \
279         ${_pccard} \
280         ${_pchtherm} \
281         ${_pcfclock} \
282         ${_pf} \
283         ${_pflog} \
284         ${_pfsync} \
285         plip \
286         ${_pms} \
287         ppbus \
288         ppc \
289         ppi \
290         pps \
291         procfs \
292         proto \
293         pseudofs \
294         ${_pst} \
295         pty  \
296         puc \
297         pwm \
298         ${_qlxge} \
299         ${_qlxgb} \
300         ${_qlxgbe} \
301         ${_qlnx} \
302         ral \
303         ${_ralfw} \
304         ${_random_fortuna} \
305         ${_random_other} \
306         rc4 \
307         ${_rdma} \
308         ${_rdrand_rng} \
309         re \
310         rl \
311         ${_rockchip} \
312         rtwn \
313         rtwn_pci \
314         rtwn_usb \
315         ${_rtwnfw} \
316         ${_s3} \
317         ${_safe} \
318         ${_sbni} \
319         scc \
320         sdhci \
321         ${_sdhci_acpi} \
322         sdhci_pci \
323         sdio \
324         sem \
325         send \
326         ${_sfxge} \
327         sge \
328         ${_sgx} \
329         ${_sgx_linux} \
330         siftr \
331         siis \
332         sis \
333         sk \
334         ${_smartpqi} \
335         smbfs \
336         snp \
337         sound \
338         ${_speaker} \
339         spi \
340         ${_splash} \
341         ${_sppp} \
342         ste \
343         stge \
344         ${_superio} \
345         ${_sym} \
346         ${_syscons} \
347         sysvipc \
348         tcp \
349         ${_ti} \
350         tmpfs \
351         ${_toecore} \
352         ${_tpm} \
353         ${_twa} \
354         twe \
355         tws \
356         uart \
357         udf \
358         udf_iconv \
359         ufs \
360         uinput \
361         unionfs \
362         usb \
363         ${_vesa} \
364         ${_virtio} \
365         vge \
366         ${_viawd} \
367         videomode \
368         vkbd \
369         ${_vmd} \
370         ${_vmm} \
371         ${_vmware} \
372         vr \
373         vte \
374         ${_wbwd} \
375         ${_wi} \
376         wlan \
377         wlan_acl \
378         wlan_amrr \
379         wlan_ccmp \
380         wlan_rssadapt \
381         wlan_tkip \
382         wlan_wep \
383         wlan_xauth \
384         ${_wpi} \
385         ${_wpifw} \
386         ${_x86bios} \
387         xdr \
388         xl \
389         xz \
390         zlib
391
392 .if ${MK_AUTOFS} != "no" || defined(ALL_MODULES)
393 _autofs=        autofs
394 .endif
395
396 .if ${MK_CDDL} != "no" || defined(ALL_MODULES)
397 .if (${MACHINE_CPUARCH} != "arm" || ${MACHINE_ARCH:Marmv[67]*} != "") && \
398         ${MACHINE_CPUARCH} != "mips"
399 .if ${KERN_OPTS:MKDTRACE_HOOKS}
400 SUBDIR+=        dtrace
401 .endif
402 .endif
403 SUBDIR+=        opensolaris
404 .endif
405
406 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
407 .if exists(${SRCTOP}/sys/opencrypto)
408 _crypto=        crypto
409 _cryptodev=     cryptodev
410 _random_fortuna=random_fortuna
411 _random_other=  random_other
412 _ktls_ocf=      ktls_ocf
413 .endif
414 .endif
415
416 .if ${MK_CUSE} != "no" || defined(ALL_MODULES)
417 SUBDIR+=        cuse
418 .endif
419
420 .if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \
421         defined(ALL_MODULES)
422 _carp=          carp
423 _toecore=       toecore
424 _if_enc=        if_enc
425 _if_gif=        if_gif
426 _if_gre=        if_gre
427 _ipfw_pmod=     ipfw_pmod
428 .if ${MK_IPSEC_SUPPORT} != "no"
429 _ipsec=         ipsec
430 .endif
431 .endif
432
433 .if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \
434         defined(ALL_MODULES)
435 _if_stf=        if_stf
436 .endif
437
438 .if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES)
439 _if_me=         if_me
440 _ipdivert=      ipdivert
441 _ipfw=          ipfw
442 .if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES)
443 _ipfw_nat64=    ipfw_nat64
444 .endif
445 .endif
446
447 .if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES)
448 _ipfw_nptv6=    ipfw_nptv6
449 .endif
450
451 .if ${MK_IPFILTER} != "no" || defined(ALL_MODULES)
452 _ipfilter=      ipfilter
453 .endif
454
455 .if ${MK_ISCSI} != "no" || defined(ALL_MODULES)
456 SUBDIR+=        cfiscsi
457 SUBDIR+=        iscsi
458 SUBDIR+=        iscsi_initiator
459 .endif
460
461 .if !empty(OPT_FDT)
462 SUBDIR+=        fdt
463 .endif
464
465 # Linuxulator
466 .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
467     ${MACHINE_CPUARCH} == "i386"
468 SUBDIR+=        linprocfs
469 SUBDIR+=        linsysfs
470 .endif
471 .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
472 SUBDIR+=        linux
473 .endif
474 .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64"
475 SUBDIR+=        linux64
476 SUBDIR+=        linux_common
477 .endif
478
479 .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
480     ${MACHINE_CPUARCH} == "i386"
481 _ena=           ena
482 .if ${MK_OFED} != "no" || defined(ALL_MODULES)
483 _ibcore=        ibcore
484 _ipoib=         ipoib
485 _iser=          iser
486 .endif
487 _mlx4=          mlx4
488 _mlx5=          mlx5
489 .if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \
490         defined(ALL_MODULES)
491 _mlx4en=        mlx4en
492 _mlx5en=        mlx5en
493 .endif
494 .if ${MK_OFED} != "no" || defined(ALL_MODULES)
495 _mthca=         mthca
496 _mlx4ib=        mlx4ib
497 _mlx5ib=        mlx5ib
498 .endif
499 .endif
500
501 .if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES)
502 _netgraph=      netgraph
503 .endif
504
505 .if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \
506         ${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES)
507 _pf=            pf
508 _pflog=         pflog
509 .if ${MK_INET_SUPPORT} != "no"
510 _pfsync=        pfsync
511 .endif
512 .endif
513
514 .if ${MK_SOURCELESS_UCODE} != "no"
515 _bce=           bce
516 _fxp=           fxp
517 _ispfw=         ispfw
518 _ti=            ti
519
520 .if ${MACHINE_CPUARCH} != "mips"
521 _mwlfw=         mwlfw
522 _otusfw=        otusfw
523 _ralfw=         ralfw
524 _rtwnfw=        rtwnfw
525 .endif
526 .endif
527
528 .if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} != "arm" && \
529         ${MACHINE_CPUARCH} != "mips" && \
530         ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" && \
531         ${MACHINE_CPUARCH} != "riscv"
532 _cxgbe=         cxgbe
533 .endif
534
535 # These rely on 64bit atomics
536 .if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" && \
537         ${MACHINE_CPUARCH} != "mips"
538 _mps=           mps
539 _mpr=           mpr
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} == "mips" && ${MACHINE_ARCH:Mmips64} == "")
551 _hwpmc_mips24k= hwpmc_mips24k
552 _hwpmc_mips74k= hwpmc_mips74k
553 .endif
554
555 .if ${MACHINE_CPUARCH} != "aarch64" && ${MACHINE_CPUARCH} != "arm" && \
556         ${MACHINE_CPUARCH} != "mips" && ${MACHINE_CPUARCH} != "powerpc" && \
557         ${MACHINE_CPUARCH} != "riscv"
558 _syscons=       syscons
559 .endif
560
561 .if ${MACHINE_CPUARCH} != "mips"
562 # no BUS_SPACE_UNSPECIFIED
563 # No barrier instruction support (specific to this driver)
564 _sym=           sym
565 # intr_disable() is a macro, causes problems
566 .if ${MK_SOURCELESS_UCODE} != "no"
567 _cxgb=          cxgb
568 .endif
569 .endif
570
571 .if ${MACHINE_CPUARCH} == "aarch64"
572 _allwinner=     allwinner
573 _armv8crypto=   armv8crypto
574 _efirt=         efirt
575 _em=            em
576 _rockchip=      rockchip
577 .endif
578
579 .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
580 _agp=           agp
581 _an=            an
582 _aout=          aout
583 _bios=          bios
584 .if ${MK_SOURCELESS_UCODE} != "no"
585 _bxe=           bxe
586 .endif
587 _cardbus=       cardbus
588 _cbb=           cbb
589 _cpuctl=        cpuctl
590 _cpufreq=       cpufreq
591 _dpms=          dpms
592 _em=            em
593 _et=            et
594 _exca=          exca
595 _if_ndis=       if_ndis
596 _io=            io
597 _itwd=          itwd
598 _ix=            ix
599 _ixv=           ixv
600 .if ${MK_SOURCELESS_UCODE} != "no"
601 _lio=           lio
602 .endif
603 _nctgpio=       nctgpio
604 _ndis=          ndis
605 _ntb=           ntb
606 _ocs_fc=        ocs_fc
607 _pccard=        pccard
608 .if ${MK_OFED} != "no" || defined(ALL_MODULES)
609 _rdma=          rdma
610 .endif
611 _safe=          safe
612 _speaker=       speaker
613 _splash=        splash
614 _sppp=          sppp
615 _vmware=        vmware
616 _wbwd=          wbwd
617 _wi=            wi
618
619 _aac=           aac
620 _aacraid=       aacraid
621 _acpi=          acpi
622 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
623 _aesni=         aesni
624 .endif
625 _amd_ecc_inject=amd_ecc_inject
626 _amdsbwd=       amdsbwd
627 _amdsmn=        amdsmn
628 _amdtemp=       amdtemp
629 _arcmsr=        arcmsr
630 _asmc=          asmc
631 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
632 _blake2=        blake2
633 .endif
634 _bytgpio=       bytgpio
635 _chvgpio=       chvgpio
636 _ciss=          ciss
637 _chromebook_platform=   chromebook_platform
638 _cmx=           cmx
639 _coretemp=      coretemp
640 .if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED)
641 _hpt27xx=       hpt27xx
642 .endif
643 _hptiop=        hptiop
644 .if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED)
645 _hptmv=         hptmv
646 _hptnr=         hptnr
647 _hptrr=         hptrr
648 .endif
649 _hyperv=        hyperv
650 _ichwd=         ichwd
651 _ida=           ida
652 _iir=           iir
653 _intelspi=      intelspi
654 _ipmi=          ipmi
655 _ips=           ips
656 _isci=          isci
657 _ipw=           ipw
658 _iwi=           iwi
659 _iwm=           iwm
660 _iwn=           iwn
661 .if ${MK_SOURCELESS_UCODE} != "no"
662 _ipwfw=         ipwfw
663 _iwifw=         iwifw
664 _iwmfw=         iwmfw
665 _iwnfw=         iwnfw
666 .endif
667 _mly=           mly
668 _nfe=           nfe
669 _nvd=           nvd
670 _nvme=          nvme
671 _nvram=         nvram
672 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
673 _padlock=       padlock
674 _padlock_rng=   padlock_rng
675 _rdrand_rng=    rdrand_rng
676 .endif
677 _pchtherm = pchtherm
678 _s3=            s3
679 _sdhci_acpi=    sdhci_acpi
680 _superio=       superio
681 _tpm=           tpm
682 _twa=           twa
683 _vesa=          vesa
684 _viawd=         viawd
685 _virtio=        virtio
686 _wpi=           wpi
687 .if ${MK_SOURCELESS_UCODE} != "no"
688 _wpifw=         wpifw
689 .endif
690 _x86bios=       x86bios
691 .endif
692
693 .if ${MACHINE_CPUARCH} == "amd64"
694 _amdgpio=       amdgpio
695 _ccp=           ccp
696 _efirt=         efirt
697 _iavf=          iavf
698 _ioat=          ioat
699 _ixl=           ixl
700 _nvdimm=        nvdimm
701 _pms=           pms
702 _qlxge=         qlxge
703 _qlxgb=         qlxgb
704 _vmd=           vmd
705 .if ${MK_SOURCELESS_UCODE} != "no"
706 _qlxgbe=        qlxgbe
707 _qlnx=          qlnx
708 .endif
709 _sfxge=         sfxge
710 _sgx=           sgx
711 _sgx_linux=     sgx_linux
712 _smartpqi=      smartpqi
713
714 .if ${MK_BHYVE} != "no" || defined(ALL_MODULES)
715 .if ${KERN_OPTS:MSMP}
716 _vmm=           vmm
717 .endif
718 .endif
719 .endif
720
721 .if ${MACHINE_CPUARCH} == "i386"
722 # XXX some of these can move to the general case when de-i386'ed
723 # XXX some of these can move now, but are untested on other architectures.
724 _3dfx=          3dfx
725 _3dfx_linux=    3dfx_linux
726 _apm=           apm
727 .if ${MK_SOURCELESS_HOST} != "no"
728 _ce=            ce
729 .endif
730 .if ${MK_SOURCELESS_UCODE} != "no"
731 _cp=            cp
732 .endif
733 _glxiic=        glxiic
734 _glxsb=         glxsb
735 _pcfclock=      pcfclock
736 _pst=           pst
737 _sbni=          sbni
738 .endif
739
740 .if ${MACHINE_CPUARCH} == "arm"
741 _cfi=           cfi
742 _cpsw=          cpsw
743 .endif
744
745 .if ${MACHINE_CPUARCH} == "powerpc"
746 _aacraid=       aacraid
747 _agp=           agp
748 _an=            an
749 _cardbus=       cardbus
750 _cbb=           cbb
751 _cfi=           cfi
752 _cpufreq=       cpufreq
753 _exca=          exca
754 _ffec=          ffec
755 _nvd=           nvd
756 _nvme=          nvme
757 _pccard=        pccard
758 _wi=            wi
759 _virtio=        virtio
760 .endif
761
762 .if ${MACHINE_ARCH} == "powerpc64"
763 _ipmi=          ipmi
764 _ixl=           ixl
765 _nvram=         opal_nvram
766 .endif
767 .if ${MACHINE_ARCH} == "powerpc64" || ${MACHINE_ARCH} == "powerpc"
768 # Don't build powermac_nvram for powerpcspe, it's never supported.
769 _nvram+=        powermac_nvram
770 .endif
771
772 .if (${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
773      ${MACHINE_ARCH:Marmv[67]*} != "" || ${MACHINE_CPUARCH} == "i386")
774 _cloudabi32=    cloudabi32
775 .endif
776 .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64"
777 _cloudabi64=    cloudabi64
778 .endif
779
780 .endif
781
782 .if ${MACHINE_ARCH:Marmv[67]*} != "" || ${MACHINE_CPUARCH} == "aarch64"
783 _bcm283x_clkman=  bcm283x_clkman
784 _bcm283x_pwm=  bcm283x_pwm
785 .endif
786
787 SUBDIR+=${MODULES_EXTRA}
788
789 .for reject in ${WITHOUT_MODULES}
790 SUBDIR:= ${SUBDIR:N${reject}}
791 .endfor
792
793 # Calling kldxref(8) for each module is expensive.
794 .if !defined(NO_XREF)
795 .MAKEFLAGS+=    -DNO_XREF
796 afterinstall: .PHONY
797         @if type kldxref >/dev/null 2>&1; then \
798                 ${ECHO} ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \
799                 ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \
800         fi
801 .endif
802
803 SUBDIR:= ${SUBDIR:u:O}
804
805 .include <bsd.subdir.mk>