Your message dated Fri, 24 Feb 2006 17:02:09 -0800 with message-id <[EMAIL PROTECTED]> and subject line Bug#107624: fixed in make 3.80+3.81.rc1-1 has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what I am talking about this indicates a serious mail system misconfiguration somewhere. Please contact me immediately.) Debian bug tracking system administrator (administrator, Debian Bugs database)
--- Begin Message ---Package: make Version: 3.79.1-7 Severity: normal Hi, There seems to be a strange interaction with the "-W <file>" option when it is used in conjunction with the VPATH feature of make. Firstly, here is an excerpt from the make info manual, `-W FILE' `--what-if=FILE' `--new-file=FILE' `--assume-new=FILE' Pretend that the target FILE has just been modified. When used with the `-n' flag, this shows you what would happen if you were to modify that file. Without `-n', it is almost the same as running a `touch' command on the given file before running `make', except that the modification time is changed only in the imagination of `make'. Now, an annotated typescript that demonstrates the problem, 1. !139, 140, 141, 142 - here is the situation, "a" depends on "b", however, "b" only exists as "./b-dir/b", while "a" exists only in the directory from which make is being run. As you can see, "a" is up to date. 139 jeff /tmp $ echo .{,/b-dir}/{a,b} ./a ./b ./b-dir/a ./b-dir/b 140 jeff /tmp $ ls -l .{,/b-dir}/{a,b} ls: ./b: No such file or directory ls: ./b-dir/a: No such file or directory -rw-rw-r-- 1 jeff root 0 Aug 3 14:29 ./a -rw-rw-r-- 1 jeff root 0 Aug 3 14:29 ./b-dir/b --> exit status 1 141 jeff /tmp $ printf '%b' 'a: b\n\tcp $(<) $(@)\n' a: b cp $(<) $(@) 142 jeff /tmp $ printf '%b' 'a: b\n\tcp $(<) $(@)\n' | make -f \ /dev/stdin VPATH=b-dir make: `a' is up to date. 2. !143, 144, 145 - I maintain that make should behave identically at both !143 and !144-145, ie, at !143, "a" should have been re-made. 143 jeff /tmp $ printf '%b' 'a: b\n\tcp $(<) $(@)\n' | make -f \ /dev/stdin VPATH=b-dir -W ./b-dir/b make: `a' is up to date. 144 jeff /tmp $ touch ./b-dir/b 145 jeff /tmp $ printf '%b' 'a: b\n\tcp $(<) $(@)\n' | make -f \ /dev/stdin VPATH=b-dir cp b-dir/b a 3. !146, 147, 148 - here make behaves correctly at !146 and !147, however, the behavior at !148 is problematic, IMO. Since VPATH is in effect, make should pretend that the first "b" that it finds in the VPATH has just been modified, instead make ignores VPATH entirely, and considers "b", ie, "./b" as the prerequisite for "a". One could argue here that "-W b" means "-W ./b", thus make is behaving correctly at !148, however, such an interpretation makes it very difficult to use "-W <file>" along with VPATH and forces the user to know exactly where VPATH would have found <pathname-to-file> in order for her to specify it as "-W <pathname-to-file>". 146 jeff /tmp $ printf '%b' 'a: b\n\tcp $(<) $(@)\n' | make -f \ /dev/stdin VPATH=b-dir make: `a' is up to date. 147 jeff /tmp $ printf '%b' 'a: b\n\tcp $(<) $(@)\n' | make -f \ /dev/stdin VPATH=b-dir -W ./b cp b a cp: cannot stat `b': No such file or directory make: *** [a] Error 1 --> exit status 2 148 jeff /tmp $ printf '%b' 'a: b\n\tcp $(<) $(@)\n' | make -f \ /dev/stdin VPATH=b-dir -W b cp b a cp: cannot stat `b': No such file or directory make: *** [a] Error 1 --> exit status 2 Thanks, -- Jeff Sheinberg <[EMAIL PROTECTED]> -- System Information Debian Release: woody/testing Kernel Version: Linux eden-hda7.my.local 2.2.19 #6 Mon Jul 9 18:53:08 EDT 2001 i586 unknown Versions of the packages make depends on: ii fileutils 4.1-2 GNU file management utilities. ii libc6 2.2.3-5 GNU C Library: Shared libraries and Timezone
--- End Message ---
--- Begin Message ---Source: make Source-Version: 3.80+3.81.rc1-1 We believe that the bug you reported is fixed in the latest version of make, which is due to be installed in the Debian FTP archive: make-doc_3.80+3.81.rc1-1_all.deb to pool/main/m/make/make-doc_3.80+3.81.rc1-1_all.deb make_3.80+3.81.rc1-1.diff.gz to pool/main/m/make/make_3.80+3.81.rc1-1.diff.gz make_3.80+3.81.rc1-1.dsc to pool/main/m/make/make_3.80+3.81.rc1-1.dsc make_3.80+3.81.rc1-1_i386.deb to pool/main/m/make/make_3.80+3.81.rc1-1_i386.deb make_3.80+3.81.rc1.orig.tar.gz to pool/main/m/make/make_3.80+3.81.rc1.orig.tar.gz A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [EMAIL PROTECTED], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Manoj Srivastava <[EMAIL PROTECTED]> (supplier of updated make package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [EMAIL PROTECTED]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Format: 1.7 Date: Fri, 24 Feb 2006 16:56:54 -0600 Source: make Binary: make-doc make Architecture: source i386 all Version: 3.80+3.81.rc1-1 Distribution: unstable Urgency: low Maintainer: Manoj Srivastava <[EMAIL PROTECTED]> Changed-By: Manoj Srivastava <[EMAIL PROTECTED]> Description: make - The GNU version of the "make" utility. make-doc - Documentation for the GNU version of the "make" utility. Closes: 107624 274840 335044 Changes: make (3.80+3.81.rc1-1) unstable; urgency=low . * New upstream release * Bug fix: "make: the '-W <file>' option used with VPATH does not work correctly", thanks to Jeff Sheinberg (Closes: #107624). * Bug fix: "make shows incorrect line number in error report", thanks to Nikita V. Youshchenko (Closes: #274840). * Bug fix: "make: [doc] Implicit Rules: C++", thanks to LI Daobing (Closes: #335044). Files: aba3c14194fb77ca26f7bf15229346b3 676 devel standard make_3.80+3.81.rc1-1.dsc d9e1fd176b32da0edf5c43b6cca9f493 1558813 devel standard make_3.80+3.81.rc1.orig.tar.gz f96d048483bbcfed38f7ec052974a494 78910 devel standard make_3.80+3.81.rc1-1.diff.gz 357fc7afd22699042a93cec6e1cb7b33 626030 doc optional make-doc_3.80+3.81.rc1-1_all.deb cdeed7677a5e8adc6f7a277f5aec65e5 527810 devel standard make_3.80+3.81.rc1-1_i386.deb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) iD8DBQFD/6bNIbrau78kQkwRAhTaAKCq5nA4HZ+GQPz7Sa/lh0LvQwHEvACgmZt8 coMxGtqPRzTbECnP0tTjuRw= =9eAt -----END PGP SIGNATURE-----
--- End Message ---

