From a5f43691301497cdd0244286cd75d227e1e91bd9 Mon Sep 17 00:00:00 2001 From: Sheldon Neuberger Date: Wed, 12 Oct 2022 18:34:04 -0700 Subject: [PATCH] androidenv: fix darwin ndk symlink Today the nix ndk package on darwin points to a directory that doesn't exist. This fix was added previously for linux but is needed on all platforms. --- .../mobile/androidenv/ndk-bundle/default.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/pkgs/development/mobile/androidenv/ndk-bundle/default.nix b/pkgs/development/mobile/androidenv/ndk-bundle/default.nix index ad729e24fb8a..f57a5c08422b 100644 --- a/pkgs/development/mobile/androidenv/ndk-bundle/default.nix +++ b/pkgs/development/mobile/androidenv/ndk-bundle/default.nix @@ -13,7 +13,7 @@ deployAndroidPackage { ++ lib.optionals stdenv.isLinux [ autoPatchelfHook ]; autoPatchelfIgnoreMissingDeps = true; buildInputs = lib.optionals (os == "linux") [ pkgs.zlib ]; - patchInstructions = lib.optionalString (os == "linux") ('' + patchInstructions = '' patchShebangs . # TODO: allow this stuff @@ -37,9 +37,11 @@ deployAndroidPackage { addAutoPatchelfSearchPath $out/libexec/android-sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/lib64 fi - find toolchains -type d -name bin -or -name lib64 | while read dir; do - autoPatchelf "$dir" - done + if [ -d toolchains/llvm/prebuilt/linux-x86_64 ]; then + find toolchains/llvm/prebuilt/linux-x86_64 -type d -name bin -or -name lib64 | while read dir; do + autoPatchelf "$dir" + done + fi # fix ineffective PROGDIR / MYNDKDIR determination for progname in ndk-build; do @@ -47,7 +49,9 @@ deployAndroidPackage { done # Patch executables - autoPatchelf prebuilt/linux-x86_64 + if [ -d prebuild/linux-x86_64 ]; then + autoPatchelf prebuilt/linux-x86_64 + fi # wrap for progname in ndk-build; do @@ -59,6 +63,6 @@ deployAndroidPackage { for progname in ndk-build; do ln -sf ../libexec/android-sdk/ndk-bundle/$progname $out/bin/$progname done - ''); + ''; noAuditTmpdir = true; # Audit script gets invoked by the build/ component in the path for the make standalone script }