package snovis version v1r1 #////////////////////////////////////////////////// #/// Uses needed to build this package //////////// #////////////////////////////////////////////////// use OpenScientist v16r* cmt use snova v2r* set G4RADIOACTIVEDATA "${OSC_G4RADIOACTIVEDATA}" set G4LEVELGAMMADATA "${OSC_G4LEVELGAMMADATA}" set G4LEDATA "${OSC_G4LEDATA}" set NeutronHPCrossSections "${OSC_NeutronHPCrossSections}" #//////////////////////////////////////////////////////////// #//////////////////////////////////////////////////////////// #//////////////////////////////////////////////////////////// # Darwin : to build dlls properly : macro make_shlib "$(make_shlib)" Darwin "$(SNOVISROOT)/cmt/cmt_make_shlib_common.sh extract" #////////////////////////////////////////////////// #////////////////////////////////////////////////// #////////////////////////////////////////////////// branches run build_strategy no_prototypes include_path none include_dirs $(SNOVISROOT) # With Geant4 global libs : macro snovis_Geant4_incs "${OSC_Geant4_incs}" macro snovis_Geant4_linkopts "-L${OSC_Geant4_lib} -lG4physicslists -lG4readout -lG4run -lG4event -lG4tracking -lG4processes -lG4digits_hits -lG4track -lG4particles -lG4geometry -lG4graphics_reps -lG4materials -lG4intercoms -lG4global -lCLHEP" # Waiting Geant4 DLL on Windows... # Darwin : problem too with dylibs. macro snovis_libopts "" WIN32 " -no_share" Darwin " -no_share" #macro snovis_libopts "" WIN32 "" #////////////////////////////////////////////////// #/// DLD callbacks //////////////////////////////// #////////////////////////////////////////////////// # Must not use Geant4 singletons if having not Geant4 shared libs. macro snovis_kind "dll" library snovis ../source/*.cxx #macro snovis_cppflags "${snovis_Geant4_incs} ${OSC_OnX_incs}" macro snovis_cppflags "${OSC_G4Lab_incs} ${OSC_AIDA_incs} ${OSC_OnX_incs} ${OSC_Inventor_incs}" macro snovis_shlibflags "${OSC_Inventor_linkopts} ${OSC_OnX_linkopts}" #////////////////////////////////////////////////// #/// Applications ///////////////////////////////// #////////////////////////////////////////////////// application prog_snova ../applications/prog_snova2.cxx use_linkopts='"${snova_linkopts} ${snvertex_linkopts} ${sngeom_linkopts} ${geomutils_linkopts} ${bhep_linkopts} ${Geant4_linkopts} ${CLHEP_linkopts}"' #macro prog_snova_cppflags "${snova_cppflags}" # Over G4Lab : application snovis_session ../applications/snovis_session.cc use_linkopts='"${snova_linkopts} ${snvertex_linkopts} ${sngeom_linkopts} ${geomutils_linkopts} ${bhep_linkopts} ${OSC_G4Lab_linkopts} ${snovis_Geant4_linkopts} ${OSC_Inventor_linkopts} ${OSC_OnX_linkopts}"' macro snovis_session_cppflags "${snovis_Geant4_incs} ${snovis_batch_cppflags}" #////////////////////////////////////////////////// #////////////////////////////////////////////////// #////////////////////////////////////////////////// private macro build_library_links "true" WIN32 "" macro remove_library_links "true" WIN32 "" # 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" # OPTIMIZE : macro_append cflags " -O" WIN32 " /O2" macro_append cppflags " -O" WIN32 " /O2" macro_append cpplinkflags " -O" WIN32 "" public #////////////////////////////////////////////////// #// Run time ////////////////////////////////////// #////////////////////////////////////////////////// apply_pattern setup_paths