| [26] | 1 | package snova | 
|---|
|  | 2 | version v0r1p02 | 
|---|
|  | 3 |  | 
|---|
|  | 4 | #////////////////////////////////////////////////// | 
|---|
|  | 5 | # | 
|---|
|  | 6 | #  This file assumes the following | 
|---|
|  | 7 | # directory structure : | 
|---|
|  | 8 | #    snova/<version>/cmt | 
|---|
|  | 9 | #    snova/<version>/source/GeomUtils/... | 
|---|
|  | 10 | #    snova/<version>/source/SNgeom2/... | 
|---|
|  | 11 | #    snova/<version>/source/snova/... | 
|---|
|  | 12 | # and a : | 
|---|
|  | 13 | #    snova/<version>/snova | 
|---|
| [48] | 14 | # containing a copy of the .h from the source/snova | 
|---|
|  | 15 | # directory. The creation of the | 
|---|
|  | 16 | # snova include directory can be done with | 
|---|
|  | 17 | # the cpincs.sh script. | 
|---|
| [26] | 18 | # | 
|---|
|  | 19 | #////////////////////////////////////////////////// | 
|---|
|  | 20 |  | 
|---|
|  | 21 | #////////////////////////////////////////////////// | 
|---|
|  | 22 | use bhep v1r* | 
|---|
| [69] | 23 | use Geant4 v2r* cmt | 
|---|
| [26] | 24 | #////////////////////////////////////////////////// | 
|---|
|  | 25 |  | 
|---|
|  | 26 | build_strategy no_prototypes | 
|---|
|  | 27 | include_path none | 
|---|
|  | 28 |  | 
|---|
| [69] | 29 | include_dirs $(SNOVAROOT)/source/GeomUtils/include $(SNOVAROOT)/source/SNgeom2/include $(SNOVAROOT)/source/SNvertex/include | 
|---|
| [26] | 30 |  | 
|---|
|  | 31 | #////////////////////////////////////////////////// | 
|---|
|  | 32 |  | 
|---|
|  | 33 | library geomutils ../source/GeomUtils/src/*.cc | 
|---|
|  | 34 | macro geomutils_shlibflags "${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}" | 
|---|
|  | 35 | macro geomutils_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lgeomutils" | 
|---|
|  | 36 |  | 
|---|
|  | 37 | library sngeom ../source/SNgeom2/src/*.cc | 
|---|
| [69] | 38 | macro sngeom_shlibflags "${geomutils_linkopts} ${bhep_linkopts} ${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}" | 
|---|
| [26] | 39 | macro sngeom_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lsngeom" | 
|---|
|  | 40 |  | 
|---|
| [69] | 41 | library snvertex ../source/SNvertex/src/*.cc | 
|---|
|  | 42 | #macro sngeom_shlibflags "${geomutils_linkopts} ${bhep_linkopts} ${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}" | 
|---|
|  | 43 | macro snvertex_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lsnvertex" | 
|---|
|  | 44 |  | 
|---|
| [53] | 45 | library snova -s=../source/snova \ | 
|---|
| [79] | 46 | # Do not have the below *.cc because of old_gen.cc, OpenGLXVisManager.cc | 
|---|
|  | 47 | #   base/*.cc \ | 
|---|
|  | 48 | base/event.cc \ | 
|---|
|  | 49 | base/generator.cc \ | 
|---|
|  | 50 | base/run.cc \ | 
|---|
|  | 51 | base/snova_const.cc \ | 
|---|
|  | 52 | base/snova_mgr.cc \ | 
|---|
|  | 53 | base/stacking.cc \ | 
|---|
|  | 54 | base/stepping.cc \ | 
|---|
|  | 55 | base/stepping_verbose.cc \ | 
|---|
|  | 56 | base/tracking.cc \ | 
|---|
|  | 57 | # | 
|---|
| [53] | 58 | geom/*.cc \ | 
|---|
|  | 59 | physics/*.cc \ | 
|---|
|  | 60 | vertex/*.cc | 
|---|
|  | 61 | macro snova_cppflags "-I.. -I$(Geant4_include)" | 
|---|
| [69] | 62 | macro snova_shlibflags "${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}" | 
|---|
| [26] | 63 | macro snova_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lsnova" | 
|---|
|  | 64 |  | 
|---|
| [78] | 65 | application prog_snova ../source/snova/prog_snova2.cxx use_linkopts='"${snova_linkopts} ${Geant4_interfaces_linkopts} ${Geant4_linkopts} ${snvertex_linkopts} ${sngeom_linkopts} ${geomutils_linkopts} ${bhep_linkopts} ${CLHEP_linkopts}"' | 
|---|
| [26] | 66 |  | 
|---|
|  | 67 | #////////////////////////////////////////////////// | 
|---|
|  | 68 | #/// compile, link flags ////////////////////////// | 
|---|
|  | 69 | #////////////////////////////////////////////////// | 
|---|
|  | 70 | private | 
|---|
|  | 71 | # WIN32 : /GR to enable RTTI and dynamic cast. | 
|---|
|  | 72 | # WIN32 : /GX to enable exception handling (for STL). | 
|---|
|  | 73 | macro_append cppflags  "" WIN32 " /GX /GR" | 
|---|
|  | 74 |  | 
|---|
|  | 75 | # DEBUG : | 
|---|
|  | 76 | #macro_append cflags  " -g" WIN32 " /ZI /Od" | 
|---|
|  | 77 | #macro_append cppflags  " -g" WIN32 " /ZI /Od" | 
|---|
|  | 78 | #macro_append cpplinkflags  " -g" WIN32 " /DEBUG /VERBOSE:LIB" | 
|---|
|  | 79 |  | 
|---|
|  | 80 | # OPTIMIZE : | 
|---|
|  | 81 | macro_append cflags  " -O" WIN32 " /O2" | 
|---|
|  | 82 | macro_append cppflags  " -O" WIN32 " /O2" | 
|---|
|  | 83 | macro_append cpplinkflags  " -O" WIN32 "" | 
|---|
|  | 84 |  | 
|---|
|  | 85 | macro build_library_links "true" WIN32 "" | 
|---|
|  | 86 | macro remove_library_links "true" WIN32 "" | 
|---|
|  | 87 | public | 
|---|
|  | 88 |  | 
|---|
|  | 89 | #////////////////////////////////////////////////// | 
|---|
|  | 90 | #/// Run time ///////////////////////////////////// | 
|---|
|  | 91 | #////////////////////////////////////////////////// | 
|---|
|  | 92 |  | 
|---|
|  | 93 | apply_pattern setup_paths | 
|---|
|  | 94 |  | 
|---|