]> git.uio.no Git - u/mrichter/AliRoot.git/blame - build/Makefile.macosx
Compilation on Windows/Cygwin
[u/mrichter/AliRoot.git] / build / Makefile.macosx
CommitLineData
b934f194 1# Makefile for AliRoot for MacOS X with gcc
2
3a8f99bd 3XARGS = xargs
4
f3564e28 5# OS version
6MACOSX_MAJOR := $(strip $(shell sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 1))
7MACOSX_MINOR := $(strip $(shell sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 2))
8
9# fink directories
10FINK_ROOT := $(shell which fink | sed -e 's?/bin/fink??')
796dbee6 11ifeq (,$(FINK_ROOT))
12# No fink, build will probably fail, but we try a guess
13FINK_ROOT=/usr/local
14endif
f3564e28 15
02a1d5c1 16# The compilers
17CXX = g++
02a1d5c1 18CC = gcc
19
f3564e28 20ifeq (g95,$(findstring g95,$(ROOTBUILD)))
21F77 = g95
22else
23F77 = gfortran
24endif
f3564e28 25
02a1d5c1 26# Global optimisation
796dbee6 27OPT = -O -g
b5417bd7 28NOOPT = -O0 -g
02a1d5c1 29
19ca05d1 30CXXOPT = $(OPT)
31CXXNOOPT = $(NOOPT)
32COPT = $(OPT)
02a1d5c1 33FOPT = $(OPT) -fno-second-underscore
de6c7cfd 34ifeq (g95,$(findstring g95,$(ROOTBUILD)))
35FOPT += -fbounds-check
36endif
02a1d5c1 37
38# CERNLIB defines
796dbee6 39CLIBDEFS = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ -DCERNLIB_PPC
02a1d5c1 40CLIBCXXOPTS =
41CLIBCOPT =
19ca05d1 42CLIBFOPT = $(CLIBDEFS)
43
4792efa1 44CXXSTF = -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
b5417bd7 45
19ca05d1 46# Compiler flags
7da87db6 47CXXFLAGS = $(CXXOPT) $(CXXSTF)
796dbee6 48
b5417bd7 49CXXFLAGSNO = $(CXXNOOPT) $(CXXSTF)
796dbee6 50
6c111d79 51CFLAGS = $(COPT) -Wall -W -fno-common -pipe -I$(FINK_ROOT)/include
796dbee6 52
25d9678b 53FFLAGS = $(CLIBFOPT) $(FOPT)
54ifeq (g95,$(findstring g95,$(ROOTBUILD)))
55FFLAGS += -ftrace=full
7da87db6 56FFLAGS +=-DFORTRAN_G95
57else
58FFLAGS +=-DFORTRAN_GFORTRAN
25d9678b 59endif
7da87db6 60
19ca05d1 61# rmkdepend flags for building dependencies of FORTRAN files
62DEPENDFFLAGS = $(FFLAGS)
63
64# rootcint flags
65CINTFLAGS =
02a1d5c1 66
f3564e28 67LD = export MACOSX_DEPLOYMENT_TARGET=$(MACOSX_MAJOR).$(MACOSX_MINOR) ; \
02a1d5c1 68 unset LD_PREBIND ; \
69 g++
2bdfa405 70LDFLAGS = $(OPT) $(DICTLOAD)
02a1d5c1 71
72SHLD := $(LD)
2469b598 73SOFLAGS := -bundle -undefined dynamic_lookup
f3564e28 74SHLIB :=
02a1d5c1 75SOEXT := so
76
77DYLD := $(LD)
2469b598 78DYFLAGS = -dynamiclib -undefined dynamic_lookup -single_module
f3564e28 79DYLIB :=
02a1d5c1 80DYEXT := dylib
81
82ALLD = ar
83ALFLAGS = cr
84ALLIB =
85AEXT = a
86
02a1d5c1 87DEPENDCXXFLAGS = $(CXXFLAGS) -I/usr/include/sys
88
de6c7cfd 89SYSLIBS := -L/usr/X11R6/lib -lX11
02a1d5c1 90
de6c7cfd 91EXEFLAGS := -bind_at_load
f3564e28 92
02a1d5c1 93#System libraries
796dbee6 94
f3564e28 95ifeq (g95,$(findstring g95,$(ROOTBUILD)))
21cf279e 96SYSLIBS += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95
b0724f32 97DYLIB += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95
f3564e28 98else
626d87b0 99SYSLIBS += -ldl $(shell $(F77) -print-file-name=libgfortran.dylib)
100SYSLIBS += $(shell $(F77) -print-file-name=libgfortranbegin.a)
f3564e28 101endif