Hi,
Peter Samuelson wrote:
> The Subversion high-level Java bindings ('javahl') in Debian have gone
> through 3 different compilers (Jikes, Kaffe, and now gcj) and none of
> them could make all the tests pass.
[etc]
Thanks for explaining.
> What is the state of the
> Java build and runtime world? Last I heard, gcj could target some sort
> of native code, not just JVM bytecode. Does that mean it's still
> better than Oracle's offering, or does nobody care?
The subversion packaging takes advantage of that iiuc, so I don't
think it's important.
As Michael mentioned, the default jdk in Debian on most arches is
openjdk now. Looking over the java policy in
/usr/share/doc/java-common/ and http://bugs.debian.org/548755 I am
still left with some questions about how to use it (e.g., where the
"5" comes from in the dependency on java5-runtime-headless and whether
it is is right). So the following it just a sketch.
Next step will be to read over the test and make sure openjdk's answer is
really the right one.
Thanks for keeping subversion in good shape all these years. :)
---
diff --git a/debian/control b/debian/control
index b46834be..b12600b5 100644
--- a/debian/control
+++ b/debian/control
@@ -11,7 +11,7 @@ Build-Depends: debhelper, libneon27-gnutls-dev,
libserf-0-0-dev (>= 0.3.0-0.2),
quilt, doxygen, autotools-dev, autoconf, libtool, swig,
python-all-dev, python-support,
perl, libperl-dev, ruby1.8, ruby1.8-dev,
- gcj-jdk (>= 4:4.4) [!alpha !arm !hppa !m68k !mips !mipsel
!hurd-i386],
+ default-jdk [!alpha !arm !hppa !m68k !mips !mipsel !hurd-i386],
junit [!alpha !arm !hppa !m68k !mips !mipsel !hurd-i386]
Build-Conflicts: libsvn-dev (<< 1.7~)
XS-Python-Version: >= 2.4, << 3.0
@@ -117,7 +117,7 @@ Description: Assorted tools related to Subversion
Package: libsvn-java
Section: java
Architecture: any
-Depends: gij | java5-runtime-headless, libsvn1 (= ${binary:Version}),
${shlibs:Depends}
+Depends: default-jre | java5-runtime-headless, libsvn1 (= ${binary:Version}),
${shlibs:Depends}
Description: Java bindings for Subversion
This is a set of Java classes which provide the functionality of
libsvn, the Subversion libraries. It is useful if you want to, for
diff --git a/debian/patches/java-build b/debian/patches/java-build
index 23a5bbf4..fa7acfdd 100644
--- a/debian/patches/java-build
+++ b/debian/patches/java-build
@@ -16,14 +16,20 @@ javah, symbols in a nested class use _ as a separator
instead of _00024.
[ps, 2010-11-08: Refresh to apply to trunk r1032687 (new makefile
generation system).]
+[jn, 2011-07-26: Allow openjdk, too.]
+
--- a/build/generator/templates/makefile.ezt
+++ b/build/generator/templates/makefile.ezt
-@@ -90,7 +90,8 @@
+@@ -90,7 +90,12 @@
[if-any target.headers][target.varname]_CLASS_FILENAMES =[for
target.header_class_filenames] [target.header_class_filenames][end]
[target.varname]_CLASSES =[for target.header_classes]
[target.header_classes][end]
$([target.varname]_HEADERS): $([target.varname]_CLASS_FILENAMES)
- [target.link_cmd] -d [target.output_dir] -classpath
[target.classes]:$([target.varname]_CLASSPATH) $([target.varname]_CLASSES)
-+ [target.link_cmd] -d [target.output_dir] -classpath
[target.classes]:$([target.varname]_CLASSPATH) -all [target.classes]
++ if [target.link_cmd] -all --help >/dev/null 2>&1; then \
++ [target.link_cmd] -d [target.output_dir] -classpath
[target.classes]:$([target.varname]_CLASSPATH) -all [target.classes]; \
++ else \
++ [target.link_cmd] -d [target.output_dir] -classpath
[target.classes]:$([target.varname]_CLASSPATH) $([target.varname]_CLASSES); \
++ fi
+ cd [target.output_dir]; sed -i s/_00024/_/ *.h
[end][if-any target.sources][target.varname]_SRC =[for target.sources]
[target.sources][end]
$([target.varname]_OBJECTS): $([target.varname]_SRC)
diff --git a/debian/rules b/debian/rules
index 977f3c73..8f35102f 100755
--- a/debian/rules
+++ b/debian/rules
@@ -94,7 +94,7 @@ export DH_OPTIONS
ifdef DEB_OPT_WITH_JAVAHL
# jikes 1.22 cannot compile javahl.
confflags += --enable-javahl --without-jikes \
- --with-jdk=/usr/lib/jvm/java-gcj \
+ --with-jdk=/usr/lib/jvm/default-java \
--with-junit=/usr/share/java/junit.jar
else
DH_OPTIONS += -Nlibsvn-java
--
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]