guile-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

guile/guile-core ChangeLog NEWS configure.in gu...


From: Stefan Jahn
Subject: guile/guile-core ChangeLog NEWS configure.in gu...
Date: Sun, 04 Nov 2001 10:52:30 -0500

CVSROOT:        /cvs
Module name:    guile
Changes by:     Stefan Jahn <address@hidden>    01/11/04 10:52:30

Modified files:
        guile-core     : ChangeLog NEWS configure.in 
        guile-core/guile-readline: ChangeLog configure.in readline.c 
                                   readline.h 
        guile-core/libguile: ChangeLog Makefile.am __scm.h coop-defs.h 
                             coop.c filesys.c fports.c guile.c 
                             num2integral.i.c numbers.c posix.c 
        guile-core/qt  : ChangeLog Makefile.am qt.h.in 
        guile-core/qt/md: Makefile.am i386.h 
        guile-core/srfi: ChangeLog srfi-13.h srfi-14.h srfi-4.h 
        guile-core/test-suite: ChangeLog 
        guile-core/test-suite/tests: ports.test 
Added files:
        guile-core/qt  : libqthreads.def 
        guile-core/qt/md: i386.asm 

Log message:
        2001-11-04  Stefan Jahn  <address@hidden>
        
        * NEWS: Corrected remarks about SCM_API.
        
        * configure.in: Defining USE_DLL_IMPORT definition to indicate
        usage of DLL import macros in `libguile/__scm.h'.
        (LIBOBJS): Removed `fileblocks.o' from the list of object files.
        Somehow Jim Blandy's patch from 1997 did not survive.
        
        2001-11-04  Stefan Jahn  <address@hidden>
        
        * configure.in (EXTRA_DEFS): Follow-up patch.  Using SCM_IMPORT
        instead of __SCM_IMPORT__.
        
        * readline.c (scm_readline_init_ports): Disable input/output
        stream redirection for Win32.  The readline package for Win32
        does not support this.  The guile-readline library works fine
        for command line editing.
        
        * readline.h (SCM_RL_API): Renamed __FOO__ macros into FOO.
        
        2001-11-04  Stefan Jahn  <address@hidden>
        
        * Makefile.am (libguile_la_LIBADD): Added $(THREAD_LIBS_LOCAL)
        here (was at guile_LDADD) which describes the dependency
        correctly and allows a clean build on Win32.
        
        * __scm.h (SCM_API): Follow-up patch.  Renamed __FOO__ macros
        into FOO.
        
        * __scm.h: USE_DLL_IMPORT indicates the usage of the DLL
        import macros for external libraries (libcrypt, libqthreads,
        libreadline and libregex).
        
        * coop-defs.h: Include <winsock2.h> for `struct timeval'.
        
        * posix.c (flock): Added support for flock() in M$-Windows.
        
        * guile.c (SCM_IMPORT): Follow-up patch.  Use SCM_IMPORT instead
        of __SCM_IMPORT__.
        
        * fports.c (getflags): Differentiate reading and writing pipes
        descriptors.
        
        * filesys.c (S_IS*): Redefine all of the S_IS*() macros for
        M$-Windows.
        
        * coop.c (coop_condition_variable_timed_wait_mutex): Use
        conditionalized error code if `ETIMEDOUT' is not available.
        (scm_thread_usleep): Remove bogus declaration of `struct timeval
        timeout'.
        
        * numbers.c (PTRDIFF_MIN): Moved this definition where it actually
        belongs.  That is because NO_PREPRO_MAGIC gets undefined after
        each inclusion of `num2integral.i.c'.
        (SIZE_MAX): Define NO_PREPRO_MAGIC if SIZE_MAX is undefined.
        
        2001-11-04  Stefan Jahn  <address@hidden>
        
        * md/Makefile.am (EXTRA_DIST): Added `i386.asm'.
        
        * md/i386.asm: New file.  Contains the Intel syntax version for
        nasm/tasm/masm of the file `i386.s'.
        
        * qt.h.in: Definition of QT_API, QT_IMPORT and QT_EXPORT.
        Prefixed each symbols which is meant to go into a DLL.
        
        * Makefile.am (libqthreads_la_LDFLAGS):  Put `-no-undefined'
        into LDFLAGS to support linkers which do not allow unresolved
        symbols inside shared libraries.
        (EXTRA_DIST): Add `libqthreads.def', which is an export file
        definition for M$-Windows.  It defines exported symbols.  This is
        necessary because the M$VC linker does not know how to export
        assembler symbols into a DLL.
        
        2001-11-04  Stefan Jahn  <address@hidden>
        
        * srfi-13.h, srfi-14.h, srfi-4.h: Follow-up patch.  Renamed
        __FOO__ macros into FOO.
        
        2001-11-04  Stefan Jahn  <address@hidden>
        
        * tests/ports.test: Run (close-port) before (delete-file) if
        necessary/advisory.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/ChangeLog.diff?cvsroot=OldCVS&tr1=1.310&tr2=1.311&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/NEWS.diff?cvsroot=OldCVS&tr1=1.325&tr2=1.326&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/configure.in.diff?cvsroot=OldCVS&tr1=1.169&tr2=1.170&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/guile-readline/ChangeLog.diff?cvsroot=OldCVS&tr1=1.69&tr2=1.70&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/guile-readline/configure.in.diff?cvsroot=OldCVS&tr1=1.14&tr2=1.15&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/guile-readline/readline.c.diff?cvsroot=OldCVS&tr1=1.41&tr2=1.42&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/guile-readline/readline.h.diff?cvsroot=OldCVS&tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/ChangeLog.diff?cvsroot=OldCVS&tr1=1.1540&tr2=1.1541&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/Makefile.am.diff?cvsroot=OldCVS&tr1=1.146&tr2=1.147&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/__scm.h.diff?cvsroot=OldCVS&tr1=1.78&tr2=1.79&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/coop-defs.h.diff?cvsroot=OldCVS&tr1=1.24&tr2=1.25&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/coop.c.diff?cvsroot=OldCVS&tr1=1.28&tr2=1.29&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/filesys.c.diff?cvsroot=OldCVS&tr1=1.107&tr2=1.108&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/fports.c.diff?cvsroot=OldCVS&tr1=1.105&tr2=1.106&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/guile.c.diff?cvsroot=OldCVS&tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/num2integral.i.c.diff?cvsroot=OldCVS&tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/numbers.c.diff?cvsroot=OldCVS&tr1=1.148&tr2=1.149&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/posix.c.diff?cvsroot=OldCVS&tr1=1.95&tr2=1.96&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/qt/libqthreads.def?cvsroot=OldCVS&rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/qt/ChangeLog.diff?cvsroot=OldCVS&tr1=1.39&tr2=1.40&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/qt/Makefile.am.diff?cvsroot=OldCVS&tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/qt/qt.h.in.diff?cvsroot=OldCVS&tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/qt/md/i386.asm?cvsroot=OldCVS&rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/qt/md/Makefile.am.diff?cvsroot=OldCVS&tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/qt/md/i386.h.diff?cvsroot=OldCVS&tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/srfi/ChangeLog.diff?cvsroot=OldCVS&tr1=1.73&tr2=1.74&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/srfi/srfi-13.h.diff?cvsroot=OldCVS&tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/srfi/srfi-14.h.diff?cvsroot=OldCVS&tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/srfi/srfi-4.h.diff?cvsroot=OldCVS&tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/test-suite/ChangeLog.diff?cvsroot=OldCVS&tr1=1.111&tr2=1.112&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/test-suite/tests/ports.test.diff?cvsroot=OldCVS&tr1=1.27&tr2=1.28&r1=text&r2=text

Patches:
Index: guile/guile-core/ChangeLog
diff -u guile/guile-core/ChangeLog:1.310 guile/guile-core/ChangeLog:1.311
--- guile/guile-core/ChangeLog:1.310    Thu Nov  1 19:06:06 2001
+++ guile/guile-core/ChangeLog  Sun Nov  4 10:52:29 2001
@@ -1,3 +1,12 @@
+2001-11-04  Stefan Jahn  <address@hidden>
+
+       * NEWS: Corrected remarks about SCM_API.
+
+       * configure.in: Defining USE_DLL_IMPORT definition to indicate
+       usage of DLL import macros in `libguile/__scm.h'.
+       (LIBOBJS): Removed `fileblocks.o' from the list of object files.
+       Somehow Jim Blandy's patch from 1997 did not survive.
+
 2001-11-02  Marius Vollmer  <address@hidden>
 
        Support for native Win32.  Thanks to Stefan Jahn!
@@ -6,9 +15,9 @@
         build systems which do not have symbolic links.
         * configure.in: Define AC_LIBTOOL_WIN32_DLL to build clean dlls
         on Win32 platforms.
-        Checking for `ws2_32.dll', `winsock2.h', add `uname.o' and
-        `dirent.o' and define extra compiler flags necessary to build
-        clean dlls.
+        Checking for `ws2_32.dll', `winsock2.h', add `win32-uname.o' 
+       and `win32-dirent.o' and define extra compiler flags necessary 
+       to build clean dlls.
         Check for `regcomp()' inside `-lregex'.
 
 2001-10-26  Thien-Thi Nguyen  <address@hidden>
Index: guile/guile-core/NEWS
diff -u guile/guile-core/NEWS:1.325 guile/guile-core/NEWS:1.326
--- guile/guile-core/NEWS:1.325 Sat Nov  3 13:46:31 2001
+++ guile/guile-core/NEWS       Sun Nov  4 10:52:29 2001
@@ -32,12 +32,12 @@
 common of which is just "extern" for Unix platforms.  On Win32, it can
 be used to control which symbols are exported from a DLL.
 
-If you `#define __SCM_IMPORT__' before including <libguile.h>, SCM_API
+If you `#define SCM_IMPORT' before including <libguile.h>, SCM_API
 will expand into "__declspec (dllimport) extern", which is needed for
 linking to the Guile DLL in Windows.
 
-There are also __SCM_RL_IMPORT__, __SCM_SRFI1314_IMPORT__, and
-__SCM_SRFI4_IMPORT__, for the corresponding libraries.
+There are also SCM_RL_IMPORT, QT_IMPORT, SCM_SRFI1314_IMPORT, and
+SCM_SRFI4_IMPORT, for the corresponding libraries.
 
 Changes since Guile 1.4:
 
Index: guile/guile-core/configure.in
diff -u guile/guile-core/configure.in:1.169 guile/guile-core/configure.in:1.170
--- guile/guile-core/configure.in:1.169 Thu Nov  1 19:05:57 2001
+++ guile/guile-core/configure.in       Sun Nov  4 10:52:29 2001
@@ -228,19 +228,18 @@
 dnl Check for Winsock and other functionality on Win32 (*not* CygWin)
 dnl
 EXTRA_DEFS=""
-EXTRA_LIB_DEFS=""
 if test "$MINGW32" = "yes" ; then
     AC_CHECK_HEADER(winsock2.h, [AC_DEFINE([HAVE_WINSOCK2_H], 1, 
       [Define if you have the <winsock2.h> header file.])])
     AC_CHECK_LIB(ws2_32, main)
-    LIBOBJS="$LIBOBJS uname.o dirent.o"
+    LIBOBJS="$LIBOBJS win32-uname.o win32-dirent.o"
     if test $enable_shared = yes ; then
-      EXTRA_DEFS="-D__SCM_IMPORT__ -D__REGEX_IMPORT__ -D__CRYPT_IMPORT__"
-      EXTRA_LIB_DEFS="-D__REGEX_IMPORT__ -D__CRYPT_IMPORT__"
+      EXTRA_DEFS="-DSCM_IMPORT"
+      AC_DEFINE(USE_DLL_IMPORT, 1,
+        [Define if you need additional CPP macros on Win32 platforms.])
     fi
 fi
 AC_SUBST(EXTRA_DEFS)
-AC_SUBST(EXTRA_LIB_DEFS)
 
 dnl Check for dynamic linking
 
@@ -613,6 +612,10 @@
 esac
 
 AC_PROG_AWK
+
+## Remove fileblocks.o from the object list.  This file gets added by
+## the Autoconf macro AC_STRUCT_ST_BLOCKS.  But there is no need.
+LIBOBJS="`echo ${LIBOBJS} | sed 's/fileblocks\.o//g'`"
 
 ## If we're creating a shared library (using libtool!), then we'll
 ## need to generate a list of .lo files corresponding to the .o files
