unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
* i18n broken on mingw cross compile
@ 2008-09-08 14:07 Han-Wen Nienhuys
  2008-09-09  9:30 ` Ludovic Courtès
  0 siblings, 1 reply; 15+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-08 14:07 UTC (permalink / raw)
  To: bug-guile


This is with 

289cd1a720edb522ea60d7dfd0f1f4763284f050

i686-mingw32-gcc -mms-bitfields -DHAVE_CONFIG_H -I/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/lib -I../lib -Wall -Wmissing-prototypes -g -O2 -MT libguile_i18n_v_0_la-i18n.lo -MD -MP -MF .deps/libguile_i18n_v_0_la-i18n.Tpo -c /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/i18n.c  -DDLL_EXPORT -DPIC -o .libs/libguile_i18n_v_0_la-i18n.o
In file included from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/i18n.c:296:
/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h: In function 'get_current_locale_settings':
/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: 'LC_MESSAGES' undeclared (first use in this function)
/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: (Each undeclared identifier is reported only once
/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: for each function it appears in.)

does this ring a bell with anyone?  This was working with

  release_1-8-5


-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-08 14:07 i18n broken on mingw cross compile Han-Wen Nienhuys
@ 2008-09-09  9:30 ` Ludovic Courtès
  2008-09-09 14:02   ` Han-Wen Nienhuys
  2008-09-10  2:38   ` Han-Wen Nienhuys
  0 siblings, 2 replies; 15+ messages in thread
From: Ludovic Courtès @ 2008-09-09  9:30 UTC (permalink / raw)
  To: bug-guile

