nixpkgs/pkgs/build-support/setup-hooks
Lin Yinfeng bedc267a78
autoPatchelfHook: fix precise dependency ignorance
This commit fixes precise dependency ignorance by converting the
environment variable `autoPatchelfIgnoreMissingDeps` into a bash array
`ignoreMissingDepsArray`, passing `"${ignoreMissingDepsArray[@]}"`
instead of `"${autoPatchelfIgnoreMissingDeps[@]}"` to the python
script.

The original implementation does not work when
`autoPatchelfIgnoreMissingDeps` contains multiple dependency names.
Because it mistakenly passes `"${autoPatchelfIgnoreMissingDeps[@]}"`
to the python script. According to the Nix manual
(https://nixos.org/manual/nix/stable/expressions/derivations.html),
lists of strings are concatenated into whitespace-separated strings,
then passed to the builder as environment variables. So, if
`autoPatchelfIgnoreMissingDeps = [ "dep1" "dep2" "dep3" ]`,
`"${autoPatchelfIgnoreMissingDeps[@]}"` will be expanded to a single
argument `"dep1 dep2 dep3"`, which is not the intended behavior,
because the python script takes the long argument as a dependency
name.

With this commit, `"${ignoreMissingDepsArray[@]}"` will be expanded to
three arguments `"dep1" "dep2" "dep3"` arguments as expected, fixing
the issue.
2022-04-15 10:35:11 +08:00
..
wrap-gapps-hook wrapGAppsNoGuiHook: init 2020-11-26 14:06:07 +01: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.py autoPatchelfHook: more precise dependency ignorance 2022-04-11 01:28:55 +00:00
auto-patchelf.sh autoPatchelfHook: fix precise dependency ignorance 2022-04-15 10:35:11 +08:00
autoreconf.sh stdenv: conservative undefined variables 2021-08-03 12:43:34 +09:00
breakpoint-hook.sh breakpointHook: add for debugging failing builds 2018-10-25 10:19:41 +01:00
canonicalize-jars.sh canonicalize-jars-hook: add 2021-10-27 13:21:27 +03:00
compress-man-pages.sh setup-hooks: compress-man-pages.sh: Do not attempt to compress .xz files 2021-08-19 17:13:05 -04:00
copy-desktop-items.sh copyDesktopItems: Use variable for repeated path 2022-04-07 11:04:11 +00:00
desktop-to-darwin-bundle.sh desktopToDarwinBundle: Fall back to scaling available 2022-03-21 14:20:03 +01: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 fixDarwinDylibNames: set name of install_name_tool 2021-05-17 00:27:01 +09: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 Recover the complicated situation after my bad merge 2020-10-26 09:01:04 +01:00
keep-build-tree.sh
ld-is-cc-hook.sh ld-is-cc-hook: init 2017-12-19 01:45:42 +00:00
make-binary-wrapper.sh makeBinaryWrapper: create destination directory 2021-12-21 18:22:49 +01:00
make-coverage-analysis-report.sh
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: Don't glob in prefix/suffix 2022-02-12 11:03:32 +01:00
move-docs.sh Revert "Merge remote-tracking branch 'origin/python-unstable' into staging-next" 2021-09-05 15:02:25 +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 stdenv/patchShebangs: fix off by one reading old interpreter 2021-02-09 13:05:38 +09:00
prune-libtool-files.sh common setup hooks: set -u robustness 2019-11-01 14:44:43 -04:00
reproducible-builds.sh stdenv: conservative undefined variables 2021-08-03 12:43:34 +09:00
role.bash pkgs/build-support: Redirect to standard error rather than file "2" 2021-11-11 18:14:21 +13:00
separate-debug-info.sh separateDebugInfo: skip files objcopy can't read 2021-11-21 21:44:27 +00: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 misc: Replace tab indentation with spaces 2021-11-14 16:04:46 +13:00
strip.sh stdenv: move --enable-deterministic-archives flag into GNU wrapper 2021-09-18 15:11:17 +02: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 cross-compilation 2021-10-23 15:50:21 -07:00
win-dll-link.sh misc setup-hooks: Use env vars to refer to binutils programs 2017-12-13 16:08:18 -05:00