summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Browning <rlb@defaultvalue.org>2003-03-25 23:55:48 +0000
committerRob Browning <rlb@defaultvalue.org>2003-03-25 23:55:48 +0000
commit5ebbe4ef9b3beff3daf06a75818cfb700a08e879 (patch)
treef37b628dbf13183f60d107c0e0c8af78ed7b4b8b
parent2485c27901af736ea2e6fd50e8eb8f8d609326ac (diff)
downloadguile-5ebbe4ef9b3beff3daf06a75818cfb700a08e879.tar.gz
*** empty log message ***
-rw-r--r--.cvsignore11
-rw-r--r--ChangeLog56
-rw-r--r--NEWS195
-rw-r--r--libguile/gdbint.c4
4 files changed, 260 insertions, 6 deletions
diff --git a/.cvsignore b/.cvsignore
index e9d4915a9..1a63a4372 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1,7 +1,3 @@
-depcomp
-install-sh
-missing
-mkinstalldirs
BUGS
Makefile
Makefile.in
@@ -10,6 +6,7 @@ autom4te.cache
benchmark-guile
check-guile
check-guile.log
+confdefs.h
config.build-subdirs
config.cache
config.guess
@@ -19,10 +16,16 @@ config.log
config.status
config.sub
configure
+conftest
+conftest.c
+depcomp
guile-*.tar.gz
guile-tools
+install-sh
libtool
ltconfig
ltmain.sh
+missing
+mkinstalldirs
pre-inst-guile
stamp-h1
diff --git a/ChangeLog b/ChangeLog
index 5d010d2fd..a8533cf5c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,59 @@
+2003-03-25 Rob Browning <rlb@defaultvalue.org>
+
+ * configure.in: big overhaul to shift us to have separate private,
+ config.h, and public, scmconfig.h, configuration headers. Added a
+ fair amount of code to track down new required types: scm_t_uint8,
+ scm_t_uint16, scm_t_uint32, scm_t_int8, scm_t_int16, scm_t_int32,
+ and to detect optional types scm_t_uint64, scm_t_in64, long long,
+ unsigned long long, scm_t_ptrdiff, intptr_t, and uintptr_t.
+ (SCM_I_GSC_T_PTRDIFF): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_NEEDS_INTTYPES_H): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_NEEDS_STDINT_H): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_T_UINT8): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_T_UINT16): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_T_UINT32): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_T_UINT64): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_T_INT8): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_T_INT16): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_T_INT32): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_T_INT64): gen-scmconfig.h.in AC_SUBST var.
+ (USE_PTHREAD_THREADS): removed - handled by gen-scmconfig.c.
+ (USE_NULL_THREADS): removed - handled by gen-scmconfig.c.
+ (USE_COOP_THREADS): removed - handled by gen-scmconfig.c.
+ (SCM_I_GSC_USE_PTHREAD_THREADS): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_USE_NULL_THREADS): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_USE_COOP_THREADS): gen-scmconfig.h.in AC_SUBST var.
+ (STACK_GROWS_UP): removed - handled by gen-scmconfig.c.
+ (SCM_I_GSC_STACK_GROWS_UP): gen-scmconfig.h.in AC_SUBST var.
+ (GUILE_DEBUG_FREELIST): removed - handled by gen-scmconfig.c.
+ (SCM_I_GSC_GUILE_DEBUG_FREELIST): gen-scmconfig.h.in AC_SUBST var.
+ (GUILE_DEBUG): removed - handled by gen-scmconfig.c.
+ (SCM_I_GSC_GUILE_DEBUG): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_ENABLE_DEPRECATED): removed - handled by gen-scmconfig.c.
+ (SCM_I_GSC_ENABLE_DEPRECATED): gen-scmconfig.h.in AC_SUBST var.
+ (HAVE_ARRAYS): removed - handled by gen-scmconfig.c.
+ (SCM_I_GSC_HAVE_ARRAYS): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_ENABLE_ELISP): removed - handled by gen-scmconfig.c.
+ (SCM_I_GSC_ENABLE_ELISP): gen-scmconfig.h.in AC_SUBST var.
+ (SCM_I_GSC_C_INLINE): gen-scmconfig.h.in AC_SUBST var.
+ (DEBUG_EXTENSIONS): removed - handled by gen-scmconfig.c.
+ (READER_EXTENSIONS): removed - handled by gen-scmconfig.c.
+ (USE_THREADS): removed - handled by gen-scmconfig.c.
+ (GUILE_ISELECT): removed - handled by gen-scmconfig.c.
+ (DYNAMIC_LINKING): removed - handled by gen-scmconfig.c.
+
+ * README: merge information from INSTALL and remove at least some
+ of the stale bits.
+
+ * LICENSE: new file -- we should change this to the LGPL soon and
+ add COPYING.LIB to the distribution.
+
+ * autogen.sh: call autoreconf with --force. This may fix the
+ "order" problem below without having to have two calls.
+
+ * INSTALL: use the automake installed INSTALL file. The Guile
+ specific instructions are now in README.
+
2003-03-21 Marius Vollmer <marius.vollmer@uni-dortmund.de>
* autogen.sh: Invoke autoreconf twice since the required files do
diff --git a/NEWS b/NEWS
index 475e56514..1511eba78 100644
--- a/NEWS
+++ b/NEWS
@@ -3,12 +3,34 @@ Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Found
See the end for copying conditions.
Please send Guile bug reports to bug-guile@gnu.org.
+
+Each release reports the NEWS in the following sections:
+
+* Changes to the distribution
+* Changes to the stand-alone interpreter
+* Changes to Scheme functions and syntax
+* Changes to the C interface
+
Changes since the stable branch:
* Changes to the distribution
-** Guile now provide and uses an "effective" version number.
+** Guile now has separate private and public configuration headers.
+
+Guile now has config.h and libguile/scmconfig.h. The former is not
+installed and is private. The latter is installed and used by Guile's
+public headers. config.h is generated by configure and autoheader,
+and scmconfig.h is generated by a small C program, gen-scmconfig at
+build time based in part on the contents of config.h.
+
+Seen libguile/__scm.h and gen-scmconfig.c for more information.
+
+** The INSTALL file is now the generic automake installed one.
+
+Guile specific instructions can be found in the README.
+
+** Guile now provides and uses an "effective" version number.
Guile now provides scm_effective_version and effective-version
functions which return the "effective" version number. This is just
@@ -432,6 +454,177 @@ There is no replacement for undefine.
* Changes to the C interface
+** Many public #defines with generic names have been made private.
+
+#defines with generic names like HAVE_FOO or SIZEOF_FOO have been made
+private or renamed with a more suitable public name. See below for
+the ones which have been renamed.
+
+** HAVE_STDINT_H and HAVE_INTTYPES_H have removed from public use.
+
+HAVE_STDINT_H and HAVE_INTTYPES_H removed from public use. These are
+no longer needed since the older uses of stdint.h and inttypes.h are
+now handled by configure.in and gen-scmconfig.c.
+
+** USE_DLL_IMPORT is no longer defined publically.
+
+gen-scmconfig now uses it to decide what contents to place in the
+public scmconfig.h header without adding the USE_DLL_IMPORT itself.
+
+** HAVE_LIMITS_H has been removed from public use.
+
+gen-scmconfig now just uses HAVE_LIMITS_H to decide whether or not to
+add a limits.h include in scmconfig.h.
+
+** time.h, sys/time.h, etc. #ifdefery has been removed from public headers.
+
+gen-scmconfig now just uses the same logic to decide what time related
+#includes to add to scmconfig.h.
+
+** HAVE_STRUCT_TIMESPEC has been removed from public use.
+
+scmconfig.h now just defines scm_t_timespec.
+
+** HAVE_PTRDIFF has been removed from public use and Guile doesn't
+ define ptrdiff_t.
+
+Guile now publically defines scm_t_ptrdiff and
+SCM_SIZEOF_SCM_T_PTRDIFF in scmconfig.h, and all occurrences of
+ptrdiff_t have been replaced with scm_t_ptrdiff.
+
+Guile defines its own type this rather than just relying on ptrdiff_t
+and SCM_SIZEOF_PTRDIFF_T because Guile actually typedefs long to
+scm_t_ptrdiff when ptrdiff_t isn't available. A public "typedef long
+ptrdiff_t" could conflict with other headers.
+
+** HAVE_UINTPTR_T and HAVE_UINTPTR_T have been removed from public use.
+
+They are replaced by public definitions of SCM_SIZEOF_UINTPTR_T and
+SCM_SIZEOF_INTPTR_T. These are defined to 0 if the corresponding type
+is not available.
+
+** The public #define STDC_HEADERS has been renamed to SCM_HAVE_STDC_HEADERS.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define HAVE_SYS_SELECT has been renamed to
+ SCM_HAVE_SYS_SELECT_H.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define HAVE_FLOATINGPOINT_H has been renamed to
+ SCM_HAVE_FLOATINGPOINT_H.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define HAVE_IEEEFP_H has been renamed to SCM_HAVE_IEEEFP_H.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define HAVE_NAN_H has been renamed to SCM_HAVE_NAN_H.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define HAVE_WINSOCK2_H has been renamed to SCM_HAVE_WINSOCK2_H.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define HAVE_ARRAYS has been renamed to SCM_HAVE_ARRAYS.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define STACK_GROWS_UP has been renamed to SCM_STACK_GROWS_UP.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define USE_PTHREAD_THREADS has been renamed to
+ SCM_USE_PTHREAD_THREADS.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define USE_NULL_THREADS has been renamed to
+ SCM_USE_NULL_THREADS.
+
+The previous name was too generic for the global public namespace.
+
+** The public #define USE_COOP_THREADS has been renamed to
+ SCM_USE_COOP_THREADS.
+
+The previous name was too generic for the global public namespace.
+
+** SCM_C_INLINE is publically defined if possible.
+
+If the platform has a way to define inline functions, SCM_C_INLINE
+will be defined to that text. Otherwise it will be undefined. This
+is a little bit different than autoconf's normal handling of the
+inline define via AC_C_INLINE.
+
+** Guile now publically defines some basic type infrastructure.
+
+Guile always defines
+
+ SCM_SIZEOF_CHAR
+ SCM_SIZEOF_UNSIGNED_CHAR
+ SCM_SIZEOF_SHORT
+ SCM_SIZEOF_UNSIGNED_SHORT
+ SCM_SIZEOF_LONG
+ SCM_SIZEOF_UNSIGNED_LONG
+ SCM_SIZEOF_INT
+ SCM_SIZEOF_UNSIGNED_INT
+ SCM_SIZEOF_LONG_LONG /* defined to 0 if type not available */
+ SCM_SIZEOF_UNSIGNED_LONG_LONG /* defined to 0 if type not available */
+
+ scm_t_int8
+ scm_t_uint8
+ scm_t_int16
+ scm_t_uint16
+ scm_t_int32
+ scm_t_uint32
+
+Guile always defines
+
+ SCM_HAVE_T_INT64
+ SCM_HAVE_T_UINT64
+
+and when either of these are defined to 1, optionally defines
+
+ scm_t_int64
+ scm_t_uint64
+
+respectively.
+
+Guile always defines
+
+ scm_t_timespec
+
+** The preprocessor define USE_THREADS has been deprecated.
+
+Going forward, assume that the thread API is always present.
+
+** The preprocessor define GUILE_ISELECT has been deprecated.
+
+Going forward, assume that scm_internal_select is always present.
+
+** The preprocessor define READER_EXTENSIONS has been deprecated.
+
+Going forward, assume that the features represented by
+READER_EXTENSIONS are always present.
+
+** The preprocessor define DEBUG_EXTENSIONS has been deprecated.
+
+Going forward, assume that the features represented by
+DEBUG_EXTENSIONS are always present.
+
+** The preprocessor define DYNAMIC_LINKING has been deprecated.
+
+Going forward, assume that the features represented by
+DYNAMIC_LINKING are always present.
+
+** The preprocessor define STACK_DIRECTION has been deprecated.
+
+There should be no need to know about the stack direction for ordinary
+programs. (Do not use.)
+
** New function: scm_effective_version
Returns the "effective" version number. This is just the normal full
diff --git a/libguile/gdbint.c b/libguile/gdbint.c
index 5cfe0736c..e5a2ed0e2 100644
--- a/libguile/gdbint.c
+++ b/libguile/gdbint.c
@@ -43,7 +43,9 @@
* The author can be reached at djurfeldt@nada.kth.se
* Mikael Djurfeldt, SANS/NADA KTH, 10044 STOCKHOLM, SWEDEN */
-
+#if HAVE_CONFIG_H
+# include <config.h>
+#endif
#include "libguile/_scm.h"