X-Recipient: archive-cygwin AT delorie DOT 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 AT cygwin DOT com; run by ezmlm List-Id: 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 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 AT dyndns DOT 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 To: cygwin AT cygwin DOT com Subject: Re: Adding MSYS functionality to Cygwin Message-ID: <20130618185917.GA4868@ednor.casa.cgf.cx> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: 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