From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 86539 invoked by alias); 20 Sep 2017 19:57:53 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 85265 invoked by uid 89); 20 Sep 2017 19:57:52 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.4 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_LOW,URIBL_SBL autolearn=ham version=3.3.2 spammy= X-Spam-User: qpsmtpd, 2 recipients X-HELO: einhorn-mail.in-berlin.de Received: from einhorn-mail.in-berlin.de (HELO einhorn-mail.in-berlin.de) (217.197.80.20) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 20 Sep 2017 19:57:51 +0000 X-Envelope-From: doko@ubuntu.com Received: from [192.168.178.30] (ip5f5bd693.dynamic.kabel-deutschland.de [95.91.214.147]) (authenticated bits=0) by einhorn.in-berlin.de (8.14.4/8.14.4/Debian-8+deb8u2) with ESMTP id v8KJsKvJ018742 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 20 Sep 2017 21:54:20 +0200 Subject: Re: meaning of "Automatic date update in version.in" commits To: Mikhail Terekhov , Petr Ovtchenkov , Andreas Schwab Cc: binutils@sourceware.org, Joel Brobecker , gdb@sourceware.org References: <20170920173622.28500ccf@void-ptr.info> <87zi9p2vma.fsf@linux-m68k.org> <20170920202354.3c863857@void-ptr.info> <7217d33d-61eb-732e-dfd6-80ef4908743e@ubuntu.com> <218bf365-1f36-3531-b42b-5b48499992ed@dell.com> From: Matthias Klose Message-ID: <7716f103-1abd-a9fe-14e5-cbbe5a62eb01@ubuntu.com> Date: Wed, 20 Sep 2017 19:57:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <218bf365-1f36-3531-b42b-5b48499992ed@dell.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-SW-Source: 2017-09/txt/msg00061.txt.bz2 On 20.09.2017 21:26, Mikhail Terekhov wrote: > 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 wrote: >>> >>>> On Sep 20 2017, Petr Ovtchenkov 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 >>> 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 >>> 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. no, you can't assume that git is available for builds.