pwd vs $PWD, bash, cygwin vs Linux

John Williams jwilliams@itee.uq.edu.au
Wed May 4 04:25:00 GMT 2005


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!

It's easy for me to say, but it seems cleaner for the compatability 
layer (e.g. Cygwin) to model the expected behaviour (even behaviour 
which might be considered buggy), than to push changes on fairly 
standard and widely distributed source/build packages.

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.

Cheers,

John


--
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/



More information about the Cygwin mailing list