Index: guile/guile-core/guile-readline/ChangeLog
diff -u guile/guile-core/guile-readline/ChangeLog:1.69 
guile/guile-core/guile-readline/ChangeLog:1.70
--- guile/guile-core/guile-readline/ChangeLog:1.69      Thu Nov  1 19:06:57 2001
+++ guile/guile-core/guile-readline/ChangeLog   Sun Nov  4 10:52:29 2001
@@ -1,3 +1,15 @@
+2001-11-04  Stefan Jahn  <address@hidden>
+
+       * configure.in (EXTRA_DEFS): Follow-up patch.  Using SCM_IMPORT
+       instead of __SCM_IMPORT__.
+
+       * readline.c (scm_readline_init_ports): Disable input/output
+       stream redirection for Win32.  The readline package for Win32
+       does not support this.  The guile-readline library works fine
+       for command line editing.
+
+       * readline.h (SCM_RL_API): Renamed __FOO__ macros into FOO.
+
 2001-11-02  Marius Vollmer  <address@hidden>
 
        Support for native Win32.  Thanks to Stefan Jahn!
Index: guile/guile-core/guile-readline/configure.in
diff -u guile/guile-core/guile-readline/configure.in:1.14 
guile/guile-core/guile-readline/configure.in:1.15
--- guile/guile-core/guile-readline/configure.in:1.14   Thu Nov  1 19:06:26 2001
+++ guile/guile-core/guile-readline/configure.in        Sun Nov  4 10:52:29 2001
@@ -20,7 +20,7 @@
 EXTRA_DEFS=""
 if test "$MINGW32" = "yes" ; then
     if test $enable_shared = yes ; then
-      EXTRA_DEFS="-D__SCM_IMPORT__ -D__READLINE_IMPORT__"
+      EXTRA_DEFS="-DSCM_IMPORT"
     fi
 fi
 AC_SUBST(EXTRA_DEFS)
Index: guile/guile-core/guile-readline/readline.c
diff -u guile/guile-core/guile-readline/readline.c:1.41 
guile/guile-core/guile-readline/readline.c:1.42
--- guile/guile-core/guile-readline/readline.c:1.41     Thu Nov  1 19:06:34 2001
+++ guile/guile-core/guile-readline/readline.c  Sun Nov  4 10:52:29 2001
@@ -212,8 +212,10 @@
                            (void *) SCM_UNPACK (text),
                            handle_error, 0);
 
+#ifndef __MINGW32__
   fclose (rl_instream);
   fclose (rl_outstream);
+#endif
 
   --in_readline;
   return ans;
@@ -246,8 +248,10 @@
   rl_free_line_state ();
   rl_cleanup_after_signal ();
   fputc ('\n', rl_outstream); /* We don't want next output on this line */
+#ifndef __MINGW32__
   fclose (rl_instream);
   fclose (rl_outstream);
+#endif
   --in_readline;
   scm_handle_by_throw (data, tag, args);
   return SCM_UNSPECIFIED; /* never reached */
@@ -317,8 +321,10 @@
   }
 
   input_port = inp;
+#ifndef __MINGW32__
   rl_instream = stream_from_fport (inp, "r", s_scm_readline);
   rl_outstream = stream_from_fport (outp, "w", s_scm_readline);
+#endif
 }
 
 
@@ -482,10 +488,13 @@
 static int
 match_paren (int x, int k)
 {
-  int tmp, fno;
+  int tmp;
+#ifndef __MINGW32__
+  int fno;
   SELECT_TYPE readset;
   struct timeval timeout;
-  
+#endif
+
   rl_insert (x, k);
   if (!SCM_READLINE_BOUNCE_PARENS)
     return 0;
@@ -495,13 +504,15 @@
       && rl_line_buffer[rl_point - 2] == '\\')
     return 0;
 
+#ifndef __MINGW32__
   tmp = 1000 * SCM_READLINE_BOUNCE_PARENS;
   timeout.tv_sec = tmp / 1000000;
   timeout.tv_usec = tmp % 1000000;
   FD_ZERO (&readset);
   fno = fileno (rl_instream);
   FD_SET (fno, &readset);
-  
+#endif
+
   if (rl_point > 1)
     {
       tmp = rl_point;
@@ -509,7 +520,12 @@
       if (rl_point > -1)
        {
          rl_redisplay ();
+#ifndef __MINGW32__
          scm_internal_select (fno + 1, &readset, NULL, NULL, &timeout);
+#else
+         WaitForSingleObject (GetStdHandle(STD_INPUT_HANDLE),
+                              SCM_READLINE_BOUNCE_PARENS); 
+#endif
        }
       rl_point = tmp;
     }
@@ -545,7 +561,9 @@
 #include "guile-readline/readline.x"
   scm_readline_completion_function_var
     = scm_c_define ("*readline-completion-function*", SCM_BOOL_F);
+#ifndef __MINGW32__
   rl_getc_function = current_input_getc;
+#endif
   rl_redisplay_function = redisplay;
 #if defined (_RL_FUNCTION_TYPEDEF)
   rl_completion_entry_function = (rl_compentry_func_t*) completion_function;
Index: guile/guile-core/guile-readline/readline.h
diff -u guile/guile-core/guile-readline/readline.h:1.10 
guile/guile-core/guile-readline/readline.h:1.11
--- guile/guile-core/guile-readline/readline.h:1.10     Thu Nov  1 19:06:49 2001
+++ guile/guile-core/guile-readline/readline.h  Sun Nov  4 10:52:29 2001
@@ -24,10 +24,10 @@
    which should be exported or imported in the resulting dynamic link
    library in the Win32 port. */
 
-#if defined (__SCM_RL_IMPORT__)
-# define SCM_RL_API __declspec (dllimport)
-#elif defined (__SCM_RL_EXPORT__) || defined (DLL_EXPORT)
-# define SCM_RL_API __declspec (dllexport)
+#if defined (SCM_RL_IMPORT)
+# define SCM_RL_API __declspec (dllimport) extern
+#elif defined (SCM_RL_EXPORT) || defined (DLL_EXPORT)
+# define SCM_RL_API __declspec (dllexport) extern
 #else
 # define SCM_RL_API extern
 #endif
