1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-28 07:21:54 +03:00
Commit Graph

665 Commits

Author SHA1 Message Date
Jelmer Vernooij
aa8a2e3105 wafsamba: Fix docstring for DIST_BLACKLIST. 2010-09-20 14:41:09 -07:00
Jelmer Vernooij
e4d7bc24d1 wafsamba: Fix parsing of IS_GIT_VERSION. 2010-09-20 13:08:29 -07:00
Stefan Metzmacher
92eccf89a1 waf: add a '+' to the git hash if the working tree isn't clean
metze
2010-09-19 07:40:39 +02:00
Stefan Metzmacher
a66db2cb78 waf: fix typos in GIT_COMMIT_* strings
metze
2010-09-19 07:40:14 +02:00
Jelmer Vernooij
8140182f3d wafsamba: Eliminate sys.path updating if installing to a standard python
path.
2010-09-08 22:52:43 +02:00
Andrew Tridgell
2d77c766fa waf-abi: fixed small uninitialised data on PPC64
on PPC64 Linux systems a 'S' line from nm means "small object
uninitialised data"
2010-09-07 13:45:46 +10:00
Jelmer Vernooij
cf616ec316 wafsamba: Create bin/defaukt/modules if it does not yet exist. 2010-09-05 20:16:50 +02:00
Jelmer Vernooij
61e537cf50 waf: Use os.makedirs rather than os.mkdir in case parent directories
don't exist yet.
2010-09-05 18:01:43 +02:00
Jelmer Vernooij
84c1874677 waf: Support aliases in SAMBA_MODULE. 2010-09-04 15:00:32 +02:00
Jelmer Vernooij
1ba533f4cb waf: Make shared modules available in the build dir. 2010-09-04 15:00:32 +02:00
Andrew Tridgell
aefbdc4a9d waf: fixed make test with TESTS="test1 test2"
when multiple tests are specified, make escapes the space in MAKEFLAGS
with a backslash, so we need to use shlex.split()
2010-09-04 12:29:10 +10:00
Thomas Nagy
734677292f Disable gccdeps if -MD is not supported
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-08-30 21:01:19 +02:00
Andrew Tridgell
cfcfe3c1f5 s4-waf: re-use SAMBA_LIBRARY() in building shared modules
make SAMBA_MODULE() call SAMBA_LIBRARY() to do the heavy lifting. This
fixes the problem with modules being a bit too slim :-)

Pair-Programmed-With: Jelmer Vernooij <jelmer@samba.org>
2010-08-22 16:35:30 +02:00
Jelmer Vernooij
aa74b6ade4 wafsamba: fix CHECK_XSLTPROC_MANPAGES(). 2010-08-22 14:05:58 +02:00
Stefan Metzmacher
7eebcebbab Revert "waf: enable gccdeps in developer mode"
This reverts commit 61930f50cb.

This breaks the build with older gcc versions
gcc --version
gcc (SUSE Linux) 4.3.2 [gcc-4_3-branch revision 141291]
(This is SLES 11)

Please only enable it if thet compiler supports it.

metze
2010-08-17 17:32:13 +02:00
Andrew Tridgell
61930f50cb waf: enable gccdeps in developer mode
there are some bugs in the waf builtin preproc this that avoids
2010-08-14 11:58:13 +10:00
Andrew Tridgell
630a2eb68a waf: make the error msg when gen_ndr directory is missing clearer
the next time someone removes gen_ndr/README the fix should be more
obvious.
2010-07-19 22:17:17 +10:00
Stefan Metzmacher
85f73840b0 s4:buildtools: add 'make show_waf_options'
metze
2010-07-10 09:35:01 +02:00
Stefan Metzmacher
c48ff4c6a9 s4:buildtools: make it possible to use advanced test options via the make waf wrapper
You can to do thinks like this now:
make test TEST_OPTIONS="--valgrind-server" TESTS=wbinfo

