summaryrefslogtreecommitdiff
path: root/buildtools/wafsamba
AgeCommit message (Collapse)AuthorFilesLines
2010-10-30waf: save the samba_deps_extendedAndrew Tridgell1-1/+1
this is needed for the symbols.py extension
2010-10-30waf: give a better error on a bad grouping libraryAndrew Tridgell1-0/+1
give a clear error on an unknown dependency in a grouping library Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30waf: cope with subsystems with no static modulesAndrew Tridgell1-4/+6
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-30waf: don't auto-depend on subsystemsAndrew Tridgell1-7/+0
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-30waf: added --symbol-check optionAndrew Tridgell2-47/+125
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-30waf: build all libraries after all object filesAndrew Tridgell1-7/+17
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-30waf: use Utils.WafError() instead of raising an AssertionErrorAndrew Tridgell1-2/+1
this produces clearer output on errors
2010-10-30waf: cope with rules with no inputsAndrew Tridgell1-0/+3
when we display a rule with no inputs, just call the original display function Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-30waf: separate out get_tgt_list()Andrew Tridgell2-12/+20
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-30waf: display the paths in library loopsAndrew Tridgell1-0/+21
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-30waf: added env.DEVELOPER_MODE flagAndrew Tridgell2-0/+309
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-30waf: added suncc_wrapAndrew Tridgell1-1/+16
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-28build: add the -fno-common flags to fix the link pb on mac os XMatthieu Patou1-0/+2
Autobuild-User: Matthieu Patou <mat@samba.org> Autobuild-Date: Thu Oct 28 22:35:08 UTC 2010 on sn-devel-104
2010-10-28build: Add XPG6 otherwise we have a configure pb on sun SolarisMatthieu Patou1-0/+1
2010-10-27build: remove warnings about redifinition of boolean use -KPIC on sunccMatthieu Patou1-1/+9
Autobuild-User: Matthieu Patou <mat@samba.org> Autobuild-Date: Wed Oct 27 22:57:19 UTC 2010 on sn-devel-104
2010-10-27wafsamba: support 'soname' attribute on SAMBA_LIBRARY()Stefan Metzmacher2-1/+16
It's sometimes needed to specifiy the soname directly. metze
2010-10-27waf: sped up the project rules checkingAndrew Tridgell1-21/+60
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-26waf: quote subsystem names to make them clearerAndrew Tridgell1-1/+1
2010-10-26wafsamba: Fix soname for standalone private libraries.Jelmer Vernooij1-1/+1
Autobuild-User: Jelmer Vernooij <jelmer@samba.org> Autobuild-Date: Tue Oct 26 18:10:13 UTC 2010 on sn-devel-104
2010-10-26waf: Stop automaticaly changing dashes to underscores in library names.Jelmer Vernooij1-2/+1
2010-10-26waf: Remove lib prefix from libraries manually.Jelmer Vernooij1-2/+0
2010-10-26waf: build private libraries with so names.Jelmer Vernooij1-1/+6
2010-10-25waf: moved the -Wl,-no-undefined flags to source4 and ldbAndrew Tridgell1-2/+0
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-23waf: Rename some BUNDLED_ functios to PRIVATE_.Jelmer Vernooij3-20/+20
2010-10-21waf: check the linker accepts a set of ldflags before using themAndrew Tridgell1-1/+10
Autobuild-User: Andrew Tridgell <tridge@samba.org> Autobuild-Date: Thu Oct 21 08:45:49 UTC 2010 on sn-devel-104
2010-10-21waf: loosen the restriction on depending on python libsAndrew Tridgell1-1/+3
the pidl generated python code can generate dependencies between two python modules, so we have to allow this for now
2010-10-21waf-python: make the pyext flag add the pyembed features for librariesAndrew Tridgell1-1/+3
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-21waf: fixed the handling of -Wl,-no-undefinedAndrew Tridgell3-11/+5
this flag was not being propogated to our link rules, so we were not in fact enforcing no undefined symbols in libraries.
2010-10-21waf: show duplicate objects in python modules as well as librariesAndrew Tridgell1-2/+3
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21waf: added pyext option to SAMBA_LIBRARY()Andrew Tridgell1-1/+2
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21waf: raise an error on a dependency on a python moduleAndrew Tridgell1-0/+3
it is never correct to list a dependency on a python module Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-10-21waf: prevent the global deps list creating depenency loopsAndrew Tridgell1-1/+9
this prevents a loop between SOCKET_WRAPPER and replace in the s3 waf build
2010-10-21waf: replace the is_bundled option with private_libraryAndrew Tridgell2-9/+5
'private_library' better captures what we are trying to get at when we bundle a library
2010-10-21waf: added the concept of a grouping_libraryAndrew Tridgell1-1/+32
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-21waf: cope with libraries with a specified version numberAndrew Tridgell1-0/+3
this fixes a problem with libnss_winbind.so.2. Thanks to Jelmer for spotting this.
2010-10-21waf: re-work the module alias codeAndrew Tridgell1-22/+52
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-21waf: fixed expansion of direct_objects and direct_libsAndrew Tridgell1-2/+2
these do not need to be expanded in break_dependency_loops()
2010-10-21waf: allows libraries to be marked as private_library=TrueAndrew Tridgell2-3/+13
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-21waf: rework expand_subsystem_deps()Andrew Tridgell1-18/+36
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-21waf: added --show-deps and --show-duplicatesAndrew Tridgell2-1/+74
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-19waf: put -Wl,-no-undefined only in the linker flags, not when compiling CAndrew Tridgell2-3/+28
2010-10-19waf: don't save deps on installAndrew Tridgell1-1/+2
this prevents an install triggering a new check of the project rules on the next build
2010-10-19waf: automap shared library names from .so to the right extensionAndrew Tridgell4-11/+58
this should help with MacOSX .dylib libraries
2010-10-16heimdal_build: Use existing functions for finding system libraries.Jelmer Vernooij1-1/+1
2010-10-14s4-waf: automatically remove stale C and header filesAndrew Tridgell3-0/+98
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-13wafsamba/developer: Forbid shared objects with unresolved symbols, ifJelmer Vernooij1-1/+1
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-13wafsamba: Don't allow circular dependencies involving libraries byJelmer Vernooij1-7/+17
default.
2010-10-12wafsamba: Warn about circular dependencies between libraries.Jelmer Vernooij1-1/+1
2010-10-10wafsamba: Fix handling of pyembed/pyext.Jelmer Vernooij1-5/+2
2010-10-11wafsamba: Support setting pyembed on libraries.Jelmer Vernooij1-3/+9