[109] | 1 | package snovis |
---|
| 2 | version v1r1 |
---|
[103] | 3 | |
---|
| 4 | #////////////////////////////////////////////////// |
---|
| 5 | #/// Uses needed to build this package //////////// |
---|
| 6 | #////////////////////////////////////////////////// |
---|
| 7 | |
---|
[177] | 8 | use OpenScientist v1r16p0 Interfaces |
---|
[103] | 9 | |
---|
[109] | 10 | use snova v2r* |
---|
[103] | 11 | |
---|
| 12 | #//////////////////////////////////////////////////////////// |
---|
| 13 | #//////////////////////////////////////////////////////////// |
---|
[109] | 14 | #//////////////////////////////////////////////////////////// |
---|
[103] | 15 | |
---|
| 16 | # Darwin : to build dlls properly : |
---|
[109] | 17 | macro make_shlib "$(make_shlib)" Darwin "$(SNOVISROOT)/cmt/cmt_make_shlib_common.sh extract" |
---|
[103] | 18 | |
---|
| 19 | #////////////////////////////////////////////////// |
---|
| 20 | #////////////////////////////////////////////////// |
---|
| 21 | #////////////////////////////////////////////////// |
---|
| 22 | |
---|
| 23 | build_strategy no_prototypes |
---|
| 24 | include_path none |
---|
| 25 | |
---|
[109] | 26 | include_dirs $(SNOVISROOT) |
---|
[103] | 27 | |
---|
| 28 | #////////////////////////////////////////////////// |
---|
[227] | 29 | #/// G4Lab //////////////////////////////////////// |
---|
| 30 | #////////////////////////////////////////////////// |
---|
| 31 | |
---|
| 32 | # Over Geant4, HEPVis and Inventor : |
---|
| 33 | library G4LabCore -s=../source/G4Lab/cxx \ |
---|
| 34 | Transform3D.cxx \ |
---|
| 35 | Polyhedron.cxx \ |
---|
| 36 | GeometryVisitor.cxx \ |
---|
| 37 | Tree.cxx \ |
---|
| 38 | Trajectory.cxx \ |
---|
| 39 | State.cxx \ |
---|
| 40 | SteppingAction.cxx \ |
---|
| 41 | TrackingAction.cxx \ |
---|
| 42 | SoG4RunManager.cxx \ |
---|
| 43 | SoVisitedVolume.cxx \ |
---|
| 44 | SoG4Trajectories.cxx \ |
---|
| 45 | PhysicalVolumeAccessor.cxx \ |
---|
| 46 | TrajectoryContainerAccessor.cxx \ |
---|
| 47 | TrajectoryAccessor.cxx \ |
---|
| 48 | PhysicsTableAccessor.cxx \ |
---|
| 49 | HitsCollectionAccessor.cxx \ |
---|
| 50 | DigitsCollectionAccessor.cxx \ |
---|
| 51 | Manager.cxx |
---|
| 52 | macro G4LabCore_cppflags "-I../source ${OSC_AIDA_incs} ${OSC_OnX_incs} ${OSC_Inventor_incs}" |
---|
| 53 | macro G4LabCore_linkopts "-L${SNOVISROOT}/$(CMTCONFIG) -lG4LabCore" WIN32 "${SNOVISROOT}\$(CMTCONFIG)\G4LabCore.lib" |
---|
| 54 | |
---|
| 55 | # G4LabUIOnX : |
---|
| 56 | # A Geant4 G4UISession for OnX. |
---|
| 57 | # It needs OnX. Avoid establishing a relationship with G4interfaces |
---|
| 58 | # that may be reconstructed with various GUI drivers. |
---|
| 59 | library G4LabUIOnX ../source/G4Lab/cxx/UIOnX.cxx |
---|
| 60 | macro G4LabUIOnX_cppflags "-I../source ${OSC_OnX_incs} ${Geant4_include}" |
---|
| 61 | macro G4LabUIOnX_linkopts "-L${SNOVISROOT}/$(CMTCONFIG) -lG4LabUIOnX" WIN32 "${SNOVISROOT}\$(CMTCONFIG)\G4LabUIOnX.lib" |
---|
| 62 | |
---|
| 63 | # DLD callbacks : |
---|
| 64 | # Over Lib only : |
---|
| 65 | macro G4Lab_kind "dll" |
---|
| 66 | library G4Lab ../source/G4Lab/cxx/Callbacks.cxx |
---|
| 67 | macro lib_G4Lab_cppflags "-I../source ${OSC_AIDA_incs} ${OSC_OnX_incs} ${OSC_Inventor_incs}" |
---|
| 68 | macro G4Lab_shlibflags "${OSC_Inventor_linkopts} ${OSC_OnX_linkopts}" |
---|
| 69 | |
---|
| 70 | #////////////////////////////////////////////////// |
---|
[103] | 71 | #/// DLD callbacks //////////////////////////////// |
---|
| 72 | #////////////////////////////////////////////////// |
---|
| 73 | |
---|
| 74 | # Must not use Geant4 singletons if having not Geant4 shared libs. |
---|
[109] | 75 | macro snovis_kind "dll" |
---|
| 76 | library snovis ../source/*.cxx |
---|
[228] | 77 | macro snovis_cppflags "-I../source ${OSC_AIDA_incs} ${OSC_OnX_incs} ${OSC_Inventor_incs}" |
---|
[109] | 78 | macro snovis_shlibflags "${OSC_Inventor_linkopts} ${OSC_OnX_linkopts}" |
---|
[103] | 79 | |
---|
| 80 | #////////////////////////////////////////////////// |
---|
[109] | 81 | #/// Applications ///////////////////////////////// |
---|
[103] | 82 | #////////////////////////////////////////////////// |
---|
| 83 | |
---|
[230] | 84 | # debug : |
---|
| 85 | #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}"' |
---|
[103] | 86 | |
---|
| 87 | # Over G4Lab : |
---|
[230] | 88 | 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}"' |
---|
| 89 | macro prog_snovislinkopts "" Darwin "-bind_at_load" |
---|
[103] | 90 | |
---|
| 91 | #////////////////////////////////////////////////// |
---|
| 92 | #////////////////////////////////////////////////// |
---|
| 93 | #////////////////////////////////////////////////// |
---|
| 94 | |
---|
| 95 | private |
---|
| 96 | macro build_library_links "true" WIN32 "" |
---|
| 97 | macro remove_library_links "true" WIN32 "" |
---|
| 98 | |
---|
| 99 | # WIN32 : /GR to enable RTTI and dynamic cast. |
---|
| 100 | # WIN32 : /GX to enable exception handling (for STL). |
---|
| 101 | macro_append cppflags "" WIN32 " /GX /GR" |
---|
| 102 | |
---|
| 103 | # DEBUG : |
---|
| 104 | #macro_append cflags " -g" WIN32 " /ZI /Od" |
---|
| 105 | #macro_append cppflags " -g" WIN32 " /ZI /Od" |
---|
| 106 | #macro_append cpplinkflags " -g" WIN32 " /DEBUG" |
---|
| 107 | |
---|
| 108 | # OPTIMIZE : |
---|
| 109 | macro_append cflags " -O" WIN32 " /O2" |
---|
| 110 | macro_append cppflags " -O" WIN32 " /O2" |
---|
| 111 | macro_append cpplinkflags " -O" WIN32 "" |
---|
| 112 | public |
---|
| 113 | |
---|
| 114 | #////////////////////////////////////////////////// |
---|
| 115 | #// Run time ////////////////////////////////////// |
---|
| 116 | #////////////////////////////////////////////////// |
---|
| 117 | |
---|
[231] | 118 | set G4LABROOT "$(SNOVISROOT)/Resources/G4Lab" WIN32 "" |
---|
| 119 | |
---|
[109] | 120 | apply_pattern setup_paths |
---|
[103] | 121 | |
---|