Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add an option to build the soundfont reproducibly #19

Merged
merged 1 commit into from
Mar 25, 2018

Conversation

mirabilos
Copy link
Contributor

cf. https://wiki.debian.org/ReproducibleBuilds/OggSerialNumbers

std::numeric_limits<qint64>::max() is used as flag to keep the previous behaviour of srand(time(NULL)); and using rand() as the stream serial number, as it’s outside of the range of an int. Otherwise, the integer argument is used directly as the stream serial number.

I expect most people to use -S 0 when converting their soundfonts.

With this patch applied, with exact same options (using the new -S) and input, the output .sf3 file is byte-for-byte identical no matter when it is built.

@mirabilos
Copy link
Contributor Author

I’ve chosen to use #20 for Debian for now, so I’d recommend to apply that one instead of this one.

@lasconic lasconic merged commit 991399d into musescore:master Mar 25, 2018
@mirabilos mirabilos deleted the reproducible-builds branch March 25, 2018 15:49
@mirabilos mirabilos restored the reproducible-builds branch March 25, 2018 17:30
@mirabilos mirabilos deleted the reproducible-builds branch March 25, 2018 17:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants