]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - GEANT321/Makefile
Some function moved to AliZDC
[u/mrichter/AliRoot.git] / GEANT321 / Makefile
index 8b4dda899f93f0f6c49e54b53b7b4c894a8fefa5..a47588a5ca2af20ac1b390a5b9cc7dfef4316fe4 100644 (file)
@@ -7,9 +7,9 @@ include $(ALICE_ROOT)/conf/MachineDef.$(ALICE_TARGET)
 
 PACKAGE = GEANT321
 
-GDIRS = gbase gcons gdraw geocad ggeom gheisha ghits ghrout ghutils giface \
+GDIRS := gbase gcons gdraw geocad ggeom gheisha ghits ghrout ghutils giface \
         giopa gkine gparal gphys gscan gstrag gtrak matx55 miface miguti \
-        neutron peanut fiface cgpack fluka block comad
+        neutron peanut fiface cgpack fluka block comad erdecks erpremc
 
 XDIRS = gxint cdf
 
@@ -18,22 +18,23 @@ XDIRS = gxint cdf
 SRCS          =
 ##### MACROS #####
 
-GFSRC  = $(wildcard $(patsubst %,%/*.F,$(GDIRS))) gcinit.F
-GCSRC  = $(wildcard $(patsubst %,%/*.c,$(GDIRS))) 
-GCXXSRC        = $(wildcard $(patsubst %,%/*.cxx,$(GDIRS))) 
+GFSRC  := $(wildcard $(patsubst %,%/*.F,$(GDIRS))) gcinit.F
+GFSRC  := $(filter-out gtrak/grndm%.F,$(GFSRC))
+GCSRC  := $(wildcard $(patsubst %,%/*.c,$(GDIRS))) 
+GCXXSRC        := $(wildcard $(patsubst %,%/*.cxx,$(GDIRS))) 
 
 GSRC   = $(GFSRC) $(GCSRC)
-GFOBJ  = $(GFSRC:.F=.o)
-GCOBJ  = $(GCSRC:.c=.o)
-GCXXOBJ        = $(GCXXSRC:.cxx=.o)
+GFOBJ  = $(patsubst %.F,tgt_$(ALICE_TARGET)/%.o,$(GFSRC))
+GCOBJ  = $(patsubst %.c,tgt_$(ALICE_TARGET)/%.o,$(GCSRC))
+GCXXOBJ        = $(patsubst %.cxx,tgt_$(ALICE_TARGET)/%.o,$(GCXXSRC))
 GOBJ   = $(GFOBJ) $(GCOBJ) $(GCXXOBJ)
 
 XFSRC  = $(wildcard $(patsubst %,%/*.F,$(XDIRS))) 
 XCSRC  = $(wildcard $(patsubst %,%/*.c,$(XDIRS))) 
 
 XSRC   = $(XFSRC) $(XCSRC) $(XCXXSRC)
-XFOBJ  = $(XFSRC:.F=.o)
-XCOBJ  = $(XCSRC:.c=.o)
+XFOBJ  = $(patsubst %.F,tgt_$(ALICE_TARGET)/%.o,$(XFSRC))
+XCOBJ  = $(patsubst %.c,tgt_$(ALICE_TARGET)/%.o,$(XCSRC))
 XOBJ   = $(XFOBJ) $(XCOBJ) $(XCXXOBJ)
 
 SRCS   = $(GSRC) $(XSRC)
@@ -46,31 +47,35 @@ ALLOBJS       = $(OBJS) $(FOBJS) $(COBJS) $(DICTO)
 
 # C++ compilation flags
 
-CXXFLAGS      = $(CXXOPTS) $(CLIBCXXOPTS) $(CLIBDEFS) -I.
+CXXFLAGS      := $(CXXOPTS) $(CLIBCXXOPTS) $(CLIBDEFS) -I.
+CXXFLAGS      := $(filter-out -O%,$(CXXFLAGS))  
  
 # C compilation flags
 
-CFLAGS      = $(COPT) $(CLIBCOPT) $(CLIBDEFS) -I.
+CFLAGS      := $(COPT) $(CLIBCOPT) $(CLIBDEFS) -I.
  
 # FORTRAN compilation flags
 
-FFLAGS      = $(FOPT) $(CLIBFOPT) $(CLIBDEFS) -I.
+FFLAGS      := $(FOPT) $(CLIBFOPT) $(CLIBDEFS) -I.
+ifeq ($(PLATFORM),linux)
+   FFLAGS      := $(filter-out -O%,$(FFLAGS))  
+endif
  
 ##### TARGETS #####
  
 # Target
 
-SLIBRARY       = $(ALICE_ROOT)/lib/libgeant321.$(SL) $(ALICE_ROOT)/lib/libgxint321.$(SL)
-ALIBRARY       = $(ALICE_ROOT)/lib/libgeant321.a $(ALICE_ROOT)/lib/libgxint321.a
+SLIBRARY       = $(LIBDIR)/libgeant321.$(SL) $(LIBDIR)/libgxint321.$(SL)
+ALIBRARY       = $(LIBDIR)/libgeant321.a $(LIBDIR)/libgxint321.a
 
 ifeq ($(PLATFORM),alpha)
-       default:        $(ALIBRARY)
+        default:       $(ALIBRARY)
 else
-       default:        $(SLIBRARY)
+        default:       $(SLIBRARY)
 endif
 
-$(ALICE_ROOT)/lib/libgeant321.$(SL) $(ALICE_ROOT)/lib/libgeant321.a:  $(GOBJ)
-$(ALICE_ROOT)/lib/libgxint321.$(SL) $(ALICE_ROOT)/lib/libgxint321.$(SL):  $(XOBJ)
+$(LIBDIR)/libgeant321.$(SL) $(LIBDIR)/libgeant321.a:  $(GOBJ)
+$(LIBDIR)/libgxint321.$(SL) $(LIBDIR)/libgxint321.$(SL):  $(XOBJ)
 
 depend:                        $(SRCS)
 
@@ -82,4 +87,4 @@ include $(ALICE_ROOT)/conf/GeneralMacros
 
 ############################ Dependencies #####################################
 
-include Make-depend 
+-include tgt_$(ALICE_TARGET)/Make-depend