Index: guile/guile-core/libguile/ChangeLog
diff -u guile/guile-core/libguile/ChangeLog:1.1540 
guile/guile-core/libguile/ChangeLog:1.1541
--- guile/guile-core/libguile/ChangeLog:1.1540  Sat Nov  3 13:46:07 2001
+++ guile/guile-core/libguile/ChangeLog Sun Nov  4 10:52:29 2001
@@ -1,3 +1,39 @@
+2001-11-04  Stefan Jahn  <address@hidden>
+
+       * Makefile.am (libguile_la_LIBADD): Added $(THREAD_LIBS_LOCAL)
+       here (was at guile_LDADD) which describes the dependency 
+       correctly and allows a clean build on Win32.
+
+       * __scm.h (SCM_API): Follow-up patch.  Renamed __FOO__ macros 
+       into FOO.
+
+       * __scm.h: USE_DLL_IMPORT indicates the usage of the DLL
+       import macros for external libraries (libcrypt, libqthreads,
+       libreadline and libregex).
+
+       * coop-defs.h: Include <winsock2.h> for `struct timeval'.
+
+       * posix.c (flock): Added support for flock() in M$-Windows.
+
+       * guile.c (SCM_IMPORT): Follow-up patch.  Use SCM_IMPORT instead
+       of __SCM_IMPORT__.
+
+       * fports.c (getflags): Differentiate reading and writing pipes
+       descriptors.
+
+       * filesys.c (S_IS*): Redefine all of the S_IS*() macros for
+       M$-Windows.
+
+       * coop.c (coop_condition_variable_timed_wait_mutex): Use
+       conditionalized error code if `ETIMEDOUT' is not available.
+       (scm_thread_usleep): Remove bogus declaration of `struct timeval
+       timeout'.
+
+       * numbers.c (PTRDIFF_MIN): Moved this definition where it actually
+       belongs.  That is because NO_PREPRO_MAGIC gets undefined after
+       each inclusion of `num2integral.i.c'.
+       (SIZE_MAX): Define NO_PREPRO_MAGIC if SIZE_MAX is undefined.
+
 2001-11-03  Marius Vollmer  <address@hidden>
 
        * eval.c (scm_m_begin): Allow `(begin)`, with no subforms.
Index: guile/guile-core/libguile/Makefile.am
diff -u guile/guile-core/libguile/Makefile.am:1.146 
guile/guile-core/libguile/Makefile.am:1.147
--- guile/guile-core/libguile/Makefile.am:1.146 Thu Nov  1 19:07:11 2001
+++ guile/guile-core/libguile/Makefile.am       Sun Nov  4 10:52:29 2001
@@ -22,7 +22,7 @@
 AUTOMAKE_OPTIONS = gnu
 
 ## Prevent automake from adding extra -I options
-DEFS = @DEFS@ @EXTRA_LIB_DEFS@
+DEFS = @DEFS@
 ## Check for headers in $(srcdir)/.., so that #include
 ## <libguile/MUMBLE.h> will find MUMBLE.h in this dir when we're
 ## building.
@@ -35,7 +35,7 @@
 bin_PROGRAMS = guile guile_filter_doc_snarfage
 
 guile_SOURCES = guile.c
-guile_LDADD = libguile.la ${THREAD_LIBS_LOCAL}
+guile_LDADD = libguile.la
 guile_LDFLAGS = @DLPREOPEN@
 
 guile_filter_doc_snarfage_SOURCES = c-tokenize.c
@@ -115,7 +115,7 @@
                 num2integral.i.c num2float.i.c win32-uname.h win32-dirent.h
 
 libguile_la_DEPENDENCIES = @LIBLOBJS@
-libguile_la_LIBADD = @LIBLOBJS@ $(LIBLTDL)
+libguile_la_LIBADD = @LIBLOBJS@ $(LIBLTDL) $(THREAD_LIBS_LOCAL)
 libguile_la_LDFLAGS = -version-info 
@LIBGUILE_INTERFACE_CURRENT@:@LIBGUILE_INTERFACE_REVISION@:@LIBGUILE_INTERFACE_AGE@
 -export-dynamic -no-undefined
 
 # These are headers visible as <guile/mumble.h> 
Index: guile/guile-core/libguile/__scm.h
diff -u guile/guile-core/libguile/__scm.h:1.78 
guile/guile-core/libguile/__scm.h:1.79
--- guile/guile-core/libguile/__scm.h:1.78      Thu Nov  1 19:07:21 2001
+++ guile/guile-core/libguile/__scm.h   Sun Nov  4 10:52:29 2001
@@ -159,11 +159,11 @@
 
 /* SCM_API is a macro prepended to all function and data definitions
    which should be exported or imported in the resulting dynamic link
-   library in the Win32 port. */
+   library (DLL) in the Win32 port. */
 
-#if defined (__SCM_IMPORT__)
+#if defined (SCM_IMPORT)
 # define SCM_API __declspec (dllimport) extern
-#elif defined (__SCM_EXPORT__) || defined (DLL_EXPORT)
+#elif defined (SCM_EXPORT) || defined (DLL_EXPORT)
 # define SCM_API __declspec (dllexport) extern
 #else
 # define SCM_API extern
@@ -331,6 +331,16 @@
 # endif
 #  include <stddef.h>
 #endif /* def STDC_HEADERS */
+
+
+
+/* Define some additional CPP macros on Win32 platforms. */
+#if USE_DLL_IMPORT
+# define __REGEX_IMPORT__ 1
+# define __CRYPT_IMPORT__ 1
+# define __READLINE_IMPORT__ 1
+# define QT_IMPORT 1
+#endif
 
 
 
Index: guile/guile-core/libguile/coop-defs.h
diff -u guile/guile-core/libguile/coop-defs.h:1.24 
guile/guile-core/libguile/coop-defs.h:1.25
--- guile/guile-core/libguile/coop-defs.h:1.24  Thu Nov  1 19:19:12 2001
+++ guile/guile-core/libguile/coop-defs.h       Sun Nov  4 10:52:29 2001
@@ -63,6 +63,10 @@
 #include "libguile/iselect.h"
 #endif
 
+#if HAVE_WINSOCK2_H
+#include <winsock2.h>
+#endif
+
 #ifdef GUILE_PTHREAD_COMPAT
 #include <pthread.h>
 #endif
Index: guile/guile-core/libguile/coop.c
diff -u guile/guile-core/libguile/coop.c:1.28 
guile/guile-core/libguile/coop.c:1.29
--- guile/guile-core/libguile/coop.c:1.28       Sat Oct  6 12:30:20 2001
+++ guile/guile-core/libguile/coop.c    Sun Nov  4 10:52:29 2001
@@ -40,7 +40,7 @@
  * If you do not wish that, delete this exception notice.  */
 
 
-/* $Id: coop.c,v 1.28 2001/10/06 16:30:20 mdj Exp $ */
+/* $Id: coop.c,v 1.29 2001/11/04 15:52:29 ela Exp $ */
 
 /* Cooperative thread library, based on QuickThreads */
 
