Jelmer Vernooij
c338dede1b
waf/samba_version: Support integer defines.
2010-11-12 17:42:14 +00:00
Jelmer Vernooij
7b964c7269
samba_version: When working from git checkout, display git revision SHA1 rather
...
than Bazaar revision ids.
2010-11-12 17:42:13 +00:00
Jelmer Vernooij
a0c2040ab6
samba_version: Support retrieving snapshot identity from bzr.
2010-11-12 17:42:13 +00:00
Jelmer Vernooij
45af495695
samba_version: Cope with building snapshots in directories without git checkout.
...
Error out when run in a git checkout in which git fails.
2010-11-12 17:42:13 +00:00
Jelmer Vernooij
d9a0a18dda
Put git tree finding into a separate function.
2010-11-12 17:42:13 +00:00
Jelmer Vernooij
80e2adc9c3
sambaversion.py: Some cleanups, make less git-specific.
2010-11-12 17:42:13 +00:00
Jelmer Vernooij
e3b7ce85e2
wafsamba: Support make dist from bzr checkout.
2010-11-12 17:42:13 +00:00
Andrew Tridgell
8759523295
waf: go back to the previous method of handling .inst. rules
...
the change broke the library linkages for some library, as spotted by
Brad
2010-11-08 15:46:27 +11:00
Andrew Tridgell
e427f2fc81
waf: fixed the names of the installed libraries after the last change
...
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Mon Nov 8 02:31:18 UTC 2010 on sn-devel-104
2010-11-08 02:31:18 +00:00
Andrew Tridgell
c0297e5e89
waf: fixed tabs/spaces for python3.0
...
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Mon Nov 8 00:55:13 UTC 2010 on sn-devel-104
2010-11-08 00:55:13 +00:00
Andrew Tridgell
b867dc9ea2
waf: prevent us from modifying non-install libs during make install
...
we need to ensure that 'make install' does not change any of our build
libraries, and only changes the .inst.so libraries, otherwise doing a
make test in the build directory directly after a make install could
use the installed libraries, which would mean using the wrong
LDB_MODULES_PATH
this could cause the "unknown error" loading ldb modules when running
some commands directly after a make install
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-11-08 11:13:28 +11:00
Jelmer Vernooij
c9756cac05
waf: Put private libraries in a separate directory when building.
...
Thanks to Tridge for pointing out what exactly I had to change. :-)
2010-11-05 02:06:06 +00:00
Jelmer Vernooij
21233bba96
wafsamba: Use project name variable rather than hardcoding 'samba4'.
...
Suggested-By: Andrew Tridgell <tridge@samba.org>
2010-11-05 02:06:06 +00:00
Jelmer Vernooij
afc332fdb1
wafsamba: Drop private library prefix when installing private libraries
...
to a custom path.
2010-11-05 02:06:05 +00:00
Jelmer Vernooij
ec7501ea4f
wafsamba: Support expanding variables in LIBDIR/PRIVATELIBDIR variables.
2010-11-05 02:06:05 +00:00
Jelmer Vernooij
e84e8705a9
Add --disable-rpath-private-install flag.
2010-11-05 02:06:05 +00:00
Jelmer Vernooij
e15cd9c6d5
Add --with-privatelibdir build option.
2010-11-05 02:06:05 +00:00
Jelmer Vernooij
0d4fa8514b
samba_utils: Use LIBDIR rather than assuming it is set to $prefix/lib.
2010-11-05 02:06:05 +00:00
Andrew Tridgell
ef1afae2ce
waf: more agressively expand subsystem syslib deps
...
this solves an openchange build problem with an indirect dependency on
talloc when talloc is a syslib
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Wed Nov 3 02:17:30 UTC 2010 on sn-devel-104
2010-11-03 02:17:30 +00:00
Andrew Tridgell
8c44dfc371
waf: ensure pkgconfig files depend on the prefix
2010-11-03 01:34:04 +00:00
Andrew Tridgell
dfa20fcd48
waf: split pkgconfig logic into a separate module
2010-11-03 01:34:04 +00:00
Andrew Tridgell
2a5e5cd8fa
waf: fixed wildcard build for full paths
2010-11-03 10:53:12 +11:00
Andrew Tridgell
5a3d22a256
waf: rerun deps calculation on LDFLAGS or CFLAGS change
2010-11-03 10:53:12 +11:00
Andrew Tridgell
9cac0bfde6
waf: fixed wildcard build
...
this fixes minimal includes for subsystems that use autoproto
2010-11-03 10:53:12 +11:00
Andrew Tridgell
4404b4c700
waf: removed the module aliases code
...
This is not needed with the new ldb modules approacg
2010-11-01 18:55:19 +11:00
Andrew Tridgell
0a703c7fd1
waf: added automatic prototyping of static module init functions
...
this avoids the need to manually list all our static init functions in
the code
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-11-01 18:55:19 +11:00
Andrew Tridgell
fd6d29bc08
waf: added module_init_name parameter to SAMBA_MODULE()
...
this will be used for ldb module loading
2010-11-01 18:55:18 +11:00
Matthieu Patou
c3fa203435
build: In some case the flags for the sun studio linker are wrong
...
In this case we test if the -Wl,-h,%s works and if so use this form
Autobuild-User: Matthieu Patou <mat@samba.org>
Autobuild-Date: Sun Oct 31 16:35:17 UTC 2010 on sn-devel-104
2010-10-31 16:35:17 +00:00
Matthieu Patou
9f0fb0261e
build: check that if we provide -liconv we can build shared libs
...
On Solaris with sun studio compiling an executable with -liconv even if
there is no libiconv.so or libiconv.a will work but not for a shared
lib.
This problem leads to build problem as the linker won't be able to find
libiconv when building shared lib as liconv is wrongly specified
2010-10-31 18:51:54 +03:00
Matthieu Patou
edebb76a61
build: strip -single_module when doing bundle on mac OS X
2010-10-30 13:45:18 +00:00
Matthieu Patou
33b276c2f1
build: set shared libraries flags correctly on mac os X
2010-10-30 13:45:18 +00:00
Andrew Tridgell
55063cddd5
waf: fixed building of non-shared binaries that contain modules
...
we need to incorporate the module objects too
2010-10-30 23:49:02 +11:00
Andrew Tridgell
e08c9ac696
waf: get rid of target aliases in wafsamba
...
these aliases are no longer needed, and can cause a lot of confusion
2010-10-30 23:49:01 +11:00
Andrew Tridgell
3a78148269
waf: save the samba_deps_extended
...
this is needed for the symbols.py extension
2010-10-30 23:49:00 +11:00
Andrew Tridgell
f7b70a5a7a
waf: give a better error on a bad grouping library
...
give a clear error on an unknown dependency in a grouping library
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30 23:49:00 +11:00
Andrew Tridgell
78d732cc40
waf: cope with subsystems with no static modules
...
we still need the STATIC_xx_MODULES define when there are no static
modules. It contains just the sentinal.
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30 23:49:00 +11:00
Andrew Tridgell
ae0f420dd9
waf: don't auto-depend on subsystems
...
this is part of an effort to reduce the amount of automatic dependency
munging we do. When working on the correct dependency tree for Samba
it is easier to add the right dependencies in the wscript files than
rely on them being added by the waf rules. This change removes the
automatic dependency of modules on their subsystem. Many modules don't
actually need this dependency anyway, so it is better to add it where
they are needed (for example, for ldb modules)
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30 23:49:00 +11:00
Andrew Tridgell
adabc3d082
waf: added --symbol-check option
...
this adds checking of the symbols in all our object files, libraries
and syslibs. It will form the basis in future for a lot more checks,
but for now it just checks basic rules like not allowing us to use
symbols that are in system libs.
Currently this is enabled only if you use the --symbol-check option,
(or use make with SYMBOLCHECK=1) but I intend to make this always
enabled once it has had more testing.
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30 23:49:00 +11:00
Andrew Tridgell
df34bb2685
waf: build all libraries after all object files
...
this makes it easier to perform symbol checking before the link
stage. The two new build groups symbolcheck and syslibcheck will be
used by the symbols.py extension
2010-10-30 23:49:00 +11:00
Andrew Tridgell
170c255f09
waf: use Utils.WafError() instead of raising an AssertionError
...
this produces clearer output on errors
2010-10-30 23:49:00 +11:00
Andrew Tridgell
d1e94980bf
waf: cope with rules with no inputs
...
when we display a rule with no inputs, just call the original display
function
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30 23:49:00 +11:00
Andrew Tridgell
ccbb77693c
waf: separate out get_tgt_list()
...
this is a useful function for the new symbols code, so separate it out
of samba_deps.py
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30 23:49:00 +11:00
Andrew Tridgell
e97be0860b
waf: display the paths in library loops
...
when we detect a library loop, try to display the paths between the
two libraries. This should make it easier to fix.
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30 23:49:00 +11:00
Andrew Tridgell
d489880ecd
waf: added env.DEVELOPER_MODE flag
...
this makes it easier to add project rules that are only run in
developer mode
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30 23:49:00 +11:00
Andrew Tridgell
65743f932b
waf: added suncc_wrap
...
this should solve a problem with creating alias modules with Sun CC.
Thanks to Matthieu for the idea, and Thomas for the waf code
2010-10-30 23:49:00 +11:00
Matthieu Patou
4a11cad0e0
build: add the -fno-common flags to fix the link pb on mac os X
...
Autobuild-User: Matthieu Patou <mat@samba.org>
Autobuild-Date: Thu Oct 28 22:35:08 UTC 2010 on sn-devel-104
2010-10-28 22:35:08 +00:00
Matthieu Patou
95cbff76d6
build: Add XPG6 otherwise we have a configure pb on sun Solaris
2010-10-28 08:57:18 +00:00
Matthieu Patou
5634f55cc8
build: remove warnings about redifinition of boolean use -KPIC on suncc
...
Autobuild-User: Matthieu Patou <mat@samba.org>
Autobuild-Date: Wed Oct 27 22:57:19 UTC 2010 on sn-devel-104
2010-10-27 22:57:19 +00:00
Stefan Metzmacher
073d3bf1fc
wafsamba: support 'soname' attribute on SAMBA_LIBRARY()
...
It's sometimes needed to specifiy the soname directly.
metze
2010-10-27 05:07:22 +02:00
Andrew Tridgell
a06192b33b
waf: sped up the project rules checking
...
this also makes the --show-duplicates output more useful
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Wed Oct 27 01:36:46 UTC 2010 on sn-devel-104
2010-10-27 01:36:46 +00:00
Andrew Tridgell
afe40c7ecc
waf: quote subsystem names to make them clearer
2010-10-26 23:40:04 +00:00
Jelmer Vernooij
c251cb62ec
wafsamba: Fix soname for standalone private libraries.
...
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Tue Oct 26 18:10:13 UTC 2010 on sn-devel-104
2010-10-26 18:10:13 +00:00
Jelmer Vernooij
a74e8be6d1
waf: Stop automaticaly changing dashes to underscores in library names.
2010-10-26 10:17:18 -07:00
Jelmer Vernooij
8cf61377aa
waf: Remove lib prefix from libraries manually.
2010-10-26 10:17:17 -07:00
Jelmer Vernooij
df76c3f147
waf: build private libraries with so names.
2010-10-26 10:17:17 -07:00
Andrew Tridgell
db73b4a2c1
waf: moved the -Wl,-no-undefined flags to source4 and ldb
...
moved it out of the general waf build as the s3 waf build cannot yet
handle linking with -Wl,-no-undefined
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Mon Oct 25 01:12:15 UTC 2010 on sn-devel-104
2010-10-25 01:12:15 +00:00
Jelmer Vernooij
49ef288819
waf: Rename some BUNDLED_ functios to PRIVATE_.
2010-10-23 22:24:06 +00:00
Andrew Tridgell
6c3e670f31
waf: check the linker accepts a set of ldflags before using them
...
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Thu Oct 21 08:45:49 UTC 2010 on sn-devel-104
2010-10-21 08:45:49 +00:00
Andrew Tridgell
dc729c62ea
waf: loosen the restriction on depending on python libs
...
the pidl generated python code can generate dependencies between two
python modules, so we have to allow this for now
2010-10-21 19:03:27 +11:00
Andrew Tridgell
7ffb781e81
waf-python: make the pyext flag add the pyembed features for libraries
...
this is rather strange, but we get build errors without it. There may
be a bug in the waf python tool, or I may misunderstand how to use it
2010-10-21 19:03:27 +11:00
Andrew Tridgell
0966776b36
waf: fixed the handling of -Wl,-no-undefined
...
this flag was not being propogated to our link rules, so we were not
in fact enforcing no undefined symbols in libraries.
2010-10-21 19:03:27 +11:00
Andrew Tridgell
51dc322f63
waf: show duplicate objects in python modules as well as libraries
...
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21 19:03:26 +11:00
Andrew Tridgell
ec7bb906db
waf: added pyext option to SAMBA_LIBRARY()
...
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21 19:03:26 +11:00
Andrew Tridgell
7a2cad43df
waf: raise an error on a dependency on a python module
...
it is never correct to list a dependency on a python module
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21 19:03:26 +11:00
Andrew Tridgell
6f36a015b1
waf: prevent the global deps list creating depenency loops
...
this prevents a loop between SOCKET_WRAPPER and replace in the s3 waf
build
2010-10-21 19:03:25 +11:00
Andrew Tridgell
7cba3cfac8
waf: replace the is_bundled option with private_library
...
'private_library' better captures what we are trying to get at when we
bundle a library
2010-10-21 19:03:24 +11:00
Andrew Tridgell
1d8733537e
waf: added the concept of a grouping_library
...
a grouping library is one which 'groups' a set of subsystems. This
means that if a target depends on a subsystem that is within a
grouping library then that dependency is replaced with a dependency on
the grouping library.
This gives us a powerful method to avoid duplicated object files
between libraries.
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21 19:03:24 +11:00
Andrew Tridgell
e2a2c71757
waf: cope with libraries with a specified version number
...
this fixes a problem with libnss_winbind.so.2. Thanks to Jelmer for
spotting this.
2010-10-21 19:03:24 +11:00
Andrew Tridgell
29c0b86126
waf: re-work the module alias code
...
we now create a base library, and then create the alias modules as
wrappers around that base. That prevents double instantiation of any
object files in the modules
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21 19:03:23 +11:00
Andrew Tridgell
e596a4e6c3
waf: fixed expansion of direct_objects and direct_libs
...
these do not need to be expanded in break_dependency_loops()
2010-10-21 19:03:23 +11:00
Andrew Tridgell
cd7190b802
waf: allows libraries to be marked as private_library=True
...
this is for libraries where we make no promises about the API, but
where we wish it to be a library to allow our binaries to use common
code.
These libraries always get the project suffix added to the library
name, to ensure we are in a separate namespace
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21 19:03:23 +11:00
Andrew Tridgell
c0878cfb61
waf: rework expand_subsystem_deps()
...
make the variable names a lot clearer, and restrict the expansion of
subsystem deps to object style subsystems and modules. If a subsystem
or a module is built as a library then we don't need to expand the
dependencies across that boundary
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21 19:03:23 +11:00
Andrew Tridgell
14081efcc0
waf: added --show-deps and --show-duplicates
...
these options make it easier to examine our depenency tree, by showing
any objects linked into more than one library, and by showing the
dependency tree for a chosen target
2010-10-21 19:03:23 +11:00
Andrew Tridgell
968381a4e2
waf: put -Wl,-no-undefined only in the linker flags, not when compiling C
2010-10-19 11:22:35 +11:00
Andrew Tridgell
1b8355897d
waf: don't save deps on install
...
this prevents an install triggering a new check of the project rules
on the next build
2010-10-19 11:22:35 +11:00
Andrew Tridgell
d485701436
waf: automap shared library names from .so to the right extension
...
this should help with MacOSX .dylib libraries
2010-10-19 11:22:35 +11:00
Jelmer Vernooij
7af5687504
heimdal_build: Use existing functions for finding system libraries.
2010-10-16 01:32:05 +00:00
Andrew Tridgell
3921d6f4d3
s4-waf: automatically remove stale C and header files
...
this prevents stale .c and .h files in bin/ from causing build
problems
Thanks to Thomas Nagy for the example implementation!
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Thu Oct 14 07:44:13 UTC 2010 on sn-devel-104
2010-10-14 07:44:13 +00:00
Jelmer Vernooij
5954e7173a
wafsamba/developer: Forbid shared objects with unresolved symbols, if
...
the linker supports such a flag.
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Wed Oct 13 12:52:22 UTC 2010 on sn-devel-104
2010-10-13 12:52:22 +00:00
Jelmer Vernooij
870de461cb
wafsamba: Don't allow circular dependencies involving libraries by
...
default.
2010-10-13 14:10:42 +02:00
Jelmer Vernooij
24ec465790
wafsamba: Warn about circular dependencies between libraries.
2010-10-12 19:23:59 +02:00
Jelmer Vernooij
5324b943e7
wafsamba: Fix handling of pyembed/pyext.
2010-10-10 23:54:04 +00:00
Jelmer Vernooij
ea6a3f5c48
wafsamba: Support setting pyembed on libraries.
2010-10-11 01:06:36 +02:00
Jelmer Vernooij
a20f025ff6
wafsamba: Fix init function when building modules as shared objects.
...
Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2010-10-10 23:05:40 +02:00
Jelmer Vernooij
c15e919a09
wafsamba: Clarify needs_python argument name, use pyembed/pyext where
...
applicable.
Allow using both pyembed and pyext, to prevent unresolved symbols.
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Sun Oct 10 03:54:01 UTC 2010 on sn-devel-104
2010-10-10 03:54:01 +00:00
Andrew Tridgell
7dcecbd077
waf: allow for commands like "make bin/smbtorture"
...
I finally worked out the GNU make syntax for this
2010-10-06 12:18:04 +00:00
Andrew Tridgell
c24240bcd2
waf: fixed some python3.x portability issues
...
these have crept into the tree over time. Maybe we should add testing
of a range of python versions to autobuild?
2010-10-06 11:13:05 +00:00
Andrew Tridgell
8fcccae6aa
waf: update to waf version 1.5.19
...
this includes a number of perforance improvements and bug
fixes. Thanks to Thomas for all the recent improvements!
2010-10-06 11:13:05 +00:00
Andrew Tridgell
1e267b03da
waf: fixed the problem with com_err on Ubuntu 9.04
...
this changes CHECK_BUNDLED_SYSTEM() to honor the checkfunctions and
headers options even for libraries found with pkgconfig.
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Wed Oct 6 05:06:42 UTC 2010 on sn-devel-104
2010-10-06 05:06:42 +00:00
Andrew Tridgell
7c5d7a5b63
waf: workaround for the 'make install' breakage
...
This is a temporary workaround until Jelmer gets a chance to look at
this
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Tue Oct 5 06:57:59 UTC 2010 on sn-devel-104
2010-10-05 06:57:59 +00:00
Jelmer Vernooij
e604532b49
waf: Add function for checking for system python modules.
2010-10-04 13:52:09 +02:00
Jelmer Vernooij
120f5ee429
wafsamba: Some reformatting.
2010-10-03 16:25:38 +02:00
Jelmer Vernooij
257e259a26
heimdal: Move asn1 list to heimdal_build.
2010-10-03 16:25:38 +02:00
Jelmer Vernooij
dd5a91b437
heimdal: Move SAMBA_ERRTABLE to heimdal_build.
2010-10-03 16:25:38 +02:00
Jelmer Vernooij
8e5a9e7721
heimdal: Move autoproto code to heimdal_build.
2010-10-03 16:25:38 +02:00
Jelmer Vernooij
3c1eca124e
wafsamba: Move heimdal library code to heimdal_build.
2010-10-03 16:25:37 +02:00
Jelmer Vernooij
beed95e3a2
heimdal: convert some subsystems to libraries, consistent with upstream heimdal.
2010-10-03 16:25:37 +02:00
Günther Deschner
63c3af7981
waf: add delimiter argument to TO_LIST.
...
Guenther
2010-09-27 00:39:38 +02:00
Günther Deschner
ca2bbe00dc
s3-waf: add some module specific functions for s3 waf build.
...
Thanks to Kai.
Guenther
2010-09-27 00:39:37 +02:00
Jelmer Vernooij
ead126caac
Merge branch 'v4-0-stable' into newmaster
2010-09-20 15:24:44 -07:00
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