Subject: pkg/15778: swi-prolog package broken - update patch included
To: None <gnats-bugs@gnats.netbsd.org>
From: None <rb-netbsd@bigscarychildren.net>
List: netbsd-bugs
Date: 03/01/2002 13:08:40
>Number:         15778
>Category:       pkg
>Synopsis:       the swi-prolog package is out of date and broken
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 01 10:09:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Rick Byers
>Release:        NetBSD 1.5ZA  20020220
>Organization:
>Environment:
System: NetBSD Apenheul.BigScaryChildren.net 1.5ZA NetBSD 1.5ZA (WORMHOLE) #2: Thu Feb 21 09:11:27 EST 2002 rick@Apenheul.BigScaryChildren.net:/usr/src/sys/arch/i386/compile/WORMHOLE i386
Architecture: i386
Machine: i386
>Description:
	The swi-prolog package references a distfile for swi-prolog 4.0.9 which is
	no longer available from the master site.
>How-To-Repeat:
	Try to install swi-prolog
>Fix:
	Update package to swi-prolog 5.0.1. 
	Here is a patch to update the package, as well as the changelog information for swi prolog.
	The only changes required to the package were:
		- update MASTER_SITES and HOMEPAGE, as well as version number
		- handle platform dirs with "elf" suffix (like "i386-netbsdelf")
		- update PLIST with new files
		- man pages are now installed into /usr/pkg/man
		- don't try to strip shell scripts 
	The changes from swi-prolog 4.0.9 and 5.0.1 seem to be mostly bug fixes

Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/lang/swi-prolog/Makefile,v
retrieving revision 1.13
diff -c -r1.13 Makefile
*** Makefile	2001/07/15 12:27:38	1.13
--- Makefile	2002/03/01 17:54:47
***************
*** 1,12 ****
  # $NetBSD: Makefile,v 1.13 2001/07/15 12:27:38 jtb Exp $
  
! DISTNAME=		pl-lite-4.0.9
! PKGNAME=		swi-prolog-4.0.9
  CATEGORIES=		lang
! MASTER_SITES=		http://www.swi.psy.uva.nl/cgi-bin//nph-download/SWI-Prolog/
  
  MAINTAINER=		packages@netbsd.org
! HOMEPAGE=		http://www.swi.psy.uva.nl/projects/SWI-Prolog/
  COMMENT=		ISO/Edinburgh-style Prolog compiler
  
  WRKSRC=			${WRKDIR}/${DISTNAME:S,-lite,,}
--- 1,12 ----
  # $NetBSD: Makefile,v 1.13 2001/07/15 12:27:38 jtb Exp $
  
! DISTNAME=		pl-lite-5.0.1
! PKGNAME=		swi-prolog-5.0.1
  CATEGORIES=		lang
! MASTER_SITES=		ftp://ftp.swi.psy.uva.nl/SWI-Prolog/
  
  MAINTAINER=		packages@netbsd.org
! HOMEPAGE=		http://www.swi-prolog.org/
  COMMENT=		ISO/Edinburgh-style Prolog compiler
  
  WRKSRC=			${WRKDIR}/${DISTNAME:S,-lite,,}
***************
*** 22,27 ****
--- 22,28 ----
  
  PLIST_SUBST+=		SWIPL=${SWIPL}
  PLIST_SUBST+=		SWILIBDIR=${DISTNAME:S,pl-lite,'${SWIPL}',}
+ PLIST_SUBST+=		SWIPLATFORM=${MACHINE_GNU_PLATFORM:S,--,-,}
  
  .include "../../devel/ncurses/buildlink.mk"
  .include "../../devel/readline/buildlink.mk"
Index: PLIST
===================================================================
RCS file: /cvsroot/pkgsrc/lang/swi-prolog/PLIST,v
retrieving revision 1.2
diff -c -r1.2 PLIST
*** PLIST	2002/02/05 22:39:05	1.2
--- PLIST	2002/03/01 17:54:47
***************
*** 1,12 ****
! @comment $NetBSD: PLIST,v 1.2 2002/02/05 22:39:05 skrll Exp $
  bin/${SWIPL}
  bin/plld
  bin/plrc
  include/SWI-Prolog.h
  include/SWI-Stream.h
! lib/${SWILIBDIR}/bin/${MACHINE_ARCH}-${LOWER_OPSYS}/${SWIPL}
! lib/${SWILIBDIR}/bin/${MACHINE_ARCH}-${LOWER_OPSYS}/plld
! lib/${SWILIBDIR}/bin/${MACHINE_ARCH}-${LOWER_OPSYS}/plrc
  lib/${SWILIBDIR}/bin/swipl
  lib/${SWILIBDIR}/boot/apply.pl
  lib/${SWILIBDIR}/boot/autoload.pl
--- 1,12 ----
! @comment $NetBSD$
  bin/${SWIPL}
  bin/plld
  bin/plrc
  include/SWI-Prolog.h
  include/SWI-Stream.h
! lib/${SWILIBDIR}/bin/${SWIPLATFORM}/swi-prolog
! lib/${SWILIBDIR}/bin/${SWIPLATFORM}/plld
! lib/${SWILIBDIR}/bin/${SWIPLATFORM}/plrc
  lib/${SWILIBDIR}/bin/swipl
  lib/${SWILIBDIR}/boot/apply.pl
  lib/${SWILIBDIR}/boot/autoload.pl
***************
*** 14,22 ****
--- 14,24 ----
  lib/${SWILIBDIR}/boot/dwim.pl
  lib/${SWILIBDIR}/boot/history.pl
  lib/${SWILIBDIR}/boot/init.pl
+ lib/${SWILIBDIR}/boot/license.pl
  lib/${SWILIBDIR}/boot/list.pl
  lib/${SWILIBDIR}/boot/load.pl
  lib/${SWILIBDIR}/boot/make.pl
+ lib/${SWILIBDIR}/boot/menu.pl
  lib/${SWILIBDIR}/boot/messages.pl
  lib/${SWILIBDIR}/boot/parms.pl
  lib/${SWILIBDIR}/boot/profile.pl
***************
*** 28,33 ****
--- 30,39 ----
  lib/${SWILIBDIR}/boot/topvars.pl
  lib/${SWILIBDIR}/boot/writef.pl
  lib/${SWILIBDIR}/boot32.prc
+ lib/${SWILIBDIR}/dotfiles/README
+ lib/${SWILIBDIR}/dotfiles/dotplrc
+ lib/${SWILIBDIR}/dotfiles/dotxpcerc
+ lib/${SWILIBDIR}/dotfiles/edit
  lib/${SWILIBDIR}/include/SWI-Prolog.h
  lib/${SWILIBDIR}/include/SWI-Stream.h
  lib/${SWILIBDIR}/include/stub.c
***************
*** 47,52 ****
--- 53,59 ----
  lib/${SWILIBDIR}/library/help.pl
  lib/${SWILIBDIR}/library/helpidx.pl
  lib/${SWILIBDIR}/library/listing.pl
+ lib/${SWILIBDIR}/library/main.pl
  lib/${SWILIBDIR}/library/netscape.pl
  lib/${SWILIBDIR}/library/occurs.pl
  lib/${SWILIBDIR}/library/ordsets.pl
***************
*** 63,86 ****
  lib/${SWILIBDIR}/library/threadutil.pl
  lib/${SWILIBDIR}/library/tty.pl
  lib/${SWILIBDIR}/library/url.pl
! lib/${SWILIBDIR}/man/${SWIPL}.1
! lib/${SWILIBDIR}/man/plld.1
! lib/${SWILIBDIR}/man/plrc.1
! lib/${SWILIBDIR}/man/readline.3
! lib/${SWILIBDIR}/runtime/${MACHINE_ARCH}-${LOWER_OPSYS}/libpl.a
  lib/${SWILIBDIR}/swipl
- man/man1/${SWIPL}.1
  man/man1/plld.1
  man/man1/plrc.1
! @dirrm lib/${SWILIBDIR}/runtime/${MACHINE_ARCH}-${LOWER_OPSYS}
  @dirrm lib/${SWILIBDIR}/runtime
  @dirrm lib/${SWILIBDIR}/man
  @dirrm lib/${SWILIBDIR}/library
! @exec ${MKDIR} -p /usr/pkg/lib/${SWILIBDIR}/lib/${MACHINE_ARCH}-${LOWER_OPSYS}
! @dirrm lib/${SWILIBDIR}/lib/${MACHINE_ARCH}-${LOWER_OPSYS}
  @dirrm lib/${SWILIBDIR}/lib
  @dirrm lib/${SWILIBDIR}/include
  @dirrm lib/${SWILIBDIR}/boot
! @dirrm lib/${SWILIBDIR}/bin/${MACHINE_ARCH}-${LOWER_OPSYS}
  @dirrm lib/${SWILIBDIR}/bin
  @dirrm lib/${SWILIBDIR}