metze
2010-07-10 09:35:00 +02:00
Andrew Tridgell
30dc87dab9 build: only use git when found by configure
this rebuilds version.h whenever the git version changes, so we always
get the right version with samba -V. That adds about 15s to the build
time on each git commit, which shouldn't be too onerous
2010-06-29 14:28:08 +10:00
Andrew Tridgell
3774ba350e build: allow LOAD_ENVIRONMENT() to pass when no configure has been run
this returns an empty environment
2010-06-29 14:28:08 +10:00
Andrew Tridgell
8cbd36afe8 build: allow always=True/False on SAMBA_GENERATOR()
this allows us to force a rule to always run. Will be used by 
samba_version

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-06-29 14:28:08 +10:00
Andrew Tridgell
f6e46ee0fb build: check if the manpages stylesheet is available locally
this avoids trying to fetch the stylesheet from the internet. If we
can't process the stylesheet with --nonet at configure time then don't
build manpages.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2010-06-24 18:46:57 +10:00
Kai Blin
fa3e50fee4 build: Allow for a custom message in CHECK_C_PROTOTYPE 2010-06-20 09:34:28 +02:00
Jelmer Vernooij
24930aa716 wafsamba: Use octal modes directly rather than constants. 2010-06-19 16:00:04 +02:00
Jelmer Vernooij
f370bd47b0 wafsamba: Allow manually specifying cflags/ldflags for system libraries. 2010-06-19 14:45:35 +02:00
Jelmer Vernooij
7646eb6a0f wafsamba: Use convenience function to find out if bundling is necessary. 2010-06-19 14:02:18 +02:00
Jelmer Vernooij
a8aaf3d4be wafsamba: Factor out functions to determine if a bundled library should not or
must be used.
2010-06-19 13:47:11 +02:00
Jelmer Vernooij
bd1786f7f1 wafsamba: Fix typo: noextenion -> noextension. 2010-06-19 12:10:29 +02:00
Jelmer Vernooij
e0fe941218 wafsamba: Use BUILTIN_LIBRARY() rather than relying on side-effects. 2010-06-18 23:51:40 +02:00
Jelmer Vernooij
a4a127ea5a s4-waf: Fix build of libldb_ildap against system ldb. 2010-06-15 20:52:01 +02:00
Jelmer Vernooij
773e47f4a9 wafsamba: Fix include path inheritance from module subsystems. 2010-06-15 20:35:22 +02:00
Jelmer Vernooij
fb7a98aa32 ldb: Fix included ldb build. 2010-06-15 13:15:50 +02:00
Jelmer Vernooij
de68718d3d wafsamba: Fix filenames for ldb modules. 2010-06-15 13:15:50 +02:00
Jelmer Vernooij
0d7f8fb73d wafsamba: Fix building of modules as shared libraries. 2010-06-15 13:15:50 +02:00
Jelmer Vernooij
12b4647289 wafsamba: Improve assertion error message to include the module. 2010-06-15 13:15:50 +02:00
Jelmer Vernooij
419928b8df wafsamba: Only add init function if not building module as shared library. 2010-06-15 13:15:50 +02:00
Jelmer Vernooij
2edd652729 s4-waf: Fix installation of .so links for libraries that are not bundled but have a mangled name. 2010-06-13 20:52:47 +02:00
Thomas Nagy
09fb7fcd5f Do not use headermap.txt for the header installation
Try to find the headers by searching on the filesystem. Warn when
a public header replacement cannot be found (talloc.h, ...).

Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2010-06-13 19:26:48 +02:00
Jelmer Vernooij
a22d7db308 wafsamba: Only try to build manpages if XSLTPROC was actually found. 2010-05-31 20:45:14 +02:00
Stefan Metzmacher
1da4153459 buildtools/wafsamba: use build group 'final' for the creation of manpages
This way we don't try to build manpages just for waf build --target=smbtorture

metze
2010-05-31 17:52:31 +02:00
Jelmer Vernooij
f89e390fbc waf: Refactor manpage building code. 2010-05-31 13:56:25 +02:00
Jelmer Vernooij
f98bb7ffc3 Add manpages argument to SAMBA_LIBRARY(). 2010-05-31 13:56:25 +02:00
Kai Blin
e3997c2a6d wafsamba: Correctly detect if bld.env.XSLTPROC is not set
This fixes the build on some build farm hosts and my machine.

Jelmer, please check.
2010-05-31 09:40:14 +02:00
Jelmer Vernooij
1d1d31f703 wafsamba: Default blacklist to an empty list rather than None. 2010-05-31 03:59:50 +02:00
Jelmer Vernooij
3858b5db8b s4-waf: sanitize library names like the old build system did, only add
-samba4 suffix for libraries that are bundled.
2010-05-31 03:28:42 +02:00
Jelmer Vernooij
f3f1745e27 wafsamba: Actually install manual pages. 2010-05-31 01:38:35 +02:00
Kai Blin
04d251a847 build: Also replace '-' by '_' when creating header defines
Tridge, please check
2010-05-30 23:29:29 +02:00
Andrew Bartlett
7ea7b23413 waf Provide release signing capability in 'waf dist'
This helps ensure the release is signed correctly - the .tar file, not
the .tar.gz must be signed, and it's easy to forget this.

Andrew Bartlett
2010-05-28 21:59:08 +10:00
Andrew Bartlett
b50c006e20 waf Add DIST_BLACKLIST to list files that we cannot include in a release
This currently includes the source3 directory for Samba4 releases (per
past practice in mkrelease.sh), but also could include things like
DFSG-unfree RFC files in the future.

Andrew Barltett
2010-05-28 21:59:07 +10:00
Andrew Bartlett
892a4b24e7 waf Read VERSION file inside WAF to set package version
This replaces the call to mkversion.sh in both the Samba3 and Samba4
WAF builds.

Andrew Bartlett
2010-05-28 15:20:03 +10:00
Thomas Nagy
792743cfab solve the error "ldb.inst.h does not exist"
The error happens when headermap.txt is not available

Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2010-05-24 01:26:43 +02:00
Andrew Tridgell
eec93985d1 build: get the SONAME right for installed libraries 2010-05-23 22:11:57 +02:00
Thomas Nagy
bd8e3cf855 Substitute the pidl files without using 'headermap.txt'
The headers generated by pidl contain references to bin/default. Those paths
may be replaced automatically.

Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2010-05-23 17:51:06 +02:00
Thomas Nagy
ab093ffe46 wafsamba: Disable the abi checks when gdb is not available
Try to find gdb during the configuration, if gdb is missing, disable
the abi checks.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-05-21 13:59:55 +02:00
Kai Blin
f242a31a43 s3-waf: note that the options are broken 2010-05-20 22:16:14 +02:00
Kai Blin
b2431163fc s3-waf: replace all - with _ in the configuration option names 2010-05-20 22:16:14 +02:00
Kai Blin
771a8c17af s3-waf: Allow using --enable/--disable options as well 2010-05-20 22:16:13 +02:00
Kai Blin
3d1c0f1a21 s3-waf: Add helper that facilitates defining --with-x and --without-x options 2010-05-20 22:16:13 +02:00
Thomas Nagy
66cbc62961 s4-waf: Replace local includes in header files with proper system names.
Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2010-05-19 22:30:05 +02:00
Andrew Bartlett
79bd6a6764 waf: Make waf handle IDL files from Samba3
For s3compat, we need to handle IDL files not in the current directory
(so the incoming file names have a directory prefix - so we must use
os.path.basename()).

