uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
40
pkgs/build-support/setup-hooks/fix-darwin-dylib-names.sh
Normal file
40
pkgs/build-support/setup-hooks/fix-darwin-dylib-names.sh
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# On macOS, binaries refer to dynamic library dependencies using
|
||||
# either relative paths (e.g. "libicudata.dylib", searched relative to
|
||||
# $DYLD_LIBRARY_PATH) or absolute paths
|
||||
# (e.g. "/nix/store/.../lib/libicudata.dylib"). In Nix, the latter is
|
||||
# preferred since it allows programs to just work. When linking
|
||||
# against a library (e.g. "-licudata"), the linker uses the install
|
||||
# name embedded in the dylib (which can be shown using "otool -D").
|
||||
# Most packages create dylibs with absolute install names, but some do
|
||||
# not. This setup hook fixes dylibs by setting their install names to
|
||||
# their absolute path (using "install_name_tool -id"). It also
|
||||
# rewrites references in other dylibs to absolute paths.
|
||||
|
||||
fixupOutputHooks+=('fixDarwinDylibNamesIn $prefix')
|
||||
|
||||
fixDarwinDylibNames() {
|
||||
local flags=()
|
||||
local old_id
|
||||
|
||||
for fn in "$@"; do
|
||||
flags+=(-change "$(basename "$fn")" "$fn")
|
||||
done
|
||||
|
||||
for fn in "$@"; do
|
||||
if [ -L "$fn" ]; then continue; fi
|
||||
echo "$fn: fixing dylib"
|
||||
int_out=$(@targetPrefix@install_name_tool -id "$fn" "${flags[@]}" "$fn" 2>&1)
|
||||
result=$?
|
||||
if [ "$result" -ne 0 ] &&
|
||||
! grep "shared library stub file and can't be changed" <<< "$out"
|
||||
then
|
||||
echo "$int_out" >&2
|
||||
exit "$result"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
fixDarwinDylibNamesIn() {
|
||||
local dir="$1"
|
||||
fixDarwinDylibNames $(find "$dir" -name "*.dylib")
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue