Multiple build directory support

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5040 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2003-09-01 15:15:50 +00:00
commit 0cc299f6d8
13 changed files with 126 additions and 83 deletions

View file

@ -3,15 +3,19 @@
# Makefile for chicken test-suite
#######################################################################
LANGUAGE = chicken
VARIANT = _module
LANGUAGE = chicken
VARIANT = _module
SCRIPTSUFFIX = _runme.scm
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
#C_TEST_CASES = long_long list_vector pointer_in_out multivalue
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
# none!
# Rules for the different types of tests
%.cpptest:
@ -32,13 +36,12 @@ include ../common.mk
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.scm appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.scm ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH ./$* $*\_runme.scm;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH ./$* $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
# Clean
%.clean:
clean:
$(MAKE) -f $(TOP)/Makefile chicken_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile chicken_clean

View file

@ -3,14 +3,16 @@
# Makefile for csharp test-suite
#######################################################################
LANGUAGE = csharp
LANGUAGE = csharp
SCRIPTSUFFIX = _runme.cs
srcdir = @srcdir@
top_srcdir = @top_srcdir@/..
top_builddir = @top_builddir@../
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
TOP = ../../..
SWIGOPT = -I$(TOP)/$(TEST_SUITE) -package $*
SWIGOPT = -I$(top_srcdir)/$(EXAMPLES)/$(TEST_SUITE) -package $*
#Target prefix cannot be used on Windows
#TARGETPREFIX = lib
@ -32,7 +34,7 @@ SWIGOPT = -I$(TOP)/$(TEST_SUITE) -package $*
# Makes a directory for the testcase if it does not exist
setup = \
@if [ -f $(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
echo "Checking testcase $* (with run test) under $(LANGUAGE)" ; \
else \
echo "Checking testcase $* under $(LANGUAGE)" ; \
@ -45,16 +47,16 @@ setup = \
# a file is found which has _runme.cs appended after the testcase name.
# Note CSharp uses LD_LIBRARY_PATH under Unix, PATH under Cygwin/Windows and SHLIB_PATH on HPUX.
run_testcase = \
if [ -f $*_runme.cs ]; then ( \
$(MAKE) -f $*/$(TOP)/Makefile CSHARPFLAGS='-nologo -out:$*_runme.exe' CSHARPSRCS='$*_runme.cs $*\\*.cs' csharp_compile; \
env LD_LIBRARY_PATH="$*:$$LD_LIBRARY_PATH" PATH="$*:$$PATH" SHLIB_PATH="$*:$$SHLIB_PATH" $*_runme.exe; ) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
$(MAKE) -f $*/$(top_builddir)/$(EXAMPLES)/Makefile CSHARPFLAGS='-nologo -out:$*_runme.exe' CSHARPSRCS='$(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) $*\\*.cs' csharp_compile; \
env LD_LIBRARY_PATH="$*:$$LD_LIBRARY_PATH" PATH="$*:$$PATH" SHLIB_PATH="$*:$$SHLIB_PATH" mono $*_runme.exe; ) \
else ( \
cd $*; \
$(MAKE) -f $(TOP)/Makefile CSHARPFLAGS='-nologo -t:module -out:$*.netmodule' CSHARPSRCS='*.cs' csharp_compile; ); \
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile CSHARPFLAGS='-nologo -t:module -out:$*.netmodule' CSHARPSRCS='*.cs' csharp_compile; ); \
fi;
# Above works for Microsoft and Mono.
# For pnet use different path separator and use interpreter to run:
# $(MAKE) -f $*/$(TOP)/Makefile CSHARPFLAGS='-nologo -out:$*_runme.exe' CSHARPSRCS='$*_runme.cs $*/*.cs' csharp_compile; \
# $(MAKE) -f $*/$(top_builddir)/$(EXAMPLES)/Makefile CSHARPFLAGS='-nologo -out:$*_runme.exe' CSHARPSRCS='$*_runme.cs $*/*.cs' csharp_compile; \
# env LD_LIBRARY_PATH="$*:$$LD_LIBRARY_PATH" PATH="$*:$$PATH" SHLIB_PATH="$*:$$SHLIB_PATH" ilrun $*_runme.exe; ) \
# Clean: remove testcase directories
@ -65,4 +67,3 @@ run_testcase = \
clean:
@rm -f *.exe

View file

@ -3,15 +3,19 @@
# Makefile for guile test-suite
#######################################################################
LANGUAGE = guile
VARIANT = _passive
LANGUAGE = guile
VARIANT = _passive
SCRIPTSUFFIX = _runme.scm
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
C_TEST_CASES = long_long list_vector pointer_in_out multivalue
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
# none!
# Rules for the different types of tests
%.cpptest:
@ -32,8 +36,8 @@ include ../common.mk
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.scm appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.scm ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH guile -l $*\_runme.scm;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH guile -l $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
# Clean
@ -41,4 +45,4 @@ run_testcase = \
@rm -f $*-guile
clean:
$(MAKE) -f $(TOP)/Makefile guile_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile guile_clean

