source: MEMPHYS/HEAD/cmt/requirements @ 195

Last change on this file since 195 was 195, checked in by barrand, 18 years ago
File size: 5.4 KB
Line 
1package MEMPHYS
2version v7r0
3
4#use OpenScientist du 28/03/2006 Slash/BatchLab/OnXLab
5#message from COIN to use full OpenGL
6set COIN_FULL_INDIRECT_RENDERING "1"
7
8
9branches run
10
11#//////////////////////////////////////////////////
12#/// Uses needed to build this package ////////////
13#//////////////////////////////////////////////////
14
15use G4Lab v8r*
16
17use OnXLab v1r*
18
19#//////////////////////////////////////////////////
20#/// Over Geant4 kernel and AIDA interfaces only //
21#//////////////////////////////////////////////////
22
23build_strategy no_prototypes
24include_path none
25
26include_dirs $(MEMPHYSROOT)
27
28
29application test -group=debug -s=../source test.cxx
30
31# Over Geant4 and AIDA only :
32library MEMPHYSCore ${G4Lab_libopts} -s=../source *.cxx
33
34#JEC 17/11/05 add the G4readout_incs to manage G4DigiManager
35macro MEMPHYSCore_cppflags "${G4Lab_Geant4_incs} ${G4readout_incs} ${G4particles_incs} ${G4processes_incs}"
36macro MEMPHYSCore_shlibflags "${G4Lab_Geant4_linkopts} ${LibCore_linkopts} ${dld_linkopts} ${cxxstd_linkopts}"
37macro MEMPHYSCore_linkopts "-L${MEMPHYSROOT}/$(Platform_bin) -lMEMPHYSCore" WIN32 "${MEMPHYSROOT}\$(Platform_bin)\MEMPHYSCore.lib"
38
39#//////////////////////////////////////////////////
40#/// DLD callbacks ////////////////////////////////
41#//////////////////////////////////////////////////
42
43# Must not use Geant4 singletons if having not Geant4 shared libs.
44macro MEMPHYS_kind "dll"
45library MEMPHYS -import=OpenInventor -s=../source/Callbacks Callbacks.cxx InventorCallbacks.cxx
46macro MEMPHYS_cppflags "${G4Lab_Geant4_incs}"
47macro 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}"
48
49#//////////////////////////////////////////////////
50#/// Application "a la Geant4 examples" ///////////
51#//////////////////////////////////////////////////
52
53# Over Geant4 and AIDA only :
54application 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}"'
55macro MEMPHYS_batch_cppflags "${MEMPHYSCore_cppflags} ${G4physics_lists_hadronic_incs}"
56
57# Over AIDA only :
58application MEMPHYS_analysis ../applications/MEMPHYS_analysis.cxx use_linkopts='"$(aida_config_libs)"'
59
60# Over G4Lab :
61application MEMPHYS_session -import=OpenInventor -import=expat ../applications/MEMPHYS_session.cxx ../applications/HitsCollectionAccessor.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} "'
62macro MEMPHYS_session_cppflags "${G4Lab_Geant4_incs} ${MEMPHYS_batch_cppflags}"
63
64
65#//////////////////////////////////////////////////
66#/// Things using ROOT ////////////////////////////
67#//////////////////////////////////////////////////
68use ROOT v1r* Interfaces
69
70# Example of ROOT program to work on a MEMPHYS.root file :
71application MEMPHYS_analysis_ROOT -group=ROOT ../applications/MEMPHYS_analysis_ROOT.cxx use_linkopts='"${ROOT_Tree_linkopts} ${ROOT_Hist_linkopts} ${ROOT_Matrix_linkopts} ${ROOT_Core_linkopts} ${ROOT_Cint_linkopts} ${dld_linkopts} ${math_linkopts}"'
72
73# Compiled version of scripts/ROOT/aida.C
74application MEMPHYS_analysis_aida_ROOT -group=ROOT ../applications/MEMPHYS_analysis_aida_ROOT.cxx use_linkopts='"${aida_config_libs} ${ROOT_Gpad_linkopts} ${ROOT_freetype_linkopts} ${ROOT_Graf_linkopts} ${ROOT_Hist_linkopts} ${ROOT_Matrix_linkopts} ${ROOT_Core_linkopts} ${ROOT_Cint_linkopts} ${dld_linkopts} ${math_linkopts} "'
75
76# Declare AIDA to rootcint.
77# See scripts/ROOT/aida.C for a usage example.
78
79macro AIDA_cintflags "-I${AIDAROOT}/src/cpp"
80macro AIDA_LinkDef_h "../source/ROOT/LinkDef.h"
81document rootcint MEMPHYS_rootcint_AIDA -group=ROOT ${AIDAROOT}/src/cpp/AIDA/AIDA.h
82
83library MEMPHYSAIDADict -group=ROOT -import=ROOT ${dict}/AIDADict.cpp
84macro MEMPHYSAIDADict_shlibflags "$(aida_config_libs) ${ROOT_Core_linkopts} ${ROOT_Cint_linkopts}"
85
86#//////////////////////////////////////////////////
87#//////////////////////////////////////////////////
88#//////////////////////////////////////////////////
89
90private
91macro build_library_links "true" WIN32 ""
92macro remove_library_links "true" WIN32 ""
93
94# WIN32 : /GR to enable RTTI and dynamic cast.
95# WIN32 : /GX to enable exception handling (for STL).
96macro_append cppflags "" WIN32 " /GX /GR"
97
98# DEBUG :
99#macro_append cflags  " -g" WIN32 " /ZI /Od"
100#macro_append cppflags  " -g" WIN32 " /ZI /Od"
101#macro_append cpplinkflags  " -g" WIN32 " /DEBUG"
102
103# OPTIMIZE :
104macro_append cflags  " -O" WIN32 " /O2"
105macro_append cppflags  " -O" WIN32 " /O2"
106macro_append cpplinkflags  " -O" WIN32 ""
107public
108
109#//////////////////////////////////////////////////
110#// Run time //////////////////////////////////////
111#//////////////////////////////////////////////////
112
113apply_pattern Platform_paths
114
115
Note: See TracBrowser for help on using the repository browser.