[Pkg-ocaml-maint-commits] [SCM] jocaml packaging branch, master, updated. debian/3.12.0-1-8-g3217567

Mehdi Dogguy mehdi at debian.org
Tue Nov 1 22:09:26 UTC 2011


The following commit has been merged in the master branch:
commit 9b318d785931dc6b32f088af69b48d3ef66dba6d
Author: Mehdi Dogguy <mehdi at debian.org>
Date:   Tue Nov 1 22:23:06 2011 +0100

    Add new patches from src:ocaml

diff --git a/debian/changelog b/debian/changelog
index 1225bbe..920cf5c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,8 +2,14 @@ jocaml (3.12.1-1) UNRELEASED; urgency=low
 
   * New upstream release
   * Refresh patches
-    - Remvove 0003-Fix-ocamlopt-w.r.t.-binutils-2.21.patch which was
-      integrated into this latest release.
+    - Remove patches integrated into this latest release:
+      + 0003-Fix-ocamlopt-w.r.t.-binutils-2.21.patch
+    - New patches (from OCaml package):
+      + 0004-ocamlopt-arm-add-.type-directive-for-code-symbols.patch
+      + 0005-Add-support-for-ENOTSUP.patch
+      + 0006-Do-not-add-R-dir-in-X11-link-options-on-GNU-kFreeBSD.patch
+    - Replace 0003-Natdynlink-works-on-powerpc.patch with a more complete
+      patch 0003-Natdynlink-works-on-powerpc-and-hurd-i386.patch
 
  -- Mehdi Dogguy <mehdi at debian.org>  Tue, 01 Nov 2011 22:19:55 +0100
 
