X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:date:from:to:subject:message-id:reply-to
	:references:mime-version:content-type:in-reply-to; q=dns; s=
	default; b=K9Fq1Fcpbv0IdKye6LTrfZb0oFM4bj9wwPJ/s6u72DLmB25jRe2P5
	Dkv5c+ctQYrxcXhzJoEOxf1Dhw6pKV8jZNNNyWbHLDG77lkgErQmhvGR76TPoBWO
	iFa4FQeJ4gZqW/YxuSx6UkFntLoJIYWNaZBxVWgpenJuZurano1Zjc=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:date:from:to:subject:message-id:reply-to
	:references:mime-version:content-type:in-reply-to; s=default;
	 bh=8THFaOJ14vsOQlQr3zbBqgFdy4I=; b=OBHsmxKQymt9Dfz0ayGdUENlwLD6
	kZZv74/iRc7C74P824Mofee2SyvnT6Gq9BknIwLEKzKIAj5bAJBMaC9cA4kp3EVL
	40zlAdQiPtiYIUiVu1PTQ/kJhhXUod+i1V6EPc7aTaQ7yNVadC+wsLGjkUaunaxM
	tlT02dFVh6moznQ=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_YE autolearn=ham version=3.3.1
X-Mail-Handler: Dyn Standard SMTP by Dyn
X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information)
X-MHO-User: U2FsdGVkX1/ZKeIrGHaV5F844nuICm2Q
Date: Tue, 18 Jun 2013 14:59:17 -0400
From: Christopher Faylor <cgf-use-the-mailinglist-please@cygwin.com>
To: cygwin@cygwin.com
Subject: Re: Adding MSYS functionality to Cygwin
Message-ID: <20130618185917.GA4868@ednor.casa.cgf.cx>
Reply-To: cygwin@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
References: <CABEPuQJDLjtbcLig1isTUJgb6RBCD8LNShbm9mTPcb9WM5S5fw@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <CABEPuQJDLjtbcLig1isTUJgb6RBCD8LNShbm9mTPcb9WM5S5fw@mail.gmail.com>
User-Agent: Mutt/1.5.20 (2009-06-14)

On Tue, Jun 18, 2013 at 10:40:36PM +0400, ??????? ?????? wrote:
>Hi everybody!
>
>I want to add MSYS functionality to Cygwin.
>More than 10 years ago Cygwin 1.3 had forked to MSYS. But now this
>MSYS is very old and don't has any support for it.
>Primary goal of MSYS is to provide environment with GNU utilities for
>building application using native Mingw compilers. The main
>differences from original Cygwin is working with native Win32
>applications.
>So I create new MSYS based on last Cygwin and it works good I think.
>But I think that the right way is to implement MSYS functionality in
>Cygwin sources directly because in this case we don't need to do many
>copies of different Cygwin dll with other names. And we always has
>latest work from Cygwin guys.
>
>I can write next tasks that need to be in MSYS mode:
>
>1. The correct definition of executables belonging to Cygwin DLL.
>2. Translating paths in arguments and environment variables to Windows
>form for pure Win32 applications.
>3. In MSYS mode Cygwin need to be very portable: do not use registry
>to store any info, do not use /etc/passwd and /etc/group, all mount
>points need to be with noacl option to avoid problems with permission
>denied.
>4. Ability to change OSNAME that controlled by uname function in Cygwin DLL.
>5. Use shorted mount point options in /etc/fstab - only win32_path and
>posix_path.
>6. SYMLINKS. Now Cygwin can work with native symlinks but it cannot be
>used in all situations. From the other side - Win32 applications
>doesn't understand Cygwin symlinks. As fallback option we need to
>create copies of files and directories instead symlinks.
>
>I want to hear your opinions about how it can be implemented in Cygwin codebase.

Corinna and I have been discussing this in private and I thought
someone (you?) was going to bring this up in the cygwin-developers
list.

However, since you mention it here, my opinion is that we should add
hooks in the DLL which allow certain operations like path translation,
symlinks, and command line substitution to be short-circuited or
modified.  In that scenario, you'd still have a MSYS.dll but it would
rely on cygwin1.dll for most of the heavy lifting.

cgf

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

