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)
: [EMAIL PROTECTED] 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
: [EMAIL PROTECTED] 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
: [EMAIL PROTECTED] 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.
: [EMAIL PROTECTED] 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
###########################################################################
# LPRng - An Extended Print Spooler System
#
# Copyright 1988-2001 Patrick Powell, San Diego, CA
# [EMAIL PROTECTED]
# See LICENSE for conditions of use.
#
###########################################################################
# MODULE: Makefile.in
# PURPOSE: top level Makefile for LPD Software
# $Id: Makefile,v 1.3 2007/04/26 02:46:07 leisner Exp leisner $
##########################################################################
#**************###########**************
# You must use ANSI C and GNU Make!
#***************************************
PACKAGE=LPRng
VERSION=3.8.28
SRC=.
INSTALL=/usr/gnu/coreutils/bin/install -c
# prefix
prefix=/usr/local
# exec prefix
exec_prefix=${prefix}
# for binaries
bindir=${exec_prefix}/bin
# for admin type of binaries
sbindir=${exec_prefix}/sbin
# for the filters
libexecdir=${exec_prefix}/libexec
# for the configuration stuff
sysconfdir=${prefix}/etc
# for the man pages
mandir=${prefix}/man
# top build directory
top_builddir=.
LPD_PERMS_PATH=\"${sysconfdir}/lpd/lpd.perms\"
LPD_CONF_PATH=\"${sysconfdir}/lpd/lpd.conf\"
PRINTCAP_PATH=\"${sysconfdir}/printcap\"
LPD_PATH=\"${sbindir}/lpd\"
SHELL=/bin/sh
LOCKFILE=\"/var/run/lpd\"
CONFIG_SUBDIR="lpd"
PSHOWALL="-ax"
FILTER_DIR=${libexecdir}/filters
LOCALEDIR=${prefix}/share/locale
INIT=
USE_NLS=no
LIBTOOL=$(SHELL) $(top_builddir)/libtool
#=============================================================================
# List the directories you want to generate:
# DIRS for all, clean, etc.
# ALLDIRS for other such as documentation
#=============================================================================
DIRS= UTILS
ALLDIRS= ${DIRS}
###############################################################################
all: ${DIRS}
# define default target
.PHONY: all warn TAGS clean uninstall install info dvi check \
tar send realclean mostlyclean distclean dist update ci cifiles
$(ALLDIRS)
MAKETARGET=all
###############################################################################
$(ALLDIRS):
if [ "$@" = 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
# if [ "$@" != po -o "$(USE_NLS)" != "no" ] ; then \
# cd $@; $(MAKE) localedir=${LOCALEDIR} \
# DESTDIR=$(DESTDIR) $(MAKETARGET) ; \
# fi
_______________________________________________
Bug-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-make