Changes in directory llvm-test/External/SPEC/CFP2006/436.cactusADM:
Makefile updated: 1.2 -> 1.3
---
Log message:
Added support for SPEC benchmarks with mutiple directories. Stolen from the
POVRay way of doing things.
---
Diffs of the changes: (+124 -17)
Makefile | 141 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 124 insertions(+), 17 deletions(-)
Index: llvm-test/External/SPEC/CFP2006/436.cactusADM/Makefile
diff -u llvm-test/External/SPEC/CFP2006/436.cactusADM/Makefile:1.2
llvm-test/External/SPEC/CFP2006/436.cactusADM/Makefile:1.3
--- llvm-test/External/SPEC/CFP2006/436.cactusADM/Makefile:1.2 Wed Sep 6
15:41:12 2006
+++ llvm-test/External/SPEC/CFP2006/436.cactusADM/Makefile Thu Sep 7
19:59:14 2006
@@ -6,14 +6,18 @@
LEVEL = ../../../..
-Source = PreLoop.F StaggeredLeapfrog1a.F StaggeredLeapfrog1a_TS.F
\
- StaggeredLeapfrog2.F planewaves.F teukwaves.F datestamp.c regex.c
\
+TOPSources := \
+ PreLoop.F StaggeredLeapfrog1a.F StaggeredLeapfrog1a_TS.F
\
+ StaggeredLeapfrog2.F planewaves.F teukwaves.F datestamp.c regex.c
+PUGHSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/PUGH/,
\
GHExtension.c FinishReceiveGA.c Startup.c Evolve.c Storage.c
\
SetupGroup.c PostSendGA.c SetupPGH.c SetupPGV.c LoadAware.c Comm.c
\
- cctk_ThornBindings.c Overloadables.c PughUtils.c PostReceiveGA.c)
\
+ cctk_ThornBindings.c Overloadables.c PughUtils.c PostReceiveGA.c)
+TIMESources := \
$(addprefix $(SPEC_BENCH_DIR)/src/Time/,
\
- Courant.c Initialise.c cctk_ThornBindings.c Given.c Simple.c)
\
+ Courant.c Initialise.c cctk_ThornBindings.c Given.c Simple.c)
+CACTUSSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/Cactus/,
\
ScheduleTraverse.c Groups.c Dummies.c File.c CactusDefaultEvolve.c
\
BinaryTree.c Hash.c Malloc.c CactusTimers.c CallStartupFunctions.c
\
@@ -32,13 +36,17 @@
SetParams.c cctk_ThornBindings.c OverloadComm.c Names.c
\
InitialiseDataStructures.c StringList.c DefaultTimers.c
\
StoreNamedData.c ScheduleSorter.c Complex.c OverloadMain.c
\
- Traverse.c SKBinTree.c snprintf.c)
\
+ Traverse.c SKBinTree.c snprintf.c)
+IOUTILSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/IOUtil/,
\
CheckpointRecovery.c Utils.c AdvertisedFiles.c Startup.c
\
- cctk_ThornBindings.c)
\
- $(SPEC_BENCH_DIR)/src/IDLinearWaves/cctk_ThornBindings.c
\
+ cctk_ThornBindings.c)
+IDLINEARWAVESSources := \
+ $(SPEC_BENCH_DIR)/src/IDLinearWaves/cctk_ThornBindings.c
+BENCHADMSRCSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/BenchADMsrc/,
\
- Startup.c ParamCheck.c cctk_ThornBindings.c)
\
+ Startup.c ParamCheck.c cctk_ThornBindings.c)
+CACTUSBINDINGSSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/CactusBindings/,
\
ParameterRecoveryEinstein.c ParameterRecoveryCactus.c
\
TIME_private.c OverloadThorns.c Cactus.c PUGH_Register.c
\
@@ -80,36 +88,135 @@
ImplementationBindings.c DRIVER_restricted.c
\
IOUtil_FortranWrapper.c ScheduleCartGrid3D.c
\
FortranThornFunctions.c GRID_restricted.c
\
- ParameterRecoveryBoundary.c)
\
+ ParameterRecoveryBoundary.c)
+CARTGRID3DSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/CartGrid3D/,
\
SymmetryWrappers.c GHExtension.c DecodeSymParameters.c
\
SetSymmetry.c Startup.c CartGrid3D.c Symmetry.c ParamCheck.c
\
- cctk_ThornBindings.c)
\
+ cctk_ThornBindings.c)
+EINSTEINSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/Einstein/,
\
Courant.c InitialEinstein.c MaskInit.c Slicing.c InitialFlat.c
\
carttosphere.c InitSymBound.c LapseInits.c cctk_ThornBindings.c
\
- ShiftInits.c evaltrK.c ConfPhys.c)
\
+ ShiftInits.c evaltrK.c ConfPhys.c)
+PUGHREDUCESources := \
$(addprefix $(SPEC_BENCH_DIR)/src/PUGHReduce/,
\
ReductionNormInf.c ReductionMax.c ReductionMin.c ReductionSum.c
\
Startup.c Reduction.c ReductionNorm1.c ReductionNorm2.c
\
- cctk_ThornBindings.c)
\
+ cctk_ThornBindings.c)
+BOUNDARYSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/Boundary/,
\
FlatBoundary.c ScalarBoundary.c RadiationBoundary.c RobinBoundary.c
\
- CopyBoundary.c cctk_ThornBindings.c)
\
+ CopyBoundary.c cctk_ThornBindings.c)
+PUGHSLABSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/PUGHSlab/,
\
DatatypeConversion.c GetHyperslab.c Mapping.c Hyperslab.c
\
- cctk_ThornBindings.c NewHyperslab.c)
\
+ cctk_ThornBindings.c NewHyperslab.c)
+IOASCIISources := \
$(addprefix $(SPEC_BENCH_DIR)/src/IOASCII/,
\
Output1D.c Output2D.c Output3D.c Startup.c cctk_ThornBindings.c
\
- ChooseOutput.c Write1D.c Write2D.c Write3D.c)
\
+ ChooseOutput.c Write1D.c Write2D.c Write3D.c)
+IOBASICSources := \
$(addprefix $(SPEC_BENCH_DIR)/src/IOBasic/,
\
WriteScalar.c OutputScalar.c OutputInfo.c Startup.c WriteInfo.c
\
cctk_ThornBindings.c)
+Source := $(notdir $(TOPSources)) \
+ $(addprefix pugh_,$(notdir $(PUGHSources))) \
+ $(addprefix time_,$(notdir $(TIMESources))) \
+ $(addprefix cactus_,$(notdir $(CACTUSSources))) \
+ $(addprefix ioutil_,$(notdir $(IOUTILSources))) \
+ $(addprefix idlw_,$(notdir $(IDLINEARWAVESSources))) \
+ $(addprefix badmsrc_,$(notdir $(BENCHADMSRCSources))) \
+ $(addprefix cbnds_,$(notdir $(CACTUSBINDINGSSources))) \
+ $(addprefix cg3d_,$(notdir $(CARTGRID3DSources))) \
+ $(addprefix einstein_,$(notdir $(EINSTEINSources))) \
+ $(addprefix pughreduce_,$(notdir $(PUGHREDUCESources))) \
+ $(addprefix boundary_,$(notdir $(BOUNDARYSources))) \
+ $(addprefix pughslab_,$(notdir $(PUGHSLABSources))) \
+ $(addprefix ioascii_,$(notdir $(IOASCIISources))) \
+ $(addprefix iobasic_,$(notdir $(IOBASICSources)))
+
+CPPFLAGS += \
+ -DCCODE \
+ -I$(SPEC_BENCH_DIR)/src/PUGH \
+ -I$(SPEC_BENCH_DIR)/src/Time \
+ -I$(SPEC_BENCH_DIR)/src/Cactus \
+ -I$(SPEC_BENCH_DIR)/src/IOUtil \
+ -I$(SPEC_BENCH_DIR)/src/IDLinearWaves \
+ -I$(SPEC_BENCH_DIR)/src/BenchADMsrc \
+ -I$(SPEC_BENCH_DIR)/src/CactusBindings \
+ -I$(SPEC_BENCH_DIR)/src/CartGrid3D \
+ -I$(SPEC_BENCH_DIR)/src/Einstein \
+ -I$(SPEC_BENCH_DIR)/src/PUGHReduce \
+ -I$(SPEC_BENCH_DIR)/src/Boundary \
+ -I$(SPEC_BENCH_DIR)/src/PUGHSlab \
+ -I$(SPEC_BENCH_DIR)/src/IOASCII \
+ -I$(SPEC_BENCH_DIR)/src/IOBasic \
+ -I$(SPEC_BENCH_DIR)/src \
+ -I$(SPEC_BENCH_DIR)/src/include
+
include ../../Makefile.spec2006
include $(PROJ_SRC_ROOT)/Makefile.FORTRAN
-CFLAGS += -DCCODE
-
RUN_OPTIONS = benchADM
STDOUT_FILENAME := benchADM.out
+
+##===----------------------------------------------------------------------===##
+# Copy the source files to the working directory. Some files may have the
+# same names but are in different directories, so we add a prefix to
+# the filenames to prevent overwriting files.
+##===----------------------------------------------------------------------===##
+
+$(notdir $(TOPSources)) : % : \
+$(SPEC_BENCH_DIR)/src/%
+ cp $< $@
+$(addprefix pugh_,$(notdir $(PUGHSources))) : pugh_% : \
+$(SPEC_BENCH_DIR)/src/PUGH/%
+ cp $< $@
+$(addprefix time_,$(notdir $(TIMESources))) : time_% : \
+$(SPEC_BENCH_DIR)/src/Time/%
+ cp $< $@
+$(addprefix cactus_,$(notdir $(CACTUSSources))) : cactus_% : \
+$(SPEC_BENCH_DIR)/src/Cactus/%
+ cp $< $@
+$(addprefix ioutil_,$(notdir $(IOUTILSources))) : ioutil_% : \
+$(SPEC_BENCH_DIR)/src/IOUtil/%
+ cp $< $@
+$(addprefix idlw_,$(notdir $(IDLINEARWAVESSources))) : idlw_% : \
+$(SPEC_BENCH_DIR)/src/IDLinearWaves/%
+ cp $< $@
+$(addprefix badmsrc_,$(notdir $(BENCHADMSRCSources))) : badmsrc_% : \
+$(SPEC_BENCH_DIR)/src/BenchADMsrc/%
+ cp $< $@
+$(addprefix cbnds_,$(notdir $(CACTUSBINDINGSSources))) : cbnds_% : \
+$(SPEC_BENCH_DIR)/src/CactusBindings/%
+ cp $< $@
+$(addprefix cg3d_,$(notdir $(CARTGRID3DSources))) : cg3d_% : \
+$(SPEC_BENCH_DIR)/src/CartGrid3D/%
+ cp $< $@
+$(addprefix einstein_,$(notdir $(EINSTEINSources))) : einstein_% : \
+$(SPEC_BENCH_DIR)/src/Einstein/%
+ cp $< $@
+$(addprefix pughreduce_,$(notdir $(PUGHREDUCESources))) : pughreduce_% : \
+$(SPEC_BENCH_DIR)/src/PUGHReduce/%
+ cp $< $@
+$(addprefix boundary_,$(notdir $(BOUNDARYSources))) : boundary_% : \
+$(SPEC_BENCH_DIR)/src/Boundary/%
+ cp $< $@
+$(addprefix pughslab_,$(notdir $(PUGHSLABSources))) : pughslab_% : \
+$(SPEC_BENCH_DIR)/src/PUGHSlab/%
+ cp $< $@
+$(addprefix ioascii_,$(notdir $(IOASCIISources))) : ioascii_% : \
+$(SPEC_BENCH_DIR)/src/IOASCII/%
+ cp $< $@
+$(addprefix iobasic_,$(notdir $(IOBASICSources))) : iobasic_% : \
+$(SPEC_BENCH_DIR)/src/IOBasic/%
+ cp $< $@
+
+##===----------------------------------------------------------------------===##
+# Clean up all of the copied source files.
+##===----------------------------------------------------------------------===##
+
+clean::
+ $(RM) -f $(Source)
_______________________________________________
llvm-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits