summaryrefslogtreecommitdiffstats
path: root/firmware/firmware.make
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2016-09-23 21:51:28 +0100
committerGerrit Rockbox <gerrit@rockbox.org>2016-09-23 23:03:23 +0200
commit50c1de7092fa75c6c5317ac5338d685191a443c0 (patch)
treeda0b2755e39f3607c45fa26ee10e654f95a22dc5 /firmware/firmware.make
parent92450a99240f5ab085248af13d67112f38d51b35 (diff)
downloadrockbox-50c1de7092fa75c6c5317ac5338d685191a443c0.tar.gz
rockbox-50c1de7092fa75c6c5317ac5338d685191a443c0.zip
Fix makefile not rebuilding rbversion.h in some cases
For example when running make VERSION="bla" Change-Id: I8f8833f0fb200828346ed0a6842a9340e3653932
Diffstat (limited to 'firmware/firmware.make')
-rw-r--r--firmware/firmware.make7
1 files changed, 5 insertions, 2 deletions
diff --git a/firmware/firmware.make b/firmware/firmware.make
index 8f8014d82c..3d79837871 100644
--- a/firmware/firmware.make
+++ b/firmware/firmware.make
@@ -46,7 +46,10 @@ $(BUILDDIR)/sysfont.o: $(SYSFONT) $(BUILDDIR)/sysfont.h
$(call PRINTS,CONVBDF $(subst $(ROOTDIR)/,,$<))$(TOOLSDIR)/convbdf -l $(MAXCHAR) -c -o $(BUILDDIR)/sysfont.c $<
$(call PRINTS,CC $(subst $(ROOTDIR)/,,$(BUILDDIR)/sysfont.c))$(CC) $(CFLAGS) -c $(BUILDDIR)/sysfont.c -o $@
-SVNVERSION:=$(shell $(TOOLSDIR)/version.sh $(ROOTDIR))
+# GNU make (at least) has a bug/feature that exported variable are not available
+# in the shell function (but are in recipe). Thus we need to explicitely pass
+# the VERSION environement variable
+SVNVERSION:=$(shell VERSION='$(VERSION)' $(TOOLSDIR)/version.sh $(ROOTDIR))
OLDSVNVERSION:=$(shell grep 'RBVERSION' $(BUILDDIR)/rbversion.h 2>/dev/null|cut -d '"' -f 2 || echo "NOREVISION")
ifneq ($(SVNVERSION),$(OLDSVNVERSION))
@@ -54,4 +57,4 @@ ifneq ($(SVNVERSION),$(OLDSVNVERSION))
endif
$(BUILDDIR)/rbversion.h:
- $(call PRINTS,GEN $(@F))$(TOOLSDIR)/genversion.sh $(BUILDDIR) $(TOOLSDIR)/version.sh $(ROOTDIR)
+ $(call PRINTS,GEN $(@F))$(TOOLSDIR)/genversion.sh $(BUILDDIR) $(SVNVERSION)