[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Failed builds for gzip/grep/rcs with latest gnulib revisions
From: |
Bruno Haible |
Subject: |
Re: Failed builds for gzip/grep/rcs with latest gnulib revisions |
Date: |
Fri, 15 Apr 2011 10:48:50 +0200 |
User-agent: |
KMail/1.9.9 |
Hi Rob,
> since 2 days we are experiencing some errors in builds of some GNU packages
> (like gzip, grep, rcs). These packages are built continuously with the
> latest gnulib revision.
> An example can be found here: http://hydra.nixos.org/build/1043400 (log
> available at http://hydra.nixos.org/build/1043400/log)
>
> The logs show:
>
> ./bootstrap: aclocal --force -I m4 ...
> missing file lib/stdio-write.cconfigure.ac:44: error: expected source
> file, required through AC_LIBSOURCES, not found
> m4/gnulib-comp.m4:180: gl_INIT is expanded from...configure.ac:44: the top
> level
Thanks for the report. An even easier way to reproduce the error is
$ ./gnulib-tool --test stdio
You are right with the analysis which commit caused the regression. I've pushed
this fix:
2011-04-15 Bruno Haible <address@hidden>
Don't require lib/stdio-write.c when only module 'stdio' is used.
* m4/stdio_h.m4 (gl_STDIO_H): Move the AC_LIBOBJ back into the m4_ifdef
invocation.
Reported by Rob Vermaas <address@hidden>.
--- m4/stdio_h.m4.orig Fri Apr 15 10:42:16 2011
+++ m4/stdio_h.m4 Fri Apr 15 10:41:46 2011
@@ -1,4 +1,4 @@
-# stdio_h.m4 serial 35
+# stdio_h.m4 serial 36
dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -22,9 +22,11 @@
GNULIB_FGETS=1
GNULIB_GETS=1
GNULIB_FREAD=1
- dnl This ifdef is just an optimization, to avoid performing a configure
- dnl check whose result is not used. It does not make the test of
- dnl GNULIB_STDIO_H_NONBLOCKING or GNULIB_NONBLOCKING redundant.
+ dnl This ifdef is necessary to avoid an error "missing file lib/stdio-read.c"
+ dnl "expected source file, required through AC_LIBSOURCES, not found". It is
+ dnl also an optimization, to avoid performing a configure check whose result
+ dnl is not used. But it does not make the test of GNULIB_STDIO_H_NONBLOCKING
+ dnl or GNULIB_NONBLOCKING redundant.
m4_ifdef([gl_NONBLOCKING_IO], [
gl_NONBLOCKING_IO
if test $gl_cv_have_nonblocking != yes; then
@@ -45,24 +47,30 @@
GNULIB_FPUTS=1
GNULIB_PUTS=1
GNULIB_FWRITE=1
- dnl This ifdef is just an optimization, to avoid performing a configure
- dnl check whose result is not used. It does not make the test of
- dnl GNULIB_STDIO_H_SIGPIPE or GNULIB_SIGPIPE redundant.
+ dnl This ifdef is necessary to avoid an error "missing file
lib/stdio-write.c"
+ dnl "expected source file, required through AC_LIBSOURCES, not found". It is
+ dnl also an optimization, to avoid performing a configure check whose result
+ dnl is not used. But it does not make the test of GNULIB_STDIO_H_SIGPIPE or
+ dnl GNULIB_SIGPIPE redundant.
m4_ifdef([gl_SIGNAL_SIGPIPE], [
gl_SIGNAL_SIGPIPE
if test $gl_cv_header_signal_h_SIGPIPE != yes; then
REPLACE_STDIO_WRITE_FUNCS=1
+ AC_LIBOBJ([stdio-write])
fi
])
+ dnl This ifdef is necessary to avoid an error "missing file
lib/stdio-write.c"
+ dnl "expected source file, required through AC_LIBSOURCES, not found". It is
+ dnl also an optimization, to avoid performing a configure check whose result
+ dnl is not used. But it does not make the test of GNULIB_STDIO_H_NONBLOCKING
+ dnl or GNULIB_NONBLOCKING redundant.
m4_ifdef([gl_NONBLOCKING_IO], [
gl_NONBLOCKING_IO
if test $gl_cv_have_nonblocking != yes; then
REPLACE_STDIO_WRITE_FUNCS=1
+ AC_LIBOBJ([stdio-write])
fi
])
- if test $REPLACE_STDIO_WRITE_FUNCS = 1; then
- AC_LIBOBJ([stdio-write])
- fi
dnl Check for declarations of anything we want to poison if the
dnl corresponding gnulib module is not in use, and which is not
--
In memoriam Abraham Lincoln <http://en.wikipedia.org/wiki/Abraham_Lincoln>