libghostty-vt: fix linker tests for darwin
parent
d17e5517c7
commit
7123bddc18
|
|
@ -103,14 +103,25 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
--replace-fail "$out" "$dev"
|
--replace-fail "$out" "$dev"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.tests = {
|
passthru.tests = let
|
||||||
|
sharedExt = stdenv.hostPlatform.extensions.sharedLibrary;
|
||||||
|
sharedLibName = version:
|
||||||
|
if stdenv.hostPlatform.isDarwin
|
||||||
|
then "libghostty-vt.${version}${sharedExt}"
|
||||||
|
else "libghostty-vt${sharedExt}.${version}";
|
||||||
|
linkCheck = bin: pat:
|
||||||
|
if stdenv.hostPlatform.isDarwin
|
||||||
|
then ''otool -L "${bin}" | grep -q ${pat}''
|
||||||
|
else ''ldd "${bin}" 2>/dev/null | grep -q ${pat}'';
|
||||||
|
in {
|
||||||
sanity-check = let
|
sanity-check = let
|
||||||
version = "${lib.versions.major finalAttrs.version}.${lib.versions.minor finalAttrs.version}.${lib.versions.patch finalAttrs.version}";
|
version = "${lib.versions.major finalAttrs.version}.${lib.versions.minor finalAttrs.version}.${lib.versions.patch finalAttrs.version}";
|
||||||
in
|
in
|
||||||
runCommand "sanity-check" {} (builtins.concatStringsSep "\n" [
|
runCommand "sanity-check" {} (builtins.concatStringsSep "\n" [
|
||||||
''
|
''
|
||||||
${lib.getExe' stdenv.cc "nm"} "${finalAttrs.finalPackage}/lib/libghostty-vt.so.${version}" | grep -q 'T ghostty_terminal_new'
|
set +o pipefail
|
||||||
${lib.getExe' stdenv.cc "nm"} "${finalAttrs.finalPackage.dev}/lib/libghostty-vt.a" | grep -q 'T ghostty_terminal_new'
|
${lib.getExe' stdenv.cc "nm"} "${finalAttrs.finalPackage}/lib/${sharedLibName version}" | grep -qE 'T _?ghostty_terminal_new'
|
||||||
|
${lib.getExe' stdenv.cc "nm"} "${finalAttrs.finalPackage.dev}/lib/libghostty-vt.a" | grep -qE 'T _?ghostty_terminal_new'
|
||||||
''
|
''
|
||||||
(
|
(
|
||||||
lib.optionalString simd
|
lib.optionalString simd
|
||||||
|
|
@ -167,7 +178,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
then "yes"
|
then "yes"
|
||||||
else "no"
|
else "no"
|
||||||
}"
|
}"
|
||||||
ldd "$out/bin/test" 2>/dev/null | grep -q libghostty-vt
|
${linkCheck "$out/bin/test" "libghostty-vt"}
|
||||||
|
|
||||||
runHook postInstallCheckHooks
|
runHook postInstallCheckHooks
|
||||||
'';
|
'';
|
||||||
|
|
@ -205,7 +216,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
then "yes"
|
then "yes"
|
||||||
else "no"
|
else "no"
|
||||||
}"
|
}"
|
||||||
! ldd "$out/bin/test" 2>/dev/null | grep -q libghostty-vt
|
! ${linkCheck "$out/bin/test" "libghostty-vt"}
|
||||||
|
|
||||||
runHook postInstallCheckHooks
|
runHook postInstallCheckHooks
|
||||||
'';
|
'';
|
||||||
|
|
@ -240,7 +251,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
installCheckPhase = ''
|
installCheckPhase = ''
|
||||||
runHook preInstallCheckHooks
|
runHook preInstallCheckHooks
|
||||||
|
|
||||||
ldd "$out/bin/test" 2>/dev/null | grep -q libghostty-vt
|
${linkCheck "$out/bin/test" "libghostty-vt"}
|
||||||
|
|
||||||
runHook postInstallCheckHooks
|
runHook postInstallCheckHooks
|
||||||
'';
|
'';
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue