[asterisk-bugs] [JIRA] (ASTERISK-27499) Make build of Asterisk reproducible, if so required

Joshua Colp (JIRA) noreply at issues.asterisk.org
Wed Dec 20 14:52:07 CST 2017


     [ https://issues.asterisk.org/jira/browse/ASTERISK-27499?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Joshua Colp updated ASTERISK-27499:
-----------------------------------

    Component/s: Core/BuildSystem

> Make build of Asterisk reproducible, if so required
> ---------------------------------------------------
>
>                 Key: ASTERISK-27499
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-27499
>             Project: Asterisk
>          Issue Type: Improvement
>      Security Level: None
>          Components: Core/BuildSystem
>    Affects Versions: 13.18.4, 15.1.4
>            Reporter: Tzafrir Cohen
>            Severity: Minor
>
> The following is a description of a simple patch I already have in the Debian package. I expect this would be a low hanging fruit for someone else to implement.
> Reproducible builds are intended to guarantee that a binary was built from a given source tree by the fact that building it again would give exactly  the same result. This has nice implications in trust. Normally you don't need it, but it may be handy in many cases.
> This breaks when the result of the build changes due to differences in the build environment: build time, host name, and such.
> The patch does the following:
> 1. In Makefile: call 'sort' with locale explicitly set to 'C' to make sure sort order does not differ by locales. I'm not 100% sure this is needed with the module naming convention, but it wouldn't hurt.
> 2. build_tools/make_build_h: This one heavily depends on the build environment. It would be nice to avoid that. A reproducible build build environment must set the variable SOURCE_DATE_EPOCH (See https://reproducible-builds.org/specs/source-date-epoch/ ). Thus if this variable is set, some values could be overridden (be it to arbitrary values) and not set from the build environment:
>    * HOSTNAME
>    * KERNEL
>    * MACHINE
>    * USER
>    * DATE



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list