--- 70,89 ----
  lib/${SWILIBDIR}/library/threadutil.pl
  lib/${SWILIBDIR}/library/tty.pl
  lib/${SWILIBDIR}/library/url.pl
! lib/${SWILIBDIR}/runtime/${SWIPLATFORM}/libpl.a
  lib/${SWILIBDIR}/swipl
  man/man1/plld.1
  man/man1/plrc.1
! man/man1/swi-prolog.1
! @dirrm lib/${SWILIBDIR}/runtime/${SWIPLATFORM}
  @dirrm lib/${SWILIBDIR}/runtime
  @dirrm lib/${SWILIBDIR}/man
  @dirrm lib/${SWILIBDIR}/library
! @dirrm lib/${SWILIBDIR}/lib/${SWIPLATFORM}
  @dirrm lib/${SWILIBDIR}/lib
  @dirrm lib/${SWILIBDIR}/include
+ @dirrm lib/${SWILIBDIR}/dotfiles
  @dirrm lib/${SWILIBDIR}/boot
! @dirrm lib/${SWILIBDIR}/bin/${SWIPLATFORM}
  @dirrm lib/${SWILIBDIR}/bin
  @dirrm lib/${SWILIBDIR}
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/lang/swi-prolog/distinfo,v
retrieving revision 1.6
diff -c -r1.6 distinfo
*** distinfo	2001/07/15 12:27:38	1.6
--- distinfo	2002/03/01 17:54:47
***************
*** 1,6 ****
  $NetBSD: distinfo,v 1.6 2001/07/15 12:27:38 jtb Exp $
  
! SHA1 (swi-prolog/pl-lite-4.0.9.tar.gz) = 219dc6a5b4951f7fecbce9da0d230babec848764
! Size (swi-prolog/pl-lite-4.0.9.tar.gz) = 1156825 bytes
! SHA1 (patch-aa) = 7524e0f2fcbab84554bb622e5f1795816659668a
! SHA1 (patch-ab) = c984f4d61b8c939aa9559f27020be5357d8c3e11
--- 1,6 ----
  $NetBSD: distinfo,v 1.6 2001/07/15 12:27:38 jtb Exp $
  
! SHA1 (swi-prolog/pl-lite-5.0.1.tar.gz) = 60a4a051b27b201962cfc69e67d184a1a72f33a6
! Size (swi-prolog/pl-lite-5.0.1.tar.gz) = 1291471 bytes
! SHA1 (patch-aa) = 1a8804fe9211a968003ae8127ba5dff68f3bfd05
! SHA1 (patch-ab) = 687600bb9202e99b53a5923b00078bedf6125d87
Index: patches/patch-aa
===================================================================
RCS file: /cvsroot/pkgsrc/lang/swi-prolog/patches/patch-aa,v
retrieving revision 1.3
diff -c -r1.3 patch-aa
*** patch-aa	2001/06/17 14:32:28	1.3
--- patch-aa	2002/03/01 17:54:47
***************
*** 1,8 ****
  $NetBSD: patch-aa,v 1.3 2001/06/17 14:32:28 jtb Exp $
! 
! --- src/Makefile.in.orig	Tue May 22 20:54:34 2001
! +++ src/Makefile.in
! @@ -69,8 +69,9 @@
   CWFLAGS=@CWFLAGS@
   CIFLAGS=@CIFLAGS@
   CMFLAGS=@CMFLAGS@
--- 1,15 ----
  $NetBSD: patch-aa,v 1.3 2001/06/17 14:32:28 jtb Exp $
! --- src/Makefile.in.orig	Fri Mar  1 12:09:59 2002
! +++ src/Makefile.in	Fri Mar  1 12:11:59 2002
! @@ -63,6 +63,7 @@
!  ARCH=@ARCH@
!  INSTALL=@INSTALL@
!  INSTALL_PROGRAM=@INSTALL_PROGRAM@
! +INSTALL_SCRIPT=@INSTALL_SCRIPT@
!  INSTALL_DATA=@INSTALL_DATA@
!  MKDIR=@MKDIR@
!  REL_LN=$(srcdir)/rel-ln
! @@ -71,8 +72,9 @@
   CWFLAGS=@CWFLAGS@
   CIFLAGS=@CIFLAGS@
   CMFLAGS=@CMFLAGS@
***************
*** 13,19 ****
   
   PLFOREIGN=@PLFOREIGN@
   
! @@ -133,7 +134,7 @@
   	swipl swiplbin
   
   .c.o:
--- 20,26 ----
   
   PLFOREIGN=@PLFOREIGN@
   
! @@ -136,7 +138,7 @@
   	swipl swiplbin
   
   .c.o:
***************
*** 22,28 ****
   
   system:		$(PL)
   startup:	$(STARTUPPATH)
! @@ -223,7 +224,7 @@
   		ar x `$(CC) -print-libgcc-file-name` $@
   
   plld:		$(srcdir)/plld.c
--- 29,35 ----
   
   system:		$(PL)
   startup:	$(STARTUPPATH)
! @@ -243,7 +245,7 @@
   		ar x `$(CC) -print-libgcc-file-name` $@
   
   plld:		$(srcdir)/plld.c
***************
*** 31,33 ****
--- 38,49 ----
   
   tags:		$(srcdir)/TAGS
   
+ @@ -328,7 +330,7 @@
+  		$(INSTALL_DATA) ../dotfiles/dotplrc $(PLBASE)/dotfiles
+  		$(INSTALL_DATA) ../dotfiles/dotxpcerc $(PLBASE)/dotfiles
+  		$(INSTALL_DATA) ../dotfiles/README $(PLBASE)/dotfiles
+ -		$(INSTALL_PROGRAM) ../dotfiles/edit $(PLBASE)/dotfiles
+ +		$(INSTALL_SCRIPT) ../dotfiles/edit $(PLBASE)/dotfiles
+  
+  iinclude::
+  		cd ../include; \
Index: patches/patch-ab
===================================================================
RCS file: /cvsroot/pkgsrc/lang/swi-prolog/patches/patch-ab,v
retrieving revision 1.7
diff -c -r1.7 patch-ab
*** patch-ab	2001/07/15 12:27:38	1.7
--- patch-ab	2002/03/01 17:54:47
***************
*** 1,8 ****
  $NetBSD: patch-ab,v 1.7 2001/07/15 12:27:38 jtb Exp $
! 
! --- src/configure.orig	Sat Jul 14 22:41:44 2001
! +++ src/configure
! @@ -569,7 +569,6 @@
   EXTRAOBJ=""
   EXTRAHDR=""
   INSTALLTARGET=dv-install
--- 1,7 ----
  $NetBSD: patch-ab,v 1.7 2001/07/15 12:27:38 jtb Exp $
! --- src/configure.orig	Fri Mar  1 11:43:07 2002
! +++ src/configure	Fri Mar  1 11:43:26 2002
! @@ -978,7 +978,6 @@
   EXTRAOBJ=""
   EXTRAHDR=""
   INSTALLTARGET=dv-install



Relevant section of ftp://ftp.swi.psy.uva.nl/SWI-Prolog/ChangeLog
VERSION 5.0.1
=============

  * FIXED: configure message if libreadline is not found.

  * FIXED: Installing the manuals by Pixel <pixel@mandrakesoft.com>

* UPDATED: web-locations in help and Windows console.

  * MODIFIED: is_list/1 now checks for a poper list.  proper_list/1 has
    been moved to library(backcomp).  Thanks to Richard O'Keefe for pointing
    out this non-standard behaviour.

  * FIXED: name-clash in plld.c on AIX (Victor Bancroft).

VERSION 5.0.0
=============

  * ADDED: menu to PLWIN.EXE (the windows normal executable).  These menus
    can be programmed from Prolog. 

  * FIXED: make/0 detection of directories to update when using MKINDEX.pl
    (reported by Holger Kanwischer).

  * ADDED: autoload(Bool) option to load_files/2 to allow external packages
    to use the verbose/silent loading of demand-loaded files.  Now used for
    the pce_autoload/2 declaration.

  * FIXED: random/3 in library(quintus).  Thanks to Peng Te.

  * FIXED: improved type-checking converting code-lists or character-lists
    to text.  The routine is now also faster, especially if the argument is
    not a valid codelist of character list.

  * MODIFIED: Renamed write_ln/1 into writeln/1 for better compatibility.
    Added write_ln/1 to library(backcomp), so existing code shouldn't be
    bothered.

  * FIXED: sub_atom(+,-,-,+,-): crash on backtracking.  Thanks to Anjo
    Anjewierden.

