HomePhabricator

build: Makes rcc output always deterministic

Description

build: Makes rcc output always deterministic

Summary:
The Qt Resource Compiler (rcc) has a command-line option
--format-version which has the default value 2.

The only difference from --format-version 1 is adding a last modified
timestamp to the output file. That, in turn, forces us to use
QT_RCC_SOURCE_DATE_OVERRIDE=1 to get deterministic builds.

This change makes rcc output always deterministic by using
--format-version 1 option that makes usage of the
QT_RCC_SOURCE_DATE_OVERRIDE needless. Also it improves interaction
with ccache.

Co-authored-by: fanquake <fanquake@gmail.com>

This is a backport of core#21654

Depends on D13870

Test Plan: run gitian builds and check determinism

Reviewers: #bitcoin_abc, Fabien

Reviewed By: #bitcoin_abc, Fabien

Differential Revision: https://reviews.bitcoinabc.org/D13871

Details

Provenance
Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>Authored on Apr 11 2021, 12:42
PiRKCommitted on May 22 2023, 05:52
PiRKPushed on May 22 2023, 05:52
Reviewer
Restricted Project
Differential Revision
D13871: build: Makes rcc output always deterministic
Parents
rABC765295d784d6: build, qt, refactor: Drop sed commands for win32-g++/qmake.conf
Branches
Unknown
Tags
Unknown

Event Timeline