[-- Attachment #1: Type: text/plain, Size: 1293 bytes --]

Hi,

Han-Wen Nienhuys <hanwen@xs4all.nl> writes:

> i686-mingw32-gcc -mms-bitfields -DHAVE_CONFIG_H -I/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/lib -I../lib -Wall -Wmissing-prototypes -g -O2 -MT libguile_i18n_v_0_la-i18n.lo -MD -MP -MF .deps/libguile_i18n_v_0_la-i18n.Tpo -c /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/i18n.c  -DDLL_EXPORT -DPIC -o .libs/libguile_i18n_v_0_la-i18n.o
> In file included from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/i18n.c:296:
> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h: In function 'get_current_locale_settings':
> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: 'LC_MESSAGES' undeclared (first use in this function)
> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: (Each undeclared identifier is reported only once
> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: for each function it appears in.)

Can you try out the attached patch?

> does this ring a bell with anyone?  This was working with
>
>   release_1-8-5

Certainly not: there's no such code in 1.8.

Thanks,
Ludo'.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: The patch --]
[-- Type: text/x-patch, Size: 827 bytes --]

diff --git a/libguile/locale-categories.h b/libguile/locale-categories.h
index cec91fb..cbe9684 100644
--- a/libguile/locale-categories.h
+++ b/libguile/locale-categories.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -21,7 +21,12 @@
 /* The six standard categories, as defined in IEEE Std 1003.1-2001.  */
 SCM_DEFINE_LOCALE_CATEGORY (COLLATE)
 SCM_DEFINE_LOCALE_CATEGORY (CTYPE)
+
+#ifdef LC_MESSAGES
+/* MinGW doesn't have `LC_MESSAGES'.  */
 SCM_DEFINE_LOCALE_CATEGORY (MESSAGES)
+#endif
+
 SCM_DEFINE_LOCALE_CATEGORY (MONETARY)
 SCM_DEFINE_LOCALE_CATEGORY (NUMERIC)
 SCM_DEFINE_LOCALE_CATEGORY (TIME)

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-09  9:30 ` Ludovic Courtès
@ 2008-09-09 14:02   ` Han-Wen Nienhuys
  2008-09-09 14:42     ` Ludovic Courtès
  2008-09-10  2:38   ` Han-Wen Nienhuys
  1 sibling, 1 reply; 15+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-09 14:02 UTC (permalink / raw)
  To: bug-guile

Ludovic Courtès escreveu:
> Hi,
> 
> Han-Wen Nienhuys <hanwen@xs4all.nl> writes:
> 
>> i686-mingw32-gcc -mms-bitfields -DHAVE_CONFIG_H -I/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/lib -I../lib -Wall -Wmissing-prototypes -g -O2 -MT libguile_i18n_v_0_la-i18n.lo -MD -MP -MF .deps/libguile_i18n_v_0_la-i18n.Tpo -c /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/i18n.c  -DDLL_EXPORT -DPIC -o .libs/libguile_i18n_v_0_la-i18n.o
>> In file included from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/i18n.c:296:
>> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h: In function 'get_current_locale_settings':
>> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: 'LC_MESSAGES' undeclared (first use in this function)
>> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: (Each undeclared identifier is reported only once
>> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: for each function it appears in.)
> 
> Can you try out the attached patch?
> 

I'll try later; in the meantime, I suspect that surrounding every one of 
the locale categories with #ifdef would be a good idea. I'd be surprised
if this were the only one missing.

-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-09 14:02   ` Han-Wen Nienhuys
@ 2008-09-09 14:42     ` Ludovic Courtès
  0 siblings, 0 replies; 15+ messages in thread
From: Ludovic Courtès @ 2008-09-09 14:42 UTC (permalink / raw)
  To: bug-guile

Han-Wen Nienhuys <hanwen@xs4all.nl> writes:

> I'll try later; in the meantime, I suspect that surrounding every one of 
> the locale categories with #ifdef would be a good idea. I'd be surprised
> if this were the only one missing.

Those not already #ifdef'd are specified by POSIX and/or SuS, so that
shouldn't be too much of a problem (hopefully).

Thanks,
Ludo'.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-09  9:30 ` Ludovic Courtès
  2008-09-09 14:02   ` Han-Wen Nienhuys
@ 2008-09-10  2:38   ` Han-Wen Nienhuys
  2008-09-11 19:41     ` Ludovic Courtès
  1 sibling, 1 reply; 15+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-10  2:38 UTC (permalink / raw)
  To: bug-guile

Ludovic Courtès escreveu:
> Hi,
> 
> Han-Wen Nienhuys <hanwen@xs4all.nl> writes:
> 
>> i686-mingw32-gcc -mms-bitfields -DHAVE_CONFIG_H -I/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/lib -I../lib -Wall -Wmissing-prototypes -g -O2 -MT libguile_i18n_v_0_la-i18n.lo -MD -MP -MF .deps/libguile_i18n_v_0_la-i18n.Tpo -c /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/i18n.c  -DDLL_EXPORT -DPIC -o .libs/libguile_i18n_v_0_la-i18n.o
>> In file included from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/i18n.c:296:
>> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h: In function 'get_current_locale_settings':
>> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: 'LC_MESSAGES' undeclared (first use in this function)
>> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: (Each undeclared identifier is reported only once
>> /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/locale-categories.h:24: error: for each function it appears in.)
> 
> Can you try out the attached patch?

Seems to work. 

Next problem: 

In file included from /home/lilydev/vc/gub/target/mingw/root/usr/include/sys/time.h:3,
                 from ../libguile/scmconfig.h:25,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/__scm.h:52,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile.h:30,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/discouraged.c:22:
../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'

This is 7ddb9baf80744f0ea4810c35b465d96f4833875, with your patch on top. 

Curiously, the same location in uncompiled source (my guile devel
directory) has an #if 0 rather than #if 1 around the code.



-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-10  2:38   ` Han-Wen Nienhuys
@ 2008-09-11 19:41     ` Ludovic Courtès
  2008-09-12  7:45       ` Ludovic Courtès
  0 siblings, 1 reply; 15+ messages in thread
From: Ludovic Courtès @ 2008-09-11 19:41 UTC (permalink / raw)
  To: bug-guile

Hi,

Han-Wen Nienhuys <hanwen@xs4all.nl> writes:

> In file included from /home/lilydev/vc/gub/target/mingw/root/usr/include/sys/time.h:3,
>                  from ../libguile/scmconfig.h:25,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/__scm.h:52,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile.h:30,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/discouraged.c:22:
> ../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
> ../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'

Reported here:

  http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/14574

It will be fixed next time I update Gnulib files in the repo.

Thanks,
Ludo'.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-11 19:41     ` Ludovic Courtès
@ 2008-09-12  7:45       ` Ludovic Courtès
  2008-09-13  3:27         ` Han-Wen Nienhuys
  2008-09-13  3:54         ` Han-Wen Nienhuys
  0 siblings, 2 replies; 15+ messages in thread
From: Ludovic Courtès @ 2008-09-12  7:45 UTC (permalink / raw)
  To: bug-guile

[-- Attachment #1: Type: text/plain, Size: 887 bytes --]

Hi,

ludo@gnu.org (Ludovic Courtès) writes:

> Han-Wen Nienhuys <hanwen@xs4all.nl> writes:
>
>> In file included from /home/lilydev/vc/gub/target/mingw/root/usr/include/sys/time.h:3,
>>                  from ../libguile/scmconfig.h:25,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/__scm.h:52,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile.h:30,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/discouraged.c:22:
>> ../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
>> ../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
>
> Reported here:
>
>   http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/14574

Actually, as suggested by Eric Blake, this is probably fixed by the
attached patch (committed).  Can you confirm it?

Thanks,
Ludo'.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: The patch --]
[-- Type: text/x-patch, Size: 1231 bytes --]

From 1778e9f5fba27a08af73c2757e16ba01ac1d1c23 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
Date: Fri, 12 Sep 2008 09:41:54 +0200
Subject: [PATCH] Include <config.h> in `discouraged.c'.

* libguile/discouraged.c: Include <config.h> first so that files that
  rely on `config.h' macros (such as Gnulib-provided headers) work as
  expected.
---
 libguile/discouraged.c |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/libguile/discouraged.c b/libguile/discouraged.c
index 07663e0..3ffbed1 100644
--- a/libguile/discouraged.c
+++ b/libguile/discouraged.c
@@ -2,7 +2,7 @@
    discourage something, move it here when that is feasible.
 */
 
-/* Copyright (C) 2003, 2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2004, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -19,7 +19,12 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#include "libguile.h"
+#if HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
+#include <libguile.h>
+
 
 #if (SCM_ENABLE_DISCOURAGED == 1)
 
-- 
1.6.0


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-12  7:45       ` Ludovic Courtès
@ 2008-09-13  3:27         ` Han-Wen Nienhuys
  2008-09-13  3:54         ` Han-Wen Nienhuys
  1 sibling, 0 replies; 15+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-13  3:27 UTC (permalink / raw)
  To: bug-guile

Ludovic Courtès escreveu:
>>> In file included from /home/lilydev/vc/gub/target/mingw/root/usr/include/sys/time.h:3,
>>>                  from ../libguile/scmconfig.h:25,
>>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/__scm.h:52,
>>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile.h:30,
>>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/discouraged.c:22:
>>> ../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
>>> ../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
>> Reported here:
>>
>>   http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/14574
> 
> Actually, as suggested by Eric Blake, this is probably fixed by the
> attached patch (committed).  Can you confirm it?

It now barfs similarly on gh_eval.c; this looks like a good moment
to drop the GH interface.

-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-12  7:45       ` Ludovic Courtès
  2008-09-13  3:27         ` Han-Wen Nienhuys
@ 2008-09-13  3:54         ` Han-Wen Nienhuys
  2008-09-13 13:55           ` Ludovic Courtès
  1 sibling, 1 reply; 15+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-13  3:54 UTC (permalink / raw)
  To: bug-guile

Ludovic Courtès escreveu:
> Hi,
> 
> ludo@gnu.org (Ludovic Courtès) writes:
> 
>> Han-Wen Nienhuys <hanwen@xs4all.nl> writes:
>>
>>> In file included from /home/lilydev/vc/gub/target/mingw/root/usr/include/sys/time.h:3,
>>>                  from ../libguile/scmconfig.h:25,
>>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/__scm.h:52,
>>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile.h:30,
>>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/discouraged.c:22:
>>> ../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
>>> ../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
>> Reported here:
>>
>>   http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/14574
> 
> Actually, as suggested by Eric Blake, this is probably fixed by the
> attached patch (committed).  Can you confirm it?

adding the include to srfi-4.c, I still get

 i686-mingw32-gcc -mms-bitfields -DHAVE_CONFIG_H -DSCM_IMPORT -I. -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/lib -I../lib -Wall -Wmissing-prototypes -g -O2 -MT srfi-1.lo -MD -MP -MF .deps/srfi-1.Tpo -c /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/srfi-1.c  -DDLL_EXPORT -DPIC -o .libs/srfi-1.o
In file included from /home/lilydev/vc/gub/target/mingw/root/usr/include/sys/time.h:3,
                 from ../libguile/scmconfig.h:25,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../libguile/__scm.h:52,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../libguile.h:30,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../srfi/srfi-4.h:25,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/srfi-4.c:25:
../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
make[3]: ** [srfi-4.lo] Erro 1


-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-13  3:54         ` Han-Wen Nienhuys
@ 2008-09-13 13:55           ` Ludovic Courtès
  2008-09-13 15:13             ` Han-Wen Nienhuys
  2008-09-13 15:47             ` Han-Wen Nienhuys
  0 siblings, 2 replies; 15+ messages in thread
From: Ludovic Courtès @ 2008-09-13 13:55 UTC (permalink / raw)
  To: bug-guile

[-- Attachment #1: Type: text/plain, Size: 2029 bytes --]

Hi,

Han-Wen Nienhuys <hanwen@xs4all.nl> writes:

> adding the include to srfi-4.c, I still get
>
>  i686-mingw32-gcc -mms-bitfields -DHAVE_CONFIG_H -DSCM_IMPORT -I. -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/lib -I../lib -Wall -Wmissing-prototypes -g -O2 -MT srfi-1.lo -MD -MP -MF .deps/srfi-1.Tpo -c /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/srfi-1.c  -DDLL_EXPORT -DPIC -o .libs/srfi-1.o

Hmm, that's `srfi-1.c', not `srfi-4.c'.

> In file included from /home/lilydev/vc/gub/target/mingw/root/usr/include/sys/time.h:3,
>                  from ../libguile/scmconfig.h:25,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../libguile/__scm.h:52,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../libguile.h:30,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../srfi/srfi-4.h:25,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/srfi-4.c:25:
> ../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
> ../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
> make[3]: ** [srfi-4.lo] Erro 1

OK, I reviewed all C files and noticed that most of them did not include
<config.h>, even those that clearly use `HAVE_' macros, or `inline',
etc., which is clearly likely to cause problems.  The problems are even
more likely to show up since we use Gnulib headers that most of the time
rely on <config.h> macros.  Thus, I committed the attached patch to
`master' and a similar one in 1.8.

Can you please restart from there and report back?

Thanks in advance,
Ludo'.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: The patch --]
[-- Type: text/x-patch, Size: 57731 bytes --]

From dbb605f575ea9720cb534b1e3e1a3a7015c828a6 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
Date: Sat, 13 Sep 2008 15:35:27 +0200
Subject: [PATCH] Include <config.h> in all C files; use `#ifdef HAVE_CONFIG_H' rather than `#if'.

---
 libguile/alist.c            |    6 +++++-
 libguile/alloca.c           |    2 +-
 libguile/arbiters.c         |    5 ++++-
 libguile/async.c            |    2 +-
 libguile/backtrace.c        |    2 +-
 libguile/boolean.c          |    5 ++++-
 libguile/chars.c            |    5 ++++-
 libguile/continuations.c    |    5 ++++-
 libguile/convert.c          |    2 +-
 libguile/coop.c             |    2 +-
 libguile/debug-malloc.c     |    6 +++++-
 libguile/debug.c            |    5 ++++-
 libguile/deprecated.c       |    4 ++++
 libguile/deprecation.c      |    2 +-
 libguile/discouraged.c      |    2 +-
 libguile/dynl.c             |    6 +++++-
 libguile/dynwind.c          |    6 +++++-
 libguile/environments.c     |    5 ++++-
 libguile/eq.c               |    2 +-
 libguile/error.c            |    2 +-
 libguile/eval.c             |    2 +-
 libguile/evalext.c          |    5 ++++-
 libguile/extensions.c       |    2 +-
 libguile/feature.c          |    2 +-
 libguile/filesys.c          |    2 +-
 libguile/fluids.c           |    6 +++++-
 libguile/fports.c           |    2 +-
 libguile/futures.c          |    6 +++++-
 libguile/gc-card.c          |    2 +-
 libguile/gc-freelist.c      |    6 +++++-
 libguile/gc-malloc.c        |    2 +-
 libguile/gc-mark.c          |    2 +-
 libguile/gc-segment-table.c |    6 +++++-
 libguile/gc-segment.c       |    2 +-
 libguile/gc.c               |    2 +-
 libguile/gc_os_dep.c        |    2 +-
 libguile/gdbint.c           |    2 +-
 libguile/gen-scmconfig.c    |    2 +-
 libguile/gettext.c          |    2 +-
 libguile/gh_data.c          |    2 +-
 libguile/gh_eval.c          |    6 +++++-
 libguile/gh_funcs.c         |    5 ++++-
 libguile/gh_init.c          |    5 ++++-
 libguile/gh_io.c            |    5 ++++-
 libguile/gh_list.c          |    6 +++++-
 libguile/gh_predicates.c    |    5 ++++-
 libguile/goops.c            |    4 ++++
 libguile/gsubr.c            |    5 ++++-
 libguile/guardians.c        |    5 ++++-
 libguile/guile.c            |    2 +-
 libguile/hash.c             |    5 ++++-
 libguile/hashtab.c          |    3 +++
 libguile/hooks.c            |    5 ++++-
 libguile/i18n.c             |    2 +-
 libguile/inet_aton.c        |    3 +++
 libguile/init.c             |    2 +-
 libguile/inline.c           |    6 +++++-
 libguile/ioext.c            |    2 +-
 libguile/keywords.c         |    5 ++++-
 libguile/lang.c             |    5 ++++-
 libguile/list.c             |    6 +++++-
 libguile/load.c             |    2 +-
 libguile/macros.c           |    5 ++++-
 libguile/mallocs.c          |    2 +-
 libguile/mkstemp.c          |    2 +-
 libguile/modules.c          |    3 +++
 libguile/net_db.c           |    2 +-
 libguile/null-threads.c     |    6 +++++-
 libguile/numbers.c          |    2 +-
 libguile/objects.c          |    6 +++++-
 libguile/objprop.c          |    5 ++++-
 libguile/options.c          |    5 ++++-
 libguile/pairs.c            |    5 ++++-
 libguile/ports.c            |    2 +-
 libguile/posix.c            |    2 +-
 libguile/print.c            |    5 ++++-
 libguile/procprop.c         |    5 ++++-
 libguile/procs.c            |    5 ++++-
 libguile/properties.c       |    5 ++++-
 libguile/putenv.c           |    2 +-
 libguile/ramap.c            |    5 ++++-
 libguile/random.c           |    2 +-
 libguile/rdelim.c           |    2 +-
 libguile/regex-posix.c      |    2 +-
 libguile/root.c             |    5 ++++-
 libguile/rw.c               |    2 +-
 libguile/scmsigs.c          |    2 +-
 libguile/script.c           |    2 +-
 libguile/simpos.c           |    2 +-
 libguile/smob.c             |    2 +-
 libguile/socket.c           |    2 +-
 libguile/sort.c             |    6 +++++-
 libguile/srcprop.c          |    5 ++++-
 libguile/srfi-13.c          |    6 +++++-
 libguile/srfi-4.c           |    2 +-
 libguile/stackchk.c         |    5 ++++-
 libguile/stacks.c           |    5 ++++-
 libguile/stime.c            |    2 +-
 libguile/strings.c          |    3 +++
 libguile/strorder.c         |    5 ++++-
 libguile/strports.c         |    2 +-
 libguile/struct.c           |    2 +-
 libguile/symbols.c          |    2 +-
 libguile/threads.c          |    3 +++
 libguile/throw.c            |    3 +++
 libguile/unif.c             |    2 +-
 libguile/values.c           |    6 +++++-
 libguile/variable.c         |    5 ++++-
 libguile/vectors.c          |    5 ++++-
 libguile/version.c          |    5 ++++-
 libguile/vports.c           |    2 +-
 libguile/weaks.c            |    3 +++
 libguile/win32-dirent.c     |    6 +++++-
 libguile/win32-socket.c     |    2 +-
 libguile/win32-uname.c      |    6 +++++-
 srfi/srfi-1.c               |    2 +-
 srfi/srfi-13.c              |    8 ++++++--
 srfi/srfi-14.c              |    8 ++++++--
 srfi/srfi-4.c               |    8 ++++++--
 srfi/srfi-60.c              |    8 ++++++--
 120 files changed, 338 insertions(+), 115 deletions(-)

diff --git a/libguile/alist.c b/libguile/alist.c
index 11da502..ca55b08 100644
--- a/libguile/alist.c
+++ b/libguile/alist.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001, 2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001, 2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,10 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/_scm.h"
 #include "libguile/eq.h"
 #include "libguile/list.h"
diff --git a/libguile/alloca.c b/libguile/alloca.c
index a42ae80..2d0ef5b 100644
--- a/libguile/alloca.c
+++ b/libguile/alloca.c
@@ -21,7 +21,7 @@
    allocating any.  It is a good idea to use alloca(0) in
    your main control loop, etc. to force garbage collection.  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/arbiters.c b/libguile/arbiters.c
index 57c0897..a341ed6 100644
--- a/libguile/arbiters.c
+++ b/libguile/arbiters.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1995,1996, 1997, 2000, 2001, 2004, 2005, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1995,1996, 1997, 2000, 2001, 2004, 2005, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/ports.h"
diff --git a/libguile/async.c b/libguile/async.c
index b3209be..87d330d 100644
--- a/libguile/async.c
+++ b/libguile/async.c
@@ -17,7 +17,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/backtrace.c b/libguile/backtrace.c
index a8bc120..798ade1 100644
--- a/libguile/backtrace.c
+++ b/libguile/backtrace.c
@@ -16,7 +16,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/boolean.c b/libguile/boolean.c
index aaed1af..4b06e04 100644
--- a/libguile/boolean.c
+++ b/libguile/boolean.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1995, 1996, 2000, 2001, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1995, 1996, 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 
diff --git a/libguile/chars.c b/libguile/chars.c
index 9cb7c33..909e11d 100644
--- a/libguile/chars.c
+++ b/libguile/chars.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1995,1996,1998, 2000, 2001, 2004, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1995,1996,1998, 2000, 2001, 2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <ctype.h>
 #include <limits.h>
diff --git a/libguile/continuations.c b/libguile/continuations.c
index 80a2790..74bb911 100644
--- a/libguile/continuations.c
+++ b/libguile/continuations.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1998,2000,2001,2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1998,2000,2001,2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 
diff --git a/libguile/convert.c b/libguile/convert.c
index 11a462b..700deaa 100644
--- a/libguile/convert.c
+++ b/libguile/convert.c
@@ -16,7 +16,7 @@
  */
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/coop.c b/libguile/coop.c
index 133c3d4..08e586f 100644
--- a/libguile/coop.c
+++ b/libguile/coop.c
@@ -20,7 +20,7 @@
 
 /* Cooperative thread library, based on QuickThreads */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/debug-malloc.c b/libguile/debug-malloc.c
index ff627a9..88e7c7c 100644
--- a/libguile/debug-malloc.c
+++ b/libguile/debug-malloc.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <string.h>
 #include <stdio.h>
 
diff --git a/libguile/debug.c b/libguile/debug.c
index 08793f3..7b91cd3 100644
--- a/libguile/debug.c
+++ b/libguile/debug.c
@@ -1,5 +1,5 @@
 /* Debugging extensions for Guile
- * Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002, 2003, 2006 Free Software Foundation
+ * Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002, 2003, 2006, 2008 Free Software Foundation
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
  */
 
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/async.h"
diff --git a/libguile/deprecated.c b/libguile/deprecated.c
index da11608..979de84 100644
--- a/libguile/deprecated.c
+++ b/libguile/deprecated.c
@@ -19,6 +19,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/_scm.h"
 #include "libguile/async.h"
 #include "libguile/deprecated.h"
diff --git a/libguile/deprecation.c b/libguile/deprecation.c
index 2207303..338c47c 100644
--- a/libguile/deprecation.c
+++ b/libguile/deprecation.c
@@ -17,7 +17,7 @@
 
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/discouraged.c b/libguile/discouraged.c
index 3ffbed1..9efd92a 100644
--- a/libguile/discouraged.c
+++ b/libguile/discouraged.c
@@ -19,7 +19,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/dynl.c b/libguile/dynl.c
index be9f691..b2f0fb9 100644
--- a/libguile/dynl.c
+++ b/libguile/dynl.c
@@ -1,7 +1,7 @@
 /* dynl.c - dynamic linking
  *
  * Copyright (C) 1990, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002,
- * 2003 Free Software Foundation, Inc.
+ * 2003, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -20,6 +20,10 @@
 
 
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 /* "dynl.c" dynamically link&load object files.
    Author: Aubrey Jaffer
    Modified for libguile by Marius Vollmer */
diff --git a/libguile/dynwind.c b/libguile/dynwind.c
index 8209500..d856aff 100644
--- a/libguile/dynwind.c
+++ b/libguile/dynwind.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2003, 2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2003, 2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -18,6 +18,10 @@
 
 \f
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <assert.h>
 
 #include "libguile/_scm.h"
diff --git a/libguile/environments.c b/libguile/environments.c
index 5d15f36..13d63c0 100644
--- a/libguile/environments.c
+++ b/libguile/environments.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999,2000,2001, 2003, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1999,2000,2001, 2003, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -16,6 +16,9 @@
  */
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/alist.h"
diff --git a/libguile/eq.c b/libguile/eq.c
index ebc91c9..b54a704 100644
--- a/libguile/eq.c
+++ b/libguile/eq.c
@@ -16,7 +16,7 @@
  */
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/error.c b/libguile/error.c
index d4d3f41..e18db9e 100644
--- a/libguile/error.c
+++ b/libguile/error.c
@@ -18,7 +18,7 @@
 
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/eval.c b/libguile/eval.c
index 218633e..14dc3c3 100644
--- a/libguile/eval.c
+++ b/libguile/eval.c
@@ -21,7 +21,7 @@
 /* SECTION: This code is compiled once.
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/evalext.c b/libguile/evalext.c
index 6b03df4..9bec8f4 100644
--- a/libguile/evalext.c
+++ b/libguile/evalext.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998,1999,2000,2001,2002,2003, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1998,1999,2000,2001,2002,2003, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/eval.h"
diff --git a/libguile/extensions.c b/libguile/extensions.c
index 7a05fa8..1090b8b 100644
--- a/libguile/extensions.c
+++ b/libguile/extensions.c
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/feature.c b/libguile/feature.c
index 6cd0e54..8283cd6 100644
--- a/libguile/feature.c
+++ b/libguile/feature.c
@@ -17,7 +17,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/filesys.c b/libguile/filesys.c
index 6536df8..ec33328 100644
--- a/libguile/filesys.c
+++ b/libguile/filesys.c
@@ -24,7 +24,7 @@
 #define _POSIX_C_SOURCE 199506L  /* for readdir_r */
 #endif
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/fluids.c b/libguile/fluids.c
index eded074..4311a49 100644
--- a/libguile/fluids.c
+++ b/libguile/fluids.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996,1997,2000,2001, 2004, 2006, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 1996,1997,2000,2001, 2004, 2006, 2007, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <stdio.h>
 #include <string.h>
 
diff --git a/libguile/fports.c b/libguile/fports.c
index efbd278..9458e83 100644
--- a/libguile/fports.c
+++ b/libguile/fports.c
@@ -19,7 +19,7 @@
 \f
 #define _LARGEFILE64_SOURCE      /* ask for stat64 etc */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/futures.c b/libguile/futures.c
index 5da8dfa..5b1a3fb 100644
--- a/libguile/futures.c
+++ b/libguile/futures.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2002, 2003, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2002, 2003, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -24,6 +24,10 @@
    reason.
 */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/_scm.h"
 #include "libguile/eval.h"
 #include "libguile/ports.h"
diff --git a/libguile/gc-card.c b/libguile/gc-card.c
index 93e271a..1948aff 100644
--- a/libguile/gc-card.c
+++ b/libguile/gc-card.c
@@ -15,7 +15,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
diff --git a/libguile/gc-freelist.c b/libguile/gc-freelist.c
index 861af57..7458bd4 100644
--- a/libguile/gc-freelist.c
+++ b/libguile/gc-freelist.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <assert.h>
 #include <stdio.h>
 
diff --git a/libguile/gc-malloc.c b/libguile/gc-malloc.c
index 2f6ea21..cdc985e 100644
--- a/libguile/gc-malloc.c
+++ b/libguile/gc-malloc.c
@@ -17,7 +17,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/gc-mark.c b/libguile/gc-mark.c
index c334c10..9afafba 100644
--- a/libguile/gc-mark.c
+++ b/libguile/gc-mark.c
@@ -17,7 +17,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/gc-segment-table.c b/libguile/gc-segment-table.c
index d0d70fd..3e92c8c 100644
--- a/libguile/gc-segment-table.c
+++ b/libguile/gc-segment-table.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <assert.h> 
 #include <stdio.h>
 #include <string.h>
diff --git a/libguile/gc-segment.c b/libguile/gc-segment.c
index f53ec96..4f98cbc 100644
--- a/libguile/gc-segment.c
+++ b/libguile/gc-segment.c
@@ -15,7 +15,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
diff --git a/libguile/gc.c b/libguile/gc.c
index a970eef..ce8c8af 100644
--- a/libguile/gc.c
+++ b/libguile/gc.c
@@ -17,7 +17,7 @@
 
 /* #define DEBUGINFO */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/gc_os_dep.c b/libguile/gc_os_dep.c
index 4223803..d89f1cf 100644
--- a/libguile/gc_os_dep.c
+++ b/libguile/gc_os_dep.c
@@ -21,7 +21,7 @@
  * and modified for Guile by Marius Vollmer.
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/gdbint.c b/libguile/gdbint.c
index bd4ccb3..b9c25c9 100644
--- a/libguile/gdbint.c
+++ b/libguile/gdbint.c
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/gen-scmconfig.c b/libguile/gen-scmconfig.c
index 6d3fea6..85ebfae 100644
--- a/libguile/gen-scmconfig.c
+++ b/libguile/gen-scmconfig.c
@@ -117,7 +117,7 @@
 
  **********************************************************************/
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/gettext.c b/libguile/gettext.c
index 91a5143..e74f9f3 100644
--- a/libguile/gettext.c
+++ b/libguile/gettext.c
@@ -16,7 +16,7 @@
  */
 
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
diff --git a/libguile/gh_data.c b/libguile/gh_data.c
index 1ed6033..101d0fb 100644
--- a/libguile/gh_data.c
+++ b/libguile/gh_data.c
@@ -17,7 +17,7 @@
 
 /* data initialization and C<->Scheme data conversion */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/gh_eval.c b/libguile/gh_eval.c
index 7ea7583..737975e 100644
--- a/libguile/gh_eval.c
+++ b/libguile/gh_eval.c
@@ -1,4 +1,4 @@
-/*      Copyright (C) 1995,1996,1997,1998, 2000, 2001, 2006 Free Software Foundation, Inc.
+/*      Copyright (C) 1995,1996,1997,1998, 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -18,6 +18,10 @@
 
 /* routines to evaluate Scheme code */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/gh.h"
 
 #if SCM_ENABLE_DEPRECATED
diff --git a/libguile/gh_funcs.c b/libguile/gh_funcs.c
index ae6ca95..ea4dd9b 100644
--- a/libguile/gh_funcs.c
+++ b/libguile/gh_funcs.c
@@ -1,4 +1,4 @@
-/*      Copyright (C) 1995,1996,1997,1998, 2000, 2001, 2006 Free Software Foundation, Inc.
+/*      Copyright (C) 1995,1996,1997,1998, 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,9 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 \f
 /* Defining Scheme functions implemented by C functions --- subrs.  */
diff --git a/libguile/gh_init.c b/libguile/gh_init.c
index d7a2527..b3cb771 100644
--- a/libguile/gh_init.c
+++ b/libguile/gh_init.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,2000,2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,2000,2001, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,9 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 /* Guile high level (gh_) interface, initialization-related stuff */
 
diff --git a/libguile/gh_io.c b/libguile/gh_io.c
index 7cc398e..ccf3ff2 100644
--- a/libguile/gh_io.c
+++ b/libguile/gh_io.c
@@ -1,4 +1,4 @@
-/*      Copyright (C) 1995,1996,1997, 2000, 2001, 2006 Free Software Foundation, Inc.
+/*      Copyright (C) 1995,1996,1997, 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,9 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/gh.h"
 
diff --git a/libguile/gh_list.c b/libguile/gh_list.c
index a24d024..b360435 100644
--- a/libguile/gh_list.c
+++ b/libguile/gh_list.c
@@ -1,4 +1,4 @@
-/*      Copyright (C) 1995,1996,1997, 2000, 2001, 2004, 2006 Free Software Foundation, Inc.
+/*      Copyright (C) 1995,1996,1997, 2000, 2001, 2004, 2006, 2008 Free Software Foundation, Inc.
 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 
 /* list manipulation */
 
diff --git a/libguile/gh_predicates.c b/libguile/gh_predicates.c
index 78ba414..1205674 100644
--- a/libguile/gh_predicates.c
+++ b/libguile/gh_predicates.c
@@ -1,4 +1,4 @@
-/*      Copyright (C) 1995,1996,1997, 2000, 2001, 2006 Free Software Foundation, Inc.
+/*      Copyright (C) 1995,1996,1997, 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,9 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 /* type predicates and equality predicates */
 
diff --git a/libguile/goops.c b/libguile/goops.c
index c09932c..840ddd6 100644
--- a/libguile/goops.c
+++ b/libguile/goops.c
@@ -24,6 +24,10 @@
  * Erick Gallesio <eg@unice.fr>.
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <stdio.h>
 #include <assert.h>
 
diff --git a/libguile/gsubr.c b/libguile/gsubr.c
index 356d771..be5c342 100644
--- a/libguile/gsubr.c
+++ b/libguile/gsubr.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -16,6 +16,9 @@
  */
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <stdio.h>
 #include "libguile/_scm.h"
diff --git a/libguile/guardians.c b/libguile/guardians.c
index 5a7c760..e2af784 100644
--- a/libguile/guardians.c
+++ b/libguile/guardians.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998,1999,2000,2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1998,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -39,6 +39,9 @@
  * monsters we had...
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/async.h"
diff --git a/libguile/guile.c b/libguile/guile.c
index c294837..2015ae8 100644
--- a/libguile/guile.c
+++ b/libguile/guile.c
@@ -22,7 +22,7 @@
    based on the list of installed, statically linked libraries on the
    system.  For now, please don't put interesting code in here.  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/hash.c b/libguile/hash.c
index d352249..7a49de6 100644
--- a/libguile/hash.c
+++ b/libguile/hash.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1995,1996,1997, 2000, 2001, 2003, 2004, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1995,1996,1997, 2000, 2001, 2003, 2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/chars.h"
diff --git a/libguile/hashtab.c b/libguile/hashtab.c
index 2d28d65..79e635f 100644
--- a/libguile/hashtab.c
+++ b/libguile/hashtab.c
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <stdio.h>
 
diff --git a/libguile/hooks.c b/libguile/hooks.c
index 7d1dae3..5ca8580 100644
--- a/libguile/hooks.c
+++ b/libguile/hooks.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2003, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2003, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <stdio.h>
 #include "libguile/_scm.h"
diff --git a/libguile/i18n.c b/libguile/i18n.c
index 5d2d976..929ac4d 100644
--- a/libguile/i18n.c
+++ b/libguile/i18n.c
@@ -15,7 +15,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
diff --git a/libguile/inet_aton.c b/libguile/inet_aton.c
index fe43d6e..ebef71f 100644
--- a/libguile/inet_aton.c
+++ b/libguile/inet_aton.c
@@ -31,6 +31,9 @@
  * SUCH DAMAGE.
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #if defined(LIBC_SCCS) && !defined(lint)
 static char sccsid[] = "@(#)inet_addr.c	8.1 (Berkeley) 6/17/93";
diff --git a/libguile/init.c b/libguile/init.c
index 25cff62..522bec9 100644
--- a/libguile/init.c
+++ b/libguile/init.c
@@ -20,7 +20,7 @@
 /* Include the headers for just about everything.
    We call all their initialization functions.  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/inline.c b/libguile/inline.c
index 802aae5..a0c2500 100644
--- a/libguile/inline.c
+++ b/libguile/inline.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,5 +15,9 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #define SCM_INLINE_C_INCLUDING_INLINE_H 1
 #include "libguile/inline.h"
diff --git a/libguile/ioext.c b/libguile/ioext.c
index 60b751f..b542664 100644
--- a/libguile/ioext.c
+++ b/libguile/ioext.c
@@ -18,7 +18,7 @@
 
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/keywords.c b/libguile/keywords.c
index 045537a..0f9f13e 100644
--- a/libguile/keywords.c
+++ b/libguile/keywords.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2003, 2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2003, 2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <string.h>
 
diff --git a/libguile/lang.c b/libguile/lang.c
index 9860073..7f3986c 100644
--- a/libguile/lang.c
+++ b/libguile/lang.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1999, 2000, 2001, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1999, 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 
diff --git a/libguile/list.c b/libguile/list.c
index a1a79a4..07b96f5 100644
--- a/libguile/list.c
+++ b/libguile/list.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,2000,2001,2003,2004
+/* Copyright (C) 1995,1996,1997,2000,2001,2003,2004,2008
  * Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
@@ -18,6 +18,10 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/_scm.h"
 #include "libguile/eq.h"
 #include "libguile/lang.h"
diff --git a/libguile/load.c b/libguile/load.c
index 3e702c4..5ca4e07 100644
--- a/libguile/load.c
+++ b/libguile/load.c
@@ -18,7 +18,7 @@
 
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/macros.c b/libguile/macros.c
index db279ec..10464eb 100644
--- a/libguile/macros.c
+++ b/libguile/macros.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,2000,2001,2002,2003, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,2000,2001,2002,2003, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/alist.h" /* for SCM_EXTEND_ENV (well...) */
diff --git a/libguile/mallocs.c b/libguile/mallocs.c
index 6a68b96..c11a51f 100644
--- a/libguile/mallocs.c
+++ b/libguile/mallocs.c
@@ -19,7 +19,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/mkstemp.c b/libguile/mkstemp.c
index 21b7451..6a573c6 100644
--- a/libguile/mkstemp.c
+++ b/libguile/mkstemp.c
@@ -18,7 +18,7 @@
    Boston, MA 02110-1301, USA. 
 */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/modules.c b/libguile/modules.c
index 168fbce..24b5ad9 100644
--- a/libguile/modules.c
+++ b/libguile/modules.c
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <stdarg.h>
 
diff --git a/libguile/net_db.c b/libguile/net_db.c
index 83ee03b..deb8d38 100644
--- a/libguile/net_db.c
+++ b/libguile/net_db.c
@@ -25,7 +25,7 @@
  */
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/null-threads.c b/libguile/null-threads.c
index da76269..8140175 100644
--- a/libguile/null-threads.c
+++ b/libguile/null-threads.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <stdlib.h>
 #include "libguile/_scm.h"
 
diff --git a/libguile/numbers.c b/libguile/numbers.c
index 20eb16a..7a4d619 100644
--- a/libguile/numbers.c
+++ b/libguile/numbers.c
@@ -40,7 +40,7 @@
 
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/objects.c b/libguile/objects.c
index 649d08f..995d2e4 100644
--- a/libguile/objects.c
+++ b/libguile/objects.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1999,2000,2001, 2003, 2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1999,2000,2001, 2003, 2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -23,6 +23,10 @@
  * libguile.  See the comments in objects.h.
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/_scm.h"
 
 #include "libguile/struct.h"
diff --git a/libguile/objprop.c b/libguile/objprop.c
index 58449b8..8e9486f 100644
--- a/libguile/objprop.c
+++ b/libguile/objprop.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1995,1996, 2000, 2001, 2003, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1995,1996, 2000, 2001, 2003, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/async.h"
diff --git a/libguile/options.c b/libguile/options.c
index ae75e13..cc3d452 100644
--- a/libguile/options.c
+++ b/libguile/options.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1998,2000,2001, 2006 Free Software Foundation
+/* Copyright (C) 1995,1996,1998,2000,2001, 2006, 2008 Free Software Foundation
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -16,6 +16,9 @@
  */
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/mallocs.h"
diff --git a/libguile/pairs.c b/libguile/pairs.c
index d6cabde..cb2d642 100644
--- a/libguile/pairs.c
+++ b/libguile/pairs.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,2000,2001, 2004, 2005, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,2000,2001, 2004, 2005, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/validate.h"
diff --git a/libguile/ports.c b/libguile/ports.c
index b25a7d0..abb9dc3 100644
--- a/libguile/ports.c
+++ b/libguile/ports.c
@@ -21,7 +21,7 @@
 
 #define _LARGEFILE64_SOURCE      /* ask for stat64 etc */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/posix.c b/libguile/posix.c
index 0bad2ee..abcf77f 100644
--- a/libguile/posix.c
+++ b/libguile/posix.c
@@ -17,7 +17,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/print.c b/libguile/print.c
index fb9a74e..d218837 100644
--- a/libguile/print.c
+++ b/libguile/print.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995-1999,2000,2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995-1999,2000,2001, 2002, 2003, 2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <errno.h>
 
diff --git a/libguile/procprop.c b/libguile/procprop.c
index cfa8abe..88f2c22 100644
--- a/libguile/procprop.c
+++ b/libguile/procprop.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1998,2000,2001,2003,2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1998,2000,2001,2003,2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 
diff --git a/libguile/procs.c b/libguile/procs.c
index 2359eae..9895548 100644
--- a/libguile/procs.c
+++ b/libguile/procs.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1999,2000,2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 
diff --git a/libguile/properties.c b/libguile/properties.c
index 680b669..321dc9e 100644
--- a/libguile/properties.c
+++ b/libguile/properties.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,2000,2001, 2003, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,2000,2001, 2003, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/hashtab.h"
diff --git a/libguile/putenv.c b/libguile/putenv.c
index b43765f..0ff3359 100644
--- a/libguile/putenv.c
+++ b/libguile/putenv.c
@@ -16,7 +16,7 @@
  */
 
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/ramap.c b/libguile/ramap.c
index 25d8b27..1bc4fdd 100644
--- a/libguile/ramap.c
+++ b/libguile/ramap.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996,1998,2000,2001,2004,2005, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1996,1998,2000,2001,2004,2005, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -24,6 +24,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/strings.h"
diff --git a/libguile/random.c b/libguile/random.c
index 912f6ac..8d2ff03 100644
--- a/libguile/random.c
+++ b/libguile/random.c
@@ -18,7 +18,7 @@
 
 /* Author: Mikael Djurfeldt <djurfeldt@nada.kth.se> */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/rdelim.c b/libguile/rdelim.c
index 2ce1803..c9cc016 100644
--- a/libguile/rdelim.c
+++ b/libguile/rdelim.c
@@ -15,7 +15,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/regex-posix.c b/libguile/regex-posix.c
index d280c82..008917a 100644
--- a/libguile/regex-posix.c
+++ b/libguile/regex-posix.c
@@ -26,7 +26,7 @@
    libraries which do not agree with the Spencer implementation may
    produce varying behavior.  Sigh. */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/root.c b/libguile/root.c
index 43118b2..0d4ab29 100644
--- a/libguile/root.c
+++ b/libguile/root.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000, 2001, 2002, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,1999,2000, 2001, 2002, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <string.h>
 #include <stdio.h>
diff --git a/libguile/rw.c b/libguile/rw.c
index 660ea2c..3e81474 100644
--- a/libguile/rw.c
+++ b/libguile/rw.c
@@ -19,7 +19,7 @@
 
 /* This is the C part of the (ice-9 rw) module.  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/scmsigs.c b/libguile/scmsigs.c
index 3a8596a..237bc53 100644
--- a/libguile/scmsigs.c
+++ b/libguile/scmsigs.c
@@ -18,7 +18,7 @@
 
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/script.c b/libguile/script.c
index 2e45d87..7dba095 100644
--- a/libguile/script.c
+++ b/libguile/script.c
@@ -17,7 +17,7 @@
 /* "script.c" argv tricks for `#!' scripts.
    Authors: Aubrey Jaffer and Jim Blandy */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/simpos.c b/libguile/simpos.c
index 79b9f3e..402e4dc 100644
--- a/libguile/simpos.c
+++ b/libguile/simpos.c
@@ -18,7 +18,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/smob.c b/libguile/smob.c
index a728cc7..cbbc24e 100644
--- a/libguile/smob.c
+++ b/libguile/smob.c
@@ -17,7 +17,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/socket.c b/libguile/socket.c
index bfac452..f34b6d4 100644
--- a/libguile/socket.c
+++ b/libguile/socket.c
@@ -18,7 +18,7 @@
 
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/sort.c b/libguile/sort.c
index f8e440c..2a73176 100644
--- a/libguile/sort.c
+++ b/libguile/sort.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999,2000,2001,2002, 2004, 2006, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 1999,2000,2001,2002, 2004, 2006, 2007, 2008 Free Software Foundation, Inc.
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
@@ -32,6 +32,10 @@
  * quicksort code.
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/_scm.h"
 #include "libguile/eval.h"
 #include "libguile/unif.h"
diff --git a/libguile/srcprop.c b/libguile/srcprop.c
index ed9b1b7..055ae32 100644
--- a/libguile/srcprop.c
+++ b/libguile/srcprop.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002, 2006 Free Software Foundation
+/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002, 2006, 2008 Free Software Foundation
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <errno.h>
 
diff --git a/libguile/srfi-13.c b/libguile/srfi-13.c
index b3cb1bf..c8ca780 100644
--- a/libguile/srfi-13.c
+++ b/libguile/srfi-13.c
@@ -1,6 +1,6 @@
 /* srfi-13.c --- SRFI-13 procedures for Guile
  *
- * Copyright (C) 2001, 2004, 2005, 2006 Free Software Foundation, Inc.
+ * Copyright (C) 2001, 2004, 2005, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -18,6 +18,10 @@
  */
 
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <string.h>
 #include <ctype.h>
 
diff --git a/libguile/srfi-4.c b/libguile/srfi-4.c
index 7d22f8b..3aedbeb 100644
--- a/libguile/srfi-4.c
+++ b/libguile/srfi-4.c
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/stackchk.c b/libguile/stackchk.c
index ee1fa85..391ce21 100644
--- a/libguile/stackchk.c
+++ b/libguile/stackchk.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1995,1996,1997, 2000, 2001, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1995,1996,1997, 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/ports.h"
diff --git a/libguile/stacks.c b/libguile/stacks.c
index 7490db2..4b97a18 100644
--- a/libguile/stacks.c
+++ b/libguile/stacks.c
@@ -1,5 +1,5 @@
 /* Representation of stack frame debug information
- * Copyright (C) 1996,1997,2000,2001, 2006, 2007 Free Software Foundation
+ * Copyright (C) 1996,1997,2000,2001, 2006, 2007, 2008 Free Software Foundation
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -18,6 +18,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/eval.h"
diff --git a/libguile/stime.c b/libguile/stime.c
index be5bf65..34c8a98 100644
--- a/libguile/stime.c
+++ b/libguile/stime.c
@@ -38,7 +38,7 @@
 #define _POSIX_C_SOURCE 199506L  /* for gmtime_r prototype */
 #endif
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/strings.c b/libguile/strings.c
index c9b08a0..4d387fb 100644
--- a/libguile/strings.c
+++ b/libguile/strings.c
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <string.h>
 #include <stdio.h>
diff --git a/libguile/strorder.c b/libguile/strorder.c
index 9947c45..d3ccfcb 100644
--- a/libguile/strorder.c
+++ b/libguile/strorder.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1995, 1996, 1999, 2000, 2004, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1995, 1996, 1999, 2000, 2004, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -16,6 +16,9 @@
  */
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/chars.h"
diff --git a/libguile/strports.c b/libguile/strports.c
index 8659ccf..bc3fd70 100644
--- a/libguile/strports.c
+++ b/libguile/strports.c
@@ -18,7 +18,7 @@
 
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/struct.c b/libguile/struct.c
index ad88ac8..511fca4 100644
--- a/libguile/struct.c
+++ b/libguile/struct.c
@@ -16,7 +16,7 @@
  */
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/symbols.c b/libguile/symbols.c
index d786dd9..2c2b44c 100644
--- a/libguile/symbols.c
+++ b/libguile/symbols.c
@@ -17,7 +17,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/threads.c b/libguile/threads.c
index 8699fd0..72af3d1 100644
--- a/libguile/threads.c
+++ b/libguile/threads.c
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 
diff --git a/libguile/throw.c b/libguile/throw.c
index f605af7..ae538e2 100644
--- a/libguile/throw.c
+++ b/libguile/throw.c
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <stdio.h>
 #include "libguile/_scm.h"
diff --git a/libguile/unif.c b/libguile/unif.c
index d61532b..daf0850 100644
--- a/libguile/unif.c
+++ b/libguile/unif.c
@@ -25,7 +25,7 @@
 */
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/values.c b/libguile/values.c
index 46b51c2..e766edb 100644
--- a/libguile/values.c
+++ b/libguile/values.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000, 2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/_scm.h"
 #include "libguile/eval.h"
 #include "libguile/feature.h"
diff --git a/libguile/variable.c b/libguile/variable.c
index 0bcd07c..6c39b30 100644
--- a/libguile/variable.c
+++ b/libguile/variable.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/eq.h"
diff --git a/libguile/vectors.c b/libguile/vectors.c
index fef48cc..eeb8569 100644
--- a/libguile/vectors.c
+++ b/libguile/vectors.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include "libguile/_scm.h"
 #include "libguile/eq.h"
diff --git a/libguile/version.c b/libguile/version.c
index 9f5eedc..99c649b 100644
--- a/libguile/version.c
+++ b/libguile/version.c
@@ -1,4 +1,4 @@
-/*	Copyright (C) 1995,1996, 1999, 2000, 2001, 2006 Free Software Foundation, Inc.
+/*	Copyright (C) 1995,1996, 1999, 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <stdio.h>
 #include "libguile/_scm.h"
diff --git a/libguile/vports.c b/libguile/vports.c
index 6aec948..564f0e7 100644
--- a/libguile/vports.c
+++ b/libguile/vports.c
@@ -17,7 +17,7 @@
 
 
 \f
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/weaks.c b/libguile/weaks.c
index 2e11315..1d58b5d 100644
--- a/libguile/weaks.c
+++ b/libguile/weaks.c
@@ -17,6 +17,9 @@
 
 
 \f
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
 
 #include <stdio.h>
 
diff --git a/libguile/win32-dirent.c b/libguile/win32-dirent.c
index 71ef62b..cd7e8ba 100644
--- a/libguile/win32-dirent.c
+++ b/libguile/win32-dirent.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/__scm.h"
 
 #include <windows.h>
diff --git a/libguile/win32-socket.c b/libguile/win32-socket.c
index 66f81b8..54f80a7 100644
--- a/libguile/win32-socket.c
+++ b/libguile/win32-socket.c
@@ -18,7 +18,7 @@
 
 \f
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
 
diff --git a/libguile/win32-uname.c b/libguile/win32-uname.c
index d4620e1..d4d737f 100644
--- a/libguile/win32-uname.c
+++ b/libguile/win32-uname.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2006, 2008 Free Software Foundation, Inc.
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include "libguile/__scm.h"
 
 #include <windows.h>
diff --git a/srfi/srfi-1.c b/srfi/srfi-1.c
index 35815b3..dc218ab 100644
--- a/srfi/srfi-1.c
+++ b/srfi/srfi-1.c
@@ -18,7 +18,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
diff --git a/srfi/srfi-13.c b/srfi/srfi-13.c
index 64331f3..dd5ce9b 100644
--- a/srfi/srfi-13.c
+++ b/srfi/srfi-13.c
@@ -1,6 +1,6 @@
 /* srfi-13.c --- old place of SRFI-13 procedures for Guile
  *
- * Copyright (C) 2001, 2004, 2006 Free Software Foundation, Inc.
+ * Copyright (C) 2001, 2004, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -23,7 +23,11 @@
    since people might still be linking with it.
 */
 
-#include "srfi/srfi-13.h"
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <srfi/srfi-13.h>
 
 void
 scm_init_srfi_13 (void)
diff --git a/srfi/srfi-14.c b/srfi/srfi-14.c
index fe5e049..1a7297b 100644
--- a/srfi/srfi-14.c
+++ b/srfi/srfi-14.c
@@ -1,6 +1,6 @@
 /* srfi-14.c --- Old place of SRFI-14 procedures for Guile
  *
- * Copyright (C) 2001, 2004, 2006 Free Software Foundation, Inc.
+ * Copyright (C) 2001, 2004, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,7 +17,11 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#include "srfi/srfi-14.h"
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <srfi/srfi-14.h>
 
 void
 scm_init_srfi_14 (void)
diff --git a/srfi/srfi-4.c b/srfi/srfi-4.c
index b4486a5..f40c6b3 100644
--- a/srfi/srfi-4.c
+++ b/srfi/srfi-4.c
@@ -1,6 +1,6 @@
 /* srfi-4.c --- Homogeneous numeric vector datatypes.
  *
- * 	Copyright (C) 2001, 2004, 2006 Free Software Foundation, Inc.
+ * 	Copyright (C) 2001, 2004, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -22,7 +22,11 @@
    since people might still be linking with it.
 */
 
-#include "srfi/srfi-4.h"
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <srfi/srfi-4.h>
 
 void
 scm_init_srfi_4 (void)
diff --git a/srfi/srfi-60.c b/srfi/srfi-60.c
index b90306a..7d89ca0 100644
--- a/srfi/srfi-60.c
+++ b/srfi/srfi-60.c
@@ -1,6 +1,6 @@
 /* srfi-60.c --- Integers as Bits
  *
- * Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+ * Copyright (C) 2005, 2006, 2008 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -17,8 +17,12 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <libguile.h>
-#include "srfi-60.h"
+#include <srfi/srfi-60.h>
 
 
 SCM_DEFINE (scm_srfi60_log2_binary_factors, "log2-binary-factors", 1, 0, 0,
-- 
1.6.0


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-13 13:55           ` Ludovic Courtès
@ 2008-09-13 15:13             ` Han-Wen Nienhuys
  2008-09-13 18:16               ` Ludovic Courtès
  2008-09-13 15:47             ` Han-Wen Nienhuys
  1 sibling, 1 reply; 15+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-13 15:13 UTC (permalink / raw)
  To: bug-guile

Ludovic Courtès escreveu:
> Hi,
> 
> Han-Wen Nienhuys <hanwen@xs4all.nl> writes:
> 
>> adding the include to srfi-4.c, I still get
>>
>>  i686-mingw32-gcc -mms-bitfields -DHAVE_CONFIG_H -DSCM_IMPORT -I. -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi -I.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/.. -I/home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/lib -I../lib -Wall -Wmissing-prototypes -g -O2 -MT srfi-1.lo -MD -MP -MF .deps/srfi-1.Tpo -c /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/srfi-1.c  -DDLL_EXPORT -DPIC -o .libs/srfi-1.o
> 
> Hmm, that's `srfi-1.c', not `srfi-4.c'.
> 
>> In file included from /home/lilydev/vc/gub/target/mingw/root/usr/include/sys/time.h:3,
>>                  from ../libguile/scmconfig.h:25,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../libguile/__scm.h:52,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../libguile.h:30,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/../srfi/srfi-4.h:25,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-localhost--home-lilydev-vc-guile-master/srfi/srfi-4.c:25:
>> ../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
>> ../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
>> make[3]: ** [srfi-4.lo] Erro 1
> 
> OK, I reviewed all C files and noticed that most of them did not include
> <config.h>, even those that clearly use `HAVE_' macros, or `inline',
> etc., which is clearly likely to cause problems.  The problems are even
> more likely to show up since we use Gnulib headers that most of the time
> rely on <config.h> macros.  Thus, I committed the attached patch to
> `master' and a similar one in 1.8.

As a review comment: is there a specific reason to do HAVE_CONFIG_H ?  In 
what case do we not HAVE_CONFIG_H ?

-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-13 13:55           ` Ludovic Courtès
  2008-09-13 15:13             ` Han-Wen Nienhuys
@ 2008-09-13 15:47             ` Han-Wen Nienhuys
  1 sibling, 0 replies; 15+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-13 15:47 UTC (permalink / raw)
  To: bug-guile

Ludovic Courtès escreveu:

> OK, I reviewed all C files and noticed that most of them did not include
> <config.h>, even those that clearly use `HAVE_' macros, or `inline',
> etc., which is clearly likely to cause problems.  The problems are even
> more likely to show up since we use Gnulib headers that most of the time
> rely on <config.h> macros.  Thus, I committed the attached patch to
> `master' and a similar one in 1.8.
> 
> Can you please restart from there and report back?

                 from ../../libguile/scmconfig.h:25,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/__scm.h:52,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile.h:30,
                 from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/test-suite/standalone/test-asmobs-lib.c:18:
../../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
../../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
make[4]: ** [libtest_asmobs_la-test-asmobs-lib.lo] Erro 1
make[4]: Saindo do diretório `/home/lilydev/vc/gub/target/mingw/build/gui


-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-13 15:13             ` Han-Wen Nienhuys
@ 2008-09-13 18:16               ` Ludovic Courtès
  2008-09-13 18:50                 ` Han-Wen Nienhuys
  0 siblings, 1 reply; 15+ messages in thread
From: Ludovic Courtès @ 2008-09-13 18:16 UTC (permalink / raw)
  To: bug-guile

[-- Attachment #1: Type: text/plain, Size: 1093 bytes --]

Hi,

Han-Wen Nienhuys <hanwen@xs4all.nl> writes:

> As a review comment: is there a specific reason to do HAVE_CONFIG_H ?  In 
> what case do we not HAVE_CONFIG_H ?

Yes, when `AC_CONFIG_HEADERS' isn't used.  It's correct Autoconf
practice to check for `HAVE_CONFIG_H'.

> Ludovic Courtès escreveu:

>> Can you please restart from there and report back?
>
>                  from ../../libguile/scmconfig.h:25,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/__scm.h:52,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile.h:30,
>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/test-suite/standalone/test-asmobs-lib.c:18:
> ../../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
> ../../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
> make[4]: ** [libtest_asmobs_la-test-asmobs-lib.lo] Erro 1
> make[4]: Saindo do diretório `/home/lilydev/vc/gub/target/mingw/build/gui

Of course, I had forgotten the tests.

I'm sure we're almost done now.  :-)

Thanks,
Ludo'.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: The patch --]
[-- Type: text/x-patch, Size: 3692 bytes --]

From 3394818c0a465c8b337252250174ecb0d13d726d Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
Date: Sat, 13 Sep 2008 20:09:08 +0200
Subject: [PATCH] Include <config.h> in standalone tests.

* test-suite/standalone/Makefile.am (test_cflags): Add `-I$(top_builddir)' so
  that <config.h> can be found.
  (snarfcppopts): Likewise.

* test-suite/standalone/*.c: Include <config.h>.
---
 test-suite/standalone/Makefile.am              |    4 ++--
 test-suite/standalone/test-asmobs-lib.c        |    4 ++++
 test-suite/standalone/test-gh.c                |    4 ++++
 test-suite/standalone/test-list.c              |    4 ++++
 test-suite/standalone/test-num2integral.c      |    4 ++++
 test-suite/standalone/test-with-guile-module.c |    4 ++++
 6 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/test-suite/standalone/Makefile.am b/test-suite/standalone/Makefile.am
index adbe0c8..212fbca 100644
--- a/test-suite/standalone/Makefile.am
+++ b/test-suite/standalone/Makefile.am
@@ -32,7 +32,7 @@ TESTS_ENVIRONMENT = "${top_builddir}/pre-inst-guile-env"
 
 test_cflags =					\
   -I$(top_srcdir)/test-suite/standalone		\
-  -I$(top_srcdir)				\
+  -I$(top_srcdir) -I$(top_builddir)		\
   -I$(top_srcdir)/lib -I$(top_builddir)/lib	\
   $(EXTRA_DEFS) $(GUILE_CFLAGS) $(GCC_CFLAGS)
 
@@ -40,7 +40,7 @@ AM_LDFLAGS = $(GUILE_CFLAGS)
 
 snarfcppopts =								\
   $(DEFS) $(DEFAULT_INCLUDES) $(CPPFLAGS) $(CFLAGS) -I$(top_srcdir)	\
-  -I$(top_srcdir)/lib -I$(top_builddir)/lib
+  -I$(top_srcdir)/lib -I$(top_builddir)/lib -I$(top_builddir)
 
 SUFFIXES = .x
 .c.x:
diff --git a/test-suite/standalone/test-asmobs-lib.c b/test-suite/standalone/test-asmobs-lib.c
index 88cf847..b85f923 100644
--- a/test-suite/standalone/test-asmobs-lib.c
+++ b/test-suite/standalone/test-asmobs-lib.c
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifndef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <libguile.h>
 
 long asmob000;
diff --git a/test-suite/standalone/test-gh.c b/test-suite/standalone/test-gh.c
index b273b44..9f1601a 100644
--- a/test-suite/standalone/test-gh.c
+++ b/test-suite/standalone/test-gh.c
@@ -17,6 +17,10 @@
 
 /* some bits originally by Jim Blandy <jimb@red-bean.com> */
 
+#ifndef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <libguile.h>
 #include <libguile/gh.h>
 
diff --git a/test-suite/standalone/test-list.c b/test-suite/standalone/test-list.c
index 3396dff..02634f6 100644
--- a/test-suite/standalone/test-list.c
+++ b/test-suite/standalone/test-list.c
@@ -17,6 +17,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifndef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <libguile.h>
 
 #include <stdio.h>
diff --git a/test-suite/standalone/test-num2integral.c b/test-suite/standalone/test-num2integral.c
index d2de418..1e8a016 100644
--- a/test-suite/standalone/test-num2integral.c
+++ b/test-suite/standalone/test-num2integral.c
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifndef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <libguile.h>
 
 #include <stdio.h>
diff --git a/test-suite/standalone/test-with-guile-module.c b/test-suite/standalone/test-with-guile-module.c
index 14d3afd..babc22b 100644
--- a/test-suite/standalone/test-with-guile-module.c
+++ b/test-suite/standalone/test-with-guile-module.c
@@ -15,6 +15,10 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#ifndef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
 #include <pthread.h>
 #include <libguile.h>
 
-- 
1.6.0


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-13 18:16               ` Ludovic Courtès
@ 2008-09-13 18:50                 ` Han-Wen Nienhuys
  2008-09-13 20:06                   ` Ludovic Courtès
  0 siblings, 1 reply; 15+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-13 18:50 UTC (permalink / raw)
  To: bug-guile

Ludovic Courtès escreveu:

>>> Can you please restart from there and report back?
>>                  from ../../libguile/scmconfig.h:25,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile/__scm.h:52,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/libguile.h:30,
>>                  from /home/lilydev/vc/gub/target/mingw/src/guile-1.9.git/test-suite/standalone/test-asmobs-lib.c:18:
>> ../../lib/time.h:76: error: expected ';', ',' or ')' before '__timer'
>> ../../lib/time.h:78: error: expected ';', ',' or ')' before '__timer'
>> make[4]: ** [libtest_asmobs_la-test-asmobs-lib.lo] Erro 1
>> make[4]: Saindo do diretório `/home/lilydev/vc/gub/target/mingw/build/gui
> 
> Of course, I had forgotten the tests.

I'm not sure I understand, though.  Shouldn't the tests use the public interface 
(of which lib/*.h surely isn't part?)

-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: i18n broken on mingw cross compile
  2008-09-13 18:50                 ` Han-Wen Nienhuys
@ 2008-09-13 20:06                   ` Ludovic Courtès
  0 siblings, 0 replies; 15+ messages in thread
From: Ludovic Courtès @ 2008-09-13 20:06 UTC (permalink / raw)
  To: bug-guile

Han-Wen Nienhuys <hanwen@xs4all.nl> writes:

> I'm not sure I understand, though.  Shouldn't the tests use the public interface 
> (of which lib/*.h surely isn't part?)

Yes, but they also use non-Guile headers that may need portability
tricks provided by Gnulib.

Thanks,
Ludo'.





^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2008-09-13 20:06 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-08 14:07 i18n broken on mingw cross compile Han-Wen Nienhuys
2008-09-09  9:30 ` Ludovic Courtès
2008-09-09 14:02   ` Han-Wen Nienhuys
2008-09-09 14:42     ` Ludovic Courtès
2008-09-10  2:38   ` Han-Wen Nienhuys
2008-09-11 19:41     ` Ludovic Courtès
2008-09-12  7:45       ` Ludovic Courtès
2008-09-13  3:27         ` Han-Wen Nienhuys
2008-09-13  3:54         ` Han-Wen Nienhuys
2008-09-13 13:55           ` Ludovic Courtès
2008-09-13 15:13             ` Han-Wen Nienhuys
2008-09-13 18:16               ` Ludovic Courtès
2008-09-13 18:50                 ` Han-Wen Nienhuys
2008-09-13 20:06                   ` Ludovic Courtès
2008-09-13 15:47             ` Han-Wen Nienhuys

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).