summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2007-05-15 09:37:31 +0000
committerAlexis Ballier <aballier@gentoo.org>2007-05-15 09:37:31 +0000
commitd494a5db9b6751473cbd13231e154243ce7820b7 (patch)
treebe8d5d8e2266bb9b88b1ec4b3f16e3a07e74c147 /dev-lang/ocaml/files
parentPrepare for new-style virtual/flim. (diff)
downloadgentoo-2-d494a5db9b6751473cbd13231e154243ce7820b7.tar.gz
gentoo-2-d494a5db9b6751473cbd13231e154243ce7820b7.tar.bz2
gentoo-2-d494a5db9b6751473cbd13231e154243ce7820b7.zip
Optimize ocamlp4 for size on hppa, bug #178256
(Portage version: 2.1.2.7)
Diffstat (limited to 'dev-lang/ocaml/files')
-rw-r--r--dev-lang/ocaml/files/ocaml-3.09.3-hppa-optimize-for-size-ocamlp4.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/dev-lang/ocaml/files/ocaml-3.09.3-hppa-optimize-for-size-ocamlp4.patch b/dev-lang/ocaml/files/ocaml-3.09.3-hppa-optimize-for-size-ocamlp4.patch
new file mode 100644
index 000000000000..3a9aed3e4c16
--- /dev/null
+++ b/dev-lang/ocaml/files/ocaml-3.09.3-hppa-optimize-for-size-ocamlp4.patch
@@ -0,0 +1,25 @@
+Ocaml native code generation for hppa has a bug
+It can produce too big assembler files (>64k) that are invalid
+See bug : http://bugs.gentoo.org/show_bug.cgi?id=178256
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=342704
+http://caml.inria.fr/mantis/view.php?id=4147
+http://caml.inria.fr/mantis/view.php?id=3937
+
+This bug seems to have always existed but was never encountered
+In 3.09 releases, ocamlp4 has grown bigger and bigger and triggers it
+We just tell ocamlopt to optimize for size rather than for speed
+and the produced assembler is thus valid...
+
+Index: ocaml-3.09.3-patched/camlp4/config/Makefile.tpl
+===================================================================
+--- ocaml-3.09.3-patched.orig/camlp4/config/Makefile.tpl
++++ ocaml-3.09.3-patched/camlp4/config/Makefile.tpl
+@@ -37,7 +37,7 @@ TEST_DIRECTORY=test `basename "$<"` = "$
+ .ml.cmx:
+ @$(TEST_DIRECTORY)
+ @$(CAMLP4_COMM) $< -o $*.ppo
+- $(OCAMLOPT) $(OCAMLCFLAGS) -c -impl $*.ppo
++ $(OCAMLOPT) $(OCAMLCFLAGS) -compact -inline 0 -c -impl $*.ppo
+ rm -f $*.ppo
+
+ .ml.p.cmx: