package snova version v0r1p02 #////////////////////////////////////////////////// # # This file assumes the following # directory structure : # snova//cmt # snova//source/GeomUtils/... # snova//source/SNgeom2/... # snova//source/snova/... # and a : # snova//snova # with all .h having been copied from the source/snova # directory with something like : # find ../source/snova -name "*.h" -exec cp {} ../snova/. {}; # #////////////////////////////////////////////////// #////////////////////////////////////////////////// use bhep v1r* use Geant4 v2r* Interfaces #////////////////////////////////////////////////// build_strategy no_prototypes include_path none include_dirs $(SNOVAROOT)/source/GeomUtils/include $(SNOVAROOT)/source/SNgeom2/include #////////////////////////////////////////////////// # No dependency over other libs. #library geomutils -import=bhep -import=CLHEP -import=HDF5 ../source/GeomUtils/src/*.cc library geomutils ../source/GeomUtils/src/*.cc macro geomutils_cppflags "" macro geomutils_shlibflags "${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}" macro geomutils_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lgeomutils" #-import=bhep -import=CLHEP -import=HDF5 library sngeom ../source/SNgeom2/src/*.cc macro sngeom_cppflags "" macro sngeom_shlibflags "${geomutils_linkopts} ${bhep_linkopts} ${dld_linkopts} ${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}" macro sngeom_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lsngeom" #-import=bhep -import=CLHEP -import=HDF5 library snova \ -s=../source \ snova/base/*.cc \ snova/geom/*.cc \ snova/physics/*.cc \ snova/vertex/*.cc macro snova_cppflags "-I$(SNOVAROOT) -I$(Geant4_include)" macro snova_shlibflags "${dld_linkopts} ${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}" macro snova_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lsnova" application prog_snova ../source/snova/prog_snova.cc use_linkopts='"${snova_linkopts} ${Geant4_interfaces_linkopts} ${Geant4_linkopts} ${sngeom_linkopts} ${geomutils_linkopts} ${bhep_linkopts} ${CLHEP_linkopts}"' #////////////////////////////////////////////////// #/// compile, link flags ////////////////////////// #////////////////////////////////////////////////// private # WIN32 : /GR to enable RTTI and dynamic cast. # WIN32 : /GX to enable exception handling (for STL). macro_append cppflags "" WIN32 " /GX /GR" # DEBUG : #macro_append cflags " -g" WIN32 " /ZI /Od" #macro_append cppflags " -g" WIN32 " /ZI /Od" #macro_append cpplinkflags " -g" WIN32 " /DEBUG /VERBOSE:LIB" # OPTIMIZE : macro_append cflags " -O" WIN32 " /O2" macro_append cppflags " -O" WIN32 " /O2" macro_append cpplinkflags " -O" WIN32 "" macro build_library_links "true" WIN32 "" macro remove_library_links "true" WIN32 "" public #////////////////////////////////////////////////// #/// Run time ///////////////////////////////////// #////////////////////////////////////////////////// apply_pattern setup_paths