summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Wright <gienah@gentoo.org>2014-01-18 13:12:48 +0000
committerMark Wright <gienah@gentoo.org>2014-01-18 13:12:48 +0000
commit09abaf3c4b08f137b43d6e90299587e7e4f9b7c2 (patch)
tree1241131007de5b32333e6f5e58c49e6180ac1ea2 /dev-lang/ocaml/files
parentversion bump (diff)
downloadgentoo-2-09abaf3c4b08f137b43d6e90299587e7e4f9b7c2.tar.gz
gentoo-2-09abaf3c4b08f137b43d6e90299587e7e4f9b7c2.tar.bz2
gentoo-2-09abaf3c4b08f137b43d6e90299587e7e4f9b7c2.zip
Fix bug #459512 - dev-lang/ocaml with sys-libs/ncurses[tinfo] - .../work/ocaml-4.00.1/byterun/terminfo.c:54: undefined reference to 'tgetent', thanks to Reinis Danne for reporting (patch by me). Add virtual/pkg-config to DEPEND as the ocaml configure script calls pkg-config. Apply patch from upstream for upstream bug http://caml.inria.fr/mantis/view.php?id=5237 to ocaml-3.11.2.
(Portage version: 2.2.8/cvs/Linux x86_64, signed Manifest commit with key 618E971F)
Diffstat (limited to 'dev-lang/ocaml/files')
-rw-r--r--dev-lang/ocaml/files/ocaml-3.11.2-Fix-ocamlopt-w.r.t.-binutils-2.21.patch66
-rw-r--r--dev-lang/ocaml/files/ocaml-4.01.0-pkg-config-ncurses.patch15
2 files changed, 81 insertions, 0 deletions
diff --git a/dev-lang/ocaml/files/ocaml-3.11.2-Fix-ocamlopt-w.r.t.-binutils-2.21.patch b/dev-lang/ocaml/files/ocaml-3.11.2-Fix-ocamlopt-w.r.t.-binutils-2.21.patch
new file mode 100644
index 000000000000..fa7664cecc98
--- /dev/null
+++ b/dev-lang/ocaml/files/ocaml-3.11.2-Fix-ocamlopt-w.r.t.-binutils-2.21.patch
@@ -0,0 +1,66 @@
+From: Stephane Glondu <steph@glondu.net>
+Date: Tue, 8 Mar 2011 21:17:40 +0100
+Subject: [PATCH] Fix ocamlopt w.r.t. binutils 2.21
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Bug: http://caml.inria.fr/mantis/view.php?id=5237
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=617404
+Authors: Eric Cooper, spiralvoice
+Reviewed-by: Stéphane Glondu <steph@glondu.net>
+---
+ asmcomp/amd64/emit.mlp | 13 +++++++------
+ asmcomp/i386/emit.mlp | 6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/asmcomp/amd64/emit.mlp b/asmcomp/amd64/emit.mlp
+index 4a3f844..525c6e6 100644
+--- a/asmcomp/amd64/emit.mlp
++++ b/asmcomp/amd64/emit.mlp
+@@ -679,17 +679,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 *)
+
+diff --git a/asmcomp/i386/emit.mlp b/asmcomp/i386/emit.mlp
+index 2992f29..0b1252c 100644
+--- a/asmcomp/i386/emit.mlp
++++ b/asmcomp/i386/emit.mlp
+@@ -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/dev-lang/ocaml/files/ocaml-4.01.0-pkg-config-ncurses.patch b/dev-lang/ocaml/files/ocaml-4.01.0-pkg-config-ncurses.patch
new file mode 100644
index 000000000000..b9fa750ff07d
--- /dev/null
+++ b/dev-lang/ocaml/files/ocaml-4.01.0-pkg-config-ncurses.patch
@@ -0,0 +1,15 @@
+--- ocaml-4.01.0-orig/configure 2013-08-23 16:22:36.000000000 +1000
++++ ocaml-4.01.0/configure 2014-01-18 20:06:50.669644267 +1100
+@@ -892,7 +892,11 @@
+ # For the terminfo module
+
+ if test "$withcurses" = "yes"; then
+- for libs in "" "-lcurses" "-ltermcap" "-lcurses -ltermcap" "-lncurses"; do
++ ncurseslibs=""
++ if pkg-config --exists ncurses 2>/dev/null; then
++ ncurseslibs=`pkg-config --libs ncurses`
++ fi
++ for libs in "${ncurseslibs}" "-lcurses" "-ltermcap" "-lcurses -ltermcap" "-lncurses"; do
+ if sh ./hasgot $libs tgetent tgetstr tgetnum tputs; then
+ echo "termcap functions found (with libraries '$libs')"
+ echo "#define HAS_TERMCAP" >> s.h