summaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2016-10-17 02:18:38 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2016-10-18 14:27:53 +0200
commite2ba56cccee0273165f0b94a90c9ba9b356a0965 (patch)
treebda668781e2b12fcb654815696bb3dae571d979b /build
parent1eb93b57e144bc33683fd9e36dcf52875aabd892 (diff)
portability: use py script instead of 'date -d @1234'
On FreeBSD, the 'date' command's -d option has a completely different meaning. Instead, use a small python script to do the date format conversion, which should be more portable. As a side effect, we now also use UTC instead of the build server's timezone, which may be considered a more international choice. Add build/unix-time-to-fmt.py, call in build/Makefile.asciidoc.inc. Change-Id: I91a40656184f553ee375216d8ba5c7788fe9990d
Diffstat (limited to 'build')
-rw-r--r--build/Makefile.asciidoc.inc2
-rwxr-xr-xbuild/unix-time-to-fmt.py18
2 files changed, 19 insertions, 1 deletions
diff --git a/build/Makefile.asciidoc.inc b/build/Makefile.asciidoc.inc
index 1a77419..7def592 100644
--- a/build/Makefile.asciidoc.inc
+++ b/build/Makefile.asciidoc.inc
@@ -1,7 +1,7 @@
BUILDDIR = $(TOPDIR)/build
GIT_VERSION := $(shell git describe --abbrev=4 --dirty --always --tags)
-GIT_DATE := $(shell date -d @`git log -n 1 "--pretty=%at" ../.` "+%Y-%b-%e")
+GIT_DATE := $(shell $(TOPDIR)/build/unix-time-to-fmt.py `git log -n 1 "--pretty=%at" ../.`)
# prepend the document name with the version numbe suffix
#DOCS_VER = $(foreach P, $(ASCIIDOCS), $(P)-v$(shell xmllint --recover --xpath "//revnumber[position()=last()]/text()" $(P)-docinfo.xml 2>/dev/null))
diff --git a/build/unix-time-to-fmt.py b/build/unix-time-to-fmt.py
new file mode 100755
index 0000000..d081797
--- /dev/null
+++ b/build/unix-time-to-fmt.py
@@ -0,0 +1,18 @@
+#!/usr/bin/env python3
+"""
+Usage:
+
+ unix-time-to-fmt.py 1234567 [%Y-%m-%d[...]]
+
+Convert unix timestamp to a string of the given format in UTC, according to
+ https://docs.python.org/2/library/time.html
+Default is '%Y-%b-%d' --> 2016-Jan-01
+"""
+
+import sys, time
+
+fmt = '%Y-%b-%d'
+if len(sys.argv) > 2:
+ fmt = sys.argv[2]
+
+print(time.strftime(fmt, time.gmtime(float(sys.argv[1]))))