diff --git a/CHANGES.current b/CHANGES.current index 826b1a2c5..869f37785 100644 --- a/CHANGES.current +++ b/CHANGES.current @@ -8,6 +8,24 @@ Version 3.0.1 (in progress) 2014-05-01: olly [PHP] The generated __isset() method now returns true for read-only properties. +2014-04-24: kwwette + Fix {python|perl5|ruby|tcl}/java examples + + In Lib/gcj/cni.i, for compatibility with newer gcj versions: + + - remove JvAllocObject() which gcj no longer defines, from gcj Changelog: + 2004-04-16 Bryce McKinlay + * gcj/cni.h (JvAllocObject): Remove these obsolete, + undocumented CNI calls. + + - change JvCreateJavaVM() argument from void* to JvVMInitArgs*, from gcj Changelog: + 2005-02-23 Thomas Fitzsimmons + PR libgcj/16923 + ... + (JvCreateJavaVM): Declare vm_args as JvVMInitArgs* rather than void*. + + *** POTENTIAL INCOMPATIBILITY *** + 2014-04-08: wsfulton SF Bug #1366 - Remove duplicate declarations of strtoimax and strtoumax in inttypes.i diff --git a/Examples/perl5/check.list b/Examples/perl5/check.list index 78d45fc0b..dda849311 100644 --- a/Examples/perl5/check.list +++ b/Examples/perl5/check.list @@ -6,6 +6,7 @@ constants2 extend funcptr import +java multimap multiple_inheritance pointer diff --git a/Examples/perl5/java/Makefile b/Examples/perl5/java/Makefile index ff3aab0e7..3a0bb215d 100644 --- a/Examples/perl5/java/Makefile +++ b/Examples/perl5/java/Makefile @@ -8,15 +8,15 @@ LIBS = -lm check: build $(MAKE) -f $(TOP)/Makefile perl5_run -build: Example.class +build: Example.class Example.h $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \ - TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' CXX="gcj" \ + TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' \ CXXSHARED="gcj -fpic -shared Example.class" PERL5_CCFLAGS='' PERL5_EXP='' LIBS="-lstdc++" perl5_cpp clean: $(MAKE) -f $(TOP)/Makefile perl5_clean rm -f *.class Example.h -Example.class: Example.java +Example.class Example.h: Example.java gcj -fPIC -C -c -g Example.java - gcjh Example + gcjh Example.class diff --git a/Examples/python/java/Makefile b/Examples/python/java/Makefile index 12a9b512a..2ce219969 100644 --- a/Examples/python/java/Makefile +++ b/Examples/python/java/Makefile @@ -6,10 +6,11 @@ INTERFACE = example.i LIBS = -lm check: build + $(MAKE) -f $(TOP)/Makefile python_run -build: Example.class +build: Example.class Example.h $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \ - TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' CXX="gcj" \ + TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' \ CXXSHARED="gcj -fpic -shared Example.class" DEFS='' LIBS="-lstdc++" python_cpp clean: @@ -17,6 +18,6 @@ clean: rm -f $(TARGET).py rm -f *.class Example.h -Example.class: Example.java +Example.class Example.h: Example.java gcj -fPIC -C -c -g Example.java - gcjh Example + gcjh Example.class diff --git a/Examples/python/java/example.i b/Examples/python/java/example.i index 13d5b5e70..80e08870f 100644 --- a/Examples/python/java/example.i +++ b/Examples/python/java/example.i @@ -7,3 +7,7 @@ %include Example.h + +%extend Example { + ~Example() {} +} diff --git a/Examples/ruby/java/Makefile b/Examples/ruby/java/Makefile index 4d2493493..a71635baa 100644 --- a/Examples/ruby/java/Makefile +++ b/Examples/ruby/java/Makefile @@ -8,15 +8,15 @@ LIBS = -lm check: build $(MAKE) -f $(TOP)/Makefile ruby_run -build: Example.class +build: Example.class Example.h $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \ - TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' CXX="gcj" \ + TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' \ CXXSHARED="gcj -fpic -shared Example.class" LIBS="-lstdc++" DEFS='' ruby_cpp clean: $(MAKE) -f $(TOP)/Makefile ruby_clean rm -f *.class Example.h -Example.class: Example.java +Example.class Example.h: Example.java gcj -fPIC -C -c -g Example.java - gcjh Example + gcjh Example.class diff --git a/Examples/tcl/java/Makefile b/Examples/tcl/java/Makefile index 3a9212381..a3819ab7c 100644 --- a/Examples/tcl/java/Makefile +++ b/Examples/tcl/java/Makefile @@ -8,18 +8,15 @@ LIBS = -lm check: build $(MAKE) -f $(TOP)/Makefile tcl_run -build: Example.class +build: Example.class Example.h $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \ - TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' CXX="gcj" \ - TCL_CXXSHARED="gcj -fpic -shared Example.class " LIBS="-lstdc++" DEFS='' tcl_cpp + TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' \ + TCLCXXSHARED="gcj -fpic -shared Example.class " LIBS="-lstdc++" DEFS='' tcl_cpp clean: $(MAKE) -f $(TOP)/Makefile tcl_clean rm -f *.class Example.h -run: - tclsh runme.tcl - -Example.class: Example.java +Example.class Example.h: Example.java gcj -fPIC -C -c -g Example.java - gcjh Example + gcjh Example.class diff --git a/Lib/gcj/cni.i b/Lib/gcj/cni.i index b12148e91..fcc56687a 100644 --- a/Lib/gcj/cni.i +++ b/Lib/gcj/cni.i @@ -4,10 +4,6 @@ %include -extern jobject JvAllocObject (jclass cls); - -extern jobject JvAllocObject (jclass cls, jsize sz); - extern void JvInitClass (jclass cls); extern jstring JvAllocString (jsize sz); @@ -30,7 +26,7 @@ extern void *JvMalloc (jsize size); extern void JvFree (void *ptr); -extern jint JvCreateJavaVM (void* vm_args); +extern jint JvCreateJavaVM (JvVMInitArgs* vm_args); extern java::lang::Thread* JvAttachCurrentThread (jstring name, java::lang::ThreadGroup* group); diff --git a/Makefile.in b/Makefile.in index 2eb1326ea..06e4724c7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -252,7 +252,7 @@ java.actionexample: echo "skipping Examples/$(LANGUAGE)/java $(ACTION) (gcj test)"; \ else \ echo $(ACTION)ing Examples/$(LANGUAGE)/java; \ - (cd Examples/$(LANGUAGE)/java && $(MAKE) $(FLAGS) $(chk-set-env) $(ACTION)) \ + (cd Examples/$(LANGUAGE)/java && $(MAKE) $(FLAGS) $(chk-set-env) $(ACTION) RUNPIPE=$(RUNPIPE)) \ fi # Checks testcases in the test-suite excluding those which are known to be broken