nixpkgs/pkgs/build-support/setup-hooks
Andreas Rammhold 83f0bccc89 stdenv: add -frandom-seed to NIX_CFLAGS_COMPILE for reproducibility
This adds -frandom-seed to each compiler invocation in stdenv. The
object here is to make the compierl invocations produce the same output
every time they are called (for the same derivation). When the
-frandom-seed option is not set the compiler will use a combination of
random numbers (in GCC's case from /dev/urandom) and the durrent time to
produce a "random" input per file. This can (among other things) lead to
different ordering of symbols in the produced object files.

For reason of reproducibility we prefer having the same derivation
produce the exact same outputs. This is not a silver bullet but one way
to tame the compiler.
2020-11-01 19:40:12 +01:00
..
wrap-gapps-hook wrapGAppsHook: add comments 2020-07-24 00:36:12 +02:00
audit-blas.sh setup-hooks/audit-blas.sh: init 2020-04-17 16:24:25 -05:00
audit-tmpdir.sh common setup hooks: set -u robustness 2019-11-01 14:44:43 -04:00
auto-patchelf.sh add autoPatchelfIgnoreMissingDeps to auto-patchelf.sh 2020-06-22 10:41:35 +02:00
autoreconf.sh autoreconfHook: Simplify by avoiding findInputs 2017-09-14 13:16:12 -04:00
breakpoint-hook.sh breakpointHook: add for debugging failing builds 2018-10-25 10:19:41 +01:00
compress-man-pages.sh common setup hooks: set -u robustness 2019-11-01 14:44:43 -04:00
die.sh dieHook: Add die utility function 2017-08-08 00:17:56 -05:00
enable-coverage-instrumentation.sh enable-coverage-instrumentation.sh: Fix unbound variable error 2020-02-28 12:31:50 +01:00
find-xml-catalogs.sh find-xml-catalogues: Ensure XML_CATALOG_FILES is defined 2019-11-01 14:44:44 -04:00
fix-darwin-dylib-names.sh gcj: fix build on Darwin 2019-01-30 18:19:17 +00:00
gog-unpack.sh build-support gogUnpackHook: support for unpacking games from gog.com 2018-02-12 22:28:06 +08:00
install-shell-files.sh Re-Revert "Merge #101508: libraw: 0.20.0 -> 0.20.2" 2020-10-26 08:19:17 +01:00
keep-build-tree.sh Move generation of coverage reports from nixos/lib/testing to releaseTools 2014-03-03 13:57:08 +01:00
ld-is-cc-hook.sh ld-is-cc-hook: init 2017-12-19 01:45:42 +00:00
make-coverage-analysis-report.sh releaseTools.coverageAnalysis: Emit hydra-metrics 2015-07-30 18:06:33 +02:00
make-symlinks-relative.sh stdenv: make symlinks that refer to the same output relative 2020-01-15 09:26:40 +01:00
make-wrapper.sh makeWrapper: Remove unused extraFlagsArray feature 2019-09-25 09:23:09 -07:00
move-docs.sh move-docs.sh: Handle share/gtk-doc 2015-07-26 13:35:49 +02:00
move-lib64.sh common setup hooks: set -u robustness 2019-11-01 14:44:43 -04:00
move-sbin.sh common setup hooks: set -u robustness 2019-11-01 14:44:43 -04:00
move-systemd-user-units.sh hooks: add moveSystemdUserUnitsHook 2020-09-12 18:29:46 +02:00
multiple-outputs.sh stdenv: fix backward multiple outputs conditional 2020-06-29 13:56:27 +00:00
patch-shebangs.sh patch-shebangs.sh: Fix error messages to go to stderr, not '0' file. 2020-03-20 17:08:10 -07:00
prune-libtool-files.sh common setup hooks: set -u robustness 2019-11-01 14:44:43 -04:00
reproducible-builds.sh stdenv: add -frandom-seed to NIX_CFLAGS_COMPILE for reproducibility 2020-11-01 19:40:12 +01:00
role.bash *-wrapper; Switch from infixSalt to suffixSalt 2020-05-12 00:44:44 -04:00
separate-debug-info.sh misc setup-hooks: Use env vars to refer to binutils programs 2017-12-13 16:08:18 -05:00
set-java-classpath.sh java classpath hook: allow unbound $CLASSPATH 2019-11-24 23:30:05 -05:00
set-source-date-epoch-to-latest.sh set-source-date-epoch-to-latest: fix warning 2018-11-29 09:49:08 +01:00
setup-debug-info-dirs.sh treewide: Don't use envHook anymore 2017-12-30 22:04:22 -05:00
shorten-perl-shebang.sh add shortenPerlShebang function 2019-08-18 16:22:23 -07:00
strip.sh common setup hooks: set -u robustness 2019-11-01 14:44:43 -04:00
update-autotools-gnu-config-scripts.sh treewide: Make still dont* Variables are optional in most cases 2019-11-01 14:44:44 -04:00
use-old-cxx-abi.sh useOldCXXAbi: Change into a setup hook 2016-04-01 13:36:59 +02:00
validate-pkg-config.sh validatePkgConfig: fix variable scope 2020-10-18 14:00:05 +02:00
win-dll-link.sh misc setup-hooks: Use env vars to refer to binutils programs 2017-12-13 16:08:18 -05:00