import os, shutil, re
import Build, Configure, Utils
from Configure import conf
+import config_c
from samba_utils import *
if not conf.CONFIG_SET('XSLTPROC_MANPAGES'):
print "A local copy of the docbook.xsl wasn't found on your system" \
" consider installing package like docbook-xsl"
+
+
+waf_config_c_parse_flags = config_c.parse_flags;
+def samba_config_c_parse_flags(line, uselib, env):
+ waf_config_c_parse_flags(line, uselib, env)
+
+ try:
+ linkflags = env['LINKFLAGS_' + uselib]
+ except KeyError:
+ linkflags = []
+ for x in linkflags:
+ #
+ # NOTE on special treatment of -Wl,-R and -Wl,-rpath:
+ #
+ # It is important to not put a library provided RPATH
+ # into the LINKFLAGS but in the RPATH instead, since
+ # the provided LINKFLAGS get prepended to our own internal
+ # RPATH later, and hence can potentially lead to linking
+ # in too old versions of our internal libs.
+ #
+ if x.startswith('-Wl,-R,'):
+ rpath = x[7:]
+ elif x.startswith('-Wl,-R'):
+ rpath = x[6:]
+ elif x.startswith('-Wl,-rpath,'):
+ rpath = x[11:]
+ else:
+ continue
+
+ env.append_value('RPATH_' + uselib, rpath)
+ linkflags.remove(x)
+
+ return
+config_c.parse_flags = samba_config_c_parse_flags