diff -Nru ocaml-4.02.3/debian/changelog ocaml-4.02.3/debian/changelog --- ocaml-4.02.3/debian/changelog 2016-02-07 09:44:25.000000000 +0000 +++ ocaml-4.02.3/debian/changelog 2016-04-25 14:26:56.000000000 +0000 @@ -1,3 +1,22 @@ +ocaml (4.02.3-6ubuntu2) yakkety; urgency=medium + + * Build with -fPIC on amd64. + + -- Matthias Klose Mon, 25 Apr 2016 16:26:32 +0200 + +ocaml (4.02.3-6ubuntu1) yakkety; urgency=medium + + * Merge with Debian; remaining changes: + - Pass --hash-style=both --as-needed --build-id to the linker. + + -- Matthias Klose Mon, 25 Apr 2016 16:04:30 +0200 + +ocaml (4.02.3-6) unstable; urgency=medium + + * Add x32 support (Closes: #773409) + + -- Stéphane Glondu Tue, 16 Feb 2016 11:34:16 +0100 + ocaml (4.02.3-5ubuntu2) xenial; urgency=medium * No-change rebuild for ncurses6 transition. diff -Nru ocaml-4.02.3/debian/patches/0011-Compatibility-with-x32-architecture.patch ocaml-4.02.3/debian/patches/0011-Compatibility-with-x32-architecture.patch --- ocaml-4.02.3/debian/patches/0011-Compatibility-with-x32-architecture.patch 1970-01-01 00:00:00.000000000 +0000 +++ ocaml-4.02.3/debian/patches/0011-Compatibility-with-x32-architecture.patch 2016-02-16 10:33:07.000000000 +0000 @@ -0,0 +1,49 @@ +From: Stephane Glondu +Date: Tue, 16 Feb 2016 11:29:16 +0100 +Subject: Compatibility with x32 architecture + +Origin: https://github.com/ocaml/ocaml/commit/58c07fa89ec6546cea911f1d2e7803fd7aa75de9 +Bug: http://caml.inria.fr/mantis/view.php?id=6722 +Bug-Debian: https://bugs.debian.org/773409 +--- + byterun/caml/signals_machdep.h | 2 +- + configure | 11 +++++------ + 2 files changed, 6 insertions(+), 7 deletions(-) + +diff --git a/byterun/caml/signals_machdep.h b/byterun/caml/signals_machdep.h +index 4987e2f..ce6bd2e 100644 +--- a/byterun/caml/signals_machdep.h ++++ b/byterun/caml/signals_machdep.h +@@ -16,7 +16,7 @@ + #ifndef CAML_SIGNALS_MACHDEP_H + #define CAML_SIGNALS_MACHDEP_H + +-#if defined(__GNUC__) && defined(__i386__) ++#if defined(__GNUC__) && (defined(__i386__) || (defined(__x86_64__) && defined(__ILP32__))) + + #define Read_and_clear(dst,src) \ + asm("xorl %0, %0; xchgl %0, %1" \ +diff --git a/configure b/configure +index dfcb849..c37a2e5 100755 +--- a/configure ++++ b/configure +@@ -874,14 +874,13 @@ esac + + # Some platforms exist both in 32-bit and 64-bit variants, not distinguished + # by $target. Turn off native code compilation on platforms where 64-bit mode +-# is not supported. (PR#4441) ++# is not supported (PR#4441). ++# Sometimes, it's 32-bit mode that is not supported (PR#6722). + +-if $arch64; then +- case "$arch,$model" in +- sparc,default|power,ppc) ++case "$arch64,$arch,$model" in ++ true,sparc,*|true,power,ppc|false,amd64,*) + arch=none; model=default; system=unknown;; +- esac +-fi ++esac + + if test -z "$ccoption"; then + nativecc="$bytecc" diff -Nru ocaml-4.02.3/debian/patches/pie-on-amd64.diff ocaml-4.02.3/debian/patches/pie-on-amd64.diff --- ocaml-4.02.3/debian/patches/pie-on-amd64.diff 1970-01-01 00:00:00.000000000 +0000 +++ ocaml-4.02.3/debian/patches/pie-on-amd64.diff 2016-04-25 14:30:01.000000000 +0000 @@ -0,0 +1,15 @@ +Index: b/configure +=================================================================== +--- a/configure ++++ b/configure +@@ -1013,6 +1013,10 @@ else + echo "SHARPBANGSCRIPTS=false" >> Makefile + fi + ++case "$arch,$system" in ++ amd64,linux) nativecccompopts="$nativecccompopts -fPIC";; ++esac ++ + # Use 64-bit file offset if possible + + bytecccompopts="$bytecccompopts -D_FILE_OFFSET_BITS=64" diff -Nru ocaml-4.02.3/debian/patches/series ocaml-4.02.3/debian/patches/series --- ocaml-4.02.3/debian/patches/series 2015-10-29 22:17:23.000000000 +0000 +++ ocaml-4.02.3/debian/patches/series 2016-04-25 14:28:56.000000000 +0000 @@ -8,4 +8,6 @@ 0008-Native-backtraces-don-t-work-on-powerpc-and-sparc.patch 0010-Enable-ocamldoc-to-build-reproducible-manpages.patch 0010-Add-a-.file-directive-to-generated-.s-files.patch +0011-Compatibility-with-x32-architecture.patch linker-flags.patch +pie-on-amd64.diff