VERSION 4.1.0
=============

  * ADDED: statistics/2 to recognise the keys used by Quintus and SICStus,
    for improved compatibility.

  * ADDED: library(main) for simple #! scripts processing the commandling.

  * FIXED: Make file_search_path/2 resolved paths relative to the current
    working directory work properly after changing CWD.  Reported by Bert
    Bredeweg.

  * ADDED: working_directory/2 to query/change working directory, providing
    better compatibility and a non-hacky way to get the current directory.

  * FIXED: Another problems handling `inlined' calls for the new implementation
    of call/1.  Thanks to Lyosha Ilyukhin.

  * FIXED/PORT: Win32 missing cleanupTerm(), some signed/unsigned problems
    in debug mode.

  * ENHANCED: latex2html to use \label{} following a \*section or \chapter
    as base for constructing a filename for that section.  Changed manual
    sources to give all chapters and sections a label.  This gives sections
    from the SWI-Prolog HTML manual a more stable URL.

  * FIXED: Problem handling `inlined' calls for the new implementation
    of call/1.  Thanks to Lourens van der Meij.

  * FIXED: Printing syntax errors holding ~-characters to avoid problems
    with format-special characters.  With patch by NIDE Naoyuki.  Thanks.

  * ADDED: Allow for MKINDEX.pl to control indexing process of library
    directories for auto-loading.

  * ADDED: call_cleanup/2 and call_cleanup/3.

  * ENHANCED: handling of call/1.  Instead of doing a full compilation of
    the clause the temporary clause now shares terms from the goal and
    is stored in the stack-frame itself.  In general call/1 will be faster
    when used on a term holding control-structures (,/2, ;/2, ->/2, etc)
    and does not suffice from getting slower when argument-terms get bigger.
    In addition, no unsolicitated copying of terms takes place.

    PLEASE TEST AND BE CAREFUL ON PRODUCTION SYSTEMS!!

  * FIXED: Stack overflow detection in PL_unify_list() and
    PL_unify_functor() on machines without mapped stacks (i.e. using the
    stack-shifter).

  * FIXED: current_predicate/1 using the pattern A:B/C (i.e. generating
    modules).  Also added current_predicate/1 to the manual.  
    Reported by Tolga Konik.

  * FIXED: Updated pl-term.c to fit with multi-threaded code as well as
    behave properly on PL_cleanup() followed by re-initialisation.

  * ENHANCED: Change errors in pl-term.c predicates to raise exceptions
    rather then just warning messages.

  * PORT: Now decided to allow for unaligned access only on systems where
    we *know* it works and is faster then emulating it (Intel x86).
    Improved hppa architecture detection.  Thanks to Michael Piefel.

  * ENHANCED: Better error message on common syntax-error leaving an
    extra `,' or `;' before ) or end-of-clause.

  * PORT: Improved configure check for non-aligned access on long values.
    On the ARM processor such access doesn't result in a crash, but in
    incorrect result.  With help of Sergio Martinez.

  * FIXED: Added overflow test for too many (>32 million) atoms.  TBD:
    turn into proper exception, but getting a relyable exception from
    PL_new_atom() is very difficult.  This at least is better than
    an uncontrolled crash.

  * FIXED: wait_for_input/3 crash if stream-list contains an
    non-stream.

  * FIXED: Handle "-F base" option in combination with -c file.pl.
    Reported by Alok Singh.

  * FIXED: configure when readline could not be found.  Nide Naoyuki.

  * ADDED: "-F base" option to plld, allows for embedding XPCE.

  * FIXED: Proper type-check on 1st argument of thread_create/[2,3]
    to avoid a low-level error when started with an invalid goal.