We also need to be able to disable the addition of some IDL files into
the tables.c/tables.h - some of the Samba3 IDL files are in conflict
with Samba4.

Andrew Bartlett
2010-05-14 23:25:45 +10:00
Stefan Metzmacher
3b8d9cd87e Revert "wafsamba: use -D_XOPEN_SOURCE=700 for the build"
This reverts commit 3408c942ab.

This seems to cause more problems than it tries to solve.

And Mac OS 10.4 doesn't need it anymore
(after commit bd6d76d776).

metze
2010-05-14 15:21:45 +02:00
Stefan Metzmacher
3408c942ab wafsamba: use -D_XOPEN_SOURCE=700 for the build
Some systems set this automaticly via -D_GNU_SOURCE=1,
but on others we need to set it ourself (e.g. Mac OS 10.4)

metze
2010-05-14 13:38:38 +02:00
Thomas Nagy
b4cfa3b9e4 buildtools/wafsamba: fix build group ordering
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-05-13 19:23:37 +02:00
Kai Blin
eda5888492 build: skip missing executables in testwaf.sh 2010-05-11 14:49:28 +02:00
Kai Blin
7c68512a21 build: Update the waf build to fix python header checks 2010-05-10 10:25:34 +02:00
Andrew Bartlett
23cafd5569 buildtools: Add 'make testenv' to Samba4 make targets
I'm still too addicted to this as my standard debugging environment, and while I can learn the new command, this helps the muscle-memory.

Andrew Bartlett
2010-05-09 21:18:52 +10:00
Andrew Tridgell
022266566d build: fixed pc file variable substitution
We should not substitute for the first use of each variable
declaration in the pkgconfig file
2010-05-07 15:14:49 +02:00
Andrew Tridgell
815fcfba48 build: treat a blank --build or --host as not a cross-compile
This matches autoconf behaviour
2010-05-07 09:03:47 +02:00
Andrew Tridgell
c61f4dcc0f build: added a reconfigure target
this is meant to be used by the s3 build, to allow jelmers work on
smbtorture4 in s3 to avoid re-running configure unless its needed
2010-05-06 14:56:43 +02:00
Andrew Tridgell
ed2941ba3d build: added configure test for inline 2010-05-05 16:14:13 +02:00
Andrew Tridgell
20d77705ce build: update version of waf
this fixes a slow configure problem on HPUX
2010-05-05 16:14:13 +02:00
Andrew Tridgell
3d2819bd86 build: use the wrapper commands in testwaf.sh
this ensures they are well tested
2010-05-05 16:14:13 +02:00
Andrew Tridgell
f8120ab697 build: added a distcheck target 2010-05-05 16:14:13 +02:00
Andrew Tridgell
47fb7dfd1c build: mark cloned task generators as not posted
this solves an incompatibility with a newer version of waf from svn
2010-05-05 16:14:13 +02:00
Andrew Tridgell
fa172c494f build: exit with an error if waf configure fails
We don't want configure in the build farm to show green when it fails
2010-05-05 16:14:13 +02:00
Andrew Tridgell
6ed45442c4 build: enable python 3.0 and 3.1 in testwaf.sh
try to ensure that we don't let support for python 3.x bitrot
2010-05-04 13:02:30 +02:00
Andrew Tridgell
ce67027c07 build: fixed wildcard handling for python 3.x
print must take parentheses
2010-05-04 13:02:30 +02:00
Andrew Tridgell
7281b02181 build: allow use of target names as commands in waf
This allows for the following types of commands:

 waf smbd/samba
 waf smbd/server.c
 waf ../lib/util/util_file.c
 waf ../lib/util/util_file_*.o

this will be used as part of an updated minimal_includes.pl script
2010-05-04 11:45:43 +02:00
Andrew Tridgell
6d1e8c5835 build: use the waf patterns for RPATH
Use the self.env.RPATH variable to set the RPATH for each target. This
gives consistent ordering of the link command, ensuring that we don't
get rebuilds if we ask for a --targets= build after a normal build.

This also means we are now using the RPATH_ST pattern, which means we
can potentially support compilers that don't use -Wl,xxx as the
command line for rpath support
2010-05-03 17:16:48 +02:00
Andrew Tridgell
b3d8a7136a build: added a check for group ordering within target dependencies
If target A depends on target B, then target B must not be in a later
build group from target A

