terryl@tekirl.LABS.TEK.COM (06/13/90)
The following makefile works fine on a VAX running NFS, but does not work on a Solbourne (a Sun clone); it never prints out: "You have new mail." #! /usr/bin/make -f .SILENT: HUSH=.hushlogin MAIL=.mail all: $(HUSH) $(MAIL) $(HUSH): /etc/motd ; cat /etc/motd ; touch $(HUSH) $(MAIL): /tmp -if test -s /usr/spool/mail/terryl; then \ echo You have new mail.; exit 0; \ else exit 0; fi Some relevant debug out put from /usr/bin/make: stat(all) doname(all) @ = stat(.hushlogin) doname(.hushlogin) @ = stat(/etc/motd) doname(/etc/motd) Looking for % rule for /etc/motd find_double_suffix_rule(/etc/motd) find_suffix_rule(/etc/motd,/etc/motd,) Date(/etc/motd)=Tue Jun 12 10:12:21 1990 Date-dependencies(.hushlogin)=File d oes not exist Looking for % rule for .hushlogin find_double_suffix_rule(.hushlogin) Date(.hushlogin)=Tue Jun 12 10:25:26 1990 Date-dependencies(all)=File does n ot exist Building all because it is out of date relative to .hushlogin stat(.mail) doname(.mail) @ = stat(/tmp) doname(/tmp) Looking for % rule for /tmp find_double_suffix_rule(/tmp) find_suffix_rule(/tmp,/tmp,) Date(/tmp)=Wed Dec 31 16:00:01 1969 Date-dependencies(.mail)=File does not ex ist Looking for % rule for .mail find_double_suffix_rule(.mail) Building all because it is out of date relative to .mail Looking for % rule for all find_double_suffix_rule(all) stat(all) stat(.DONE) doname(.DONE) Looking for % rule for .DONE find_double_suffix_rule(.DONE) I don't like all of the "File does not exist" messages, because they do all exist, and the date of /tmp is VERY suspect. If someone can tell me where in TFM this is documented (or any pointers at all), I'd really appreciate that.