[U-Boot] [PATCH] Makefile: Use correct timezone for U_BOOT_TZ

Bin Meng
2015-07-31T12:14:05Z

On Fri, Jul 31, 2015 at 6:04 PM, Chris Packham <judge.packham@gmail.com> wrote:
> When building with SOURCE_DATE_EPOCH the timezone is in UTC. When
> building normally the timezone is taken from the build machine's locale
> setting.
>
> Fixes: f3f431a71272 ("Reproducible U-Boot build support, using
> SOURCE_DATE_EPOCH")
> Signed-off-by: Chris Packham <judge.packham@gmail.com>
> ---
> Hopefully this will suit everyone. I've done a quick sanity test with
> sandbox and the date shown in the version output looks to be what I
> expect with/without SOURCE_DATE_EPOCH.
>
> Makefile | 14 ++++++++++----
> 1 file changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index 394ed09..f75c730 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1230,10 +1230,16 @@ define filechk_version.h
> endef
>
> define filechk_timestamp.h
> - (SOURCE_DATE="$${SOURCE_DATE_EPOCH:+@$$SOURCE_DATE_EPOCH}"; \
> - LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_DATE "%b %d %C%y"'; \
> - LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TIME "%T"'; \
> - LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TZ "%z"' )
> + (if test -n "$${SOURCE_DATE_EPOCH}"; then \
> + SOURCE_DATE="@$${SOURCE_DATE_EPOCH}"; \
> + LC_ALL=C date -u -d "$${SOURCE_DATE}" +'#define U_BOOT_DATE "%b %d %C%y"'; \
> + LC_ALL=C date -u -d "$${SOURCE_DATE}" +'#define U_BOOT_TIME "%T"'; \
> + LC_ALL=C date -u -d "$${SOURCE_DATE}" +'#define U_BOOT_TZ "%z"'; \
> + else \
> + LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"'; \
> + LC_ALL=C date +'#define U_BOOT_TIME "%T"'; \
> + LC_ALL=C date +'#define U_BOOT_TZ "%z"'; \
> + fi)
> endef
>
> $(version_h): include/config/uboot.release FORCE
> --

Tested-by: Bin Meng <bmeng.cn@gmail.com>