Emily 529489ffd3 androidenv.androidPkgs.emulator: drop unused LLVM library
None of the libraries reference this.
2025-08-18 15:56:40 +01:00

99 lines
2.3 KiB
Nix

{
deployAndroidPackage,
lib,
stdenv,
package,
os,
arch,
autoPatchelfHook,
makeWrapper,
pkgs,
pkgsi686Linux,
postInstall,
meta,
}:
deployAndroidPackage {
inherit package os arch;
nativeBuildInputs = [ makeWrapper ] ++ lib.optionals (os == "linux") [ autoPatchelfHook ];
buildInputs =
lib.optionals (os == "linux") (
with pkgs;
[
glibc
libcxx
libGL
libpulseaudio
libtiff
libuuid
zlib
libbsd
ncurses5
libdrm
stdenv.cc.cc
expat
freetype
nss
nspr
alsa-lib
waylandpp.lib
]
)
++ (with pkgs.xorg; [
libX11
libXext
libXdamage
libXfixes
libxcb
libXcomposite
libXcursor
libXi
libXrender
libXtst
libICE
libSM
libxkbfile
libxshmfence
])
++ lib.optional (os == "linux" && stdenv.isx86_64) pkgsi686Linux.glibc;
patchInstructions =
(lib.optionalString (os == "linux") ''
addAutoPatchelfSearchPath $packageBaseDir/lib
addAutoPatchelfSearchPath $packageBaseDir/lib64
addAutoPatchelfSearchPath $packageBaseDir/lib64/qt/lib
# autoPatchelf is not detecting libuuid :(
addAutoPatchelfSearchPath ${pkgs.libuuid.out}/lib
# This library is linked against a version of libtiff that nixpkgs doesn't have
for file in $out/libexec/android-sdk/emulator/*/qt/plugins/imageformats/libqtiffAndroidEmu.so; do
patchelf --replace-needed libtiff.so.5 libtiff.so "$file" || true
done
autoPatchelf $out
# Wrap emulator so that it can load required libraries at runtime
wrapProgram $out/libexec/android-sdk/emulator/emulator \
--prefix LD_LIBRARY_PATH : ${
lib.makeLibraryPath [
pkgs.dbus
pkgs.systemd
]
} \
--set QT_XKB_CONFIG_ROOT ${pkgs.xkeyboard_config}/share/X11/xkb \
--set QTCOMPOSE ${pkgs.xorg.libX11.out}/share/X11/locale
'')
+ ''
mkdir -p $out/bin
cd $out/bin
find $out/libexec/android-sdk/emulator -type f -executable -mindepth 1 -maxdepth 1 | while read i; do
ln -s $i
done
cd $out/libexec/android-sdk
${postInstall}
'';
dontMoveLib64 = true;
inherit meta;
}