Add low-level debugging support.
authorKeri Harris <keri@gentoo.org>
Sun, 4 Mar 2007 01:40:39 +0000 (01:40 +0000)
committerKeri Harris <keri@gentoo.org>
Sun, 4 Mar 2007 01:40:39 +0000 (01:40 +0000)
Package-Manager: portage-2.1.2-r12

dev-lang/swi-prolog/ChangeLog
dev-lang/swi-prolog/Manifest
dev-lang/swi-prolog/files/digest-swi-prolog-5.6.29-r1 [new file with mode: 0644]
dev-lang/swi-prolog/files/swi-prolog-O_DEBUG.patch [new file with mode: 0644]
dev-lang/swi-prolog/swi-prolog-5.6.29-r1.ebuild [new file with mode: 0644]

index 8d46e97659b17d651f540b12e7efd1e75e2f8c33..aedee7edc6032011debed6c55001a0f0c0cb5936 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for dev-lang/swi-prolog
 # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/swi-prolog/ChangeLog,v 1.73 2007/03/02 23:11:58 keri Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/swi-prolog/ChangeLog,v 1.74 2007/03/04 01:40:39 keri Exp $
+
+*swi-prolog-5.6.29-r1 (04 Mar 2007)
+
+  04 Mar 2007; keri <keri@gentoo.org> +files/swi-prolog-O_DEBUG.patch,
+  +swi-prolog-5.6.29-r1.ebuild:
+  Add low-level debugging support.
 
   02 Mar 2007; keri <keri@gentoo.org> swi-prolog-5.6.29.ebuild:
   Remove redundant ssl-cert patch.
index f635cb1e86c936a8d79697b732e6cd17b5d5bb03..86e961354d642c575ca336e0536228673acbbd61 100644 (file)
@@ -26,6 +26,10 @@ AUX swi-prolog-CFLAGS-r4.patch 11312 RMD160 4e4d2282991da0531cb6ceb49c72e62d919f
 MD5 7a9216d7bc4d453a223e2f1421e3572c files/swi-prolog-CFLAGS-r4.patch 11312
 RMD160 4e4d2282991da0531cb6ceb49c72e62d919f55a4 files/swi-prolog-CFLAGS-r4.patch 11312
 SHA256 38974374d7d3c688e7866a080448518d4be8e6df701362f30dcbf68c338e5055 files/swi-prolog-CFLAGS-r4.patch 11312
+AUX swi-prolog-O_DEBUG.patch 948 RMD160 5fd2855b70c9b9aab42c0bf7451b09451450b73b SHA1 3625177f4318515be9fef30c1c6da28d4f237aa9 SHA256 f9089756c12d799c6b934d188afd4a6b80cffef0503055b0a31a1af4cd0cea74
+MD5 47d0ce7f6592b918290e9ecae0977f58 files/swi-prolog-O_DEBUG.patch 948
+RMD160 5fd2855b70c9b9aab42c0bf7451b09451450b73b files/swi-prolog-O_DEBUG.patch 948
+SHA256 f9089756c12d799c6b934d188afd4a6b80cffef0503055b0a31a1af4cd0cea74 files/swi-prolog-O_DEBUG.patch 948
 AUX swi-prolog-PLBASE-r1.patch 2612 RMD160 98a2aec985aa0bc38e5a76d460dd724ab199b442 SHA1 9fa1e995a30d93be737a5883779dba3f3128c006 SHA256 91b090d1c5ddd14f24671d43d0f021e47d1fd6652f1dd518f1889052c0e601d8
 MD5 5735709fce96aead1b7ba6c23bd83ba6 files/swi-prolog-PLBASE-r1.patch 2612
 RMD160 98a2aec985aa0bc38e5a76d460dd724ab199b442 files/swi-prolog-PLBASE-r1.patch 2612
@@ -246,14 +250,18 @@ EBUILD swi-prolog-5.6.28.ebuild 3870 RMD160 e5f92c99106a5162951d6115158c7c293a87
 MD5 5eb18896a11a593bc55b1c75ff7b49a1 swi-prolog-5.6.28.ebuild 3870
 RMD160 e5f92c99106a5162951d6115158c7c293a87c567 swi-prolog-5.6.28.ebuild 3870
 SHA256 c759c9cbac239cb575ef982f771d5b0d98535f041d108646cab4a36d1fbda907 swi-prolog-5.6.28.ebuild 3870
