THaRasteredBeam.cxx THaReacPointFoil.cxx THaReactionPoint.cxx THaRTTI.cxx THaRunBase.cxx THaRun.cxx THaRunParameters.cxx THaSAProtonEP.cxx THaScalerEvtHandler.cxx THaScintillator.cxx THaSecondaryKine.cxx THaShower.cxx THaSpectrometer.cxx THaSpectrometerDetector.cxx THaString.cxx THaSubDetector.cxx THaTextvars.cxx THaTotalShower.cxx THaTrack.cxx THaTrackEloss.cxx THaTrackID.cxx THaTrackInfo.cxx THaTrackingDetector.cxx THaTrackingModule.cxx THaTrackOut.cxx THaTrackProj.cxx THaTriggerTime.cxx THaTwoarmVertex.cxx THaUnRasteredBeam.cxx THaVar.cxx THaVarList.cxx THaVertexModule.cxx THaVform.cxx THaVhist.cxx VariableArrayVar.cxx Variable.cxx VectorObjMethodVar.cxx VectorObjVar.cxx VectorVar.cxx InterStageModule.cxx TimeCorrectionModule.cxx """ # Generate ha_compiledata.h header file compiledata = 'ha_compiledata.h' write_compiledata(baseenv, compiledata) extrahdrs = ['Helper.h', 'VarDef.h', 'VarType.h', compiledata] poddlib = build_library(baseenv, libname, src, extrahdrs, extradicthdrs=['THaGlobals.h'], useenv=False, versioned=True) Clean(poddlib, compiledata)
###### Hall A Software database library SConscript Build File ##### from podd_util import build_library Import('baseenv') libname = 'PoddDB' altname = 'Database' src = """ Database.cxx Textvars.cxx VarType.cxx """ dbenv = baseenv.Clone() dbenv.Replace(LIBS=[], RPATH=[]) # Database library dblib = build_library(dbenv, libname, src, extrahdrs=['VarDef.h'], dictname=altname, versioned=True)
FindEVIO(dcenv) local_evio = (dcenv['LOCAL_EVIO'] == 1) evioname = 'evio' eviolib = dcenv.subst('$SHLIBPREFIX')+evioname+dcenv.subst('$SHLIBSUFFIX') dcenv.Append(CPPPATH = dcenv.subst('$EVIO_INC')) dcenv.Replace(LIBS = evioname, LIBPATH = dcenv.subst('$EVIO_LIB'), RPATH = [dcenv.subst('$EVIO_LIB')]) if local_evio: dc_install_rpath = [] # analyzer already contains the installation libdir else: dc_install_rpath = dcenv['RPATH'] # Decoder library dclib = build_library(dcenv, libname, src, extrahdrs = ['Decoder.h'], extradicthdrs = ['THaBenchmark.h'], dictname = altname, install_rpath = dc_install_rpath, versioned = True ) proceed = "1" or "y" or "yes" or "Yes" or "Y" if dcenv.subst('$STANDALONE')==proceed or dcenv.GetOption('clean') \ or 'uninstall' in COMMAND_LINE_TARGETS: SConscript(dirs = ['apps'], name='SConscript.py', exports='dcenv') # Needed for locally built EVIO library # (Versioning in build_library sets SHLIBSUFFIX, so plain libevio.so is no longer found ... sigh) if local_evio: dcenv.Depends(dclib, os.path.join(dcenv.subst('$EVIO_LIB'), eviolib))
###### Hall A Software HallA library SConscript Build File ##### ###### Author: Edward Brash ([email protected]) June 2013 ###### Modified for Podd 1.7 directory layout: Ole Hansen ([email protected]) Sep 2018 from podd_util import build_library Import('baseenv') libname = 'HallA' # Sources and headers src = """ THaADCHelicity.cxx THaDecData.cxx THaG0Helicity.cxx THaG0HelicityReader.cxx THaHelicity.cxx THaHRS.cxx THaQWEAKHelicity.cxx THaQWEAKHelicityReader.cxx THaS2CoincTime.cxx THaVDCAnalyticTTDConv.cxx THaVDCChamber.cxx THaVDCCluster.cxx THaVDC.cxx THaVDCHit.cxx THaVDCPlane.cxx THaVDCPoint.cxx THaVDCPointPair.cxx THaVDCTimeToDistConv.cxx THaVDCTrackID.cxx THaVDCWire.cxx TrigBitLoc.cxx VDCeff.cxx """ build_library(baseenv, libname, src, useenv = False, versioned = True)
###### Hall A Old VDC library SConscript File ##### from podd_util import build_library Import('baseenv') libname = 'OldVDC' src = """ OldVDC.cxx OldVDCPlane.cxx OldVDCUVPlane.cxx OldVDCUVTrack.cxx OldVDCHit.cxx OldVDCCluster.cxx OldVDCWire.cxx OldVDCTrackID.cxx OldVDCTrackPair.cxx OldVDCTimeToDistConv.cxx OldVDCAnalyticTTDConv.cxx """ build_library(baseenv, libname, src)
###### Hall A Software HallA library SConscript Build File ##### ###### Author: Edward Brash ([email protected]) June 2013 ###### Modified for Podd 1.7 directory layout: Ole Hansen ([email protected]) Sep 2018 from podd_util import build_library Import('baseenv') libname = 'HallA' # Sources and headers src = """ FADCData.cxx FadcBPM.cxx FadcCherenkov.cxx FadcRaster.cxx FadcRasteredBeam.cxx FadcUnRasteredBeam.cxx FadcScintillator.cxx FadcShower.cxx THaADCHelicity.cxx THaDecData.cxx THaG0Helicity.cxx THaG0HelicityReader.cxx THaHelicity.cxx THaHRS.cxx THaQWEAKHelicity.cxx THaQWEAKHelicityReader.cxx THaS2CoincTime.cxx THaVDCAnalyticTTDConv.cxx THaVDCChamber.cxx THaVDCCluster.cxx THaVDC.cxx THaVDCHit.cxx THaVDCPlane.cxx THaVDCPoint.cxx THaVDCPointPair.cxx THaVDCTimeToDistConv.cxx THaVDCTrackID.cxx THaVDCWire.cxx TrigBitLoc.cxx VDCeff.cxx TwoarmVDCTimeCorrection.cxx """ build_library(baseenv, libname, src, useenv=False, versioned=True)
dcenv.Append(CPPPATH=dcenv.subst('$EVIO_INC')) dcenv.Replace(LIBS=[evioname, 'PoddDB'], LIBPATH=[dcenv.subst('$EVIO_LIB'), dcenv.subst('$HA_DB')], RPATH=[dcenv.subst('$EVIO_LIB'), dcenv.subst('$HA_DB')]) if local_evio: dc_install_rpath = [] # analyzer already contains the installation libdir else: dc_install_rpath = dcenv['RPATH'] # Decoder library dclib = build_library(dcenv, libname, src, extrahdrs=['Decoder.h', 'CustomAlloc.h'], extradicthdrs=['THaBenchmark.h'], dictname=altname, install_rpath=dc_install_rpath, versioned=True) proceed = "1" or "y" or "yes" or "Yes" or "Y" if dcenv.subst('$STANDALONE') == proceed or dcenv.GetOption('clean') \ or 'uninstall' in COMMAND_LINE_TARGETS: SConscript(dirs=['apps'], name='SConscript.py', exports='dcenv') # Needed for locally built EVIO library # (Versioning in build_library sets SHLIBSUFFIX, so plain libevio.so is no longer found ... sigh) if local_evio: dcenv.Depends(dclib, os.path.join(dcenv.subst('$EVIO_LIB'), eviolib))
THaHelicityDet.cxx THaIdealBeam.cxx THaInterface.cxx THaNamedList.cxx THaNonTrackingDetector.cxx THaOutput.cxx THaParticleInfo.cxx THaPhotoReaction.cxx THaPhysicsModule.cxx THaPidDetector.cxx THaPIDinfo.cxx THaPostProcess.cxx THaPrimaryKine.cxx THaPrintOption.cxx THaRaster.cxx THaRasteredBeam.cxx THaReacPointFoil.cxx THaReactionPoint.cxx THaRTTI.cxx THaRunBase.cxx THaRun.cxx THaRunParameters.cxx THaSAProtonEP.cxx THaScalerEvtHandler.cxx THaScintillator.cxx THaSecondaryKine.cxx THaShower.cxx THaSpectrometer.cxx THaSpectrometerDetector.cxx THaString.cxx THaSubDetector.cxx THaTextvars.cxx THaTotalShower.cxx THaTrack.cxx THaTrackEloss.cxx THaTrackID.cxx THaTrackInfo.cxx THaTrackingDetector.cxx THaTrackingModule.cxx THaTrackOut.cxx THaTrackProj.cxx THaTriggerTime.cxx THaTwoarmVertex.cxx THaUnRasteredBeam.cxx THaVar.cxx THaVarList.cxx THaVertexModule.cxx THaVform.cxx THaVhist.cxx VariableArrayVar.cxx Variable.cxx VectorObjMethodVar.cxx VectorObjVar.cxx VectorVar.cxx """ # Generate ha_compiledata.h header file compiledata = 'ha_compiledata.h' write_compiledata(baseenv,compiledata) extrahdrs = ['Helper.h','VarDef.h','VarType.h',compiledata] poddlib = build_library(baseenv, libname, src, extrahdrs, extradicthdrs = ['THaGlobals.h'], useenv = False, versioned = True) Clean(poddlib, compiledata)
###### Hall A SDK Main SConscript File ##### ### Modify 'libname' and the list of source files 'src' as needed from podd_util import build_library Import ('baseenv') # Library name (lib<libname>.so will be built) libname = 'SBS' # Sources (each must have a corresponding .h header file) # This must be a space-separated string, not a Python list src = """ FbusDetector.cxx FbusApparatus.cxx HcalDetector.cxx HcalApparatus.cxx CdetDetector.cxx CdetApparatus.cxx """ # Tell SCons to build this library from these sources. # A ROOT dictionary, defined in <libname>_LinkDef.h, will be built as well. # For more info, see the documention in $ANALYZER/site_scons/podd_util.py build_library(baseenv, libname, src)