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