automake
[Top][All Lists]
Advanced

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

Re: Automake 1.8.2 compiler dependency type checking fails on Solaris sh


From: Alexandre Duret-Lutz
Subject: Re: Automake 1.8.2 compiler dependency type checking fails on Solaris sh
Date: Sun, 29 Feb 2004 22:26:31 +0100
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux)

>>> "Mark" == Mark Phillips <address@hidden> writes:

[...]

 Mark> The following piece of sh code (from _AM_DEPENDENCIES) fails using
 Mark> /bin/sh or /usr/bin/sh (but works using bash or /usr/xpg4/bin/sh):-

 Mark> : > sub/conftest.c
 Mark> for i in 1 2 3 4 5 6; do
 Mark> echo '#include "conftst'$i'.h"' >> sub/conftest.c
 Mark> : > sub/conftst$i.h
 Mark> done

 Mark> It appears that the processing of the "null" command ":"
 Mark> is handled in an inconsistent way by the Solaris sh. In
 Mark> particular the ": > sub/conftst$i.h" inside the loop only
 Mark> creates ONE file.... Presumable the $i in the redirection
 Mark> only gets evaluated once for some reason.

Thanks for the report.

I'm installing this on HEAD and branch-1-8.

2004-02-29  Alexandre Duret-Lutz  <address@hidden>

        * m4/depend.m4 (_AM_DEPENDENCIES): Use `touch' rather than `: >'
        to create numbered dependencies.  This fixes a portability issue
        when CONFIG_SHELL is forced to /bin/sh on Solaris 8.
        Reported by Mark Phillips.

Index: NEWS
===================================================================
RCS file: /cvs/automake/automake/NEWS,v
retrieving revision 1.256.2.30
diff -u -r1.256.2.30 NEWS
--- NEWS        29 Feb 2004 19:10:40 -0000      1.256.2.30
+++ NEWS        29 Feb 2004 21:11:36 -0000
@@ -36,6 +36,10 @@
   - Do not generate two build rules for `parser.h' when the
     parser appears in two different conditionals.
 
+  - Work around a Solaris 8 /bin/sh bug in the test for dependency
+    checking.  Usually ./configure will not pick this shell; so this
+    fix only helps cases where the shell is forced to /bin/sh.
+
 * Bugs introduced by 1.8:
 
   - In some situations (hand-written `m4_include's), aclocal would
Index: THANKS
===================================================================
RCS file: /cvs/automake/automake/THANKS,v
retrieving revision 1.230.2.14
diff -u -r1.230.2.14 THANKS
--- THANKS      29 Feb 2004 19:10:40 -0000      1.230.2.14
+++ THANKS      29 Feb 2004 21:11:36 -0000
@@ -142,6 +142,7 @@
 Mark Elbrecht          address@hidden
 Mark Galassi           address@hidden
 Mark Mitchell          address@hidden
+Mark Phillips          address@hidden
 Markku Rossi           address@hidden
 Markus F.X.J. Oberhumer        address@hidden
 Martin Frydl           address@hidden
Index: m4/depend.m4
===================================================================
RCS file: /cvs/automake/automake/m4/depend.m4,v
retrieving revision 1.30.2.2
diff -u -r1.30.2.2 depend.m4
--- m4/depend.m4        11 Jan 2004 12:05:28 -0000      1.30.2.2
+++ m4/depend.m4        29 Feb 2004 21:11:38 -0000
@@ -1,4 +1,4 @@
-# serial 6                                             -*- Autoconf -*-
+# serial 7                                             -*- Autoconf -*-
 
 # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
 # Free Software Foundation, Inc.
@@ -85,7 +85,9 @@
     : > sub/conftest.c
     for i in 1 2 3 4 5 6; do
       echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      : > sub/conftst$i.h
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
-- 
Alexandre Duret-Lutz





reply via email to

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