1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-27 14:04:05 +03:00

430 Commits

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