View file

@ -5,19 +5,19 @@
include ../guile/Makefile
VARIANT = _scm
VARIANT = _scm
# Refer to the guile directory for the run scripts
SCRIPTPREFIX = ../guile/
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.scm appended after the testcase name.
run_testcase = \
if [ -f $(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH guile -l $(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH guile -l $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
setup = \
@if [ -f $(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
echo "Checking testcase $* (with run test) under $(LANGUAGE) (with SCM API)" ; \
else \
echo "Checking testcase $* under $(LANGUAGE) (with SCM API)" ; \

View file

@ -3,8 +3,11 @@
# Makefile for java test-suite
#######################################################################
LANGUAGE = java
LANGUAGE = java
SCRIPTSUFFIX = _runme.java
srcdir = @srcdir@
top_srcdir = @top_srcdir@/..
top_builddir = @top_builddir@../
C_TEST_CASES = \
java_lib_arrays
@ -18,11 +21,10 @@ CPP_TEST_CASES = \
java_typemaps_proxy \
java_typemaps_typewrapper
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
TOP = ../../..
SWIGOPT = -I$(TOP)/$(TEST_SUITE) -package $*
SWIGOPT = -I$(top_srcdir)/$(EXAMPLES)/$(TEST_SUITE) -package $*
#Target prefix cannot be used on Windows
#TARGETPREFIX = lib
@ -44,7 +46,7 @@ SWIGOPT = -I$(TOP)/$(TEST_SUITE) -package $*
# Makes a directory for the testcase if it does not exist
setup = \
@if [ -f $(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
echo "Checking testcase $* (with run test) under $(LANGUAGE)" ; \
else \
echo "Checking testcase $* under $(LANGUAGE)" ; \
@ -58,8 +60,8 @@ setup = \
# Note Java uses LD_LIBRARY_PATH under Unix, PATH under Cygwin/Windows, SHLIB_PATH on HPUX and DYLD_LIBRARY_PATH on Mac OS X.
run_testcase = \
(cd $*; javac *.java; ); \
if [ -f $*\_runme.java ]; then ( \
javac $*\_runme.java; \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
javac -d . $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
env LD_LIBRARY_PATH="$*:$$LD_LIBRARY_PATH" PATH="$*:$$PATH" SHLIB_PATH="$*:$$SHLIB_PATH" DYLD_LIBRARY_PATH="$*:$$DYLD_LIBRARY_PATH" java $*\_runme;) \
fi;

View file

@ -3,12 +3,16 @@
# Makefile for mzscheme test-suite
#######################################################################
LANGUAGE = mzscheme
LANGUAGE = mzscheme
SCRIPTSUFFIX = _runme.scm
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
# none!
# Rules for the different types of tests
%.cpptest:
@ -29,12 +33,12 @@ include ../common.mk
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.scm appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.scm ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH mzscheme -r $*\_runme.scm;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH mzscheme -r $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
# Clean
%.clean:
clean:
$(MAKE) -f $(TOP)/Makefile mzscheme_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile mzscheme_clean

View file

@ -1,13 +1,21 @@
#######################################################################
# $Header$
# Makefile for ocaml test-suite
#######################################################################
LANGUAGE = ocaml
VARIANT = _static
SCRIPTSUFFIX = _runme.ml
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
C_TEST_CASES =
run_testcase = \
if [ -f $*\_runme.ml ] ; then \
(ocamlc -c $*\_runme.ml ; \
ocamlc -custom -g -cc '$(CXX)' -o runme $*\.cmo $*\_runme.cmo $*\_wrap.o ; \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
ocamlc -c $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
ocamlc -custom -g -cc '$(CXX)' -o runme $(srcdir)/$*\.cmo $(srcdir)/$*\_runme.cmo $(srcdir)/$*\_wrap.o ; \
./runme) ; \
fi ;
@ -27,8 +35,12 @@ check_quant:
echo "Success:" >> results
cat success >> results
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
# none!
# Rules for the different types of tests
%.cpptest:
echo $@ >> testing
$(setup) \
@ -56,9 +68,10 @@ include ../common.mk
echo $@ >> success ; \
fi
# Clean
%.clean:
@rm -f $*.ml $*.mli;
clean:
$(MAKE) -f $(TOP)/Makefile ocaml_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile ocaml_clean

View file

@ -3,13 +3,16 @@
# Makefile for perl5 test-suite
#######################################################################
LANGUAGE = perl5
LANGUAGE = perl5
SCRIPTSUFFIX = _runme.pl
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
SWIGOPT = -shadow -I$(TOP)/$(TEST_SUITE)
SWIGOPT = -shadow -I$(top_srcdir)/$(EXAMPLES)/$(TEST_SUITE)
# Rules for the different types of tests
%.cpptest:
@ -30,8 +33,8 @@ SWIGOPT = -shadow -I$(TOP)/$(TEST_SUITE)
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.pl appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.pl ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH perl $*\_runme.pl;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH perl $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
# Clean: remove the generated .pm file
@ -39,4 +42,4 @@ run_testcase = \
@rm -f $*.pm;
clean:
$(MAKE) -f $(TOP)/Makefile perl5_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile perl5_clean

View file

@ -1,14 +1,17 @@
#######################################################################
# $Header$
# Makefile for php4 test-suite
#######################################################################
LANGUAGE = php4
LANGUAGE = php4
SCRIPTSUFFIX = _runme.php4
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
SWIGOPT = -I$(TOP)/../Lib -I$(TOP)/$(TEST_SUITE)
TARGETPREFIX = php_
makecpptests:
@ -55,8 +58,8 @@ missingtests: missingcpptests missingctests
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.php4 appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.php4 ]; then ( \
$(MAKE) -f $(TOP)/Makefile SCRIPT=$*\_runme.php4 php4_run;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile SCRIPT=$(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) php4_run;) \
fi;
# Clean: remove the generated .php file
@ -64,4 +67,4 @@ run_testcase = \
@rm -f $*.php;
clean:
$(MAKE) -f $(TOP)/Makefile php4_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile php4_clean

View file

@ -3,14 +3,16 @@
# Makefile for Pike test-suite
#######################################################################
LANGUAGE = pike
LANGUAGE = pike
SCRIPTSUFFIX = _runme.pike
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
TARGETSUFFIX =
SWIGOPT = -I$(TOP)/$(TEST_SUITE)
# none!
# Rules for the different types of tests
%.cpptest:
@ -31,8 +33,8 @@ SWIGOPT = -I$(TOP)/$(TEST_SUITE)
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.pike appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.pike ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH pike $*\_runme.pike;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH pike $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
# Clean: remove the generated .pike file
@ -40,5 +42,5 @@ run_testcase = \
@rm -f $*.pike;
clean:
$(MAKE) -f $(TOP)/Makefile pike_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile pike_clean

View file

@ -3,14 +3,16 @@
# Makefile for python test-suite
#######################################################################
LANGUAGE = python
LANGUAGE = python
SCRIPTSUFFIX = _runme.py
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
TARGETSUFFIX =
SWIGOPT = -I$(TOP)/$(TEST_SUITE)
# none!
# Rules for the different types of tests
%.cpptest:
@ -31,8 +33,8 @@ SWIGOPT = -I$(TOP)/$(TEST_SUITE)
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.py appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.py ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH python $*\_runme.py;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH PYTHONPATH=$(srcdir):$$PYTHONPATH python $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
# Clean: remove the generated .py file
@ -40,5 +42,5 @@ run_testcase = \
@rm -f $*.py;
clean:
$(MAKE) -f $(TOP)/Makefile python_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile python_clean

View file

@ -3,12 +3,16 @@
# Makefile for ruby test-suite
#######################################################################
LANGUAGE = ruby
LANGUAGE = ruby
SCRIPTSUFFIX = _runme.rb
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
# none!
# Rules for the different types of tests
%.cpptest:
@ -29,13 +33,12 @@ include ../common.mk
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.rb appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.rb ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH ruby $*\_runme.rb;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH ruby $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
# Clean
%.clean:
clean:
$(MAKE) -f $(TOP)/Makefile ruby_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile ruby_clean

View file

@ -3,12 +3,16 @@
# Makefile for tcl test-suite
#######################################################################
LANGUAGE = tcl
LANGUAGE = tcl
SCRIPTSUFFIX = _runme.tcl
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
include ../common.mk
include $(srcdir)/../common.mk
# Overridden variables here
# none!
# Rules for the different types of tests
%.cpptest:
@ -29,13 +33,12 @@ include ../common.mk
# Runs the testcase. A testcase is only run if
# a file is found which has _runme.tcl appended after the testcase name.
run_testcase = \
if [ -f $*\_runme.tcl ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH tclsh $*\_runme.tcl;) \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
env LD_LIBRARY_PATH=$(DYNAMIC_LIB_PATH):$$LD_LIBRARY_PATH tclsh $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX);) \
fi;
# Clean
%.clean:
clean:
$(MAKE) -f $(TOP)/Makefile tcl_clean
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile tcl_clean