X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:date:from:reply-to:message-id:to:subject
	:in-reply-to:references:mime-version:content-type
	:content-transfer-encoding; q=dns; s=default; b=u3+n8A0ORUDNOP2x
	aGhCaquPyi0BNUTL2I9R8A7KKIh6mW45+v0jvspf+hsZpKIL6FC68lksRkxnTzZ1
	SRsQs5lEPgDlVlrFvI+P5kR5uME8v+FdFy7c1wryQbMgrWIIEzYoG24uU/48ZVf1
	VJOc9lId0Ael2tpM7fiP2ewK6Yg=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:date:from:reply-to:message-id:to:subject
	:in-reply-to:references:mime-version:content-type
	:content-transfer-encoding; s=default; bh=PkdeF5z8wSfyjbK5LJ1eNq
	+JVP0=; b=DhdHQ9PykcK2YxeEnmkZjWe/9oh00JGjzzyZvb7+IiLXaxUYxQre8l
	RwSwW3XckxR5EMaVtAZ9ExA6m3467E2F95c4CUJXl2xkyVYaedEQARnoqOVc0bnY
	26nx7gQUFtmWJ/cuD+Eyk8mQDo36zXt9jmkHiQtHn5v7a0mrIPeyA=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=4.0 required=5.0 tests=AWL,BAYES_50,FREEMAIL_FROM,KAM_THEBAT,SPF_SOFTFAIL autolearn=no version=3.3.2 spammy=H*UA:Bat!, H*x:Bat!, bases, H*r:sk:postmas
X-HELO: smtp.ht-systems.ru
Date: Thu, 5 May 2016 04:37:25 +0300
From: Andrey Repin <anrdaemon@yandex.ru>
Reply-To: cygwin@cygwin.com
Message-ID: <139590677.20160505043725@yandex.ru>
To: Ken Brown <kbrown@cornell.edu>, cygwin@cygwin.com
Subject: Re: Deterministic builds
In-Reply-To: <ff5f5b20-33e2-ef2d-012a-a9e02903ba21@cornell.edu>
References: <ff5f5b20-33e2-ef2d-012a-a9e02903ba21@cornell.edu>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-IsSubscribed: yes

Greetings, Ken Brown!

> Is it possible to build an executable on Cygwin so that subsequent 
> builds (with no change in source) produce identical results?

General answer is "no". It is possible to build a consistent object binary,
but executable linked from it will be different on different systems, for
various reasons.

> Currently,
> the timestamp embedded in executables prevents this.  (I don't know if 
> that's the only obstacle.)

Timestamps are the least of your issues.
Think of things like stack allocation bases.

> My actual use case is that I'm building a package that produces a large
> number of executables.  If I make a change in one source file, I'd like 
> to be able to know which executables change.

If your interest is purely self-educational, you can limit the noise on a
particular given system. But I wouldn't try to make any universal claims if I
were you.


-- 
With best regards,
Andrey Repin
Thursday, May 5, 2016 04:32:14

Sorry for my terrible english...


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

