[Mesa-dev] [PATCH 17/17] intel/vulkan: Get rid of recursive make
Emil Velikov
emil.l.velikov at gmail.com
Wed Mar 8 17:16:08 UTC 2017
From: Jason Ekstrand <jason.ekstrand at intel.com>
v2 [Emil Velikov]
- Various fixes and initial stab at the Android build.
- Keep the generation rules/EXTRA_DIST outside the conditional
---
On second thought... we'd want a couple of small fixes for configure.ac
but those can come later.
configure.ac | 1 -
src/Makefile.am | 5 -
src/intel/Android.mk | 2 +-
src/intel/{vulkan/Android.mk => Android.vulkan.mk} | 22 ++-
src/intel/Makefile.am | 6 +
src/intel/Makefile.sources | 65 ++++++
src/intel/Makefile.vulkan.am | 219 +++++++++++++++++++++
src/intel/vulkan/Makefile.am | 206 -------------------
src/intel/vulkan/Makefile.sources | 85 --------
9 files changed, 303 insertions(+), 308 deletions(-)
rename src/intel/{vulkan/Android.mk => Android.vulkan.mk} (91%)
create mode 100644 src/intel/Makefile.vulkan.am
delete mode 100644 src/intel/vulkan/Makefile.am
delete mode 100644 src/intel/vulkan/Makefile.sources
diff --git a/configure.ac b/configure.ac
index 5ab906898a..628aec3ceb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -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
diff --git a/src/Makefile.am b/src/Makefile.am
index 01e9edfc48..aa5f8aaf7d 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -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
diff --git a/src/intel/Android.mk b/src/intel/Android.mk
index be2ba2fd9e..db6c770f35 100644
--- a/src/intel/Android.mk
+++ b/src/intel/Android.mk
@@ -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
diff --git a/src/intel/vulkan/Android.mk b/src/intel/Android.vulkan.mk
similarity index 91%
rename from src/intel/vulkan/Android.mk
rename to src/intel/Android.vulkan.mk
index ae6b7c7a9d..80abc589a6 100644
--- a/src/intel/vulkan/Android.mk
+++ b/src/intel/Android.vulkan.mk
@@ -52,15 +52,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 := \
@@ -85,7 +86,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)
@@ -105,7 +106,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)
@@ -125,7 +126,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)
@@ -145,7 +146,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)
@@ -178,9 +179,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
diff --git a/src/intel/Makefile.am b/src/intel/Makefile.am
index 6f31bb3f77..6f93e8a780 100644
--- a/src/intel/Makefile.am
+++ b/src/intel/Makefile.am
@@ -49,6 +49,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 =
@@ -64,4 +68,6 @@ include Makefile.genxml.am
include Makefile.isl.am
include Makefile.tools.am
+include Makefile.vulkan.am
+
CLEANFILES += $(BUILT_SOURCES)
diff --git a/src/intel/Makefile.sources b/src/intel/Makefile.sources
index 2ab36838b0..7c39127981 100644
--- a/src/intel/Makefile.sources
+++ b/src/intel/Makefile.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)
diff --git a/src/intel/Makefile.vulkan.am b/src/intel/Makefile.vulkan.am
new file mode 100644
index 0000000000..36a4a156e8
--- /dev/null
+++ b/src/intel/Makefile.vulkan.am
@@ -0,0 +1,219 @@
+# 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. at 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. at 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_srcdir)/src/intel/vulkan \
+ -I$(top_srcdir)/src/vulkan \
+ -I$(top_srcdir)/src/vulkan/wsi \
+ -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. at 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
diff --git a/src/intel/vulkan/Makefile.am b/src/intel/vulkan/Makefile.am
deleted file mode 100644
index fa594c0759..0000000000
--- a/src/intel/vulkan/Makefile.am
+++ /dev/null
@@ -1,206 +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/mesa/drivers/dri/common \
- -I$(top_srcdir)/src/mesa/drivers/dri/i965 \
- -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. at 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. at 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. at 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)
diff --git a/src/intel/vulkan/Makefile.sources b/src/intel/vulkan/Makefile.sources
deleted file mode 100644
index fd149b247c..0000000000
--- a/src/intel/vulkan/Makefile.sources
+++ /dev/null
@@ -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)
--
2.11.1
More information about the mesa-dev
mailing list