Re: meaning of "Automatic date update in version.in" commits
Mikhail Terekhov <[email protected]>
| Newsgroups | gmane.comp.gdb.devel,gmane.comp.gnu.binutils |
|---|---|
| Message-ID | <[email protected]> |
On 09/20/17 14:14, Matthias Klose wrote: > On 20.09.2017 19:23, Petr Ovtchenkov wrote: >> On Wed, 20 Sep 2017 18:16:45 +0200 >> Andreas Schwab <[email protected]> wrote: >> >>> On Sep 20 2017, Petr Ovtchenkov <[email protected]> wrote: >>> >>>> What is the meaning of "Automatic date update in version.in" commits? >>>> I mean commits like f625a739e5. >>> It is used to name the shared libbfd and libopcodes, since there is no >>> stable ABI. >>> >>>> This commits litter commits tree and create problems for >>>> deterministic, bit-identical and/or verifiable builds. >>> Why is that a problem? The version is fixed for a particular source >>> snapshot. >>> >> It's looks as a problem indeed: >> - garbage in commits >> - disorientation, when date present in SONAME >> 0x000000000000000e (SONAME) Library soname: [libbfd-2.29.0.20170729.so] > this is correct, and it's usually set to not include the date for a releases, an > exception being the 2.29.1 release, but things happen. > >> You see: >> >> git show 3110f4be18a2 >> commit 3110f4be18a2f3b9fcd9663ed1dd141bbd6ed14f >> Author: GDB Administrator <[email protected]> >> Date: Wed Sep 20 00:01:01 2017 +0000 >> >> Automatic date update in version.in >> >> diff --git a/bfd/version.h b/bfd/version.h >> index 3405e42..955269f 100644 >> --- a/bfd/version.h >> +++ b/bfd/version.h >> @@ -1,4 +1,4 @@ >> -#define BFD_VERSION_DATE 20170919 >> +#define BFD_VERSION_DATE 20170920 >> #define BFD_VERSION @bfd_version@ >> #define BFD_VERSION_STRING @bfd_version_package@ @bfd_version_string@ >> #define REPORT_BUGS_TO @report_bugs_to@ >> >> git show f625a739 >> commit f625a739e567f0110b2675539b7a0e5d5f67c5dc >> Author: GDB Administrator <[email protected]> >> Date: Wed Sep 20 00:01:22 2017 +0000 >> >> Automatic date update in version.in >> >> diff --git a/bfd/version.h b/bfd/version.h >> index 3405e42..955269f 100644 >> --- a/bfd/version.h >> +++ b/bfd/version.h >> @@ -1,4 +1,4 @@ >> -#define BFD_VERSION_DATE 20170919 >> +#define BFD_VERSION_DATE 20170920 >> #define BFD_VERSION @bfd_version@ >> #define BFD_VERSION_STRING @bfd_version_package@ @bfd_version_string@ >> #define REPORT_BUGS_TO @report_bugs_to@ >> >> git diff 3110f4be18a2 f625a739 >> ... >> Ooops.... >> >> This approch produce ambiguity, but try to conceal it. > Feel free to limit the bumps to exactly one after another commit. > What if build scripts obtain date of last commit automatically i.e. something like this: ~/tmp/gdb/binutils-gdb (master)>git log -1 --format=%cd --date=format:%Y%m%d 20170920 Then there is no need for additional commit. Regards, Mikhail