summaryrefslogtreecommitdiff
path: root/buildtools
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2013-05-26 23:11:03 +1000
committerAndrew Bartlett <abartlet@samba.org>2013-05-27 11:56:46 +1000
commitc6673b96a59e38031da6654580250bbc58766cfd (patch)
tree3cb5f919f7bcde8f9cd21a38e66aa25432baedf5 /buildtools
parentdfe73e7885a40de8c24d1231365a16f7aa3d5073 (diff)
downloadsamba-c6673b96a59e38031da6654580250bbc58766cfd.tar.gz
samba-c6673b96a59e38031da6654580250bbc58766cfd.tar.bz2
samba-c6673b96a59e38031da6654580250bbc58766cfd.zip
build: Remove binaries and libraries build groups
Build groups are used in Samba to ensure that even if the dependency chain for a target is not perfect, that it builds reliably. This matters most in the early build stages, where we are building the asn1 compiler and autogenerating files. Once we get to the main stage, dependencies between C files, libraries and binaries are much clearer, because the C compiler and linker takes these as inputs anyway. Groups were added to our waf build for stability during early development, as dependency information was first imported from the previous autoconf/perl based build system. I don't think we need this distinction in the main build of C files into .o, and when linking these into binaries, because the invocation of these tools is very well defined, and we will find any missing inputs very quickly. As such, I've removed the libraries and binaries targets, consolidating them with 'main' By making this change, a build of smbtorture only on a clean tree drops from 3778 to 2489 targets, and much of the expensive linker stage is skipped. The time for a null build of smbtorture only also drops from 4.673s to as low as 2.499s on my laptop. Andrew Bartlett Reviewed-by: Jelmer Vernooij <jelmer@samba.org>
Diffstat (limited to 'buildtools')
-rw-r--r--buildtools/wafsamba/wafsamba.py6
1 files changed, 2 insertions, 4 deletions
diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
index 3559cc196f..2ef68b1123 100644
--- a/buildtools/wafsamba/wafsamba.py
+++ b/buildtools/wafsamba/wafsamba.py
@@ -110,7 +110,7 @@ def SAMBA_LIBRARY(bld, libname, source,
realname=None,
autoproto=None,
autoproto_extra_source='',
- group='libraries',
+ group='main',
depends_on='',
local_include=True,
global_include=True,
@@ -306,7 +306,7 @@ def SAMBA_BINARY(bld, binname, source,
use_hostcc=False,
use_global_deps=True,
compiler=None,
- group='binaries',
+ group='main',
manpages=None,
local_include=True,
global_include=True,
@@ -629,8 +629,6 @@ def SETUP_BUILD_GROUPS(bld):
bld.add_group('headers')
bld.add_group('main')
bld.add_group('symbolcheck')
- bld.add_group('libraries')
- bld.add_group('binaries')
bld.add_group('syslibcheck')
bld.add_group('final')
Build.BuildContext.SETUP_BUILD_GROUPS = SETUP_BUILD_GROUPS