The branch, master has been updated via 367ba43... tdb-waf: added build of manpages and config options for RPM build via 42505df... talloc-waf: the talloc1-compat lib depends on talloc via 58abd9a... build: for unbundled libraries install devel link too from 16d4d03... testprogs/blackbox/test_kinit: reorder arguments to "net time" to fix make test
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 367ba43b63eacb2bffaf8c53c77a343481482939 Author: Andrew Tridgell <tri...@samba.org> Date: Tue Apr 13 20:13:00 2010 +1000 tdb-waf: added build of manpages and config options for RPM build Building a RPM from the fedora spec file now works with minimal changes Pair-Programmed-With: Andrew Bartlett <abart...@samba.org> commit 42505df161bacc24b6f0bf72baee6995c51a260b Author: Andrew Tridgell <tri...@samba.org> Date: Tue Apr 13 19:46:29 2010 +1000 talloc-waf: the talloc1-compat lib depends on talloc It is a library linked to another library, not a 2nd copy of talloc.c Pair-Programmed-With: Andrew Bartlett <abart...@samba.org> commit 58abd9ac81e18276ee3e2dd9b545b1525f67f721 Author: Andrew Tridgell <tri...@samba.org> Date: Tue Apr 13 19:45:38 2010 +1000 build: for unbundled libraries install devel link too We need a symlink libFOO.so -> libFOO.so.x.y as a development symlink Pair-Programmed-With: Andrew Bartlett <abart...@samba.org> ----------------------------------------------------------------------- Summary of changes: buildtools/wafsamba/samba_autoconf.py | 1 + buildtools/wafsamba/samba_install.py | 8 +++++ lib/talloc/wscript | 4 +- lib/tdb/wscript | 47 ++++++++++++++++++++++++++++++-- 4 files changed, 55 insertions(+), 5 deletions(-) Changeset truncated at 500 lines: diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py index cbb10a2..9d0229e 100644 --- a/buildtools/wafsamba/samba_autoconf.py +++ b/buildtools/wafsamba/samba_autoconf.py @@ -534,6 +534,7 @@ def CHECK_FUNCS_IN(conf, list, library, mandatory=False, checklibc=False, def IN_LAUNCH_DIR(conf): '''return True if this rule is being run from the launch directory''' return os.path.realpath(conf.curdir) == os.path.realpath(Options.launch_dir) +Options.Handler.IN_LAUNCH_DIR = IN_LAUNCH_DIR @conf diff --git a/buildtools/wafsamba/samba_install.py b/buildtools/wafsamba/samba_install.py index 28bd270..74730dd 100644 --- a/buildtools/wafsamba/samba_install.py +++ b/buildtools/wafsamba/samba_install.py @@ -82,6 +82,8 @@ def install_library(self): t.env.append_value('LINKFLAGS', install_ldflags) + dev_link = None + if self.samba_realname: install_name = self.samba_realname install_link = None @@ -91,6 +93,9 @@ def install_library(self): install_name = 'lib%s.so.%s' % (self.target, self.vnum) install_link = 'lib%s.so.%s' % (self.target, vnum_base) inst_name = 'lib%s.so' % t.target + if self.target == self.name: + # only generate the dev link for non-bundled libs + dev_link = 'lib%s.so' % self.target else: install_name = 'lib%s.so' % self.target install_link = None @@ -103,6 +108,9 @@ def install_library(self): # and the symlink if needed bld.symlink_as(os.path.join(install_path, install_link), install_name) + if dev_link: + bld.symlink_as(os.path.join(install_path, dev_link), + install_name) diff --git a/lib/talloc/wscript b/lib/talloc/wscript index 55f0e2c..bd47be8 100644 --- a/lib/talloc/wscript +++ b/lib/talloc/wscript @@ -60,8 +60,8 @@ def build(bld): # should we also install the symlink to libtalloc1.so here? bld.SAMBA_LIBRARY('talloc-compat1', - 'talloc.c compat/talloc_compat1.c', - deps='replace', + 'compat/talloc_compat1.c', + deps='talloc', enabled = bld.env.TALLOC_COMPAT1, vnum=VERSION) diff --git a/lib/tdb/wscript b/lib/tdb/wscript index d80b720..c5706a2 100644 --- a/lib/tdb/wscript +++ b/lib/tdb/wscript @@ -13,7 +13,7 @@ while not os.path.exists(srcdir+'/buildtools') and len(srcdir.split('/')) < 5: srcdir = '../' + srcdir sys.path.insert(0, srcdir + '/buildtools/wafsamba') -import wafsamba, samba_dist +import wafsamba, samba_dist, Options, Logs samba_dist.DIST_DIRS('lib/tdb:. lib/replace:lib/replace buildtools:buildtools') @@ -21,6 +21,11 @@ def set_options(opt): opt.BUILTIN_DEFAULT('replace') opt.BUNDLED_EXTENSION_DEFAULT('tdb', noextenion='tdb') opt.RECURSE('lib/replace') + if opt.IN_LAUNCH_DIR(): + opt.add_option('--disable-python', + help=("disable the pytdb module"), + action="store_true", dest='disable_python', default=False) + def configure(conf): conf.RECURSE('lib/replace') @@ -29,6 +34,21 @@ def configure(conf): implied_deps='replace'): conf.define('USING_SYSTEM_TDB', 1) + conf.env.standalone_tdb = conf.IN_LAUNCH_DIR() + conf.env.disable_python = getattr(Options.options, 'disable_python', False) + + if conf.env.standalone_tdb: + conf.find_program('xsltproc', var='XSLTPROC') + + if not conf.env.disable_python: + # also disable if we don't have the python libs installed + conf.check_tool('python') + conf.check_python_version((2,4,2)) + conf.check_python_headers() + if not conf.env.HAVE_PYTHON_H: + Logs.warn('Disabling pytdb as python devel libs not found') + conf.env.disable_python = True + conf.SAMBA_CONFIG_H() def build(bld): @@ -48,7 +68,8 @@ def build(bld): bld.SAMBA_BINARY('tdbtorture', 'tools/tdbtorture.c', - 'tdb') + 'tdb', + install=False) bld.SAMBA_BINARY('tdbdump', 'tools/tdbdump.c', @@ -67,9 +88,29 @@ def build(bld): bld.SAMBA_PYTHON('pytdb', 'pytdb.c', deps='tdb', - enabled=s4_build, + enabled=not bld.env.disable_python, realname='tdb.so') + if bld.env.standalone_tdb: + bld.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig' + bld.env.TALLOC_VERSION = VERSION + bld.PKG_CONFIG_FILES('tdb.pc', vnum=VERSION) + bld.INSTALL_FILES('${INCLUDEDIR}', 'include/tdb.h', flat=True) + + if bld.env.XSLTPROC: + manpages = 'manpages/tdbbackup.8 manpages/tdbdump.8 manpages/tdbtool.8' + + bld.env.TDB_MAN_XSL = 'http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl' + + for m in manpages.split(): + source = m + '.xml' + bld.SAMBA_GENERATOR(m, + source=source, + target=m, + rule='${XSLTPROC} -o ${TGT} ${TDB_MAN_XSL} ${SRC}' + ) + bld.INSTALL_FILES('${MANDIR}/man8', m, flat=True) + def test(ctx): '''run tdb testsuite''' -- Samba Shared Repository