Re: [RFC] Reproducible Builds Support
| From: | Stanislav Malyshev | Date: | Tue, 12 Dec 2017 07:33:42 +0000 |
| Subject: | Re: [RFC] Reproducible Builds Support | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-101329@lists.php.net to get a copy of this message | ||
Hi!
> Once issue is the PHP_BUILD_DATE, which makes the build
> non-reproducible. I've made a PR which uses SOURCE_DATE_EPOCH which is
> set in the reprodiculbe build env. This should keep the current
> functionality intact, while adding support for reproducible builds. [2]
> [3]
SOURCE_DATE_EPOCH (or any other variable) looks like a good way to make
it predictable.
> Another issue is the php_uname functions which contains the
> hostname, since the hostname is varied per build this makes it
> non-reproducible. This is caused by the following line:
>
> configure.ac:PHP_UNAME=
uname -a | xargs required in:
> ext/standard/info.c: php_uname = PHP_UNAME;
I think the best solution here would be to have another variable to
override this.
> I would argue that this is strange unexpected behaviour, and maybe it
> should throw an exception instead? Or can it show only "Linux" as
> fallback? basically PHP_OS. Ideas?
If those old systems run PHP and need uname, changing stuff there is
probably harder and more expensive than on other systems. With this in
mind, I'd rather not mess with it, especially for a purpose that can
easily be achieved without it.
--
Stas Malyshev
smalyshev@gmail.com