From 36ca0e3d888d79d51e01a1f33ee3ef88d5da2e45 Mon Sep 17 00:00:00 2001 From: Fons Rademakers <Fons.Rademakers@cern.ch> Date: Tue, 4 Dec 2007 15:47:39 +0000 Subject: [PATCH] corrections for gfortran usage. However, 64-bit version does not work yet. We need 64 bit version fo gfortran to get the correct run time libs. git-svn-id: http://root.cern.ch/svn/root/trunk@21187 27541ba8-7e3a-0410-8455-c3a389f83636 --- etc/vmc/Makefile.macosx | 9 +++-- etc/vmc/Makefile.macosx64 | 69 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+), 5 deletions(-) create mode 100644 etc/vmc/Makefile.macosx64 diff --git a/etc/vmc/Makefile.macosx b/etc/vmc/Makefile.macosx index 127ad0affd8..1cb30b26896 100644 --- a/etc/vmc/Makefile.macosx +++ b/etc/vmc/Makefile.macosx @@ -36,7 +36,7 @@ AWK = awk # CXXOPTS = $(OPT) -pipe -Wall -W -Woverloaded-virtual COPT = $(OPT) -FOPT = $(OPT) -fno-second-underscore -fsloppy-char +FOPT = $(OPT) -fno-second-underscore # CERNLIB defines @@ -63,8 +63,7 @@ SOFLAGS = -dynamiclib -undefined dynamic_lookup -single_module ifeq (g95,$(findstring g95,$(ROOTBUILD))) SHLIB += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95 else -SHLIB += -ldl -L$(shell gfortran --print-search-dirs | sed -n -e 's/install: //p') -lgfortranbegin -lgfortran +SHLIB := $(shell gfortran -print-file-name=libgfortran.dylib) +SHLIB += $(shell gfortran -print-file-name=libgfortranbegin.a) +SHLIB += -ldl endif - - - diff --git a/etc/vmc/Makefile.macosx64 b/etc/vmc/Makefile.macosx64 new file mode 100644 index 00000000000..f153c1ef3b8 --- /dev/null +++ b/etc/vmc/Makefile.macosx64 @@ -0,0 +1,69 @@ +# $Id: Makefile.macosx 20845 2007-11-16 15:48:58Z rdm $ + +# MacOSX 64-bit platform dependent definitions + +# OS version +MACOSX_MAJOR := $(strip $(shell sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 1)) +MACOSX_MINOR := $(strip $(shell sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 2)) + +# Architecture: PPC or x86 +ARCH_PPCI386 := $(shell arch) + +# fink directories +FINK_ROOT := $(shell which fink | sed -e 's?/bin/fink??') + +# The compilers +CXX = g++ +CC = gcc + +ifeq (g95,$(findstring g95,$(ROOTBUILD))) +F77 = g95 +else +F77 = gfortran +endif + +# Global optimisation +OPT = -g #-O + +# Shared library suffix +SL = dylib + +# AWK +AWK = awk + +# The options +# +# +CXXOPTS = $(OPT) -m64 -pipe -Wall -W -Woverloaded-virtual +COPT = $(OPT) -m64 +FOPT = $(OPT) -m64 -fno-second-underscore + +# CERNLIB defines + +CLIBDEFS_TMP = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ +ifeq (i386,$(findstring i386,$(ARCH_PPCI386))) +CLIBDEFS = $(CLIBDEFS_TMP) +else +CLIBDEFS = $(CLIBDEFS_TMP) -DCERNLIB_PPC +endif + +CLIBCXXOPTS = $(CLIBDEFS) +CLIBCOPT = $(CLIBDEFS) +CLIBFOPT = $(CLIBDEFS) + +LD = export MACOSX_DEPLOYMENT_TARGET=$(MACOSX_MAJOR).$(MACOSX_MINOR) ; \ + unset LD_PREBIND ; \ + g++ + +LDFLAGS = $(OPT) -m64 -bind_at_load + +SHLD = $(LD) +SOFLAGS = -m64 -dynamiclib -undefined dynamic_lookup -single_module + +ifeq (g95,$(findstring g95,$(ROOTBUILD))) +SHLIB += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95 +else +SHLIB := $(shell gfortran -print-file-name=libgfortran.dylib) +SHLIB += $(shell gfortran -print-file-name=libgfortranbegin.a) +SHLIB += -ldl +endif -- GitLab