This is the mail archive of the
cygwin
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
do.
Something like:
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.
+1 <g>
--
Chuck
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple