source: MEMPHYS/HEAD/cmt/requirements @ 189

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

G.Barrand : material to declare AIDA to ROOTCINT

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