diff options
author | Roland McGrath <roland@redhat.com> | 1993-12-23 04:42:29 +0000 |
---|---|---|
committer | Roland McGrath <roland@redhat.com> | 1993-12-23 04:42:29 +0000 |
commit | fe450df4257a1fe45410bd630e8f25041a486cd6 (patch) | |
tree | 4a109fbf0115a03330924b1928b83698458ce53f | |
parent | c9f149173f023fee893f6781b3dfe2188c8d24de (diff) | |
download | gunmake-fe450df4257a1fe45410bd630e8f25041a486cd6.tar.gz |
Formerly vpath.c.~15~
-rw-r--r-- | vpath.c | 22 |
1 files changed, 18 insertions, 4 deletions
@@ -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) { |