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

Nicolai Hähnle nhaehnle at gmail.com
Tue Nov 15 09:15:24 UTC 2016


On 12.11.2016 22:26, Mauro Rossi wrote:
>> We'd really want to do:
>>
>> git rm src/amd/common/Makefile.sources
>> git mv src/amd/common/Makefile.am src/amd/Makefile.common.am
>> sed -i s|common/||g src/amd/Makefile.common.am
>> + fix the odd piece throughout.
>>
>> As-is we have the sources lists duplicated and makefiles async from
>> one another. And if history has thought us anything - this will break
>> all the everytime.
>>
>> Mauro, can you give it a try ?
>>
>> Thanks
>> Emil
>
> Hi,
>
> sed command was not necessary but I had to add
> $(top_src)/src/amd/common include,
> change configure.ac (like Jason Ekstrand had to do when isl makefile
> structure was flattened),
> modify Makefile.common.am as Makefile.addrlib.am
>
> I've tried to build and there is no amd related error, it should be ok,
> but in my "mesa for linux" build system I am lacking proper llvm
> installation and I see llvm building errors, probably related to this
> fact.
>
> Please review and check by launching a build on your more stable linux
> build systems/CI jobs, before pushing to mesa-dev
> Thanks
>
> Mauro
>
> From f78f66049118db3ed9b241dfd020418efe52c10b Mon Sep 17 00:00:00 2001
> From: Mauro Rossi <issor.oruam at gmail.com>
> Date: Sat, 12 Nov 2016 22:10:44 +0100
> Subject: [PATCH] amd: flatten amd/common makefile structure
>
> This pulls amd/common build rules into upper level makefile,
> along with amd/addlib which is already there.

Looks reasonable to me, but perhaps somebody with more familiarity with 
the build system can take another look?

Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

> ---
>  configure.ac                                       |  1 -
>  src/amd/Makefile.am                                |  1 +
>  src/amd/{common/Makefile.am => Makefile.common.am} | 15 ++++++-----
>  src/amd/common/Makefile.sources                    | 31 ----------------------
>  4 files changed, 9 insertions(+), 39 deletions(-)
>  rename src/amd/{common/Makefile.am => Makefile.common.am} (83%)
>  delete mode 100644 src/amd/common/Makefile.sources
>
> diff --git a/configure.ac b/configure.ac
> index 4761c59..ebe0a2a 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -2682,7 +2682,6 @@ dnl Substitute the config
>  AC_CONFIG_FILES([Makefile
>          src/Makefile
>          src/amd/Makefile
> -        src/amd/common/Makefile
>          src/amd/vulkan/Makefile
>          src/compiler/Makefile
>          src/egl/Makefile
> diff --git a/src/amd/Makefile.am b/src/amd/Makefile.am
> index d01d435..1402ca5 100644
> --- a/src/amd/Makefile.am
> +++ b/src/amd/Makefile.am
> @@ -25,3 +25,4 @@ noinst_LTLIBRARIES =
>
>  EXTRA_DIST = $(COMMON_HEADER_FILES)
>  include Makefile.addrlib.am
> +include Makefile.common.am
> diff --git a/src/amd/common/Makefile.am b/src/amd/Makefile.common.am
> similarity index 83%
> rename from src/amd/common/Makefile.am
> rename to src/amd/Makefile.common.am
> index bc269ab..4ae8e28 100644
> --- a/src/amd/common/Makefile.am
> +++ b/src/amd/Makefile.common.am
> @@ -19,15 +19,16 @@
>  # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
>  # IN THE SOFTWARE.
>
> -include Makefile.sources
> +COMMON_LIBS = common/libamd_common.la
>
>  # TODO cleanup these
> -AM_CPPFLAGS = \
> +common_libamd_common_la_AM_CPPFLAGS = \
>      $(VALGRIND_CFLAGS) \
>      $(DEFINES) \
>      -I$(top_srcdir)/include \
>      -I$(top_builddir)/src \
>      -I$(top_srcdir)/src \
> +    -I$(top_srcdir)/src/amd/common \
>      -I$(top_builddir)/src/compiler \
>      -I$(top_builddir)/src/compiler/nir \
>      -I$(top_srcdir)/src/compiler \
> @@ -37,21 +38,21 @@ AM_CPPFLAGS = \
>      -I$(top_srcdir)/src/gallium/auxiliary \
>      -I$(top_srcdir)/src/gallium/include
>
> -AM_CFLAGS = $(VISIBILITY_CFLAGS) \
> +common_libamd_common_la_AM_CFLAGS = $(VISIBILITY_CFLAGS) \
>      $(PTHREAD_CFLAGS) \
>      $(LLVM_CFLAGS) \
>      $(LIBELF_CFLAGS)
>
> -AM_CXXFLAGS = \
> +common_libamd_common_la_AM_CXXFLAGS = \
>      $(VISIBILITY_CXXFLAGS) \
>      $(LLVM_CXXFLAGS)
>
> -noinst_LTLIBRARIES = libamd_common.la
> +noinst_LTLIBRARIES += $(COMMON_LIBS)
>
> -libamd_common_la_SOURCES = $(AMD_COMPILER_SOURCES)
> +common_libamd_common_la_SOURCES = $(AMD_COMPILER_SOURCES)
>
>  # nir_to_llvm requires LLVM 3.9, which is only required as a minimum when
>  # radv is built.
>  if HAVE_RADEON_VULKAN
> -libamd_common_la_SOURCES += $(AMD_NIR_SOURCES)
> +common_libamd_common_la_SOURCES += $(AMD_NIR_SOURCES)
>  endif
> diff --git a/src/amd/common/Makefile.sources b/src/amd/common/Makefile.sources
> deleted file mode 100644
> index 0aff73b..0000000
> --- a/src/amd/common/Makefile.sources
> +++ /dev/null
> @@ -1,31 +0,0 @@
> -# Copyright © 2016 Bas Nieuwenhuizen
> -#
> -# 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.
> -
> -AMD_COMPILER_SOURCES := \
> -    ac_binary.c \
> -    ac_binary.h \
> -    ac_llvm_helper.cpp \
> -    ac_llvm_util.c \
> -    ac_llvm_util.h
> -
> -AMD_NIR_SOURCES := \
> -    ac_nir_to_llvm.c \
> -    ac_nir_to_llvm.h
>
>
>
> _______________________________________________
> 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