From 85f621711a2e64f0cd35e8b7ae34b3899a9d82e6 Mon Sep 17 00:00:00 2001 From: hristov Date: Tue, 14 Dec 2004 10:24:07 +0000 Subject: [PATCH 1/1] Changes needed on Mac (F.Carminati) --- PDF/libpdf.pkg | 42 +++++++++++++++++++++++++------ STEER/AliRun.cxx | 12 ++++++++- STEER/libSTEER.pkg | 3 +++ TPC/AliTPCTrackHitsInterfaces.cxx | 27 ++++++++++++++++++++ TPC/AliTPCTrackHitsInterfaces.h | 18 +++++++++++++ TPC/libTPCbase.pkg | 4 ++- 6 files changed, 97 insertions(+), 9 deletions(-) create mode 100644 TPC/AliTPCTrackHitsInterfaces.cxx diff --git a/PDF/libpdf.pkg b/PDF/libpdf.pkg index fe5a7809652..1ecef8b2d81 100644 --- a/PDF/libpdf.pkg +++ b/PDF/libpdf.pkg @@ -10,7 +10,6 @@ spdf/afgin2.F \ spdf/afgint.F \ spdf/afpolin.F \ spdf/afratin.F \ -spdf/alphas2.F \ spdf/augetfv.F \ spdf/aurgam.F \ spdf/aurpi1.F \ @@ -145,8 +144,6 @@ spdf/mrseb.F \ spdf/mrsebp.F \ spdf/newdo1.F \ spdf/pdf_beta.F \ -spdf/pdfset.F \ -spdf/pdfsta.F \ spdf/pdfvers.F \ spdf/pdxmt.F \ spdf/pdzxmt.F \ @@ -369,8 +366,6 @@ spdf/strucb.F \ spdf/struce.F \ spdf/strucor.F \ spdf/structf.F \ -spdf/structm.F \ -spdf/structp.F \ spdf/v3.F \ spdf/valdis.F \ spdf/wate32.F \ @@ -388,8 +383,41 @@ spdf/whit6g.F \ spdf/whit6q.F \ npdf/eks98.F \ npdf/eksarp.F \ -npdf/sfeks98.F \ -npdf/structa.F +npdf/sfeks98.F + +ifeq (,$(findstring macosx,$(ALICE_TARGET))) + +FSRCS+=npdf/structa.F \ +spdf/alphas2.F \ +spdf/pdfset.F \ +spdf/pdfsta.F \ +spdf/structm.F \ +spdf/structp.F + +else + +FSRCS+=commons.F + +TCSRCS=ctmp/npdf/structa.c ctmp/spdf/alphas2.c ctmp/spdf/pdfset.c ctmp/spdf/pdfsta.c \ +ctmp/spdf/structm.c ctmp/spdf/structp.c + +CSRCS+=$(TCSRCS) + +.SECONDARY: $(TCSRCS) + +PDF/ctmp/%.c: PDF/%.F + [ -d $(dir $@) ] || mkdir -p $(dir $@) +ifeq (macosx,$(ALICE_TARGET)) + $(F77) -E $(pdfINC) $(pdfFFLAGS) $< | f2c -E | sed -e 's/\([0-9,a-z]*_[0-9,a-z]*\)__/\1_/g' > $@ +endif +ifeq (macosxxlc,$(ALICE_TARGET)) + $(F77) -d $(pdfINC) -c -o /dev/null $(pdfFFLAGS) $< ; \ + tmpf=F`basename $@ .c`.f ; export tmpf ; \ + cat $$tmpf | f2c -E | sed -e 's/\([0-9,a-z]*_[0-9,a-z]*\)__/\1_/g' > $@ ; \ + rm -f $$tmpf +endif + +endif PACKFFLAGS := $(FFLAGS) -IPDF/pdf diff --git a/STEER/AliRun.cxx b/STEER/AliRun.cxx index c2cbff57663..8b3bb4e850a 100644 --- a/STEER/AliRun.cxx +++ b/STEER/AliRun.cxx @@ -63,10 +63,12 @@ #include "AliPDG.h" #include "AliRun.h" #include "AliStack.h" +#ifdef __APPLE__ +#include "AliTPCTrackHitsInterfaces.h" +#endif AliRun *gAlice; - ClassImp(AliRun) //_______________________________________________________________________ @@ -171,6 +173,14 @@ AliRun::AliRun(const char *name, const char *title): // Add particle list to configuration AliConfig::Instance()->Add(fPDGDB); +#ifdef __APPLE__ + // Terrible hack to avoid problem with the initialisation of + // static and globals on Mac OS X + AliClassAliTrackHitsInfo p1=galiclass____AliClassAliTrackHitsInfo; + AliClassAliTrackHitsParam p2=galiclass____AliTrackHitsParam; + AliClassAliHitInfo p3=galiclass____AliHitInfo; +#endif + } diff --git a/STEER/libSTEER.pkg b/STEER/libSTEER.pkg index 25884d6c658..3e1f36f6082 100644 --- a/STEER/libSTEER.pkg +++ b/STEER/libSTEER.pkg @@ -27,6 +27,9 @@ HDRS:= $(SRCS:.cxx=.h) DHDR= STEERLinkDef.h EINCLUDE:=$(ALICE)/geant3/TGeant3 RAW +#ifeq (macosx,$(ALICE_TARGET)) +EINCLUDE+=TPC CONTAINERS +#endif EXPORT:=$(SRCS:.cxx=.h) AliConst.h AliCallf77.h diff --git a/TPC/AliTPCTrackHitsInterfaces.cxx b/TPC/AliTPCTrackHitsInterfaces.cxx new file mode 100644 index 00000000000..349dbf13a60 --- /dev/null +++ b/TPC/AliTPCTrackHitsInterfaces.cxx @@ -0,0 +1,27 @@ +#include +#ifdef __APPLE__ + +#include "AliTPCTrackHitsInterfaces.h" + + +AliClassAliTrackHitsInfo & g_AliClassAliTrackHitsInfo() +{ + static AliClassAliTrackHitsInfo p; + // printf("AliClassAliTrackHitsInfo\n"); + return p; +} + +AliClassAliTrackHitsParam & g_AliTrackHitsParam() +{ + static AliClassAliTrackHitsParam p; + // printf("AliClassAliTrackHitsParam\n"); + return p; +} + +AliClassAliHitInfo & g_AliHitInfo() +{ + static AliClassAliHitInfo p; + // printf("AliClassAliHitInfo\n"); + return p; +} +#endif diff --git a/TPC/AliTPCTrackHitsInterfaces.h b/TPC/AliTPCTrackHitsInterfaces.h index 1bc2482313d..4e0029666c6 100644 --- a/TPC/AliTPCTrackHitsInterfaces.h +++ b/TPC/AliTPCTrackHitsInterfaces.h @@ -40,7 +40,13 @@ public: } void ObjectDump(void *p) {((AliTrackHitsInfo*)p)->Dump();} }; + +#ifndef __APPLE__ AliClassAliTrackHitsInfo galiclass____AliTrackHitsInfo; +#else +#define galiclass____AliClassAliTrackHitsInfo g_AliClassAliTrackHitsInfo() +AliClassAliTrackHitsInfo & g_AliClassAliTrackHitsInfo(); +#endif /************************************************/ /* Automaticaly generated interface for class @@ -76,7 +82,13 @@ public: } void ObjectDump(void *p) {((AliTrackHitsParam*)p)->Dump();} }; + +#ifndef __APPLE__ AliClassAliTrackHitsParam galiclass____AliTrackHitsParam; +#else +#define galiclass____AliTrackHitsParam g_AliTrackHitsParam() +AliClassAliTrackHitsParam & g_AliTrackHitsParam(); +#endif /************************************************/ /* Automaticaly generated interface for class @@ -112,4 +124,10 @@ public: } void ObjectDump(void *p) {((AliHitInfo*)p)->Dump();} }; + +#ifndef __APPLE__ AliClassAliHitInfo galiclass____AliHitInfo; +#else +#define galiclass____AliHitInfo g_AliHitInfo() +AliClassAliHitInfo & g_AliHitInfo(); +#endif diff --git a/TPC/libTPCbase.pkg b/TPC/libTPCbase.pkg index b9eec91c318..a7d142090f0 100644 --- a/TPC/libTPCbase.pkg +++ b/TPC/libTPCbase.pkg @@ -3,7 +3,9 @@ SRCS:= AliTPCLoader.cxx \ AliDetectorParam.cxx AliTPCParam.cxx \ AliTPCParamSR.cxx AliTPCParamCR.cxx \ AliTPCdigit.cxx \ - AliSimDigits.cxx AliDigitsArray.cxx AliTPCDigitsArray.cxx + AliSimDigits.cxx AliDigitsArray.cxx AliTPCDigitsArray.cxx \ + AliTPCTrackHitsInterfaces.cxx + HDRS:= $(SRCS:.cxx=.h) -- 2.31.1