[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

bug#216886: ocaml: support for GNU/Hurd and GNU/k*BSD



Hi,

Please find a simplified patch to fix this bug. I have tested it on
kfreebsd-i386, but should work on the Hurd too.

Compared to the previous patch, it only supports i386, as I was not sure
the code is correct for other arches, there is no way to test anyway, as 
such systems don't exist (yet). I also let the configure script set the
system variable to bsd instead of forcing it to linux. I have looked at the
#ifdef tests, and I have seen that concerns only the kernel parts, so bsd
is the right value. That get rid of the ugly parts of the patch concerning
config/auto-aux/stackov.c and asmrun/signals.c. 

Finally the new patch only touch the way the libraries are linked, on such
systems, the other parts of the userland being correctly detected.

It would be nice if this patch could be included in the next upload.

Thanks in advance,
Aurelien

-- 
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian developer           | Electrical Engineer
 `. `'   aurel32@debian.org         | aurelien@aurel32.net
   `-    people.debian.org/~aurel32 | www.aurel32.net
Author: aurel32
Status: in BTS

diff -u ocaml-3.09.0/debian/patches/00list ocaml-3.09.0/debian/patches/00list
--- ocaml-3.09.0/debian/patches/00list
+++ ocaml-3.09.0/debian/patches/00list
@@ -3,0 +4 @@
+kbsd-gnu
diff -u ocaml-3.09.0/debian/control ocaml-3.09.0/debian/control
--- ocaml-3.09.0/debian/control
+++ ocaml-3.09.0/debian/control
@@ -95,7 +95,7 @@
  you do not require any graphical capilities for your runtime.
 
 Package: ocaml-native-compilers
-Architecture: alpha amd64 arm hppa i386 ia64 powerpc sparc
+Architecture: alpha amd64 arm hppa hurd-i386 i386 ia64 kfreebsd-i386 powerpc sparc
 Depends: ocaml-nox (= ${Source-Version}), ocaml-nox-${F:OCamlABI}, gcc, binutils, ${shlibs:Depends}
 Provides: ocaml-best-compilers
 Description: Native code compilers of the ocaml suite (the .opt ones)
--- ocaml-3.09.0.orig/debian/patches/kbsd-gnu.dpatch
+++ ocaml-3.09.0/debian/patches/kbsd-gnu.dpatch
@@ -0,0 +1,32 @@
+#! /bin/sh -e 
+## kbsd-gnu.dpatch by Aurelien Jarno <aurel32@debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Port to GNU/k*BSD
+
+if [ $# -ne 1 ]; then
+    echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
+    exit 1
+fi
+case "$1" in
+    -patch) patch -f --no-backup-if-mismatch -p1 < $0;;
+    -unpatch) patch -f --no-backup-if-mismatch -R -p1 < $0;;	
+    *)
+	echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
+	exit 1;;
+esac
+
+exit 0
+@DPATCH@
+--- ocaml-3.09.0/configure	2005-11-10 00:50:29.000000000 +0100
++++ ocaml-3.09.0/configure	2005-11-10 00:53:37.000000000 +0100
+@@ -480,7 +480,7 @@
+ 
+ if test $withsharedlibs = "yes"; then
+   case "$host" in
+-    *-*-linux-gnu|*-*-linux|*-*-freebsd[3-9]*)
++    *-*-linux-gnu|*-*-linux|*-*-k*bsd*-gnu|*-*-gnu*|*-*-freebsd[3-9]*)
+       sharedcccompopts="-fPIC"
+       mksharedlib="$bytecc -shared -o"
+       bytecclinkopts="$bytecclinkopts -Wl,-E"
+

Reply to: