[Mesa-dev] [PATCH] android: amd/common: add support for libmesa_amd_common

Marek Olšák maraeo at gmail.com
Sat Nov 5 17:58:26 UTC 2016


Hi,

I pushed the patch from the bug report. Hopefully it's the same as this one.

Marek

On Sat, Nov 5, 2016 at 1:21 PM, Mauro Rossi <issor.oruam at gmail.com> wrote:
> Hi Nicolai,
>
> please review the attached patch which is necessary fix android build,
> as per https://bugs.freedesktop.org/show_bug.cgi?id=98573
>
> Tested with nougat-x86 build
> Kind regards
>
> Mauro
>
>
> From 36777861d42ec5ae0c0ed6a60835c76d13e38555 Mon Sep 17 00:00:00 2001
> From: Mauro Rossi <issor.oruam at gmail.com>
> Date: Sat, 5 Nov 2016 00:00:29 +0100
> Subject: [PATCH] android: amd/common: add support for libmesa_amd_common
>
> Fixes the following building error introduced with commit 7115e56
> and related amd/common dependencies:
>
> external/mesa/src/gallium/drivers/radeonsi/si_shader.c:6861: error:
> undefined reference to 'ac_is_sgpr_param'
> external/mesa/src/gallium/drivers/radeonsi/si_shader.c:6951: error:
> undefined reference to 'ac_is_sgpr_param'
> clang++: error: linker command failed with exit code 1 (use -v to see
> invocation)
>
> ninja: build stopped: subcommand failed.
> build/core/ninja.mk:148: recipe for target 'ninja_wrapper' failed
> make: *** [ninja_wrapper] Error 1
> ---
>  src/amd/Android.common.mk          | 47 ++++++++++++++++++++++++++++++++++++++
>  src/amd/Android.mk                 |  1 +
>  src/amd/Makefile.sources           | 11 +++++++++
>  src/gallium/targets/dri/Android.mk |  2 +-
>  4 files changed, 60 insertions(+), 1 deletion(-)
>  create mode 100644 src/amd/Android.common.mk
>
> diff --git a/src/amd/Android.common.mk b/src/amd/Android.common.mk
> new file mode 100644
> index 0000000..0dbb299
> --- /dev/null
> +++ b/src/amd/Android.common.mk
> @@ -0,0 +1,47 @@
> +# Copyright © 2016 Red Hat.
> +# Copyright © 2016 Mauro Rossi <issor.oruam at gmail.com>
> +#
> +# Permission is hereby granted, free of charge, to any person obtaining a
> +# copy of this software and associated documentation files (the "Software"),
> +# to deal in the Software without restriction, including without limitation
> +# the rights to use, copy, modify, merge, publish, distribute, sublicense,
> +# and/or sell copies of the Software, and to permit persons to whom the
> +# Software is furnished to do so, subject to the following conditions:
> +#
> +# The above copyright notice and this permission notice (including the next
> +# paragraph) shall be included in all copies or substantial portions of the
> +# Software.
> +#
> +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
> +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
> +# IN THE SOFTWARE.
> +
> +# ---------------------------------------
> +# Build libmesa_amd_common
> +# ---------------------------------------
> +
> +include $(CLEAR_VARS)
> +
> +LOCAL_MODULE := libmesa_amd_common
> +
> +LOCAL_SRC_FILES := $(AMD_COMPILER_SOURCES)
> +
> +LOCAL_C_INCLUDES := \
> + $(MESA_TOP)/include \
> + $(MESA_TOP)/src \
> + $(MESA_TOP)/src/amd/common \
> + $(MESA_TOP)/src/gallium/include \
> + $(MESA_TOP)/src/gallium/auxiliary \
> + external/llvm/include \
> + external/llvm/device/include \
> + external/libcxx/include \
> + external/elfutils/$(if $(filter
> 5,$(MESA_ANDROID_MAJOR_VERSION)),0.153/,$(if $(filter
> 6,$(MESA_ANDROID_MAJOR_VERSION)),src/))libelf
> +
> +LOCAL_STATIC_LIBRARIES := libLLVMCore
> +
> +include $(MESA_COMMON_MK)
> +include $(BUILD_STATIC_LIBRARY)
> diff --git a/src/amd/Android.mk b/src/amd/Android.mk
> index 7b745fe..07af052 100644
> --- a/src/amd/Android.mk
> +++ b/src/amd/Android.mk
> @@ -26,3 +26,4 @@ LOCAL_PATH := $(call my-dir)
>  include $(LOCAL_PATH)/Makefile.sources
>
>  include $(LOCAL_PATH)/Android.addrlib.mk
> +include $(LOCAL_PATH)/Android.common.mk
> diff --git a/src/amd/Makefile.sources b/src/amd/Makefile.sources
> index 3114a21..5cbefa3 100644
> --- a/src/amd/Makefile.sources
> +++ b/src/amd/Makefile.sources
> @@ -25,3 +25,14 @@ ADDRLIB_FILES = \
>   addrlib/r800/egbaddrlib.h \
>   addrlib/r800/siaddrlib.cpp \
>   addrlib/r800/siaddrlib.h
> +
> +AMD_COMPILER_SOURCES = \
> + common/ac_binary.c \
> + common/ac_binary.h \
> + common/ac_llvm_helper.cpp \
> + common/ac_llvm_util.c \
> + common/ac_llvm_util.h
> +
> +AMD_NIR_SOURCES = \
> + common/ac_nir_to_llvm.c \
> + common/ac_nir_to_llvm.h
> diff --git a/src/gallium/targets/dri/Android.mk
> b/src/gallium/targets/dri/Android.mk
> index 18aefe3..90bb879 100644
> --- a/src/gallium/targets/dri/Android.mk
> +++ b/src/gallium/targets/dri/Android.mk
> @@ -81,7 +81,7 @@ gallium_DRIVERS += libmesa_pipe_r600
>  LOCAL_CFLAGS += -DGALLIUM_R600
>  endif
>  ifneq ($(filter radeonsi,$(MESA_GPU_DRIVERS)),)
> -gallium_DRIVERS += libmesa_pipe_radeonsi libmesa_winsys_amdgpu
> +gallium_DRIVERS += libmesa_pipe_radeonsi libmesa_winsys_amdgpu
> libmesa_amd_common
>  LOCAL_SHARED_LIBRARIES += libLLVM libdrm_amdgpu
>  LOCAL_CFLAGS += -DGALLIUM_RADEONSI
>  endif
> --
> 2.9.3
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>


More information about the mesa-dev mailing list