Mesa (staging/19.2): android: mesa: revert "Enable asm unconditionally"

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Sep 24 15:31:10 UTC 2019


Module: Mesa
Branch: staging/19.2
Commit: ba8b282ae49abebaa7242ab0bd8a061dcfea5c31
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ba8b282ae49abebaa7242ab0bd8a061dcfea5c31

Author: Mauro Rossi <issor.oruam at gmail.com>
Date:   Sun Jul 14 10:53:19 2019 +0200

android: mesa: revert "Enable asm unconditionally"

This patch partially reverts 20294dc ("mesa: Enable asm unconditionally, ...")

Android makefile build logic needs to disable assembler optimization
in 32bit builds to avoid text relocations for libglapi.so shared

Fixes the following build error with Android x86 32bit target:

[  0% 4/477] target SharedLib: libglapi (out/target/product/x86/obj/SHARED_LIBRARIES/libglapi_intermediates/LINKED/libglapi.so)
FAILED: out/target/product/x86/obj/SHARED_LIBRARIES/libglapi_intermediates/LINKED/libglapi.so
...
prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/x86_64-linux-android/bin/ld: warning: shared library text segment is not shareable
prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/x86_64-linux-android/bin/ld: error: treating warnings as errors
clang-6.0: error: linker command failed with exit code 1 (use -v to see invocation)

Fixes: 20294dc ("mesa: Enable asm unconditionally, now that gen_matypes is gone.")
Signed-off-by: Mauro Rossi <issor.oruam at gmail.com>
Acked-by: Eric Engestrom <eric at engestrom.ch>
(cherry picked from commit 7a6e7803a791724841346b4b274ce68bcf3fff3f)

---

 Android.common.mk                   | 3 +++
 Android.mk                          | 7 +++++++
 src/mesa/Android.libmesa_dricore.mk | 2 ++
 src/mesa/Android.libmesa_st_mesa.mk | 2 ++
 4 files changed, 14 insertions(+)

diff --git a/Android.common.mk b/Android.common.mk
index 2d04573c433..6bf64f55c54 100644
--- a/Android.common.mk
+++ b/Android.common.mk
@@ -103,9 +103,12 @@ ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 26 && echo true),true)
 LOCAL_CFLAGS += -DHAVE_SYS_SHM_H
 endif
 
+ifeq ($(strip $(MESA_ENABLE_ASM)),true)
 ifeq ($(TARGET_ARCH),x86)
 LOCAL_CFLAGS += \
 	-DUSE_X86_ASM
+
+endif
 endif
 ifeq ($(ARCH_ARM_HAVE_NEON),true)
 LOCAL_CFLAGS_arm += -DUSE_ARM_ASM
diff --git a/Android.mk b/Android.mk
index 76d26f9bd83..e86c9bd510a 100644
--- a/Android.mk
+++ b/Android.mk
@@ -83,6 +83,13 @@ endif
 
 $(foreach d, $(MESA_BUILD_CLASSIC) $(MESA_BUILD_GALLIUM), $(eval $(d) := true))
 
+# host and target must be the same arch to generate matypes.h
+ifeq ($(TARGET_ARCH),$(HOST_ARCH))
+MESA_ENABLE_ASM := true
+else
+MESA_ENABLE_ASM := false
+endif
+
 ifneq ($(filter true, $(HAVE_GALLIUM_RADEONSI)),)
 MESA_ENABLE_LLVM := true
 endif
diff --git a/src/mesa/Android.libmesa_dricore.mk b/src/mesa/Android.libmesa_dricore.mk
index 8eb6aabe836..792117767b4 100644
--- a/src/mesa/Android.libmesa_dricore.mk
+++ b/src/mesa/Android.libmesa_dricore.mk
@@ -39,9 +39,11 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES
 LOCAL_SRC_FILES := \
 	$(MESA_FILES)
 
+ifeq ($(strip $(MESA_ENABLE_ASM)),true)
 ifeq ($(TARGET_ARCH),x86)
 	LOCAL_SRC_FILES += $(X86_FILES)
 endif # x86
+endif # MESA_ENABLE_ASM
 
 ifeq ($(ARCH_X86_HAVE_SSE4_1),true)
 LOCAL_WHOLE_STATIC_LIBRARIES := \
diff --git a/src/mesa/Android.libmesa_st_mesa.mk b/src/mesa/Android.libmesa_st_mesa.mk
index 16153a3c5bd..ddfd03059c5 100644
--- a/src/mesa/Android.libmesa_st_mesa.mk
+++ b/src/mesa/Android.libmesa_st_mesa.mk
@@ -42,9 +42,11 @@ LOCAL_GENERATED_SOURCES := \
 	$(MESA_GEN_GLSL_H) \
 	$(MESA_GEN_NIR_H)
 
+ifeq ($(strip $(MESA_ENABLE_ASM)),true)
 ifeq ($(TARGET_ARCH),x86)
 	LOCAL_SRC_FILES += $(X86_FILES)
 endif # x86
+endif # MESA_ENABLE_ASM
 
 ifeq ($(ARCH_X86_HAVE_SSE4_1),true)
 LOCAL_WHOLE_STATIC_LIBRARIES := \




More information about the mesa-commit mailing list