Fix reproducibility

- See Issue 5 in Bugs.md
This commit is contained in:
Cagebreak Signing Key 1 2020-05-24 17:50:52 +02:00
commit eb86303e84
3 changed files with 26 additions and 2 deletions

14
Bugs.md
View file

@ -58,8 +58,8 @@ Steps to reproduce:
### Issue 4
github issue number: #1
Fixed: 1.1.0
* github issue number: #1
* Fixed: 1.1.0
This issue is code duplication in `parse.c`.
@ -79,3 +79,13 @@ PS: As a side effect, this would allow quirky statements such as
`bind dbind r hsplit` which would bind the d key to binding the r key to
split the output...
```
### Issue 5
* github issue number : N/A
* Fixed: 1.2.1
Cagebreak up to and including release 1.2.0 does not warn of irreproducibility
if a different compiler or compiler version is used. This makes cagebreak
difficult to reproduce.

View file

@ -164,6 +164,9 @@ decided on this compromise to allow flexibility and security. In general we will
adapt the versions to the packages available under arch linux at the time of
release.
There are reproducibility issues up to and including release `1.2.0`. See
`Issue 5` in [Bugs.md](Bugs.md).
#### Reproducible Build Instructions
All hashes and signatures are provided for the following build instructions.

View file

@ -217,6 +217,17 @@ foreach name, dep : cagebreak_dependencies_dict
endif
endforeach
reproducible_build_compiler = 'gcc'
reproducible_build_compiler_version = '10.1.0'
if cc.get_id() != reproducible_build_compiler
warning('The compiler "' + cc.get_id() + '" differs from the one used to generate to binary specified in the README section "Reproducible Builds" (' + reproducible_build_compiler + ').')
endif
if cc.version() != reproducible_build_compiler_version
warning('The version of ' + cc.get_id() + ' (' + cc.version() + ') differs from the one used to generate the binary specified in the README section "Reproducible Builds" ' + reproducible_build_compiler_version + '.')
endif
executable(
meson.project_name(),
cagebreak_main_file + cagebreak_sources + cagebreak_headers,