delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/05/04/11:39:05

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: "Dave Korn" <dave DOT korn AT artimi DOT com>
To: <cygwin AT cygwin DOT com>
Subject: RE: pwd vs $PWD, bash, cygwin vs Linux
Date: Wed, 4 May 2005 16:38:08 +0100
MIME-Version: 1.0
In-Reply-To: <20050504150540.43048.qmail@web30212.mail.mud.yahoo.com>
Message-ID: <SERRANOdZ06YO4OPXok000001fa@SERRANO.CAM.ARTIMI.COM>
X-OriginalArrivalTime: 04 May 2005 15:38:13.0799 (UTC) FILETIME=[48A9CB70:01C550BF]
Note-from-DJ: This may be spam

----Original Message----
>From: Peter Farley
>Sent: 04 May 2005 16:06

> But what if it is *not* your Makefile, but someone
> else's, e.g. the many GNU source packages that expect
> bash behavior?  Surely you don't intend that ordinary
> users (well, OK, anyone compiling from a source
> package isn't really "ordinary") should modify every
> package maintained by GNU in order to make it under
> cygwin, do you?


  HELLO?  CAN ANYONE HEAR ME?    <tap-tap-tap>  Testing, testing,  is this
thing on?  Am I invisible all of a sudden?  Has everyone in the world gone
mad except me?  Why is everyone coming out with awkward solutions involving
remounting mounts or fiddling with symlinks or hacking around every
poorly-written-makefile-containing-nonportable-bashisms-in-the-whole-world?


  I did actually post the answer to this problem six hours and four posts
ago.  I guess it must be stuck somewhere behind a heavy flow of spam and not
made it to the list yet.  Anyway here it is again.

    make SHELL=/bin/bash.exe

  This FIXES your original testcase.  Look, if you don't believe me:

dk AT mace ~/maketest> make -C topdir SHELL=/bin/bash.exe
make: Entering directory `/home/dk/maketest/topdir'
In topdir, TOPDIR=/home/dk/maketest/topdir
In topdir, PWD=/home/dk/maketest/topdir
make -C subdir all
make[1]: Entering directory `/home/dk/maketest/topdir/subdir'
in subdir, TOPDIR=/home/dk/maketest/topdir
in subdir, PWD=/home/dk/maketest/topdir/subdir
make[1]: Leaving directory `/home/dk/maketest/topdir/subdir'
make: Leaving directory `/home/dk/maketest/topdir'
dk AT mace ~/maketest>

> P.S. - If there have already been discussions or if
> there already exists documentation on why ash vs. bash
> (I gather it is for performance reasons), I'd
   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

> appreciate (a) pointer(s) so I could better learn the

  See the phrase between brackets in your previous line!  When you run a big
configure or build of something of the scale gcc there may be anywhere
between tens and hundreds of thousands of sub-shell invocations in the
entire process, and given that forks are already quite a bit slow on cygwin,
it's really worth shaving time off them by using a leaner meaner shell.

    cheers,
      DaveK
-- 
Can't think of a witty .sigline today....


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