VERSION 4.0.11
==============

  * PORT: Integrated patches by John Towler, mostly dealing with
    building XPCE and the other SWI-Prolog packages on NetBSD.  Many
    apply to other BSD variations.  Thanks!

  * FIXED: Many typos and some clarifications in the manual pointed out
    by Jack Keel.  Thanks!

  * FIXED: predicate reference handling when running out of stack.  This
    could leave the system unstable after an out-of-stack, especially
    caused by dynamic code.

  * FIXED: Documentation of file_directory_name/2 (Lourens van der
    Meij).

  * PORT: Deal with missing rl_done declarations from older readline
    libraries (Nide Naoyuki).

  * FIXED: Language setting for test.pl (Nide Naoyuki).

  * FIXED: Check argument domain of random/1 and properly report error.
    Spotted by Pablo Lopez.

  * FIXED: Avoid absolute_file_name/[2,3] to dig indefinitely for
    non-existing paths if there is a recursive definition in the search
    paths (Bob Wielinga).

  * ADDED: set_prolog_flag(verbose_file_search, true). to make
    absolute_file_name/[2,3] print what it is doing.

  * FIXED: Avoid crash in concat_atom/2 when called with a list holding
    variables (Lourens van de Meij).

  * FIXED: avoid using alloca() in recorded terms with many variables.  Found
    by Lyosha Ilyukhin.

  * MODIFIED: current_thread(id, X) to fail silently if id is of the right
    type, but the thread doesn't exist.  dima@solvo.ru.

  * FIXED: library(readutil), read_file_to_terms: option handling and
    end-of-file detection.

  * FIXED: writef('\\X'), where is is not a digit raised exception.  Now
    writes \X.  Patch by Lyosha Ilyukhin.

  * FIXED: report "x, ), y" as syntax error rather then , ')', y.  Reported
    by Tolga Konik.

  * ADDED: installation of dotfiles (Unix Makefile)

  * ADDED: edit/1 to include definition for uedit32 (Tolga Konik)

  * IMPROVED: edit/1 feedback when calling user editor through shell/2.

  * FIXED: Cleanup after exceptions inside the generator of
    bagof/setof/findall.  Left inconsistent linked-list with possibility
    for random crashes on further use of these predicates.  Spotted by
    Lourens van der Meij.

  * ADDED: option lock to open/4, providing simple fcntl() based advisory
    locks on files.  POSIX only (Windows says it is, but appearently this
    isn't true as they don't have fcntl()).

  * MAINTAIN: Some improvements to manual generation (Serg Korolyov).

  * FIXED: expected type in sub_string/5 (Pierre.Nugues)


VERSION 4.0.10
==============

  * FIXED/ENHANCED: Win32: Various issues around installation.

  * FIXED: Prefer %HOMEDRIVE%\%HOMEPATH% over %USERPROFILE% for expanding
    ~ on Windows.

  * FIXED: MT version: cleanup mutex after closing a stream.  Memory leak
    detected by Andrew V. Diatchkov.

  * PORT: On machines using FPE rather then IEEE754 math error reporting
    supporting the fpsetmask() interface, use this interface to make math
    errors IEEE754 compliant.  This applies to FreeBSD upto 3.x.  Thanks
    to NIDE Naoyuki for a clear explanation and fix.

  * MODIFIED: Windows.  If Prolog was started as <exe> <file.pl> and file.pl
    is a script file, change directory to the directory holding the <file.pl>.
    This makes starting a script by opening it from the explorer and dragging
    a script on plwin.exe behave the same.

  * FIXED: Mistake handling script arguments (#!): forgotten string
    termination.

  * FIXED: "nmake /f makefile.mak DBG=true install" to install .PDB files for
    all .EXE and .DLL files making up SWI-Prolog.

  * ADDED: Allow single-keystroke selection of edit/1 with upto 10
    alternatives.

  * PORT: deal with latest libreadline that renamed
    filename_completion_function into rl_filename_completion_function.
    Thanks to Lourens van der Meij.

  * ADDED: edit/1 now merges more specific with more general matches:
    matching just a file is overruled by a match on the same file with
    a line number.  This implies that edit(Pred), where Pred is the
    name of a predicate in a file with the same name will immediately
    jump to the predicate.

  * FIXED: Two more mutex handling problems with patch contributed by
    Emerson dos Santos.

  * FIXED: with_mutex/2 deadlock, reported by Lyosha.

  * ADDED: library(socket): tcp_setopt/2 to set options on sockets.

  * FIXED: make library(socket) ready for multi-threaded operation.

  * FIXED: plld detection of multi-threaded version.  Patch by
    Kirill Evstigneev.

  * FIXED: wait_for_input/3 to check for input buffered in the Prolog
    stream.  Reported by Leonid V. Khramov.

  * FIXED: profiler/2 not to reset profile statistics.  Spotted by
    Mike Elston.

  * FIXED: <, >, =<, etc to handle user-defined arithmetic functions
    properly.  Reported by Emerson dos Santos.

  * ADDED: library(mime) as part of the clib package for parsing MIME
    serialized objects.  Requires maildrop development libraries installed.
    Currently Unix only.

  * MAINTAIN: Added "nmake /f makefile.mak DBG=true" to Windows building
    suite to make a version ready for debugging using MSVC.  Still to
    to: install all .pdb during "nmake /f makefile.mak DBG=true" install.


>Release-Note:
>Audit-Trail:
>Unformatted: