1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
Commit Graph

294 Commits

Author SHA1 Message Date
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