summary refs log tree commit diff
path: root/pkgs/top-level
diff options
context:
space:
mode:
authorJohn Ericson <Ericson2314@yahoo.com>2018-02-27 18:21:55 -0500
committerGitHub <noreply@github.com>2018-02-27 18:21:55 -0500
commitd31fb808af6273afd076cc6333fd0d7f28a675de (patch)
treeeddfd7f0fa0e2e3cf06bc60c8578cb4dcb4ddc17 /pkgs/top-level
parent822526f09e91f65081bc780803f23cc0997ff4ab (diff)
parent3a672cb7d2194f859bf8b576359488ddb088aca5 (diff)
downloadnixlib-d31fb808af6273afd076cc6333fd0d7f28a675de.tar
nixlib-d31fb808af6273afd076cc6333fd0d7f28a675de.tar.gz
nixlib-d31fb808af6273afd076cc6333fd0d7f28a675de.tar.bz2
nixlib-d31fb808af6273afd076cc6333fd0d7f28a675de.tar.lz
nixlib-d31fb808af6273afd076cc6333fd0d7f28a675de.tar.xz
nixlib-d31fb808af6273afd076cc6333fd0d7f28a675de.tar.zst
nixlib-d31fb808af6273afd076cc6333fd0d7f28a675de.zip
Merge pull request #35451 from obsidiansystems/android-cross
Android Cross compilation
Diffstat (limited to 'pkgs/top-level')
-rw-r--r--pkgs/top-level/all-packages.nix5
-rw-r--r--pkgs/top-level/release-cross.nix7
2 files changed, 10 insertions, 2 deletions
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index bfc3c6fd8c2a..3737ff1852aa 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8332,6 +8332,10 @@ with pkgs;
 
   libopcodes = callPackage ../development/libraries/libopcodes { };
 
+  # TODO(@Ericson2314): Build bionic libc from source
+  bionic = assert hostPlatform.useAndroidPrebuilt;
+    androidenv.androidndkPkgs.libraries;
+
   bobcat = callPackage ../development/libraries/bobcat { };
 
   boehmgc = callPackage ../development/libraries/boehm-gc { };
@@ -8868,6 +8872,7 @@ with pkgs;
     # libc is hackily often used from the previous stage. This `or`
     # hack fixes the hack, *sigh*.
     /**/ if name == "glibc" then targetPackages.glibcCross or glibcCross
+    else if name == "bionic" then targetPackages.bionic
     else if name == "uclibc" then uclibcCross
     else if name == "musl" then targetPackages.muslCross or muslCross
     else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64
diff --git a/pkgs/top-level/release-cross.nix b/pkgs/top-level/release-cross.nix
index be6dd89bf7dd..ef99dbd619e4 100644
--- a/pkgs/top-level/release-cross.nix
+++ b/pkgs/top-level/release-cross.nix
@@ -93,6 +93,7 @@ in
     mapTestEqual = lib.mapAttrsRecursive testEqual;
 
   in mapTestEqual {
+    androidndk = nativePlatforms;
     boehmgc = nativePlatforms;
     libffi = nativePlatforms;
     libiconv = nativePlatforms;
@@ -125,12 +126,14 @@ in
   rpi = mapTestOnCross lib.systems.examples.raspberryPi rpiCommon;
   rpi-musl = mapTestOnCross lib.systems.examples.muslpi rpiCommon;
 
-  /* Linux on Aarch64 (TODO make android for real)  */
-  android = mapTestOnCross lib.systems.examples.aarch64-multiplatform linuxCommon;
   aarch64-musl = mapTestOnCross lib.systems.examples.aarch64-multiplatform-musl linuxCommon;
 
   x86_64-musl = mapTestOnCross lib.systems.examples.musl64 linuxCommon;
 
+  /* Linux on Aarch64 */
+  android64 = mapTestOnCross lib.systems.examples.aarch64-android-prebuilt (linuxCommon // {
+  });
+
   /* Cross-built bootstrap tools for every supported platform */
   bootstrapTools = let
     tools = import ../stdenv/linux/make-bootstrap-tools-cross.nix { system = "x86_64-linux"; };