diff --git a/debian/patches/0003-Natdynlink-works-on-powerpc-and-hurd-i386.patch b/debian/patches/0003-Natdynlink-works-on-powerpc-and-hurd-i386.patch
new file mode 100644
index 0000000..2034c6c
--- /dev/null
+++ b/debian/patches/0003-Natdynlink-works-on-powerpc-and-hurd-i386.patch
@@ -0,0 +1,36 @@
+From: Stephane Glondu <steph at glondu.net>
+Date: Sat, 16 Apr 2011 23:41:23 +0200
+Subject: [PATCH] Natdynlink works on powerpc and hurd-i386
+
+Rationale: ssreflect used to work with natdynlink on powerpc and hurd
+with ocaml 3.11.2 / coq 8.2...
+
+Note: there is no native compiler for powerpc64! This must be a
+typo...
+
+Signed-off-by: Stephane Glondu <steph at glondu.net>
+---
+ configure |    3 ++-
+ 1 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/configure b/configure
+index 1cdf960..eb32dc0 100755
+--- a/configure
++++ b/configure
+@@ -651,13 +651,14 @@ if test $withsharedlibs = "yes"; then
+   case "$host" in
+     *-*-cygwin*)                  natdynlink=true;;
+     i[3456]86-*-linux*)           natdynlink=true;;
++    i[3456]86-*-gnu*)             natdynlink=true;;
+     x86_64-*-linux*)              natdynlink=true;;
+     i[3456]86-*-darwin10.*)
+       if test $arch64 == true; then
+         natdynlink=true
+       fi;;
+     i[3456]86-*-darwin[89]*)      natdynlink=true;;
+-    powerpc64-*-linux*)           natdynlink=true;;
++    powerpc-*-linux*)             natdynlink=true;;
+     sparc-*-linux*)               natdynlink=true;;
+     i686-*-kfreebsd*)             natdynlink=true;;
+     x86_64-*-kfreebsd*)           natdynlink=true;;
+-- 
diff --git a/debian/patches/0003-Natdynlink-works-on-powerpc.patch b/debian/patches/0003-Natdynlink-works-on-powerpc.patch
deleted file mode 100644
index b17a5be..0000000
--- a/debian/patches/0003-Natdynlink-works-on-powerpc.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Stephane Glondu <steph at glondu.net>
-Date: Sat, 16 Apr 2011 23:41:23 +0200
-Subject: [PATCH] Natdynlink works on powerpc
-
-Rationale: ssreflect used to work with natdynlink on powerpc with
-ocaml 3.11.2 / coq 8.2... and there is no native compiler for
-powerpc64! This must be a typo...
-
-Signed-off-by: Stephane Glondu <steph at glondu.net>
----
- configure |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/configure b/configure
-index 1cdf960..2eef8d4 100755
---- a/configure
-+++ b/configure
-@@ -657,7 +657,7 @@ if test $withsharedlibs = "yes"; then
-         natdynlink=true
-       fi;;
-     i[3456]86-*-darwin[89]*)      natdynlink=true;;
--    powerpc64-*-linux*)           natdynlink=true;;
-+    powerpc-*-linux*)           natdynlink=true;;
-     sparc-*-linux*)               natdynlink=true;;
-     i686-*-kfreebsd*)             natdynlink=true;;
-     x86_64-*-kfreebsd*)           natdynlink=true;;
--- 
diff --git a/debian/patches/0004-ocamlopt-arm-add-.type-directive-for-code-symbols.patch b/debian/patches/0004-ocamlopt-arm-add-.type-directive-for-code-symbols.patch
new file mode 100644
index 0000000..fab7e9c
--- /dev/null
+++ b/debian/patches/0004-ocamlopt-arm-add-.type-directive-for-code-symbols.patch
@@ -0,0 +1,125 @@
+From: Stephane Glondu <steph at glondu.net>
+Date: Fri, 12 Aug 2011 21:13:17 +0200
+Subject: [PATCH] ocamlopt/arm: add .type directive for code symbols
+
+Bug: http://caml.inria.fr/mantis/view.php?id=5336
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/810402
+Signed-off-by: Stephane Glondu <steph at glondu.net>
+---
+ asmcomp/arm/emit.mlp |    1 +
+ asmrun/arm.S         |   12 ++++++++++++
+ 2 files changed, 13 insertions(+), 0 deletions(-)
+
+diff --git a/asmcomp/arm/emit.mlp b/asmcomp/arm/emit.mlp
+index 256ffae..672a9b0 100644
+--- a/asmcomp/arm/emit.mlp
++++ b/asmcomp/arm/emit.mlp
+@@ -556,6 +556,7 @@ let fundecl fundecl =
+   `	.text\n`;
+   `	.align	2\n`;
+   `	.global	{emit_symbol fundecl.fun_name}\n`;
++  `	.type	{emit_symbol fundecl.fun_name}, %function\n`;
+   `{emit_symbol fundecl.fun_name}:\n`;
+   let n = frame_size() in
+   ignore(emit_stack_adjustment "sub" n);
+diff --git a/asmrun/arm.S b/asmrun/arm.S
+index 50314f1..4e493cf 100644
+--- a/asmrun/arm.S
++++ b/asmrun/arm.S
+@@ -24,6 +24,7 @@ alloc_limit     .req    r10
+ /* Allocation functions and GC interface */
+ 
+         .globl caml_call_gc
++        .type caml_call_gc, %function
+ caml_call_gc:
+     /* Record return address and desired size */
+     /* Can use alloc_limit as a temporary since it will be reloaded by
+@@ -41,6 +42,7 @@ caml_call_gc:
+         bx      lr
+ 
+         .globl caml_alloc1
++        .type caml_alloc1, %function
+ caml_alloc1:
+         sub     alloc_ptr, alloc_ptr, #8
+         cmp     alloc_ptr, alloc_limit
+@@ -54,6 +56,7 @@ caml_alloc1:
+         b       caml_alloc1
+ 
+         .globl caml_alloc2
++        .type caml_alloc2, %function
+ caml_alloc2:
+         sub     alloc_ptr, alloc_ptr, #12
+         cmp     alloc_ptr, alloc_limit
+@@ -67,6 +70,7 @@ caml_alloc2:
+         b       caml_alloc2
+ 
+         .globl caml_alloc3
++        .type caml_alloc3, %function
+ caml_alloc3:
+         sub     alloc_ptr, alloc_ptr, #16
+         cmp     alloc_ptr, alloc_limit
+@@ -80,6 +84,7 @@ caml_alloc3:
+         b       caml_alloc3
+ 
+         .globl caml_allocN
++        .type caml_allocN, %function
+ caml_allocN:
+         sub     alloc_ptr, alloc_ptr, r12
+         cmp     alloc_ptr, alloc_limit
+@@ -134,6 +139,7 @@ caml_allocN:
+ /* Function to call is in r12 */
+ 
+         .globl caml_c_call
++        .type caml_c_call, %function
+ caml_c_call:
+     /* Preserve return address in callee-save register r4 */
+         mov     r4, lr
+@@ -160,6 +166,7 @@ caml_c_call:
+ /* Start the Caml program */
+ 
+         .globl caml_start_program
++        .type caml_start_program, %function
+ caml_start_program:
+         ldr     r12, .Lcaml_program
+ 
+@@ -235,6 +242,7 @@ caml_start_program:
+ /* Raise an exception from C */
+ 
+         .globl caml_raise_exception
++        .type caml_raise_exception, %function
+ caml_raise_exception:
+     /* Reload Caml allocation pointers */
+         ldr     r12, .Lcaml_young_ptr
+@@ -250,6 +258,7 @@ caml_raise_exception:
+ /* Callback from C to Caml */
+ 
+         .globl caml_callback_exn
++        .type caml_callback_exn, %function
+ caml_callback_exn:
+     /* Initial shuffling of arguments (r0 = closure, r1 = first arg) */
+         mov     r12, r0
+@@ -259,6 +268,7 @@ caml_callback_exn:
+         b       .Ljump_to_caml
+ 
+         .globl caml_callback2_exn
++        .type caml_callback2_exn, %function
+ caml_callback2_exn:
+     /* Initial shuffling of arguments (r0 = closure, r1 = arg1, r2 = arg2) */
+         mov     r12, r0
+@@ -269,6 +279,7 @@ caml_callback2_exn:
+         b       .Ljump_to_caml
+ 
+         .globl caml_callback3_exn
++        .type caml_callback3_exn, %function
+ caml_callback3_exn:
+     /* Initial shuffling of arguments */
+     /* (r0 = closure, r1 = arg1, r2 = arg2, r3 = arg3) */
+@@ -281,6 +292,7 @@ caml_callback3_exn:
+         b       .Ljump_to_caml
+ 
+         .globl caml_ml_array_bound_error
++        .type caml_ml_array_bound_error, %function
+ caml_ml_array_bound_error:
+     /* Load address of [caml_array_bound_error] in r12 */
+         ldr     r12, .Lcaml_array_bound_error
+-- 
diff --git a/debian/patches/0005-Add-support-for-ENOTSUP.patch b/debian/patches/0005-Add-support-for-ENOTSUP.patch
new file mode 100644
index 0000000..1b55e29
--- /dev/null
+++ b/debian/patches/0005-Add-support-for-ENOTSUP.patch
@@ -0,0 +1,49 @@
+From: Samuel Thibault <sthibault at debian.org>
+Date: Tue, 1 Nov 2011 13:48:38 +0100
+Subject: [PATCH] Add support for ENOTSUP
+
+On some systems such as Solaris or GNU/Hurd, ENOTSUP and EOPNOSUPP do
+not have the same value, but ocaml code only deals with EOPNOSUPP, and
+thus ocaml applications only handle the EOPNOSUPP case. The attached
+patch fixes it by making ocaml convert ENOTSUP errors into EOPNOSUPP
+errors.
+
+This patch fixes omake build on hurd-i386.
+
+Bug: http://caml.inria.fr/mantis/view.php?id=5382
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=646372
+Signed-off-by: Stephane Glondu <steph at glondu.net>
+---
+ otherlibs/unix/unixsupport.c |   11 ++++++++++-
+ 1 files changed, 10 insertions(+), 1 deletions(-)
+
+diff --git a/otherlibs/unix/unixsupport.c b/otherlibs/unix/unixsupport.c
+index adfd6e8..ab22aa1 100644
+--- a/otherlibs/unix/unixsupport.c
++++ b/otherlibs/unix/unixsupport.c
+@@ -165,7 +165,11 @@
+ #define ESOCKTNOSUPPORT (-1)
+ #endif
+ #ifndef EOPNOTSUPP
+-#define EOPNOTSUPP (-1)
++#  ifdef ENOTSUP
++#    define EOPNOTSUPP ENOTSUP
++#  else
++#    define EOPNOTSUPP (-1)
++#  endif
+ #endif
+ #ifndef EPFNOSUPPORT
+ #define EPFNOSUPPORT (-1)
+@@ -252,6 +256,11 @@ value unix_error_of_code (int errcode)
+   int errconstr;
+   value err;
+ 
++#if defined(ENOTSUP) && (EOPNOTSUPP != ENOTSUP)
++  if (errcode == ENOTSUP)
++    errcode = EOPNOTSUPP;
++#endif
++
+   errconstr =
+       cst_to_constr(errcode, error_table, sizeof(error_table)/sizeof(int), -1);
+   if (errconstr == Val_int(-1)) {
+-- 
diff --git a/debian/patches/0006-Do-not-add-R-dir-in-X11-link-options-on-GNU-kFreeBSD.patch b/debian/patches/0006-Do-not-add-R-dir-in-X11-link-options-on-GNU-kFreeBSD.patch
new file mode 100644
index 0000000..6d6ed51
--- /dev/null
+++ b/debian/patches/0006-Do-not-add-R-dir-in-X11-link-options-on-GNU-kFreeBSD.patch
@@ -0,0 +1,23 @@
+From: Stephane Glondu <steph at glondu.net>
+Date: Tue, 1 Nov 2011 15:28:15 +0100
+Subject: [PATCH] Do not add -R$dir in X11 link options on GNU/kFreeBSD
+
+Signed-off-by: Stephane Glondu <steph at glondu.net>
+Bug: http://caml.inria.fr/mantis/view.php?id=5393
+---
+ configure |    1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/configure b/configure
+index eb32dc0..7bcbdc0 100755
+--- a/configure
++++ b/configure
+@@ -1406,6 +1406,7 @@ do
+     else
+       x11_libs="-L$dir"
+       case "$host" in
++        *-kfreebsd*-gnu) x11_link="-L$dir -lX11";;
+         *-*-*bsd*) x11_link="-R$dir -L$dir -lX11";;
+         *) x11_link="-L$dir -lX11";;
+       esac
+-- 
diff --git a/debian/patches/series b/debian/patches/series
index 4307fe0..0a5e2db 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,6 @@
 0001-Replace-Otyp_proc-with-Otyp_stuff-to-make-outcometre.patch
 0002-Add-option-v-to-expunge-to-select-modules-to-filter-.patch
-0003-Natdynlink-works-on-powerpc.patch
+0003-Natdynlink-works-on-powerpc-and-hurd-i386.patch
+0004-ocamlopt-arm-add-.type-directive-for-code-symbols.patch
+0005-Add-support-for-ENOTSUP.patch
+0006-Do-not-add-R-dir-in-X11-link-options-on-GNU-kFreeBSD.patch

-- 
jocaml packaging



More information about the Pkg-ocaml-maint-commits mailing list