anv/clear: Handle ClearImage on 3-D images
[mesa.git] / src / intel / vulkan / Makefile.am
index 40775ec3403a10884ececd3b61d8b77f9a77e55a..3294fa481796030725bea678ad9ac609c538c27e 100644 (file)
 
 include Makefile.sources
 
-SUBDIRS = . tests
-
 vulkan_includedir = $(includedir)/vulkan
 
-vulkan_include_HEADERS =                               \
-       $(top_srcdir)/include/vulkan/vk_platform.h      \
-       $(top_srcdir)/include/vulkan/vulkan.h           \
+vulkan_include_HEADERS = \
+       $(top_srcdir)/include/vulkan/vk_platform.h \
+       $(top_srcdir)/include/vulkan/vulkan.h \
        $(top_srcdir)/include/vulkan/vulkan_intel.h
 
-# Used when generating entrypoints to filter out unwanted extensions
-VULKAN_ENTRYPOINT_CPPFLAGS = \
-   -I$(top_srcdir)/include/vulkan \
-   -DVK_USE_PLATFORM_XCB_KHR
-
 lib_LTLIBRARIES = libvulkan_intel.la
 
 check_LTLIBRARIES = libvulkan-test.la
@@ -54,29 +47,21 @@ AM_CPPFLAGS = \
        $(VALGRIND_CFLAGS) \
        $(DEFINES) \
        -I$(top_srcdir)/include \
+       -I$(top_builddir)/src \
        -I$(top_srcdir)/src \
+       -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_srcdir)/src/intel/ \
-       -I$(top_builddir)/src \
-       -I$(top_builddir)/src/compiler \
-       -I$(top_builddir)/src/compiler/nir \
-       -I$(top_builddir)/src/intel
-
-AM_CFLAGS = -DVK_USE_PLATFORM_XCB_KHR -Wno-override-init -msse2
-
-VULKAN_SOURCES = \
-       $(VULKAN_FILES) \
-       $(VULKAN_WSI_X11_FILES)
-
-BUILT_SOURCES = \
-       $(VULKAN_GENERATED_FILES)
+       -I$(top_builddir)/src/intel \
+       -I$(top_srcdir)/src/intel
 
+AM_CFLAGS = -Wno-override-init -msse2
 
 libanv_gen7_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=70
 libanv_gen7_la_SOURCES = $(GEN7_FILES)
@@ -90,49 +75,78 @@ libanv_gen8_la_SOURCES = $(GEN8_FILES)
 libanv_gen9_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=90
 libanv_gen9_la_SOURCES = $(GEN9_FILES)
 
-if HAVE_EGL_PLATFORM_WAYLAND
-BUILT_SOURCES += \
-       wayland-drm-protocol.c \
-       wayland-drm-client-protocol.h
 
-%-protocol.c : $(top_srcdir)/src/egl/wayland/wayland-drm/%.xml
-       $(AM_V_GEN)$(WAYLAND_SCANNER) code < $< > $@
+VULKAN_SOURCES = \
+       $(VULKAN_GENERATED_FILES) \
+       $(VULKAN_FILES)
+
+VULKAN_LIB_DEPS =
 
-%-client-protocol.h : $(top_srcdir)/src/egl/wayland/wayland-drm/%.xml
-       $(AM_V_GEN)$(WAYLAND_SCANNER) client-header < $< > $@
 
-AM_CPPFLAGS += -I$(top_srcdir)/src/egl/wayland/wayland-drm
-VULKAN_SOURCES += \
-       wayland-drm-protocol.c \
-       $(VULKAN_WSI_WAYLAND_FILES)
-AM_CFLAGS += -DHAVE_WAYLAND_PLATFORM -DVK_USE_PLATFORM_WAYLAND_KHR
+if HAVE_PLATFORM_X11
+AM_CPPFLAGS += \
+       $(XCB_DRI3_CFLAGS) \
+       -DVK_USE_PLATFORM_XCB_KHR
 
