Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Wed, 4 May 2005 00:52:36 -0400 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: pwd vs $PWD, bash, cygwin vs Linux Message-ID: <20050504045236.GF24661@trixie.casa.cgf.cx> Reply-To: cygwin AT cygwin DOT com References: <4278209B DOT 1050903 AT itee DOT uq DOT edu DOT au> <20050504011021 DOT GC23476 AT trixie DOT casa DOT cgf DOT cx> <42785047 DOT 2020505 AT itee DOT uq DOT edu DOT au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <42785047.2020505@itee.uq.edu.au> User-Agent: Mutt/1.5.8i On Wed, May 04, 2005 at 02:32:07PM +1000, John Williams wrote: >Christopher Faylor wrote: >>On Wed, May 04, 2005 at 11:08:43AM +1000, John Williams wrote: >> >>>Essentially under Cygwin the PWD variable seems to be "frozen" at its >>>value upon first launching Make from the commandline, while under Linux >>>it is being updated for each child process spawned by `make -C XXX` >>> >>>I know that Cygwin != Linux, however is it a reasonable expectation >>>that under the same shells, the same behaviour should apply? >> >> >>In this case, the operative observation is bash != ash. PWD is a bash >>construct. You would be much better off just using the gnu make >>"CURDIR" variable. Changing PWD to CURDIR in your examples makes things >>work as you'd expect. > >Thanks for the quick response and workaround. > >While what you say might be a true statement, "better off" means >different things to different people! "Better off" == "it works" vs. "not better off" == "it doesn't work". >What surprised me was that the same shell, and same make, resulted in >different behaviour. I guess this is just reflecting differences in the >underlying process architectures of Linux vs Windows. Again, it *isn't* the same shell. You have now learned that it isn't the same shell and you now know that this is the reason for the inconsistency. ash isn't normally used as /bin/sh on linux. A stripped down version of ash is used as /bin/sh for performance purposes on cygwin. ash does not set PWD. cgf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/