timestamp-macros: fix creation and add cleanup

As described in #3765
This commit is contained in:
Jürgen Buchmüller 2016-03-07 01:32:14 +01:00
parent e8780fffcb
commit 8ce51e70cf
3 changed files with 42 additions and 13 deletions

View file

@ -0,0 +1,18 @@
# This hook overwrites timestamp macros.
#
hook() {
local i mcr val macros="$XBPS_STATEDIR/timestamp-macros.h"
[ -n "$XBPS_USE_BUILD_MTIME" ] && return 0
[ -z "$SOURCE_DATE_EPOCH" ] && return 0
msg_normal "Creating $macros\n"
CFLAGS+=" -Wno-builtin-macro-redefined -include$macros"
CXXFLAGS+=" -Wno-builtin-macro-redefined -include$macros"
rm -f "$macros"
for i in "DATE,%b %d %Y" "TIME,%H:%M:%S" "DATETIME,%b %d %Y %H:%M:%S"; do
mcr=${i%%,*}
val=$(LC_ALL=C date --date "@$SOURCE_DATE_EPOCH" +"${i#*,}")
echo "#undef __${mcr}__" >> "$macros"
echo "#define __${mcr}__ \"${val}\"" >> "$macros"
done
}