xref: /freebsd/sys/conf/config.mk (revision 43e8403953cb97ffa6306dd13d2e92fdec91e47c)
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_global.h:
12	touch ${.TARGET}
13.if ${MACHINE} != "mips"
14	@echo "#define VIMAGE 1" >> ${.TARGET}
15	@echo "#define MAC 1" >> ${.TARGET}
16.endif
17opt_bpf.h:
18	echo "#define DEV_BPF 1" > ${.TARGET}
19.if ${MK_INET_SUPPORT} != "no"
20opt_inet.h:
21	@echo "#define INET 1" > ${.TARGET}
22	@echo "#define TCP_OFFLOAD 1" >> ${.TARGET}
23.endif
24.if ${MK_INET6_SUPPORT} != "no"
25opt_inet6.h:
26	@echo "#define INET6 1" > ${.TARGET}
27.endif
28.if ${MK_RATELIMIT} != "no"
29opt_ratelimit.h:
30	@echo "#define RATELIMIT 1" > ${.TARGET}
31.endif
32opt_mrouting.h:
33	echo "#define MROUTING 1" > ${.TARGET}
34opt_printf.h:
35	echo "#define PRINTF_BUFR_SIZE 128" > ${.TARGET}
36opt_scsi.h:
37	echo "#define SCSI_DELAY 15000" > ${.TARGET}
38opt_wlan.h:
39	echo "#define IEEE80211_DEBUG 1" > ${.TARGET}
40	echo "#define IEEE80211_SUPPORT_MESH 1" >> ${.TARGET}
41KERN_OPTS.i386=NEW_PCIB DEV_PCI
42KERN_OPTS.amd64=NEW_PCIB DEV_PCI
43KERN_OPTS.powerpc=NEW_PCIB DEV_PCI
44KERN_OPTS=MROUTING IEEE80211_DEBUG \
45	IEEE80211_SUPPORT_MESH DEV_BPF \
46	${KERN_OPTS.${MACHINE}} ${KERN_OPTS_EXTRA}
47.if ${MK_INET_SUPPORT} != "no"
48KERN_OPTS+= INET TCP_OFFLOAD
49.endif
50.if ${MK_INET6_SUPPORT} != "no"
51KERN_OPTS+= INET6
52.endif
53.elif !defined(KERN_OPTS)
54# Add all the options that are mentioned in any opt_*.h file when we
55# have a kernel build directory to pull them from.
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) && !make(install) && \
61    (empty(.MAKEFLAGS:M-V) || defined(NO_SKIP_MPATH))
62__MPATH!=find ${SYSDIR:tA}/ -name \*_if.m
63.export __MPATH
64.endif
65