summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Ryde <user42@zip.com.au>2006-04-17 00:18:11 +0000
committerKevin Ryde <user42@zip.com.au>2006-04-17 00:18:11 +0000
commit4f41661657a32a8e0147f4b793864b56496af4cf (patch)
tree62de837fa4097813e58eef1cfa3e61ea3f821c4a
parent2b829bbb3d685ff780a0e3c0888d1d1231e2bc0e (diff)
merge from 1.8 branch
-rw-r--r--ANNOUNCE52
-rw-r--r--ChangeLog34
-rw-r--r--INSTALL16
-rw-r--r--Makefile.am2
-rw-r--r--NEWS11
-rw-r--r--README3
-rw-r--r--THANKS2
-rw-r--r--am/Makefile.am2
-rw-r--r--am/maintainer-dirs2
-rw-r--r--am/pre-inst-guile2
-rw-r--r--configure.in62
-rw-r--r--guile-tools.in2
-rw-r--r--libguile.h2
-rw-r--r--pre-inst-guile-env.in2
-rw-r--r--pre-inst-guile.in2
15 files changed, 152 insertions, 44 deletions
diff --git a/ANNOUNCE b/ANNOUNCE
index e3feb7cee..89d8cbde4 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,31 +1,30 @@
-We are pleased to announce the release of Guile 1.7.2. This is a
-'technology preview' for the upcoming Guile 1.8. It can be found
-here:
+We are pleased to announce the release of Guile 1.8.0. It can be
+found here:
- ftp://alpha.gnu.org/gnu/guile/guile-1.7.2.tar.gz
+ ftp://ftp.gnu.org/gnu/guile/guile-1.8.0.tar.gz
-Its MD5 checksum is
+Its SHA1 checksum is
- 7fabb64198993e971f65a27846202388 guile-1.7.2.tar.gz
+ 22462680feeda1e5400195c01dee666162503d66 guile-1.8.0.tar.gz
-This version is guaranteed to contain serious bugs, and the publically
-visible interfaces will almost certainly change before 1.8 is
-released. The 1.7 releases might be termed "selected snapshots".
+We already know about some issues with 1.8.0, please check the mailing
+lists:
-Specifically, libguile has not yet been reviewed for thread-safeness.
+ http://www.gnu.org/software/guile/mail/mail.html
-We are releasing it anyway to start testing the new features, and to
-get feedback about how well Guile actually behaves in a multi-threaded
-setting.
+The NEWS file is quite long. Here are the most interesting entries:
-The shared library major versions have been bumped compared to the 1.6
-series, but they will not be bumped on binary incompatible changes
-within the 1.7 series.
+ Changes since 1.6:
+ * Guile is now licensed with the GNU Lesser General Public License.
-The NEWS file is quite long. Here are the most interesting entries:
+ * The manual is now licensed with the GNU Free Documentation License.
+
+ * We now use GNU MP for bignums.
- Changes since 1.7.1:
+ * We now have exact rationals, such as 1/3.
+
+ * We now use native POSIX threads for real concurrent threads.
* There is a new way to initalize Guile that allows one to use Guile
from threads that have not been created by Guile.
@@ -35,6 +34,23 @@ The NEWS file is quite long. Here are the most interesting entries:
* The low-level thread API has been removed.
+ * There is now support for copy-on-write substrings and
+ mutation-sharing substrings.
+
+ * A new family of functions for converting between C values and
+ Scheme values has been added that is future-proof and thread-safe.
+
+ * The INUM macros like SCM_MAKINUM have been deprecated.
+
+ * The macros SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_LENGTH,
+ SCM_SYMBOL_CHARS, and SCM_SYMBOL_LENGTH have been deprecated.
+
+ * There is a new way to deal with non-local exits and re-entries in
+ C code, which is nicer than scm_internal_dynamic_wind.
+
+ * There are new malloc-like functions that work better than
+ scm_must_malloc, etc.
+
* There is a new way to access all kinds of vectors and arrays from
C that is efficient and thread-safe.
diff --git a/ChangeLog b/ChangeLog
index 592cb2b93..926064ebc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,43 @@
+2006-04-16 Kevin Ryde <user42@zip.com.au>
+
+ * configure.in (stat64, off_t): New tests.
+
+2006-03-31 Kevin Ryde <user42@zip.com.au>
+
+ * configure.in (socklen_t): Enhance test for this type, coping with
+ need for <sys/socket.h> on MacOS X. Reported by Michael Tuexen and
+ Jay Cotton.
+
+2006-03-26 Marius Vollmer <mvo@zagadka.de>
+
+ * configure.in: Added check that defines
+ PTHREAD_ATTR_GETSTACK_WORKS when pthread_attr_getstack works for
+ the main thread.
+
+2006-02-26 Kevin Ryde <user42@zip.com.au>
+
+ * configure.in (AC_CHECK_FUNCS): Add dirfd.
+
+2006-02-20 Marius Vollmer <mvo@zagadka.de>
+
+ Released 1.8.0.
+
+ * GUILE-VERSION: Set version.
+
2006-02-06 Marius Vollmer <mvo@zagadka.de>
* GUILE-VERSION: Bumped versions for 1.9 series.
* configure.in: Removed --enable-arrays option.
+2006-02-06 Marius Vollmer <mvo@zagadka.de>
+
+ Branched for 1.8 series.
+
+ * GUILE-VERSION: Bumped version numbers.
+
+ * configure.in: Removed --enable-arrays option.
+
2005-12-14 Neil Jerram <neil@ossau.uklinux.net>
* NEWS: Remove entry claiming that breakpoints have been added,
diff --git a/INSTALL b/INSTALL
index 56b077d6a..23e5f25d0 100644
--- a/INSTALL
+++ b/INSTALL
@@ -102,16 +102,16 @@ for another architecture.
Installation Names
==================
-By default, `make install' will install the package's files in
-`/usr/local/bin', `/usr/local/man', etc. You can specify an
-installation prefix other than `/usr/local' by giving `configure' the
-option `--prefix=PREFIX'.
+By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc. You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX'.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
-give `configure' the option `--exec-prefix=PREFIX', the package will
-use PREFIX as the prefix for installing programs and libraries.
-Documentation and other data files will still use the regular prefix.
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
@@ -159,7 +159,7 @@ where SYSTEM can have one of these forms:
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
-use the `--target=TYPE' option to select the type of system they will
+use the option `--target=TYPE' to select the type of system they will
produce code for.
If you want to _use_ a cross compiler, that generates code for a
diff --git a/Makefile.am b/Makefile.am
index 661257928..a4da8500e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,6 +1,6 @@
## Process this file with automake to produce Makefile.in.
##
-## Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2006 Free Software Foundation, Inc.
##
## This file is part of GUILE.
##
diff --git a/NEWS b/NEWS
index d09bea93b..d96a2f239 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,5 @@
Guile NEWS --- history of user-visible changes.
-Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
See the end for copying conditions.
Please send Guile bug reports to bug-guile@gnu.org.
@@ -12,6 +12,13 @@ Each release reports the NEWS in the following sections:
* Changes to the C interface
+Changes in 1.8.1:
+
+* Bug fixes.
+** array-set! with bit vector.
+** string<? and friends follow char<? etc order on 8-bit chars.
+
+
Changes since the 1.6.x series:
* Changes to the distribution
@@ -7049,7 +7056,7 @@ Until then, gtcltk-lib provides trivial, low-maintenance functionality.
Copyright information:
-Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2006 Free Software Foundation, Inc.
Permission is granted to anyone to make or distribute verbatim copies
of this document as received, in any medium, provided that the
diff --git a/README b/README
index c0d292f15..6e66345d5 100644
--- a/README
+++ b/README
@@ -77,7 +77,7 @@ If you run the configure script with no arguments, it should examine
your system and set things up appropriately. However, there are a few
switches specific to Guile you may find useful in some circumstances.
---with-threads --- Build with thread support
+--without-threads --- Build without thread support
Build a Guile executable and library that supports multi-threading.
@@ -193,7 +193,6 @@ switches specific to Guile you may find useful in some circumstances.
number of objects of that kind.
--enable-guile-debug --- Include internal debugging functions
---disable-arrays --- omit array and uniform array support
--disable-posix --- omit posix interfaces
--disable-networking --- omit networking interfaces
--disable-regex --- omit regular expression interfaces
diff --git a/THANKS b/THANKS
index 6d464d6f6..4ddde9c42 100644
--- a/THANKS
+++ b/THANKS
@@ -42,9 +42,11 @@ For fixes or providing information which led to a fix:
Wolfgang Jaehrling
Aubrey Jaffer
Paul Jarc
+ Steve Juranich
Richard Kim
Bruce Korb
Matthias Köppe
+ Matt Kraai
Jeff Long
Han-Wen Nienhuys
Jan Nieuwenhuizen
diff --git a/am/Makefile.am b/am/Makefile.am
index 1aa2985cd..5702f1480 100644
--- a/am/Makefile.am
+++ b/am/Makefile.am
@@ -1,6 +1,6 @@
## Process this file with Automake to create Makefile.in
##
-## Copyright (C) 2002 Free Software Foundation, Inc.
+## Copyright (C) 2002, 2006 Free Software Foundation, Inc.
##
## This file is part of GUILE.
##
diff --git a/am/maintainer-dirs b/am/maintainer-dirs
index f72e857c7..c64268de9 100644
--- a/am/maintainer-dirs
+++ b/am/maintainer-dirs
@@ -1,6 +1,6 @@
## am/maintainer-dirs --- define workbook and mscripts vars
-## Copyright (C) 2002 Free Software Foundation
+## Copyright (C) 2002, 2006 Free Software Foundation
##
## This file is part of GUILE.
##
diff --git a/am/pre-inst-guile b/am/pre-inst-guile
index 7594969a0..c1a7407c9 100644
--- a/am/pre-inst-guile
+++ b/am/pre-inst-guile
@@ -1,6 +1,6 @@
## am/pre-inst-guile --- define preinstguile and preinstguiletool vars
-## Copyright (C) 2002 Free Software Foundation
+## Copyright (C) 2002, 2006 Free Software Foundation
##
## This file is part of GUILE.
##
diff --git a/configure.in b/configure.in
index cd9e34e33..9146daa9a 100644
--- a/configure.in
+++ b/configure.in
@@ -4,7 +4,7 @@ dnl
define(GUILE_CONFIGURE_COPYRIGHT,[[
-Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
This file is part of GUILE
@@ -241,6 +241,7 @@ AC_CHECK_SIZEOF(intptr_t)
AC_CHECK_SIZEOF(uintptr_t)
AC_CHECK_SIZEOF(ptrdiff_t)
AC_CHECK_SIZEOF(size_t)
+AC_CHECK_SIZEOF(off_t)
if test "$ac_cv_sizeof_long" -ne "$ac_cv_sizeof_void_p"; then
AC_MSG_ERROR(sizes of long and void* are not identical)
@@ -515,9 +516,6 @@ AC_SUBST([SCM_I_GSC_T_UINTMAX])
AC_SUBST([SCM_I_GSC_NEEDS_STDINT_H])
AC_SUBST([SCM_I_GSC_NEEDS_INTTYPES_H])
-AC_CHECK_TYPE(socklen_t, int)
-AC_CHECK_TYPE(struct ip_mreq)
-
AC_HEADER_STDC
AC_HEADER_DIRENT
AC_HEADER_TIME
@@ -532,6 +530,18 @@ sys/time.h sys/timeb.h sys/times.h sys/stdtypes.h sys/types.h \
sys/utime.h time.h unistd.h utime.h pwd.h grp.h sys/utsname.h \
direct.h])
+# On MacOS X <sys/socklen.h> contains socklen_t, so must include that
+# when testing.
+AC_CHECK_TYPE(socklen_t, ,
+ [AC_DEFINE_UNQUOTED(socklen_t, int,
+ [Define to `int' if <sys/socket.h> does not define.])],
+ [#if HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#include <sys/socket.h>
+])
+AC_CHECK_TYPE(struct ip_mreq)
+
GUILE_HEADER_LIBC_WITH_UNISTD
AC_TYPE_GETGROUPS
@@ -584,10 +594,11 @@ AC_CHECK_HEADERS([assert.h crt_externs.h])
# fesetround - available in C99, but not older systems
# gmtime_r - recent posix, not on old systems
# readdir_r - recent posix, not on old systems
+# stat64 - SuS largefile stuff, not on old systems
# sysconf - not on old systems
# _NSGetEnviron - Darwin specific
#
-AC_CHECK_FUNCS([DINFINITY DQNAN ctermid fesetround ftime fchown getcwd geteuid gettimeofday gmtime_r lstat mkdir mknod nice readdir_r readlink rename rmdir select setegid seteuid setlocale setpgid setsid sigaction siginterrupt strftime strptime symlink sync sysconf tcgetpgrp tcsetpgrp times uname waitpid strdup system usleep atexit on_exit chown link fcntl ttyname getpwent getgrent kill getppid getpgrp fork setitimer getitimer strchr strcmp index bcopy memcpy rindex unsetenv _NSGetEnviron])
+AC_CHECK_FUNCS([DINFINITY DQNAN ctermid fesetround ftime fchown getcwd geteuid gettimeofday gmtime_r lstat mkdir mknod nice readdir_r readlink rename rmdir select setegid seteuid setlocale setpgid setsid sigaction siginterrupt stat64 strftime strptime symlink sync sysconf tcgetpgrp tcsetpgrp times uname waitpid strdup system usleep atexit on_exit chown link fcntl ttyname getpwent getgrent kill getppid getpgrp fork setitimer getitimer strchr strcmp index bcopy memcpy rindex unsetenv _NSGetEnviron])
# Reasons for testing:
# netdb.h - not in mingw
@@ -864,9 +875,10 @@ AC_CHECK_HEADERS(floatingpoint.h ieeefp.h nan.h)
# Reasons for testing:
# asinh, acosh, atanh, trunc - C99 standard, generally not available on
# older systems
+# dirfd - mainly BSD derived, not in older systems
# sincos - GLIBC extension
#
-AC_CHECK_FUNCS(asinh acosh atanh copysign finite sincos trunc)
+AC_CHECK_FUNCS(asinh acosh atanh copysign dirfd finite sincos trunc)
# C99 specifies isinf and isnan as macros.
# HP-UX provides only macros, no functions.
@@ -1025,6 +1037,44 @@ esac
AC_MSG_CHECKING(what kind of threads to support)
AC_MSG_RESULT($with_threads)
+## Check whether pthread_attr_getstack works for the main thread
+
+AC_MSG_CHECKING(whether pthread_attr_getstack works for the main thread)
+old_CFLAGS="$CFLAGS"
+CFLAGS="$PTHREAD_CFLAGS $CFLAGS"
+AC_TRY_RUN(
+[
+#if HAVE_PTHREAD_ATTR_GETSTACK
+#include <pthread.h>
+
+int main ()
+{
+ pthread_attr_t attr;
+ void *start, *end;
+ size_t size;
+
+ pthread_getattr_np (pthread_self (), &attr);
+ pthread_attr_getstack (&attr, &start, &size);
+ end = (char *)start + size;
+
+ if ((void *)&attr < start || (void *)&attr >= end)
+ return 1;
+ else
+ return 0;
+}
+#else
+int main ()
+{
+ return 1;
+}
+#endif
+],
+[works=yes
+AC_DEFINE(PTHREAD_ATTR_GETSTACK_WORKS, [1], [Define when pthread_att_get_stack works for the main thread])],
+[works=no])
+CFLAGS="$old_CFLAGS"
+AC_MSG_RESULT($works)
+
## Cross building
if test "$cross_compiling" = "yes"; then
AC_MSG_CHECKING(cc for build)
diff --git a/guile-tools.in b/guile-tools.in
index a59485774..a4db08f02 100644
--- a/guile-tools.in
+++ b/guile-tools.in
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2006 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
diff --git a/libguile.h b/libguile.h
index 3703aadde..48f69fbb9 100644
--- a/libguile.h
+++ b/libguile.h
@@ -1,7 +1,7 @@
#ifndef SCM_LIBGUILE_H
#define SCM_LIBGUILE_H
-/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/pre-inst-guile-env.in b/pre-inst-guile-env.in
index b5ab0e715..e15290605 100644
--- a/pre-inst-guile-env.in
+++ b/pre-inst-guile-env.in
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright (C) 2003 Free Software Foundation
+# Copyright (C) 2003, 2006 Free Software Foundation
#
# This file is part of GUILE.
#
diff --git a/pre-inst-guile.in b/pre-inst-guile.in
index 5c47b3426..ea8e4b1b4 100644
--- a/pre-inst-guile.in
+++ b/pre-inst-guile.in
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright (C) 2002 Free Software Foundation
+# Copyright (C) 2002, 2006 Free Software Foundation
#
# This file is part of GUILE.
#