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
Andrew Tridgell
6edb70c59e
build: added help on fns
...
also added CHECK_STRUCTURE_MEMBER()
2010-04-06 20:26:43 +10:00
Andrew Tridgell
001068d26f
build: check for volatile
2010-04-06 20:26:43 +10:00
Andrew Tridgell
cfb4f55a7b
build: check size of types
...
allow name of SIZEOF test to be specified
2010-04-06 20:26:42 +10:00
Andrew Tridgell
f7ed3e544c
build: added CHECK_SIZEOF()
2010-04-06 20:26:42 +10:00
Andrew Tridgell
39807fd091
build: smarter list splitting
2010-04-06 20:26:42 +10:00
Andrew Tridgell
dd05b6512a
build: improve autoconf macros
...
- enable headers to be specified
- enable both forms of DECL check
- more libreplace checks
- more heimdal checks
- more sysdep checks
2010-04-06 20:26:42 +10:00
Andrew Tridgell
54e26fcb48
build: added CHECK_DECLS()
2010-04-06 20:26:42 +10:00
Andrew Tridgell
bf17c9a56e
build: return values for autoconf-like tests
...
also add checklibc options for CHECK_FUNCS_IN()
2010-04-06 20:26:42 +10:00
Andrew Tridgell
62137089a0
build: another typo
2010-04-06 20:26:42 +10:00
Andrew Tridgell
abaf9aaba7
build: add_headers flag to CHECK_HEADER()
...
This allows you to ask the header not be added to the list of headers
for future configure checks
2010-04-06 20:26:41 +10:00
Andrew Tridgell
fd110dc176
build: useful test script
2010-04-06 20:26:41 +10:00
Andrew Tridgell
e01a71942c
build: added define and always options to CHECK_VARIABLE()
2010-04-06 20:26:41 +10:00
Andrew Tridgell
8bae4823f2
build: waf build for lib/tls
2010-04-06 20:26:41 +10:00
Andrew Tridgell
ca56fc2867
useful tools for finding missing configure steps
2010-04-06 20:26:41 +10:00
Andrew Tridgell
5b9ca48d81
build: added generation of version.h
2010-04-06 20:26:40 +10:00
Andrew Tridgell
88a138f373
build: a useful example of a debug technique in waf
2010-04-06 20:26:40 +10:00
Andrew Tridgell
d004964142
build: moved main autoproto rule into samba_autoproto.py
2010-04-06 20:26:40 +10:00
Andrew Tridgell
6dcf5563ea
build: allow selection of build group in HEIMDAL_AUTOPROTO()
2010-04-06 20:26:40 +10:00
Andrew Tridgell
8c4e709818
build: use shell for TDR rule, as -- confuses the build rule
2010-04-06 20:26:40 +10:00
Andrew Tridgell
7ed65d2e12
build: result of hack session with ita
2010-04-06 20:26:40 +10:00
Andrew Tridgell
36e6d11dce
build: add README to explain gen_ndr, and ensure directory exists
2010-04-06 20:26:40 +10:00
Andrew Tridgell
9129c3b3b6
build: fixes from ita
2010-04-06 20:26:40 +10:00
Andrew Tridgell
c8f4ca41f6
build: fixed formatting
2010-04-06 20:26:40 +10:00
Andrew Tridgell
c7ea3e6fbf
build: source= is clearer for source lists
2010-04-06 20:26:39 +10:00
Andrew Tridgell
bc39054bc3
build: rewrote PIDL rules, breaking them into a separate waf tool
2010-04-06 20:26:39 +10:00
Andrew Tridgell
bd54d2a87d
build: fixed location of gen_ndr files
2010-04-06 20:26:39 +10:00
Andrew Tridgell
d6f2855d96
build: fixed --includedir options for PIDL
2010-04-06 20:26:39 +10:00
Andrew Tridgell
49b4d29ad3
build: split out the extension based build patterns
2010-04-06 20:26:39 +10:00
Andrew Tridgell
8364d6b7e8
build: add output_type and realname for mit_samba library
2010-04-06 20:26:39 +10:00
Andrew Tridgell
5ad6369cd0
build: started to split up wafsamba.py into separate modules
2010-04-06 20:26:38 +10:00
Andrew Tridgell
ec6049c93d
build: aded wafsamba README
2010-04-06 20:26:38 +10:00
Andrew Tridgell
cada19f58b
build: cope with empty source lists for libs
2010-04-06 20:26:38 +10:00
Andrew Tridgell
e3ae80a2f7
build: added svn version of waf. It has better exception display
2010-04-06 20:26:38 +10:00
Andrew Tridgell
07eeed33f6
build: heimdal_build waf support
...
heimdal now mostly builds
2010-04-06 20:26:38 +10:00
Andrew Tridgell
7f9c439596
build: auto generate ASN1 and ET rules
2010-04-06 20:26:37 +10:00
Andrew Tridgell
34fb27534b
build: fixed handling of heimdal_build/internal.mk
2010-04-06 20:26:36 +10:00
Andrew Tridgell
7e01efa80f
build: improve the wscript generator
2010-04-06 20:26:36 +10:00
Andrew Tridgell
ff9f972d55
build: added public_headers support
2010-04-06 20:26:35 +10:00
Andrew Tridgell
a3421fe6e9
build: added BUILD_SUBDIR() wrapper
2010-04-06 20:26:35 +10:00
Andrew Tridgell
5393e6c9d2
build: recognise manpages keyword
2010-04-06 20:26:35 +10:00
Andrew Tridgell
73634d6ff3
build: added autoproto stub
2010-04-06 20:26:35 +10:00
Andrew Tridgell
df0a1e9368
build: first attempt at a script to auto-convert config.mk files to wscript
2010-04-06 20:26:34 +10:00
Andrew Tridgell
2b5a1cc70c
build: added waf build rules for ldb
2010-04-06 20:26:34 +10:00
Andrew Tridgell
8fd62757d2
build: added waf to the tree, so everyone uses the same version
2010-04-06 20:26:33 +10:00