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 Message-ID: <42CDD9CB.8390A097@dessent.net> Date: Thu, 07 Jul 2005 18:41:31 -0700 From: Brian Dessent MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Perl Win32::Shortcut screws up fork References: <7231C15EAC2F164CA6DC326D97493C8BA1C3FA AT exchange35 DOT fed DOT cclrc DOT ac DOT uk> <42CDD3B8 DOT 69B6AB98 AT dessent DOT net> <20050708011859 DOT GB24841 AT trixie DOT casa DOT cgf DOT cx> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Spam-Report: -5.9/5.0 ---- Start SpamAssassin results * -3.3 ALL_TRUSTED Did not pass through any untrusted hosts * -2.6 BAYES_00 BODY: Bayesian spam probability is 0 to 1% * [score: 0.0000] * 0.0 AWL AWL: From: address is in the auto white-list ---- End SpamAssassin results X-IsSubscribed: yes Reply-To: cygwin AT cygwin DOT com Christopher Faylor wrote: > >I think we will require a statically linked bash, or some kind of > >trickery in the rebaseall script. One potential way around this might > >be for it to output a .cmd file (or .bat under 9x, grrr) and then exec() > >$COMSPEC to run the commands. This would have the advantage of not > >requiring any Cygwin DLLs in use during the rebase, but it sounds more > >error prone and complicated. > > But, the alternative of creating a version of bash just so that people > can run rebaseall sounds even more error prone. > > I don't see any other foolproof way of doing this. > > Btw, don't '.bat' files work on NT, too? By 'error prone' I meant that the current rebaseall script knows to stop the process when the first error happens. A .bat file would just try to plow through without checking, though you could certainly write more logic to check the errorlevel. But you would have to limit yourself to the command.com level of functionality, which is pretty prehistoric IIRC. Option B would be to write a C or C++ program to do the job of what rebaseall currently does. That's even more work. When I mentioned a static bash I was thinking of just making the base package statically compiled, not having an alternative. Somehow I imagined that this would make it a little faster too, but that's probably going to be insignificant. I'm also wondering if the issue would ever come up in postinstall scripts. Where before with ash or bash 2.x, we only required a working Cygwin DLL, now any postinstall script has to also have these 4 core DLLs in addition to the Cygwin DLL in place for any postinstall to function. I haven't really though this through though, as to whether this scenario matters. Brian -- 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/