Considering the format used in the PE header is epoch seconds, using any other
format to override that header seems like a pointless introduction of possible
l10n-based parser issues.
Sent from Windows Mail
From: Michael McGlothlin
Sent: Monday, 16 February 2015 23:17
To: Daniel Kahn Gillmor
Cc: mono development list, Henrik Feldt, Jo Shields, Debian Reproducible
Builds, Jeroen Frijters
I'd always store time in epochs. Seconds since 1/1/1970 GMT.
The use of textual date strings instead of a epochs is one of the worst things
I've seen from the C# way of doing things. I had often wondered why so many
programs could have so much trouble with handling dates and times correctly..
Sent from my iPad
> On Feb 16, 2015, at 4:19 PM, Daniel Kahn Gillmor <d...@fifthhorseman.net>
> wrote:
>
> Hi Mono folks--
>
> some good discussion has come up on the xamarin bugtracker about being
> able to make builds using the mono toolchain reproducible:
>
> https://bugzilla.xamarin.com/show_bug.cgi?id=26842
>
> Jo Shields offered a one-liner fix to PEWriter.cs to allow the use of an
> environment variable to fix the timestamp epoch, but made it clear that
> more feedback is needed, so i'm raising it here:
>
> from:
>
> public DWORD TimeDateStamp = (uint)(DateTime.UtcNow - new DateTime(1970, 1,
> 1, 0, 0, 0, DateTimeKind.Utc)).TotalSeconds;
>
> to:
>
> public DWORD TimeDateStamp =
> Environment.GetEnvironmentVariable("IKVM_WRITER_TIMESTAMP_EPOCH") != null ?
>
> uint.Parse(Environment.GetEnvironmentVariable("IKVM_WRITER_TIMESTAMP_EPOCH"))
> :
> (uint)(DateTime.UtcNow - new DateTime(1970, 1,
> 1, 0, 0, 0, DateTimeKind.Utc)).TotalSeconds;
>
> (i'm not sure whether the integer number of seconds is the best form for
> the environment variable, or whether it would be better to parse a
> standard date string -- from debian's perspective, we can deal with
> either, of course)
>
> And this still doesn't solve the secondary issue of the assembly GUID,
> as Jo noted.
>
> Any thoughts about how to best enable binary-reproducible builds from
> the mono toolchain if the invoker requests them?
>
> Regards,
>
> --dkg
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list@lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
_______________________________________________
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list