Pair-Programmed-With: Thomas Nagy
2010-05-03 17:16:47 +02:00
Andrew Tridgell
8bc5194b04 build: fix for combined configure/build in one command
This is a fix from ita for "waf distclean configure build". Running
it as one command failed with missing config.h
2010-05-03 17:16:47 +02:00
Andrew Tridgell
d83850abe2 build: uname on opensolaris returns 1 for success
check for -1 as failure, not 0 for success
2010-05-02 18:25:13 +02:00
Andrew Tridgell
08c3ce25c6 build: added enabled=True/False option to SAMBA_BINARY() 2010-04-29 08:01:48 +10:00
Andrew Tridgell
f66fcd9608 build: cope with realname for install of non-python libs
this fixes the install of mit_samba.so
2010-04-26 19:06:06 +10:00
Andrew Tridgell
0a47bf5f15 build: automatically run autogen-waf.sh when needed 2010-04-26 14:36:55 +10:00
Andrew Tridgell
c6b8ffd3a5 build: normalise paths in unique source checking 2010-04-26 14:36:54 +10:00
Andrew Tridgell
a241daae2d build: a library is only empty if it has no deps 2010-04-26 14:36:54 +10:00
Andrew Tridgell
c8824fd9b4 build: use option_group() not add_option_group()
option_group() ensures we don't end up with duplicate groups
2010-04-26 14:36:54 +10:00
Andrew Tridgell
6c79b9f480 build: cope with duplicates in source lists 2010-04-26 14:36:54 +10:00
Stefan Metzmacher
051535f196 buildtools/wafsamba: inline defines during configure into the tests
There 2 reasons for this change:
- This is how autoconf tests work and it makes config.log much more useful
- The waf c preprocessor ignored changes in bin/default/__confdefs.h when using
  waf configure -C, because is outside of the configure tests project path
  and handled like a system header.

Many thanks to ita for pointing out the fix.

metze
2010-04-24 20:03:50 +02:00
Stefan Metzmacher
1ed5f71820 buildtools/wafsamba: make sure we create bin/default/ before trying to create symlinks in it
metze
2010-04-24 20:03:50 +02:00
Andrew Tridgell
93c86fe615 build: give a more useful error when the source dir has moved
you need a distclean if you mv the source directory
2010-04-23 08:25:01 +10:00
Andrew Tridgell
a36c7b8b74 build: use 'waf distclean' for make distclean
this cleans up the more than rm -rf bin
2010-04-23 08:25:01 +10:00
Andrew Tridgell
6669152a4a build: we don't need this makefile magic any more
The waf build now checks for all A=B variables passed via make
and sets the same waf internal variable. This means all waf options
are available via make.

Removing this from the Makefile makes us less reliant on a modern
version of make.

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-22 19:36:15 +10:00
Andrew Tridgell
d950e9e6f3 build: added --enable-auto-reconfigure
this is off by default until some issues are resolved. See my mail to
samba-technical for details.
2010-04-22 12:03:36 +10:00
Andrew Tridgell
adb5f943de build: recalculate project deps when NONSHARED_BINARIES changes 2010-04-21 17:29:06 +10:00
Andrew Tridgell
681f3dad7c build: added --nonshared-binary=LIST option
This allows you to specify some binaries that should be built without
shared libs. A non-shared smbtorture will make testing s3 in the build
farm easier
2010-04-21 17:13:16 +10:00
Andrew Tridgell
06fa4c8ebc build: make python development headers not mandatory in standalone libs
This needed an update to the python tool in waf

thanks to Kai for spotting this
2010-04-21 16:17:08 +10:00
Andrew Tridgell
ab2555faac waftest: updated the cross compilation environment I test with 2010-04-21 15:36:26 +10:00
Andrew Tridgell
667f672c94 build: fixed uname output to be on target machine when cross compiling
this also makes the output of define_ret configure tests show up 
in the configure output
2010-04-21 15:16:01 +10:00
Andrew Tridgell
5e69259671 build: added uname display and SYSTEM_UNAME define
suggestion from Metze
2010-04-20 23:43:33 +10:00
Andrew Tridgell
cdaac0afc1 build: include uninitialised data in the ABI symbols
This is needed for symbols like tdb_null in tdb, which are part
of the public ABI

Pair-Programmed-With: Rusty Russell <rusty@samba.org>
2010-04-20 15:50:26 +10:00
Andrew Tridgell
0e56037129 build: quote cross-answer strings
This allows for spaces and special characters in cross-answers
2010-04-20 15:50:26 +10:00
Andrew Tridgell
f2bd78cb26 build: allow "waf --abi-check" to force a re-check of the ABI 2010-04-20 15:50:26 +10:00
Andrew Tridgell
456351cdb1 s4-waf: follow the configure directories for the empty install dirs
Thanks to Metze for spotting this
2010-04-19 21:54:40 +10:00
Andrew Tridgell
d25e1e15d3 build: update waf from svn
this adds bld.install_dir()
2010-04-19 21:00:51 +10:00
Andrew Tridgell
db0eb2f239 s4-waf: install some missing empty directories 2010-04-19 21:00:36 +10:00
Andrew Tridgell
d2b35c3a24 build: make compare_install.sh also check for missing directories
Thanks to Nadya for pointing this out
2010-04-19 21:00:16 +10:00
Andrew Tridgell
b6dff759f7 build: added --cross-answers support
This allows you to easily cross-compile even without a --cross-execute
emulator