-VULKAN_ENTRYPOINT_CPPFLAGS += -DVK_USE_PLATFORM_WAYLAND_KHR
+VULKAN_SOURCES += $(VULKAN_WSI_X11_FILES)
+VULKAN_LIB_DEPS += $(XCB_DRI3_LIBS)
+endif
+
+
+if HAVE_PLATFORM_WAYLAND
+AM_CPPFLAGS += \
+       -I$(top_builddir)/src/egl/wayland/wayland-drm \
+       -I$(top_srcdir)/src/egl/wayland/wayland-drm \
+       $(WAYLAND_CFLAGS) \
+       -DVK_USE_PLATFORM_WAYLAND_KHR
+
+VULKAN_SOURCES += $(VULKAN_WSI_WAYLAND_FILES)
+
+VULKAN_LIB_DEPS += \
+       $(top_builddir)/src/egl/wayland/wayland-drm/libwayland-drm.la \
+       $(WAYLAND_LIBS)
 endif
 
 noinst_LTLIBRARIES += libvulkan_common.la
 libvulkan_common_la_SOURCES = $(VULKAN_SOURCES)
 
+VULKAN_LIB_DEPS += \
+       libvulkan_common.la \
+       $(top_builddir)/src/mesa/drivers/dri/i965/libi965_compiler.la \
+       $(top_builddir)/src/compiler/nir/libnir.la \
+       $(top_builddir)/src/util/libmesautil.la \
+       $(top_builddir)/src/intel/isl/libisl.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_ENTRYPOINT_CPPFLAGS = \
+       $(XCB_DRI3_CFLAGS) \
+       $(WAYLAND_CFLAGS) \
+       -DVK_USE_PLATFORM_XCB_KHR \
+       -DVK_USE_PLATFORM_WAYLAND_KHR
+
 anv_entrypoints.h : anv_entrypoints_gen.py $(vulkan_include_HEADERS)
-       $(AM_V_GEN) cat $(vulkan_include_HEADERS) | $(CPP) $(VULKAN_ENTRYPOINT_CPPFLAGS) - | $(PYTHON2) $< header > $@
+       $(AM_V_GEN)$(CPP) $(VULKAN_ENTRYPOINT_CPPFLAGS) $(top_srcdir)/include/vulkan/vulkan_intel.h |\
+       $(PYTHON2) $(srcdir)/anv_entrypoints_gen.py header > $@
 
 anv_entrypoints.c : anv_entrypoints_gen.py $(vulkan_include_HEADERS)
-       $(AM_V_GEN) cat $(vulkan_include_HEADERS) | $(CPP) $(VULKAN_ENTRYPOINT_CPPFLAGS) - | $(PYTHON2) $< code > $@
+       $(AM_V_GEN)$(CPP) $(VULKAN_ENTRYPOINT_CPPFLAGS) $(top_srcdir)/include/vulkan/vulkan_intel.h |\
+       $(PYTHON2) $(srcdir)/anv_entrypoints_gen.py code > $@
 
-CLEANFILES = $(BUILT_SOURCES)
+BUILT_SOURCES = $(VULKAN_GENERATED_FILES)
+CLEANFILES = $(BUILT_SOURCES) dev_icd.json
+EXTRA_DIST = \
+       $(top_srcdir)/include/vulkan/vk_icd.h \
+       anv_entrypoints_gen.py \
+       dev_icd.json.in \
+       intel_icd.json
 
-libvulkan_intel_la_LIBADD = $(WAYLAND_LIBS) \
-       libvulkan_common.la \
-       -lxcb -lxcb-dri3 -lxcb-present -lxcb-sync -lxshmfence \
-       $(top_builddir)/src/intel/isl/libisl.la \
-       $(top_builddir)/src/mesa/drivers/dri/i965/libi965_compiler.la \
-       $(top_builddir)/src/mesa/libmesa.la \
-       $(top_builddir)/src/mesa/drivers/dri/common/libdri_test_stubs.la \
-       -lpthread -ldl -lstdc++ \
-       $(PER_GEN_LIBS) \
-       -lm
+libvulkan_intel_la_LIBADD = $(VULKAN_LIB_DEPS)
 
 libvulkan_intel_la_LDFLAGS = \
        -shared \
@@ -150,11 +164,26 @@ 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}#"
+               -e "s#@build_libdir@#${abs_top_builddir}/${LIB_DIR}#" \
                < $(srcdir)/dev_icd.json.in > $@
 
 # Libvulkan with dummy gem. Used for unit tests.
 libvulkan_test_la_SOURCES = $(VULKAN_GEM_STUB_FILES)
-libvulkan_test_la_LIBADD = $(libvulkan_intel_la_LIBADD)
+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)