summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2015-01-10 09:32:07 +0000
committerStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2015-01-10 09:32:07 +0000
commit588a53f58df2a32362698c2bebea7b3b4910e261 (patch)
treeea4421ce2f5d172063cb4414447b063fdf445c3d
parente6a34aa157f0af18b61d780a8c318b8c933ae364 (diff)
downloadflashrom-588a53f58df2a32362698c2bebea7b3b4910e261.zip
flashrom-588a53f58df2a32362698c2bebea7b3b4910e261.tar.gz
Refine revision handling
Up to now, when compiling flashrom outside a VCS it would print two warnings that are not very clear to the user. This patch adds a new auxilary function to getrevision.sh and uses it in the makefile to print a single and more meaningful message to the user while hiding the warnings from getrevision.sh. Corresponding to flashrom svn r1862. Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
-rw-r--r--Makefile9
-rwxr-xr-xutil/getrevision.sh10
2 files changed, 17 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index a59a8f1..1bbc4e6 100644
--- a/Makefile
+++ b/Makefile
@@ -373,7 +373,7 @@ CLI_OBJS = cli_classic.o cli_output.o cli_common.o print.o
# Set the flashrom version string from the highest revision number of the checked out flashrom files.
# Note to packagers: Any tree exported with "make export" or "make tarball"
# will not require subversion. The downloadable snapshots are already exported.
-SVNVERSION := $(shell ./util/getrevision.sh -u)
+SVNVERSION := $(shell ./util/getrevision.sh -u 2>/dev/null )
RELEASE := 0.9.7
VERSION := $(RELEASE)-$(SVNVERSION)
@@ -381,6 +381,11 @@ RELEASENAME ?= $(VERSION)
SVNDEF := -D'FLASHROM_VERSION="$(VERSION)"'
+# Inform user if there is no meaningful version string. If there is version information from a VCS print
+# something anyway because $(info...) will print a line break in any case which would look suspicious.
+$(info $(shell ./util/getrevision.sh -c 2>/dev/null || echo "Files don't seem to be under version control." ; \
+ echo "Replacing all version templates with $(VERSION)." ))
+
###############################################################################
# Default settings of CONFIG_* variables.
@@ -992,7 +997,7 @@ endif
@rm -f .featuretest.c .featuretest$(EXEC_SUFFIX)
$(PROGRAM).8: $(PROGRAM).8.tmpl
- @sed -e '1 s#".*".*#"$(shell ./util/getrevision.sh -d $(PROGRAM).8.tmpl)" "$(VERSION)"#' <$< >$@
+ @sed -e '1 s#".*".*#"$(shell ./util/getrevision.sh -d $(PROGRAM).8.tmpl 2>/dev/null)" "$(VERSION)"#' <$< >$@
install: $(PROGRAM)$(EXEC_SUFFIX) $(PROGRAM).8
mkdir -p $(DESTDIR)$(PREFIX)/sbin
diff --git a/util/getrevision.sh b/util/getrevision.sh
index e50db75..1012058 100755
--- a/util/getrevision.sh
+++ b/util/getrevision.sh
@@ -215,6 +215,10 @@ upstream_revision() {
echo "${r}"
}
+is_tracked() {
+ is_file_tracked "$1"
+}
+
show_help() {
echo "Usage:
${0} <command> [path]
@@ -222,6 +226,8 @@ show_help() {
Commands
-h or --help
this message
+ -c or --check
+ test if path is under version control at all
-l or --local
local revision information including an indicator for uncommitted changes
-u or --upstream
@@ -274,6 +280,10 @@ main() {
check_action $1
action="timestamp +%Y-%m-%dT%H:%M:%SZ" # There is only one valid time format! ISO 8601
shift;;
+ -c|--check)
+ check_action=$1
+ action="is_tracked"
+ shift;;
-*)
show_help;
echo "Error: Invalid option: ${1}"
OpenPOWER on IntegriCloud