bug-make
[Top][All Lists]
Advanced

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

make 3.80 works, make 3.81 only works with SHELL=


From: Marty Leisner
Subject: make 3.80 works, make 3.81 only works with SHELL=
Date: Wed, 25 Apr 2007 23:05:01 -0400


Enclosed is the makefile from LPRng.

I minimized it.

It works on 3.80.
On 3.81, it only works if you specify SHELL=<bourne shell> on
the command line...

I've run this on a number of machines -- then I figured 
"try remake" and it worked -- then I realized remake was 3.80...

There's a line 
SHELL="/bin/sh"
in the makefile...

It seems it works fine in 3.81 with
SHELL=/bin/sh

But 
SHELL="/bin/sh" seems harmless (but its not) (and it works on 3.80).

Also
make SHELL=/bin/sh
is fine but 
make SHELL='"/bin/sh"'
is not

(I didn't see this in the NEWS file)

: address@hidden 10:47:20;make-3.81
if [ "UTILS" = po ] ; then \
            for i in po/Makefile* ; do \
                if [ -f "$i" ] ; then \
                    if grep '^mkinstalldirs.*=.*case' $i ; then \
                        echo "fixing broken $i which causes wrong path to 
mkinstalldirs to be used"; \
                        perl -spi -e 's:^mkinstalldirs\s*=\s*.*:mkinstalldirs 
= \$(SHELL) \$(MKINSTALLDIRS):' $i; \
                    fi \
                fi \
            done \
        fi
/bin/sh: -c: line 1: syntax error: unexpected end of file
/bin/sh: line 1:     for i in po/Makefile* ; do \: No such file or directory
/bin/sh: line 2:        if [ -f "$i" ] ; then \: command not found
/bin/sh: line 3:            if grep '^mkinstalldirs.*=.*case' $i ; then \: 
command not found
/bin/sh: line 4:                echo "fixing broken $i which causes wrong path 
to mkinstalldirs to be used"; \: command not found
/bin/sh: line 5:                perl -spi -e 's:^mkinstalldirs\s*=\s*.*:mkinsta
lldirs = \$(SHELL) \$(MKINSTALLDIRS):' $i; \: command not found
/bin/sh: line 6:            fi \: command not found
/bin/sh: line 7:        fi \: command not found
/bin/sh: line 8:     done \: command not found
/bin/sh: -c: line 9: syntax error near unexpected token `fi'
/bin/sh: -c: line 9: `fi'
make-3.81: *** [UTILS] Error 2
: address@hidden 10:47:25;make-3.81 SHELL=/bin/sh
if [ "UTILS" = po ] ; then \
            for i in po/Makefile* ; do \
                if [ -f "$i" ] ; then \
                    if grep '^mkinstalldirs.*=.*case' $i ; then \
                        echo "fixing broken $i which causes wrong path to 
mkinstalldirs to be used"; \
                        perl -spi -e 's:^mkinstalldirs\s*=\s*.*:mkinstalldirs 
= \$(SHELL) \$(MKINSTALLDIRS):' $i; \
                    fi \
                fi \
            done \
        fi
: address@hidden 10:47:29;/usr/bin/make -v
GNU Make 3.80
Copyright (C) 2002  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
: address@hidden 10:47:33;/usr/bin/make   
if [ "UTILS" = po ] ; then \
    for i in po/Makefile* ; do \
        if [ -f "$i" ] ; then \
            if grep '^mkinstalldirs.*=.*case' $i ; then \
                echo "fixing broken $i which causes wrong path to 
mkinstalldirs to be used"; \
                perl -spi -e 's:^mkinstalldirs\s*=\s*.*:mkinstalldirs = 
\$(SHELL) \$(MKINSTALLDIRS):' $i; \
            fi \
        fi \
    done \
fi


marty

Attachment: Makefile
Description: Makefile


reply via email to

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