tsm-client: fix absolute symlinks, drop openssl dependency
`tsm-client` is delivered with its
own `lib{crypto,ssl}.so` implementation.
Beginning with version 8.1.9.1, those `.so`-files came with
absolute symlinks to `/opt/...` causing `autoPatchelf`
to abort with error messages of the form
> error: auto-patchelf could not satisfy dependency libssl.so.1.1
I was under the impression that a new dependency
got introduced and added `openssl` to `builtInputs`
in commit 5ad0ecb901
.
This fixed the build, but `tsm-client` no longer
linked against its own ssl implementation.
The commit at hand corrects that mistake:
It adds a small `preFixup` script that finds
and adapts absolute symlinks to `/opt/`,
so that `autoPatchelfHook` finds those
`so`-files again and sets RPATH properly.
This permits to drop `openssl` from the dependency list again.
This commit is contained in:
parent
941b891e26
commit
fca76c5810
2 changed files with 8 additions and 10 deletions
|
@ -6,7 +6,6 @@
|
||||||
, autoPatchelfHook
|
, autoPatchelfHook
|
||||||
, rpmextract
|
, rpmextract
|
||||||
, libxcrypt-legacy
|
, libxcrypt-legacy
|
||||||
, openssl
|
|
||||||
, zlib
|
, zlib
|
||||||
, lvm2 # LVM image backup and restore functions (optional)
|
, lvm2 # LVM image backup and restore functions (optional)
|
||||||
, acl # EXT2/EXT3/XFS ACL support (optional)
|
, acl # EXT2/EXT3/XFS ACL support (optional)
|
||||||
|
@ -118,7 +117,6 @@ let
|
||||||
];
|
];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
libxcrypt-legacy
|
libxcrypt-legacy
|
||||||
openssl
|
|
||||||
stdenv.cc.cc
|
stdenv.cc.cc
|
||||||
zlib
|
zlib
|
||||||
];
|
];
|
||||||
|
@ -146,7 +144,8 @@ let
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# Fix relative symlinks after `/usr` was moved up one level
|
# fix relative symlinks after `/usr` was moved up one level,
|
||||||
|
# fix absolute symlinks pointing to `/opt`
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
for link in $out/lib{,64}/* $out/bin/*
|
for link in $out/lib{,64}/* $out/bin/*
|
||||||
do
|
do
|
||||||
|
@ -158,6 +157,10 @@ let
|
||||||
fi
|
fi
|
||||||
ln --symbolic --force --no-target-directory "$out/$(cut -b 7- <<< "$target")" "$link"
|
ln --symbolic --force --no-target-directory "$out/$(cut -b 7- <<< "$target")" "$link"
|
||||||
done
|
done
|
||||||
|
for link in $(find $out -type l -lname '/opt/*')
|
||||||
|
do
|
||||||
|
ln --symbolic --force --no-target-directory "$out$(readlink "$link")" "$link"
|
||||||
|
done
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -7027,13 +7027,8 @@ with pkgs;
|
||||||
|
|
||||||
timeline = callPackage ../applications/office/timeline { };
|
timeline = callPackage ../applications/office/timeline { };
|
||||||
|
|
||||||
tsm-client = callPackage ../tools/backup/tsm-client {
|
tsm-client = callPackage ../tools/backup/tsm-client { };
|
||||||
openssl = openssl_1_1;
|
tsm-client-withGui = callPackage ../tools/backup/tsm-client { enableGui = true; };
|
||||||
};
|
|
||||||
tsm-client-withGui = callPackage ../tools/backup/tsm-client {
|
|
||||||
openssl = openssl_1_1;
|
|
||||||
enableGui = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
tracker = callPackage ../development/libraries/tracker { };
|
tracker = callPackage ../development/libraries/tracker { };
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue