support for building without compiling and installing client commands.
SCons argument without-clients=yes
This commit is contained in:
parent
b671faae31
commit
445dc3f419
|
|
@ -9,6 +9,7 @@ EnsurePythonVersion(2,2)
|
||||||
PREFIX='/usr/local'
|
PREFIX='/usr/local'
|
||||||
VERSION='2.8.1b25'
|
VERSION='2.8.1b25'
|
||||||
EFENCE=False
|
EFENCE=False
|
||||||
|
CLIENTS=True
|
||||||
|
|
||||||
env = Environment(CPPPATH='#/include', LIBPATH=['/usr/lib','/usr/local/lib'])
|
env = Environment(CPPPATH='#/include', LIBPATH=['/usr/lib','/usr/local/lib'])
|
||||||
|
|
||||||
|
|
@ -56,6 +57,7 @@ from relsignals import checkReliableSignals
|
||||||
from mandir import checkForUserMandir
|
from mandir import checkForUserMandir
|
||||||
from docdir import checkForUserDocdir
|
from docdir import checkForUserDocdir
|
||||||
from mandir import autodetectMandir
|
from mandir import autodetectMandir
|
||||||
|
from clients import checkForBuildingClients
|
||||||
from sysconfdir import checkForUserSysconfdir
|
from sysconfdir import checkForUserSysconfdir
|
||||||
|
|
||||||
conf = Configure(env,{'checkForCCOption':checkForCCOption,
|
conf = Configure(env,{'checkForCCOption':checkForCCOption,
|
||||||
|
|
@ -71,7 +73,8 @@ conf = Configure(env,{'checkForCCOption':checkForCCOption,
|
||||||
'checkForUserMandir':checkForUserMandir,
|
'checkForUserMandir':checkForUserMandir,
|
||||||
'checkForUserDocdir':checkForUserDocdir,
|
'checkForUserDocdir':checkForUserDocdir,
|
||||||
'autodetectMandir':autodetectMandir,
|
'autodetectMandir':autodetectMandir,
|
||||||
'checkForUserSysconfdir':checkForUserSysconfdir
|
'checkForUserSysconfdir':checkForUserSysconfdir,
|
||||||
|
'checkForBuildingClients':checkForBuildingClients
|
||||||
})
|
})
|
||||||
# check for CC options
|
# check for CC options
|
||||||
for option in Split("""
|
for option in Split("""
|
||||||
|
|
@ -142,10 +145,11 @@ if EFENCE == True:
|
||||||
EFENCE=conf.CheckLib("efence","EF_Abort")
|
EFENCE=conf.CheckLib("efence","EF_Abort")
|
||||||
conf.checkForLamerPack()
|
conf.checkForLamerPack()
|
||||||
conf.checkForDebugBuild()
|
conf.checkForDebugBuild()
|
||||||
|
CLIENTS=conf.checkForBuildingClients()
|
||||||
conf.checkForClientTimeout()
|
conf.checkForClientTimeout()
|
||||||
conf.Finish()
|
conf.Finish()
|
||||||
|
|
||||||
env.Append(CPPFLAGS = "-DPACKAGE_VERSION=\\\""+VERSION+"\\\"")
|
env.Append(CPPFLAGS = "-DPACKAGE_VERSION=\\\""+VERSION+"\\\"")
|
||||||
# process build rules
|
# process build rules
|
||||||
Export( Split("env PREFIX MANDIR DOCDIR"))
|
Export( Split("env PREFIX MANDIR DOCDIR CLIENTS"))
|
||||||
env.SConscript(dirs=Split("doc . bsd_src common server client clients contrib tests man"))
|
env.SConscript(dirs=Split("doc . bsd_src common server client clients contrib tests man"))
|
||||||
|
|
|
||||||
|
|
@ -1,28 +1,29 @@
|
||||||
Import(Split("env PREFIX common bsdfsp client"))
|
Import(Split("env PREFIX common bsdfsp client CLIENTS"))
|
||||||
|
|
||||||
fcatcmd=env.Program(target = 'fcatcmd',source=['fcatcmd.c']+client+common)
|
if CLIENTS:
|
||||||
fcdcmd=env.Program(target = 'fcdcmd', source=['fcdcmd.c','printpro.c']+client+common)
|
fcatcmd=env.Program(target = 'fcatcmd',source=['fcatcmd.c']+client+common)
|
||||||
fducmd=env.Program(target = 'fducmd', source=['fducmd.c']+client+common)
|
fcdcmd=env.Program(target = 'fcdcmd', source=['fcdcmd.c','printpro.c']+client+common)
|
||||||
ffindcmd=env.Program(target = 'ffindcmd',source=['ffindcmd.c']+client+common+bsdfsp)
|
fducmd=env.Program(target = 'fducmd', source=['fducmd.c']+client+common)
|
||||||
fget=env.StaticObject('fgetcmd.c', CPPDEFINES='-DCOMMAND_GET')
|
ffindcmd=env.Program(target = 'ffindcmd',source=['ffindcmd.c']+client+common+bsdfsp)
|
||||||
fgetcmd=env.Program(target = 'fgetcmd',source=fget+client+common)
|
fget=env.StaticObject('fgetcmd.c', CPPDEFINES='-DCOMMAND_GET')
|
||||||
fgrabcmd=env.Program(target = 'fgrabcmd',source=['fgrabcmd.c']+client+common)
|
fgetcmd=env.Program(target = 'fgetcmd',source=fget+client+common)
|
||||||
fhostcmd=env.Program(target = 'fhostcmd',source=['fhostcmd.c','fhost.c','fspprof.l'])
|
fgrabcmd=env.Program(target = 'fgrabcmd',source=['fgrabcmd.c']+client+common)
|
||||||
flscmd=env.Program(target = 'flscmd',source=['flscmd.c']+client+common+bsdfsp)
|
fhostcmd=env.Program(target = 'fhostcmd',source=['fhostcmd.c','fhost.c','fspprof.l'])
|
||||||
fmkdircmd=env.Program(target = 'fmkdir',source=['fmkdir.c']+client+common)
|
flscmd=env.Program(target = 'flscmd',source=['flscmd.c']+client+common+bsdfsp)
|
||||||
fprocmd=env.Program(target = 'fprocmd',source=['fprocmd.c','printpro.c']+client+common)
|
fmkdircmd=env.Program(target = 'fmkdir',source=['fmkdir.c']+client+common)
|
||||||
fputcmd=env.Program(target = 'fput',source=['fput.c']+client+common)
|
fprocmd=env.Program(target = 'fprocmd',source=['fprocmd.c','printpro.c']+client+common)
|
||||||
frmcmd=env.Program(target = 'frmcmd',source=['frmcmd.c']+client+common)
|
fputcmd=env.Program(target = 'fput',source=['fput.c']+client+common)
|
||||||
frmdircmd=env.Program(target = 'frmdircmd',source=['frmdircmd.c']+client+common)
|
frmcmd=env.Program(target = 'frmcmd',source=['frmcmd.c']+client+common)
|
||||||
fvercmd=env.Program(target = 'fver',source=['fver.c']+client+common)
|
frmdircmd=env.Program(target = 'frmdircmd',source=['frmdircmd.c']+client+common)
|
||||||
fstatcmd=env.Program(target = 'fstatcmd',source=['fstatcmd.c']+client+common)
|
fvercmd=env.Program(target = 'fver',source=['fver.c']+client+common)
|
||||||
fmvcmd=env.Program(target = 'fmvcmd',source=['fmvcmd.c']+client+common)
|
fstatcmd=env.Program(target = 'fstatcmd',source=['fstatcmd.c']+client+common)
|
||||||
fbyecmd=env.Program(target = 'fbye',source=['fbye.c']+client+common)
|
fmvcmd=env.Program(target = 'fmvcmd',source=['fmvcmd.c']+client+common)
|
||||||
fsetupcmd=env.Program(target = 'fsetupcmd',source=['fsetupcmd.c','fspsites.l','fhost.c']+client+common)
|
fbyecmd=env.Program(target = 'fbye',source=['fbye.c']+client+common)
|
||||||
|
fsetupcmd=env.Program(target = 'fsetupcmd',source=['fsetupcmd.c','fspsites.l','fhost.c']+client+common)
|
||||||
|
|
||||||
PROGRAMS=[ fcatcmd, fcdcmd, fducmd, ffindcmd, fgetcmd, fgrabcmd, fhostcmd,
|
PROGRAMS=[ fcatcmd, fcdcmd, fducmd, ffindcmd, fgetcmd, fgrabcmd, fhostcmd,
|
||||||
flscmd, fmkdircmd, fprocmd, fputcmd, frmcmd, frmdircmd, fvercmd,
|
flscmd, fmkdircmd, fprocmd, fputcmd, frmcmd, frmdircmd, fvercmd,
|
||||||
fstatcmd, fmvcmd, fbyecmd, fsetupcmd ]
|
fstatcmd, fmvcmd, fbyecmd, fsetupcmd ]
|
||||||
|
|
||||||
for program in PROGRAMS:
|
for program in PROGRAMS:
|
||||||
env.Install(dir = PREFIX+'/bin', source = program)
|
env.Install(dir = PREFIX+'/bin', source = program)
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,24 @@
|
||||||
from os import symlink, unlink
|
from os import symlink, unlink
|
||||||
Import(Split("env PREFIX MANDIR"))
|
Import(Split("env PREFIX MANDIR CLIENTS"))
|
||||||
|
|
||||||
|
MAN1=Split("fspscan.1 fspd.1")
|
||||||
|
if CLIENTS:
|
||||||
|
MAN1.extend(Split("""
|
||||||
|
fgetcmd.1 fmkdir.1 frmcmd.1
|
||||||
|
fcdcmd.1
|
||||||
|
fgrabcmd.1 fmvcmd.1 frmdircmd.1
|
||||||
|
fducmd.1
|
||||||
|
fbye.1 fhostcmd.1 fprocmd.1 fsetupcmd.1 fstatcmd.1
|
||||||
|
ffindcmd.1 fput.1 fver.1
|
||||||
|
fcatcmd.1 flscmd.1
|
||||||
|
"""))
|
||||||
|
if CLIENTS:
|
||||||
|
MAN5=Split("fspsites.5 fsp_prof.5")
|
||||||
|
MAN7=Split("fsp_env.7")
|
||||||
|
else:
|
||||||
|
MAN5=[]
|
||||||
|
MAN7=[]
|
||||||
|
|
||||||
MAN1=Split("""
|
|
||||||
fgetcmd.1 fmkdir.1 frmcmd.1 fspd.1
|
|
||||||
fcdcmd.1 fspscan.1
|
|
||||||
fgrabcmd.1 fmvcmd.1 frmdircmd.1
|
|
||||||
fducmd.1
|
|
||||||
fbye.1 fhostcmd.1 fprocmd.1 fsetupcmd.1 fstatcmd.1
|
|
||||||
ffindcmd.1 fput.1 fver.1
|
|
||||||
fcatcmd.1 flscmd.1
|
|
||||||
""")
|
|
||||||
MAN5=Split("fspsites.5 fsp_prof.5")
|
|
||||||
MAN7=Split("fsp_env.7")
|
|
||||||
SYMLINKS=[ ('fcdcmd','fcd'), ('fducmd','fdu'), ('fcatcmd','fcat'),
|
SYMLINKS=[ ('fcdcmd','fcd'), ('fducmd','fdu'), ('fcatcmd','fcat'),
|
||||||
('fgetcmd','fget'), ('fgrabcmd','fgrab'), ('ffindcmd','ffind'),
|
('fgetcmd','fget'), ('fgrabcmd','fgrab'), ('ffindcmd','ffind'),
|
||||||
('fmvcmd','fmv'), ('fhostcmd','fhost'), ('flscmd','fls'),
|
('fmvcmd','fmv'), ('fhostcmd','fhost'), ('flscmd','fls'),
|
||||||
|
|
@ -32,7 +39,7 @@ for page in MAN7:
|
||||||
env.Install(dir=MANDIR+"/man7",source=page+'.gz')
|
env.Install(dir=MANDIR+"/man7",source=page+'.gz')
|
||||||
|
|
||||||
# install symlinks for man pages
|
# install symlinks for man pages
|
||||||
if 'install' in COMMAND_LINE_TARGETS:
|
if 'install' in COMMAND_LINE_TARGETS and CLIENTS:
|
||||||
for pair in SYMLINKS:
|
for pair in SYMLINKS:
|
||||||
env.Symlink(MANDIR+'/man1/'+pair[1]+'.1.gz',MANDIR+'/man1/'+pair[0]+'.1.gz')
|
env.Symlink(MANDIR+'/man1/'+pair[1]+'.1.gz',MANDIR+'/man1/'+pair[0]+'.1.gz')
|
||||||
|
|
||||||
|
|
|
||||||
23
site_scons/clients.py
Normal file
23
site_scons/clients.py
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
#
|
||||||
|
# SCons client commands build tester
|
||||||
|
#
|
||||||
|
# Version 1.0
|
||||||
|
# 03-Sep-2009
|
||||||
|
#
|
||||||
|
|
||||||
|
from SCons.Script import ARGUMENTS
|
||||||
|
|
||||||
|
def checkForBuildingClients(conf):
|
||||||
|
"""Check command line arguments if user requested to not build client commands."""
|
||||||
|
conf.Message("Checking if we are building client commands... ")
|
||||||
|
buildlamer=ARGUMENTS.get('without-clients', 0)
|
||||||
|
try:
|
||||||
|
buildlamer2=int(buildlamer)
|
||||||
|
except ValueError:
|
||||||
|
buildlamer2=None
|
||||||
|
if buildlamer2 == 1 or str(buildlamer).lower() == 'yes':
|
||||||
|
conf.Result(0)
|
||||||
|
return False
|
||||||
|
else:
|
||||||
|
conf.Result(1)
|
||||||
|
return True
|
||||||
Loading…
Reference in New Issue
Block a user