Improved Makefile, by setting logging path, TOPDIR and LIBDIR.
[u/mrichter/AliRoot.git] / HLT / comp / Makefile
1 #$Id$
2 ###########################
3 # Makefile for HLT code.  #
4 #                         #
5 # Author: Anders Vestbo   #                    
6 ###########################
7
8 ifndef USEPACKAGE
9 #USEPACKAGE = ROOT
10 USEPACKAGE = ALIROOT
11 endif
12
13 #used if USEPACKAGE=anything else
14 DEFSTR = -Dno_root
15
16 CXX         = g++
17 LD          = g++
18 CXXFLAGS    = -O2 -Wall -fPIC -Woverloaded-virtual
19 LDFLAGS     = -O2
20 SOFLAGS     = -shared
21
22 ifndef TOPDIR
23 TOPDIR = $(HOME)/level3code
24 endif
25 ifndef LIBDIR
26 LIBDIR = $(LEVEL3)/lib_$(USERNAME)
27 endif
28 OBJDIR = lib
29
30 ifeq ($(USEPACKAGE),ROOT) 
31 INCLUDES = -I$(ROOTSYS)/include -I$(TOPDIR)/hough -I$(TOPDIR)/src -I$(TOPDIR)/comp
32 DEFSTR = -Duse_root
33 endif
34
35 ifeq ($(USEPACKAGE),ALIROOT)
36 INCLUDES = -I$(ROOTSYS)/include -I$(TOPDIR)/hough -I$(TOPDIR)/src -I$(TOPDIR)/comp -I$(ALICE_ROOT)/include/ -I$(ALICE_ROOT)/TPC -I$(ALICE_ROOT)/CONTAINERS -I$(ALICE_ROOT)/STEER
37 DEFSTR = -Duse_aliroot -Duse_root
38 endif
39
40 #Save the particle id's
41 #DEFSTR += -Ddo_mc
42
43 #Use logging classes
44 DEFSTR += -Duse_logging
45
46 ifdef MLUCDIR
47 INCLUDES += -I$(MLUCDIR)/include
48 else
49 INCLUDES += -I/prog/alice/level3/kip/MLUC/include
50 endif
51
52 SRCS    = AliL3Modeller.cxx AliL3ModelTrack.cxx AliL3Compress.cxx
53
54 DICT = AliL3CompCint.cxx
55 DICTH = AliL3CompCint.h
56 DICTO = $(OBJDIR)/AliL3CompCint.o
57
58 HDRS = $(SRCS:.cxx=.h) bitio.h errhand.h AliL3CompLinkDef.h
59
60 OBJS = $(patsubst %.cxx,$(OBJDIR)/%.o,$(SRCS)) $(OBJDIR)/bitio.o $(OBJDIR)/errhand.o $(DICTO)
61
62 LEVELSO = $(LIBDIR)/libAliL3Comp.so
63
64 all : $(OBJDIR) $(LIBDIR) $(LEVELSO)
65
66
67 $(LEVELSO) : $(OBJS)
68         $(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@
69
70 $(DICT) : $(HDRS)
71         @echo "Generating dictionary..."
72         @rootcint -f $(DICT) -c $(INCLUDES) $(HDRS)
73
74
75 $(OBJDIR)/%.o : %.cxx 
76         $(CXX) $(CXXFLAGS) $(DEFSTR) -c $(INCLUDES) -o $@ $<
77
78 $(OBJDIR) : 
79         test ! -e $(OBJDIR) && mkdir -p $(OBJDIR)
80
81 $(LIBDIR) :
82         test ! -e $(LIBDIR) && mkdir -p $(LIBDIR)
83
84 $(OBJDIR)/bitio.o : bitio.c
85         $(CXX) -c -o $(OBJDIR)/bitio.o bitio.c
86 $(OBJDIR)/errhand.o : errhand.c
87         $(CXX) -c -o $(OBJDIR)/errhand.o errhand.c
88
89 clean :
90         rm -f $(OBJDIR)/*.o
91         rm -f $(LIBDIR)/libAliL3Comp.so
92         rm $(DICT) $(DICTH) 
93 so :
94         rm -f $(LIBDIR)/libAliL3Comp.so