source: MEMPHYS/HEAD/cmt/requirements @ 75

Last change on this file since 75 was 75, checked in by barrand, 18 years ago

G.Barrand : handle local HitsCollectionType

File size: 4.0 KB
Line 
1package MEMPHYS
2version v4
3
4branches run
5
6#//////////////////////////////////////////////////
7#/// Uses needed to build this package ////////////
8#//////////////////////////////////////////////////
9
10use G4Lab v7r*
11
12use OnXLab v1r*
13
14#//////////////////////////////////////////////////
15#/// Over Geant4 kernel and AIDA interfaces only //
16#//////////////////////////////////////////////////
17
18build_strategy no_prototypes
19include_path none
20
21include_dirs $(MEMPHYSROOT)
22
23
24application test -group=debug -s=../source test.cxx
25
26# Over Geant4 and AIDA only :
27library MEMPHYSCore ${G4Lab_libopts} -s=../source *.cxx
28
29#JEC 17/11/05 add the G4readout_incs to manage G4DigiManager
30macro MEMPHYSCore_cppflags "${G4Lab_Geant4_incs} ${G4readout_incs} ${G4particles_incs} ${G4processes_incs}"
31macro MEMPHYSCore_shlibflags "${G4Lab_Geant4_linkopts} ${LibCore_linkopts} ${dld_linkopts} ${cxxstd_linkopts}"
32macro MEMPHYSCore_linkopts "-L${MEMPHYSROOT}/$(Platform_bin) -lMEMPHYSCore" WIN32 "${MEMPHYSROOT}\$(Platform_bin)\MEMPHYSCore.lib"
33
34#//////////////////////////////////////////////////
35#/// DLD callbacks ////////////////////////////////
36#//////////////////////////////////////////////////
37
38# Must not use Geant4 singletons if having not Geant4 shared libs.
39macro MEMPHYS_kind "dll"
40library MEMPHYS -import=OpenInventor -s=../source/Callbacks Callbacks.cxx InventorCallbacks.cxx
41macro MEMPHYS_cppflags "${G4Lab_Geant4_incs}"
42macro MEMPHYS_shlibflags "${LibCore_linkopts} ${HEPVisPlotter_linkopts} ${HEPVisDetector_linkopts} ${HEPVisGeometry_linkopts} ${HEPVisUtils_linkopts} ${freetype_linkopts} ${jpeg_linkopts} ${dvi2bitmap_linkopts} ${OpenInventor_linkopts} ${OpenGL_linkopts} ${Xext_linkopts} ${X11_linkopts} ${dld_linkopts} ${cxxstd_linkopts}"
43
44#//////////////////////////////////////////////////
45#/// Application "a la Geant4 examples" ///////////
46#//////////////////////////////////////////////////
47
48# Over Geant4 and AIDA only :
49application MEMPHYS_batch -import=expat ../applications/MEMPHYS_batch.cxx use_linkopts='"${MEMPHYSCore_linkopts} ${G4physics_lists_hadronic_linkopts} ${G4Lab_Geant4_linkopts} ${aida_config_libs} ${LibCore_linkopts} ${math_linkopts} ${dld_linkopts}"'
50macro MEMPHYS_batch_cppflags "${MEMPHYSCore_cppflags} ${G4physics_lists_hadronic_incs}"
51
52# Over G4Lab :
53application MEMPHYS_session -import=OpenInventor -import=expat ../applications/MEMPHYS_session.cxx ../applications/HitsCollectionType.cxx use_linkopts='"${MEMPHYSCore_linkopts} ${G4physics_lists_hadronic_linkopts}  ${G4LabUIOnX_linkopts} ${G4LabCore_linkopts} ${G4Lab_Geant4_linkopts} ${G4LabHDUMMY_linkopts} ${HEPVisPlotter_linkopts} ${HEPVisDetector_linkopts} ${HEPVisGeometry_linkopts} ${HEPVisUtils_linkopts} ${freetype_linkopts} ${jpeg_linkopts} ${dvi2bitmap_linkopts} ${OpenInventor_linkopts} ${OnXCore_linkopts} ${LibXML_linkopts} ${expat_linkopts} ${LibZip_linkopts} ${zlib_linkopts} ${LibCore_linkopts} ${dld_linkopts} ${cxxstd_linkopts} ${Windows_linkopts} ${OpenGL_linkopts} ${Xext_linkopts} ${X11_linkopts} "'
54macro MEMPHYS_session_cppflags "${G4Lab_Geant4_incs} ${MEMPHYS_batch_cppflags}"
55
56
57#//////////////////////////////////////////////////
58#//////////////////////////////////////////////////
59#//////////////////////////////////////////////////
60
61private
62macro build_library_links "true" WIN32 ""
63macro remove_library_links "true" WIN32 ""
64
65# WIN32 : /GR to enable RTTI and dynamic cast.
66# WIN32 : /GX to enable exception handling (for STL).
67macro_append cppflags "" WIN32 " /GX /GR"
68
69# DEBUG :
70#macro_append cflags  " -g" WIN32 " /ZI /Od"
71#macro_append cppflags  " -g" WIN32 " /ZI /Od"
72#macro_append cpplinkflags  " -g" WIN32 " /DEBUG"
73
74# OPTIMIZE :
75macro_append cflags  " -O" WIN32 " /O2"
76macro_append cppflags  " -O" WIN32 " /O2"
77macro_append cpplinkflags  " -O" WIN32 ""
78
79# SunOS : For std::map, std::list templates :
80macro ar "$(ar)"  SunOS "CC -xar -o"
81public
82
83#//////////////////////////////////////////////////
84#// Run time //////////////////////////////////////
85#//////////////////////////////////////////////////
86
87apply_pattern Platform_paths
88
89
Note: See TracBrowser for help on using the repository browser.