This is the mail archive of the
mailing list for the Cygwin project.
Re: Adding MSYS functionality to Cygwin
- From: Charles Wilson <cygwin at cwilson dot fastmail dot fm>
- To: The Cygwin Mailing List <cygwin at cygwin dot com>
- Date: Wed, 19 Jun 2013 16:25:24 -0400
- Subject: Re: Adding MSYS functionality to Cygwin
- References: <CABEPuQJDLjtbcLig1isTUJgb6RBCD8LNShbm9mTPcb9WM5S5fw at mail dot gmail dot com> <51C0B08E dot 8080900 at etr-usa dot com> <CABEPuQJJpRfPKSwZ7M0eTOdp1HxDcmvuy1=qXFHBw-8kLkZ1ZQ at mail dot gmail dot com> <51C0D956 dot 4090905 at etr-usa dot com> <20130619020234 dot GA3669 at ednor dot casa dot cgf dot cx> <51C1EAA3 dot 6040307 at etr-usa dot com> <20130619174514 dot GA6071 at ednor dot casa dot cgf dot cx>
On 6/19/2013 1:45 PM, Christopher Faylor wrote:
I'm talking about providing hooks so that an add-on MSYS dll could
modify the windows command-line. Then we wouldn't care what MSYS does
with the command-line since it isn't a Cygwin DLL decision. The goal is
to allow a small DLL to hook into Cygwin and do whatever MSYS wants to
callout (CO_EXEC, &command_line);
Where it is expected that the command line could be modified.
Interesting. Obviously, there's more to a "complete" MSYS
replacement/reimplementation, but cmd-line manipulation for exec'ing
native apps is really the biggest MSYS-ism of the bunch.
I assume that, eventually and as-needed, a *small* number of additional
"hooks" could be added to other code paths than exec/spawn/etc -- such
as the aforementioned uname(3) thing. (One of the "deltas" between
cygwin and msys was msys used a really stupid ownership/permission model
-- pretend current user owns everything; check the DOS R/O bit for +w;
check the file extension for +x; -- but this can be approximated with
existing $CYGWIN entries or mount options. I think. So reimplementing
that "feature" of MSYS would not require any additional hooks).
The goal would be to collapse the fork back into Cygwin
with minimal cost to the Cygwin DLL.
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple