]> git.uio.no Git - u/mrichter/AliRoot.git/blame - AliGeant4/Makefile
New Clusterization by IHEP (yuri)
[u/mrichter/AliRoot.git] / AliGeant4 / Makefile
CommitLineData
676fb573 1# $Id$
2
3############################### AliGeant4 Makefile #############################
4
5# Include Geant4 specific definitions
6
7include $(G4INSTALL)/config/architecture.gmk
8
9# Include machine specific definitions
10
11include $(ALICE_ROOT)/conf/GeneralDef
12include $(ALICE_ROOT)/conf/MachineDef.$(ALICE_TARGET)
13
14# Include Alice Geant4 specific definitions
15
16NEED_G4_LIBS := 1
17include $(ALICE_ROOT)/conf/Geant4.gmk
18
19PACKAGE = AliGeant4
20TARGET = aligeant4
21
22# C++ sources
23
24SRCS = $(wildcard *.cxx)
12656483 25SRCS := $(filter-out $(TARGET).cxx,$(SRCS))
676fb573 26
27# C++ Headers
28
29HDRS = $(wildcard *.icc) $(wildcard *.h)
30
2669be90 31# Library Root dictionary
676fb573 32# only for selected classes
2669be90 33# (temporarily excluded for OSF1 due to compilation errors)
676fb573 34
2669be90 35ifneq ($(ALICE_TARGET),OSF1)
676fb573 36DICT = AliGeant4Cint.cxx
37DICTH = AliRunConfiguration.h AliGeant4LinkDef.h
38DICTO = $(patsubst %.cxx,tgt_$(ALICE_TARGET)/%.o,$(DICT))
2669be90 39endif
676fb573 40
41# C++ Objects
42
43OBJS = $(patsubst %.cxx,tgt_$(ALICE_TARGET)/%.o,$(SRCS)) $(DICTO)
44
45# Program C++ source, objects
46
47PSRC = $(TARGET).cxx
48POBJ = $(patsubst %.cxx,tgt_$(ALICE_TARGET)/%.o,$(PSRC))
49
50# C++ compilation flags
51
12656483 52CXXFLAGS = $(CXXOPTS) -I$(ROOTSYS)/include -I. -I$(ALICE_ROOT)/include \
53 -I$(ALICE_ROOT)/TGeant4
676fb573 54
55##### TARGETS #####
56
57# Target
58
59SLIBRARY = $(LIBDIR)/libAliGeant4.$(SL)
2669be90 60ALIBRARY = $(LIBDIR)/libAliGeant4.a
676fb573 61PROGRAM = $(BINDIR)/$(TARGET)
62
63default: $(SLIBRARY) $(PROGRAM)
69622c8d 64archived: $(ALIBRARY)
676fb573 65
66$(LIBDIR)/libAliGeant4.$(SL): $(OBJS)
2669be90 67$(LIBDIR)/libAliGeant4.a: $(OBJS)
676fb573 68
69$(BINDIR)/$(TARGET): $(POBJ)
70
71$(DICT): $(DICTH)
72
73depend: $(SRCS)
74
aecdbdac 75clean: macroclean
76
676fb573 77#HEADERS = $(filter-out %LinkDef.h,$(HDRS))
78
79# filter-out Geant3 dependent libraries (ZDC requires symbols from G3)
80# and add Geant4 dependent ones
81ALILIBS := $(filter-out -lTGeant3,$(ALILIBS))
82ALILIBS := $(filter-out -lZDC,$(ALILIBS))
450189d6 83ALILIBS := $(filter-out -lITS,$(ALILIBS))
2669be90 84ALILIBS += -lAliGeant4 -lTGeant4
676fb573 85
3ba49ff6 86LIBS = $(ALILIBS) $(CLIBS) $(GLIBS) -lEG -lEGPythia6 -lpythia6 -lpdf \
69622c8d 87 -lTHijing -lhijing -lTMevSim -lmevsim -lTHBTprocessor -lhbtprocessor \
88 $(G4LDLIBS)
676fb573 89
aecdbdac 90TOCLEAN = $(OBJS) $(POBJ) *Cint.cxx *Cint.h
676fb573 91
92CHECKS = $(patsubst %.cxx,check/%.viol,$(SRCS))
93
94############################### General Macros ################################
95
96include $(ALICE_ROOT)/conf/GeneralMacros
97
98
99# Geant4 specific compiler flags
100
101CXXFLAGS += $(CPPFLAGS)
102
103
104############################ Dependencies #####################################
105
106-include tgt_$(ALICE_TARGET)/Make-depend