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