source: build/snova/trunk/cmt/requirements @ 80

Last change on this file since 80 was 80, checked in by barrand, 17 years ago
File size: 3.2 KB
Line 
1package snova
2version 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
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.
18#
19#//////////////////////////////////////////////////
20
21#//////////////////////////////////////////////////
22use bhep v1r*
23use Geant4 v2r* cmt
24#//////////////////////////////////////////////////
25
26build_strategy no_prototypes
27include_path none
28
29include_dirs $(SNOVAROOT)/source/GeomUtils/include $(SNOVAROOT)/source/SNgeom2/include $(SNOVAROOT)/source/SNvertex/include
30
31#//////////////////////////////////////////////////
32
33library geomutils ../source/GeomUtils/src/*.cc
34macro geomutils_shlibflags "${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}"
35macro geomutils_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lgeomutils"
36
37library sngeom ../source/SNgeom2/src/*.cc
38macro sngeom_shlibflags "${geomutils_linkopts} ${bhep_linkopts} ${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}"
39macro sngeom_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lsngeom"
40
41library snvertex ../source/SNvertex/src/*.cc
42#macro sngeom_shlibflags "${geomutils_linkopts} ${bhep_linkopts} ${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}"
43macro snvertex_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lsnvertex"
44
45library snova -s=../source/snova \
46# Do not have the below base/*.cc because of old_gen.cc and
47# OpenGLXVisManager.cc (keep libsnova as "batch" with no GUI and graphics).
48#   base/*.cc \ 
49   base/event.cc \
50   base/generator.cc \
51   base/run.cc \
52   base/snova_const.cc \
53   base/snova_mgr.cc \
54   base/stacking.cc \
55   base/stepping.cc \
56   base/stepping_verbose.cc \
57   base/tracking.cc \
58#
59   geom/*.cc \
60   physics/*.cc \
61   vertex/*.cc
62macro snova_cppflags "-I.. -I$(Geant4_include)"
63macro snova_shlibflags "${CLHEP_linkopts} ${HDF5_linkopts} ${zlib_linkopts}"
64macro snova_linkopts "-L${SNOVAROOT}/$(CMTCONFIG) -lsnova"
65
66application 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}"'
67
68#//////////////////////////////////////////////////
69#/// compile, link flags //////////////////////////
70#//////////////////////////////////////////////////
71private
72# WIN32 : /GR to enable RTTI and dynamic cast.
73# WIN32 : /GX to enable exception handling (for STL).
74macro_append cppflags  "" WIN32 " /GX /GR"
75
76# DEBUG :
77#macro_append cflags  " -g" WIN32 " /ZI /Od"
78#macro_append cppflags  " -g" WIN32 " /ZI /Od"
79#macro_append cpplinkflags  " -g" WIN32 " /DEBUG /VERBOSE:LIB"
80
81# OPTIMIZE :
82macro_append cflags  " -O" WIN32 " /O2"
83macro_append cppflags  " -O" WIN32 " /O2"
84macro_append cpplinkflags  " -O" WIN32 ""
85
86macro build_library_links "true" WIN32 ""
87macro remove_library_links "true" WIN32 ""
88public
89
90#//////////////////////////////////////////////////
91#/// Run time /////////////////////////////////////
92#//////////////////////////////////////////////////
93
94apply_pattern setup_paths
95
Note: See TracBrowser for help on using the repository browser.