Re: [PATCH] Makefile: update defaults for modern Cygwin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/03/2010 01:47 AM, Jonathan Nieder wrote:
> Red Hat internal people might want to be able to use 1.8 when it comes
> out.  Maybe something like this would do the trick?  I don’t know whether
> Cygwin 1.6 has the fixes 1.7 does, so in my ignorance I lumped it with
> 1.5.

Cygwin 1.6 is on par with 1.5 feature-wise, so your cutoff of 1.6 as the
last old version is correct.

> @@ -831,7 +831,7 @@ ifeq ($(uname_S),SunOS)
>  	BASIC_CFLAGS += -D__EXTENSIONS__ -D__sun__ -DHAVE_ALLOCA_H
>  endif
>  ifeq ($(uname_O),Cygwin)
> -	ifneq ($(wordlist 1, 2, $(subst ., ,$(uname_R))),1 7)
> +	ifeq ($(shell expr "$(uname_R)" : '1\.[1-6]\.'),4)

It would be nice to use fewer processes, since forking is so expensive
on cygwin:

ifeq ($(shell case '$(uname_R)' in 1.[1-6].*) echo old;; esac),old)

But does that work to have unbalanced ) in a makefile $(shell)?  On the
other hand, this is already in a chunk guarded by $(uname_S) being
cygwin, and we know that cygwin shells understand:

ifeq ($(shell case '$(uname_R)' in (1.[1-6].*) echo old;; esac),old)

even though it is not portable to other shells, like Solaris /bin/sh.

-- 
Eric Blake   eblake@xxxxxxxxxx    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]