summaryrefslogtreecommitdiff
path: root/lang/swi-prolog-lite
diff options
context:
space:
mode:
authorasau <asau>2011-04-12 23:16:42 +0000
committerasau <asau>2011-04-12 23:16:42 +0000
commit8ebe3d589b8004a2621133b1c92010326bfc5db1 (patch)
tree173ddb7bae0c0463f2c7e3f441743e7404452a06 /lang/swi-prolog-lite
parent1311046e35cc048dbf9de4389c08bd6d3ee4a5cb (diff)
downloadpkgsrc-8ebe3d589b8004a2621133b1c92010326bfc5db1.tar.gz
Update to SWI-Prolog 5.11.18
Notable changes in 5.11.18 -------------------------- Experimental extension to run the development tools in a separate thread, so you can edit away while your program runs. Notable changes in 5.11.17 -------------------------- Fix error with quoted wide atoms. This causes write/read to fail for any term that contains an atom that needs quotes and has Unicode points >= 256. This also contains the copy_term/2 patch to exploit sharing ... Notable changes in 5.11.16 -------------------------- Unicode handling is certainly a step forward wrt. character classification. Unicode symbols have been modified to `glue' like ==, =<, etc. Finally, there is per-thread CPU statistics for MacOS Finally, selection handling in the Windows console is a bit better. Trail-stack usage is now significantly less. Notable changes in 5.11.15 -------------------------- Revert the change to write_canonical/1 Notable changes in 5.11.14 -------------------------- There is a lot of mostly small fixes. The most notably are changes to the ODBC interface, which now supports Unicode (at least for queries, not for all aspects). It's got a new option to ODBC connections: the encoding. The default should work fine on Windows and UTF-8 based Unix databases. Thanks to Matt Lilley and Carlo Capelli. There is quite some reorganisation in the sources due to work on sharing most of the OS interface and I/O between YAP and SWI and make the setup of packages such that the makefiles can be shared between SWI and YAP. Notable changes in 5.11.13 -------------------------- This version fixes some more issues in =@=/2, various minor issues and may have big impact on trail-stack usage of your program. It also fixes the reported socket issue with XPCE on Win64. Notable changes in 5.11.12 -------------------------- This contains some quite important fixes, avoiding simply wrong answers as well as some crashes. Besides the usual small stuff, it has two important rewrites: - Standard order comparison now avoids recursion using the C-stack. This is a bit of a trial. Timing shows that processing last-argument nested terms is about 10% slower and other nesting is about 50% faster and no longer causes uncrontrolled stack-overflows. This is promising, but the amount of work is considerable, notably for this case, where the possibility of comparison to raise an exception is new. - =@=/2 is completely rewritten. If you are looking for a challenge, there is one in the current version of =@=/2 (variant/2). The implementation is in src/pl-prims.c and the test cases in src/Tests/core/test_term.pl. =@=/2 has gone through some iterations. If all is right, the current version - Fails as soon as it finds a difference, without processing a whole term. - Handles rational trees (cyclic terms). - Deals with variables shared between the argument terms. Notable changes in 5.11.11 -------------------------- Top level now reveals the internal `sharing' of subterms in answer substitutions. This notably deals with cyclic terms. Notable changes in 5.11.10 -------------------------- Floats are no longer printed through the C-library printf using %g. Instead, Prolog write writes a float such that reading it back recontructs a float that is bitwise equivalent (==) to the input. This is based on a library by David M. Gay. The output routine uses the same rules on when to use exponential notation as the GNU C-library's %g format. It prints as few as possible digits to reach == equivalence, but this is typically more than it used to print. If you want fewer digits, use format/3 (e.g., ~6f) or round (A is round(F*10000)/10000, write(A)). rdf_reachable/2 now, like rdf_has/3, respects defined RDF predicate properties. In addition, it provides look-ahead which ensures deterministic success on the last answer. This means that rdf_reachable(A, owl:sameAs, B) (with either or both A and B instantiated) behaves as expected and much more efficiently. There are a lot of changes to quoted syntax, notably for 0'<char> and some for quoted atoms. Except for \e being read as 27 (esc), all sensible previously valid input is parsed consistently (I wouldn't be surprised if it is possible to construct cases where you get different output, but I would be surprised if any real program is affected). See mailinglist for details.
Diffstat (limited to 'lang/swi-prolog-lite')
-rw-r--r--lang/swi-prolog-lite/Makefile11
-rw-r--r--lang/swi-prolog-lite/Makefile.common4
-rw-r--r--lang/swi-prolog-lite/PLIST5
-rw-r--r--lang/swi-prolog-lite/distinfo9
-rw-r--r--lang/swi-prolog-lite/patches/patch-ae13
5 files changed, 32 insertions, 10 deletions
diff --git a/lang/swi-prolog-lite/Makefile b/lang/swi-prolog-lite/Makefile
index 62ac9dadc62..c4026c58b57 100644
--- a/lang/swi-prolog-lite/Makefile
+++ b/lang/swi-prolog-lite/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.17 2010/05/16 18:46:10 asau Exp $
+# $NetBSD: Makefile,v 1.18 2011/04/12 23:16:42 asau Exp $
.include "Makefile.common"
@@ -28,12 +28,17 @@ PLIST_SUBST+= BITS=64
PLIST_SUBST+= BITS=32
.endif
+REPLACE_INTERPRETER+= swipl
+REPLACE.swipl.old= /usr/bin/swipl
+REPLACE.swipl.new= ${PREFIX}/bin/swi-prolog
+REPLACE_FILES.swipl+= library/dialect/sicstus/swipl-lfr.pl
+
+TEST_TARGET= check
+
post-install:
${INSTALL_DATA} ${FILESDIR}/shlib.pl \
${DESTDIR}${PREFIX}/lib/swi-prolog-${SWIPLVERS}/library/shlib.pl
-TEST_TARGET= check
-
.include "../../devel/ncurses/buildlink3.mk"
.include "../../devel/readline/buildlink3.mk"
.include "../../devel/gmp/buildlink3.mk"
diff --git a/lang/swi-prolog-lite/Makefile.common b/lang/swi-prolog-lite/Makefile.common
index c8760fb3590..ecdeb5230fc 100644
--- a/lang/swi-prolog-lite/Makefile.common
+++ b/lang/swi-prolog-lite/Makefile.common
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile.common,v 1.9 2010/11/23 21:56:25 asau Exp $
+# $NetBSD: Makefile.common,v 1.10 2011/04/12 23:16:42 asau Exp $
-SWIPLVERS= 5.11.9
+SWIPLVERS= 5.11.18
DISTNAME= pl-${SWIPLVERS}
CATEGORIES= lang
MASTER_SITES= http://www.swi-prolog.org/download/stable/src/ \
diff --git a/lang/swi-prolog-lite/PLIST b/lang/swi-prolog-lite/PLIST
index ca810c26c66..cd0dbbe1332 100644
--- a/lang/swi-prolog-lite/PLIST
+++ b/lang/swi-prolog-lite/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.10 2010/11/23 21:56:25 asau Exp $
+@comment $NetBSD: PLIST,v 1.11 2011/04/12 23:16:42 asau Exp $
bin/swi-prolog
bin/swipl-ld
bin/swipl-rc
@@ -249,10 +249,12 @@ lib/swi-prolog-${PKGVERSION}/library/INDEX.pl
lib/swi-prolog-${PKGVERSION}/library/MANUAL
lib/swi-prolog-${PKGVERSION}/library/aggregate.pl
lib/swi-prolog-${PKGVERSION}/library/am_match.pl
+lib/swi-prolog-${PKGVERSION}/library/ansi_term.pl
lib/swi-prolog-${PKGVERSION}/library/apply.pl
lib/swi-prolog-${PKGVERSION}/library/apply_macros.pl
lib/swi-prolog-${PKGVERSION}/library/assoc.pl
lib/swi-prolog-${PKGVERSION}/library/backcomp.pl
+lib/swi-prolog-${PKGVERSION}/library/base32.pl
lib/swi-prolog-${PKGVERSION}/library/base64.pl
lib/swi-prolog-${PKGVERSION}/library/bim.pl
lib/swi-prolog-${PKGVERSION}/library/broadcast.pl
@@ -330,6 +332,7 @@ lib/swi-prolog-${PKGVERSION}/library/persistency.pl
lib/swi-prolog-${PKGVERSION}/library/pio.pl
lib/swi-prolog-${PKGVERSION}/library/portray_text.pl
lib/swi-prolog-${PKGVERSION}/library/prolog_clause.pl
+lib/swi-prolog-${PKGVERSION}/library/prolog_history.pl
lib/swi-prolog-${PKGVERSION}/library/prolog_source.pl
lib/swi-prolog-${PKGVERSION}/library/prolog_stack.pl
lib/swi-prolog-${PKGVERSION}/library/prolog_xref.pl
diff --git a/lang/swi-prolog-lite/distinfo b/lang/swi-prolog-lite/distinfo
index aa796bb08e9..d6ea15f1f08 100644
--- a/lang/swi-prolog-lite/distinfo
+++ b/lang/swi-prolog-lite/distinfo
@@ -1,7 +1,8 @@
-$NetBSD: distinfo,v 1.12 2010/11/23 21:56:25 asau Exp $
+$NetBSD: distinfo,v 1.13 2011/04/12 23:16:42 asau Exp $
-SHA1 (swi-prolog/pl-5.11.9.tar.gz) = 61c439c150716e587a22773c45e53b88e83d6134
-RMD160 (swi-prolog/pl-5.11.9.tar.gz) = c39ea6bd70fd12e3db26e03f1f914db687606c80
-Size (swi-prolog/pl-5.11.9.tar.gz) = 13236011 bytes
+SHA1 (swi-prolog/pl-5.11.18.tar.gz) = b929d47f2e92230e2afcaaaf25e9a34c40adc54e
+RMD160 (swi-prolog/pl-5.11.18.tar.gz) = 1cbf0dab3a9cd63b3178d6a43c983b31402d7b7f
+Size (swi-prolog/pl-5.11.18.tar.gz) = 13330292 bytes
SHA1 (patch-ad) = 7b3899fe4162582efe955c67d5dc3ed42e7d1702
+SHA1 (patch-ae) = 4135212b4c5faf70e01e78e45df5e1a0ccc927a6
SHA1 (patch-ar) = 2bf3648f29c6263ea2efe13b95309a1fe72b14b8
diff --git a/lang/swi-prolog-lite/patches/patch-ae b/lang/swi-prolog-lite/patches/patch-ae
new file mode 100644
index 00000000000..ca7f204896d
--- /dev/null
+++ b/lang/swi-prolog-lite/patches/patch-ae
@@ -0,0 +1,13 @@
+$NetBSD: patch-ae,v 1.4 2011/04/12 23:16:43 asau Exp $
+
+--- packages/xpce/pl/src/Makefile.orig 2011-03-23 21:57:54.000000000 +0300
++++ packages/xpce/pl/src/Makefile 2011-04-12 18:46:41.000000000 +0400
+@@ -25,7 +25,7 @@
+ OBJDIR= ../../$(builddir)/pl
+ CONFIG= ../../$(builddir)/config.h
+
+-CPLIFLAGS= -I$(PLINCL) -I../../$(builddir) -I../../src
++CPLIFLAGS= -I$(PLINCL) -I$(PLINCL)/os -I../../$(builddir) -I../../src
+ PL= pl
+ PLLD= plld -pl $(PL)
+ ITFOBJ= $(addprefix $(OBJDIR)/, interface.o link.o pcecall.o)