diff options
author | Michael Opdenacker <michael.opdenacker@bootlin.com> | 2021-10-19 14:35:58 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-10-20 20:20:46 +0100 |
commit | 9bdb2db85487811ca90e5c08edbeb9dbc742f830 (patch) | |
tree | 7fe7e47f9104a6e570a3bb268e0542c29ac4cc31 /documentation | |
parent | d03d151093ff79c5c5761c7ce5f7c65ae909f9af (diff) | |
download | poky-9bdb2db85487811ca90e5c08edbeb9dbc742f830.tar.gz |
ref-manual: document "reproducible_build" class and SOURCE_DATE_EPOCH
(From yocto-docs rev: ab6d3dbf57cac560b9b142cf5becf11d3edf09b7)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/migration-guides/migration-3.1.rst | 5 | ||||
-rw-r--r-- | documentation/ref-manual/classes.rst | 12 | ||||
-rw-r--r-- | documentation/ref-manual/variables.rst | 17 |
3 files changed, 32 insertions, 2 deletions
diff --git a/documentation/migration-guides/migration-3.1.rst b/documentation/migration-guides/migration-3.1.rst index 80b8f6baa5..a7614e5da4 100644 --- a/documentation/migration-guides/migration-3.1.rst +++ b/documentation/migration-guides/migration-3.1.rst | |||
@@ -55,8 +55,9 @@ Reproducible builds now enabled by default | |||
55 | 55 | ||
56 | In order to avoid unnecessary differences in output files (aiding binary | 56 | In order to avoid unnecessary differences in output files (aiding binary |
57 | reproducibility), the Poky distribution configuration | 57 | reproducibility), the Poky distribution configuration |
58 | (``DISTRO = "poky"``) now inherits the ``reproducible_build`` class by | 58 | (``DISTRO = "poky"``) now inherits the |
59 | default. | 59 | :ref:`reproducible-build <ref-classes-reproducible-build>` class |
60 | by default. | ||
60 | 61 | ||
61 | .. _migration-3.1-ptest-feature-impact: | 62 | .. _migration-3.1-ptest-feature-impact: |
62 | 63 | ||
diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst index 79af45ada5..381c5d1dd7 100644 --- a/documentation/ref-manual/classes.rst +++ b/documentation/ref-manual/classes.rst | |||
@@ -2209,6 +2209,18 @@ commit, and log. From the information, report files using a JSON format | |||
2209 | are created and stored in | 2209 | are created and stored in |
2210 | ``${``\ :term:`LOG_DIR`\ ``}/error-report``. | 2210 | ``${``\ :term:`LOG_DIR`\ ``}/error-report``. |
2211 | 2211 | ||
2212 | .. _ref-classes-reproducible-build: | ||
2213 | |||
2214 | ``reproducible_build.bbclass`` | ||
2215 | ============================== | ||
2216 | |||
2217 | The ``reproducible_build.bbclass`` class enables | ||
2218 | :ref:`test-manual/reproducible-builds:reproducible builds` by computing | ||
2219 | a :term:`SOURCE_DATE_EPOCH` value in each component's build environment, so | ||
2220 | that the build is independent from the time when the component was built. | ||
2221 | |||
2222 | Poky inherits this class by default since version 3.1. | ||
2223 | |||
2212 | .. _ref-classes-rm-work: | 2224 | .. _ref-classes-rm-work: |
2213 | 2225 | ||
2214 | ``rm_work.bbclass`` | 2226 | ``rm_work.bbclass`` |
diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index 9daf230a59..241d5aa2d5 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst | |||
@@ -6938,6 +6938,23 @@ system and gives an overview of their function and contents. | |||
6938 | You will see this variable referenced in the default values of | 6938 | You will see this variable referenced in the default values of |
6939 | ``FILES:${PN}-dev``. | 6939 | ``FILES:${PN}-dev``. |
6940 | 6940 | ||
6941 | :term:`SOURCE_DATE_EPOCH` | ||
6942 | This defines a date expressed in number of seconds since | ||
6943 | the UNIX EPOCH (01 Jan 1970 00:00:00 UTC), which is used by | ||
6944 | multiple build systems to force a timestamp in built binaries. | ||
6945 | Many upstream projects already support this variable. | ||
6946 | |||
6947 | You will find more details in the `official specifications | ||
6948 | <https://reproducible-builds.org/specs/source-date-epoch/>`__. | ||
6949 | |||
6950 | A value for each recipe is computed from the sources by | ||
6951 | the :ref:`reproducible-build <ref-classes-reproducible-build>` class. | ||
6952 | |||
6953 | If a recipe wishes to override the default behavior, it should set its | ||
6954 | own :term:`SOURCE_DATE_EPOCH` value:: | ||
6955 | |||
6956 | SOURCE_DATE_EPOCH = "1613559011" | ||
6957 | |||
6941 | :term:`SOURCE_MIRROR_FETCH` | 6958 | :term:`SOURCE_MIRROR_FETCH` |
6942 | When you are fetching files to create a mirror of sources (i.e. | 6959 | When you are fetching files to create a mirror of sources (i.e. |
6943 | creating a source mirror), setting :term:`SOURCE_MIRROR_FETCH` to "1" in | 6960 | creating a source mirror), setting :term:`SOURCE_MIRROR_FETCH` to "1" in |