From a26c82a5d2a5a250608b6fe233d6beb3f5939683 Mon Sep 17 00:00:00 2001
From: Pierre-Hugues Husson <phh@phh.me>
Date: Thu, 3 Jan 2019 17:50:03 +0100
Subject: [PATCH 2/2] Read SDK version override from property

Change-Id: I88ca5d0bde15ee4f2b2bd1255e98f9592973dbf9
---
 linker/linker.cpp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/linker/linker.cpp b/linker/linker.cpp
index 951351c32..0283abb19 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -3923,7 +3923,9 @@ std::vector<android_namespace_t*> init_default_namespaces(const char* executable
   }
 
   uint32_t target_sdk = config->target_sdk_version();
-#ifdef SDK_VERSION_OVERRIDES
+
+  std::string sdkVersionOverrides = android::base::GetProperty("persist.sys.phh.sdk_override", "");
+  static const char *SDK_VERSION_OVERRIDES = sdkVersionOverrides.c_str();
   for (const auto& entry : android::base::Split(SDK_VERSION_OVERRIDES, " ")) {
     auto splitted = android::base::Split(entry, "=");
     if (splitted.size() == 2 && splitted[0] == executable_path) {
@@ -3932,7 +3934,7 @@ std::vector<android_namespace_t*> init_default_namespaces(const char* executable
     }
   }
   DEBUG("Target SDK for %s = %d", executable_path, target_sdk);
-#endif
+
   set_application_target_sdk_version(target_sdk);
 
   std::vector<android_namespace_t*> created_namespaces;
-- 
2.21.0