+EBUILD swi-prolog-5.6.29-r1.ebuild 3837 RMD160 956f677eeaed245d33bb1faa9343feb2cdba67e4 SHA1 f41c8a8c7c00d63e97672ea3186f4ef6be184894 SHA256 65022ef61773f79388cdd23823e3beecd09a0020bec9dd842eedc5dbb04f6944
+MD5 137d7969a00d8c19fdec6d3e1f796d7c swi-prolog-5.6.29-r1.ebuild 3837
+RMD160 956f677eeaed245d33bb1faa9343feb2cdba67e4 swi-prolog-5.6.29-r1.ebuild 3837
+SHA256 65022ef61773f79388cdd23823e3beecd09a0020bec9dd842eedc5dbb04f6944 swi-prolog-5.6.29-r1.ebuild 3837
 EBUILD swi-prolog-5.6.29.ebuild 3735 RMD160 b6e3ea6a08d5e36695ecedf1de9856a8eb54c7dc SHA1 76406d2ebb7febb7b7b30d700437227b9abb26f6 SHA256 d3e0a2885131f6d4fd60285504cadaa796952fbabd1e78e2286fafe4d8a79ff6
 MD5 695a8680109628ad0f2a7ff5fcd0777c swi-prolog-5.6.29.ebuild 3735
 RMD160 b6e3ea6a08d5e36695ecedf1de9856a8eb54c7dc swi-prolog-5.6.29.ebuild 3735
 SHA256 d3e0a2885131f6d4fd60285504cadaa796952fbabd1e78e2286fafe4d8a79ff6 swi-prolog-5.6.29.ebuild 3735
-MISC ChangeLog 14296 RMD160 08d1bf5ab7ee366a73e4012c5d4d3bbb4109134e SHA1 bcabbd204b87946b73d378d7e677bd7bddd02f79 SHA256 40460a8c9620a23332218a1bfc5873455d325eaa5049f6639b91fc7423fe58ce
-MD5 1b2748fd0071cdd9e35739ff459e323e ChangeLog 14296
-RMD160 08d1bf5ab7ee366a73e4012c5d4d3bbb4109134e ChangeLog 14296
-SHA256 40460a8c9620a23332218a1bfc5873455d325eaa5049f6639b91fc7423fe58ce ChangeLog 14296
+MISC ChangeLog 14472 RMD160 ace3d96616d25a04e5b34f7057737d89a4ebed9e SHA1 5720154712fbb364de9c98b9b8a848080ed1b010 SHA256 e47511ed88b3898e8d4e509dca36ca392f45bf946c42257ca79244ca11fc8976
+MD5 67c4cd2af5189b228e06ace02ed8b5e0 ChangeLog 14472
+RMD160 ace3d96616d25a04e5b34f7057737d89a4ebed9e ChangeLog 14472
+SHA256 e47511ed88b3898e8d4e509dca36ca392f45bf946c42257ca79244ca11fc8976 ChangeLog 14472
 MISC metadata.xml 159 RMD160 38d27fd1c5faabedefa5507dfd83cb4c952fbc8c SHA1 52b92682cf41e53e71bf432537a16215bd9546b1 SHA256 851bf218a4283a1d8ea6ef98af0119a40eaa78bfaaec49c2f3440437f52889ba
 MD5 9187f53634e60ab7eb2ac7e98b0b19f7 metadata.xml 159
 RMD160 38d27fd1c5faabedefa5507dfd83cb4c952fbc8c metadata.xml 159
@@ -294,3 +302,6 @@ SHA256 2474a53d9be5e131c4f6acab3c66c9fe8227c2983d88a1f1fb4d4d64cc4d1148 files/di
 MD5 382b7817e5831ca8ea92692df86d2e04 files/digest-swi-prolog-5.6.29 235
 RMD160 61af4f6ab311437f193c41a630ab41b4b5ffd259 files/digest-swi-prolog-5.6.29 235
 SHA256 834c5d1b84792be48a5276686117aa9a862d820a5335c2f473fc8fc232f995a8 files/digest-swi-prolog-5.6.29 235
