package snovis version v1r1 #////////////////////////////////////////////////// #/// Uses needed to build this package //////////// #////////////////////////////////////////////////// use OpenScientist v1r16p0 Interfaces use snova v2r* #//////////////////////////////////////////////////////////// #//////////////////////////////////////////////////////////// #//////////////////////////////////////////////////////////// # Darwin : to build dlls properly : macro make_shlib "$(make_shlib)" Darwin "$(SNOVISROOT)/cmt/cmt_make_shlib_common.sh extract" #////////////////////////////////////////////////// #////////////////////////////////////////////////// #////////////////////////////////////////////////// build_strategy no_prototypes include_path none include_dirs $(SNOVISROOT) #////////////////////////////////////////////////// #/// G4Lab //////////////////////////////////////// #////////////////////////////////////////////////// # Over Geant4, HEPVis and Inventor : library G4LabCore -s=../source/G4Lab/cxx \ Transform3D.cxx \ Polyhedron.cxx \ GeometryVisitor.cxx \ Tree.cxx \ Trajectory.cxx \ State.cxx \ SteppingAction.cxx \ TrackingAction.cxx \ SoG4RunManager.cxx \ SoVisitedVolume.cxx \ SoG4Trajectories.cxx \ PhysicalVolumeAccessor.cxx \ TrajectoryContainerAccessor.cxx \ TrajectoryAccessor.cxx \ PhysicsTableAccessor.cxx \ HitsCollectionAccessor.cxx \ DigitsCollectionAccessor.cxx \ Manager.cxx macro G4LabCore_cppflags "-I../source ${OSC_AIDA_incs} ${OSC_OnX_incs} ${OSC_Inventor_incs}" macro G4LabCore_linkopts "-L${SNOVISROOT}/$(CMTCONFIG) -lG4LabCore" WIN32 "${SNOVISROOT}\$(CMTCONFIG)\G4LabCore.lib" # G4LabUIOnX : # A Geant4 G4UISession for OnX. # It needs OnX. Avoid establishing a relationship with G4interfaces # that may be reconstructed with various GUI drivers. library G4LabUIOnX ../source/G4Lab/cxx/UIOnX.cxx macro G4LabUIOnX_cppflags "-I../source ${OSC_OnX_incs} ${Geant4_include}" macro G4LabUIOnX_linkopts "-L${SNOVISROOT}/$(CMTCONFIG) -lG4LabUIOnX" WIN32 "${SNOVISROOT}\$(CMTCONFIG)\G4LabUIOnX.lib" # DLD callbacks : # Over Lib only : macro G4Lab_kind "dll" library G4Lab ../source/G4Lab/cxx/Callbacks.cxx macro lib_G4Lab_cppflags "-I../source ${OSC_AIDA_incs} ${OSC_OnX_incs} ${OSC_Inventor_incs}" macro G4Lab_shlibflags "${OSC_Inventor_linkopts} ${OSC_OnX_linkopts}" #////////////////////////////////////////////////// #/// DLD callbacks //////////////////////////////// #////////////////////////////////////////////////// # Must not use Geant4 singletons if having not Geant4 shared libs. macro snovis_kind "dll" library snovis ../source/*.cxx macro snovis_cppflags "-I../source ${OSC_AIDA_incs} ${OSC_OnX_incs} ${OSC_Inventor_incs}" macro snovis_shlibflags "${OSC_Inventor_linkopts} ${OSC_OnX_linkopts}" #////////////////////////////////////////////////// #/// Applications ///////////////////////////////// #////////////////////////////////////////////////// # debug : #application prog_snova ../applications/prog_snova2.cxx use_linkopts='"${snova_ui_linkopts} ${snova_linkopts} ${Geant4_interfaces_linkopts} ${Geant4_vis_management_linkopts} ${Geant4_modeling_linkopts} ${Geant4_Tree_linkopts} ${Geant4_linkopts} ${snvertex_linkopts} ${sngeom_linkopts} ${geomutils_linkopts} ${bhep_linkopts} ${CLHEP_linkopts}"' # Over G4Lab : application prog_snovis ../applications/snovis_session.cc use_linkopts='"${snova_linkopts} ${snvertex_linkopts} ${sngeom_linkopts} ${geomutils_linkopts} ${bhep_linkopts} ${G4LabUIOnX_linkopts} ${G4LabCore_linkopts} ${Geant4_linkopts} ${CLHEP_linkopts} ${OSC_Inventor_linkopts} ${OSC_OnX_linkopts}"' macro prog_snovislinkopts "" Darwin "-bind_at_load" #////////////////////////////////////////////////// #////////////////////////////////////////////////// #////////////////////////////////////////////////// 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 ////////////////////////////////////// #////////////////////////////////////////////////// set G4LABROOT "$(SNOVISROOT)/Resources/G4Lab" WIN32 "" apply_pattern setup_paths