diff options
author | Andrew Tridgell <tridge@samba.org> | 2010-03-29 22:27:17 +1100 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2010-04-06 20:27:17 +1000 |
commit | 874e39cbf00325cb379ddea274ae4288e32f8f72 (patch) | |
tree | 249dfe4463f3c302f8a1737b43c129b893d76fa0 /buildtools/wafsamba/samba_bundled.py | |
parent | ed5522adf24903a500e3565ea5eb443ed28440cc (diff) | |
download | samba-874e39cbf00325cb379ddea274ae4288e32f8f72.tar.gz samba-874e39cbf00325cb379ddea274ae4288e32f8f72.tar.bz2 samba-874e39cbf00325cb379ddea274ae4288e32f8f72.zip |
s4-waf: added implied_deps for system libraries
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.
Diffstat (limited to 'buildtools/wafsamba/samba_bundled.py')
-rw-r--r-- | buildtools/wafsamba/samba_bundled.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py index b2d1b0ef14..28116fcd69 100644 --- a/buildtools/wafsamba/samba_bundled.py +++ b/buildtools/wafsamba/samba_bundled.py @@ -46,7 +46,8 @@ Options.Handler.BUNDLED_EXTENSION_DEFAULT = BUNDLED_EXTENSION_DEFAULT @runonce @conf def CHECK_BUNDLED_SYSTEM(conf, libname, minversion='0.0.0', - checkfunctions=None, headers=None, onlyif=None): + checkfunctions=None, headers=None, + onlyif=None, implied_deps=None): '''check if a library is available as a system library. this first tries via pkg-config, then if that fails tries by testing for a specified function in the specified lib @@ -76,10 +77,14 @@ def CHECK_BUNDLED_SYSTEM(conf, libname, minversion='0.0.0', msg='Checking for system %s >= %s' % (libname, minversion)): conf.SET_TARGET_TYPE(libname, 'SYSLIB') conf.env[found] = True + if implied_deps: + conf.SET_SYSLIB_DEPS(libname, implied_deps) return True if checkfunctions is not None: if conf.CHECK_FUNCS_IN(checkfunctions, libname, headers=headers, empty_decl=False): conf.env[found] = True + if implied_deps: + conf.SET_SYSLIB_DEPS(libname, implied_deps) return True conf.env[found] = False if 'NONE' in conf.env.BUNDLED_LIBS or '!'+libname in conf.env.BUNDLED_LIBS: |