+MD5 382b7817e5831ca8ea92692df86d2e04 files/digest-swi-prolog-5.6.29-r1 235
+RMD160 61af4f6ab311437f193c41a630ab41b4b5ffd259 files/digest-swi-prolog-5.6.29-r1 235
+SHA256 834c5d1b84792be48a5276686117aa9a862d820a5335c2f473fc8fc232f995a8 files/digest-swi-prolog-5.6.29-r1 235
diff --git a/dev-lang/swi-prolog/files/digest-swi-prolog-5.6.29-r1 b/dev-lang/swi-prolog/files/digest-swi-prolog-5.6.29-r1
new file mode 100644 (file)
index 0000000..678a8b4
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 d0081dcaef8e3dba722406bc9cd20163 pl-5.6.29.tar.gz 11697773
+RMD160 ac7298a8884a69fc5bb9d4b0656a1845b9d7e1b6 pl-5.6.29.tar.gz 11697773
+SHA256 0390d63fa3090d11569c27322ada7ddfca4dfd7b1e8d32b7f2b44ed192be35ff pl-5.6.29.tar.gz 11697773
diff --git a/dev-lang/swi-prolog/files/swi-prolog-O_DEBUG.patch b/dev-lang/swi-prolog/files/swi-prolog-O_DEBUG.patch
new file mode 100644 (file)
index 0000000..1a1c81c
--- /dev/null
@@ -0,0 +1,26 @@
+diff -ur pl-5.6.29.orig/src/pl-funcs.h pl-5.6.29/src/pl-funcs.h
+--- pl-5.6.29.orig/src/pl-funcs.h      2007-02-07 00:24:03.000000000 +1300
++++ pl-5.6.29/src/pl-funcs.h   2007-03-04 13:53:21.000000000 +1300
+@@ -62,7 +62,7 @@
+ COMMON(word)          globalIndirectFromCode(Code *PC);
+ COMMON(word)          makeRef(Word p);
+ #ifndef consPtr
+-COMMON(word)          consPtr(void *p, int ts);
++COMMON(word)          consPtr(void *p, word ts);
+ #endif
+ COMMON(char *)                store_string(const char *s);
+ COMMON(void)          remove_string(char *s);
+diff -ur pl-5.6.29.orig/src/pl-main.c pl-5.6.29/src/pl-main.c
+--- pl-5.6.29.orig/src/pl-main.c       2007-01-23 00:52:23.000000000 +1300
++++ pl-5.6.29/src/pl-main.c    2007-03-04 14:01:38.000000000 +1300
+@@ -47,6 +47,10 @@
+ #include <crtdbg.h>
+ #endif
++#if defined(HAVE_MTRACE) && defined(O_MAINTENANCE)
++#include <mcheck.h>
++#endif
++
+ static int    usage(void);
+ static int    giveVersionInfo(const char *a);
+ static bool   vsysError(const char *fm, va_list args);
diff --git a/dev-lang/swi-prolog/swi-prolog-5.6.29-r1.ebuild b/dev-lang/swi-prolog/swi-prolog-5.6.29-r1.ebuild
new file mode 100644 (file)
index 0000000..7c43013
--- /dev/null
@@ -0,0 +1,143 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/swi-prolog/swi-prolog-5.6.29-r1.ebuild,v 1.1 2007/03/04 01:40:39 keri Exp $
+
+inherit eutils flag-o-matic java-pkg-opt-2
+
+DESCRIPTION="free, small, and standard compliant Prolog compiler"
+HOMEPAGE="http://www.swi-prolog.org/"
+SRC_URI="http://gollem.science.uva.nl/cgi-bin/nph-download/SWI-Prolog/pl-${PV}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86"
+IUSE="berkdb debug doc gmp java minimal odbc readline ssl static tetex threads zlib X"
+
+DEPEND="!dev-lang/swi-prolog-lite
+       sys-libs/ncurses
+       zlib? ( sys-libs/zlib )
+       odbc? ( dev-db/unixODBC )
+       berkdb? ( sys-libs/db )
+       readline? ( sys-libs/readline )
+       gmp? ( dev-libs/gmp )
+       ssl? ( dev-libs/openssl )
+       java? ( >=virtual/jdk-1.4
+               dev-java/junit )
+       X? (
+               media-libs/jpeg
+               x11-libs/libX11
+               x11-libs/libXft
+               x11-libs/libXpm
+               x11-libs/libXt
+               x11-libs/libICE
+               x11-libs/libSM
+               x11-proto/xproto )"
+
+S="${WORKDIR}/pl-${PV}"
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+
+       sed -i -e "s/man boot library/boot library/" src/Makefile.in
+       epatch "${FILESDIR}"/${PN}-portage-r1.patch
+       epatch "${FILESDIR}"/${PN}-CFLAGS-r4.patch
+       epatch "${FILESDIR}"/${PN}-O_DEBUG.patch
+       epatch "${FILESDIR}"/${PN}-PLBASE-r2.patch
+       epatch "${FILESDIR}"/${PN}-cppproxy-r1.patch
+       epatch "${FILESDIR}"/${PN}-jpl-PLARCH.patch
+       epatch "${FILESDIR}"/${PN}-jpl-LDPATH-r2.patch
+       epatch "${FILESDIR}"/${PN}-jpl-bounded-arith.patch
+       epatch "${FILESDIR}"/${PN}-jpl-junit.patch
+       epatch "${FILESDIR}"/${PN}-jpl-check_java-r1.patch
+       epatch "${FILESDIR}"/${PN}-ltx2htm.patch
+       epatch "${FILESDIR}"/${PN}-SGML_CATALOG_FILES.patch
+       epatch "${FILESDIR}"/${PN}-set_prolog_IO.patch
+       epatch "${FILESDIR}"/${PN}-thread-sandbox.patch
+       epatch "${FILESDIR}"/${PN}-thread-tests-r1.patch
+       epatch "${FILESDIR}"/${PN}-xpce-parallel-build.patch
+       epatch "${FILESDIR}"/${PN}-xpce-test-r1.patch
+}
+
+src_compile() {
+       einfo "Building SWI-Prolog compiler"
+
+       use debug && append-flags -DO_DEBUG
+
+       local threadconf
+       if use java && ! use minimal || use threads ; then
+               threadconf="--enable-mt"
+       else
+               threadconf="--disable-mt"
+       fi
+
+       cd "${S}"/src
+       econf \
+               --libdir=/usr/$(get_libdir) \
+               ${threadconf} \
+               $(use_enable gmp) \
+               $(use_enable readline) \
+               $(use_enable !static shared) \
+               --disable-custom-flags \
+               || die "econf failed"
+       emake || die "emake failed"
+
+       if ! use minimal ; then
+               einfo "Building SWI-Prolog additional packages"
+
+               cd "${S}/packages"
+               econf \
+                       --libdir=/usr/$(get_libdir) \
+                       ${threadconf} \
+                       $(use_enable !static shared) \
+                       --without-C-sicstus \
+                       --with-chr \
+                       --with-clib \
+                       --with-clpqr \
+                       --with-cpp \
+                       --with-cppproxy \
+                       $(use_with berkdb db) \
+                       --with-http \
+                       --without-jasmine \
+                       $(use_with java jpl) \
+                       $(use_with tetex ltx2htm) \
+                       --with-nlp \
+                       $(use_with odbc) \
+                       --with-pldoc \
+                       --with-plunit \
+                       --with-semweb \
+                       --with-sgml \
+                       --with-sgml/RDF \
+                       $(use_with ssl) \
+                       --with-table \
+                       $(use_with X xpce) \
+                       $(use_with zlib) \
+                       || die "packages econf failed"
+
+               emake || die "packages emake failed"
+       fi
+}
+
+src_install() {
+       make -C src DESTDIR="${D}" install || die "install src failed"
+
+       if ! use minimal ; then
+               make -C packages DESTDIR="${D}" install || die "install packages failed"
+               if use doc ; then
+                       make -C packages DESTDIR="${D}" html-install || die "html-install failed"
+                       make -C packages/cppproxy DESTDIR="${D}" install-examples || die "install-examples failed"
+               fi
+       fi
+
+       dodoc ANNOUNCE ChangeLog INSTALL INSTALL.notes PORTING README README.GUI VERSION
+}
+
+src_test() {
+       cd "${S}/src"
+       make check || die "make check failed. See above for details."
+
+       if ! use minimal ; then
+               cd "${S}/packages"
+               make check || die "make check failed. See above for details."
+       fi
+}