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.
Signed-off-by: Stefan Tauner stefan.tauner@alumni.tuwien.ac.at --- Makefile | 9 +++++++-- util/getrevision.sh | 10 ++++++++++ 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}"