From 317dd81760e76a1b3457f516c48c059da63db67e Mon Sep 17 00:00:00 2001 From: Felix Ruess Date: Tue, 4 Nov 2014 21:46:05 +0100 Subject: [PATCH] [maps] hopefully finally fix google maps version download seems like #865 didn't work with sed version on OSX after all... So just use gnu sed on osx and the documented gnu sed -r option instead of -E Also add a check if the extraced google version is actually a valid integer number.. --- data/maps/Makefile | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/data/maps/Makefile b/data/maps/Makefile index c7bac79afa..33c0de785c 100644 --- a/data/maps/Makefile +++ b/data/maps/Makefile @@ -6,10 +6,13 @@ Q=@ UNAME = $(shell uname -s) ifeq ("$(UNAME)","Darwin") MKTEMP = gmktemp + SED = gsed else MKTEMP = mktemp + SED = sed endif + all: $(PAPARAZZI_HOME)/conf/maps.xml clean: @@ -28,16 +31,20 @@ $(DATADIR)/maps.google.com: $(DATADIR) FORCE exit 1) $(PAPARAZZI_HOME)/conf/maps.xml: $(DATADIR)/maps.google.com - $(eval GOOGLE_VERSION := $(shell tr -s '[[:space:]]' '\n' < $(DATADIR)/maps.google.com | grep -E "http[s]?://khm[s]?[0-9]+.google.com/kh/v=[0-9]+.x26" | sed -e 's/.*http[s]\?:\/\/khm[s]\?[0-9]\+\.google\.com\/kh\/v=\([0-9]\+\)\\x26.*/\1/')) + $(eval GOOGLE_VERSION := $(shell tr -s '[[:space:]]' '\n' < $(DATADIR)/maps.google.com | grep -E "http[s]?://khm[s]?[0-9]+.google.com/kh/v=[0-9]+.x26" | $(SED) -r 's#.*http[s]?://khm[s]?[0-9]+.google.com/kh/v=##;s#.x26.*##')) $(eval $@_TMP := $(shell $(MKTEMP))) - @echo "Updated google maps version to $(GOOGLE_VERSION)" - @echo "-----------------------------------------------" - $(Q)echo "" > $($@_TMP) - $(Q)echo "" >> $($@_TMP) - $(Q)echo "" >> $($@_TMP) - $(Q)echo "" >> $($@_TMP) - $(Q)mv $($@_TMP) $@ - $(Q)chmod a+r $@ + $(Q)if [ "$(GOOGLE_VERSION)" -eq "$(GOOGLE_VERSION)" ] 2>/dev/null ; then \ + echo "Updated google maps version to $(GOOGLE_VERSION)" ; \ + echo "-----------------------------------------------" ; \ + echo "" > $($@_TMP) ; \ + echo "" >> $($@_TMP) ; \ + echo "" >> $($@_TMP) ; \ + echo "" >> $($@_TMP) ; \ + mv $($@_TMP) $@ ; \ + chmod a+r $@ ; \ + else \ + echo "Extracted google maps version was not a valid number: $(GOOGLE_VERSION)" ; \ + fi FORCE: .PHONY: all clean