NetBSD Problem Report #40
From gnats Sat Dec 11 02:19:25 1993
Received: from faui45.informatik.uni-erlangen.de (root@faui45.informatik.uni-erlangen.de [131.188.44.45]) by sun-lamp.cs.berkeley.edu (8.6.4/8.6.4) with SMTP id CAA04126 for <gnats-bugs@sun-lamp.cs.berkeley.edu>; Sat, 11 Dec 1993 02:19:21 -0800
Message-Id: <199312111019.AA29591@faui43.informatik.uni-erlangen.de>
Date: Sat, 11 Dec 93 11:19:06 +0100
From: Frank Kardel <Frank.Kardel@informatik.uni-erlangen.de>
Reply-To: Frank.Kardel@informatik.uni-erlangen.de
To: gnats-bugs@sun-lamp.cs.berkeley.edu
Subject: pmake broken ?
X-Send-Pr-Version: 3.01.6
>Number: 40
>Category: bin
>Synopsis: {p,}make woes (parameter passing? / submakes)
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: jtc
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Dec 11 02:20:06 +0000 1993
>Closed-Date: Fri Dec 31 12:13:58 +0000 1993
>Last-Modified:
>Originator: Frank Kardel
>Release: NetBSD 0.9 (PC / Mac II) / BSDI(reported to me)
>Organization:
Friedrich-Alexander-Universitaet Erlangen-Nuernberg
>Environment:
MacII
>Description:
Here goes the message that I also posted to comp.os.386bsd.bugs:
During the makefile overhalut for xntp3.3b I have discovered a strange
make behaviour with man on BSDI/NetBSD/FreeBSD.
1)
Shell lines of the following form pass only one
argument to the command instead of two when ARG1
id empty and ARG2 is set to some string:
target: dependencies
command '$(ARG1)' '$(ARG2)'
This leaves out one positional argument usually causing
the command to fail. No other make on the system where
xntp has been ported to seems to exhibit this unexpected
behaviour. (The command should be executed as
"command '' '<something>'", but is executed as
"command '<something>'", although make prints that it
will execute
"command '' '<something>'. Thus it seems that the actual
exec part of pmake is severly broken.
2)
Following Makefile construction fails for no
apparent reason (at least to me)
doit:
$(MAKE) MAKE=\"$(MAKE)\" all
all:
@echo all done.
The above Makefile works ok if make is invoked by
"make".
However, it fails if it is invoked by
"make MAKE=make" with the message
"make: don't know how to make make. Stop", which i would
call at least "unconventional".
Things seem to get better if additional option are specified
hinting at a bug in argument parsing.
A workaround for this problem is to call make following way:
"make -e MAKE=make".
As I have received messages from BSDI, FreeBSD and NetBSD users i
suspect these make features being present in all versions of xBSD.
As I haven't found any reason yet why the above construction may be
illegal I would like to get them fixed (in all BSD versions).
>How-To-Repeat:
Makefile:
doit:
$(MAKE) MAKE=\"$(MAKE)\" all
all:
@echo all done.
Try:
make
make MAKE=make
make -e MAKE=make
>Fix:
make -e MAKE=make works for now (but is no real solution)
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->analyzed
State-Changed-By: jtc
State-Changed-When: Mon Dec 13 18:28:28 1993
State-Changed-Why:
I am unable to duplicate the first bug. I will investigate the second later.
Responsible-Changed-From-To: gnats-admin->jtc
Responsible-Changed-By: jtc
Responsible-Changed-When: Mon Dec 13 18:29:59 1993
Responsible-Changed-Why:
I'm taking responsibility for this bug.
State-Changed-From-To: analyzed->feedback
State-Changed-By: jtc
State-Changed-When: Tue Dec 14 10:28:09 1993
State-Changed-Why:
Compiling make with -DPOSIX enables proper behavior wrt. MAKE and MAKEFLAGS
variables.
State-Changed-From-To: feedback->closed
State-Changed-By: jtc
State-Changed-When: Fri Dec 31 12:13:58 1993
State-Changed-Why:
Although I've received no feedback on this bug, my tests seem to
indicate that the bug has been fixed.
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.51 2026/08/10 02:28:17 riastradh Exp $
$NetBSD: gnats_config.sh,v 1.10 2026/05/13 22:00:09 riastradh Exp $
Copyright © 1994-2026
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.