Commit d5ff8455 authored by Stefan Tauner's avatar Stefan Tauner
Browse files

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: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
parent 60dead4a
...@@ -373,7 +373,7 @@ CLI_OBJS = cli_classic.o cli_output.o cli_common.o print.o ...@@ -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. # 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" # Note to packagers: Any tree exported with "make export" or "make tarball"
# will not require subversion. The downloadable snapshots are already exported. # 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 RELEASE := 0.9.7
VERSION := $(RELEASE)-$(SVNVERSION) VERSION := $(RELEASE)-$(SVNVERSION)
...@@ -381,6 +381,11 @@ RELEASENAME ?= $(VERSION) ...@@ -381,6 +381,11 @@ RELEASENAME ?= $(VERSION)
SVNDEF := -D'FLASHROM_VERSION="$(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. # Default settings of CONFIG_* variables.
...@@ -992,7 +997,7 @@ endif ...@@ -992,7 +997,7 @@ endif
@rm -f .featuretest.c .featuretest$(EXEC_SUFFIX) @rm -f .featuretest.c .featuretest$(EXEC_SUFFIX)
$(PROGRAM).8: $(PROGRAM).8.tmpl $(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 install: $(PROGRAM)$(EXEC_SUFFIX) $(PROGRAM).8
mkdir -p $(DESTDIR)$(PREFIX)/sbin mkdir -p $(DESTDIR)$(PREFIX)/sbin
......
...@@ -215,6 +215,10 @@ upstream_revision() { ...@@ -215,6 +215,10 @@ upstream_revision() {
echo "${r}" echo "${r}"
} }
is_tracked() {
is_file_tracked "$1"
}
show_help() { show_help() {
echo "Usage: echo "Usage:
${0} <command> [path] ${0} <command> [path]
...@@ -222,6 +226,8 @@ show_help() { ...@@ -222,6 +226,8 @@ show_help() {
Commands Commands
-h or --help -h or --help
this message this message
-c or --check
test if path is under version control at all
-l or --local -l or --local
local revision information including an indicator for uncommitted changes local revision information including an indicator for uncommitted changes
-u or --upstream -u or --upstream
...@@ -274,6 +280,10 @@ main() { ...@@ -274,6 +280,10 @@ main() {
check_action $1 check_action $1
action="timestamp +%Y-%m-%dT%H:%M:%SZ" # There is only one valid time format! ISO 8601 action="timestamp +%Y-%m-%dT%H:%M:%SZ" # There is only one valid time format! ISO 8601
shift;; shift;;
-c|--check)
check_action=$1
action="is_tracked"
shift;;
-*) -*)
show_help; show_help;
echo "Error: Invalid option: ${1}" echo "Error: Invalid option: ${1}"
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment