summary refs log tree commit diff
path: root/pkgs/development/mobile/androidenv/androidndk.nix
blob: cbcff8178e32e31f6e32f324d9c049f1c7ce094a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{ stdenv, fetchurl, zlib, ncurses
}:

stdenv.mkDerivation rec {
  name = "android-ndk-r9d";

  src = if stdenv.system == "i686-linux"
    then fetchurl {
      url = "http://dl.google.com/android/ndk/${name}-linux-x86.tar.bz2";
      md5 = "6c1d7d99f55f0c17ecbcf81ba0eb201f";
    }
    else if stdenv.system == "x86_64-linux" then fetchurl {
      url = "http://dl.google.com/android/ndk/${name}-linux-x86_64.tar.bz2";
      md5 = "c7c775ab3342965408d20fd18e71aa45";
    }
    else throw "platform not ${stdenv.system} supported!";

  phases = "installPhase";

  installPhase = ''
    set -x
    mkdir -pv $out
    tar xf $src
    mv */* $out
    find $out \( \
        \( -type f -a -name "*.so*" \) -o \
        \( -type f -a -perm +0100 \) \
        \) -exec patchelf --set-interpreter ${stdenv.gcc.libc}/lib/ld-*so.? \
        --set-rpath ${zlib}/lib:${ncurses}/lib {} \;
  '';
}