See http://wiki.samba.org/index.php/Waf#cross-compiling for details
2010-04-19 16:34:14 +10:00
Andrew Tridgell
93f4f7a037 build: fixed a python-3 indent error 2010-04-19 16:34:14 +10:00
Andrew Tridgell
4e51bf1ffd build: expanded testwaf to include cross-compiling and python versions 2010-04-19 16:34:14 +10:00
Andrew Tridgell
69ce29826c build: more dependencies on /usr/bin/perl -> ${PERL} 2010-04-18 23:08:28 +10:00
Andrew Tridgell
3ca5fd8e03 build: cope with perl not being in /usr/bin/perl
This should fixed the pidl build on SerNet-NetBSD5
2010-04-18 22:55:16 +10:00
Andrew Tridgell
211bf1ea17 s4-waf: removed the unused installdir= option to SAMBA_BINARY()
This was left over from the automatic conversion of the config.mk
files
2010-04-18 21:47:00 +10:00
Andrew Tridgell
f8e3e5ce07 build: fixed install of binary targets that are in subdirs
this should fix the smbd/smbd install problem with Kai's s3 waf build
2010-04-18 21:08:48 +10:00
Andrew Tridgell
639fe34667 build: support make V=1 for verbose build
this also adds support for other options, such as "make TESTS=testpattern"
2010-04-18 21:08:48 +10:00
Andrew Tridgell
7aa4c11fc4 build: more adjustments for the ABI type name maps
- use 'va_list' instead of 'struct __va_list_tag *'
  Using the C name for va_list is preferable

- add support for negative ABI name matches in abi_match=.  That is
  used to exlude ldb_*module_ops from the ldb ABI

- don't include the ldb module ops or backend ops in the ABI
2010-04-18 18:24:27 +10:00
Andrew Tridgell
1a73e967f5 build: added abi_type_maps for FC12 struct va_list
fedora12 x86 uses "struct va_list"
2010-04-18 17:35:53 +10:00
Andrew Tridgell
3f1ebe805b build: don't depend on the word size of nm output
the first column varies in length for different architectures
2010-04-18 17:32:26 +10:00
Andrew Tridgell
8dc2db0f6d build: added abi type maps for _Bool and __va_list_tag
This allows us to make the signature files platform independent
2010-04-18 15:39:14 +10:00
Andrew Tridgell
d3dea9b124 build: added ABI checking to the WAF build
See http://wiki.samba.org/index.php/Waf#ABI_Checking for details
2010-04-18 15:00:37 +10:00
Andrew Tridgell
877439e264 build: added a script for generating ABI signatures from shared libraries 2010-04-18 15:00:37 +10:00
Andrew Tridgell
0bda3bae4c build: throw a fatal error for duplicate target declarations
We don't want someone to declare two subsystems of the same name but
with different source files

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-15 14:43:50 +10:00
Andrew Tridgell
34887de6b0 build: ensure we don't recreate library loops in expansions
after removing library loops from the dependeny graph, we re-add
parent dependencies. We need to ensure that we don't re-add a
dependency which re-creates the loop we so carefully removed.

This also adds a final check for library dependency loops, and shows
an appropriate error if one is found.
2010-04-15 14:01:06 +10:00
Andrew Tridgell
167ba0eac9 build: make the 'wrong version of waf' message even clearer
suggest ./autogen-waf.sh
2010-04-15 09:22:24 +10:00
Andrew Tridgell
208eb7469d build: check that the user is not using an old /usr/bin/waf
some systems have /usr/bin/waf installed, and its quite old
2010-04-15 08:57:07 +10:00
Andrew Tridgell
e81e057b6d build: try to honor MAKEFLAGS from make
This means "make -j" and "make -k" now do roughly what is expected

