misc/90680: make thinks "^.for.o:" is a directive (".for something
in ...")
Andreas Haakh
bugReporter at ib-haakh.de
Tue Dec 20 05:20:03 PST 2005
>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 at 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:
More information about the freebsd-bugs
mailing list