summaryrefslogtreecommitdiff
path: root/lang/ocaml
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2011-08-15 21:19:33 +0000
committerwiz <wiz@pkgsrc.org>2011-08-15 21:19:33 +0000
commit0d4279b3888a5dc6faa5af0a2115a04b1dc03a47 (patch)
treec948d017dca03a7b851494371943b5598be2ff82 /lang/ocaml
parent3ecafd318108b7b712d4e9dc1d766e375fab392b (diff)
downloadpkgsrc-0d4279b3888a5dc6faa5af0a2115a04b1dc03a47.tar.gz
Fix build with binutils-2.21. From Florian Walpen in PR 45246.
Diffstat (limited to 'lang/ocaml')
-rw-r--r--lang/ocaml/distinfo5
-rw-r--r--lang/ocaml/patches/patch-aa25
-rw-r--r--lang/ocaml/patches/patch-asmcomp_amd64_emit.mlp32
3 files changed, 57 insertions, 5 deletions
diff --git a/lang/ocaml/distinfo b/lang/ocaml/distinfo
index b98088ee0f0..a7c74f50a32 100644
--- a/lang/ocaml/distinfo
+++ b/lang/ocaml/distinfo
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.56 2011/07/26 21:00:24 abs Exp $
+$NetBSD: distinfo,v 1.57 2011/08/15 21:19:33 wiz Exp $
SHA1 (ocaml-3.12.0.tar.bz2) = 33ebbfb1115806f117808f37e40d206c8994943d
RMD160 (ocaml-3.12.0.tar.bz2) = 3d10d5f7431d8200688fa74122e7ed528126a0fa
Size (ocaml-3.12.0.tar.bz2) = 2639049 bytes
-SHA1 (patch-aa) = 858f326fe4db7971a05b3b001c6aecc02ecb2903
+SHA1 (patch-aa) = 1bedb77b12c457966b2a8b86f756535bfef9c496
SHA1 (patch-ab) = e91cbb94c0897ffd02daebc19835a24c257dccd9
SHA1 (patch-ac) = efe8290b394f40d6675fc9d57557c49ddafdb239
SHA1 (patch-ad) = f2c1dcc3c31db31e2484fdea1076692a63252a87
@@ -11,6 +11,7 @@ SHA1 (patch-ag) = f1b751098d3693b92feb26cda87970426bffcaf1
SHA1 (patch-ah) = 3165bbcdb98d09f5161912e51a3131486aa0b488
SHA1 (patch-aj) = 6fd989f1e5dd1263890c14459dd4ab85d75e86cd
SHA1 (patch-an) = 8fb8efecd2b3f0ec6f913a0840f4cfebcbb6161e
+SHA1 (patch-asmcomp_amd64_emit.mlp) = 72854ca013303155573417c6c694d03f9f802ac9
SHA1 (patch-at) = 4b16f924f9bad771ac06137ae0b05ca35276b92a
SHA1 (patch-au) = 1e36bcdf39d40e781273ea51df213db05ff46c89
SHA1 (patch-av) = f56c8924b81a620602bc5a67b0c4459b721701d2
diff --git a/lang/ocaml/patches/patch-aa b/lang/ocaml/patches/patch-aa
index 23103cd9842..2821eb0b6a7 100644
--- a/lang/ocaml/patches/patch-aa
+++ b/lang/ocaml/patches/patch-aa
@@ -1,8 +1,11 @@
-$NetBSD: patch-aa,v 1.8 2007/09/14 15:34:10 adam Exp $
+$NetBSD: patch-aa,v 1.9 2011/08/15 21:19:33 wiz Exp $
---- asmcomp/i386/emit.mlp.orig 2007-03-07 10:14:29.000000000 +0100
+Second chunk: fix build with binutils-2.21.
+http://caml.inria.fr/mantis/view.php?id=5237
+
+--- asmcomp/i386/emit.mlp.orig 2010-01-20 16:26:46 +0000
+++ asmcomp/i386/emit.mlp
-@@ -860,7 +860,7 @@ let emit_profile () =
+@@ -861,7 +861,7 @@ let emit_profile () =
` movl %esp, %ebp\n`;
` pushl %ecx\n`;
` pushl %edx\n`;
@@ -11,3 +14,19 @@ $NetBSD: patch-aa,v 1.8 2007/09/14 15:34:10 adam Exp $
` popl %edx\n`;
` popl %ecx\n`;
` popl %eax\n`
+@@ -905,12 +905,12 @@ let fundecl fundecl =
+ emit_all true fundecl.fun_body;
+ List.iter emit_call_gc !call_gc_sites;
+ emit_call_bound_errors ();
+- List.iter emit_float_constant !float_constants;
+- match Config.system with
++ begin match Config.system with
+ "linux_elf" | "bsd_elf" | "gnu" ->
+ ` .type {emit_symbol fundecl.fun_name},@function\n`;
+ ` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n`
+- | _ -> ()
++ | _ -> () end;
++ List.iter emit_float_constant !float_constants
+
+
+ (* Emission of data *)
diff --git a/lang/ocaml/patches/patch-asmcomp_amd64_emit.mlp b/lang/ocaml/patches/patch-asmcomp_amd64_emit.mlp
new file mode 100644
index 00000000000..73ad97c4620
--- /dev/null
+++ b/lang/ocaml/patches/patch-asmcomp_amd64_emit.mlp
@@ -0,0 +1,32 @@
+$NetBSD: patch-asmcomp_amd64_emit.mlp,v 1.1 2011/08/15 21:19:33 wiz Exp $
+
+Fix build with binutils-2.21.
+http://caml.inria.fr/mantis/view.php?id=5237
+
+--- asmcomp/amd64/emit.mlp.orig 2010-06-02 08:55:35 +0000
++++ asmcomp/amd64/emit.mlp
+@@ -688,17 +688,18 @@ let fundecl fundecl =
+ emit_all true fundecl.fun_body;
+ List.iter emit_call_gc !call_gc_sites;
+ emit_call_bound_errors ();
++ begin match Config.system with
++ "linux" | "gnu" ->
++ ` .type {emit_symbol fundecl.fun_name},@function\n`;
++ ` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n`
++ | _ -> ()
++ end;
+ if !float_constants <> [] then begin
+ if macosx
+ then ` .literal8\n`
+ else ` .section .rodata.cst8,\"a\",@progbits\n`;
+ List.iter emit_float_constant !float_constants
+- end;
+- match Config.system with
+- "linux" | "gnu" ->
+- ` .type {emit_symbol fundecl.fun_name},@function\n`;
+- ` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n`
+- | _ -> ()
++ end
+
+ (* Emission of data *)
+