mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-23 22:00:13 +01:00
intel/vulkan: Get rid of recursive make
v2 [Emil Velikov] - Various fixes and initial stab at the Android build. - Keep the generation rules/EXTRA_DIST outside the conditional Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
parent
7f9bbcfb7b
commit
ee8044fd33
9 changed files with 305 additions and 307 deletions
|
|
@ -2687,7 +2687,6 @@ AC_CONFIG_FILES([Makefile
|
|||
src/glx/windows/windowsdriproto.pc
|
||||
src/gtest/Makefile
|
||||
src/intel/Makefile
|
||||
src/intel/vulkan/Makefile
|
||||
src/loader/Makefile
|
||||
src/mapi/Makefile
|
||||
src/mapi/es1api/glesv1_cm.pc
|
||||
|
|
|
|||
|
|
@ -117,11 +117,6 @@ if HAVE_EGL
|
|||
SUBDIRS += egl
|
||||
endif
|
||||
|
||||
## Requires the i965 compiler (part of mesa) and wayland-drm
|
||||
if HAVE_INTEL_VULKAN
|
||||
SUBDIRS += intel/vulkan
|
||||
endif
|
||||
|
||||
# Requires wayland-drm
|
||||
if HAVE_RADEON_VULKAN
|
||||
SUBDIRS += amd/vulkan
|
||||
|
|
|
|||
|
|
@ -30,4 +30,4 @@ include $(LOCAL_PATH)/Android.common.mk
|
|||
include $(LOCAL_PATH)/Android.compiler.mk
|
||||
include $(LOCAL_PATH)/Android.genxml.mk
|
||||
include $(LOCAL_PATH)/Android.isl.mk
|
||||
include $(LOCAL_PATH)/vulkan/Android.mk
|
||||
include $(LOCAL_PATH)/Android.vulkan.mk
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ LOCAL_PATH := $(call my-dir)
|
|||
include $(CLEAR_VARS)
|
||||
include $(LOCAL_PATH)/Makefile.sources
|
||||
|
||||
VK_ENTRYPOINTS_SCRIPT := $(MESA_PYTHON2) $(LOCAL_PATH)/anv_entrypoints_gen.py
|
||||
VK_ENTRYPOINTS_SCRIPT := $(MESA_PYTHON2) $(LOCAL_PATH)/vulkan/anv_entrypoints_gen.py
|
||||
|
||||
VULKAN_COMMON_INCLUDES := \
|
||||
$(MESA_TOP)/include/vulkan \
|
||||
|
|
@ -51,15 +51,16 @@ intermediates := $(call local-generated-sources-dir)
|
|||
LOCAL_C_INCLUDES := \
|
||||
$(VULKAN_COMMON_INCLUDES)
|
||||
|
||||
LOCAL_GENERATED_SOURCES += $(intermediates)/anv_entrypoints.h
|
||||
LOCAL_GENERATED_SOURCES += $(intermediates)/dummy.c
|
||||
LOCAL_GENERATED_SOURCES += $(intermediates)/vulkan/anv_entrypoints.h
|
||||
LOCAL_GENERATED_SOURCES += $(intermediates)/vulkan/dummy.c
|
||||
|
||||
$(intermediates)/dummy.c:
|
||||
$(intermediates)/vulkan/dummy.c:
|
||||
@mkdir -p $(dir $@)
|
||||
@echo "Gen Dummy: $(PRIVATE_MODULE) <= $(notdir $(@))"
|
||||
$(hide) touch $@
|
||||
|
||||
$(intermediates)/anv_entrypoints.h:
|
||||
$(intermediates)/vulkan/anv_entrypoints.h:
|
||||
@mkdir -p $(dir $@)
|
||||
$(hide) cat $(MESA_TOP)/src/vulkan/registry/vk.xml | $(VK_ENTRYPOINTS_SCRIPT) header > $@
|
||||
|
||||
LOCAL_EXPORT_C_INCLUDE_DIRS := \
|
||||
|
|
@ -84,7 +85,7 @@ include $(CLEAR_VARS)
|
|||
LOCAL_MODULE := libmesa_anv_gen7
|
||||
LOCAL_MODULE_CLASS := STATIC_LIBRARIES
|
||||
|
||||
LOCAL_SRC_FILES := $(GEN7_FILES)
|
||||
LOCAL_SRC_FILES := $(VULKAN_GEN7_FILES)
|
||||
LOCAL_CFLAGS := -DGEN_VERSIONx10=70
|
||||
|
||||
LOCAL_C_INCLUDES := $(ANV_INCLUDES)
|
||||
|
|
@ -104,7 +105,7 @@ include $(CLEAR_VARS)
|
|||
LOCAL_MODULE := libmesa_anv_gen75
|
||||
LOCAL_MODULE_CLASS := STATIC_LIBRARIES
|
||||
|
||||
LOCAL_SRC_FILES := $(GEN75_FILES)
|
||||
LOCAL_SRC_FILES := $(VULKAN_GEN75_FILES)
|
||||
LOCAL_CFLAGS := -DGEN_VERSIONx10=75
|
||||
|
||||
LOCAL_C_INCLUDES := $(ANV_INCLUDES)
|
||||
|
|
@ -124,7 +125,7 @@ include $(CLEAR_VARS)
|
|||
LOCAL_MODULE := libmesa_anv_gen8
|
||||
LOCAL_MODULE_CLASS := STATIC_LIBRARIES
|
||||
|
||||
LOCAL_SRC_FILES := $(GEN8_FILES)
|
||||
LOCAL_SRC_FILES := $(VULKAN_GEN8_FILES)
|
||||
LOCAL_CFLAGS := -DGEN_VERSIONx10=80
|
||||
|
||||
LOCAL_C_INCLUDES := $(ANV_INCLUDES)
|
||||
|
|
@ -144,7 +145,7 @@ include $(CLEAR_VARS)
|
|||
LOCAL_MODULE := libmesa_anv_gen9
|
||||
LOCAL_MODULE_CLASS := STATIC_LIBRARIES
|
||||
|
||||
LOCAL_SRC_FILES := $(GEN9_FILES)
|
||||
LOCAL_SRC_FILES := $(VULKAN_GEN9_FILES)
|
||||
LOCAL_CFLAGS := -DGEN_VERSIONx10=90
|
||||
|
||||
LOCAL_C_INCLUDES := $(ANV_INCLUDES)
|
||||
|
|
@ -177,9 +178,10 @@ LOCAL_WHOLE_STATIC_LIBRARIES := \
|
|||
libmesa_genxml \
|
||||
libmesa_vulkan_util
|
||||
|
||||
LOCAL_GENERATED_SOURCES += $(intermediates)/anv_entrypoints.c
|
||||
LOCAL_GENERATED_SOURCES += $(intermediates)/vulkan/anv_entrypoints.c
|
||||
|
||||
$(intermediates)/anv_entrypoints.c:
|
||||
$(intermediates)/vulkan/anv_entrypoints.c:
|
||||
@mkdir -p $(dir $@)
|
||||
$(hide) cat $(MESA_TOP)/src/vulkan/registry/vk.xml | $(VK_ENTRYPOINTS_SCRIPT) code > $@
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := libdrm_intel
|
||||
|
|
@ -48,6 +48,10 @@ AM_CFLAGS = \
|
|||
MKDIR_GEN = $(AM_V_at)$(MKDIR_P) $(@D)
|
||||
PYTHON_GEN = $(AM_V_GEN)$(PYTHON2) $(PYTHON_FLAGS)
|
||||
|
||||
lib_LTLIBRARIES =
|
||||
check_LTLIBRARIES =
|
||||
noinst_DATA =
|
||||
noinst_HEADERS =
|
||||
noinst_LTLIBRARIES =
|
||||
noinst_PROGRAMS =
|
||||
check_PROGRAMS =
|
||||
|
|
@ -63,4 +67,6 @@ include Makefile.genxml.am
|
|||
include Makefile.isl.am
|
||||
include Makefile.tools.am
|
||||
|
||||
include Makefile.vulkan.am
|
||||
|
||||
CLEANFILES += $(BUILT_SOURCES)
|
||||
|
|
|
|||
|
|
@ -162,3 +162,68 @@ ISL_GEN9_FILES = \
|
|||
|
||||
ISL_GENERATED_FILES = \
|
||||
isl/isl_format_layout.c
|
||||
|
||||
VULKAN_FILES := \
|
||||
vulkan/anv_allocator.c \
|
||||
vulkan/anv_batch_chain.c \
|
||||
vulkan/anv_blorp.c \
|
||||
vulkan/anv_cmd_buffer.c \
|
||||
vulkan/anv_descriptor_set.c \
|
||||
vulkan/anv_device.c \
|
||||
vulkan/anv_dump.c \
|
||||
vulkan/anv_formats.c \
|
||||
vulkan/anv_genX.h \
|
||||
vulkan/anv_image.c \
|
||||
vulkan/anv_intel.c \
|
||||
vulkan/anv_nir.h \
|
||||
vulkan/anv_nir_apply_dynamic_offsets.c \
|
||||
vulkan/anv_nir_apply_pipeline_layout.c \
|
||||
vulkan/anv_nir_lower_input_attachments.c \
|
||||
vulkan/anv_nir_lower_push_constants.c \
|
||||
vulkan/anv_pass.c \
|
||||
vulkan/anv_pipeline.c \
|
||||
vulkan/anv_pipeline_cache.c \
|
||||
vulkan/anv_private.h \
|
||||
vulkan/anv_util.c \
|
||||
vulkan/anv_wsi.c \
|
||||
vulkan/vk_format_info.h
|
||||
|
||||
VULKAN_WSI_WAYLAND_FILES := \
|
||||
vulkan/anv_wsi_wayland.c
|
||||
|
||||
VULKAN_WSI_X11_FILES := \
|
||||
vulkan/anv_wsi_x11.c
|
||||
|
||||
VULKAN_GEM_FILES := \
|
||||
vulkan/anv_gem.c
|
||||
|
||||
VULKAN_GEM_STUB_FILES := \
|
||||
vulkan/anv_gem_stubs.c
|
||||
|
||||
VULKAN_GENERATED_FILES := \
|
||||
vulkan/anv_entrypoints.c \
|
||||
vulkan/anv_entrypoints.h
|
||||
|
||||
VULKAN_GENX_FILES := \
|
||||
vulkan/genX_blorp_exec.c \
|
||||
vulkan/genX_cmd_buffer.c \
|
||||
vulkan/genX_gpu_memcpy.c \
|
||||
vulkan/genX_pipeline.c \
|
||||
vulkan/genX_query.c \
|
||||
vulkan/genX_state.c
|
||||
|
||||
VULKAN_GEN7_FILES := \
|
||||
vulkan/gen7_cmd_buffer.c \
|
||||
$(VULKAN_GENX_FILES)
|
||||
|
||||
VULKAN_GEN75_FILES := \
|
||||
vulkan/gen7_cmd_buffer.c \
|
||||
$(VULKAN_GENX_FILES)
|
||||
|
||||
VULKAN_GEN8_FILES := \
|
||||
vulkan/gen8_cmd_buffer.c \
|
||||
$(VULKAN_GENX_FILES)
|
||||
|
||||
VULKAN_GEN9_FILES := \
|
||||
vulkan/gen8_cmd_buffer.c \
|
||||
$(VULKAN_GENX_FILES)
|
||||
|
|
|
|||
220
src/intel/Makefile.vulkan.am
Normal file
220
src/intel/Makefile.vulkan.am
Normal file
|
|
@ -0,0 +1,220 @@
|
|||
# Copyright © 2015 Intel Corporation
|
||||
#
|
||||
# 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.
|
||||
|
||||
# Due to a what seems like a autoconf bug, we must ensure that the genaration
|
||||
# rules must be outside of any AM_CONDITIONALs. Otherwise they will be commented
|
||||
# out and we'll fail at `make dist'
|
||||
vulkan_api_xml = $(top_srcdir)/src/vulkan/registry/vk.xml
|
||||
|
||||
vulkan/anv_entrypoints.h: vulkan/anv_entrypoints_gen.py $(vulkan_api_xml)
|
||||
$(MKDIR_GEN)
|
||||
$(AM_V_GEN) cat $(vulkan_api_xml) |\
|
||||
$(PYTHON2) $(srcdir)/vulkan/anv_entrypoints_gen.py header > $@
|
||||
|
||||
vulkan/anv_entrypoints.c: vulkan/anv_entrypoints_gen.py $(vulkan_api_xml)
|
||||
$(MKDIR_GEN)
|
||||
$(AM_V_GEN) cat $(vulkan_api_xml) |\
|
||||
$(PYTHON2) $(srcdir)/vulkan/anv_entrypoints_gen.py code > $@
|
||||
|
||||
BUILT_SOURCES += $(VULKAN_GENERATED_FILES)
|
||||
CLEANFILES += \
|
||||
$(VULKAN_GENERATED_FILES) \
|
||||
vulkan/dev_icd.json \
|
||||
vulkan/intel_icd.@host_cpu@.json
|
||||
|
||||
EXTRA_DIST += \
|
||||
$(top_srcdir)/include/vulkan/vk_icd.h \
|
||||
vulkan/anv_entrypoints_gen.py \
|
||||
vulkan/dev_icd.json.in \
|
||||
vulkan/intel_icd.json.in \
|
||||
vulkan/TODO
|
||||
|
||||
vulkan/dev_icd.json : vulkan/dev_icd.json.in
|
||||
$(AM_V_GEN) $(SED) \
|
||||
-e "s#@build_libdir@#${abs_top_builddir}/${LIB_DIR}#" \
|
||||
< $(srcdir)/vulkan/dev_icd.json.in > $@
|
||||
|
||||
vulkan/intel_icd.@host_cpu@.json : vulkan/intel_icd.json.in
|
||||
$(AM_V_GEN) $(SED) \
|
||||
-e "s#@install_libdir@#${libdir}#" \
|
||||
< $(srcdir)/vulkan/intel_icd.json.in > $@
|
||||
|
||||
if HAVE_INTEL_VULKAN
|
||||
|
||||
vulkan_includedir = $(includedir)/vulkan
|
||||
|
||||
noinst_HEADERS += \
|
||||
$(top_srcdir)/include/vulkan/vk_platform.h \
|
||||
$(top_srcdir)/include/vulkan/vulkan.h
|
||||
|
||||
vulkan_include_HEADERS = \
|
||||
$(top_srcdir)/include/vulkan/vulkan_intel.h
|
||||
|
||||
lib_LTLIBRARIES += vulkan/libvulkan_intel.la
|
||||
|
||||
check_LTLIBRARIES += vulkan/libvulkan-test.la
|
||||
|
||||
VULKAN_PER_GEN_LIBS = \
|
||||
vulkan/libanv-gen7.la \
|
||||
vulkan/libanv-gen75.la \
|
||||
vulkan/libanv-gen8.la \
|
||||
vulkan/libanv-gen9.la
|
||||
|
||||
noinst_LTLIBRARIES += $(VULKAN_PER_GEN_LIBS)
|
||||
|
||||
VULKAN_CFLAGS = \
|
||||
$(AM_CFLAGS) \
|
||||
-msse2
|
||||
|
||||
VULKAN_CPPFLAGS = \
|
||||
-I$(top_srcdir)/src/compiler \
|
||||
-I$(top_srcdir)/src/intel/compiler \
|
||||
-I$(top_builddir)/src/intel/vulkan \
|
||||
-I$(top_srcdir)/src/intel/vulkan \
|
||||
-I$(top_srcdir)/src/vulkan/wsi \
|
||||
-I$(top_builddir)/src/vulkan/util \
|
||||
-I$(top_srcdir)/src/vulkan/util \
|
||||
$(LIBDRM_CFLAGS) \
|
||||
$(AM_CPPFLAGS)
|
||||
|
||||
vulkan_libanv_gen7_la_CFLAGS = $(VULKAN_CFLAGS)
|
||||
vulkan_libanv_gen7_la_CPPFLAGS = $(VULKAN_CPPFLAGS) -DGEN_VERSIONx10=70
|
||||
vulkan_libanv_gen7_la_SOURCES = $(VULKAN_GEN7_FILES)
|
||||
|
||||
vulkan_libanv_gen75_la_CFLAGS = $(VULKAN_CFLAGS)
|
||||
vulkan_libanv_gen75_la_CPPFLAGS = $(VULKAN_CPPFLAGS) -DGEN_VERSIONx10=75
|
||||
vulkan_libanv_gen75_la_SOURCES = $(VULKAN_GEN75_FILES)
|
||||
|
||||
vulkan_libanv_gen8_la_CFLAGS = $(VULKAN_CFLAGS)
|
||||
vulkan_libanv_gen8_la_CPPFLAGS = $(VULKAN_CPPFLAGS) -DGEN_VERSIONx10=80
|
||||
vulkan_libanv_gen8_la_SOURCES = $(VULKAN_GEN8_FILES)
|
||||
|
||||
vulkan_libanv_gen9_la_CFLAGS = $(VULKAN_CFLAGS)
|
||||
vulkan_libanv_gen9_la_CPPFLAGS = $(VULKAN_CPPFLAGS) -DGEN_VERSIONx10=90
|
||||
vulkan_libanv_gen9_la_SOURCES = $(VULKAN_GEN9_FILES)
|
||||
|
||||
VULKAN_SOURCES = \
|
||||
$(VULKAN_GENERATED_FILES) \
|
||||
$(VULKAN_FILES)
|
||||
|
||||
VULKAN_LIB_DEPS = $(LIBDRM_LIBS)
|
||||
|
||||
if HAVE_PLATFORM_X11
|
||||
VULKAN_CPPFLAGS += \
|
||||
$(XCB_DRI3_CFLAGS) \
|
||||
-DVK_USE_PLATFORM_XCB_KHR \
|
||||
-DVK_USE_PLATFORM_XLIB_KHR
|
||||
|
||||
VULKAN_SOURCES += $(VULKAN_WSI_X11_FILES)
|
||||
|
||||
# FIXME: Use pkg-config for X11-xcb ldflags.
|
||||
VULKAN_LIB_DEPS += $(XCB_DRI3_LIBS) -lX11-xcb
|
||||
endif
|
||||
|
||||
|
||||
if HAVE_PLATFORM_WAYLAND
|
||||
VULKAN_CPPFLAGS += \
|
||||
$(WAYLAND_CFLAGS) \
|
||||
-DVK_USE_PLATFORM_WAYLAND_KHR
|
||||
|
||||
VULKAN_SOURCES += $(VULKAN_WSI_WAYLAND_FILES)
|
||||
|
||||
VULKAN_LIB_DEPS += $(WAYLAND_LIBS)
|
||||
endif
|
||||
|
||||
noinst_LTLIBRARIES += vulkan/libvulkan_common.la
|
||||
vulkan_libvulkan_common_la_SOURCES = $(VULKAN_SOURCES)
|
||||
vulkan_libvulkan_common_la_CFLAGS = $(VULKAN_CFLAGS)
|
||||
vulkan_libvulkan_common_la_CPPFLAGS = $(VULKAN_CPPFLAGS)
|
||||
|
||||
VULKAN_LIB_DEPS += \
|
||||
vulkan/libvulkan_common.la \
|
||||
$(VULKAN_PER_GEN_LIBS) \
|
||||
compiler/libintel_compiler.la \
|
||||
common/libintel_common.la \
|
||||
isl/libisl.la \
|
||||
blorp/libblorp.la \
|
||||
$(top_builddir)/src/vulkan/libvulkan_util.la \
|
||||
$(top_builddir)/src/vulkan/libvulkan_wsi.la \
|
||||
$(top_builddir)/src/compiler/nir/libnir.la \
|
||||
$(top_builddir)/src/util/libmesautil.la \
|
||||
$(PTHREAD_LIBS) \
|
||||
$(DLOPEN_LIBS) \
|
||||
-lm
|
||||
|
||||
nodist_EXTRA_vulkan_libvulkan_intel_la_SOURCES = dummy.cpp
|
||||
vulkan_libvulkan_intel_la_SOURCES = $(VULKAN_GEM_FILES)
|
||||
vulkan_libvulkan_intel_la_LIBADD = $(VULKAN_LIB_DEPS)
|
||||
vulkan_libvulkan_intel_la_CFLAGS = $(VULKAN_CFLAGS)
|
||||
vulkan_libvulkan_intel_la_CPPFLAGS = $(VULKAN_CPPFLAGS)
|
||||
|
||||
vulkan_libvulkan_intel_la_LDFLAGS = \
|
||||
-shared \
|
||||
-module \
|
||||
-no-undefined \
|
||||
-avoid-version \
|
||||
-Wl,--build-id=sha1 \
|
||||
$(BSYMBOLIC) \
|
||||
$(GC_SECTIONS) \
|
||||
$(LD_NO_UNDEFINED)
|
||||
|
||||
icdconfdir = @VULKAN_ICD_INSTALL_DIR@
|
||||
icdconf_DATA = vulkan/intel_icd.@host_cpu@.json
|
||||
# The following is used for development purposes, by setting VK_ICD_FILENAMES.
|
||||
noinst_DATA += vulkan/dev_icd.json
|
||||
|
||||
# Libvulkan with dummy gem. Used for unit tests.
|
||||
vulkan_libvulkan_test_la_SOURCES = $(VULKAN_GEM_STUB_FILES)
|
||||
vulkan_libvulkan_test_la_LIBADD = $(VULKAN_LIB_DEPS)
|
||||
vulkan_libvulkan_test_la_CFLAGS = $(VULKAN_CFLAGS)
|
||||
vulkan_libvulkan_test_la_CPPFLAGS = $(VULKAN_CPPFLAGS)
|
||||
|
||||
include $(top_srcdir)/install-lib-links.mk
|
||||
|
||||
noinst_HEADERS += \
|
||||
vulkan/tests/state_pool_test_helper.h
|
||||
|
||||
VULKAN_TESTS = \
|
||||
vulkan/tests/block_pool_no_free \
|
||||
vulkan/tests/state_pool_no_free \
|
||||
vulkan/tests/state_pool_free_list_only \
|
||||
vulkan/tests/state_pool
|
||||
|
||||
VULKAN_TEST_LDADD = \
|
||||
vulkan/libvulkan-test.la \
|
||||
$(PTHREAD_LIBS) -lm -lstdc++
|
||||
|
||||
check_PROGRAMS += $(VULKAN_TESTS)
|
||||
TESTS += $(VULKAN_TESTS)
|
||||
|
||||
vulkan_tests_block_pool_no_free_CPPFLAGS = $(VULKAN_CPPFLAGS)
|
||||
vulkan_tests_block_pool_no_free_LDADD = $(VULKAN_TEST_LDADD)
|
||||
|
||||
vulkan_tests_state_pool_no_free_CPPFLAGS = $(VULKAN_CPPFLAGS)
|
||||
vulkan_tests_state_pool_no_free_LDADD = $(VULKAN_TEST_LDADD)
|
||||
|
||||
vulkan_tests_state_pool_free_list_only_CPPFLAGS = $(VULKAN_CPPFLAGS)
|
||||
vulkan_tests_state_pool_free_list_only_LDADD = $(VULKAN_TEST_LDADD)
|
||||
|
||||
vulkan_tests_state_pool_CPPFLAGS = $(VULKAN_CPPFLAGS)
|
||||
vulkan_tests_state_pool_LDADD = $(VULKAN_TEST_LDADD)
|
||||
|
||||
endif
|
||||
|
|
@ -1,204 +0,0 @@
|
|||
# Copyright © 2015 Intel Corporation
|
||||
#
|
||||
# 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.
|
||||
|
||||
include Makefile.sources
|
||||
|
||||
vulkan_includedir = $(includedir)/vulkan
|
||||
|
||||
noinst_HEADERS = \
|
||||
$(top_srcdir)/include/vulkan/vk_platform.h \
|
||||
$(top_srcdir)/include/vulkan/vulkan.h
|
||||
|
||||
vulkan_include_HEADERS = \
|
||||
$(top_srcdir)/include/vulkan/vulkan_intel.h
|
||||
|
||||
lib_LTLIBRARIES = libvulkan_intel.la
|
||||
|
||||
check_LTLIBRARIES = libvulkan-test.la
|
||||
|
||||
PER_GEN_LIBS = \
|
||||
libanv-gen7.la \
|
||||
libanv-gen75.la \
|
||||
libanv-gen8.la \
|
||||
libanv-gen9.la
|
||||
|
||||
noinst_LTLIBRARIES = $(PER_GEN_LIBS)
|
||||
|
||||
# The gallium includes are for the util/u_math.h include from main/macros.h
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/include \
|
||||
-I$(top_builddir)/src \
|
||||
-I$(top_srcdir)/src \
|
||||
-I$(top_srcdir)/src/vulkan/wsi \
|
||||
-I$(top_builddir)/src/vulkan/util \
|
||||
-I$(top_srcdir)/src/vulkan/util \
|
||||
-I$(top_builddir)/src/compiler \
|
||||
-I$(top_srcdir)/src/compiler \
|
||||
-I$(top_builddir)/src/compiler/nir \
|
||||
-I$(top_srcdir)/src/mapi \
|
||||
-I$(top_srcdir)/src/mesa \
|
||||
-I$(top_srcdir)/src/gallium/auxiliary \
|
||||
-I$(top_srcdir)/src/gallium/include \
|
||||
-I$(top_builddir)/src/intel \
|
||||
-I$(top_srcdir)/src/intel
|
||||
|
||||
AM_CPPFLAGS += \
|
||||
$(LIBDRM_CFLAGS) \
|
||||
$(INTEL_CFLAGS) \
|
||||
$(VALGRIND_CFLAGS) \
|
||||
$(DEFINES)
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(VISIBILITY_CFLAGS) \
|
||||
-Wno-override-init -msse2
|
||||
|
||||
libanv_gen7_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=70
|
||||
libanv_gen7_la_SOURCES = $(GEN7_FILES)
|
||||
|
||||
libanv_gen75_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=75
|
||||
libanv_gen75_la_SOURCES = $(GEN75_FILES)
|
||||
|
||||
libanv_gen8_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=80
|
||||
libanv_gen8_la_SOURCES = $(GEN8_FILES)
|
||||
|
||||
libanv_gen9_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=90
|
||||
libanv_gen9_la_SOURCES = $(GEN9_FILES)
|
||||
|
||||
|
||||
VULKAN_SOURCES = \
|
||||
$(VULKAN_GENERATED_FILES) \
|
||||
$(VULKAN_FILES)
|
||||
|
||||
VULKAN_LIB_DEPS = $(LIBDRM_LIBS)
|
||||
|
||||
if HAVE_PLATFORM_X11
|
||||
AM_CPPFLAGS += \
|
||||
$(XCB_DRI3_CFLAGS) \
|
||||
-DVK_USE_PLATFORM_XCB_KHR \
|
||||
-DVK_USE_PLATFORM_XLIB_KHR
|
||||
|
||||
VULKAN_SOURCES += $(VULKAN_WSI_X11_FILES)
|
||||
|
||||
# FIXME: Use pkg-config for X11-xcb ldflags.
|
||||
VULKAN_LIB_DEPS += $(XCB_DRI3_LIBS) -lX11-xcb
|
||||
endif
|
||||
|
||||
|
||||
if HAVE_PLATFORM_WAYLAND
|
||||
AM_CPPFLAGS += \
|
||||
$(WAYLAND_CFLAGS) \
|
||||
-DVK_USE_PLATFORM_WAYLAND_KHR
|
||||
|
||||
VULKAN_SOURCES += $(VULKAN_WSI_WAYLAND_FILES)
|
||||
|
||||
VULKAN_LIB_DEPS += \
|
||||
$(WAYLAND_LIBS)
|
||||
endif
|
||||
|
||||
noinst_LTLIBRARIES += libvulkan_common.la
|
||||
libvulkan_common_la_SOURCES = $(VULKAN_SOURCES)
|
||||
|
||||
VULKAN_LIB_DEPS += \
|
||||
libvulkan_common.la \
|
||||
$(top_builddir)/src/vulkan/libvulkan_util.la \
|
||||
$(top_builddir)/src/vulkan/libvulkan_wsi.la \
|
||||
$(top_builddir)/src/intel/compiler/libintel_compiler.la \
|
||||
$(top_builddir)/src/compiler/nir/libnir.la \
|
||||
$(top_builddir)/src/util/libmesautil.la \
|
||||
$(top_builddir)/src/intel/common/libintel_common.la \
|
||||
$(top_builddir)/src/intel/isl/libisl.la \
|
||||
$(top_builddir)/src/intel/blorp/libblorp.la \
|
||||
$(PER_GEN_LIBS) \
|
||||
$(PTHREAD_LIBS) \
|
||||
$(DLOPEN_LIBS) \
|
||||
-lm
|
||||
|
||||
nodist_EXTRA_libvulkan_intel_la_SOURCES = dummy.cpp
|
||||
libvulkan_intel_la_SOURCES = $(VULKAN_GEM_FILES)
|
||||
|
||||
vulkan_api_xml = $(top_srcdir)/src/vulkan/registry/vk.xml
|
||||
|
||||
anv_entrypoints.h : anv_entrypoints_gen.py $(vulkan_api_xml)
|
||||
$(AM_V_GEN) cat $(vulkan_api_xml) |\
|
||||
$(PYTHON2) $(srcdir)/anv_entrypoints_gen.py header > $@
|
||||
|
||||
anv_entrypoints.c : anv_entrypoints_gen.py $(vulkan_api_xml)
|
||||
$(AM_V_GEN) cat $(vulkan_api_xml) |\
|
||||
$(PYTHON2) $(srcdir)/anv_entrypoints_gen.py code > $@
|
||||
|
||||
BUILT_SOURCES = $(VULKAN_GENERATED_FILES)
|
||||
CLEANFILES = $(BUILT_SOURCES) dev_icd.json intel_icd.@host_cpu@.json
|
||||
EXTRA_DIST = \
|
||||
$(top_srcdir)/include/vulkan/vk_icd.h \
|
||||
anv_entrypoints_gen.py \
|
||||
dev_icd.json.in \
|
||||
intel_icd.json.in \
|
||||
TODO
|
||||
|
||||
libvulkan_intel_la_LIBADD = $(VULKAN_LIB_DEPS)
|
||||
|
||||
libvulkan_intel_la_LDFLAGS = \
|
||||
-shared \
|
||||
-module \
|
||||
-no-undefined \
|
||||
-avoid-version \
|
||||
-Wl,--build-id=sha1 \
|
||||
$(BSYMBOLIC) \
|
||||
$(GC_SECTIONS) \
|
||||
$(LD_NO_UNDEFINED)
|
||||
|
||||
|
||||
icdconfdir = @VULKAN_ICD_INSTALL_DIR@
|
||||
icdconf_DATA = intel_icd.@host_cpu@.json
|
||||
# The following is used for development purposes, by setting VK_ICD_FILENAMES.
|
||||
noinst_DATA = dev_icd.json
|
||||
|
||||
dev_icd.json : dev_icd.json.in
|
||||
$(AM_V_GEN) $(SED) \
|
||||
-e "s#@build_libdir@#${abs_top_builddir}/${LIB_DIR}#" \
|
||||
< $(srcdir)/dev_icd.json.in > $@
|
||||
|
||||
intel_icd.@host_cpu@.json : intel_icd.json.in
|
||||
$(AM_V_GEN) $(SED) \
|
||||
-e "s#@install_libdir@#${libdir}#" \
|
||||
< $(srcdir)/intel_icd.json.in > $@
|
||||
|
||||
# Libvulkan with dummy gem. Used for unit tests.
|
||||
libvulkan_test_la_SOURCES = $(VULKAN_GEM_STUB_FILES)
|
||||
libvulkan_test_la_LIBADD = $(VULKAN_LIB_DEPS)
|
||||
|
||||
include $(top_srcdir)/install-lib-links.mk
|
||||
|
||||
noinst_HEADERS += \
|
||||
tests/state_pool_test_helper.h
|
||||
|
||||
LDADD = \
|
||||
libvulkan-test.la \
|
||||
$(PTHREAD_LIBS) -lm -lstdc++
|
||||
|
||||
check_PROGRAMS = \
|
||||
tests/block_pool_no_free \
|
||||
tests/state_pool_no_free \
|
||||
tests/state_pool_free_list_only \
|
||||
tests/state_pool
|
||||
|
||||
TESTS = $(check_PROGRAMS)
|
||||
|
|
@ -1,85 +0,0 @@
|
|||
# Copyright © 2015 Intel Corporation
|
||||
#
|
||||
# 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.
|
||||
|
||||
VULKAN_FILES := \
|
||||
anv_allocator.c \
|
||||
anv_batch_chain.c \
|
||||
anv_blorp.c \
|
||||
anv_cmd_buffer.c \
|
||||
anv_descriptor_set.c \
|
||||
anv_device.c \
|
||||
anv_dump.c \
|
||||
anv_formats.c \
|
||||
anv_genX.h \
|
||||
anv_image.c \
|
||||
anv_intel.c \
|
||||
anv_nir.h \
|
||||
anv_nir_apply_dynamic_offsets.c \
|
||||
anv_nir_apply_pipeline_layout.c \
|
||||
anv_nir_lower_input_attachments.c \
|
||||
anv_nir_lower_push_constants.c \
|
||||
anv_pass.c \
|
||||
anv_pipeline.c \
|
||||
anv_pipeline_cache.c \
|
||||
anv_private.h \
|
||||
anv_util.c \
|
||||
anv_wsi.c \
|
||||
vk_format_info.h
|
||||
|
||||
VULKAN_WSI_WAYLAND_FILES := \
|
||||
anv_wsi_wayland.c
|
||||
|
||||
VULKAN_WSI_X11_FILES := \
|
||||
anv_wsi_x11.c
|
||||
|
||||
VULKAN_GEM_FILES := \
|
||||
anv_gem.c
|
||||
|
||||
VULKAN_GEM_STUB_FILES := \
|
||||
anv_gem_stubs.c
|
||||
|
||||
VULKAN_GENERATED_FILES := \
|
||||
anv_entrypoints.c \
|
||||
anv_entrypoints.h
|
||||
|
||||
GENX_FILES := \
|
||||
genX_blorp_exec.c \
|
||||
genX_cmd_buffer.c \
|
||||
genX_gpu_memcpy.c \
|
||||
genX_pipeline.c \
|
||||
genX_query.c \
|
||||
genX_state.c
|
||||
|
||||
GEN7_FILES := \
|
||||
gen7_cmd_buffer.c \
|
||||
$(GENX_FILES)
|
||||
|
||||
GEN75_FILES := \
|
||||
gen7_cmd_buffer.c \
|
||||
$(GENX_FILES)
|
||||
|
||||
GEN8_FILES := \
|
||||
gen8_cmd_buffer.c \
|
||||
$(GENX_FILES)
|
||||
|
||||
GEN9_FILES := \
|
||||
gen8_cmd_buffer.c \
|
||||
$(GENX_FILES)
|
||||
Loading…
Add table
Reference in a new issue