On 24 June 2016 at 03:32, Michel Dänzer <mic...@daenzer.net> wrote: > On 23.06.2016 22:25, Emil Velikov wrote: >> On 23 June 2016 at 03:49, Michel Dänzer <mic...@daenzer.net> wrote: >>> On 22.06.2016 21:04, Emil Velikov wrote: >>>> From: Emil Velikov <emil.veli...@collabora.com> >>>> >>>> Do not rely on the git sha1: >>>> - its current truncated form makes it less unique >>>> - it does not attribute for local (Vulkand or otherwise) changes >>>> >>>> Use a timestamp produced at the time of build. It's perfectly unique, >>>> unless someone explicitly thinkers with their system clock. Even then >>>> chances of producing the exact same one are very small, if not zero. >>>> >>>> Cc: Jason Ekstrand <ja...@jlekstrand.net> >>>> Cc: mesa-sta...@lists.freedesktop.org >>>> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> >>>> --- >>>> Current approach uses seconds since Epoch, but if people prefer we >>>> can use nano seconds, combination of the two and/or other. >>>> --- >>>> src/intel/vulkan/.gitignore | 2 ++ >>>> src/intel/vulkan/Makefile.am | 15 ++++++++++++++- >>>> src/intel/vulkan/anv_device.c | 4 ++-- >>>> 3 files changed, 18 insertions(+), 3 deletions(-) >>>> >>>> diff --git a/src/intel/vulkan/.gitignore b/src/intel/vulkan/.gitignore >>>> index a496146..7ef6a48 100644 >>>> --- a/src/intel/vulkan/.gitignore >>>> +++ b/src/intel/vulkan/.gitignore >>>> @@ -2,3 +2,5 @@ >>>> /anv_entrypoints.c >>>> /anv_entrypoints.h >>>> /dev_icd.json >>>> +/anv_timestamp.h.tmp >>>> +/anv_timestamp.h >>>> diff --git a/src/intel/vulkan/Makefile.am b/src/intel/vulkan/Makefile.am >>>> index 4d9ff90..8332ae5 100644 >>>> --- a/src/intel/vulkan/Makefile.am >>>> +++ b/src/intel/vulkan/Makefile.am >>>> @@ -131,7 +131,20 @@ anv_entrypoints.c : anv_entrypoints_gen.py >>>> $(vulkan_include_HEADERS) >>>> $(AM_V_GEN) cat $(vulkan_include_HEADERS) |\ >>>> $(PYTHON2) $(srcdir)/anv_entrypoints_gen.py code > $@ >>>> >>>> -BUILT_SOURCES = $(VULKAN_GENERATED_FILES) >>>> + >>>> +.PHONY: anv_timestamp.h.tmp >>>> +anv_timestamp.h.tmp: >>>> + $(AM_V_GEN) echo "#define ANV_TIMESTAMP `date +%s`" > $@ >>> >>> This conflicts with efforts to make builds reproducible, see e.g. >>> https://wiki.debian.org/ReproducibleBuilds . One technique used by such >>> efforts is to replace any timestamps with all 0s. >>> >> Thanks to letting me know before things got swapped with 0s. Is there >> a way to contact/check how other projects have handled/resolved this ? > > The wiki page above has a link to > https://wiki.debian.org/ReproducibleBuilds/Contribute which lists > several ways to get in touch with people working on this. > Sweet, thanks.
> >>> Would it be possible to generate a hash over all source files listed in >>> any Makefile.sources, or something like that? >>> >> If you want to pursue that task please do. > > I'm not going to work on this, I merely suggested a possible alternative. > JFYI Pekka did mention the exact same alternative, and the above mentioned 'limitations' came to play. Would be great if we didn't have to care for either one, but I suspect that there's at least dozen of people who do. I'll check with the people leading the initiative for other ways, meanwhile do you feel strongly against the patch ? Thanks Emil _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev