Message ID | 1438337042-30762-1-git-send-email-judge.packham@gmail.com |
---|---|
State | Changes Requested |
Delegated to: | Tom Rini |
Headers | show |
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>
Le vendredi 31 juillet 2015 à 22:04 +1200, Chris Packham a écrit : > 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. Thanks a lot for introducing this, I thought it might disturb a few people. > Fixes: f3f431a71272 ("Reproducible U-Boot build support, using > SOURCE_DATE_EPOCH") It is incorrect to say that your patch fixes my commit, because my commit didn't introduce anything unexpected or faulty. If anything, it was merged before people gave their opinion about whether UTC should be default. I was also going to introduce a patch like yours later. For the record, UTC is default for Coreboot's timestamps. Thus, please remove that line. Otherwise, this is: Tested-By: Paul Kocialkowski <contact@paulk.fr> > 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
(note I had some patman config that erroneously included extra people on the original Cc list, I've now dropped them) On Sat, Aug 1, 2015 at 5:05 AM, Paul Kocialkowski <contact@paulk.fr> wrote: > Le vendredi 31 juillet 2015 à 22:04 +1200, Chris Packham a écrit : >> 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. > > Thanks a lot for introducing this, I thought it might disturb a few > people. > >> Fixes: f3f431a71272 ("Reproducible U-Boot build support, using >> SOURCE_DATE_EPOCH") > > It is incorrect to say that your patch fixes my commit, because my > commit didn't introduce anything unexpected or faulty. > > If anything, it was merged before people gave their opinion about > whether UTC should be default. I was also going to introduce a patch > like yours later. For the record, UTC is default for Coreboot's > timestamps. > > Thus, please remove that line. Done. v2 on it's way. The other mailing list thread also talked about the possibility of having SOURCE_DATE_TZOFFSET I'll look at a proof of concept for that. > Otherwise, this is: > Tested-By: Paul Kocialkowski <contact@paulk.fr> > >> 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 >
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
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(-)