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:mime-version:date:message-id:subject:from:to :content-type; q=dns; s=default; b=mMD4sSbC09OJsogbTDaCvjsNaUD7X 9Zt2w28BiaFK2/7iYMuM0Z/zD/jCgaSM/1I8A+CrS+nuiurw5gX8dRdMg/M5+ZEw Zv2TpWNAkZsmJQQvIr+R/fmZ3lMK8VSRI8JwvjWPBbWgOvIY3ZEVHsWsYcAKExiB BvHuyxqFDAJNSI= 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:mime-version:date:message-id:subject:from:to :content-type; s=default; bh=DKmjxXZiL64iIlzyAhM+HhXWr68=; b=CFV nUiBtphIJk+9Np9V3NK+W52Q8Q4YB1ujlhtV8pXQDQwrB9FJ3TgXZ98K+firdbTY 4duGlH8M5NCWDHqfCdb34+cngRdKORfXC0hsEUr1ZY3gSWl7k89oFnz6nSfL6Rq9 kpMB67BcHsYClvi9CQOea1yLYriTxJAXFAwqiVJk= 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 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=2.5 required=5.0 tests=AWL,BAYES_40,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-wi0-f177.google.com MIME-Version: 1.0 X-Received: by 10.180.188.48 with SMTP id fx16mr50139232wic.35.1436163179486; Sun, 05 Jul 2015 23:12:59 -0700 (PDT) Date: Mon, 6 Jul 2015 11:42:59 +0530 Message-ID: Subject: Migrating from MKS to Cygwin From: Sarbjit singh To: cygwin AT cygwin DOT com Content-Type: text/plain; charset=UTF-8 Hi All, My organization is evaluating Cygwin as a replacement for MKS. We will be using Cygwin primarily for running our regression cases on windows (Regression cases are common for Unix and Windows Platforms). Goal is to migrate to Cygwin with minimal changes to be done at regression test cases scripts (Makefile etc.). So far, the main challenges are with "pwd" command and the invocation of applications with .bat extension. PWD Command: There are few regression cases which uses 'pwd' command in the Makefile.Since, in the cygwin environment, POSIX paths are returned and these are not compatible with the software applications under test i.e. the software application is not able to resolve these paths. As a workaround, I did the following : - Define a bash function in .bashrc file, which internally calls cygpath to return windows style paths. This will return the windows style paths on bash shell but this function is not available in Makefile. - So, for Makefile, I have declared macro (makefile variable) and using the cygpath to return windows style paths. But, this would require changes in the Makefile i.e. to replace 'pwd' with ${PWD}. - In order to minimize any changes in the Makefile, I also tried downloading the GNU coreutils for Windows port and replacing pwd.exe (/usr/bin) with the pwd.exe from coreutils. In this case, if I do pwd, then I still get POSIX paths, but if I call pwd.exe with absolute path, then it returns windows style paths. I am not sure, why it is not working when pwd is called without any path. Invocation of applications with .bat extension: Second main difference that is observed is that in Cygwin, you have to call the application with extension if it is .bat. This works seamlessly on MKS. Since, the software installation can't be changed to address this problem, so far the workarounds are : - Create an alias, but again this won't work in Makefile - Create a softlink dynamically while running regressions (pre regression setup) - Create a file with the application name and call the .bat file. Keep these new executable files in a accessible path. Queries: - Can someone please conform if the workarounds being used are OK. Is there any better way of addressing these problems. Any patches for both the problems? - Why is the pwd not working, when pwd is used from coreutils. Thanks in Advance, Sarbjit -- 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