X-Git-Url: http://git.samba.org/?a=blobdiff_plain;f=wscript;h=efebfc402a6db96c482bc9ebcd5f2507550430b1;hb=dd72d85e928a9f52113235daaab1e71ea916aa0d;hp=0410c0bdf3d3e66e00519daf4787c06eaf578ce1;hpb=58e3c5323e343dcab1c528c6b6a44925b76cb297;p=obnox%2Fsamba%2Fsamba-obnox.git diff --git a/wscript b/wscript index 0410c0bdf3d..efebfc402a6 100644 --- a/wscript +++ b/wscript @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#!/usr/bin/env python srcdir = '.' blddir = 'bin' @@ -12,7 +12,7 @@ import wafsamba, Options, samba_dist, Scripting, Utils, samba_version samba_dist.DIST_DIRS('.') -samba_dist.DIST_BLACKLIST('.gitignore .bzrignore source4/selftest/provisions/alpha13') +samba_dist.DIST_BLACKLIST('.gitignore .bzrignore source4/selftest/provisions/alpha13 source4/selftest/provisions/release-4-0-0/') # install in /usr/local/samba by default Options.default_prefix = '/usr/local/samba' @@ -56,11 +56,14 @@ def set_options(opt): help='disable AD DC functionality (enables Samba 4 client and Samba 3 code base).', action='store_true', dest='without_ad_dc', default=False) - gr = opt.option_group('developer options') + opt.add_option('--with-pie', + help=("Build Position Independent Executables (default)"), + action="store_true", dest='enable_pie', default=True) + opt.add_option('--without-pie', + help=("Disable Position Independent Executable builds"), + action="store_false", dest='enable_pie') - opt.add_option('--disable-ntdb', - help=("disable ntdb"), - action="store_true", dest='disable_ntdb', default=False) + gr = opt.option_group('developer options') opt.tool_options('python') # options for disabling pyc or pyo compilation @@ -85,7 +88,7 @@ def configure(conf): conf.find_program('perl', var='PERL', mandatory=True) conf.find_program('xsltproc', var='XSLTPROC') - conf.SAMBA_CHECK_PYTHON(mandatory=True) + conf.SAMBA_CHECK_PYTHON(mandatory=True, version=(2,5,0)) conf.SAMBA_CHECK_PYTHON_HEADERS(mandatory=True) if sys.platform == 'darwin' and not conf.env['HAVE_ENVIRON_DECL']: @@ -120,11 +123,7 @@ def configure(conf): conf.RECURSE('source4/ntvfs/sysdep') conf.RECURSE('lib/util') conf.RECURSE('lib/ccan') - conf.env.disable_ntdb = getattr(Options.options, 'disable_ntdb', False) - if not Options.options.disable_ntdb: - conf.RECURSE('lib/ntdb') - else: - conf.DEFINE('DISABLE_NTDB', 1) + conf.RECURSE('lib/ntdb') conf.RECURSE('lib/zlib') conf.RECURSE('lib/util/charset') conf.RECURSE('source4/auth') @@ -148,7 +147,7 @@ def configure(conf): # allows us to find problems on our development hosts faster. # It also results in faster load time. - if sys.platform != "openbsd4": + if not sys.platform.startswith("openbsd"): conf.env.asneeded_ldflags = conf.ADD_LDFLAGS('-Wl,--as-needed', testflags=True) if not conf.CHECK_NEED_LC("-lc not needed"): @@ -168,6 +167,10 @@ def configure(conf): conf.SAMBA_CONFIG_H('include/config.h') + if Options.options.enable_pie == True: + conf.check_cc(cflags='-fPIE', ldflags='-pie', mandatory=True, + msg="Checking compiler for PIE support") + conf.env['ENABLE_PIE'] = True def etags(ctx): '''build TAGS file using etags''' @@ -237,13 +240,6 @@ def dist(): os.system(srcdir + "/release-scripts/build-manpages-nogit") samba_dist.DIST_FILES('bin/docs:docs', extend=True) - os.system(srcdir + "/source3/autogen.sh") - samba_dist.DIST_FILES('source3/configure', extend=True) - samba_dist.DIST_FILES('source3/autoconf', extend=True) - samba_dist.DIST_FILES('source3/include/autoconf', extend=True) - samba_dist.DIST_FILES('examples/VFS/configure', extend=True) - samba_dist.DIST_FILES('examples/VFS/module_config.h.in', extend=True) - if sambaversion.IS_SNAPSHOT: # write .distversion file and add to tar if not os.path.isdir(blddir):