summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Heim <phreak@gentoo.org>2007-04-22 20:00:56 +0000
committerChristian Heim <phreak@gentoo.org>2007-04-22 20:00:56 +0000
commit198b9d58f0f456d820734f7f2fd0bde10d20780b (patch)
tree7f76a499a085691128441f83eed5c144da63319e /dev-lang
parentStable on ppc64; bug #175245 (diff)
downloadgentoo-2-198b9d58f0f456d820734f7f2fd0bde10d20780b.tar.gz
gentoo-2-198b9d58f0f456d820734f7f2fd0bde10d20780b.tar.bz2
gentoo-2-198b9d58f0f456d820734f7f2fd0bde10d20780b.zip
Restricting FEATURES=test for now, make bootstrap deletes the *.opt files (thanks Matti); Removing the QA_TEXTREL definition, which is only intended for binary packages; Provide a way to compile ocaml on AMD64/hardened.
(Portage version: 2.1.2.4)
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/ocaml/ChangeLog7
-rw-r--r--dev-lang/ocaml/ocaml-3.09.3-r1.ebuild32
2 files changed, 30 insertions, 9 deletions
diff --git a/dev-lang/ocaml/ChangeLog b/dev-lang/ocaml/ChangeLog
index 8d1266cd9ede..8d92cd351df9 100644
--- a/dev-lang/ocaml/ChangeLog
+++ b/dev-lang/ocaml/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for dev-lang/ocaml
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ocaml/ChangeLog,v 1.98 2007/04/22 13:55:57 phreak Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ocaml/ChangeLog,v 1.99 2007/04/22 20:00:56 phreak Exp $
+
+ 22 Apr 2007; Christian Heim <phreak@gentoo.org> ocaml-3.09.3-r1.ebuild:
+ Restricting FEATURES=test for now, make bootstrap deletes the *.opt files
+ (thanks Matti); Removing the QA_TEXTREL definition, which is only intended
+ for binary packages; Provide a way to compile ocaml on AMD64/hardened.
*ocaml-3.09.3-r1 (22 Apr 2007)
diff --git a/dev-lang/ocaml/ocaml-3.09.3-r1.ebuild b/dev-lang/ocaml/ocaml-3.09.3-r1.ebuild
index 79afa3249427..840e521c822d 100644
--- a/dev-lang/ocaml/ocaml-3.09.3-r1.ebuild
+++ b/dev-lang/ocaml/ocaml-3.09.3-r1.ebuild
@@ -1,8 +1,8 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ocaml/ocaml-3.09.3-r1.ebuild,v 1.1 2007/04/22 13:55:57 phreak Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ocaml/ocaml-3.09.3-r1.ebuild,v 1.2 2007/04/22 20:00:56 phreak Exp $
-inherit flag-o-matic eutils multilib pax-utils versionator
+inherit flag-o-matic eutils multilib pax-utils versionator toolchain-funcs
DESCRIPTION="fast modern type-inferring functional programming language descended from the ML (Meta Language) family"
HOMEPAGE="http://www.ocaml.org/"
@@ -16,10 +16,20 @@ IUSE="tk latex"
DEPEND="virtual/libc
tk? ( >=dev-lang/tk-3.3.3 )"
+# ocaml deletes the *.opt files when running bootstrap
+RESTRICT="test"
+
QA_EXECSTACK="/usr/lib/ocaml/compiler-*"
-# This is a crappy way to deal with the textrels, but it keeps stuff simple
-QA_TEXTRELS="usr/bin/ocaml*.opt usr/bin/camlp4*.opt"
+pkg_setup() {
+ # dev-lang/ocaml fails with -fPIC errors due to a "relocation R_X86_64_32S" on AMD64/hardened
+ if use amd64 && gcc-specs-pie ; then
+ echo
+ eerror "${CATEGORY}/${PF} is currently broken on this platform with specfiles injecting -PIE."
+ eerror "Please switch to your \"${CHOST}-$(gcc-fullversion)-hardenednopie\" specfile via gcc-config!"
+ die "Current specfile (${CHOST}-$(gcc-fullversion)) not supported by ${PF}!"
+ fi
+}
src_unpack() {
unpack ${A}
@@ -72,9 +82,9 @@ src_compile() {
fi
}
-src_test() {
- make bootstrap
-}
+#src_test() {
+# make bootstrap
+#}
src_install() {
make BINDIR="${D}"/usr/bin \
@@ -99,7 +109,7 @@ src_install() {
# Turn MPROTECT off for some of the ocaml binaries, since they are trying to
# rewrite the segment (which will obviously fail on systems having
# PAX_MPROTECT enabled).
- pax-mark -m "${D}"//usr/bin/ocamldoc.opt "${D}"/usr/bin/ocamldep.opt \
+ pax-mark -m "${D}"/usr/bin/ocamldoc.opt "${D}"/usr/bin/ocamldep.opt \
"${D}"/usr/bin/ocamllex.opt "${D}"/usr/bin/camlp4r.opt \
"${D}"/usr/bin/camlp4o.opt
@@ -112,6 +122,12 @@ src_install() {
}
pkg_postinst() {
+ if use amd64 && gcc-specs-ssp ; then
+ ewarn
+ ewarn "Make sure, you switch back to the default specfile ${CHOST}-$(gcc-fullversion) via gcc-config!"
+ ewarn
+ fi
+
echo
elog "OCaml is not binary compatible from version to version, so you (may)"
elog "need to rebuild all packages depending on it, that are actually"