Separate androidndkpkgs from androidenv

This commit is contained in:
Sander van der Burg 2018-11-28 22:14:43 +01:00
parent de9c97c0c8
commit 2757ddb182
5 changed files with 42 additions and 33 deletions

View file

@ -0,0 +1,36 @@
{ androidenv, buildPackages, pkgs, targetPackages
, includeSources ? true, licenseAccepted ? false
}:
rec {
"17c" = import ./androidndk-pkgs.nix {
inherit (buildPackages)
makeWrapper;
inherit (pkgs)
lib stdenv
runCommand wrapBintoolsWith wrapCCWith;
# buildPackages.foo rather than buildPackages.buildPackages.foo would work,
# but for splicing messing up on infinite recursion for the variants we
# *dont't* use. Using this workaround, but also making a test to ensure
# these two really are the same.
buildAndroidndk = buildPackages.buildPackages.androidenv.androidndk_17c;
androidndk = androidenv.androidndk_17c;
targetAndroidndkPkgs = targetPackages.androidndkPkgs_17c;
};
"10e" = import ./androidndk-pkgs.nix {
inherit (buildPackages)
makeWrapper;
inherit (pkgs)
lib stdenv
runCommand wrapBintoolsWith wrapCCWith;
# buildPackages.foo rather than buildPackages.buildPackages.foo would work,
# but for splicing messing up on infinite recursion for the variants we
# *dont't* use. Using this workaround, but also making a test to ensure
# these two really are the same.
buildAndroidndk = buildPackages.buildPackages.androidenv.androidndk_10e;
androidndk = androidenv.androidndk_10e;
targetAndroidndkPkgs = targetPackages.androidndkPkgs_10e;
};
}

View file

@ -1,4 +1,4 @@
{ buildPackages, pkgs, pkgs_i686, targetPackages
{ pkgs, pkgs_i686, buildPackages
, includeSources ? true, licenseAccepted ? false
}:
@ -341,37 +341,6 @@ rec {
inherit androidsdk;
};
androidndkPkgs_17c = import ./androidndk-pkgs.nix {
inherit (buildPackages)
makeWrapper;
inherit (pkgs)
lib stdenv
runCommand wrapBintoolsWith wrapCCWith;
# buildPackages.foo rather than buildPackages.buildPackages.foo would work,
# but for splicing messing up on infinite recursion for the variants we
# *dont't* use. Using this workaround, but also making a test to ensure
# these two really are the same.
buildAndroidndk = buildPackages.buildPackages.androidenv.androidndk_17c;
androidndk = androidndk_17c;
targetAndroidndkPkgs = targetPackages.androidenv.androidndkPkgs_17c;
};
androidndkPkgs = androidndkPkgs_17c;
androidndkPkgs_10e = import ./androidndk-pkgs.nix {
inherit (buildPackages)
makeWrapper;
inherit (pkgs)
lib stdenv
runCommand wrapBintoolsWith wrapCCWith;
# buildPackages.foo rather than buildPackages.buildPackages.foo would work,
# but for splicing messing up on infinite recursion for the variants we
# *dont't* use. Using this workaround, but also making a test to ensure
# these two really are the same.
buildAndroidndk = buildPackages.buildPackages.androidenv.androidndk_10e;
androidndk = androidndk_10e;
targetAndroidndkPkgs = targetPackages.androidenv.androidndkPkgs_10e;
};
buildGradleApp = import ./build-gradle-app.nix {
inherit (pkgs) stdenv jdk gnumake gawk file runCommand
which gradle fetchurl buildEnv;

View file

@ -53,7 +53,7 @@ in lib.init bootStages ++ [
cc = if crossSystem.useiOSPrebuilt or false
then buildPackages.darwin.iosSdkPkgs.clang
else if crossSystem.useAndroidPrebuilt or false
then buildPackages.androidenv."androidndkPkgs_${crossSystem.ndkVer}".gcc
then buildPackages."androidndkPkgs_${crossSystem.ndkVer}".gcc
else buildPackages.gcc;
extraNativeBuildInputs = old.extraNativeBuildInputs

View file

@ -832,6 +832,10 @@ in
inherit (androidenv) androidndk;
androidndkPkgs = androidndkPkgs_17c;
androidndkPkgs_17c = (callPackage ../development/androidndk-pkgs {})."17c";
androidndkPkgs_10e = (callPackage ../development/androidndk-pkgs {})."10e";
androidsdk = androidenv.androidsdk_8_0;
androidsdk_extras = res.androidenv.androidsdk_8_0_extras;