From: Richard Levitte <levitte@openssl.org>
Date: Sun, 12 Aug 2018 08:14:06 +0000 (+0200)
Subject: Configurations/15-android.conf: Make sure that the NDK path is canonical
X-Git-Tag: OpenSSL_1_1_1-pre9~27
X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=18174ba8a3c634085c5cd15e0f28339e7b6cf679;p=oweals%2Fopenssl.git

Configurations/15-android.conf: Make sure that the NDK path is canonical

Extra slashes in paths are permissible in Unix-like platforms...
however, when compared with the result from 'which', which returns
canonical paths, the comparison might fail even though the compared
paths may be equivalent.  We make the NDK path canonical internally to
ensure the equivalence compares as equal, at least for the most
trivial cases.

Fixes #6917

Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6924)
---

diff --git a/Configurations/15-android.conf b/Configurations/15-android.conf
index ddd642a117..89c5d0ad89 100644
--- a/Configurations/15-android.conf
+++ b/Configurations/15-android.conf
@@ -4,6 +4,8 @@
 # comments below...
 
 {
+    use File::Spec::Functions;
+
     my $android_ndk = {};
     my %triplet = (
         arm    => "arm-linux-androideabi",
@@ -22,6 +24,7 @@
 
             my $ndk = $ENV{ANDROID_NDK};
             die "\$ANDROID_NDK is not defined"  if (!$ndk);
+            $ndk = canonpath($ndk);
             die "\$ANDROID_NDK=$ndk is invalid" if (!-d "$ndk/platforms");
 
             my $ndkver = undef;