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