delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/05/04/01:59:12

Message-Id: <200505040559.j445x8pi021647@delorie.com>
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
From: "Gary R. Van Sickle" <g DOT r DOT vansickle AT worldnet DOT att DOT net>
To: <cygwin AT cygwin DOT com>
Subject: RE: pwd vs $PWD, bash, cygwin vs Linux
Date: Wed, 4 May 2005 01:00:34 -0500
MIME-Version: 1.0
In-Reply-To: <42785B91.6060601@itee.uq.edu.au>
X-IsSubscribed: yes

> Christopher Faylor wrote:
> 
> >>>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!
> > 
> >>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.
> 
> OK - I see the confusion.  Make is spawning ash as the 
> subshell, not bash.  Now everything you said makes sense.  
> Out of interest, can that behaviour be modified at the 
> runtime/user/Makefile level?
> 
> Cheers,
> 
> John
> 

You could replace the /bin/sh.exe executable with a copy of bash.exe, but
that would be at the "everywhere, all the time" level.  That used to be a
regularly suggested workaround for similar problems back in the proverbial
day, but it's been ages since I've done that myself, so I can't tell you
what other problems that might cause.

-- 
Gary R. Van Sickle


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

- Raw text -


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