bug-gnulib
[Top][All Lists]
Advanced

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

Re: missing dependencies [Re: inline.m4: use compiler, not cpp


From: Jim Meyering
Subject: Re: missing dependencies [Re: inline.m4: use compiler, not cpp
Date: Mon, 13 Nov 2006 17:08:00 +0100

Bruno Haible <address@hidden> wrote:
> Jim Meyering wrote:
>> It sounds like the recent trend to remove uses of AC_LIBSOURCE
>> (in favor of listing source file names in each module-file Files: section)
>> is the reason for at least some of my missing dependencies.
>
> The removal of AC_LIBSOURCE was indeed a major change - for the better
> (more flexibility - don't rely on hardcoded short-sighted automake built-in
> magic).

It is inaccurate and uncharitable to call that automake work
short-sighted.  The problem is that development on that front seems to
have stalled.  Since that part of automake is incomplete, if you don't
know the history, I can see how you would think it short-sighted.
It is, of course, a good thing that gnulib-tool is filling the gap.

> I fixed the missing dependencies:

Thanks for working on that.
However, that change breaks coreutils' build-from-bootstrap process:

    doc/Makefile.am:21: installing `build-aux/texinfo.tex'
    lib/gnulib.mk:21: automatically discovered file `alloca.c' should not be 
explicitly mentioned
    lib/Makefile.am:20:   `lib/gnulib.mk' included from here
    lib/gnulib.mk:21: automatically discovered file `error.c' should not be 
explicitly mentioned
    lib/Makefile.am:20:   `lib/gnulib.mk' included from here
    lib/gnulib.mk:21: automatically discovered file `lstat.c' should not be 
explicitly mentioned
    lib/Makefile.am:20:   `lib/gnulib.mk' included from here
    lib/gnulib.mk:21: automatically discovered file `obstack.c' should not be 
explicitly mentioned
    lib/Makefile.am:20:   `lib/gnulib.mk' included from here

I'm using this fix:

2006-11-13  Jim Meyering  <address@hidden>

        * gnulib-tool (func_get_automake_snippet): Don't emit into a *_SOURCES
        definition any of the names that automake includes automatically:
        alloca.c, error.c, lstat.c, obstack.c.

Index: gnulib-tool
===================================================================
RCS file: /sources/gnulib/gnulib/gnulib-tool,v
retrieving revision 1.194
diff -u -r1.194 gnulib-tool
--- gnulib-tool 13 Nov 2006 12:35:41 -0000      1.194
+++ gnulib-tool 13 Nov 2006 15:37:07 -0000
@@ -984,6 +984,17 @@
       sed_extract_c_files='/\.c$/p'
       extra_files=`echo "$extra_files" | sed -n -e "$sed_extract_c_files"`
       if test -n "$extra_files"; then
+        # Filter out file names that automake adds automatically,
+        # and that would otherwise provoke failure.
+        t=
+        for i in $extra_files; do
+          case $i in
+            alloca.c|error.c|lstat.c|obstack.c) ;;
+            *) t="$t$sp$i" ;;
+          esac
+          sp=' '
+        done
+        extra_files=$t
         echo "EXTRA_lib_SOURCES +=" $extra_files
         echo
       fi




reply via email to

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