xref: /freebsd/sys/conf/config.mk (revision fcf596178b5f2be36424ecbc1b6a3224b29c91d2)
1# $FreeBSD$
2#
3# Common code to marry kernel config(8) goo and module building goo.
4#
5
6# Generate options files that otherwise would be built
7# in substantially similar ways through the tree. Move
8# the code here when they all produce identical results
9# (or should)
10.if !defined(KERNBUILDDIR)
11opt_bpf.h:
12	echo "#define DEV_BPF 1" > ${.TARGET}
13.if ${MK_INET_SUPPORT} != "no"
14opt_inet.h:
15	@echo "#define INET 1" > ${.TARGET}
16	@echo "#define TCP_OFFLOAD 1" >> ${.TARGET}
17.endif
18.if ${MK_INET6_SUPPORT} != "no"
19opt_inet6.h:
20	@echo "#define INET6 1" > ${.TARGET}
21.endif
22.if ${MK_RATELIMIT} != "no"
23opt_ratelimit.h:
24	@echo "#define RATELIMIT 1" > ${.TARGET}
25.endif
26.if ${MK_EISA} != "no"
27opt_eisa.h:
28	@echo "#define DEV_EISA 1" > ${.TARGET}
29.endif
30opt_mrouting.h:
31	echo "#define MROUTING 1" > ${.TARGET}
32opt_natm.h:
33	echo "#define NATM 1" > ${.TARGET}
34opt_scsi.h:
35	echo "#define SCSI_DELAY 15000" > ${.TARGET}
36opt_wlan.h:
37	echo "#define IEEE80211_DEBUG 1" > ${.TARGET}
38	echo "#define IEEE80211_AMPDU_AGE 1" >> ${.TARGET}
39	echo "#define IEEE80211_SUPPORT_MESH 1" >> ${.TARGET}
40KERN_OPTS.i386=NEW_PCIB DEV_PCI
41KERN_OPTS.amd64=NEW_PCIB DEV_PCI
42KERN_OPTS.powerpc=NEW_PCIB DEV_PCI
43KERN_OPTS=MROUTING NATM IEEE80211_DEBUG \
44	IEEE80211_AMPDU_AGE IEEE80211_SUPPORT_MESH DEV_BPF \
45	${KERN_OPTS.${MACHINE}} ${KERN_OPTS_EXTRA}
46.if ${MK_INET_SUPPORT} != "no"
47KERN_OPTS+= INET TCP_OFFLOAD
48.endif
49.if ${MK_INET6_SUPPORT} != "no"
50KERN_OPTS+= INET6
51.endif
52.if ${MK_EISA} != "no"
53KERN_OPTS+= DEV_EISA
54.endif
55.elif !defined(KERN_OPTS)
56KERN_OPTS!=cat ${KERNBUILDDIR}/opt*.h | awk '{print $$2;}' | sort -u
57.export KERN_OPTS
58.endif
59
60.if !defined(NO_MODULES) && !defined(__MPATH)
61__MPATH!=find ${SYSDIR:tA}/ -name \*_if.m
62.export __MPATH
63.endif
64