> From: Mark H Weaver <m...@netris.org> > Cc: l...@gnu.org (Ludovic Courtès), guile-devel@gnu.org > Date: Sat, 22 Feb 2014 09:52:06 -0500 > > Eli Zaretskii <e...@gnu.org> writes: > > > This patch removes several "#ifdef HAVE_POSIX" conditionals that > > unnecessarily prevent useful Guile functions from showing up in the > > MinGW build on MS-Windows. > > I think perhaps we should simply remove the --disable-posix configure > option in master, since it is apparently no longer needed on Windows. > Of course this patch would be part of that. > > If we decide to keep --disable-posix (which should be the case on > stable-2.0 regardless), then I think we should not apply this patch. > Instead, we should just recommend that MinGW builds be done without > --disable-posix.
That's OK with me, but then the handfull of other instances of HAVE_POSIX should be removed as well. > > diff --git a/libguile/filesys.c b/libguile/filesys.c > > index aa3e671..441ced8 100644 > > --- a/libguile/filesys.c > > +++ b/libguile/filesys.c > > @@ -111,7 +111,12 @@ > > > > /* Some more definitions for the native Windows port. */ > > #ifdef __MINGW32__ > > -# define fsync(fd) _commit (fd) > > +# define fsync(fd) _commit (fd) > > +# define WIN32_LEAN_AND_MEAN > > +# include <windows.h> > > +/* FIXME: Should use 'link' module from gnulib. */ > > +# define link(f1,f2) CreateHardLink(f2, f1, NULL) > > +# define HAVE_LINK 1 > > #endif /* __MINGW32__ */ > > Rather than including Windows-specific code in Guile and this FIXME, > let's just add the 'link' Gnulib module, as you suggest. I already have > a list of some more modules to add, so I'll do that in the next day or > so. > > What do you think? That's OK with me, but then also perhaps add the fsync module from gnulib.