summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjtl <jtl@FreeBSD.org>2016-06-10 19:06:11 +0000
committerjtl <jtl@FreeBSD.org>2016-06-10 19:06:11 +0000
commit1f71d86f97c91197d2a368a73ef08213205881ff (patch)
treeb1f08577091d4c953ac6121df08a8e4efef9ca8f
parent722a8ee711a61c249c02cd44f266f759c7e63005 (diff)
downloadFreeBSD-src-1f71d86f97c91197d2a368a73ef08213205881ff.zip
FreeBSD-src-1f71d86f97c91197d2a368a73ef08213205881ff.tar.gz
Change the default build behavior so we don't compile extra TCP modules by
default. At least initially, the feature to support multiple TCP stacks is aimed at supporting advanced use cases and TCP development, but it is not necessarily aimed at a wide audience. Therefore, there is no need to build and install the extra TCP stacks by default. Instead, the people who are using or developing this functionality can add the extra option to build/ install the extra TCP stacks. However, we do want to build the extra TCP stacks as part of test builds (e.g. LINT or tinderbox) to ensure that developers who are testing their changes will know that their changes do not break the additional TCP stack modules. After this change, a user will need to add WITH_EXTRA_TCP_STACKS=1 to make.conf or the kernel config in order to build the extra TCP modules. Differential Revision: https://reviews.freebsd.org/D6795 Reviewed by: sjg Approved by: re (kib)
-rw-r--r--sys/conf/kern.opts.mk1
-rw-r--r--sys/conf/kern.post.mk4
-rw-r--r--sys/modules/Makefile6
3 files changed, 10 insertions, 1 deletions
diff --git a/sys/conf/kern.opts.mk b/sys/conf/kern.opts.mk
index 7b8f11c..343b4f8 100644
--- a/sys/conf/kern.opts.mk
+++ b/sys/conf/kern.opts.mk
@@ -45,6 +45,7 @@ __DEFAULT_YES_OPTIONS = \
__DEFAULT_NO_OPTIONS = \
EISA \
+ EXTRA_TCP_STACKS \
NAND \
OFED
diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk
index 70abb10..8c5a713 100644
--- a/sys/conf/kern.post.mk
+++ b/sys/conf/kern.post.mk
@@ -23,6 +23,10 @@ MKMODULESENV+= CONF_CFLAGS="${CONF_CFLAGS}"
MKMODULESENV+= WITH_CTF="${WITH_CTF}"
.endif
+.if defined(WITH_EXTRA_TCP_STACKS)
+MKMODULESENV+= WITH_EXTRA_TCP_STACKS="${WITH_EXTRA_TCP_STACKS}"
+.endif
+
# Allow overriding the kernel debug directory, so kernel and user debug may be
# installed in different directories. Setting it to "" restores the historical
# behavior of installing debug files in the kernel directory.
diff --git a/sys/modules/Makefile b/sys/modules/Makefile
index 745d414..426d12f 100644
--- a/sys/modules/Makefile
+++ b/sys/modules/Makefile
@@ -353,7 +353,7 @@ SUBDIR= \
${_syscons} \
sysvipc \
${_ti} \
- tcp/fastpath \
+ ${_tcp_fastpath} \
tests/framework \
tests/callout_test \
tl \
@@ -436,6 +436,10 @@ _random_other= random_other
SUBDIR+= cuse
.endif
+.if ${MK_EXTRA_TCP_STACKS} != "no" || defined(ALL_MODULES)
+_tcp_fastpath= tcp/fastpath
+.endif
+
.if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \
defined(ALL_MODULES)
_carp= carp
OpenPOWER on IntegriCloud