summarylogtreecommitdiffstats
path: root/15-android_conf.patch
diff options
context:
space:
mode:
Diffstat (limited to '15-android_conf.patch')
-rw-r--r--15-android_conf.patch217
1 files changed, 0 insertions, 217 deletions
diff --git a/15-android_conf.patch b/15-android_conf.patch
deleted file mode 100644
index c8eef3f821eb..000000000000
--- a/15-android_conf.patch
+++ /dev/null
@@ -1,217 +0,0 @@
-diff --git a/Configurations/15-android.conf b/Configurations/15-android.conf
-index 4616394f8c..f3075e4b79 100644
---- a/Configurations/15-android.conf
-+++ b/Configurations/15-android.conf
-@@ -1,6 +1,6 @@
- #### Android...
- #
--# See NOTES.ANDROID for details, and don't miss platform-specific
-+# See NOTES-Android.md for details, and don't miss platform-specific
- # comments below...
-
- {
-@@ -24,23 +24,23 @@
-
- my $ndk_var;
- my $ndk;
-- foreach (qw(ANDROID_NDK_HOME ANDROID_NDK)) {
-+ foreach (qw(ANDROID_NDK_ROOT ANDROID_NDK)) {
- $ndk_var = $_;
- $ndk = $ENV{$ndk_var};
- last if defined $ndk;
- }
-- die "\$ANDROID_NDK_HOME is not defined" if (!$ndk);
-- if (!-d "$ndk/platforms" && !-f "$ndk/AndroidVersion.txt") {
-- # $ndk/platforms is traditional "all-inclusive" NDK, while
-- # $ndk/AndroidVersion.txt is so-called standalone toolchain
-- # tailored for specific target down to API level.
-- die "\$ANDROID_NDK_HOME=$ndk is invalid";
-+ die "\$ANDROID_NDK_ROOT is not defined" if (!$ndk);
-+ my $is_standalone_toolchain = -f "$ndk/AndroidVersion.txt";
-+ my $ndk_src_props = "$ndk/source.properties";
-+ my $is_ndk = -f $ndk_src_props;
-+ if ($is_ndk == $is_standalone_toolchain) {
-+ die "\$ANDROID_NDK_ROOT=$ndk is invalid";
- }
- $ndk = canonpath($ndk);
-
- my $ndkver = undef;
-
-- if (open my $fh, "<$ndk/source.properties") {
-+ if (open my $fh, "<$ndk_src_props") {
- local $_;
- while(<$fh>) {
- if (m|Pkg\.Revision\s*=\s*([0-9]+)|) {
-@@ -59,7 +59,7 @@
- if ($sysroot = $ENV{CROSS_SYSROOT}) {
- $sysroot =~ m|/android-([0-9]+)/arch-(\w+)/?$|;
- ($api, $arch) = ($1, $2);
-- } elsif (-f "$ndk/AndroidVersion.txt") {
-+ } elsif ($is_standalone_toolchain) {
- $sysroot = "$ndk/sysroot";
- } else {
- $api = "*";
-@@ -72,17 +72,31 @@
- }
- }
-
-- # list available platforms (numerically)
-- my @platforms = sort { $a =~ m/-([0-9]+)$/; my $aa = $1;
-- $b =~ m/-([0-9]+)$/; $aa <=> $1;
-- } glob("$ndk/platforms/android-$api");
-- die "no $ndk/platforms/android-$api" if ($#platforms < 0);
-+ if (-d "$ndk/platforms") {
-+ # list available platforms (numerically)
-+ my @platforms = sort { $a =~ m/-([0-9]+)$/; my $aa = $1;
-+ $b =~ m/-([0-9]+)$/; $aa <=> $1;
-+ } glob("$ndk/platforms/android-$api");
-+ die "no $ndk/platforms/android-$api" if ($#platforms < 0);
-
-- $sysroot = "@platforms[$#platforms]/arch-$arch";
-- $sysroot =~ m|/android-([0-9]+)/arch-$arch|;
-- $api = $1;
-+ $sysroot = "@platforms[$#platforms]/arch-$arch";
-+ $sysroot =~ m|/android-([0-9]+)/arch-$arch|;
-+ $api = $1;
-+ } elsif ($api eq "*") {
-+ # r22 Removed platforms dir, use this JSON file
-+ my $path = "$ndk/meta/platforms.json";
-+ open my $fh, $path or die "Could not open '$path' $!";
-+ while (<$fh>) {
-+ if (/"max": (\d+),/) {
-+ $api = $1;
-+ last;
-+ }
-+ }
-+ close $fh;
-+ }
-+ die "Could not get default API Level" if ($api eq "*");
- }
-- die "no sysroot=$sysroot" if (!-d $sysroot);
-+ die "no sysroot=$sysroot" if (length $sysroot && !-d $sysroot);
-
- my $triarch = $triplet{$arch};
- my $cflags;
-@@ -95,17 +109,21 @@
- my $arm = $ndkver > 16 ? "armv7a" : "armv5te";
- (my $tridefault = $triarch) =~ s/^arm-/$arm-/;
- (my $tritools = $triarch) =~ s/(?:x|i6)86(_64)?-.*/x86$1/;
-- $cflags .= " -target $tridefault "
-- . "-gcc-toolchain \$($ndk_var)/toolchains"
-- . "/$tritools-4.9/prebuilt/$host";
-- $user{CC} = "clang" if ($user{CC} !~ m|clang|);
-+ if (length $sysroot) {
-+ $cflags .= " -target $tridefault "
-+ . "-gcc-toolchain \$($ndk_var)/toolchains"
-+ . "/$tritools-4.9/prebuilt/$host";
-+ $user{CC} = "clang" if ($user{CC} !~ m|clang|);
-+ } else {
-+ $user{CC} = "$tridefault$api-clang";
-+ }
- $user{CROSS_COMPILE} = undef;
- if (which("llvm-ar") =~ m|^$ndk/.*/prebuilt/([^/]+)/|) {
- $user{AR} = "llvm-ar";
- $user{ARFLAGS} = [ "rs" ];
- $user{RANLIB} = ":";
- }
-- } elsif (-f "$ndk/AndroidVersion.txt") { #"standalone toolchain"
-+ } elsif ($is_standalone_toolchain) {
- my $cc = $user{CC} // "clang";
- # One can probably argue that both clang and gcc should be
- # probed, but support for "standalone toolchain" was added
-@@ -127,19 +145,21 @@
- $user{CROSS_COMPILE} = "$triarch-";
- }
-
-- if (!-d "$sysroot/usr/include") {
-- my $incroot = "$ndk/sysroot/usr/include";
-- die "no $incroot" if (!-d $incroot);
-- die "no $incroot/$triarch" if (!-d "$incroot/$triarch");
-- $incroot =~ s|^$ndk/||;
-- $cppflags = "-D__ANDROID_API__=$api";
-- $cppflags .= " -isystem \$($ndk_var)/$incroot/$triarch";
-- $cppflags .= " -isystem \$($ndk_var)/$incroot";
-+ if (length $sysroot) {
-+ if (!-d "$sysroot/usr/include") {
-+ my $incroot = "$ndk/sysroot/usr/include";
-+ die "no $incroot" if (!-d $incroot);
-+ die "no $incroot/$triarch" if (!-d "$incroot/$triarch");
-+ $incroot =~ s|^$ndk/||;
-+ $cppflags = "-D__ANDROID_API__=$api";
-+ $cppflags .= " -isystem \$($ndk_var)/$incroot/$triarch";
-+ $cppflags .= " -isystem \$($ndk_var)/$incroot";
-+ }
-+ $sysroot =~ s|^$ndk/||;
-+ $sysroot = " --sysroot=\$($ndk_var)/$sysroot";
- }
--
-- $sysroot =~ s|^$ndk/||;
- $android_ndk = {
-- cflags => "$cflags --sysroot=\$($ndk_var)/$sysroot",
-+ cflags => $cflags . $sysroot,
- cppflags => $cppflags,
- bn_ops => $arch =~ m/64$/ ? "SIXTY_FOUR_BIT_LONG"
- : "BN_LLONG",
-@@ -168,7 +188,8 @@ my %targets = (
- cppflags => add(sub { android_ndk()->{cppflags} }),
- cxxflags => add(sub { android_ndk()->{cflags} }),
- bn_ops => sub { android_ndk()->{bn_ops} },
-- bin_cflags => "-pie",
-+ bin_cflags => "-fPIE",
-+ bin_lflags => "-pie",
- enable => [ ],
- },
- "android-arm" => {
-@@ -199,18 +220,22 @@ my %targets = (
- # -march and/or -mfloat-abi flags. NDK defaults to armv5te.
- # Newer NDK versions reportedly require additional -latomic.
- #
-- inherit_from => [ "android", asm("armv4_asm") ],
-+ inherit_from => [ "android" ],
- bn_ops => add("RC4_CHAR"),
-+ asm_arch => 'armv4',
-+ perlasm_scheme => "void",
- },
- "android-arm64" => {
-- inherit_from => [ "android", asm("aarch64_asm") ],
-+ inherit_from => [ "android" ],
- bn_ops => add("RC4_CHAR"),
-+ asm_arch => 'aarch64',
- perlasm_scheme => "linux64",
- },
-
- "android-mips" => {
-- inherit_from => [ "android", asm("mips32_asm") ],
-+ inherit_from => [ "android" ],
- bn_ops => add("RC4_CHAR"),
-+ asm_arch => 'mips32',
- perlasm_scheme => "o32",
- },
- "android-mips64" => {
-@@ -223,20 +248,23 @@ my %targets = (
- # with previous MIPS ISA versions, in sense that unlike
- # prior versions original MIPS binary code will fail.
- #
-- inherit_from => [ "android", asm("mips64_asm") ],
-+ inherit_from => [ "android" ],
- bn_ops => add("RC4_CHAR"),
-+ asm_arch => 'mips64',
- perlasm_scheme => "64",
- },
-
- "android-x86" => {
-- inherit_from => [ "android", asm("x86_asm") ],
-+ inherit_from => [ "android" ],
- CFLAGS => add(picker(release => "-fomit-frame-pointer")),
- bn_ops => add("RC4_INT"),
-+ asm_arch => 'x86',
- perlasm_scheme => "android",
- },
- "android-x86_64" => {
-- inherit_from => [ "android", asm("x86_64_asm") ],
-+ inherit_from => [ "android" ],
- bn_ops => add("RC4_INT"),
-+ asm_arch => 'x86_64',
- perlasm_scheme => "elf",
- },
-