Sat Apr 30 11:46:15 2011 UTC ()
Update GNU Smalltalk to version 3.2.4
List of user-visible changes in GNU Smalltalk
NEWS FROM 3.2.3 TO 3.2.4
o Autoload is extended to allow plugging in arbitrary loaders.
o Array items in a CStruct didn't work, this is fixed now.
o DLD could have problems when the same library was requested multiple
times.
o Errors in the bind() system call were not detected correctly; this
has been fixed.
o Fixes for platforms with 113-bit long doubles.
o Fixes to Delay in the presence of delays with the exact same expiration.
o Fixes to the HTTP package, including correct flushing of POST requests
and doesNotUnderstand exceptions when the host did not exist.
o GLUT bindings now build correctly under Windows.
o Many smalltalk-mode improvements.
o New methods: TextCollector>>#critical:,
o nil can be passed to a C function accepting a #cObjectPtr (i.e.
void **) argument.
o SocketAddress>>#allByName: returns nil now, instead of an empty array,
when getaddrinfo succeeds but returns no address for the requested
address class.
o SocketAddress>>#byName: returns addresses for the default address class
when the receiver is SocketAddress (and not a subclass).
o Support for older versions of GnuTLS.
o Swazoo's static content serving was broken and has been fixed.
o The GST_PACKAGE macro supports having multiple .la files in its last
argument. gst-package's --prepare option was broken and has been fixed.
o The NetClients exception ProtocolError now includes the erroneous
response. Similarly, the package includes ProtocolNotification which
is used, for example, for HTTP redirects.
o Updated the Squeak/Pharo fileout parser.
o Updated VisualGST.
-----------------------------------------------------------------------------
NEWS FROM 3.2.2 TO 3.2.3
o Class attributes can have more than 1 keyword.
o Documented #byteArrayOut C call argument passing mode.
o Fixed crash when an invalid UnicodeString was created using
#changeClassTo:
o Fixed deadlock with #atEnd and two-way pipes.
o Fixed bugs when adding instance variables to an existing class.
o Fixed Socket>>#isPeerAlive falsely returning true.
o Fixed some bugs in UTF-7 conversion.
o FreeBSD port and 64-bit Darwin port. The latter requires a
pre-installed libsigsegv.
o "gst-convert -f squeak" reads binary selectors with more than two
characters; however they should be shortened with rewrite rules
to use the output.
o gst-doc can generate sensible documentation for a package if
some of its prerequisite are not loaded, even if some of the
package's classes subclass from the prerequisite.
o GTK+ bindings are generated correctly for newer versions of GLib
(tested up to 2.26).
o If found, pre-installed libsigsegv, libffi and libltdl are used by
default.
o Improvements for Emacs mode. Installation of Emacs mode detects
Debian's /etc/emacs/site-start.d, and a --with-lispstartdir option
is provided for distributions that are not Red Hat- or Debian-based.
o Machine-specific optimizations for x86-64, and other microoptimizations
resulting in small but consistent performance improvements.
o More out of memory conditions are detected.
o New methods: ByteArray>>#castTo:, ByteArray>>#asCData,
String>>#asCData, UndefinedObject>>#inheritsFrom:
o New goodie: Announcements.
o Number class>>#readFrom: can parse numbers in scientific notation.
o Package descriptions do not need to include a <file> item for each
<filein> item. However, it is still possible to include them for
backwards compatibility, and it is possible to include a source file
as both <filein> and <built-file> (so that gst-package --dist will
skip it).
o Packages can be downloaded using HTTPS if GnuTLS libraries are
present.
o Performance statistics printed by -V are now correct.
o Scoped methods ("A class >> a") can be used in an "A class [ ... ]"
block.
o Semaphore>>#wait returns nil if the wait was interrupted externally
(e.g. from Process>>#resume).
o String>>#asCData: and String>>#asCData NULL-terminate their output.
o Support for timeouts when waiting on a Semaphore.
o Swazoo supports SCGI. Its configuration however is still manual,
since the Seaside and Iliad adaptors do not know about it.
o Updated VisualGST.
(asau)
diff -r1.57 -r1.58 pkgsrc/lang/smalltalk/Makefile
diff -r1.21 -r1.22 pkgsrc/lang/smalltalk/PLIST
diff -r1.22 -r1.23 pkgsrc/lang/smalltalk/distinfo
diff -r1.10 -r0 pkgsrc/lang/smalltalk/patches/patch-aa
diff -r1.4 -r0 pkgsrc/lang/smalltalk/patches/patch-ac
diff -r1.4 -r1.5 pkgsrc/lang/smalltalk/patches/patch-ae
diff -r1.2 -r0 pkgsrc/lang/smalltalk/patches/patch-af
diff -r1.3 -r1.4 pkgsrc/lang/smalltalk/patches/patch-ah
--- pkgsrc/lang/smalltalk/Makefile 2011/04/22 13:44:00 1.57
+++ pkgsrc/lang/smalltalk/Makefile 2011/04/30 11:46:15 1.58
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.57 2011/04/22 13:44:00 obache Exp $
+# $NetBSD: Makefile,v 1.58 2011/04/30 11:46:15 asau Exp $
-DISTNAME= smalltalk-3.2.2
-PKGREVISION= 4
+DISTNAME= smalltalk-3.2.4
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GNU:=smalltalk/}
@@ -9,7 +8,7 @@
HOMEPAGE= http://www.smalltalk.org/versions/GNUSmalltalk.html
COMMENT= GNU Smalltalk: A smalltalk-80 implementation
-ONLY_FOR_PLATFORM= *-*-i386 *-*-sparc *-*-powerpc
+ONLY_FOR_PLATFORM= *-*-i386 *-*-x86_64 *-*-sparc *-*-powerpc
PKG_DESTDIR_SUPPORT= user-destdir
--- pkgsrc/lang/smalltalk/PLIST 2010/07/31 22:06:24 1.21
+++ pkgsrc/lang/smalltalk/PLIST 2011/04/30 11:46:15 1.22
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.21 2010/07/31 22:06:24 asau Exp $
+@comment $NetBSD: PLIST,v 1.22 2011/04/30 11:46:15 asau Exp $
bin/gst
bin/gst-blox
bin/gst-browser
@@ -27,7 +27,9 @@
lib/smalltalk/gstopengl.la
lib/smalltalk/i18n.la
lib/smalltalk/iconv.la
+lib/smalltalk/libc.la
lib/smalltalk/zlib.la
+libexec/smalltalk/gnutls-wrapper
libexec/smalltalk/vfs/deb
libexec/smalltalk/vfs/lslR
libexec/smalltalk/vfs/mailfs
@@ -50,6 +52,7 @@
man/man1/gst.1
share/aclocal/gst-package.m4
share/aclocal/gst.m4
+share/smalltalk/Announcements.star
share/smalltalk/BLOXBrowser.star
share/smalltalk/Blox.star
share/smalltalk/BloxGTK.star
--- pkgsrc/lang/smalltalk/distinfo 2010/07/31 22:06:24 1.22
+++ pkgsrc/lang/smalltalk/distinfo 2011/04/30 11:46:15 1.23
@@ -1,10 +1,7 @@
-$NetBSD: distinfo,v 1.22 2010/07/31 22:06:24 asau Exp $
+$NetBSD: distinfo,v 1.23 2011/04/30 11:46:15 asau Exp $
-SHA1 (smalltalk-3.2.2.tar.gz) = a985d69e4760420614c9dfe4d3605e47c5eb8faa
+SHA1 (smalltalk-3.2.4.tar.gz) = 6b164e145c1118ad74770bb15614478d47f55523
-RMD160 (smalltalk-3.2.2.tar.gz) = ec1d0c36139d76f5ced530ca7f8228bd0ff0ddb2
+RMD160 (smalltalk-3.2.4.tar.gz) = d8ca6b888311a70748071ff4024e31adeb0a920f
-Size (smalltalk-3.2.2.tar.gz) = 5825782 bytes
+Size (smalltalk-3.2.4.tar.gz) = 5877496 bytes
-SHA1 (patch-aa) = c82dfcc53ce4177ae051041106c6c2efdb61cb4e
+SHA1 (patch-ae) = c92422f2ac5378dafc65762a69c0dc840d974363
-SHA1 (patch-ac) = 15e45687aca1910818eabb82236de8bdd0abed99
+SHA1 (patch-ah) = eaa03cf41f1c30acd1762cb6389dfe0157ce551b
-SHA1 (patch-ae) = 1f73f0e1a5a11099ba5cf636bcc154a83b617cc4
-SHA1 (patch-af) = 76744e495b5bb180b5acdbcc450d7090ed708113
-SHA1 (patch-ah) = 9ff279fd482cbc2d10a35cd87f0c78d8e7a07277
--- pkgsrc/lang/smalltalk/patches/patch-ae 2010/07/31 22:06:25 1.4
+++ pkgsrc/lang/smalltalk/patches/patch-ae 2011/04/30 11:46:15 1.5
@@ -1,4 +1,4 @@
-$NetBSD: patch-ae,v 1.4 2010/07/31 22:06:25 asau Exp $
+$NetBSD: patch-ae,v 1.5 2011/04/30 11:46:15 asau Exp $
--- configure.orig 2010-04-21 14:03:23.000000000 +0400
+++ configure 2010-05-02 22:52:09.000000000 +0400
@@ -12,12 +12,3 @@
lrint trunc strsep strpbrk symlink mkdtemp
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-@@ -24753,8 +24754,6 @@
-
- ac_config_files="$ac_config_files tests/atlocal"
-
--ac_config_files="$ac_config_files libc.la"
--
-
- ac_config_files="$ac_config_files Makefile"
-
--- pkgsrc/lang/smalltalk/patches/patch-ah 2010/07/31 22:06:25 1.3
+++ pkgsrc/lang/smalltalk/patches/patch-ah 2011/04/30 11:46:15 1.4
@@ -1,14 +1,24 @@
-$NetBSD: patch-ah,v 1.3 2010/07/31 22:06:25 asau Exp $
+$NetBSD: patch-ah,v 1.4 2011/04/30 11:46:15 asau Exp $
-Avoid creating libtool archive.
+Link against pthreads.
---- Makefile.in.orig 2010-05-02 11:44:41.000000000 +0400
+--- Makefile.in.orig 2011-03-21 21:12:57.000000000 +0300
-+++ Makefile.in 2010-05-02 22:50:16.000000000 +0400
++++ Makefile.in 2011-04-28 21:10:54.000000000 +0400
-@@ -499,7 +499,6 @@
+@@ -525,14 +525,14 @@
- ###########################################################
+ -DCMD_XZIP="\"$(XZIP)\"" -DCMD_INSTALL="\"$(INSTALL)\"" \
- pkgconfigdir = $(libdir)/pkgconfig
+ -DCMD_LN_S="\"$(LN_S)\"" $(RELOC_CPPFLAGS) $(am__append_4)
- nodist_pkgconfig_DATA = gnu-smalltalk.pc
+ gst_SOURCES = main.c
--module_DATA = libc.la
+-gst_LDADD = libgst/libgst.la lib-src/library.la @ICON@ $(am__append_2)
- noinst_DATA = gst.im
++gst_LDADD = libgst/libgst.la lib-src/library.la $(PTHREAD_LDADD) $(PTHREAD_LIBS) @ICON@ $(am__append_2)
- bin_SCRIPTS = gst-config
+ gst_DEPENDENCIES = libgst/libgst.la lib-src/library.la @ICON@ \
- DISTCLEANFILES = termbold termnorm pkgrules.tmp config.h
+ $(am__append_3)
+-gst_LDFLAGS = -export-dynamic $(RELOC_LDFLAGS) $(LIBFFI_EXECUTABLE_LDFLAGS)
++gst_LDFLAGS = -export-dynamic $(RELOC_LDFLAGS) $(LIBFFI_EXECUTABLE_LDFLAGS) $(PTHREAD_LDFLAGS)
+ gst_tool_SOURCES = gst-tool.c
+ gst_tool_LDADD = libgst/libgst.la lib-src/library.la @ICON@
+ gst_tool_DEPENDENCIES = libgst/libgst.la lib-src/library.la @ICON@
+-gst_tool_LDFLAGS = -export-dynamic $(RELOC_LDFLAGS) $(LIBFFI_EXECUTABLE_LDFLAGS)
++gst_tool_LDFLAGS = -export-dynamic $(RELOC_LDFLAGS) $(LIBFFI_EXECUTABLE_LDFLAGS) $(PTHREAD_LDFLAGS)
+ winewrapper_SOURCES = winewrapper.c
+ GST_EXTRA_TOOLS = gst-reload gst-sunit gst-blox gst-package gst-convert \
+ gst-doc gst-remote gst-profile gst-browser