diff --git a/SConstruct b/SConstruct index b226f31..3d2c1b4 100644 --- a/SConstruct +++ b/SConstruct @@ -55,6 +55,7 @@ from timeout import checkForClientTimeout from relsignals import checkReliableSignals from mandir import checkForUserMandir from mandir import autodetectMandir +from sysconfdir import checkForUserSysconfdir conf = Configure(env,{'checkForCCOption':checkForCCOption, 'MAINTAINER_MODE':checkForMaintainerMode, @@ -67,7 +68,8 @@ conf = Configure(env,{'checkForCCOption':checkForCCOption, 'checkForClientTimeout':checkForClientTimeout, 'checkReliableSignals':checkReliableSignals, 'checkForUserMandir':checkForUserMandir, - 'autodetectMandir':autodetectMandir + 'autodetectMandir':autodetectMandir, + 'checkForUserSysconfdir':checkForUserSysconfdir }) # check for CC options for option in Split(""" @@ -128,7 +130,7 @@ if conf.checkReliableSignals(): conf.env.Append(CPPFLAGS = '-DRELIABLE_SIGNALS') conf.checkForLockPrefix() PREFIX=conf.checkPrefix(PREFIX) -conf.env.Append(CPPFLAGS = '-DSYSCONFDIR=\\"'+PREFIX+'/etc\\"') +conf.checkForUserSysconfdir(PREFIX) MANDIR=conf.autodetectMandir(PREFIX) conf.checkForUserMandir(MANDIR) EFENCE = conf.MAINTAINER_MODE() diff --git a/site_scons/sysconfdir.py b/site_scons/sysconfdir.py new file mode 100644 index 0000000..3270e07 --- /dev/null +++ b/site_scons/sysconfdir.py @@ -0,0 +1,22 @@ +# +# SCons user-supplied sysconfdir configuration +# +# Version 1.0 +# 27-Aug-2009 +# + +from SCons.Script import ARGUMENTS + +def checkForUserSysconfdir(conf,prefix): + """Returns sysconfdir specified on command line or prefix/etc if none is supplied.""" + conf.Message("Checking for user supplied sysconfdir... ") + lp = ARGUMENTS.get('sysconfdir', 0) + + if lp: + conf.Result(1) + else: + conf.Result(0) + lp=prefix+'/etc' + + conf.env.Append(CPPFLAGS = '-DSYSCONFDIR=\\"'+lp+'\\"') + return lp