summary refs log tree commit diff
path: root/lib/systems
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2018-05-11 17:35:56 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2018-05-11 18:41:55 -0400
commite3f6c6d18d8ffbb4f9462adbf6648500b9514bbb (patch)
tree3a10630214000bdfca5eaf435b35c56f4a583fc0 /lib/systems
parent341794a4b9e8e88e7a346e6972797be134688e1d (diff)
downloadnixlib-e3f6c6d18d8ffbb4f9462adbf6648500b9514bbb.tar
nixlib-e3f6c6d18d8ffbb4f9462adbf6648500b9514bbb.tar.gz
nixlib-e3f6c6d18d8ffbb4f9462adbf6648500b9514bbb.tar.bz2
nixlib-e3f6c6d18d8ffbb4f9462adbf6648500b9514bbb.tar.lz
nixlib-e3f6c6d18d8ffbb4f9462adbf6648500b9514bbb.tar.xz
nixlib-e3f6c6d18d8ffbb4f9462adbf6648500b9514bbb.tar.zst
nixlib-e3f6c6d18d8ffbb4f9462adbf6648500b9514bbb.zip
lib: Add 32-bit Android platforms
Diffstat (limited to 'lib/systems')
-rw-r--r--lib/systems/examples.nix12
-rw-r--r--lib/systems/platforms.nix21
2 files changed, 33 insertions, 0 deletions
diff --git a/lib/systems/examples.nix b/lib/systems/examples.nix
index 05c788ddd1ae..87da31f3137f 100644
--- a/lib/systems/examples.nix
+++ b/lib/systems/examples.nix
@@ -29,6 +29,18 @@ rec {
     platform = platforms.aarch64-multiplatform;
   };
 
+  armv5te-android-prebuilt = rec {
+    config = "armv5tel-unknown-linux-androideabi";
+    platform = platforms.armv5te-android;
+    useAndroidPrebuilt = true;
+  };
+
+  armv7a-android-prebuilt = rec {
+    config = "armv7a-unknown-linux-androideabi";
+    platform = platforms.armv7a-android;
+    useAndroidPrebuilt = true;
+  };
+
   aarch64-android-prebuilt = rec {
     config = "aarch64-unknown-linux-android";
     platform = platforms.aarch64-multiplatform;
diff --git a/lib/systems/platforms.nix b/lib/systems/platforms.nix
index cceaecf01843..5becaf581a45 100644
--- a/lib/systems/platforms.nix
+++ b/lib/systems/platforms.nix
@@ -384,6 +384,27 @@ rec {
     kernelTarget = "zImage";
   };
 
+  # https://developer.android.com/ndk/guides/abis#armeabi
+  armv5te-android = {
+    name = "armeabi";
+    gcc = {
+      arch = "armv5te";
+      float = "soft";
+      float-abi = "soft";
+    };
+  };
+
+  # https://developer.android.com/ndk/guides/abis#v7a
+  armv7a-android =  {
+    name = "armeabi-v7a";
+    gcc = {
+      arch = "armv7-a";
+      float = "hard";
+      float-abi = "softfp";
+      fpu = "vfpv3-d16";
+    };
+  };
+
   armv7l-hf-multiplatform = {
     name = "armv7l-hf-multiplatform";
     kernelMajor = "2.6"; # Using "2.6" enables 2.6 kernel syscalls in glibc.