Updated version of the HMPID DA. To be checked on real data by the experts and then...
[u/mrichter/AliRoot.git] / build / Makefile.macosx
1 # Makefile for AliRoot for MacOS X with gcc
2
3 XARGS = xargs
4
5 # OS version
6 MACOSX_MAJOR := $(strip $(shell sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 1))
7 MACOSX_MINOR := $(strip $(shell sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 2))
8
9 # fink directories
10 FINK_ROOT := $(shell which fink | sed -e 's?/bin/fink??')
11 ifeq (,$(FINK_ROOT))
12 # No fink, build will probably fail, but we try a guess
13 FINK_ROOT=/usr/local
14 endif
15
16 # The compilers
17 CXX           = g++ 
18 CC            = gcc
19
20 ifeq (g95,$(findstring g95,$(ROOTBUILD)))
21 F77           = g95
22 else
23 F77           = gfortran
24 endif
25
26 # Global optimisation
27 OPT           = -O -g
28 NOOPT         = -O0 -g
29
30 CXXOPT        = $(OPT) 
31 CXXNOOPT      = $(NOOPT) 
32 COPT          = $(OPT)
33 FOPT          = $(OPT) -fno-second-underscore 
34 ifeq (g95,$(findstring g95,$(ROOTBUILD)))
35 FOPT         += -fbounds-check
36 endif
37
38 # CERNLIB defines
39 CLIBDEFS      = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ -DCERNLIB_PPC
40 CLIBCXXOPTS   =
41 CLIBCOPT      =
42 CLIBFOPT      = $(CLIBDEFS)
43
44 CXXSTF        =  -pipe -Wall -W -Wno-long-double -pipe -fbounds-check -fsigned-char -fno-common -fmessage-length=0 -Woverloaded-virtual -Weffc++ -Wconversion -fno-default-inline -fno-inline -I/usr/X11R6/include -I$(FINK_ROOT)/include
45
46 # Compiler flags
47 CXXFLAGS      = $(CXXOPT) $(CXXSTF) -Weffc++
48
49 ifeq (g95,$(findstring g95,$(ROOTBUILD)))
50 CXXFLAGS+=-DFORTRAN_G95
51 endif
52 CXXFLAGSNO    = $(CXXNOOPT) $(CXXSTF) 
53
54 CFLAGS        = $(COPT) -Wall -W -fno-common -pipe -I$(FINK_ROOT)/include
55
56 FFLAGS        = $(CLIBFOPT) $(FOPT) -ftrace=full
57 # rmkdepend flags for building dependencies of FORTRAN files
58 DEPENDFFLAGS  = $(FFLAGS)
59
60 # rootcint flags
61 CINTFLAGS     = 
62
63 LD            = export MACOSX_DEPLOYMENT_TARGET=$(MACOSX_MAJOR).$(MACOSX_MINOR) ; \
64                 unset LD_PREBIND ; \
65                 g++
66 LDFLAGS       = $(OPT) $(DICTLOAD)
67
68 SHLD         := $(LD)
69 SOFLAGS      := -bundle -undefined dynamic_lookup
70 SHLIB        := 
71 SOEXT        := so
72
73 DYLD         := $(LD)
74 DYFLAGS       = -dynamiclib -undefined dynamic_lookup -single_module
75 DYLIB        := 
76 DYEXT        := dylib
77
78 ALLD          = ar
79 ALFLAGS       = cr
80 ALLIB         = 
81 AEXT          = a
82
83 DEPENDCXXFLAGS = $(CXXFLAGS) -I/usr/include/sys
84
85 SYSLIBS      := -L/usr/X11R6/lib -lX11
86
87 EXEFLAGS     := -bind_at_load 
88
89 #System libraries
90
91 ifeq (g95,$(findstring g95,$(ROOTBUILD)))
92 SYSLIBS += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95
93 else
94 SYSLIBS += -ldl -L$(shell gfortran --print-search-dirs | sed -n -e 's/install: //p') -lgfortranbegin -lgfortran
95 endif