Date: Tue, 20 Dec 2005 13:14:20 GMT
From: Andreas Haakh <bugReporter@ib-haakh.de>
To: freebsd-gnats-submit@FreeBSD.org
Subject: misc/90680: make thinks "^.for.o:" is a directive (".for something in ...")
Message-ID: <200512201314.jBKDEKKb034996@www.freebsd.org>
Resent-Message-ID: <200512201320.jBKDK2wT007368@freefall.freebsd.org>
index | next in thread | raw e-mail
>Number: 90680
>Category: misc
>Synopsis: make thinks "^.for.o:" is a directive (".for something in ...")
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Tue Dec 20 13:20:02 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Andreas Haakh
>Release: 6.0-CURRENT
>Organization:
Ingenieurbüro Haakh
>Environment:
FreeBSD Crabberio.Haakh.de 6.0-RELEASE FreeBSD 6.0-RELEASE #0: Mon Dec 12 14:23:15 CET 2005 root@Crabberio.Haakh.de:/usr/obj/usr/src/sys/CRABBERIO amd64
>Description:
Make interprets a rule like ".for.o:" as a ".for"-directive.
>How-To-Repeat:
Create a Makefile containing
.SUFFIXES: .for
.for.o:
and run make.
>Fix:
Following patch solves the problem for me but if a suffix equals any other directive, the same error will probably show up.
--- make/for.c Tue May 10 14:02:15 2005
+++ makeX/for.c Tue Dec 20 13:37:23 2005
@@ -101,6 +101,12 @@
ptr = line;
/*
+ * for is only valid if a space-character comes next
+ */
+ if (!isspace((u_char)*ptr))
+ return (FALSE);
+
+ /*
* Skip space between for and the variable.
*/
for (ptr++; *ptr && isspace((u_char)*ptr); ptr++)
>Release-Note:
>Audit-Trail:
>Unformatted:
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200512201314.jBKDEKKb034996>
