bug-coreutils
[Top][All Lists]
Advanced

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

Re: coreutils-4.5.9: Sun Solaris 2.8 configure failure


From: Akim Demaille
Subject: Re: coreutils-4.5.9: Sun Solaris 2.8 configure failure
Date: Fri, 28 Mar 2003 15:49:43 +0100
User-agent: Gnus/5.090016 (Oort Gnus v0.16) Emacs/21.2 (gnu/linux)

| "Nelson H. F. Beebe" <address@hidden> writes:
| > The build of coreutils-4.5.9 on Sun Solaris 2.8 failed at configure
| > time:
| > 
| >     % time env CC=c89 ./configure && time make all check
| >     ...
| >     checking whether it is possible to resort to fread on /etc/mnttab... no
| >     configure: error: could not determine how to read list of mounted 
filesystems
| 
| I looked into this issue, and the problem is that c89 rejects '#line'
| directives whose line numbers are greater than 32767.  The
| coreutils-4.5.9 'configure' script contains 44223 lines, so it runs
| afoul of the problem.  I think that the C standard allows this kind of
| brain damage, unfortunately.
| 
| The simplest workaround is to remove this #line feature from Autoconf,
| as it's not necessary for correct operation.  So I installed the
| following Autoconf patch for now.  If someone can think of a better
| fix, that'd be great.
| 
| 2003-03-06  Paul Eggert  <address@hidden>
| 
|       Work around a problem noted by Nelson H. F. Beebe with coreutils
|       4.5.9: Sun c89 (Sun WorkShop 6 update 2 C 5.3 Patch 111679-08
|       2002/05/09) rejects '#line 32768 "configure"' because the line
|       number overflows.
|       * lib/autoconf/c.m4 (AC_LANG_SOURCE(C)): Do not generate
|       #line directives.
|       * lib/autoconf/lang.m4 (AC_LANG_SOURCE): Fix comment to match this.
|       * doc/autoconf.texi (Generating Sources): Document this.

This is amazing :(  I'm installing this:

Index: ChangeLog
from  Akim Demaille  <address@hidden>

        * doc/autoconf.texi (C Compiler): `#line' portability.
        From Paul Eggert and Nelson H. F. Beebe.

Index: doc/autoconf.texi
===================================================================
RCS file: /cvsroot/autoconf/autoconf/doc/autoconf.texi,v
retrieving revision 1.725
diff -u -u -r1.725 autoconf.texi
--- doc/autoconf.texi 23 Mar 2003 10:21:43 -0000 1.725
+++ doc/autoconf.texi 28 Mar 2003 14:49:08 -0000
@@ -4985,6 +4985,13 @@
 This can cause problems if you observe the output of the compiler to
 detect failures.  Invoking @samp{cc -c a.c -o a.o; cc -c b.c -o b.o; cc
 a.o b.o -o c} solves the issue.
+
address@hidden Don't rely on correct @code{#line} support
+On Solaris 2.8, @command{c89} (Sun WorkShop 6 update 2 C 5.3 Patch
+111679-08 2002/05/09)) rejects @code{#line} directives whose line
+numbers are greater than 32767.  In addition, nothing in @sc{posix}
+makes this invalid.  That is the reason why Autoconf stopped issuing
address@hidden directives.
 @end table
 
 @defmac AC_PROG_CC (@ovar{compiler-search-list})




reply via email to

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