X-Recipient: archive-cygwin AT delorie DOT 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 AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT 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 Reply-To: cygwin AT cygwin DOT com Message-ID: <139590677.20160505043725@yandex.ru> To: Ken Brown , cygwin AT cygwin DOT com Subject: Re: Deterministic builds In-Reply-To: References: 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