]>
Commit | Line | Data |
---|---|---|
b24da1d3 | 1 | # Makefile for @PARMODULE@ -- automatically generated |
2 | ||
3 | # From ROOT | |
4 | include Makefile.arch | |
5 | ||
6 | # Name of this module | |
7 | PAR_MODULE := @PARMODULE@ | |
8 | ||
6358896a | 9 | # Include paths |
b24da1d3 | 10 | PAR_INCLUDES = -I. -I$(ALICE_ROOT)/include -I$(ALICE_PHYSICS)/include -I$(ROOTSYS)/include |
b24da1d3 | 11 | |
6358896a | 12 | # Get C++ flags form ROOT |
13 | PAR_CXXFLAGS = $(CXXFLAGS) $(PAR_INCLUDES) | |
b24da1d3 | 14 | |
6358896a | 15 | # Get linker flags from ROOT |
16 | PAR_SOFLAGS = $(SOFLAGS) $(LDFLAGS) | |
b24da1d3 | 17 | |
6358896a | 18 | # Exclude generated dictionaries from the list of sources |
19 | SRCS := $(filter-out $(wildcard G__*.cxx),$(wildcard *.cxx)) | |
b24da1d3 | 20 | |
6358896a | 21 | HDRS := $(SRCS:.cxx=.h) |
22 | DHDR := $(PAR_MODULE)LinkDef.h | |
23 | ||
24 | SRCS += G__$(PAR_MODULE).cxx | |
25 | OBJS := $(SRCS:.cxx=.o) | |
26 | ||
27 | COLM := \033[35m | |
28 | COLC := \033[36m | |
29 | COLG := \033[32m | |
30 | COLZ := \033[m | |
31 | ||
32 | # Default rule (it's the first one, "all" is just a convention) | |
33 | all: lib$(PAR_MODULE).so | |
34 | @echo -e "[$(COLM)$(PAR_MODULE)$(COLZ)] $(COLG)PARfile built successfully$(COLZ)" | |
35 | ||
36 | # Abstract rule to compile classes to objects | |
b24da1d3 | 37 | %.o: %.cxx %.h |
6358896a | 38 | @echo -e "[$(COLM)$(PAR_MODULE)$(COLZ)] compiling $(COLC)$<$(COLZ)" |
39 | @$(CXX) $(PAR_CXXFLAGS) -c $< -o $@ | |
b24da1d3 | 40 | |
41 | # Generate library from objects | |
6358896a | 42 | lib$(PAR_MODULE).so: $(OBJS) |
43 | @echo -e "[$(COLM)$(PAR_MODULE)$(COLZ)]" building shared library | |
44 | @$(LD) $(PAR_SOFLAGS) $^ -o $@ $(EXPLLINKLIBS) | |
b24da1d3 | 45 | |
46 | # Generate dictionary | |
6358896a | 47 | G__$(PAR_MODULE).cxx G__$(PAR_MODULE).h: $(HDRS) $(DHDR) |
48 | @echo -e "[$(COLM)$(PAR_MODULE)$(COLZ)]" generating dictionary | |
49 | @rootcint -f $@ -c $(PAR_INCLUDES) $^ | |
b24da1d3 | 50 | |
51 | # Delete all | |
52 | clean: | |
6358896a | 53 | rm -f $(OBJS) *.so G__$(PAR_MODULE).* |