This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: pwd vs $PWD, bash, cygwin vs Linux

On Wed, 4 May 2005, John Williams wrote:

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

In addition to what Gary said, you could also try the following (WARNING:
untested), which isn't as drastic:

mount -u -f -b -x "`cygpath -aw /bin/bash.exe`" /bin/sh.exe
mount -u -f -b -x "`cygpath -aw /bin/bash`" /bin/sh
umount -u /bin/sh.exe
umount -u /bin/sh

I may have gotten some flags slightly wrong -- "man mount" should help
with that.
      |\      _,,,---,,_
ZZZzz /,`.-'`'    -.  ;-;;,_
     |,4-  ) )-,_. ,\ (  `'-'		Igor Pechtchanski, Ph.D.
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

"The Sun will pass between the Earth and the Moon tonight for a total
Lunar eclipse..." -- WCBS Radio Newsbrief, Oct 27 2004, 12:01 pm EDT

Unsubscribe info:
Problem reports:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]