Skip site navigation (1)Skip section navigation (2)
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>

next in thread | raw e-mail | index | archive | help

>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:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200512201314.jBKDEKKb034996>