Problem with /usr/bin/make on a Sun

terryl at tekirl.LABS.TEK.COM terryl at tekirl.LABS.TEK.COM
Wed Jun 13 05:02:16 AEST 1990


     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.



More information about the Comp.unix.questions mailing list