Skip to content

Commit

Permalink
Merge SCons improvements from Release-150 branch and make further cha…
Browse files Browse the repository at this point in the history
…nges

- Less verbose messages
- Properly test for CXX headers, don't derive them from compiler name/version
- Move configuration tasks back to right before build section now that
  we understand the underlying problem of issue #97. Undo commit 34b37ed.
- Get rid of annoying warning about unused -pthread arg on macOS
- Except for suppressing/enabling warnings, let SCons and ROOT handle
  the choice of compiler flags
- On macOS, use .dylib suffix for shared libraries
- Use .os suffix for dictionary objects, not .so
- Maintain SCons's SHLIBFLAGS. Append to them as needed
- Main program source is main.C, not main.o
- Don't run configuration tasks with --clean or --help command line options
  • Loading branch information
hansenjo committed Sep 28, 2017
1 parent 5d789a4 commit b31adde
Show file tree
Hide file tree
Showing 8 changed files with 364 additions and 379 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*.d
*.os
lib*.so*
lib*.dylib
lib*.dylib*
analyzer
hana_decode/epicsd
hana_decode/prfact
Expand Down
79 changes: 44 additions & 35 deletions SConscript.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,19 @@
######## ROOT Dictionaries #########

rootdecdict = baseenv.subst('$MAIN_DIR')+'/THaDecDict.C'
rootdecobj = baseenv.subst('$HA_DC')+'/THaDecDict.so'
rootdecobj = baseenv.subst('$HA_DC')+'/THaDecDict.os'
decheaders = Split("""
hana_decode/THaUsrstrutils.h hana_decode/THaCrateMap.h hana_decode/THaCodaData.h hana_decode/THaEpics.h
hana_decode/THaFastBusWord.h hana_decode/THaCodaFile.h hana_decode/THaSlotData.h hana_decode/THaEvData.h
hana_decode/THaUsrstrutils.h hana_decode/THaCrateMap.h
hana_decode/THaCodaData.h hana_decode/THaEpics.h
hana_decode/THaFastBusWord.h hana_decode/THaCodaFile.h
hana_decode/THaSlotData.h hana_decode/THaEvData.h
hana_decode/THaCodaDecoder.h hana_decode/SimDecoder.h
hana_decode/CodaDecoder.h hana_decode/Module.h hana_decode/VmeModule.h
hana_decode/FastbusModule.h hana_decode/Lecroy1877Module.h
hana_decode/Lecroy1881Module.h hana_decode/Lecroy1875Module.h
hana_decode/Fadc250Module.h hana_decode/GenScaler.h hana_decode/Scaler560.h
hana_decode/Scaler1151.h hana_decode/Scaler3800.h hana_decode/Scaler3801.h
hana_decode/Fadc250Module.h hana_decode/GenScaler.h
hana_decode/Scaler560.h hana_decode/Scaler1151.h
hana_decode/Scaler3800.h hana_decode/Scaler3801.h
hana_decode/F1TDCModule.h hana_decode/Caen1190Module.h
hana_decode/Caen775Module.h hana_decode/Caen792Module.h
hana_decode/THaBenchmark.h hana_decode/haDecode_LinkDef.h
Expand All @@ -31,36 +34,42 @@
baseenv.SharedObject(target = rootdecobj, source = rootdecdict)

roothadict = baseenv.subst('$MAIN_DIR')+'/haDict.C'
roothaobj = baseenv.subst('$HA_SRC')+'/haDict.so'
roothaobj = baseenv.subst('$HA_SRC')+'/haDict.os'
haheaders = Split("""
src/THaFormula.h src/THaVform.h src/THaVhist.h src/THaVar.h src/THaVarList.h
src/THaCut.h src/THaNamedList.h src/THaCutList.h src/THaInterface.h src/THaRunBase.h
src/THaCodaRun.h src/THaRun.h src/THaRunParameters.h src/THaDetMap.h src/THaApparatus.h
src/THaDetector.h src/THaSpectrometer.h src/THaSpectrometerDetector.h src/THaHRS.h
src/THaDecData.h src/BdataLoc.h src/THaOutput.h src/THaString.h src/THaTrackingDetector.h
src/THaNonTrackingDetector.h src/THaPidDetector.h src/THaSubDetector.h
src/THaAnalysisObject.h src/THaDetectorBase.h src/THaRTTI.h src/THaPhysicsModule.h
src/THaVertexModule.h src/THaTrackingModule.h src/THaAnalyzer.h src/THaPrintOption.h
src/THaBeam.h src/THaIdealBeam.h src/THaRasteredBeam.h src/THaRaster.h src/THaBeamDet.h
src/THaBPM.h src/THaUnRasteredBeam.h src/THaTrack.h src/THaPIDinfo.h
src/THaParticleInfo.h src/THaCluster.h src/THaArrayString.h src/THaScintillator.h
src/THaShower.h src/THaTotalShower.h src/THaCherenkov.h src/THaEvent.h
src/THaTrackID.h src/THaVDC.h src/THaVDCPlane.h
src/THaVDCWire.h src/THaVDCHit.h src/THaVDCCluster.h src/THaVDCTimeToDistConv.h
src/THaVDCTrackID.h src/THaVDCAnalyticTTDConv.h src/VDCeff.h
src/THaElectronKine.h src/THaReactionPoint.h
src/THaReacPointFoil.h src/THaTwoarmVertex.h src/THaAvgVertex.h src/THaExtTarCor.h
src/THaDebugModule.h src/THaTrackInfo.h src/THaGoldenTrack.h src/THaPrimaryKine.h
src/THaSecondaryKine.h src/THaCoincTime.h src/THaS2CoincTime.h src/THaTrackProj.h
src/THaPostProcess.h src/THaFilter.h src/THaElossCorrection.h src/THaTrackEloss.h
src/THaBeamModule.h src/THaBeamInfo.h src/THaEpicsEbeam.h src/THaBeamEloss.h
src/THaTrackOut.h src/THaTriggerTime.h src/THaHelicityDet.h src/THaG0HelicityReader.h
src/THaG0Helicity.h src/THaADCHelicity.h src/THaHelicity.h src/THaPhotoReaction.h
src/THaSAProtonEP.h src/THaTextvars.h src/THaQWEAKHelicity.h src/THaQWEAKHelicityReader.h
src/THaEvtTypeHandler.h src/THaScalerEvtHandler.h src/THaEpicsEvtHandler.h
src/THaEvt125Handler.h
src/THaVDCChamber.h src/THaVDCPoint.h src/THaVDCPointPair.h
src/THaGlobals.h src/HallA_LinkDef.h
src/THaFormula.h src/THaVform.h src/THaVhist.h src/THaVar.h
src/THaVarList.h src/THaCut.h src/THaNamedList.h src/THaCutList.h
src/THaInterface.h src/THaRunBase.h src/THaCodaRun.h src/THaRun.h
src/THaRunParameters.h src/THaDetMap.h src/THaApparatus.h
src/THaDetector.h src/THaSpectrometer.h src/THaSpectrometerDetector.h
src/THaHRS.h src/THaDecData.h src/BdataLoc.h src/THaOutput.h
src/THaString.h src/THaTrackingDetector.h src/THaNonTrackingDetector.h
src/THaPidDetector.h src/THaSubDetector.h src/THaAnalysisObject.h
src/THaDetectorBase.h src/THaRTTI.h src/THaPhysicsModule.h
src/THaVertexModule.h src/THaTrackingModule.h src/THaAnalyzer.h
src/THaPrintOption.h src/THaBeam.h src/THaIdealBeam.h
src/THaRasteredBeam.h src/THaRaster.h src/THaBeamDet.h src/THaBPM.h
src/THaUnRasteredBeam.h src/THaTrack.h src/THaPIDinfo.h
src/THaParticleInfo.h src/THaCluster.h src/THaArrayString.h
src/THaScintillator.h src/THaShower.h src/THaTotalShower.h
src/THaCherenkov.h src/THaEvent.h src/THaTrackID.h src/THaVDC.h
src/THaVDCPlane.h src/THaVDCWire.h src/THaVDCHit.h src/THaVDCCluster.h
src/THaVDCTimeToDistConv.h src/THaVDCTrackID.h
src/THaVDCAnalyticTTDConv.h src/VDCeff.h src/THaElectronKine.h
src/THaReactionPoint.h src/THaReacPointFoil.h src/THaTwoarmVertex.h
src/THaAvgVertex.h src/THaExtTarCor.h src/THaDebugModule.h
src/THaTrackInfo.h src/THaGoldenTrack.h src/THaPrimaryKine.h
src/THaSecondaryKine.h src/THaCoincTime.h src/THaS2CoincTime.h
src/THaTrackProj.h src/THaPostProcess.h src/THaFilter.h
src/THaElossCorrection.h src/THaTrackEloss.h src/THaBeamModule.h
src/THaBeamInfo.h src/THaEpicsEbeam.h src/THaBeamEloss.h
src/THaTrackOut.h src/THaTriggerTime.h src/THaHelicityDet.h
src/THaG0HelicityReader.h src/THaG0Helicity.h src/THaADCHelicity.h
src/THaHelicity.h src/THaPhotoReaction.h src/THaSAProtonEP.h
src/THaTextvars.h src/THaQWEAKHelicity.h src/THaQWEAKHelicityReader.h
src/THaEvtTypeHandler.h src/THaScalerEvtHandler.h
src/THaEpicsEvtHandler.h src/THaEvt125Handler.h src/THaVDCChamber.h
src/THaVDCPoint.h src/THaVDCPointPair.h src/THaGlobals.h
src/HallA_LinkDef.h
""")
baseenv.RootCint(roothadict,haheaders)
baseenv.SharedObject(target = roothaobj, source = roothadict)
Expand Down Expand Up @@ -118,7 +127,7 @@

####### Start of main SConscript ###########

analyzer = baseenv.Program(target = 'analyzer', source = 'src/main.o')
analyzer = baseenv.Program(target = 'analyzer', source = 'src/main.C')
baseenv.Install('./bin',analyzer)
baseenv.Alias('install',['./bin'])
baseenv.Clean(analyzer,compiledata)
Loading

0 comments on commit b31adde

Please sign in to comment.