From: Roland McGrath Date: Thu, 23 Dec 1993 04:42:29 +0000 (+0000) Subject: Formerly vpath.c.~15~ X-Git-Tag: 3.70.2~71 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fe450df4257a1fe45410bd630e8f25041a486cd6;p=thirdparty%2Fmake.git Formerly vpath.c.~15~ --- diff --git a/vpath.c b/vpath.c index 230bb6ab..b619eb28 100644 --- a/vpath.c +++ b/vpath.c @@ -370,10 +370,24 @@ selective_vpath_search (path, file, mtime_ptr) else bcopy (filename, n, flen + 1); - if (not_target) - /* Since *FILE is not a target, if the file is - mentioned in a makefile, we consider it existent. */ - exists = lookup_file (name) != 0; + /* Check if the file is mentioned in a makefile. If *FILE is not + a target, that is enough for us to decide this file exists. + If *FILE is a target, then the file must be mentioned in the + makefile also as a target to be chosen. + + The restriction that *FILE must not be a target for a + makefile-mentioned file to be chosen was added by an + inadequately commented change in July 1990; I am not sure off + hand what problem it fixes. + + In December 1993 I loosened of this restriction to allow a file + to be chosen if it is mentioned as a target in a makefile. This + seem logical. */ + { + struct file *f = lookup_file (name); + if (f != 0) + exists = not_target || f->is_target; + } if (!exists) {