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

Reply via email to