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