delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2001/05/10/09:39:24

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin AT sources DOT redhat DOT com
Message-ID: <3AFA9AD3.72AA2D81@inrialpes.fr>
Date: Thu, 10 May 2001 15:42:43 +0200
From: Olivier Fambon <Olivier DOT Fambon AT inrialpes DOT fr>
X-Mailer: Mozilla 4.75 [en] (Windows NT 5.0; U)
X-Accept-Language: en
MIME-Version: 1.0
To: egor duda <cygwin AT cygwin DOT com>
CC: cygwin AT cygwin DOT com
Subject: Re: 'make aux' hangs ?
References: <3AF979D6 DOT CFFFE8CE AT inrialpes DOT fr>
<5016127229 DOT 20010509212620 AT logos-m DOT ru> <3AFA7D2A DOT 83852811 AT inrialpes DOT fr>
<12883601112 DOT 20010510161054 AT logos-m DOT ru> <3AFA8874 DOT 85299606 AT inrialpes DOT fr>
<12584843087 DOT 20010510163136 AT logos-m DOT ru> <3AFA8D72 DOT 1862893 AT inrialpes DOT fr> <190852746 DOT 20010510170258 AT logos-m DOT ru>

> apparently make cannot find Makefile in current directory, so it has
> no reasons to treat 'aux' as phony. so, it checks if there exists such
> file.

Your interpretation seems satisfying. But this hangs *also* if there is
a Makefile, and an aux target declared in it, but without a .PHONY
directive.

I simplified the test case on purpose, but apparently too much.

Ok, ok, apart from reading the cygwin FAQ, I should probably take some
extra courses in computer science, and go 'info make' from time to time.
All this I did.


The correct Makefile should say:

aux:
	@echo Making aux

.PHONY: aux

This works fine (and is 'clean' make compliant etc etc).

Declaring aux as a phony avoids the call to stat (which seems natural
;), and thus prevents cygwin from hanging on it.


Again, this worked *before*. You tell me it does not any longer. Fine.
This is just yet another system discrepancy. Too bad, I'll live with it.

For the record, I straced the same [simple] test case on a linux, here
is the trace (notice how its readable):

stat("RCS", 0xbfffe30c)                 = -1 ENOENT (No such file or
directory)
stat("SCCS", 0xbfffe30c)                = -1 ENOENT (No such file or
directory)
stat("GNUmakefile", 0xbfffe30c)         = -1 ENOENT (No such file or
directory)
stat("makefile", 0xbfffe30c)            = -1 ENOENT (No such file or
directory)
stat("Makefile", 0xbfffe30c)            = -1 ENOENT (No such file or
directory)
brk(0x806f000)                          = 0x806f000
stat("aux", 0xbfffe274)                 = -1 ENOENT (No such file or
directory)
write(2, "make: *** ", 10make: *** )              = 10
write(2, "No rule to make target `aux\'", 28No rule to make target
`aux') = 28
write(2, ".  Stop.\n", 9.  Stop.
)               = 9
chdir("/users/fambon")                  = 0
_exit(2)                                = ?

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019