This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Facilitate deterministic pe executables between linker invocations


On Thu, Oct 10, 2013 at 10:10 AM, nick clifton <nickc@redhat.com> wrote:
> Hi Cory,
>
> [Sorry for the delay in replying]
>

No problem, thanks for getting to it.

>
>> Only a tiny change is needed to avoid the random result. An
>> (entirely arbitrary) value of 1 is hard-coded rather than using the
>> current
>> timestamp.
>>
>> Is there a historical reason for the non-deterministic behavior?
>
>
> Yes. :-)
>
> Oh, you want to know the reason ?  I believe that this is because
> non-deterministic behaviour was not considered to be important, and that
> having a timestamped executable was thought to be a helpful feature. (For
> example the timestamp could be used like a build-id to identify a specific
> release of a binary to a customer).
>

Yea, that's about what I expected to hear :\

>
>
>> If so, would
>> it be reasonable to add an option similar to enable-deterministic-archives
>> to
>> disable it?
>
>
> Yes it would.

Great, then I'm happy to do the work. A few quick questions:

- Are there other viable targets you can think of beyond PE executables?
- What do you think about making this a runtime ld option as well?
e.g. -D to match ar's. It'd be a shame to be at the mercy of my distro
for this.
- Is it worth considering a generic "attempt deterministic behavior"
configure option that would bring behavior like this and ar's under
one roof? I'm assuming not since there are presumably cases where
someone might want one but not the other, just throwing it out there.

Regards,
Cory

>
> Cheers
>   Nick
>
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]