Support TARGET_TRANSLATE_2ND_ARCH case
When second arch is translated we don't have 32-bit platform and
64-bit platform. Instead we have two 32-bit ones, just one is
translated.
Test: Build system refactoring CL. Existing unit tests still pass.
BUG=31422117
BUG=27526885
Change-Id: Ia5fdd2f485dd5e4e8bc6799f0691cd03c2bff1a0
Reviewed-on: https://swiftshader-review.googlesource.com/8609
Reviewed-by: Nicolas Capens <capn@google.com>
Tested-by: Nicolas Capens <capn@google.com>
(cherry picked from commit f24b1b445274b0dbb4ffc860847a26d0b33d3a21)
Reviewed-on: https://swiftshader-review.googlesource.com/8611
diff --git a/src/OpenGL/libEGL/Android.mk b/src/OpenGL/libEGL/Android.mk
index 6db92e6..94e3ecb 100644
--- a/src/OpenGL/libEGL/Android.mk
+++ b/src/OpenGL/libEGL/Android.mk
@@ -49,10 +49,16 @@
include $(CLEAR_VARS)
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
+LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
+else
LOCAL_MODULE_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
LOCAL_MODULE_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/debug/sym
+endif
else
LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
@@ -71,10 +77,16 @@
include $(CLEAR_VARS)
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
+LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
+else
LOCAL_MODULE_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/sym
LOCAL_MODULE_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/release/sym
+endif
else
LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/sym
@@ -94,8 +106,13 @@
include $(CLEAR_VARS)
LOCAL_MODULE := libEGL_swiftshader
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)/lib/egl
+else
LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)/lib/egl
LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/egl
+endif
else
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)/lib/egl
endif
diff --git a/src/OpenGL/libGLES_CM/Android.mk b/src/OpenGL/libGLES_CM/Android.mk
index d6b4ed1..2ee4957 100644
--- a/src/OpenGL/libGLES_CM/Android.mk
+++ b/src/OpenGL/libGLES_CM/Android.mk
@@ -70,10 +70,16 @@
include $(CLEAR_VARS)
LOCAL_MODULE := libGLESv1_CM_swiftshader_vendor_debug
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
+LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
+else
LOCAL_MODULE_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
LOCAL_MODULE_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/debug/sym
+endif
else
LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
@@ -93,10 +99,16 @@
include $(CLEAR_VARS)
LOCAL_MODULE := libGLESv1_CM_swiftshader_vendor_release
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/obj
+LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/sym
+else
LOCAL_MODULE_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/sym
LOCAL_MODULE_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/release/sym
+endif
else
LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/sym
@@ -120,8 +132,13 @@
include $(CLEAR_VARS)
LOCAL_MODULE := libGLESv1_CM_swiftshader
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)/lib/egl
+else
LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)/lib/egl
LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/egl
+endif
else
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)/lib/egl
endif
diff --git a/src/OpenGL/libGLESv2/Android.mk b/src/OpenGL/libGLESv2/Android.mk
index aabdfec..f37f72c 100644
--- a/src/OpenGL/libGLESv2/Android.mk
+++ b/src/OpenGL/libGLESv2/Android.mk
@@ -77,10 +77,16 @@
include $(CLEAR_VARS)
LOCAL_MODULE := libGLESv2_swiftshader_vendor_debug
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
+LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
+else
LOCAL_MODULE_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
LOCAL_MODULE_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/debug/sym
+endif
else
LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/obj
LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/debug/sym
@@ -99,10 +105,16 @@
include $(CLEAR_VARS)
LOCAL_MODULE := libGLESv2_swiftshader_vendor_release
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/obj
+LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/sym
+else
LOCAL_MODULE_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH_64 := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/sym
LOCAL_MODULE_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH_32 := vendor/transgaming/swiftshader/$(TARGET_2ND_ARCH)/release/sym
+endif
else
LOCAL_MODULE_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/obj
LOCAL_UNSTRIPPED_PATH := vendor/transgaming/swiftshader/$(TARGET_ARCH)/release/sym
@@ -126,8 +138,13 @@
include $(CLEAR_VARS)
LOCAL_MODULE := libGLESv2_swiftshader
ifdef TARGET_2ND_ARCH
+ifeq ($(TARGET_TRANSLATE_2ND_ARCH),true)
+LOCAL_MULTILIB := first
+LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)/lib/egl
+else
LOCAL_MODULE_PATH_32 := $(TARGET_OUT_VENDOR)/lib/egl
LOCAL_MODULE_PATH_64 := $(TARGET_OUT_VENDOR)/lib64/egl
+endif
else
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)/lib/egl
endif