Add target language version display during make check. Individual language versions can be checked using 'make check-<lang>-version'.

This commit is contained in:
William S Fulton 2013-04-09 09:17:36 +01:00
commit 3e26318427
6 changed files with 275 additions and 8 deletions

View file

@ -95,6 +95,7 @@ distclean:
# Set these to your local copy of Tcl/Tk.
TCLSH = tclsh
TCL_INCLUDE = @TCLINCLUDE@
TCL_LIB = @TCLLIB@
TCL_OPTS = @LIBS@
@ -154,6 +155,13 @@ tcl_cpp: $(SRCS)
$(CXX) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDES) $(TCL_INCLUDE)
$(TCLCXXSHARED) $(CFLAGS) $(OBJS) $(IOBJS) $(TCL_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(LIBPREFIX)$(TARGET)$(TCL_SO)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
tcl_version:
echo 'puts $$tcl_version;exit 0' | $(TCLSH)
# -----------------------------------------------------------------
# Cleaning the Tcl examples
# -----------------------------------------------------------------
@ -176,6 +184,7 @@ PERL5_INCLUDE= @PERL5EXT@
# Extra Perl specific dynamic linking options
PERL5_DLNK = @PERL5DYNAMICLINKING@
PERL5_CCFLAGS = @PERL5CCFLAGS@
PERL = @PERL@
# ----------------------------------------------------------------
# Build a Perl5 dynamically loadable module (C)
@ -216,6 +225,13 @@ perl5_static_cpp: $(SRCS)
$(SWIG) -perl5 -c++ -static -lperlmain.i $(SWIGOPT) $(INTERFACEPATH)
$(CXX) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDES) -I$(PERL5_INCLUDE) $(PERL5_LIB) $(LIBS) -o $(TARGET)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
perl5_version:
$(PERL) -v | grep "This is"
# -----------------------------------------------------------------
# Cleaning the Perl5 examples
# -----------------------------------------------------------------
@ -315,6 +331,13 @@ runme3.py: runme.py
cp $< $@
$(PY2TO3) -w $@ >/dev/null 2>&1
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
python_version:
$(PYTHON) -V
# -----------------------------------------------------------------
# Cleaning the python examples
# -----------------------------------------------------------------
@ -368,6 +391,13 @@ OCTSCRIPT = runme.m
octave_run: $(OCTSCRIPT)
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH OCTAVE_PATH=$(srcdir):$$OCTAVE_PATH $(OCTAVE) $(OCTSCRIPT) >/dev/null
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
octave_version:
$(OCTAVE) --version | grep -i version
# -----------------------------------------------------------------
# Cleaning the octave examples
# -----------------------------------------------------------------
@ -383,6 +413,7 @@ octave_clean:
##################################################################
# Make sure these locate your Guile installation
GUILE = @GUILE@
GUILE_INCLUDE = @GUILEINCLUDE@
GUILE_LIB = @GUILELIB@
GUILE_SO = @GUILE_SO@
@ -459,6 +490,13 @@ guile_simple_cpp: $(SRCS)
$(CXX) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDES) \
$(GUILE_INCLUDE) $(LIBS) -L$(GUILE_LIB) $(GUILE_LIBOPTS) -o $(TARGET)-guile
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
guile_version:
$(GUILE) --version
# -----------------------------------------------------------------
# Cleaning the Guile examples
# -----------------------------------------------------------------
@ -484,6 +522,8 @@ JAVASO =@JAVASO@
JAVALDSHARED = @JAVALDSHARED@
JAVACXXSHARED = @JAVACXXSHARED@
JAVACFLAGS = @JAVACFLAGS@
JAVA = @JAVA@
JAVAC = @JAVAC@
# ----------------------------------------------------------------
# Build a java dynamically loadable module (C)
@ -503,6 +543,14 @@ java_cpp: $(SRCS)
$(CXX) -c $(CCSHARED) $(CFLAGS) $(JAVACFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDES) $(JAVA_INCLUDE)
$(JAVACXXSHARED) $(CFLAGS) $(OBJS) $(IOBJS) $(JAVA_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(JAVA_LIBPREFIX)$(TARGET)$(JAVASO)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
java_version:
$(JAVA) -version
$(JAVAC) -version || echo "unknown javac version"
# -----------------------------------------------------------------
# Cleaning the java examples
# -----------------------------------------------------------------
@ -512,6 +560,17 @@ java_clean:
rm -f core @EXTRA_CLEAN@
rm -f *.@OBJEXT@ *@JAVASO@
##################################################################
##### ANDROID ######
##################################################################
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
android_version:
adb version
##################################################################
##### MODULA3 ######
##################################################################
@ -530,6 +589,13 @@ modula3: $(SRCS)
modula3_cpp: $(SRCS)
$(SWIG) -modula3 -c++ $(SWIGOPT) $(INTERFACEPATH)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
modula3_version:
echo "Unknown modula3 version"
# -----------------------------------------------------------------
# Cleaning the modula3 examples
# -----------------------------------------------------------------
@ -543,6 +609,7 @@ modula3_clean:
##### MZSCHEME ######
##################################################################
MZSCHEME = mzscheme
MZC = @MZC@
MZDYNOBJ = @MZDYNOBJ@
MZSCHEME_SO = @MZSCHEME_SO@
@ -561,6 +628,14 @@ mzscheme_cpp: $(SRCS)
$(COMPILETOOL) $(MZC) `echo $(INCLUDES) | sed 's/-I/++ccf -I/g'` --cc $(ICXXSRCS) $(SRCS) $(CXXSRCS)
$(CXXSHARED) $(CFLAGS) -o $(LIBPREFIX)$(TARGET)$(MZSCHEME_SO) $(OBJS) $(IOBJS) $(MZDYNOBJ) $(CPP_DLLIBS)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
mzscheme_version:
$(MZSCHEME) -v
$(MZC) -v
# -----------------------------------------------------------------
# Cleaning the mzscheme examples
# -----------------------------------------------------------------
@ -697,6 +772,17 @@ ocaml_dynamic_cpp: $(SRCS)
-package dl -linkpkg \
$(INTERFACE:%.i=%.cmo) $(PROGFILE:%.ml=%.cmo) -cc '$(CXX) -Wno-write-strings'
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
ocaml_version:
$(OCC) -version
# -----------------------------------------------------------------
# Cleaning the Ocaml examples
# -----------------------------------------------------------------
ocaml_clean:
rm -f *_wrap* *~ .~* *.cmo *.cmi $(MLFILE) $(MLFILE)i swig.mli swig.cmi swig.ml swig.cmo swigp4.ml swigp4.cmo
rm -f core @EXTRA_CLEAN@
@ -711,6 +797,7 @@ RUBY_CFLAGS= @RUBYCCDLFLAGS@ $(DEFS)
RUBY_INCLUDE= @RUBYINCLUDE@
RUBY_LIB = @RUBYLIB@
RUBY_DLNK = @RUBYDYNAMICLINKING@
RUBY = @RUBY@
# ----------------------------------------------------------------
# Build a C dynamically loadable module
@ -750,6 +837,13 @@ ruby_cpp_static: $(SRCS)
$(RUBY_INCLUDE) $(LIBS) -L$(RUBY_LIB) $(RUBY_LIBOPTS) -o $(TARGET)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
ruby_version:
$(RUBY) -v
# -----------------------------------------------------------------
# Cleaning the Ruby examples
# -----------------------------------------------------------------
@ -794,6 +888,13 @@ PHPSCRIPT ?= runme.php
php_run:
$(RUNTOOL) $(PHP) -n -q -d extension_dir=. -d safe_mode=Off $(PHPSCRIPT)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
php_version:
$(PHP) -v
# -----------------------------------------------------------------
# Cleaning the PHP examples
# -----------------------------------------------------------------
@ -808,6 +909,7 @@ php_clean:
##################################################################
# Make sure these locate your Pike installation
PIKE = pike
PIKE_CFLAGS = @PIKECCDLFLAGS@ -DHAVE_CONFIG_H
PIKE_INCLUDE = @PIKEINCLUDE@
PIKE_LIB = @PIKELIB@
@ -850,6 +952,13 @@ pike_cpp_static: $(SRCS)
$(CXX) $(CFLAGS) $(PIKE_CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDES) \
$(PIKE_INCLUDE) $(LIBS) -L$(PIKE_LIB) $(PIKE_LIBOPTS) -o $(TARGET)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
pike_version:
$(PIKE) -v
# -----------------------------------------------------------------
# Cleaning the Pike examples
# -----------------------------------------------------------------
@ -951,6 +1060,17 @@ chicken_cpp:
chicken_externalhdr:
$(SWIG) -chicken -external-runtime $(TARGET)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
chicken_version:
$(CHICKEN) -version
# -----------------------------------------------------------------
# Cleaning the CHICKEN examples
# -----------------------------------------------------------------
chicken_clean:
rm -f *_wrap* *~ .~* *_chicken*
rm -f core @EXTRA_CLEAN@
@ -993,6 +1113,13 @@ csharp_cpp: $(SRCS)
csharp_compile: $(SRCS)
$(COMPILETOOL) $(CSHARPCOMPILER) $(CSHARPFLAGS) $(CSHARPSRCS)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
csharp_version:
$(CSHARPCOMPILER) --version || echo "Unknown C# compiler version"
# -----------------------------------------------------------------
# Cleaning the CSharp examples
# -----------------------------------------------------------------
@ -1013,6 +1140,7 @@ LUA_LIB = @LUALINK@
# Extra specific dynamic linking options
LUA_DLNK = @LUADYNAMICLINKING@
LUA_SO = @LUA_SO@
LUA = @LUABIN@
# Extra code for lua static link
LUA_INTERP = ../lua.c
@ -1049,6 +1177,13 @@ lua_static_cpp: $(SRCS)
$(CXX) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(LUA_INTERP) $(INCLUDES) \
$(LUA_INCLUDE) $(LIBS) $(LUA_LIB) -o $(TARGET)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
lua_version:
$(LUA) -v
# -----------------------------------------------------------------
# Cleaning the lua examples
# -----------------------------------------------------------------
@ -1062,6 +1197,8 @@ lua_clean:
##### ALLEGRO CL ######
##################################################################
ALLEGROCL = @ALLEGROCLBIN@
allegrocl: $(SRCS)
$(SWIG) -allegrocl -cwrap $(SWIGOPT) $(INTERFACEPATH)
$(CC) -c $(CCSHARED) $(CFLAGS) $(ISRCS) $(INCLUDES) $(SRCS)
@ -1072,6 +1209,17 @@ allegrocl_cpp: $(SRCS)
$(CXX) -c $(CCSHARED) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDES)
$(CXXSHARED) $(CFLAGS) $(OBJS) $(IOBJS) $(LIBS) $(CPP_DLLIBS) -o $(LIBPREFIX)$(TARGET)$(SO)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
allegrocl_version:
$(ALLEGROCL) --version
# -----------------------------------------------------------------
# Cleaning the ALLEGRO CL examples
# -----------------------------------------------------------------
allegrocl_clean:
rm -f *_wrap* *~ .~*
rm -f core @EXTRA_CLEAN@
@ -1081,12 +1229,25 @@ allegrocl_clean:
##### CLISP ######
##################################################################
CLISP = @CLISPBIN@
clisp: $(SRCS)
$(SWIG) -clisp $(SWIGOPT) $(INTERFACEPATH)
clisp_cpp: $(SRCS)
$(SWIG) -c++ -clisp $(SWIGOPT) $(INTERFACEPATH)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
clisp_version:
$(CLISP) --version
# -----------------------------------------------------------------
# Cleaning the CLISP examples
# -----------------------------------------------------------------
clisp_clean:
rm -f *_wrap* *~ .~*
rm -f core @EXTRA_CLEAN@
@ -1096,6 +1257,8 @@ clisp_clean:
##### CFFI ######
##################################################################
CFFI = @CFFIBIN@
cffi: $(SRCS)
$(SWIG) -cffi $(SWIGOPT) $(INTERFACEPATH)
# $(CC) -c $(CCSHARED) $(CFLAGS) $(ISRCS) $(INCLUDES) $(SRCS)
@ -1106,6 +1269,17 @@ cffi_cpp: $(SRCS)
$(CXX) -c $(CCSHARED) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDES)
$(CXXSHARED) $(CFLAGS) $(OBJS) $(IOBJS) $(LIBS) $(CPP_DLLIBS) -o $(LIBPREFIX)$(TARGET)$(SO)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
cffi_version:
$(CFFI) --version
# -----------------------------------------------------------------
# Cleaning the CFFI examples
# -----------------------------------------------------------------
cffi_clean:
rm -f *_wrap* *~ .~*
rm -f core @EXTRA_CLEAN@
@ -1115,6 +1289,8 @@ cffi_clean:
##### UFFI ######
##################################################################
UFFI = @UFFIBIN@
uffi: $(SRCS)
$(SWIG) -uffi $(SWIGOPT) $(INTERFACEPATH)
# $(CC) -c $(CCSHARED) $(CFLAGS) $(ISRCS) $(INCLUDES) $(SRCS)
@ -1125,6 +1301,17 @@ uffi_cpp: $(SRCS)
# $(CXX) -c $(CCSHARED) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDES)
# $(CXXSHARED) $(CFLAGS) $(OBJS) $(IOBJS) $(LIBS) $(CPP_DLLIBS) -o $(LIBPREFIX)$(TARGET)$(SO)
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
uffi_version:
$(UFFI) --version
# -----------------------------------------------------------------
# Cleaning the UFFI examples
# -----------------------------------------------------------------
uffi_clean:
rm -f *_wrap* *~ .~*
rm -f core @EXTRA_CLEAN@
@ -1143,6 +1330,10 @@ R_CFLAGS=-fPIC
# we get -fPIC
# CMD SHLIB stdout is piped to /dev/null to prevent echo of compiler command
# ----------------------------------------------------------------
# Build a R dynamically loadable module (C)
# ----------------------------------------------------------------
r: $(SRCS)
$(SWIG) -r $(SWIGOPT) $(INTERFACEPATH)
ifneq ($(SRCS),)
@ -1150,6 +1341,10 @@ ifneq ($(SRCS),)
endif
+( PKG_CPPFLAGS="$(INCLUDES)" $(COMPILETOOL) $(R) CMD SHLIB -o $(LIBPREFIX)$(TARGET)$(SO) $(ISRCS) $(OBJS) > /dev/null )
# ----------------------------------------------------------------
# Build a R dynamically loadable module (C++)
# ----------------------------------------------------------------
r_cpp: $(CXXSRCS)
$(SWIG) -c++ -r $(SWIGOPT) -o $(RCXXSRCS) $(INTERFACEPATH)
ifneq ($(CXXSRCS),)
@ -1157,6 +1352,17 @@ ifneq ($(CXXSRCS),)
endif
+( PKG_CPPFLAGS="$(INCLUDES)" $(COMPILETOOL) $(R) CMD SHLIB -o $(LIBPREFIX)$(TARGET)$(SO) $(RCXXSRCS) $(OBJS) > /dev/null )
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
r_version:
$(R) --version | grep -i version
# -----------------------------------------------------------------
# Cleaning the R examples
# -----------------------------------------------------------------
r_clean:
rm -f *_wrap* *~ .~*
rm -f core @EXTRA_CLEAN@
@ -1172,6 +1378,7 @@ GOGCC = @GOGCC@
GO1 = @GO1@
GOC = @GOC@
GOOPT = @GOOPT@
GOVERSIONOPTION = @GOVERSIONOPTION@
GOSWIGARG = `if $(GOGCC) ; then echo -gccgo; fi`
GOCOMPILEARG = `if $(GOGCC) ; then echo -c -g; elif $(GO1) ; then echo tool $(GOC:c=g) ; fi`
@ -1230,6 +1437,13 @@ go_run: runme.go
fi
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) ./runme
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
go_version:
$(GO) $(GOVERSIONOPTION)
# -----------------------------------------------------------------
# Cleaning the Go examples
# -----------------------------------------------------------------
@ -1291,6 +1505,14 @@ d_compile: $(SRCS)
d_run:
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) ./runme
# -----------------------------------------------------------------
# Version display
# -----------------------------------------------------------------
d_version:
# Needs improvement!
echo D version guess - $(D_VERSION)
# -----------------------------------------------------------------
# Clean the D examples
# -----------------------------------------------------------------

View file

@ -39,7 +39,7 @@ CPP_TEST_CASES =
# a file is found which has _runme.lisp appended after the testcase name.
run_testcase = \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) $(CFFIBIN) -batch -s $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) $(CFFI) -batch -s $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
fi
# Clean: (does nothing, we dont generate extra cffi code)

View file

@ -39,7 +39,7 @@ CPP_TEST_CASES =
# a file is found which has _runme.lisp appended after the testcase name.
run_testcase = \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) $(CLISPBIN) -batch -s $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) $(CLISP) -batch -s $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
fi
# Clean: (does nothing, we dont generate extra clisp code)

View file

@ -39,7 +39,7 @@ CPP_TEST_CASES =
# a file is found which has _runme.lisp appended after the testcase name.
run_testcase = \
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) $(UFFIBIN) -batch -s $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) $(UFFI) -batch -s $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
fi
# Clean: (does nothing, we dont generate extra uffi code)