summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeri Harris <keri@gentoo.org>2006-12-30 01:32:43 +0000
committerKeri Harris <keri@gentoo.org>2006-12-30 01:32:43 +0000
commitd464fd82c80cfb1402b4789ff4316b94943bf766 (patch)
treea2a8961e646f6c30e60047e6a90ca217d12a6c76 /dev-lang
parentFixed wrong dependencies (bug #152050). Version bump. Dropped old versions. (diff)
downloadgentoo-2-d464fd82c80cfb1402b4789ff4316b94943bf766.tar.gz
gentoo-2-d464fd82c80cfb1402b4789ff4316b94943bf766.tar.bz2
gentoo-2-d464fd82c80cfb1402b4789ff4316b94943bf766.zip
Enable the mercury deep-profiler.
(Portage version: 2.1.2_rc4-r2)
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/mercury/ChangeLog9
-rw-r--r--dev-lang/mercury/files/digest-mercury-0.12.2-r46
-rw-r--r--dev-lang/mercury/files/mercury-0.12.2-profdeep-builtin_throw.patch11
-rw-r--r--dev-lang/mercury/mercury-0.12.2-r4.ebuild122
4 files changed, 147 insertions, 1 deletions
diff --git a/dev-lang/mercury/ChangeLog b/dev-lang/mercury/ChangeLog
index 9044a083aca6..7af89ef6444a 100644
--- a/dev-lang/mercury/ChangeLog
+++ b/dev-lang/mercury/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-lang/mercury
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/mercury/ChangeLog,v 1.65 2006/12/04 08:43:45 keri Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/mercury/ChangeLog,v 1.66 2006/12/30 01:32:43 keri Exp $
+
+*mercury-0.12.2-r4 (30 Dec 2006)
+
+ 30 Dec 2006; keri <keri@gentoo.org>
+ +files/mercury-0.12.2-profdeep-builtin_throw.patch,
+ +mercury-0.12.2-r4.ebuild:
+ Enable the mercury deep-profiler.
*mercury-0.13.1 (04 Dec 2006)
diff --git a/dev-lang/mercury/files/digest-mercury-0.12.2-r4 b/dev-lang/mercury/files/digest-mercury-0.12.2-r4
new file mode 100644
index 000000000000..44b741b8da2b
--- /dev/null
+++ b/dev-lang/mercury/files/digest-mercury-0.12.2-r4
@@ -0,0 +1,6 @@
+MD5 49796cb9f475a0959d13ec7694777a94 mercury-compiler-0.12.2.tar.gz 15074997
+RMD160 227a3e1796d96ad77324d9f1d39efd6be7fce80e mercury-compiler-0.12.2.tar.gz 15074997
+SHA256 7fa1df8030cdc3d4dc848d102ba64bf23c12004461c985290622b81753b89572 mercury-compiler-0.12.2.tar.gz 15074997
+MD5 46099512bf8b9f1a336759845f2737f7 mercury-tests-0.12.2.tar.gz 897454
+RMD160 e7cf515b0d56aff5432c5ec3e535faa907ce2955 mercury-tests-0.12.2.tar.gz 897454
+SHA256 6d3fd92d11ce2a9ce99cfa35990027557d1c70f00a3417639523b6e27f746280 mercury-tests-0.12.2.tar.gz 897454
diff --git a/dev-lang/mercury/files/mercury-0.12.2-profdeep-builtin_throw.patch b/dev-lang/mercury/files/mercury-0.12.2-profdeep-builtin_throw.patch
new file mode 100644
index 000000000000..adb5d69e45c7
--- /dev/null
+++ b/dev-lang/mercury/files/mercury-0.12.2-profdeep-builtin_throw.patch
@@ -0,0 +1,11 @@
+--- mercury-compiler-0.12.2.orig/library/exception.m 2005-01-25 12:16:37.000000000 +1300
++++ mercury-compiler-0.12.2/library/exception.m 2006-12-30 11:59:15.000000000 +1300
+@@ -1939,7 +1939,7 @@
+
+ MR_proc_static_user_no_site(exception, builtin_throw, 1, 0,
+ ""exception.m"", MR_DUMMY_LINE, MR_TRUE);
+-MR_STATIC_USER_PROC_STATIC_PROC_LAYOUT(
++MR_EXTERN_USER_PROC_STATIC_PROC_LAYOUT(
+ MR_DETISM_DET, 1, MR_LONG_LVAL_STACKVAR(1),
+ MR_PREDICATE, exception, builtin_throw, 1, 0);
+ MR_MAKE_USER_INTERNAL_LAYOUT(exception, builtin_throw, 1, 0, 1);
diff --git a/dev-lang/mercury/mercury-0.12.2-r4.ebuild b/dev-lang/mercury/mercury-0.12.2-r4.ebuild
new file mode 100644
index 000000000000..15be89e4effd
--- /dev/null
+++ b/dev-lang/mercury/mercury-0.12.2-r4.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/mercury/mercury-0.12.2-r4.ebuild,v 1.1 2006/12/30 01:32:43 keri Exp $
+
+inherit eutils
+
+MY_P=${PN}-compiler-${PV}
+
+DESCRIPTION="Mercury is a modern general-purpose logic/functional programming language"
+HOMEPAGE="http://www.cs.mu.oz.au/research/mercury/index.html"
+SRC_URI="ftp://ftp.mercury.cs.mu.oz.au/pub/mercury/old-releases/0.12.2/mercury-compiler-0.12.2.tar.gz
+ ftp://ftp.mercury.cs.mu.oz.au/pub/mercury/old-releases/0.12.2/mercury-tests-0.12.2.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+
+IUSE="debug minimal readline threads"
+
+DEPEND="readline? ( sys-libs/readline )"
+
+S="${WORKDIR}"/${MY_P}
+TESTDIR="${WORKDIR}"/${PN}-tests-${PV}
+
+src_unpack() {
+ unpack ${A}
+
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-portage-r3.patch
+ epatch "${FILESDIR}"/${P}-CFLAGS.patch
+ epatch "${FILESDIR}"/${P}-MAKEOPTS.patch
+ epatch "${FILESDIR}"/${P}-bootstrap.patch
+ epatch "${FILESDIR}"/${P}-LIBDIR.patch
+ epatch "${FILESDIR}"/${P}-libgrades.patch
+ epatch "${FILESDIR}"/${P}-parallel-install_grades.patch
+ epatch "${FILESDIR}"/${P}-deep_profiler.patch
+ epatch "${FILESDIR}"/${P}-docs.patch
+
+ cd "${TESTDIR}"
+ epatch "${FILESDIR}"/${P}-tests.patch
+ sed -i -e "s:MDB_DOC:${S}/doc/mdb_doc:" mdbrc
+}
+
+src_compile() {
+ local myconf
+ myconf="--disable-gcc-back-end \
+ --enable-aditi-back-end \
+ --enable-deep-profiler \
+ --disable-dotnet-grades \
+ --disable-java-grades \
+ $(use_enable debug debug-grades) \
+ $(use_enable threads par-grades) \
+ $(use_enable !minimal most-grades) \
+ $(use_with readline) \
+ PACKAGE_VERSION=${PV}"
+
+ einfo "Performing stage 1 bootstrap"
+ econf \
+ ${myconf} \
+ BOOTSTRAP_STAGE="1" \
+ || die "econf stage 1 failed"
+ emake \
+ EXTRA_MLFLAGS=--no-strip \
+ || die "emake stage 1 failed"
+
+ einfo "Performing stage 2 bootstrap"
+ cp "${S}"/compiler/mercury_compile "${S}"/mercury_compile
+ epatch "${FILESDIR}"/${P}-pic_o-dependencies.patch
+ epatch "${FILESDIR}"/${P}-profdeep-builtin_throw.patch
+ econf \
+ ${myconf} \
+ BOOTSTRAP_STAGE="2" \
+ || die "econf stage 2 failed"
+ emake \
+ MERCURY_COMPILER="${S}"/mercury_compile \
+ depend || die "emake stage 2 depend failed"
+ emake \
+ MERCURY_COMPILER="${S}"/mercury_compile \
+ EXTRA_MLFLAGS=--no-strip \
+ || die "emake stage 2 failed"
+
+ einfo "Compiling libgrades"
+ emake \
+ MERCURY_COMPILER="${S}"/compiler/mercury_compile \
+ libgrades || die "emake libgrades failed"
+}
+
+src_test() {
+ cd "${S}"
+ TEST_GRADE=`scripts/ml --print-grade`
+ if [ -d "${S}"/libgrades/${TEST_GRADE} ] ; then
+ TWS="${S}"/libgrades/${TEST_GRADE}
+ cp browser/mer_browser.init "${TWS}"/browser/
+ cp mdbcomp/mer_mdbcomp.init "${TWS}"/mdbcomp/
+ cp runtime/mer_rt.init "${TWS}"/runtime/
+ else
+ TWS="${S}"
+ fi
+
+ cd "${TESTDIR}"
+ PATH="${TWS}"/scripts:"${TWS}"/util:"${PATH}" \
+ WORKSPACE="${TWS}" \
+ MERCURY_COMPILER="${TWS}"/compiler/mercury_compile \
+ MMAKE_DIR="${TWS}"/scripts \
+ MERCURY_DEBUGGER_INIT="${TESTDIR}"/mdbrc \
+ GRADE=${TEST_GRADE} \
+ mmake || die "mmake test failed"
+}
+
+src_install() {
+ make \
+ INSTALL_PREFIX="${D}"/usr \
+ INSTALL_MAN_DIR="${D}"/usr/share/man \
+ INSTALL_INFO_DIR="${D}"/usr/share/info \
+ INSTALL_HTML_DIR="${D}"/usr/share/doc/${PF}/html \
+ install || die "make install failed"
+
+ dodoc \
+ BUGS HISTORY LIMITATIONS NEWS README README.Linux \
+ README.Linux-Alpha README.Linux-m68k README.Linux-PPC \
+ RELEASE_NOTES TODO VERSION WORK_IN_PROGRESS
+}