| Summary: |
bzip2-ptest: improve reproducible build |
| Product: |
[Build System, Metadata & Runtime] OE-Core
|
Reporter: |
Juro Bystricky <juro.bystricky> |
| Component: |
core | Assignee: |
Cinly Ooi <cinly.ooi> |
| Status: |
RESOLVED
FIXED
|
QA Contact: |
|
| Severity: |
enhancement
|
|
|
| Priority: |
Medium
|
CC: |
meta.mr.watcher, meta.watcher, sgw
|
| Version: |
2.4 | |
|
| Target Milestone: |
2.5 M1 | |
|
| Hardware: |
x86 | |
|
| OS: |
Multiple | |
|
| Whiteboard: |
|
|
OS type for building Yocto:
|
---
|
Type of Regression:
|
---
|
|
Verified:
|
|
Documentation change:
|
No (bug/feature does not impact docs)
|
| Attachments: |
|
Created attachment 3781 [details] diffoscope output of two bzip2-ptest debian packages bzip2-ptest requires Makefile. This file contains numerous references to the host build system (see the attached diffoscope output). These are harmless and also unneeded, as the ptest runs this: $ make -k runtest and the "runtest" target in the Makefile is: runtest: ./bzip2 -1 < sample1.ref > sample1.rb2 ./bzip2 -2 < sample2.ref > sample2.rb2 ./bzip2 -3 < sample3.ref > sample3.rb2 ./bzip2 -d < sample1.bz2 > sample1.tst ./bzip2 -d < sample2.bz2 > sample2.tst ./bzip2 -ds < sample3.bz2 > sample3.tst @if cmp sample1.bz2 sample1.rb2; then echo "PASS: sample1 compress";\ else echo "FAIL: sample1 compress"; fi @if cmp sample2.bz2 sample2.rb2; then echo "PASS: sample2 compress";\ else echo "FAIL: sample2 compress"; fi @if cmp sample3.bz2 sample3.rb2; then echo "PASS: sample3 compress";\ else echo "FAIL: sample3 compress"; fi @if cmp sample1.tst sample1.ref; then echo "PASS: sample1 decompress";\ else echo "FAIL: sample1 decompress"; fi @if cmp sample2.tst sample2.ref; then echo "PASS: sample2 decompress";\ else echo "FAIL: sample2 decompress"; fi @if cmp sample3.tst sample3.ref; then echo "PASS: sample3 decompress";\ else echo "FAIL: sample3 decompress"; fi The references to the host build system prevent the bzip2-ptest package from being binary reproducible. One option is to sanitize all host references, the other (probably better) is to create/install only the relevant part of the Makefile