summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile4
-rw-r--r--doc/README.NT5
-rwxr-xr-xlib/make/configure54
-rw-r--r--lib/make/configure.in5
-rw-r--r--lib/make/known-architectures/cygwin6
-rw-r--r--lib/make/make.config.defn.in5
-rw-r--r--lib/make/make.config.rules.in29
-rw-r--r--lib/make/make.configuration16
-rw-r--r--lib/sbin/RunTestUtils.pl17
9 files changed, 88 insertions, 53 deletions
diff --git a/Makefile b/Makefile
index 76f03f41..5ace68e8 100644
--- a/Makefile
+++ b/Makefile
@@ -16,7 +16,7 @@
#
#
# @enddesc
-# @version $Id: Makefile,v 1.153 2004-05-13 21:11:47 goodale Exp $
+# @version $Id: Makefile,v 1.154 2004-05-19 09:53:23 goodale Exp $
# @@*/
##################################################################################
@@ -187,7 +187,7 @@ DIVEL = __________________
DIVIDER = $(DIVEL)$(DIVEL)$(DIVEL)$(DIVEL)
# Work out where we are
-export CCTK_HOME := $(shell pwd | sed 's,^/cygdrive/\(.\)/,\1:/,' | sed 's,^//\(.\)/,\1:/,' )
+export CCTK_HOME := $(shell pwd)
# Work out where the configuration directory is
diff --git a/doc/README.NT b/doc/README.NT
index 1e4d6f25..74ed13f2 100644
--- a/doc/README.NT
+++ b/doc/README.NT
@@ -40,11 +40,6 @@ Cygwin 1.0 (but with an updated make, see below)
Cygwin 1.1.6
Cygwin 1.3.10
-Perl:
-----
-perl 5.003_7 (Perl for Win32 build 312)
-ActivePerl-5.6.0.620
-
C/C++:
-----
Microsoft Visual C 6.0
diff --git a/lib/make/configure b/lib/make/configure
index 253fcd81..b4c0e664 100755
--- a/lib/make/configure
+++ b/lib/make/configure
@@ -1670,12 +1670,12 @@ else
#line 1671 "configure"
#include "confdefs.h"
#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof(long long));
- exit(0);
+ return(0);
}
EOF
if { (eval echo configure:1682: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1714,12 +1714,12 @@ else
#line 1715 "configure"
#include "confdefs.h"
#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof(long int));
- exit(0);
+ return(0);
}
EOF
if { (eval echo configure:1726: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1758,12 +1758,12 @@ else
#line 1759 "configure"
#include "confdefs.h"
#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof(int));
- exit(0);
+ return(0);
}
EOF
if { (eval echo configure:1770: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1802,12 +1802,12 @@ else
#line 1803 "configure"
#include "confdefs.h"
#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof(short int));
- exit(0);
+ return(0);
}
EOF
if { (eval echo configure:1814: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1848,12 +1848,12 @@ else
#line 1849 "configure"
#include "confdefs.h"
#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof(long double));
- exit(0);
+ return(0);
}
EOF
if { (eval echo configure:1860: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1892,12 +1892,12 @@ else
#line 1893 "configure"
#include "confdefs.h"
#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof(double));
- exit(0);
+ return(0);
}
EOF
if { (eval echo configure:1904: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1937,12 +1937,12 @@ else
#line 1938 "configure"
#include "confdefs.h"
#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof(float));
- exit(0);
+ return(0);
}
EOF
if { (eval echo configure:1949: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1983,12 +1983,12 @@ else
#line 1984 "configure"
#include "confdefs.h"
#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof(char *));
- exit(0);
+ return(0);
}
EOF
if { (eval echo configure:1995: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -5021,6 +5021,11 @@ fi
: ${GET_WD="pwd"}
+# Way for Make to transofrm things like include directories
+# into a form suitable for the compiler.
+
+: ${TRANSFORM_DIRS='$(1)'}
+
# Any additional system include directories.
: ${SYS_INC_DIRS=" "}
@@ -5318,6 +5323,7 @@ s%@F90_POSTPROCESSING@%$F90_POSTPROCESSING%g
s%@CXX_WORKING_NAME@%$CXX_WORKING_NAME%g
s%@F90_SUFFIX@%$F90_SUFFIX%g
s%@GET_WD@%$GET_WD%g
+s%@TRANSFORM_DIRS@%$TRANSFORM_DIRS%g
s%@SYS_INC_DIRS@%$SYS_INC_DIRS%g
s%@GENERAL_LIBRARIES@%$GENERAL_LIBRARIES%g
s%@PERL_BACKUP_NECESSARY@%$PERL_BACKUP_NECESSARY%g
diff --git a/lib/make/configure.in b/lib/make/configure.in
index abac7c8f..76d76995 100644
--- a/lib/make/configure.in
+++ b/lib/make/configure.in
@@ -1063,6 +1063,11 @@ AC_SUBST(F90_SUFFIX)
AC_SUBST(GET_WD)
: ${GET_WD="pwd"}
+# Way for Make to transofrm things like include directories
+# into a form suitable for the compiler.
+AC_SUBST(TRANSFORM_DIRS)
+: ${TRANSFORM_DIRS='$(1)'}
+
# Any additional system include directories.
AC_SUBST(SYS_INC_DIRS)
: ${SYS_INC_DIRS=" "}
diff --git a/lib/make/known-architectures/cygwin b/lib/make/known-architectures/cygwin
index 43d2393d..3e44ffd4 100644
--- a/lib/make/known-architectures/cygwin
+++ b/lib/make/known-architectures/cygwin
@@ -132,6 +132,8 @@ else
GET_WD="pwd | sed 's,^/cygdrive/\(.\)/,\1:/,' | sed 's,^//\(.\)/,\1:/,' "
fi
+ TRANSFORM_DIRS='$(shell cygpath -wa $(1))'
+
# The -nostdinc stops it picking stdio.h, etc, from the GNU headers.
C_DEPEND='$(CPP) -E -MM -nostdinc -D_WIN32 $(CPPFLAGS) '
CXX_DEPEND='$(CPP) -E -MM -nostdinc -D_WIN32 $(CPPFLAGS) '
@@ -149,12 +151,12 @@ else
LIBNAME_PREFIX=""
LIBNAME_SUFFIX=".lib"
if test "$CC" = "cl"; then
- CACTUSLIBLINKLINE='/link /libpath:$(subst /,$(DIRSEP),$(CCTK_LIBDIR)) $(foreach lib,$(ALLCACTUSLIBS), $(LIBNAME_PREFIX)$(lib)$(LIBNAME_SUFFIX))'
+ CACTUSLIBLINKLINE='/link /libpath:"$(call TRANSFORM_DIRS,$(CCTK_LIBDIR))" $(foreach lib,$(ALLCACTUSLIBS), $(LIBNAME_PREFIX)$(lib)$(LIBNAME_SUFFIX))'
fi
# Don't need the /link here since it's already in CACTUSLIBLINKLINE
if test "$CC" = "cl"; then
- GENERAL_LIBRARIES='$(LIBDIRS:%=/libpath:$(subst /,$(DIRSEP),%)) $(LIBS:%=%.lib) /NODEFAULTLIB:libcd /NODEFAULTLIB:libcmt'
+ GENERAL_LIBRARIES='$(LIBDIRS:%=/libpath:"$(call TRANSFORM_DIRS,%)") $(LIBS:%=%.lib) /NODEFAULTLIB:libcd /NODEFAULTLIB:libcmt'
else
GENERAL_LIBRARIES='$(LIBDIRS:%=-L%) $(LIBS:%=-l%)'
fi
diff --git a/lib/make/make.config.defn.in b/lib/make/make.config.defn.in
index 93b21b97..d10400d3 100644
--- a/lib/make/make.config.defn.in
+++ b/lib/make/make.config.defn.in
@@ -120,6 +120,11 @@ DEP_EXCLUDE_FILES = cctk_Functions\.h|CParameterStructNames\.h|cctk_Arguments\.h
# Command used to get the working directory
GET_WD = @GET_WD@
+# Way for Make to transofrm things like include directories
+# into a form suitable for the compiler.
+
+TRANSFORM_DIRS = @TRANSFORM_DIRS@
+
# Library info
LIBS += @LIBS@
LIBDIRS += @LIBDIRS@
diff --git a/lib/make/make.config.rules.in b/lib/make/make.config.rules.in
index b9348754..b602905f 100644
--- a/lib/make/make.config.rules.in
+++ b/lib/make/make.config.rules.in
@@ -22,6 +22,11 @@ DIVEL = __________________
DIVIDER = $(DIVEL)$(DIVEL)$(DIVEL)$(DIVEL)
#####################################################################
+# Shortcuts.
+
+INCLUDE_LINE = $(patsubst %,-I"%",$(call TRANSFORM_DIRS,$(INC_DIRS)))
+
+#####################################################################
# Define how to do dependencies
ifeq ($(strip $(PERL_BACKUP_NECESSARY)),)
@@ -37,30 +42,30 @@ endef
endif
define C_DEPENDENCIES
- $(C_DEPEND) $< $(INC_DIRS:%=-I%) $(SYS_INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DCCODE $(C_DEPEND_OUT)
+ $(C_DEPEND) $< $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DCCODE $(C_DEPEND_OUT)
$(DEPENDENCY_FIXER)
endef
define CXX_DEPENDENCIES
- $(CXX_DEPEND) $< $(INC_DIRS:%=-I%) $(SYS_INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DCCODE $(CXX_DEPEND_OUT)
+ $(CXX_DEPEND) $< $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DCCODE $(CXX_DEPEND_OUT)
$(DEPENDENCY_FIXER)
endef
define F77_DEPENDENCIES
- $(F77_DEPEND) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DFCODE $< $(F77_DEPEND_OUT)
+ $(F77_DEPEND) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DFCODE $< $(F77_DEPEND_OUT)
$(DEPENDENCY_FIXER)
endef
define F_DEPENDENCIES
- $(F_DEPEND) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE $< $(F_DEPEND_OUT)
+ $(F_DEPEND) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE $< $(F_DEPEND_OUT)
$(DEPENDENCY_FIXER)
- current_wd=`$(GET_WD)` ; { if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) $(F_DEPEND_MODULES) $< $(basename $(notdir $<)).F.o $(SRCDIR) $(USESTHORNS:%=$$current_wd/../%) $(F_DEPEND_MODULES_OUT) || { rm $@; exit 1; }
+ current_wd=`$(GET_WD)` ; { if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) $(F_DEPEND_MODULES) $< $(basename $(notdir $<)).F.o $(SRCDIR) $(USESTHORNS:%=$$current_wd/../%) $(F_DEPEND_MODULES_OUT) || { rm $@; exit 1; }
endef
define F90_DEPENDENCIES
- $(F_DEPEND) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE $< $(F_DEPEND_OUT)
+ $(F_DEPEND) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE $< $(F_DEPEND_OUT)
$(DEPENDENCY_FIXER)
- current_wd=`$(GET_WD)` ; { if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) $(F_DEPEND_MODULES) $< $(basename $(notdir $<)).F90.o $(SRCDIR) $(USESTHORNS:%=$$current_wd/../%) $(F_DEPEND_MODULES_OUT) || { rm $@; exit 1; }
+ current_wd=`$(GET_WD)` ; { if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) $(F_DEPEND_MODULES) $< $(basename $(notdir $<)).F90.o $(SRCDIR) $(USESTHORNS:%=$$current_wd/../%) $(F_DEPEND_MODULES_OUT) || { rm $@; exit 1; }
endef
# No preprocessing, just create empty dependency file
@@ -86,7 +91,7 @@ define PREPROCESS_C
endef
define COMPILE_C
-current_wd=`$(GET_WD)` ; cd $(SCRATCH_BUILD) ; $(CC) $(CFLAGS) $(CCOMPILEONLY)$(OPTIONSEP)$$current_wd$(DIRSEP)$@ $$current_wd$(DIRSEP)$(notdir $<) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DCCODE
+current_wd=`$(GET_WD)` ; cd $(SCRATCH_BUILD) ; $(CC) $(CFLAGS) $(CCOMPILEONLY)$(OPTIONSEP)$$current_wd$(DIRSEP)$@ $$current_wd$(DIRSEP)$(notdir $<) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DCCODE
endef
define POSTPROCESS_C
@@ -99,7 +104,7 @@ define PREPROCESS_CXX
endef
define COMPILE_CXX
-current_wd=`$(GET_WD)` ; cd $(SCRATCH_BUILD) ; $(CXX) $(CXXFLAGS) $(CCOMPILEONLY)$(OPTIONSEP)$$current_wd$(DIRSEP)$@ $$current_wd$(DIRSEP)$(CXX_WORKING_NAME) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DCCODE
+current_wd=`$(GET_WD)` ; cd $(SCRATCH_BUILD) ; $(CXX) $(CXXFLAGS) $(CCOMPILEONLY)$(OPTIONSEP)$$current_wd$(DIRSEP)$@ $$current_wd$(DIRSEP)$(CXX_WORKING_NAME) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DCCODE
endef
define POSTPROCESS_CXX
@@ -108,7 +113,7 @@ endef
# Define how to do a F77 compilation
define PREPROCESS_F77
-{ if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DFCODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) -p -e 's/__FORTRANFILE__/\"$(basename $(notdir $<)).F77\"/g' | $(PERL) -s $(F_FILE_PROCESSOR) -line_directives=$(F_LINE_DIRECTIVES) -source_file_name=$< > $(basename $(notdir $<)).f
+{ if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DFCODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) -p -e 's/__FORTRANFILE__/\"$(basename $(notdir $<)).F77\"/g' | $(PERL) -s $(F_FILE_PROCESSOR) -line_directives=$(F_LINE_DIRECTIVES) -source_file_name=$< > $(basename $(notdir $<)).f
endef
define COMPILE_F77
@@ -121,7 +126,7 @@ endef
# Define how to do a fixed-format F90 compilation
define PREPROCESS_F
-{ if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) -p -e 's/__FORTRANFILE__/\"$(basename $(notdir $<)).F\"/g' | $(PERL) -s $(F_FILE_PROCESSOR) -line_directives=$(F_LINE_DIRECTIVES) -source_file_name=$< > $(basename $(notdir $<)).f
+{ if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) -p -e 's/__FORTRANFILE__/\"$(basename $(notdir $<)).F\"/g' | $(PERL) -s $(F_FILE_PROCESSOR) -line_directives=$(F_LINE_DIRECTIVES) -source_file_name=$< > $(basename $(notdir $<)).f
endef
define COMPILE_F
@@ -134,7 +139,7 @@ endef
# Define how to do a free-format F90 compilation
define PREPROCESS_F90
-{ if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INC_DIRS:%=-I%) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) -p -e 's/__FORTRANFILE__/\"$(basename $(notdir $<)).F90\"/g' | $(PERL) -s $(F_FILE_PROCESSOR) -free_format -line_directives=$(F_LINE_DIRECTIVES) -source_file_name=$< > $(basename $(notdir $<)).$(F90_SUFFIX)
+{ if test $(F_LINE_DIRECTIVES) = 'yes'; then echo '#line 1 "'$<'"'; fi; cat $<; } | $(PERL) -p -e 's.//.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.g' | $(FPP) $(FPPFLAGS) $(INCLUDE_LINE) $(EXTRA_DEFINES:%=-D%) -DFCODE -DF90CODE | $(PERL) -p -e 's.CCTK_AUTOMATICALLY_GENERATED_CONCATENATION_PROTECTION.//.g' | $(PERL) -p -e 's/__FORTRANFILE__/\"$(basename $(notdir $<)).F90\"/g' | $(PERL) -s $(F_FILE_PROCESSOR) -free_format -line_directives=$(F_LINE_DIRECTIVES) -source_file_name=$< > $(basename $(notdir $<)).$(F90_SUFFIX)
endef
define COMPILE_F90
diff --git a/lib/make/make.configuration b/lib/make/make.configuration
index 365b1ed6..b426c143 100644
--- a/lib/make/make.configuration
+++ b/lib/make/make.configuration
@@ -38,9 +38,6 @@ ifneq ($(strip $(OPTIMIZE)), )
$(warning "You specified 'OPTIMIZE=$(OPTIMIZE)'. This option is evaluated only at configuration time and will be ignored at compile time.")
endif
-
-DATESTAMP = $(CCTK_HOME)/src/datestamp.c
-
export MAKE_DIR = $(CCTK_HOME)/lib/make
FLESHLIB = Cactus
@@ -55,6 +52,15 @@ DIVIDER = $(DIVEL)$(DIVEL)$(DIVEL)$(DIVEL)
# Include the definitions for this configuration
include $(CONFIG)/make.config.defn
+# Remove this line in 4.0 beta 16, by which all configs should have this defined
+ifndef TRANSFORM_DIRS
+TRANSFORM_DIRS = $(1)
+endif
+
+# Define the name of the source file which is the one object on the linkline
+
+DATESTAMP = $(CCTK_HOME)/src/datestamp.c
+
export PERLINTERP = $(shell echo $(PERL) | sed 's,^/cygdrive/\(.\)/,\1:/,' | sed 's,^//\(.\)/,\1:/,' )
# Use a phony main target to make sure we print a nice ending message 8-)
@@ -129,9 +135,9 @@ ALLCACTUSLIBS = $(notdir $(CACTUSLIBS) $(THORN_LINKLIST) $(CACTUSLIBS))
# Build the executable
$(EXEDIR)$(DIRSEP)$(EXE): $(CONFIG)/make.thornlist $(CONFIG)/cctki_version.h $(patsubst %,$(CCTK_LIBDIR)/$(LIBNAME_PREFIX)%$(LIBNAME_SUFFIX),$(notdir $(THORNS) $(CACTUSLIBS)))
@echo Creating $(EXE) in $(EXEDIR) from $(THORNS)
- $(CC) $(OPTIMISE_C) $(DEBUG_C) $(CFLAGS) $(CCOMPILEONLY)$(OPTIONSEP)$(TOP)$(DIRSEP)datestamp.o -I$(subst /,$(DIRSEP),$(CCTK_HOME)/src/include) -I$(CONFIG) $(subst /,$(DIRSEP),$(DATESTAMP))
+ $(CC) $(OPTIMISE_C) $(DEBUG_C) $(CFLAGS) $(CCOMPILEONLY)$(OPTIONSEP)"$(call TRANSFORM_DIRS,$(TOP)/datestamp.o)" -I"$(call TRANSFORM_DIRS,$(CCTK_HOME)/src/include)" -I"$(call TRANSFORM_DIRS,$(CONFIG))" "$(call TRANSFORM_DIRS,$(DATESTAMP))"
if [ ! -d $(EXEDIR) ]; then $(MKDIR) $(MKDIRFLAGS) $(EXEDIR) ; fi
- $(LD) $(CREATEEXE)$(OPTIONSEP)$(subst /,$(DIRSEP),$@) $(DEBUG_LD) $(LDFLAGS) $(EXTRAFLAGS) $(subst /,$(DIRSEP), $(TOP)/datestamp.o) $(CACTUSLIBLINKLINE) $(GENERAL_LIBRARIES)
+ $(LD) $(CREATEEXE)$(OPTIONSEP)"$(call TRANSFORM_DIRS,$@)" $(DEBUG_LD) $(LDFLAGS) $(EXTRAFLAGS) "$(call TRANSFORM_DIRS,$(TOP)/datestamp.o)" $(CACTUSLIBLINKLINE) $(GENERAL_LIBRARIES)
@echo $(DIVIDER)
# Version file
diff --git a/lib/sbin/RunTestUtils.pl b/lib/sbin/RunTestUtils.pl
index 9ab11ff6..af51f9bb 100644
--- a/lib/sbin/RunTestUtils.pl
+++ b/lib/sbin/RunTestUtils.pl
@@ -843,7 +843,7 @@ sub RunTest
my ($test_dir,$config);
my ($retcode);
- $arrangement = $testdata->{"$thorn ARRANGEMENT"};
+ my $arrangement = $testdata->{"$thorn ARRANGEMENT"};
$testdata->{"$thorn $test TESTRUNDIR"} = $config_data->{"TESTS_DIR"}.$sep.$config_data->{"CONFIG"}.$sep.$thorn;
@@ -852,7 +852,7 @@ sub RunTest
# Make any necessary directories
&MakeTestRunDir($testdata->{"$thorn $test TESTRUNDIR"});
- $parfile = $test.".par";
+ my $parfile = TransformDirs($testdata->{"$thorn TESTSDIR"}. "/" . $test . ".par");
# Clean the output directory for this test
&CleanDir($testdata->{"$thorn $test TESTOUTPUTDIR"});
@@ -860,7 +860,8 @@ sub RunTest
# Run the test from the test thorn directory
chdir ($testdata->{"$thorn $test TESTRUNDIR"}) ;
- $cmd = "$config_data->{\"COMMAND\"} $config_data->{\"EXE\"} $testdata->{\"$thorn TESTSDIR\"}${sep}$parfile";
+
+ $cmd = "$config_data->{\"COMMAND\"} $config_data->{\"EXE\"} $parfile";
$retcode = &RunCactus($output,$test,$cmd);
chdir $config_data->{"CCTK_DIR"};
@@ -1461,4 +1462,14 @@ sub ViewResults
}
+sub TransformDirs
+{
+ my ($in) = @_;
+
+ $in =~ s,^/cygdrive/(.)/,\1:/,;
+ $in =~ s,^//(.)/,\1:/,;
+
+ return $in;
+}
+
1;