Upstream insists on not allowing bindir and other dir options
outside of prefix for some reason:
https://github.com/mesonbuild/meson/issues/2561
We remove the check so multiple outputs can work sanely.
In common distributions, RPATH is only needed for internal libraries so
meson removes everything else. With Nix, the locations of libraries
are not as predictable, therefore we need to keep them in the RPATH. [1]
Previously we have just kept the RPATH produced by the linker, patching
meson not to remove it. This deprived us of potentially replacing it
with install_rpath provided by project so we had to re-add it manually,
and also introduced a vulnerability of keeping build paths in RPATH.
This commit restores the clean-up but modifies it so the items starting
with /nix/store are retained.
This should be relatively safe since the store is immutable, however,
there might be some unwanted retainment of build_rpath [2] if it contains
paths from Nix store.
[1]: https://github.com/NixOS/nixpkgs/issues/31222#issuecomment-365811634
[2]: http://mesonbuild.com/Release-notes-for-0-42-0.html#added-build_rpath-keyword-argument
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks --help` got 0 exit code
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks help` got 0 exit code
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks --version` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks --help` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks help` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-5.1 --help` got 0 exit code
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-5.1 help` got 0 exit code
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-5.1 --version` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-5.1 --help` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-5.1 help` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin --help` got 0 exit code
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin help` got 0 exit code
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin --version` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin --help` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin help` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin-5.1 --help` got 0 exit code
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin-5.1 help` got 0 exit code
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin-5.1 --version` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin-5.1 --help` and found version 2.4.4
- ran `/nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4/bin/luarocks-admin-5.1 help` and found version 2.4.4
- found 2.4.4 with grep in /nix/store/az3lanws83s5q26z1s03rx6z6yxphjbq-luarocks-2.4.4
- directory tree listing: https://gist.github.com/cb3889fda28e8066faebd32a433c69d2
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/i4ipx4vd247inysxw0ygp7smcfx5yf05-antlr-4.7.1/bin/grun -h` got 0 exit code
- ran `/nix/store/i4ipx4vd247inysxw0ygp7smcfx5yf05-antlr-4.7.1/bin/grun --help` got 0 exit code
- ran `/nix/store/i4ipx4vd247inysxw0ygp7smcfx5yf05-antlr-4.7.1/bin/grun help` got 0 exit code
- found 4.7.1 with grep in /nix/store/i4ipx4vd247inysxw0ygp7smcfx5yf05-antlr-4.7.1
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 1.10.2 with grep in /nix/store/ymhiik4c7604dxzlnvrrzj88d2lkcy16-ant-1.10.2
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3/bin/.mkdocs-wrapped -h` got 0 exit code
- ran `/nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3/bin/.mkdocs-wrapped --help` got 0 exit code
- ran `/nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3/bin/.mkdocs-wrapped -V` and found version 0.17.3
- ran `/nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3/bin/.mkdocs-wrapped --version` and found version 0.17.3
- ran `/nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3/bin/mkdocs -h` got 0 exit code
- ran `/nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3/bin/mkdocs --help` got 0 exit code
- ran `/nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3/bin/mkdocs -V` and found version 0.17.3
- ran `/nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3/bin/mkdocs --version` and found version 0.17.3
- found 0.17.3 with grep in /nix/store/wy5434b824p55fr8x67vz8q8ph9g65kn-mkdocs-0.17.3
- directory tree listing: https://gist.github.com/b9a97908c199575f84016b19365ae126
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/jw8q07zqpmpzny6qz3zx2slxjng7lf9i-sassc-3.5.0/bin/sassc -h` got 0 exit code
- ran `/nix/store/jw8q07zqpmpzny6qz3zx2slxjng7lf9i-sassc-3.5.0/bin/sassc --help` got 0 exit code
- ran `/nix/store/jw8q07zqpmpzny6qz3zx2slxjng7lf9i-sassc-3.5.0/bin/sassc -v` and found version 3.5.0
- ran `/nix/store/jw8q07zqpmpzny6qz3zx2slxjng7lf9i-sassc-3.5.0/bin/sassc --version` and found version 3.5.0
- ran `/nix/store/jw8q07zqpmpzny6qz3zx2slxjng7lf9i-sassc-3.5.0/bin/sassc -h` and found version 3.5.0
- ran `/nix/store/jw8q07zqpmpzny6qz3zx2slxjng7lf9i-sassc-3.5.0/bin/sassc --help` and found version 3.5.0
- found 3.5.0 with grep in /nix/store/jw8q07zqpmpzny6qz3zx2slxjng7lf9i-sassc-3.5.0
- found 3.5.0 in filename of file in /nix/store/jw8q07zqpmpzny6qz3zx2slxjng7lf9i-sassc-3.5.0
Negative reasoning like `allBut` is a bad idea with an open world of
platforms. Concretely, if we add a new, quite different sort of
platform, existing packages with `allBut` will claim they work on it
even though they probably won't.
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/igt_stats -h` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/igt_stats --help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/igt_stats help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_reg --help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_reg help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_forcewaked -h` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_firmware_decode help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_gpu_top -h` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_gpu_top -h` and found version 1.22
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_guc_logger -h` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_guc_logger --help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_opregion_decode -h` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_opregion_decode --help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_dump_decode help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_error_decode help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_dp_compliance -h` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_dp_compliance --help` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_dp_compliance -h` and found version 1.22
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_dp_compliance --help` and found version 1.22
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_aubdump -h` got 0 exit code
- ran `/nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22/bin/intel_aubdump --help` got 0 exit code
- found 1.22 with grep in /nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22
- found 1.22 in filename of file in /nix/store/xk5lsqw4vfa5ndqvsg23w6jblxx0js78-intel-gpu-tools-1.22