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 Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make