libtool-patches
[Top][All Lists]
Advanced

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

Re: [SCM] GNU Libtool branch, master, updated. v2.2.10-35-gee2dde8


From: Ralf Wildenhues
Subject: Re: [SCM] GNU Libtool branch, master, updated. v2.2.10-35-gee2dde8
Date: Sun, 27 Jun 2010 10:49:09 +0200
User-agent: Mutt/1.5.20 (2010-04-22)

Hello Gary,

* Gary V. Vaughan wrote on Sun, Jun 27, 2010 at 08:57:58AM CEST:
> commit ee2dde86ba2f1bdc0638726c6580b96800ad4b39
> Author: Gary V. Vaughan <address@hidden>
> Date:   Sun Jun 27 13:57:50 2010 +0700
> 
>     Fix portability regressions in today's earlier changeset.
>     
>     * libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): `sed -i' is not
>     portable; use `mv -f ...|| cp -f ...' instead.
>     Add an initial backslash to sed `c' substitutions with leading
>     whitespace, so that indentation is not removed by some non-POSIX
>     compliant sed implementations.
>     (_LT_PROG_XSI_SHELLFNS): Display a diagnostic warning message if
>     one or more XSI function replacements failed.

> --- a/libltdl/m4/libtool.m4
> +++ b/libltdl/m4/libtool.m4
> @@ -7257,13 +7257,15 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines 
> into spaces])dnl
>  # '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
>  m4_defun([_LT_PROG_XSI_REPLACE],
>  [dnl {
> -sed -i .tmp -e '/^$1 ()$/,/^} # $1 /c\
> +sed -e '/^$1 ()$/,/^} # $1 /c\
>  $1 ()\
>  {\
> -m4_bpatsubst([$2], [$], [\\])
> -} # XSI $1 implementation' "$cfgfile" \
> -  || (mv -f "$cfgfile.tmp" "$cfgfile"; exit 1)
> -rm -f "$cfgfile.tmp"])
> +m4_bpatsubsts([$2], [$], [\\], [^\([         ]\)], [\\\1])

Please avoid space before TAB, eager editor replace that; TAB before
space is safer.

> +} # XSI $1 implementation' "$cfgfile" > $cfgfile.tmp \
> +  && mv -f "$cfgfile.tmp" "$cfgfile" \
> +    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f 
> "$cfgfile.tmp")

FWIW, I don't think this line is needed, but it shouldn't hurt either.
However, if the cp fails, it might have done half of its work before
finding out that the disk is full, so the script might actually be
garbage after that, so ...

> +test 0 -eq $? || _lt_xsi_replace_fail=:
> +])
>  
>  
>  # _LT_PROG_XSI_SHELLFNS
> @@ -7315,4 +7317,8 @@ fi
>  if test x"$lt_shell_append" = xyes; then
>    _LT_PROG_XSI_REPLACE([func_append], [    eval "${1}+=\\${2}"])
>  fi
> +
> +if test x"$_lt_xsi_replace_fail" = x":"; then
> +  AC_MSG_WARN([Unable to substitute faster XSI functions in $ofile]) 

... I think this should indeed be a hard error.  Also, I don't see where
_lt_xsi_replace_fail is initialized in the good case; it should be.

> +fi
>  ])

Does the tree pass make check with this patch?

Thanks,
Ralf



reply via email to

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