summaryrefslogtreecommitdiff
path: root/lib/tdb/wscript
AgeCommit message (Collapse)AuthorFilesLines
2011-11-13waf: Factor checking for undefined symbol flags out into separate method.Jelmer Vernooij1-0/+2
Autobuild-User: Jelmer Vernooij <jelmer@samba.org> Autobuild-Date: Sun Nov 13 19:38:38 CET 2011 on sn-devel-104
2011-11-13tdb: Only check for pkg-config file when checking for system tdb.Jelmer Vernooij1-1/+1
2011-08-21wafsamba: Only install .pc files if libraries are public.Jelmer Vernooij1-3/+1
2011-08-21tdb: Install pkg-config file.Jelmer Vernooij1-1/+3
2011-04-23Support the 'PYTHON' environment variable.Jelmer Vernooij1-0/+1
Autobuild-User: Jelmer Vernooij <jelmer@samba.org> Autobuild-Date: Sat Apr 23 04:19:05 CEST 2011 on sn-devel-104
2011-03-15lib: don't install public headers if a private libraryAndrew Tridgell1-0/+1
for talloc/tevent/tdb, only install headers if we are doing a standalone build
2011-03-15tdb: use public_headers to install header filesAndrew Tridgell1-1/+1
2011-02-22python: use os.environ[] instead of os.putenv()Andrew Tridgell1-1/+1
using os.putenv() causes too much confusion, as it doesn't update os.getenv() Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-12-29tdb: tdb_summary() support.Rusty Russell1-2/+2
Autobuild-User: Rusty Russell <rusty@rustcorp.com.au> Autobuild-Date: Wed Dec 29 10:12:05 CET 2010 on sn-devel-104
2010-12-27tdb: setup TEST_DATA_PREFIX for make testStefan Metzmacher1-1/+5
metze
2010-12-21tdb: Bump version number after symbol versioning changes.Jelmer Vernooij1-1/+1
2010-12-10build: introduce SAMBA_CHECK_PYTHON_HEADERSMatthieu Patou1-1/+1
This function is a wrapper around waf's check_python_header. It avoids searching more than once for the headers bringing a small speed improvement and a better lisibility of the logs. But it's mainly to avoid a nasty bug when python libraries are in path pointed by python_LIBPL (ie. /usr/local/lib/python2.6/config/) instead of python_LIBDIR (ie. /usr/local/lib). On the first call waf will correctly find that in order to link with python libs it needs to add -L$python_LIBPL. But on the next calls of check_python_headers, waf will use both the current library path value (ie. -L/usr/local/lib/python2.6/config) and -L$python_LIBDIR (ie. /usr/local/lib/) which will make him beleive that python libraries are in $python_LIBDIR which at the end will make the final link test fails in check_python_headers as it will not use the good directory. So by avoiding calling check_python_headers more than once we avoid making waf fooling itself.
2010-12-09waf: remove the restriction that private libraries must not have a vnumAndrew Tridgell1-3/+1
we need the vnum for ABI checking for public libraries built as private libraries when bundled Autobuild-User: Andrew Tridgell <tridge@samba.org> Autobuild-Date: Thu Dec 9 12:47:41 CET 2010 on sn-devel-104
2010-12-09waf-abi: auto-generate per-symbol versions from ABI filesAndrew Tridgell1-1/+1
This changes our version-script generation to use the ABI files that are saved in git with each version number change of our public libraries. We use these ABI files to generate a linker version script that gives the exact version number that each symbol was introduced. This provides us with automatic fine grained symbol versioning. Pair-Programmed-With: Jelmer Vernooij <jelmer@samba.org> Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-11-03waf: added reconfigure targets to our librariesAndrew Tridgell1-0/+5
This allows you to do "make reconfigure" to re-run configure only if needed
2010-10-26waf: Only specify vnum for non-private libraries.Jelmer Vernooij1-6/+12
2010-10-23waf: Rename some BUNDLED_ functios to PRIVATE_.Jelmer Vernooij1-1/+1
2010-10-21waf: replace the is_bundled option with private_libraryAndrew Tridgell1-1/+1
'private_library' better captures what we are trying to get at when we bundle a library
2010-10-21s4-build: fixed some formattingAndrew Tridgell1-1/+2
indentation was far too deep
2010-10-17tdb: Bump version to 1.2.7 after addition of pytdb.__version__.Jelmer Vernooij1-1/+1
Autobuild-User: Jelmer Vernooij <jelmer@samba.org> Autobuild-Date: Sun Oct 17 18:23:16 UTC 2010 on sn-devel-104
2010-10-07waf: fixed exit status of test suitesAndrew Tridgell1-2/+4
use RUN_COMMAND() to handle signal errors and exit status
2010-10-04tdb: Only use system pytdb when using system tdb.Jelmer Vernooij1-2/+2
2010-10-04tdb: Support using system pytdb.Jelmer Vernooij1-8/+9
2010-10-04pytdb: Add __version__ attribute.Jelmer Vernooij1-1/+2
2010-09-27tdb: TDB_INCOMPATIBLE_HASH, to allow safe changing of default hash.Rusty Russell1-1/+1
This flag to tdb_open/tdb_open_ex effects creation of a new database: 1) Uses the Jenkins lookup3 hash instead of the old gdbm hash if none is specified, 2) Places a non-zero field in header->rwlocks, so older versions of TDB will refuse to open it. This means that the caller (ie Samba) can set this flag to safely change the hash function. Versions of TDB from this one on will either use the correct hash or refuse to open (if a different hash is specified). Older TDB versions will see the nonzero rwlocks field and refuse to open it under any conditions. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-09-27tdb: add Bob Jenkins lookup3 hash as helper hash.Rusty Russell1-2/+2
This is a better hash than the default: shipping it with tdb makes it easy for callers to use it as the hash by passing it to tdb_open_ex(). This version taken from CCAN and modified, which took it from http://www.burtleburtle.net/bob/c/lookup3.c. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-09-23tdb: add restoreVolker Lendecke1-0/+4
Based on an idea by Simon McVittie, largely rewritten
2010-09-13lib/tdb: change version to 1.2.4 after hash checking improvmentsStefan Metzmacher1-1/+1
lib/tdb: change version to 1.2.4 after hash checking improvments metze Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-08-31tdb/waf: the deps for rt are provided by libreplaceBjörn Jacke1-1/+1
2010-08-14tdb: workaround starvation problem in locking entire database.Rusty Russell1-1/+1
We saw tdb_lockall() take 71 seconds under heavy load; this is because Linux (at least) doesn't prevent new small locks being obtained while we're waiting for a big log. The workaround is to do divide and conquer using non-blocking chainlocks: if we get down to a single chain we block. Using a simple test program where children did "hold lock for 100ms, sleep for 1 second" the time to do tdb_lockall() dropped signifiantly. There are ln(hashsize) locks taken in the contended case, but that's slow anyway. More analysis is given in my blog at http://rusty.ozlabs.org/?p=120 This may also help transactions, though in that case it's the initial read lock which uses this gradual locking routine; the update-to-write-lock code is separate and still tries to update in one go. Even though ABI doesn't change, minor version bumped so behavior change can be easily detected. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2010-06-24s4-ldb: use CHECK_XSLTPROC_MANPAGES()Andrew Tridgell1-2/+1
2010-06-19wafsamba: Fix typo: noextenion -> noextension.Jelmer Vernooij1-1/+1
2010-05-31tdb-waf: Don't install binaries when using system tdb.Jelmer Vernooij1-17/+17
2010-05-31tdb-waf: Simplify manpage handling.Jelmer Vernooij1-17/+4
2010-05-31s4-waf: sanitize library names like the old build system did, only addJelmer Vernooij1-1/+1
-samba4 suffix for libraries that are bundled.
2010-04-21build: make python development headers not mandatory in standalone libsAndrew Tridgell1-1/+1
This needed an update to the python tool in waf thanks to Kai for spotting this
2010-04-20tdb: update tdb ABI to use hide_symbols=TrueAndrew Tridgell1-1/+2
We now use -fvisibilty=hidden to hide symbols from outside the tdb shared library. This also moved tdb_transaction_recover() into the tdb_private.h header, as it should never have been a public API. For that reason we are changing the version number. We're only doing a minor version increment as it is extremely unlikely that anyone was actually using tdb_transaction_recover() as its locking requirements were rather unusual. Pair-Programmed-With: Rusty Russell <rusty@samba.org>
2010-04-18tdb-waf: added ABI checking for tdbAndrew Tridgell1-0/+2
2010-04-13s4-waf: don't try to use the system lib for the library buildAndrew Tridgell1-5/+6
when building library FOO, don't try to find the system library FOO Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-13tdb-waf: added build of manpages and config options for RPM buildAndrew Tridgell1-3/+44
Building a RPM from the fedora spec file now works with minimal changes Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-04-06s4-waf: fixed waf distcheck for our standalone libs and s4Andrew Tridgell1-0/+4
2010-04-06s4-waf: added simple 'waf test' support for tdb, talloc and ldbAndrew Tridgell1-0/+6
2010-04-06s4-waf: use a common pattern for finding buildtools and libsAndrew Tridgell1-11/+7
2010-04-06s4-waf: move to a universal method of recursing into subdirsAndrew Tridgell1-3/+3
This works with both standalone lib builds and bundled builds
2010-04-06s4-waf: fixed finding of buildtools and srcdirAndrew Tridgell1-7/+6
2010-04-06s4-waf: avoid having to run waf configure before waf distAndrew Tridgell1-2/+3
This should be useful for building tarballs from a clean checkout
2010-04-06s4-waf: allow standalone tarball build of librariesAndrew Tridgell1-2/+9
2010-04-06s4-waf: added 'waf dist' to our standalone libs as wellAndrew Tridgell1-1/+3
2010-04-06s4-waf: added implied_deps for system librariesAndrew Tridgell1-1/+2
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-06s4-waf: support the use of system librariesAndrew Tridgell1-5/+10
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.