I guess the thing to do would be to concentrate on why it isn't linking
on non-x86.
I have found and fixed this issue, the problem was in an autoconf script
a dpatch is attatched.
Unfortunately the regeneration of the auto* stuff in the jpl directory
(which needs to be done to make sure the new version of the autoconf
script in question gets used) seems somewhat problematic. My attempt to
put the regeneration in a dpatch resulted in a dpatch that did not
unapply (and thus breaks building twice in a row though it seems that is
broken anyway). Including the regneration directly in diff.gz should
work but is a bit messy.
I have tried to create modified versions of debian/control and
debian/rules that disable building the java stuff on architectures where
openjdk is not availible (arm and hppa) but my lack of experiance in
that area and some of the complexity in the packages debian/rules (and
the very slow build times in qemu-system-arm) have meant I have not yet
suceeded in that.
#! /bin/sh /usr/share/dpatch/dpatch-run
## 05_fix_java_lib_paths.dpatch by <r...@localhost>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Fix locations for openjdk libs on architectures other than
## DP: i386 and amd64
@DPATCH@
diff -urNad swi-prolog-5.6.63~/packages/jpl/ac/ac_jni_include_dirs.m4
swi-prolog-5.6.63/packages/jpl/ac/ac_jni_include_dirs.m4
--- swi-prolog-5.6.63~/packages/jpl/ac/ac_jni_include_dirs.m4 2009-01-03
22:10:22.000000000 +0000
+++ swi-prolog-5.6.63/packages/jpl/ac/ac_jni_include_dirs.m4 2009-01-03
22:16:10.000000000 +0000
@@ -1,6 +1,12 @@
-dnl Available from the GNU Autoconf Macro Archive at:
+dnl modified by peter green ( plugw...@p10link.net ) to (hopefully) make build
+dnl work with openjdk on all debain architectures it is available on this
may
+dnl well break the build on other systems or with other JVMs
+
+dnl Original version is available from the GNU Autoconf Macro Archive at:
dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_jni_include_dirs.html
dnl
+
+
AC_DEFUN([AC_JNI_INCLUDE_DIR],[
JNI_INCLUDE_DIRS=""
@@ -65,15 +71,18 @@
powerpc)
case "$host_os" in
linux*)
- _JNI_LIBDIRS="bin"
- _JNI_LIBSUBDIR="classic"
+ _JNI_LIBDIRS="lib/ppc"
+ _JNI_LIBSUBDIR="server"
;;
*)
_JNI_LIBDIRS=""
esac
;;
*)
- _JNI_LIBDIRS=""
+ #this fallback option should work on all debian architectures
+ #except x86 amd64 and powerpc which are special cased above
+ _JNI_LIBDIRS="lib/$host_cpu"
+ _JNI_LIBSUBDIR="server"
esac
for d in $_JNI_LIBDIRS; do