support for user supplied sysconfdir

This commit is contained in:
Radim Kolar 2009-08-27 20:29:41 +02:00
parent e84e04c307
commit 377a3b939b
2 changed files with 26 additions and 2 deletions

View File

@ -55,6 +55,7 @@ from timeout import checkForClientTimeout
from relsignals import checkReliableSignals from relsignals import checkReliableSignals
from mandir import checkForUserMandir from mandir import checkForUserMandir
from mandir import autodetectMandir from mandir import autodetectMandir
from sysconfdir import checkForUserSysconfdir
conf = Configure(env,{'checkForCCOption':checkForCCOption, conf = Configure(env,{'checkForCCOption':checkForCCOption,
'MAINTAINER_MODE':checkForMaintainerMode, 'MAINTAINER_MODE':checkForMaintainerMode,
@ -67,7 +68,8 @@ conf = Configure(env,{'checkForCCOption':checkForCCOption,
'checkForClientTimeout':checkForClientTimeout, 'checkForClientTimeout':checkForClientTimeout,
'checkReliableSignals':checkReliableSignals, 'checkReliableSignals':checkReliableSignals,
'checkForUserMandir':checkForUserMandir, 'checkForUserMandir':checkForUserMandir,
'autodetectMandir':autodetectMandir 'autodetectMandir':autodetectMandir,
'checkForUserSysconfdir':checkForUserSysconfdir
}) })
# check for CC options # check for CC options
for option in Split(""" for option in Split("""
@ -128,7 +130,7 @@ if conf.checkReliableSignals():
conf.env.Append(CPPFLAGS = '-DRELIABLE_SIGNALS') conf.env.Append(CPPFLAGS = '-DRELIABLE_SIGNALS')
conf.checkForLockPrefix() conf.checkForLockPrefix()
PREFIX=conf.checkPrefix(PREFIX) PREFIX=conf.checkPrefix(PREFIX)
conf.env.Append(CPPFLAGS = '-DSYSCONFDIR=\\"'+PREFIX+'/etc\\"') conf.checkForUserSysconfdir(PREFIX)
MANDIR=conf.autodetectMandir(PREFIX) MANDIR=conf.autodetectMandir(PREFIX)
conf.checkForUserMandir(MANDIR) conf.checkForUserMandir(MANDIR)
EFENCE = conf.MAINTAINER_MODE() EFENCE = conf.MAINTAINER_MODE()

22
site_scons/sysconfdir.py Normal file
View File

@ -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