Subject: bin/15167: make(1) needlessly tries to resolve dependencies on system object files.
To: None <gnats-bugs@gnats.netbsd.org>
From: Paul Kranenburg <pk@cs.few.eur.nl>
List: netbsd-bugs
Date: 01/07/2002 17:10:50
>Number:         15167
>Category:       bin
>Synopsis:       make(1) needlessly tries to resolve dependencies on system object files.
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    bin-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Jan 07 08:12:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Paul Kranenburg
>Release:        NetBSD-current
>Organization:
	
>Environment:
	
>Description:
	System object files and libraries normally found in /usr/lib,
	such as crt0.o and libc.a, are listed in <bsd.prog.mk> for
	the purpose of relinking programs whenever these object files
	and libraries are refreshed.

	As a side-effect, make(1) tries to resolve implicit suffix
	dependencies on the object files. E.g. it check for the existence
	`/usr/lib/crt0.s', `/usr/lib/crt0.c', `/usr/lib/crt0.l', etc.

	This is useless; even if such a source file were found there and
	the rule to create the object file applied, the resulting new object
	file (in .OBJDIR) would neither be used in the link command, nor
	would it be cleaned later by `make clean'.
>How-To-Repeat:
	
>Fix:
	Not provided. Maybe the .MADE pseudo target can be used to inhibit
	suffix rules to be applied.
>Release-Note:
>Audit-Trail:
>Unformatted: