build: image: use UTC for zip timestamp
authorSungbo Eo <mans0n@gorani.run>
Sat, 12 Feb 2022 08:01:31 +0000 (17:01 +0900)
committerSungbo Eo <mans0n@gorani.run>
Wed, 9 Mar 2022 06:38:23 +0000 (15:38 +0900)
Zip uses DOS timestamp for mtime which is stored in local time and hence
depends on the timezone of the build system. Force zip to use UTC timezone
to make image builds more reproducible.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
include/image-commands.mk

index 939f5ef2db4db7afeab6f0009d926aef3055d906..21f851d2054fb2494bce35f4ae43c74f56fb9ce8 100644 (file)
@@ -541,8 +541,7 @@ define Build/zip
        rm -rf $@.tmp
        mkdir $@.tmp
        mv $@ $@.tmp/$(word 1,$(1))
-
-       $(STAGING_DIR_HOST)/bin/zip -j -X \
+       TZ=UTC $(STAGING_DIR_HOST)/bin/zip -j -X \
                $(if $(SOURCE_DATE_EPOCH),--mtime="$(SOURCE_DATE_EPOCH)") \
                $(wordlist 2,$(words $(1)),$(1)) \
                $@ $@.tmp/$(if $(word 1,$(1)),$(word 1,$(1)),$$(basename $@))