Andrew Tridgell
6dc2b16859
build: fixed progress display
2010-04-06 20:27:15 +10:00
Andrew Tridgell
3d4c99207d
build: use 'Compiling foo.c' and 'Linking foo' like old build system
...
When -p is not used, display compilation messages similarly to the old
build system, but with a progress indicator
2010-04-06 20:27:15 +10:00
Andrew Tridgell
c6e73cb3b6
build: move waf into buildtools/bin
2010-04-06 20:27:15 +10:00
Andrew Tridgell
a2b4d7e8eb
s4-waf: ensure we don't end up with mixed versions of talloc/tdb/tevent
2010-04-06 20:27:15 +10:00
Andrew Tridgell
b7ff06b904
build: tidy up the wafsamba rules a bit
...
use python string conventions for function comments
2010-04-06 20:27:14 +10:00
Andrew Tridgell
88b6b86c59
s4-waf: added auto-detection of perl manpage extensions
...
some systems produce pidl.1p, others pidl.1. We need to know which one
to use.
2010-04-06 20:27:14 +10:00
Andrew Tridgell
06e10a2904
build: work around missing defaults from gnu_dirs.py
2010-04-06 20:27:14 +10:00
Andrew Tridgell
20146b3fe0
build: fixed popt subsystem on systems without popt
2010-04-06 20:27:13 +10:00
Andrew Tridgell
32ac04c028
s4-waf: merge in the latest changes from master
...
The heimdal changes mean the asn1 compiler produces a 2nd header file
2010-04-06 20:27:13 +10:00
Andrew Tridgell
ab1b096538
build: auto-detect platforms which don't support shared libs
2010-04-06 20:27:13 +10:00
Andrew Tridgell
28a7348294
build: only add -fPIC if it is supported
2010-04-06 20:27:13 +10:00
Andrew Tridgell
b9aa63887c
s4-waf: cleanup use of LIBPOPT vs popt dependency
2010-04-06 20:27:13 +10:00
Andrew Tridgell
bfbf43cc36
s4-waf: support the use of system libraries
...
distros can set --bundled-libraries=NONE to force use of all system
libraries. If the right version isn't found then configure will fail.
Users may choose which libraries to use from the system, and which to
use bundled libs. The default is to try system libs, and use them if
their version matches the one in the source tree.
2010-04-06 20:27:13 +10:00
Andrew Tridgell
3b380ea7ac
build: better control over bundled library extensions
2010-04-06 20:27:12 +10:00
Andrew Tridgell
28a05bc1b0
build: better waf test script
2010-04-06 20:27:12 +10:00
Andrew Tridgell
f6a7d5b907
build: added support for controlling library types
...
added:
--bundled-library-extension : control library extension for bundled libraries
--builtin-libraries : force a list of libraries to be builtin (non-shared)
2010-04-06 20:27:12 +10:00
Andrew Tridgell
92de30dcab
build: fixed build group for the PIDL tables generation
2010-04-06 20:27:11 +10:00
Andrew Tridgell
f9eae32f4b
s4-waf: mark the wscript files as python so vim/emacs knows how to highlight them
2010-04-06 20:27:11 +10:00
Andrew Tridgell
c64ce3cd03
build: mark python rules as being part of the "main" group
2010-04-06 20:27:11 +10:00
Andrew Tridgell
9875be5511
build: throw an error on all bad variable substitutions
2010-04-06 20:27:11 +10:00
Andrew Tridgell
1ee19592f0
s4-waf: move the gnu dirs check to the generic wafsamba code
2010-04-06 20:27:11 +10:00
Andrew Tridgell
91d604add3
build: substitute @VAR@ variables in pkgconfig .pc.in files
2010-04-06 20:27:11 +10:00
Andrew Tridgell
5b572f1bd8
build: fixed the python path in installed python scripts
2010-04-06 20:27:11 +10:00
Andrew Tridgell
7c8b20037e
build: fixed destination name for pc_files
2010-04-06 20:27:10 +10:00
Andrew Tridgell
1750bd4b36
build: added support for pc_files= for pkgconfig files
2010-04-06 20:27:10 +10:00
Andrew Tridgell
5c6e8371b2
build: a hack to get perl to put its generated blib files in the build directory
...
perl wants to put generated files in the source directory, whereas waf wants
them in the build directory. Use a symlink to trick perl into putting them
in the right place
2010-04-06 20:27:10 +10:00
Andrew Tridgell
723e9b87ce
build: only depend on the actual pidl source files in the pidl rule
...
We don't need to depend on the wscript files, or any backup editor
files.
2010-04-06 20:27:10 +10:00
Andrew Tridgell
85a11c4fb7
build: support wildcard excludes in INSTALL_WILDCARD()
2010-04-06 20:27:09 +10:00
Andrew Tridgell
307ac977a2
build: install build python modules correctly
2010-04-06 20:27:09 +10:00
Andrew Tridgell
97ce609393
build: support wildcard mappings for header_path
...
this allows a public_headers attribute to put different headers in
different install directories
2010-04-06 20:27:09 +10:00
Andrew Tridgell
03998d0970
s4-waf: started adding auto-install of include files
2010-04-06 20:27:09 +10:00
Andrew Tridgell
11ca0c7b9d
build: fixed EXPAND_VARIABLES() for env expansion
2010-04-06 20:27:09 +10:00
Andrew Tridgell
cfeaed22c5
build: these chdir() calls break waf on HPUX. They are not needed
2010-04-06 20:27:08 +10:00
Andrew Tridgell
2201d3d232
build: added quote option to conf.DEFINE()
...
Pair-Programmed-With: Kai Blin <kai@samba.org>
2010-04-06 20:27:08 +10:00
Andrew Tridgell
6b3a72dd45
s3-waf: fixed tests for charsets
...
Pair-Programmed-With: Kai
2010-04-06 20:27:08 +10:00
Andrew Tridgell
9ddd9de59b
build: fixed copy_script typo
2010-04-06 20:27:07 +10:00
Andrew Tridgell
6d268e4a82
build: improved exception handling for systems without rpath
2010-04-06 20:27:07 +10:00
Andrew Tridgell
eb776a80b5
build: much better rpath test function
...
This creates a full shared lib, and a binary that uses it. Then it
tests that the binary runs correctly, relying on rpath
Thanks to Thomas for the code for this!
2010-04-06 20:27:07 +10:00
Andrew Tridgell
5e94bca62e
build: a better way of calculating syslib dependencies
2010-04-06 20:27:07 +10:00
Kai Blin
6663f78256
build: Import conf decorator in samba_conftests.py
2010-04-06 20:27:07 +10:00
Andrew Tridgell
2cac0c27cf
build: started a library of common config tests for s3/s4
...
Pair-Programmed-With: Kai Blin <kai@samba.org>
2010-04-06 20:27:07 +10:00
Andrew Tridgell
239cdb53f4
build: support variable expansion in source= arguments to build rules
...
This makes it much easier to follow the s3 approach to lists of
source files in the top level wscript
Pair-Programmed-With: Kai Blin <kai@samba.org>
2010-04-06 20:27:06 +10:00
Andrew Tridgell
7bb5be1324
build: solaris8 doesn't honor the -f flag to ln.
...
It's in the man page, but it doesn't work!
2010-04-06 20:27:06 +10:00
Andrew Tridgell
6c3b69be9b
build: honor existing LD_LIBRARY_PATH settings when adding shared lib paths
2010-04-06 20:27:06 +10:00
Andrew Tridgell
12e6a920a7
build: old versions of perl don't understand the -W option
2010-04-06 20:27:06 +10:00
Andrew Tridgell
14fc71fc27
build: we need to replace md5 in Task as well
2010-04-06 20:27:06 +10:00
Andrew Tridgell
2454baf83b
build: need to set h_file on Utils
2010-04-06 20:27:06 +10:00
Thomas Nagy
81f5efba91
build: replace h_file when replacing md5
...
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-04-06 20:27:05 +10:00
Andrew Tridgell
1588a8d7a9
build: attempt to fix md5 problem on solaris8
2010-04-06 20:27:05 +10:00
Andrew Tridgell
eba9a54927
build: a few more build rules that should have on_results=True
2010-04-06 20:27:05 +10:00
Andrew Tridgell
742cb4547a
build: fixed case of system library deps
2010-04-06 20:27:05 +10:00
Stefan Metzmacher
988bc0cdc2
build: make use on_results=True for some build rules
...
This makes sure we generate a checksum over the result.
In practice it means we no longer recompile when a proto header
is triggers a rebuild if it hasn't changed its md5sum.
metze
2010-04-06 20:27:05 +10:00
Andrew Tridgell
e35864afdc
build: cope with systems that don't have md5 in python
2010-04-06 20:27:05 +10:00
Andrew Tridgell
a6ce1c3dce
build: need to mark disabled libraries as DISABLED
2010-04-06 20:27:05 +10:00
Andrew Tridgell
6ef817dd7c
build: fixed the cflags for pkg_config libs
2010-04-06 20:27:04 +10:00
Andrew Tridgell
7848344d55
build: split out the base waf rules into buildtools/wafsamba/wscript
...
this stops lib/replace becoming a mess
2010-04-06 20:27:04 +10:00
Andrew Tridgell
3d5dda63e3
build: use gzip for waf packing, to try to make it work on irix
2010-04-06 20:27:04 +10:00
Andrew Tridgell
8de258c81b
build: use shell=True for SAMBA_GENERATOR
...
This allows for shell redirection in rules
2010-04-06 20:27:04 +10:00
Andrew Tridgell
1fb1af92b3
build: added msg argument to CHECK_TYPE()
2010-04-06 20:27:04 +10:00
Andrew Tridgell
0632fac52e
build: add cflags from pkg_config results to header/function tests
...
When we find a package with pkg_config we may need to use the
resulting ccflags and ldflags in later tests.
Support this by adding lib= options to CHECK_FUNC and CHECK_HEADER
This gets gnutls on FreeBSD working
2010-04-06 20:27:01 +10:00
Andrew Tridgell
3b87d36c2b
build: test all the developer cflags before adding them
2010-04-06 20:27:01 +10:00
Andrew Tridgell
3e84e10daf
build: finer grained rpath checking for binary/install
2010-04-06 20:27:01 +10:00
Andrew Tridgell
9730166fd6
build: configure fixes for opensolaris
2010-04-06 20:27:01 +10:00
Andrew Tridgell
8e7922e10c
build: fixed headers for C prototype check
2010-04-06 20:27:01 +10:00
Andrew Tridgell
f95ca1afc9
build: rewrote the autoconf-like macros to be more consistent
...
This also brings them much closer to the behaviour of autoconf
2010-04-06 20:27:00 +10:00
Andrew Tridgell
98d16cbec0
build: fixed prototype test
2010-04-06 20:27:00 +10:00
Andrew Tridgell
570847054c
build: added CHECK_C_PROTOTYPE() configure function
2010-04-06 20:27:00 +10:00
Andrew Tridgell
cc2284cca1
build: python 2.4 doesn't support multiple union arguments for sets
2010-04-06 20:27:00 +10:00
Andrew Tridgell
a973c5f280
build: expand indirect syslibs after loop unrolling
...
otherwide python libs in the disable-shared build don't get all the
needed syslibs
2010-04-06 20:27:00 +10:00
Andrew Tridgell
c5d0208aa9
build: fixed handling of full dependencies for --disable-shared
...
the subsystem dependency loops get quite complex when shared libs are
disabled
2010-04-06 20:27:00 +10:00
Andrew Tridgell
b18f85041e
build: don't use double binaries/libs if not needed
...
when rpath is disabled on both install and build we don't need the
double binaries
2010-04-06 20:27:00 +10:00
Andrew Tridgell
0dc64c7458
build: mark wafsamba as unbuffered, so stdout and stderr are better in sync
2010-04-06 20:27:00 +10:00
Andrew Tridgell
8bc9560822
build: more complete implementation of waf configure -C
...
this is a closer emulation of the autoconf behaviour
2010-04-06 20:26:59 +10:00
Andrew Tridgell
a538ed1c82
build: fixed build of heimdal/lib/roken/err.h
2010-04-06 20:26:59 +10:00
Andrew Tridgell
9e0d0fa250
build: enable real cacheing with waf configure -C
2010-04-06 20:26:59 +10:00
Andrew Tridgell
e8775226ad
build: added --disable-shared option
2010-04-06 20:26:59 +10:00
Andrew Tridgell
69c065c719
build: optimise and re-enable check_duplicate_sources
2010-04-06 20:26:59 +10:00
Andrew Tridgell
b282660d39
build: fixed issue with CC="ccache cc" on solaris
2010-04-06 20:26:58 +10:00
Andrew Tridgell
dc9010572c
build: support systems without rpath
2010-04-06 20:26:58 +10:00
Andrew Tridgell
584986e392
build: cope with subsystems with no enabled modules
...
This happens for the notify subsystem on non-Linux systems
2010-04-06 20:26:58 +10:00
Andrew Tridgell
ea8d112683
build: fixed ifaddrs.h for heimdal (from template)
2010-04-06 20:26:58 +10:00
Andrew Tridgell
19ed4c7095
build: if a library is found, but not the fn, still define the library
2010-04-06 20:26:58 +10:00
Andrew Tridgell
8253fe0c72
build: don't use gcc warnings during configure
2010-04-06 20:26:58 +10:00
Andrew Tridgell
db8115f687
build: fixed check for pthread_create()
2010-04-06 20:26:57 +10:00
Andrew Tridgell
f2f8fc440e
build: more careful library list handling
2010-04-06 20:26:57 +10:00
Andrew Tridgell
d148461101
build: CONFIG_SET() takes conf argument
2010-04-06 20:26:57 +10:00
Andrew Tridgell
508cb5b97e
build: cope with double check for functions
2010-04-06 20:26:57 +10:00
Andrew Tridgell
1130f8f8d7
build: lib needs to take a list when more than 1
2010-04-06 20:26:57 +10:00
Andrew Tridgell
593c28b717
build: ensure all libs in CHECK_FUNCS_IN() get a target type
2010-04-06 20:26:57 +10:00
Andrew Tridgell
7628cb7da1
build: cope with multiple libs in CHECK_FUNCS_IN()
2010-04-06 20:26:56 +10:00
Andrew Tridgell
0bad3dacb0
build: cope with multiple checks for the same function/library
2010-04-06 20:26:56 +10:00
Kai Blin
7c20de97a0
build: rename s4 compare_config_h.sh helper and add a s3 version of it
2010-04-06 20:26:56 +10:00
Andrew Tridgell
86cfbbafcd
build: gccdeps fixes from ita
2010-04-06 20:26:55 +10:00
Andrew Tridgell
8ea03369bc
build: tool to find missing install components
2010-04-06 20:26:55 +10:00
Andrew Tridgell
3254003956
build: fixed includes paths for CHECK_CODE()
2010-04-06 20:26:54 +10:00
Andrew Tridgell
19b6e8b408
build: use SUBST_VARS_RECURSIVE() for install_path
2010-04-06 20:26:54 +10:00
Andrew Tridgell
3335ff7424
build: added SUBST_VARS_RECURSIVE()
2010-04-06 20:26:54 +10:00
Andrew Tridgell
550b985235
build: updated waf-svn (lower preproc recursion limit)
2010-04-06 20:26:54 +10:00
Andrew Tridgell
9a243a791b
build: rename samba_includes.py to samba_optimisation.py
2010-04-06 20:26:54 +10:00
Andrew Tridgell
8caac7a1a3
build: more optimisations from Thomas
2010-04-06 20:26:54 +10:00
Andrew Tridgell
8ba2a345b4
build: fixed git version in samba -V
2010-04-06 20:26:53 +10:00
Andrew Tridgell
3ff3a11c33
build: use RUN_COMMAND() to wrap os.system()
2010-04-06 20:26:53 +10:00
Andrew Tridgell
2a1520ba67
build: make bin/sambadeps depend on samba_deps.py modtime
2010-04-06 20:26:53 +10:00
Andrew Tridgell
651941abba
build: python modules need the libs from broken lib loops too
2010-04-06 20:26:53 +10:00
Andrew Tridgell
9799356082
build: fixed config.h generation when we have source -> source4 symlink
2010-04-06 20:26:53 +10:00
Andrew Tridgell
7eab82fce0
build: fixed the install name for python modules
2010-04-06 20:26:52 +10:00
Andrew Tridgell
e9fd67f4de
build: split build and install libraries/binaries
...
we need to split these to avoid re-compilation on install
as install has different rpath settings
2010-04-06 20:26:52 +10:00
Andrew Tridgell
c1f4015dcd
build: cleanup the ASN1 rules a bit
2010-04-06 20:26:52 +10:00
Andrew Tridgell
fd3bb81568
build: new waf version (fixed python install bug)
2010-04-06 20:26:52 +10:00
Andrew Tridgell
fe7d1a18b9
build: don't need the S4 in the PIDL prefix
2010-04-06 20:26:52 +10:00
Andrew Tridgell
b7cc6d48d5
build: teach samba_pild.py about the --com-header and --dcom-proxy options
2010-04-06 20:26:52 +10:00
Andrew Tridgell
64a528efee
build: added a cflags_end SAMBA_SUBSYSTEM() option
2010-04-06 20:26:51 +10:00
Andrew Tridgell
330361aa18
build: removed unused file
2010-04-06 20:26:51 +10:00
Andrew Tridgell
a559edf906
build: fixed init function sentinal for python modules
2010-04-06 20:26:50 +10:00
Andrew Tridgell
e6a47a8dea
build: we don't need varients in samba, so we can optimise a bit more
...
Thanks to ita for suggesting this
2010-04-06 20:26:50 +10:00
Andrew Tridgell
7c35b9ca70
build: an optimisation for includes file handling
...
This optimisation makes waf include file handling more efficient
2010-04-06 20:26:50 +10:00
Andrew Tridgell
fb2d78954d
build: allow waf to cache include lists more efficiently
...
Using include paths all based on the topdir is more efficient
2010-04-06 20:26:50 +10:00
Andrew Tridgell
e6f7a13a17
build: try faster includes processing
2010-04-06 20:26:50 +10:00
Andrew Tridgell
e4104eb085
build: more efficient pidl rules from ita
...
Don't re-scan the pidl source tree each time
2010-04-06 20:26:50 +10:00
Andrew Tridgell
b09797f30b
build: updated waf version
2010-04-06 20:26:50 +10:00
Andrew Tridgell
3c9e8e18aa
build: check that the symlink doesn't exist before creating
2010-04-06 20:26:49 +10:00
Andrew Tridgell
062c2b1fe6
build: allow shared and python staging areas to be referenced in build tree
2010-04-06 20:26:49 +10:00
Andrew Tridgell
a9ea3d6fa5
build: cope with the common gen_ndr files being in the git tree
2010-04-06 20:26:49 +10:00
Andrew Tridgell
e502031171
build: fixed samba_deps.py for python 2.4
2010-04-06 20:26:49 +10:00
Andrew Tridgell
7cd9a6be35
build: fixed cflags in CHECK_CODE
2010-04-06 20:26:49 +10:00
Andrew Tridgell
ec2b11c7fa
build: fixed group for heimdal autoproto
2010-04-06 20:26:48 +10:00
Andrew Tridgell
844acb2260
build: waf quicktest nearly works
...
Rewrote wafsamba using a new dependency handling system, and started
adding the waf test code
2010-04-06 20:26:48 +10:00
Andrew Tridgell
fffa6a5b48
build: separate out dependencies and python rules
2010-04-06 20:26:47 +10:00
Andrew Tridgell
8f1b809d2c
build: nearly there on samba4 build
2010-04-06 20:26:47 +10:00
Andrew Tridgell
9cb39847c0
build: better target name for lib link
2010-04-06 20:26:47 +10:00
Andrew Tridgell
c6e095de74
build: assert on missing dependency
2010-04-06 20:26:47 +10:00
Andrew Tridgell
e916aff9e1
build: much nicer pidl rules
2010-04-06 20:26:47 +10:00
Andrew Tridgell
6bba8cfd92
build: use export_incdirs
2010-04-06 20:26:47 +10:00
Andrew Tridgell
d70c4e8ea9
build: fixed heimdal include lists
2010-04-06 20:26:47 +10:00
Andrew Tridgell
2498a0d25e
build: saner CFLAGS handling for defines
2010-04-06 20:26:47 +10:00
Andrew Tridgell
7c3234c485
build: enable ENFORCE_GROUP_ORDERING()
...
also fixed ASN1 target names
2010-04-06 20:26:47 +10:00
Andrew Tridgell
d01f75c72d
build: back to stricter deps
2010-04-06 20:26:46 +10:00
Andrew Tridgell
cdf1a3d4bf
build: added ENFORCE_GROUP_ORDERING()
2010-04-06 20:26:46 +10:00
Andrew Tridgell
b2f7e4b5e2
build: make CONFIG_PATH() understand absolute paths
2010-04-06 20:26:46 +10:00
Andrew Tridgell
1726ba92cf
build: added SUBST_ENV_VAR()
2010-04-06 20:26:46 +10:00
Andrew Tridgell
fdd2f416eb
build: added local_include option to CHECK_CODE()
2010-04-06 20:26:46 +10:00
Andrew Tridgell
5bf0b5c72f
build: new waf version - fixes mkstemp problem
2010-04-06 20:26:45 +10:00
Andrew Tridgell
12c46d9055
build: fixed cflags in CHECK_CODE()
2010-04-06 20:26:45 +10:00
Andrew Tridgell
1958a0987e
build: added CHECK_CFLAGS()
2010-04-06 20:26:44 +10:00
Andrew Tridgell
481a299fc8
build: new waf version
2010-04-06 20:26:44 +10:00
Andrew Tridgell
6beff490c5
build: fix name of libs with - in them
2010-04-06 20:26:44 +10:00
Andrew Tridgell
bbb85a26eb
build: define HAVE_LIBxxx when we find a library
2010-04-06 20:26:44 +10:00
Andrew Tridgell
165b5b660a
build: move gettimeofday check to libreplace
...
- add checklink option to CHECK_FUNC()
- Used for when a prototype is not available
2010-04-06 20:26:44 +10:00
Andrew Tridgell
eadf918402
build: expand CHECK_CODE() function
2010-04-06 20:26:43 +10:00
Andrew Tridgell
2dfced59d5
build: added CHECK_CODE_COMPILES()
2010-04-06 20:26:43 +10:00