autoconf-patches
[Top][All Lists]
Advanced

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

Re: [GNU Autoconf 2.60] testsuite: 3 120 failed


From: Paul Eggert
Subject: Re: [GNU Autoconf 2.60] testsuite: 3 120 failed
Date: Wed, 04 Oct 2006 14:21:02 -0700
User-agent: Gnus/5.1008 (Gnus v5.10.8) Emacs/21.4 (gnu/linux)

"Underwood, Tonya" <address@hidden> writes:

>>>> ./configure[2236]: /var/tmp/sh10423.126: Cannot create the specified file.

OK, thanks, I think I may have figured it out: you're using
/usr/posix/bin/sh and it's buggy.

I have installed the following patch to GNU Autoconf to try to squash
this one.  The area is kind of messy, but I guess it's better to let
the OSF and Unixware folks figure out how to build than to hurt
everyone else.

2006-10-04  Paul Eggert  <address@hidden>

        * doc/autoconf.texi (Special Shell Variables): Autoconf-generated
        shell scripts no longer export BIN_SH, due to configuration
        hassles with this.  See, for example, Tonya Underwood's report
        <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00003.html>.
        * lib/m4sugar/m4sh.m4 (AS_BOURNE_COMPATIBLE): Don't set BIN_SH
        or DUALCASE.
        (_AS_DETECT_BETTER_SHELL): Don't look in /usr/bin/posix.
        Use AS_EXECUTABLE_P rather than test -f.
        (AS_SHELL_SANITIZE): Set DUALCASE.
        (AS_EXECUTABLE_P): Just invoke as_executable_p.
        (_AS_TEST_PREPARE): Default to test -f, rather than to nothing.

Index: doc/autoconf.texi
===================================================================
RCS file: /cvsroot/autoconf/autoconf/doc/autoconf.texi,v
retrieving revision 1.1088
diff -u -r1.1088 autoconf.texi
--- doc/autoconf.texi   27 Sep 2006 16:47:08 -0000      1.1088
+++ doc/autoconf.texi   4 Oct 2006 21:15:44 -0000
@@ -11891,7 +11891,6 @@
 @evindex BIN_SH
 In Tru64, if @env{BIN_SH} is set to @code{xpg4}, subsidiary invocations of
 the standard shell conform to Posix.
-Autoconf-generated scripts export this variable when they start up.

 @item CDPATH
 @evindex CDPATH
Index: lib/m4sugar/m4sh.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/m4sugar/m4sh.m4,v
retrieving revision 1.194
diff -u -r1.194 m4sh.m4
--- lib/m4sugar/m4sh.m4 4 Oct 2006 18:53:19 -0000       1.194
+++ lib/m4sugar/m4sh.m4 4 Oct 2006 21:15:44 -0000
@@ -161,9 +161,10 @@
 # --------------------
 # Try to be as Bourne and/or POSIX as possible.
 #
-# FIXME: The assignment to BIN_SH is dubious; see
+# This does not set BIN_SH, due to the problems described in
 # <http://lists.gnu.org/archive/html/autoconf-patches/2006-03/msg00081.html>.
-# It might be better to remove it, but first please see
+# People who need BIN_SH should set it in their environment before invoking
+# configure; apparently this would include UnixWare, as described in
 # <http://lists.gnu.org/archive/html/bug-autoconf/2006-06/msg00025.html>.
 m4_define([AS_BOURNE_COMPATIBLE],
 [# Be Bourne compatible
@@ -177,8 +178,6 @@
 else
   case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
 fi
-BIN_SH=xpg4; export BIN_SH # for Tru64
-DUALCASE=1; export DUALCASE # for MKS sh
 ])


@@ -223,16 +222,9 @@
 # The real workhorse for detecting a shell with the correct
 # features.
 #
-# FIXME: The '/usr/bin/posix' below works around a shell bug in OSF
-# <http://lists.gnu.org/archive/html/autoconf-patches/2006-03/msg00081.html>
-# but this causes a regression on OpenServer 6.0.0
-# <http://lists.gnu.org/archive/html/bug-autoconf/2006-06/msg00017.html>
-# The code should test for the OSF bug directly rather than look at
-# /usr/bin/posix here.
-#
-# FIXME: The 'test -f "$as_shell.exe"' works around a problem in OS/2
-# <http://lists.gnu.org/archive/html/autoconf/2006-06/msg00038.html>
-# but we should replace the two test -f calls with a single AS_EXECUTABLE_P.
+# FIXME: The code should test for the OSF bug described in
+# <http://lists.gnu.org/archive/html/autoconf-patches/2006-03/msg00081.html>.
+# Looking for /usr/bin/posix/sh causes more troubles than it cures.
 #
 m4_defun_once([_AS_DETECT_BETTER_SHELL],
 [m4_wrap([m4_divert_text([M4SH-SANITIZE], [
@@ -245,7 +237,7 @@
         _AS_RUN([_AS_DETECT_SUGGESTED_BODY]) 2> /dev/null],
     [],
     [as_candidate_shells=
-    
_AS_PATH_WALK([/usr/bin/posix$PATH_SEPARATOR/bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH],
+    _AS_PATH_WALK([/bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH],
       [case $as_dir in
         /*)
           for as_base in sh bash ksh sh5; do
@@ -255,7 +247,7 @@

       for as_shell in $as_candidate_shells $SHELL; do
         # Try only shells that exist, to save several forks.
-        AS_IF([{ test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+        AS_IF([AS_EXECUTABLE_P(["$as_shell"]) &&
                _AS_RUN([_AS_DETECT_REQUIRED_BODY],
                         [("$as_shell") 2> /dev/null])],
               [CONFIG_SHELL=$as_shell
@@ -342,6 +334,7 @@
 ## --------------------- ##

 AS_BOURNE_COMPATIBLE
+DUALCASE=1; export DUALCASE # for MKS sh

 # PATH needs CR
 _AS_CR_PREPARE
@@ -785,7 +778,7 @@
 # Check whether a file is executable.
 m4_defun([AS_EXECUTABLE_P],
 [AS_REQUIRE([_AS_TEST_PREPARE])dnl
-{ test -f $1 && $as_executable_p $1; }dnl
+$as_executable_p $1[]dnl
 ])# AS_EXECUTABLE_P


@@ -1021,7 +1014,7 @@
 [if test -x / >/dev/null 2>&1; then
   as_executable_p='test -x'
 else
-  as_executable_p=:
+  as_executable_p='test -f'
 fi
 ])# _AS_TEST_PREPARE





reply via email to

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