make -j will use the number of CPUs on the system, regardless of the
number after the -j (as MAKEFLAGS doesn't contain that value).

make -k will will continue on errors
2010-04-14 23:37:47 +10:00
Stefan Metzmacher
974025944e buildtools/wafsamba: make sure CHECK_FUNC() and CHECK_VARIABLE() work with -O3 in the CFLAGS
'CFLAGS="-O3" waf configure' was not detecting dlopen() needs -ldl.

metze
2010-04-13 12:59:07 +02:00
Andrew Tridgell
367ba43b63 tdb-waf: added build of manpages and config options for RPM build
Building a RPM from the fedora spec file now works with minimal changes

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-13 20:15:41 +10:00
Andrew Tridgell
58abd9ac81 build: for unbundled libraries install devel link too
We need a symlink libFOO.so -> libFOO.so.x.y as a 
development symlink

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-13 20:15:41 +10:00
Andrew Tridgell
64f860e96a build: added autoconf compatible configure options
This adds --build, --host, --program-prefix and
--disable-dependency-tracking. All we do with them is check them for sanity
and throw an error if (for example) the user tries a cross-compile using
these options

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-13 17:34:44 +10:00
Andrew Tridgell
8a2169d674 build: cope with spaces in options passed to ./configure 2010-04-13 13:45:01 +10:00
Andrew Tridgell
a7d762bd29 build: allow cross-builds to use shared libraries 2010-04-13 12:41:34 +10:00
Andrew Tridgell
0ca484f457 build: check the type of implied dependencies
an implied dependency needs to be a library or module
2010-04-13 11:41:20 +10:00
Andrew Tridgell
b7ffc6e5b2 build: fixed a typo that prevented --bundled-libraries from working correctly
Jelmer noticed that --minimum-library-version=talloc:2.0.1 --bundled-libraries=!tevent
didn't do the right thing.
2010-04-13 11:27:34 +10:00
Andrew Tridgell
9c6781277a build: cope with existing binaries in bin/ left over from the old build 2010-04-13 09:36:03 +10:00
Andrew Tridgell
d12605c679 build: added cross-compilation configure options
this enables use of a cross-compilation emulator, so configure tests
run on an emulator of the target platform
2010-04-12 23:13:30 +10:00
Stefan Metzmacher
4f73658544 wafsamba: don't add global dependencies to hostcc targets
metze
2010-04-12 12:31:14 +02:00
Stefan Metzmacher
8a00c56649 wafsamba: allow passing 'use_hostcc' to SAMBA_SUBSYSTEM()
metze
2010-04-12 12:31:13 +02:00
Kai Blin
acc81f96a4 build: Add an always parameter to CHECK_DECLS 2010-04-12 17:47:30 +10:00
Kai Blin
c09fa85735 s3-waf: Correctly create symlink if SAMBA_BINARY targets are not in the current diectory
Many thanks to ita for pointing out the fix.
2010-04-12 17:47:30 +10:00
Andrew Tridgell
e683ac6f81 build: allow target upgrades from EMPTY to SYSLIB
A library may be initially set as empty if it wasn't needed for a list
of functions in CHECK_FUNCS_IN(). A later check may require the
library.

Pair-Programmed-With: Kai Blin <kai@samba.org>
2010-04-12 17:47:29 +10:00
Andrew Tridgell
98942c8d84 build: use a common autogen-waf.sh for all builds
the symlink will get updated with the right target when waf dist is
used in each directory
2010-04-12 11:17:35 +10:00
Andrew Tridgell
9ffd6c0ec3 build: cope with symlinks between build components in waf dist
This will allow us to have autogen-waf.sh be a symlink to
../buildtools/scripts/autogen-waf.sh in each library.

That will prevent people from updating only the script in source4/,
and forgetting to udpate the scripts in the other libs, as happened
with commit f3f82496
2010-04-12 11:17:35 +10:00
Andrew Tridgell
f8e527b088 build: added --minimum-library-version configure option
this allows the packager to override the default choice of system
library version
2010-04-12 09:50:49 +10:00
Stefan Metzmacher
5beaef7cde s4:autogen-waf: generate 'Makefile' instead of 'makefile'
This hopefully fixes the build on MacOS 10.

metze
2010-04-10 11:15:17 +02:00
Andrew Tridgell
45d3ac05b3 build: use Logs.error() and Logs.info() instead of print()
this gives appropriate colors on output, and ensures it works with
compiler output
2010-04-09 21:12:09 +10:00
Andrew Tridgell
d661759780 build: nicer error message on missing file in waf dist 2010-04-09 21:12:09 +10:00
Andrew Tridgell
0b8a3a4036 build: no need to re-create the lib and bin symlinks if they exist
this saves a few unlink/symlink calls for null builds
2010-04-09 20:31:06 +10:00
Andrew Tridgell
5f90d3260b build: added --picky-developer and --fatal-errors
Added configure options for --fatal-errors and --picky-developer. This
removes -Wfatal-errors from the --enable-developer flags.
2010-04-09 20:31:06 +10:00
Matthias Dieter Wallnöfer
f3f82496ac s4:WAF buildsystem - support out of "source4" directory builds
Bug: https://bugzilla.samba.org/show_bug.cgi?id=4081

With this patch we are able to invoke s4 builds from the outside of the
"source4" directory (but the target remains the "source4/bin" path).

One constraint: all commands: "autogen-waf.sh", "configure", "make" have to be
run from the same directory!
Regarding "make": you have to run it using "make -C <source4 path> [targets]" if
the invoke directory is not "source4" itself.
2010-04-08 14:14:24 +02:00
Andrew Tridgell
bf4189eb80 build: we need this isinstance() check for distcheck
Jelmer, this works around a bug in waf distcheck that will be fixed
soon. We really need the isinstance() check for now.
2010-04-08 22:11:50 +10:00
Andrew Tridgell
baec7a6b9e build: the exceptions here are not useful
they just make the failure hard to spot
2010-04-08 22:11:49 +10:00
Andrew Tridgell
4ca46c6b8d build: make the handling of relative paths a bit saner
This should fix a problem that Anatoliy has struck with the PIDL
rules. It also brings us much closer to a working build for a true out
of tree build (ie. with waf configure -b /tmp/build)
2010-04-08 22:11:49 +10:00
Jelmer Vernooij
a1e47e3dd2 s4-waf: Add dist target. 2010-04-08 12:21:35 +02:00
Thomas Nagy
7f3116a63d build: allow the waf build to work with python 3.0 and 3.1
Python 3.x is a bit fussier about print statements and indentation.

Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-04-08 07:46:39 +10:00
Jelmer Vernooij
e5bb6d56df s4-waf: Fix 'waf dist' app name. 2010-04-07 22:53:39 +02:00
Jelmer Vernooij
027adf88ea Support 'make test TESTS=foo' again. 2010-04-07 00:32:24 +02:00
Andrew Tridgell
07d9da4d2f build: use a target_in_list() function for more flexible builtin control 2010-04-06 20:27:27 +10:00
Andrew Tridgell
35ec7c34b3 build: cope with binaries with subdir prefixes (for s3 waf build) 2010-04-06 20:27:27 +10:00
Andrew Tridgell
5260b50467 build: run distcheck in testwaf.sh 2010-04-06 20:27:26 +10:00
Andrew Tridgell
6ea4ae881c build: update version of waf to add subdir argument to distcheck 2010-04-06 20:27:26 +10:00
Andrew Tridgell
64594f296c s4-waf: replace TOUCH_FILE() with normal install rules
this allows it to work with 'waf uninstall'
2010-04-06 20:27:26 +10:00
Andrew Tridgell
cd712dff31 build: simpler symlink_bin and symlink_lib methods 2010-04-06 20:27:26 +10:00
Andrew Tridgell
7ae4372124 s4-waf: fixed waf distcheck for our standalone libs and s4 2010-04-06 20:27:26 +10:00
Andrew Tridgell
dfdabffae3 build: fixed LOAD_ENVIRONMENT for out of tree builds 2010-04-06 20:27:26 +10:00
Andrew Tridgell
1e35da6145 s4-waf: new autogen-waf.sh
this one will work with the tdb, talloc, etc directories
2010-04-06 20:27:25 +10:00
Andrew Tridgell
553324bc10 s4-waf: move to a universal method of recursing into subdirs
This works with both standalone lib builds and bundled builds
2010-04-06 20:27:25 +10:00
Andrew Tridgell
1883ee6dbc s4-waf: avoid having to run waf configure before waf dist
This should be useful for building tarballs from a clean checkout
2010-04-06 20:27:25 +10:00
Andrew Tridgell
3ed6d7e76f build: nicer error msg when git ls-files fails 2010-04-06 20:27:25 +10:00
Andrew Tridgell
528d7c7cf3 s4-waf: added 'waf dist' to our standalone libs as well 2010-04-06 20:27:25 +10:00
Andrew Tridgell
c8062fb65e s4-waf: added 'waf dist' to build the tarball 2010-04-06 20:27:24 +10:00
Andrew Tridgell
735934bfed build: removed some unused imports found by pyflakes
thanks to Jelmer for pointing me at pyflakes
2010-04-06 20:27:24 +10:00
Andrew Tridgell
23ff97e629 build: fixed the expansions in pkgconfig files
thanks to Jelmer for the hint on this
2010-04-06 20:27:24 +10:00
Andrew Tridgell
7aa3f08f85 build: fixed DESTDIR for TOUCH_FILE() 2010-04-06 20:27:24 +10:00
Andrew Tridgell
feafcd2fb4 build: waf update to fix macos build error 2010-04-06 20:27:24 +10:00
Andrew Tridgell
fce1f19800 build: try to fix the python link problem on SerNet-imini 2010-04-06 20:27:24 +10:00
Andrew Tridgell
3efd865d61 build: use waf from waf-svn.git repo
Added README explaining where waf comes from, and where to get the
upstream sources and the exact version we use in Samba
2010-04-06 20:27:24 +10:00
Andrew Tridgell
1b15b28eaa build: try the generic C compiler on hpux if gcc not found 2010-04-06 20:27:24 +10:00
Andrew Tridgell
a02d98ebb6 build: update wav-svn
this version works around the tarfile problem on irix
2010-04-06 20:27:23 +10:00
Andrew Tridgell
20c7cd878b build: added 'generic' cc support and a simple irix cc support module
these will let us get past the 'detect cc' stage and try a build. It
also makes for a reasonable template for new ports
2010-04-06 20:27:23 +10:00
Andrew Tridgell
b849bea079 build: initial version of a tru64 compiler module
this doesn't do shared libs yet, but at least configure passes
2010-04-06 20:27:23 +10:00
Andrew Tridgell
a799f5995e pidl-waf: better handling of the man page generation
we now avoid leaving build files in the source tree
2010-04-06 20:27:23 +10:00
Andrew Tridgell
0c294655f6 build: don't depend on the blib/ files in SAMBA_PIDL() 2010-04-06 20:27:23 +10:00
Andrew Tridgell
93a099c2de build: loop until all object reductions are complete
we will issue a warning if any object duplication remains
2010-04-06 20:27:23 +10:00
Andrew Tridgell
470c14cbf3 build: make sure the directory exists in TOUCH_FILE() 2010-04-06 20:27:23 +10:00
Andrew Tridgell
31a88f266c build: nicer display of command type for prototypes and generators 2010-04-06 20:27:22 +10:00
Andrew Tridgell
865e478e25 s4-waf: create a blank __init__.py in samba/external
needed for the external lib loader
2010-04-06 20:27:22 +10:00
Andrew Tridgell
9eb5cb784c build: a bit more information for tracking --target deps 2010-04-06 20:27:22 +10:00
Andrew Tridgell
4fa9c3187d s4-waf: updates for the new python installer from jelmer 2010-04-06 20:27:22 +10:00
Andrew Tridgell
ba64e236d5 build: much simpler and faster rpath install handler
This avoids creating additional task generators at build time, and
instead moves all the rpath logic into samba_install.py where it is
triggered by the install_lib and install_bin features
2010-04-06 20:27:22 +10:00
Andrew Tridgell
6dbf576e81 build: only link install targets at install time 2010-04-06 20:27:22 +10:00
Andrew Tridgell
f189af143b build: enable nothreads workaround only with WAF_NOTHREADS=1 2010-04-06 20:27:21 +10:00
Andrew Tridgell
d06df81df2 build: fixed the dependencies of the install targets
we want the install targets to have identical calculated dependencies
to the build targets.
2010-04-06 20:27:21 +10:00
Andrew Tridgell
c0b67c6e7e build: fixed the task counter when nothreads is used 2010-04-06 20:27:21 +10:00
Andrew Tridgell
e42a13d1d0 build: enable 'nothreads' when JOBS=1
this makes waf not use pthreads, which should fix the problems on AIX
and maybe on HPUX. It looks like process handling with Python on AIX
is broken if threads are used.

When JOBS=1 we don't need threads anyway.
2010-04-06 20:27:21 +10:00
Andrew Tridgell
fe2c1f1e7c build: refactor the object reduction code
split it out into a separate function, and use the final_* attributes
instead of the direct_* and indirect_* attributes
2010-04-06 20:27:21 +10:00
Andrew Tridgell
9ac8899d87 build: sys.exit is better than raise here
using raise produces a screen full of stuff the user can't
understand. The message is much clearer with an exit
2010-04-06 20:27:21 +10:00
Andrew Tridgell
cd104102b9 build: don't define vars in config.h for CONFIG_PATH()
we don't want paths in config.h, as that just causes full rebuilds
when you change --prefix. Better to use cflags= on the right subsystem
2010-04-06 20:27:20 +10:00
Andrew Tridgell
30fa7da524 build: finally got LIBRARY<->LIBRARY reductions working
the install size is now 100M
2010-04-06 20:27:20 +10:00
Andrew Tridgell
3154733c33 build: add python library object reduction
This reduces the install size of s4 from 393M down to 132M on my
system. We had a lot of duplicate code in our python modules!
2010-04-06 20:27:20 +10:00
Andrew Tridgell
d39b44c989 build: python libs need to be built shared, regardless of --disable-shared
we don't have a way to load them otherwise
2010-04-06 20:27:19 +10:00
Andrew Tridgell
178b0d178d build: add require_headers option to CHECK_BUNDLED_SYSTEM()
Useful to ensure the package has usable headers
2010-04-06 20:27:18 +10:00
Andrew Tridgell
b498378c8f s4-waf: fixed some of the group ordering
We need to try to keep targets in the right groups
2010-04-06 20:27:18 +10:00
Andrew Tridgell
4854afcfa1 build: expand indirect includes to fix disable-shared build 2010-04-06 20:27:18 +10:00
Andrew Tridgell
354a76aeb3 build: fixed install target for systems with rpath disabled 2010-04-06 20:27:18 +10:00
Andrew Tridgell
385e02e9d9 build: added functions for compound configuration testing
This allows us to give a single 'Checking ...' msg for a compound
set of tests.
2010-04-06 20:27:18 +10:00
Andrew Tridgell
33d5c4a18c build: don't link when checking a C prototype 2010-04-06 20:27:18 +10:00
Andrew Tridgell
7da57cc94b build: tweak the strategy for finding functions
Based on a problem with res_ndestroy() on sunx in the build farm, I've
changed the default strategy for finding functions with
CHECK_FUNC(). It now accepts either a macro of a linked function, but
won't accept a declaration only unless you set link=False.
2010-04-06 20:27:17 +10:00
Andrew Tridgell
8ed23a408d build: new waf version with local patches replaced by upstream changes 2010-04-06 20:27:17 +10:00
Andrew Tridgell
2277134e8e build: removed debug line 2010-04-06 20:27:17 +10:00
Andrew Tridgell
f0f67ebd2f build: fixed a configure error with a totally clean tree 2010-04-06 20:27:17 +10:00
Andrew Tridgell
874e39cbf0 s4-waf: added implied_deps for system libraries
when we use a system version of a library such as talloc, then we
no longer get the automtica dependency propogation of talloc implying
libreplace. That means we don't get the includes for libreplace, which
means things can fail to build.

To fix this this change adds an implied_deps option to
CHECK_BUNDLED_SYSTEM(), which tells the samba_deps module to add an
implied dependency on the listed targets if the system library is
chosen.
2010-04-06 20:27:17 +10:00
Andrew Tridgell
989eb9dbdc s4-waf: added rules for rebuilding the yapp parser in pidl 2010-04-06 20:27:16 +10:00
Andrew Tridgell
720742424d build: fixed the on_results problem with SAMBA_AUTOPROTO() 2010-04-06 20:27:16 +10:00
Andrew Tridgell
7a3dd2c53f build: fixed missing nodes display on errors
when waf can't build something due to a missing file, it displayed the
whole group of files. This update makes it display only the missing
files.
2010-04-06 20:27:16 +10:00
Andrew Tridgell
65edcfa016 build: added pattern option for recursive_dirlist
also added LOAD_ENVIRONMENT(), which will be used in the testsuite
2010-04-06 20:27:16 +10:00
Andrew Tridgell
da1fed0a8f build: nicer progress display for a standard build 2010-04-06 20:27:15 +10:00
Andrew Tridgell
970892594b build: override PACKAGE_VERSION in pkg-config generation for libraries
we should use the vnum
2010-04-06 20:27:15 +10:00
Andrew Tridgell
d87b77e649 build: reuse SAMBA_LIBRARY() to build python modules
This allows the rpath logic to be shared, and simplifies the install
logic
2010-04-06 20:27:15 +10:00
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