| delorie.com/archives/browse.cgi | search |
| Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
| List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
| List-Archive: | <http://sources.redhat.com/ml/cygwin/> |
| List-Post: | <mailto:cygwin AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs> |
| 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-Injected-Via-Gmane: | http://gmane.org/ |
| To: | cygwin AT cygwin DOT com |
| From: | Rolf Campbell <rcampbell AT tropicnetworks DOT com> |
| Subject: | Re: Shell brace expansion in make works? |
| Date: | Sun, 09 Feb 2003 16:28:21 -0500 |
| Lines: | 37 |
| Message-ID: | <b26h1m$c3a$1@main.gmane.org> |
| References: | <20030209151057 DOT A13079 AT saturn DOT billgatliff DOT com> |
| Mime-Version: | 1.0 |
| X-Complaints-To: | usenet AT main DOT gmane DOT org |
| User-Agent: | Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3a) Gecko/20021212 |
| X-Accept-Language: | en-us, en |
| In-Reply-To: | <20030209151057.A13079@saturn.billgatliff.com> |
William A. Gatliff wrote:
> I have a Makefile with a command like this:
>
> mkdir -p /opt/billgatliff/{usr,lib}
>
> Works fine under Linux, but not on the latest Cygwin.
>
> Under Cygwin, what I actually get is a directory called "{usr",
> instead of "usr". Other variations on this brace expansion (in tar
> arguments, etc.) produce similar problems.
>
> I checked this:
>
> $ set | grep SHELL
> SHELL=/bin/bash
>
> Seems fine. But when I do this:
>
> $ make SHELL=/bin/sh ...
^^ "bash"
>
> I actually get what I'm after, i.e. "usr" instead of "{usr".
I'm guessing that you meant to type "bash" in the email. Either way,
cygwin make seems to ignore the environment variable SHELL, and uses
'/bin/sh' unless you specify on the command-line or in the makefile.
I was able to reproduce this.
Use this as a makefile
all:
echo a{1,2}
Then run "make" and it will output "a{1,2}", but if you run "make
SHELL=/bin/bash" it will output "a1 a2".
-Rolf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |