autoconf-patches
[Top][All Lists]
Advanced

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

Re: Minor patches for OS/2


From: Paul Eggert
Subject: Re: Minor patches for OS/2
Date: Sun, 05 Sep 2004 15:27:35 -0700
User-agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux)

In <http://lists.gnu.org/archive/html/autoconf-patches/2004-04/msg00004.html>
Andreas Buening <address@hidden> writes:

> AFAIK autoconf puts SHELL = /bin/sh (or even $CONFIG_SHELL) into
> all Makefiles. But when it tests for a working make it doesn't.

OK, I'll change it to put SHELL=/bin/sh in that case too.
The GNU Coding Standards recommends this so it should be OK.

> Use 'diff -a' when possible for systems where linefeed != "\n".

This change doesn't sound safe in general, since it might cause the
output to contain arbitrary binary data on Unix hosts.  If it is
causing problems for your special host, I suppose you can use a "diff"
wrapper that always uses "-a".  You won't need to change the source.

> On OS/2-emx /dev/null is writeonly.

Ouch!  That clearly contradicts POSIX, which requires that /dev/null
be readable; see
<http://www.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap10.html>.
Any chance of that getting fixed?

> I hope the following changes won't affect anything else.

Some changes look OK, but these don't:

> -                                   . " --melt /dev/null |");
> +                                   . " --melt |");
> ...
> -\@<:address@hidden@:>\@)' --melt /dev/null "
> +\@<:address@hidden@:>\@)' --melt "

Those commands require an empty file there, for proper operation.

> -m4: script.4s: 1: Cannot open foo: No such file or directory
> +script.4s:1: E:/usr/bin/m4.exe: Cannot open foo: No such file or directory

Here it appears that your copy of GNU m4 outputs diagnostics in a
different format.  How can that happen?  Does your port of GNU m4
purpusely use a different error-message format?

> Test 79 of the testsuite fails because a different object file
> extension is expected but I don't know where to change this:

Me neither, but if you figure it out please let me now.

Anyway, thanks.  I installed this patch:

2004-09-05  Paul Eggert  <address@hidden>

        Fix problems reported by Andreas Buening in:
        http://lists.gnu.org/archive/html/autoconf-patches/2004-04/msg00004.html
        * lib/autoconf/programs.m4 (AC_PROG_MAKE_SET): Set SHELL=/bin/sh
        in test makefile.
        * lib/autotest/general.m4 (AT_INIT): Don't assume /dev/null is
        readable; it's not true in OS/2-emx.

Index: lib/autoconf/programs.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/programs.m4,v
retrieving revision 1.32
diff -p -u -r1.32 programs.m4
--- lib/autoconf/programs.m4    20 Aug 2004 19:58:07 -0000      1.32
+++ lib/autoconf/programs.m4    5 Sep 2004 22:05:36 -0000
@@ -1,7 +1,8 @@
 # This file is part of Autoconf.                       -*- Autoconf -*-
 # Checking for programs.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 
2004
-# Free Software Foundation, Inc.
+
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+# 2002, 2004 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -680,6 +681,7 @@ AC_DEFUN([AC_PROG_MAKE_SET],
 set dummy ${MAKE-make}; ac_make=`echo "$[2]" | sed 'y,:./+-,___p_,'`
 AC_CACHE_VAL(ac_cv_prog_make_${ac_make}_set,
 [cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
 all:
        @echo 'ac_maketemp="$(MAKE)"'
 _ACEOF
Index: lib/autotest/general.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autotest/general.m4,v
retrieving revision 1.158
diff -p -u -r1.158 general.m4
--- lib/autotest/general.m4     20 Aug 2004 19:58:07 -0000      1.158
+++ lib/autotest/general.m4     5 Sep 2004 22:05:36 -0000
@@ -567,7 +567,7 @@ if diff /dev/null /dev/null >/dev/null 2
   at_devnull=/dev/null
 else
   at_devnull=$at_suite_dir/devnull
-  cp /dev/null "$at_devnull"
+  >"$at_devnull"
 fi
 
 # Use `diff -u' when possible.




reply via email to

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