@@ -422,7 +422,13 @@
                                          const struct timespec *abstime)
 {
   coop_t *old, *t;
+#ifdef ETIMEDOUT
   int res = ETIMEDOUT;
+#elif defined (WSAETIMEDOUT)
+  int res = WSAETIMEDOUT;
+#else
+  int res = 0;
+#endif
 
   /* coop_mutex_unlock (m); */
   t = coop_qget (&(m->waiting));
@@ -842,7 +848,6 @@
 {
   /* We're so cheap.  */
   scm_thread_sleep (usec / 1000000);
-  struct timeval timeout;
   return 0;  /* Maybe we should calculate actual time slept,
                but this is faster... :) */
 }
Index: guile/guile-core/libguile/filesys.c
diff -u guile/guile-core/libguile/filesys.c:1.107 
guile/guile-core/libguile/filesys.c:1.108
--- guile/guile-core/libguile/filesys.c:1.107   Thu Nov  1 19:09:02 2001
+++ guile/guile-core/libguile/filesys.c Sun Nov  4 10:52:29 2001
@@ -128,17 +128,60 @@
 /* The MinGW gcc does not define the S_ISSOCK macro. Any other native Windows
    compiler like BorlandC or MSVC has none of these macros defined. */
 #ifdef __MINGW32__
-# define _S_IFSOCK 0xC000
-# define S_ISSOCK(mode) (((mode) & _S_IFMT) == _S_IFSOCK)
-#endif
-#if defined (__BORLANDC__) || defined (_MSC_VER)
-# define _S_IFBLK 0x3000
-# define S_ISBLK(mode) (((mode) & _S_IFMT) == _S_IFBLK)
+
+# ifdef _S_IFIFO
+#  undef _S_IFIFO
+# endif
+# ifdef _S_IFCHR
+#  undef _S_IFCHR
+# endif
+# ifdef _S_IFBLK
+#  undef _S_IFBLK
+# endif
+# ifdef _S_IFDIR
+#  undef _S_IFDIR
+# endif
+# ifdef _S_IFREG
+#  undef _S_IFREG
+# endif
+# ifdef _S_IFSOCK
+#  undef _S_IFSOCK
+# endif
+
+# define _S_IFIFO        0x1000  /* FIFO */
+# define _S_IFCHR        0x2000  /* Character */
+# define _S_IFBLK        0x3000  /* Block */
+# define _S_IFDIR        0x4000  /* Directory */
+# define _S_IFREG        0x8000  /* Regular */
+# define _S_IFSOCK       0xC000  /* Socket */
+
+# ifdef S_ISBLK
+#  undef S_ISBLK
+# endif
+# ifdef S_ISFIFO
+#  undef S_ISFIFO
+# endif
+# ifdef S_ISCHR
+#  undef S_ISCHR
+# endif
+# ifdef S_ISDIR
+#  undef S_ISDIR
+# endif
+# ifdef S_ISREG
+#  undef S_ISREG
+# endif
+# ifdef S_ISSOCK
+#  undef S_ISSOCK
+# endif
+
+# define S_ISBLK(mode)  (((mode) & _S_IFMT) == _S_IFBLK)
 # define S_ISFIFO(mode) (((mode) & _S_IFMT) == _S_IFIFO)
-# define S_ISCHR(mode) (((mode) & _S_IFMT) == _S_IFCHR)
-# define S_ISDIR(mode) (((mode) & _S_IFMT) == _S_IFDIR)
-# define S_ISREG(mode) (((mode) & _S_IFMT) == _S_IFREG)
-#endif
+# define S_ISCHR(mode)  (((mode) & _S_IFMT) == _S_IFCHR)
+# define S_ISDIR(mode)  (((mode) & _S_IFMT) == _S_IFDIR)
+# define S_ISREG(mode)  (((mode) & _S_IFMT) == _S_IFREG)
+# define S_ISSOCK(mode) (((mode) & _S_IFMT) == _S_IFSOCK)
+
+#endif /* __MINGW32__ */
 
 /* Some more definitions for the native Windows port. */
 #ifdef __MINGW32__
Index: guile/guile-core/libguile/fports.c
diff -u guile/guile-core/libguile/fports.c:1.105 
guile/guile-core/libguile/fports.c:1.106
--- guile/guile-core/libguile/fports.c:1.105    Thu Nov  1 19:09:14 2001
+++ guile/guile-core/libguile/fports.c  Sun Nov  4 10:52:29 2001
@@ -380,7 +380,8 @@
     {
       /* Or an anonymous pipe handle ? */
       if (buf.st_mode & _S_IFIFO)
-       flags = O_RDWR;
+       flags = PeekNamedPipe ((HANDLE) _get_osfhandle (fdes), NULL, 0, 
+                              NULL, NULL, NULL) ? O_RDONLY : O_WRONLY;
       /* stdin ? */
       else if (fdes == fileno (stdin) && isatty (fdes))
        flags = O_RDONLY;
Index: guile/guile-core/libguile/guile.c
diff -u guile/guile-core/libguile/guile.c:1.9 
guile/guile-core/libguile/guile.c:1.10
--- guile/guile-core/libguile/guile.c:1.9       Thu Nov  1 19:15:53 2001
+++ guile/guile-core/libguile/guile.c   Sun Nov  4 10:52:29 2001
@@ -47,7 +47,7 @@
    system.  For now, please don't put interesting code in here.  */
 
 #ifdef __MINGW32__
-# define __SCM_IMPORT__ 1
+# define SCM_IMPORT 1
 #endif
 #include <libguile.h>
 
Index: guile/guile-core/libguile/num2integral.i.c
diff -u guile/guile-core/libguile/num2integral.i.c:1.11 
guile/guile-core/libguile/num2integral.i.c:1.12
--- guile/guile-core/libguile/num2integral.i.c:1.11     Thu Nov  1 19:19:12 2001
+++ guile/guile-core/libguile/num2integral.i.c  Sun Nov  4 10:52:29 2001
@@ -93,13 +93,13 @@
 #define NEED_CHECK
 #else
 #ifdef UNSIGNED
-  /*#if MAX_VALUE > SCM_MOST_POSITIVE_FIXNUM*/
+#if MAX_VALUE>SCM_MOST_POSITIVE_FIXNUM
 #define NEED_CHECK
-  /*#endif*/
+#endif
 #else
-  /*#if MIN_VALUE<SCM_MOST_NEGATIVE_FIXNUM || 
MAX_VALUE>SCM_MOST_POSITIVE_FIXNUM*/
+#if MIN_VALUE<SCM_MOST_NEGATIVE_FIXNUM || MAX_VALUE>SCM_MOST_POSITIVE_FIXNUM
 #define NEED_CHECK
-  /*#endif*/
+#endif
 #endif
 #endif
 
Index: guile/guile-core/libguile/numbers.c
diff -u guile/guile-core/libguile/numbers.c:1.148 
guile/guile-core/libguile/numbers.c:1.149
--- guile/guile-core/libguile/numbers.c:1.148   Thu Nov  1 19:19:11 2001
+++ guile/guile-core/libguile/numbers.c Sun Nov  4 10:52:29 2001
@@ -4258,22 +4258,6 @@
 # endif
 #endif
 
-#ifndef SIZE_MAX
-#define SIZE_MAX ((size_t) (-1))
-#endif
-
-#ifndef PTRDIFF_MIN
-/* the below is not really guaranteed to work (I think), but probably does: */
-#define PTRDIFF_MIN ((ptrdiff_t) ((ptrdiff_t)1 << (sizeof (ptrdiff_t)*8 - 1)))
-/* this prevents num2integral.c.i from using PTRDIFF_MIN in
-   preprocessor expressions. */
-#define NO_PREPRO_MAGIC
-#endif
-
-#ifndef PTRDIFF_MAX
-#define PTRDIFF_MAX (~ PTRDIFF_MIN)
-#endif
-
 #define NUM2INTEGRAL scm_num2short
 #define INTEGRAL2NUM scm_short2num
 #define INTEGRAL2BIG scm_i_short2big
@@ -4322,6 +4306,18 @@
 #define MAX_VALUE ULONG_MAX
 #include "libguile/num2integral.i.c"
 
+#ifndef PTRDIFF_MIN
+/* the below is not really guaranteed to work (I think), but probably does: */
+#define PTRDIFF_MIN ((ptrdiff_t) ((ptrdiff_t)1 << (sizeof (ptrdiff_t)*8 - 1)))
+/* this prevents num2integral.c.i from using PTRDIFF_MIN in
+   preprocessor expressions. */
+#define NO_PREPRO_MAGIC
+#endif
+
+#ifndef PTRDIFF_MAX
+#define PTRDIFF_MAX (~ PTRDIFF_MIN)
+#endif
+
 #define NUM2INTEGRAL scm_num2ptrdiff
 #define INTEGRAL2NUM scm_ptrdiff2num
 #define INTEGRAL2BIG scm_i_ptrdiff2big
@@ -4329,6 +4325,11 @@
 #define MIN_VALUE PTRDIFF_MIN
 #define MAX_VALUE PTRDIFF_MAX
 #include "libguile/num2integral.i.c"
+
+#ifndef SIZE_MAX
+#define SIZE_MAX ((size_t) (-1))
+#define NO_PREPRO_MAGIC
+#endif
 
 #define NUM2INTEGRAL scm_num2size
 #define INTEGRAL2NUM scm_size2num
Index: guile/guile-core/libguile/posix.c
diff -u guile/guile-core/libguile/posix.c:1.95 
guile/guile-core/libguile/posix.c:1.96
--- guile/guile-core/libguile/posix.c:1.95      Thu Nov  1 19:16:46 2001
+++ guile/guile-core/libguile/posix.c   Sun Nov  4 10:52:29 2001
@@ -1502,7 +1502,73 @@
 #undef FUNC_NAME
 #endif /* HAVE_GETPASS */
 
-#if HAVE_FLOCK
+/* Wrapper function for flock() support under M$-Windows. */
+#ifdef __MINGW32__
+# include <io.h>
+# include <sys/locking.h>
+# include <errno.h>
+# ifndef _LK_UNLCK
+   /* Current MinGW package fails to define this. *sigh* */
+#  define _LK_UNLCK 0
+# endif
+# define LOCK_EX 1
+# define LOCK_UN 2
+# define LOCK_SH 4
+# define LOCK_NB 8
+
+static int flock (int fd, int operation)
+{
+  long pos, len;
+  int ret, err;
+
+  /* Disable invalid arguments. */
+  if (((operation & (LOCK_EX | LOCK_SH)) == (LOCK_EX | LOCK_SH)) ||
+      ((operation & (LOCK_EX | LOCK_UN)) == (LOCK_EX | LOCK_UN)) ||
+      ((operation & (LOCK_SH | LOCK_UN)) == (LOCK_SH | LOCK_UN)))
+    {
+      errno = EINVAL;
+      return -1;
+    }
+
+  /* Determine mode of operation and discard unsupported ones. */
+  if (operation == (LOCK_NB | LOCK_EX))
+    operation = _LK_NBLCK;
+  else if (operation & LOCK_UN)
+    operation = _LK_UNLCK;
+  else if (operation == LOCK_EX)
+    operation = _LK_LOCK;
+  else
+    {
+      errno = EINVAL;
+      return -1;
+    }
+
+  /* Save current file pointer and seek to beginning. */
+  if ((pos = lseek (fd, 0, SEEK_CUR)) == -1 || (len = filelength (fd)) == -1)
+    return -1;
+  lseek (fd, 0L, SEEK_SET);
+
+  /* Deadlock if necessary. */
+  do
+    {
+      ret = _locking (fd, operation, len);
+    }
+  while (ret == -1 && errno == EDEADLOCK);
+
+  /* Produce meaningful error message. */
+  if (errno == EACCES && operation == _LK_NBLCK)
+    err = EDEADLOCK;
+  else
+    err = errno;
+
+  /* Return to saved file position pointer. */
+  lseek (fd, pos, SEEK_SET);
+  errno = err;
+  return ret;
+}
+#endif /* __MINGW32__ */
+
+#if HAVE_FLOCK || defined (__MINGW32__)
 SCM_DEFINE (scm_flock, "flock", 2, 0, 0, 
             (SCM file, SCM operation),
            "Apply or remove an advisory lock on an open file.\n"
Index: guile/guile-core/qt/ChangeLog
diff -u guile/guile-core/qt/ChangeLog:1.39 guile/guile-core/qt/ChangeLog:1.40
--- guile/guile-core/qt/ChangeLog:1.39  Sat Aug 25 12:03:59 2001
+++ guile/guile-core/qt/ChangeLog       Sun Nov  4 10:52:29 2001
@@ -1,3 +1,21 @@
+2001-11-04  Stefan Jahn  <address@hidden>
+
+       * md/Makefile.am (EXTRA_DIST): Added `i386.asm'.
+
+       * md/i386.asm: New file.  Contains the Intel syntax version for
+       nasm/tasm/masm of the file `i386.s'.
+
+       * qt.h.in: Definition of QT_API, QT_IMPORT and QT_EXPORT.
+       Prefixed each symbols which is meant to go into a DLL.
+
+       * Makefile.am (libqthreads_la_LDFLAGS):  Put `-no-undefined' 
+       into LDFLAGS to support linkers which do not allow unresolved 
+       symbols inside shared libraries.
+       (EXTRA_DIST): Add `libqthreads.def', which is an export file 
+       definition for M$-Windows.  It defines exported symbols.  This is
+       necessary because the M$VC linker does not know how to export
+       assembler symbols into a DLL.
+
 2001-08-25  Marius Vollmer  <address@hidden>
 
        * Makefile.am, md/Makefile.am, time/Makefile.am:
Index: guile/guile-core/qt/Makefile.am
diff -u guile/guile-core/qt/Makefile.am:1.13 
guile/guile-core/qt/Makefile.am:1.14
--- guile/guile-core/qt/Makefile.am:1.13        Sat Aug 25 12:03:46 2001
+++ guile/guile-core/qt/Makefile.am     Sun Nov  4 10:52:29 2001
@@ -34,7 +34,7 @@
 libqthreads_la_SOURCES = qt.c copyright.h
 libqthreads_la_LIBADD = qtmds.lo qtmdc.lo
 libqthreads_la_DEPENDENCIES = qtmds.lo qtmdc.lo
-libqthreads_la_LDFLAGS = -rpath $(libdir) -version-info 
@LIBGUILEQTHREADS_INTERFACE_CURRENT@:@LIBGUILEQTHREADS_INTERFACE_REVISION@:@LIBGUILEQTHREADS_INTERFACE_AGE@
 -export-dynamic
+libqthreads_la_LDFLAGS = -rpath $(libdir) -version-info 
@LIBGUILEQTHREADS_INTERFACE_CURRENT@:@LIBGUILEQTHREADS_INTERFACE_REVISION@:@LIBGUILEQTHREADS_INTERFACE_AGE@
 -export-dynamic -no-undefined
 
 OMIT_DEPENDENCIES = axp.h hppa.h i386.h ksr.h m88k.h mips.h sparc.h vax.h
 
@@ -48,4 +48,4 @@
        ${LN_S} ${srcdir}/${qtdmdb_s} qtdmdb.s
 
 EXTRA_DIST = CHANGES README.MISC README.PORT b.h meas.c stp.c stp.h \
-       Makefile.base config
+       Makefile.base config libqthreads.def
Index: guile/guile-core/qt/md/Makefile.am
diff -u guile/guile-core/qt/md/Makefile.am:1.3 
guile/guile-core/qt/md/Makefile.am:1.4
--- guile/guile-core/qt/md/Makefile.am:1.3      Sat Aug 25 12:03:46 2001
+++ guile/guile-core/qt/md/Makefile.am  Sun Nov  4 10:52:29 2001
@@ -27,4 +27,4 @@
 i386.h i386.s i386_b.s ksr1.Makefile ksr1.h ksr1.s ksr1_b.s \
 m88k.Makefile m88k.c m88k.h m88k.s m88k_b.s mips-irix5.s mips.h mips.s \
 mips_b.s null.README null.c solaris.README sparc.h sparc.s sparc_b.s \
-vax.h vax.s vax_b.s
+vax.h vax.s vax_b.s i386.asm
Index: guile/guile-core/qt/md/i386.h
diff -u guile/guile-core/qt/md/i386.h:1.1 guile/guile-core/qt/md/i386.h:1.2
--- guile/guile-core/qt/md/i386.h:1.1   Mon Sep 30 23:33:52 1996
+++ guile/guile-core/qt/md/i386.h       Sun Nov  4 10:52:29 2001
@@ -58,7 +58,7 @@
 
 
 /* What to do to start a varargs thread running. */
-extern void qt_vstart (void);
+QT_API void qt_vstart (void);
 
 
 /* Hold 4 saved regs plus two return pcs (qt_error, qt_start) plus
@@ -101,7 +101,7 @@
    pop off (preincrement, postdecrement). */
 #define QT_GROW_DOWN
 
-extern void qt_error (void);
+QT_API void qt_error (void);
 
 /* Push on the error return address. */
 #define QT_ARGS_MD(sto) \
Index: guile/guile-core/qt/qt.h.in
diff -u guile/guile-core/qt/qt.h.in:1.4 guile/guile-core/qt/qt.h.in:1.5
--- guile/guile-core/qt/qt.h.in:1.4     Fri Apr 21 11:57:22 2000
+++ guile/guile-core/qt/qt.h.in Sun Nov  4 10:52:29 2001
@@ -1,6 +1,14 @@
 #ifndef QT_H
 #define QT_H
 
+#if defined (QT_IMPORT)
+# define QT_API __declspec (dllimport) extern
+#elif defined (QT_EXPORT) || defined (DLL_EXPORT)
+# define QT_API __declspec (dllexport) extern
+#else
+# define QT_API extern
+#endif
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -126,7 +134,7 @@
 #define QT_VADJ(sp)    (((char *)sp) + QT_VSTKBASE)
 #endif
 
-extern qt_t *qt_vargs (qt_t *sp, int nbytes, void *vargs,
+QT_API qt_t *qt_vargs (qt_t *sp, int nbytes, void *vargs,
                       void *pt, qt_startup_t *startup,
                       qt_vuserf_t *vuserf, qt_cleanup_t *cleanup);
 
@@ -137,8 +145,8 @@
 
 #endif
 
-extern void qt_null (void);
-extern void qt_error (void);
+QT_API void qt_null (void);
+QT_API void qt_error (void);
 
 /* Save the state of the thread and call the helper function
    using the stack of the new thread. */
@@ -149,7 +157,7 @@
 /* Rearrange the parameters so that things passed to the helper
    function are already in the right argument registers. */
 #ifndef QT_ABORT
-extern void qt_abort (qt_helper_t *h, void *a0, void *a1, qt_t *newthread);
+QT_API void qt_abort (qt_helper_t *h, void *a0, void *a1, qt_t *newthread);
 /* The following does, technically, `return' a value, but the
    user had better not rely on it, since the function never
    returns. */ 
@@ -158,14 +166,14 @@
 #endif
 
 #ifndef QT_BLOCK
-extern void *qt_block (qt_helper_t *h, void *a0, void *a1,
+QT_API void *qt_block (qt_helper_t *h, void *a0, void *a1,
                       qt_t *newthread);
 #define QT_BLOCK(h, a0, a1, newthread) \
     (qt_block (h, a0, a1, newthread))
 #endif
 
 #ifndef QT_BLOCKI
-extern void *qt_blocki (qt_helper_t *h, void *a0, void *a1,
+QT_API void *qt_blocki (qt_helper_t *h, void *a0, void *a1,
                        qt_t *newthread);
 #define QT_BLOCKI(h, a0, a1, newthread) \
     (qt_blocki (h, a0, a1, newthread))
Index: guile/guile-core/srfi/ChangeLog
diff -u guile/guile-core/srfi/ChangeLog:1.73 
guile/guile-core/srfi/ChangeLog:1.74
--- guile/guile-core/srfi/ChangeLog:1.73        Sat Nov  3 18:06:47 2001
+++ guile/guile-core/srfi/ChangeLog     Sun Nov  4 10:52:29 2001
@@ -1,3 +1,8 @@
+2001-11-04  Stefan Jahn  <address@hidden>
+
+       * srfi-13.h, srfi-14.h, srfi-4.h: Follow-up patch.  Renamed 
+       __FOO__ macros into FOO.
+
 2001-11-03  Marius Vollmer  <address@hidden>
 
        * Makefile.am (libguile_srfi_srfi_4_la_LIBADD,
Index: guile/guile-core/srfi/srfi-13.h
diff -u guile/guile-core/srfi/srfi-13.h:1.4 guile/guile-core/srfi/srfi-13.h:1.5
--- guile/guile-core/srfi/srfi-13.h:1.4 Thu Nov  1 19:21:09 2001
+++ guile/guile-core/srfi/srfi-13.h     Sun Nov  4 10:52:30 2001
@@ -50,9 +50,9 @@
    which should be exported or imported in the resulting dynamic link
    library in the Win32 port. */
 
-#if defined (__SCM_SRFI1314_IMPORT__)
+#if defined (SCM_SRFI1314_IMPORT)
 # define SCM_SRFI1314_API __declspec (dllimport) extern
-#elif defined (__SCM_SRFI1314_EXPORT__) || defined (DLL_EXPORT)
+#elif defined (SCM_SRFI1314_EXPORT) || defined (DLL_EXPORT)
 # define SCM_SRFI1314_API __declspec (dllexport) extern
 #else
 # define SCM_SRFI1314_API extern
@@ -136,9 +136,5 @@
 SCM_SRFI1314_API SCM scm_string_tokenize (SCM s, SCM token_char, SCM start, 
SCM end);
 SCM_SRFI1314_API SCM scm_string_filter (SCM s, SCM char_pred, SCM start, SCM 
end);
 SCM_SRFI1314_API SCM scm_string_delete (SCM s, SCM char_pred, SCM start, SCM 
end);
-
-
-
-
 
 #endif /* SCM_SRFI_13_H */
Index: guile/guile-core/srfi/srfi-14.h
diff -u guile/guile-core/srfi/srfi-14.h:1.10 
guile/guile-core/srfi/srfi-14.h:1.11
--- guile/guile-core/srfi/srfi-14.h:1.10        Thu Nov  1 19:21:17 2001
+++ guile/guile-core/srfi/srfi-14.h     Sun Nov  4 10:52:30 2001
@@ -50,9 +50,9 @@
    which should be exported or imported in the resulting dynamic link
    library in the Win32 port. */
 
-#if defined (__SCM_SRFI1314_IMPORT__)
+#if defined (SCM_SRFI1314_IMPORT)
 # define SCM_SRFI1314_API __declspec (dllimport) extern
-#elif defined (__SCM_SRFI1314_EXPORT__) || defined (DLL_EXPORT)
+#elif defined (SCM_SRFI1314_EXPORT) || defined (DLL_EXPORT)
 # define SCM_SRFI1314_API __declspec (dllexport) extern
 #else
 # define SCM_SRFI1314_API extern
Index: guile/guile-core/srfi/srfi-4.h
diff -u guile/guile-core/srfi/srfi-4.h:1.2 guile/guile-core/srfi/srfi-4.h:1.3
--- guile/guile-core/srfi/srfi-4.h:1.2  Thu Nov  1 19:21:25 2001
+++ guile/guile-core/srfi/srfi-4.h      Sun Nov  4 10:52:30 2001
@@ -50,9 +50,9 @@
    which should be exported or imported in the resulting dynamic link
    library in the Win32 port. */
 
-#if defined (__SCM_SRFI4_IMPORT__)
+#if defined (SCM_SRFI4_IMPORT)
 # define SCM_SRFI4_API __declspec (dllimport) extern
-#elif defined (__SCM_SRFI4_EXPORT__) || defined (DLL_EXPORT)
+#elif defined (SCM_SRFI4_EXPORT) || defined (DLL_EXPORT)
 # define SCM_SRFI4_API __declspec (dllexport) extern
 #else
 # define SCM_SRFI4_API extern
Index: guile/guile-core/test-suite/ChangeLog
diff -u guile/guile-core/test-suite/ChangeLog:1.111 
guile/guile-core/test-suite/ChangeLog:1.112
--- guile/guile-core/test-suite/ChangeLog:1.111 Fri Oct 26 15:47:57 2001
+++ guile/guile-core/test-suite/ChangeLog       Sun Nov  4 10:52:30 2001
@@ -1,3 +1,8 @@
+2001-11-04  Stefan Jahn  <address@hidden>
+
+       * tests/ports.test: Run (close-port) before (delete-file) if
+       necessary/advisory.
+
 2001-10-26  Dirk Herrmann  <address@hidden>
 
        * tests/eval.test:  Added tests for promises.
Index: guile/guile-core/test-suite/tests/ports.test
diff -u guile/guile-core/test-suite/tests/ports.test:1.27 
guile/guile-core/test-suite/tests/ports.test:1.28
--- guile/guile-core/test-suite/tests/ports.test:1.27   Thu Jul 19 16:30:37 2001
+++ guile/guile-core/test-suite/tests/ports.test        Sun Nov  4 10:52:30 2001
@@ -91,6 +91,7 @@
   (seek port -2 SEEK_END)
   (pass-if "file: r/w 4"
           (char=? (read-char port) #\s))
+  (close-port port)
   (delete-file filename))
 
 ;;; Unbuffered input/output port with seeking.
@@ -110,6 +111,7 @@
   (seek port -2 SEEK_END)
   (pass-if "file: ub r/w 4"
           (char=? (read-char port) #\s))
+  (close-port port)
   (delete-file filename))
 
 ;;; Buffered output-only and input-only ports with seeking.
@@ -155,7 +157,8 @@
     (pass-if "file: read back NUL 2"
             (char=? (string-ref line 3) #\nul))
     (pass-if "file: EOF"
-            (eof-object? (read-char port))))
+            (eof-object? (read-char port)))
+    (close-port port))
   (delete-file filename))
 
 ;;; line buffering mode.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]