X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fvulkan%2FMakefile.am;h=dc7e32aaa68fd2e1a3c96204973e18ad558362d5;hb=ae7898dfdbe5c8dab7d11c71862353f1ae43feb0;hp=e51f3cf01d7afe32dc2c82702551cd4d8d235ab8;hpb=d5c9955d3eaa7311e2b2350b6964bae516c7b7b2;p=mesa.git diff --git a/src/vulkan/Makefile.am b/src/vulkan/Makefile.am index e51f3cf01d7..dc7e32aaa68 100644 --- a/src/vulkan/Makefile.am +++ b/src/vulkan/Makefile.am @@ -1,197 +1,115 @@ -# 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. - -SUBDIRS = . tests +include Makefile.sources -vulkan_includedir = $(includedir)/vulkan - -vulkan_include_HEADERS = \ - $(top_srcdir)/include/vulkan/vk_platform.h \ - $(top_srcdir)/include/vulkan/vulkan.h \ - $(top_srcdir)/include/vulkan/vulkan_intel.h +noinst_LTLIBRARIES = libvulkan_wsi.la libvulkan_util.la -# Used when generating entrypoints to filter out unwanted extensions -VULKAN_ENTRYPOINT_CPPFLAGS = \ - -I$(top_srcdir)/include/vulkan \ - -DVK_USE_PLATFORM_XCB_KHR \ - -DVK_USE_PLATFORM_WAYLAND_KHR +vulkan_includedir = $(includedir)/vulkan +vulkan_api_xml = $(top_srcdir)/src/vulkan/registry/vk.xml -lib_LTLIBRARIES = libvulkan.la +MKDIR_GEN = $(AM_V_at)$(MKDIR_P) $(@D) +PYTHON_GEN = $(AM_V_GEN)$(PYTHON) $(PYTHON_FLAGS) -check_LTLIBRARIES = libvulkan-test.la +EXTRA_DIST = \ + util/gen_enum_to_str.py \ + util/meson.build \ + wsi/meson.build \ + meson.build -PER_GEN_LIBS = \ - libanv-gen7.la \ - libanv-gen75.la \ - libanv-gen8.la \ - libanv-gen9.la +VULKAN_UTIL_SOURCES = \ + $(VULKAN_UTIL_FILES) \ + $(VULKAN_UTIL_GENERATED_FILES) -noinst_LTLIBRARIES = $(PER_GEN_LIBS) libisl.la +util/vk_enum_to_str.c util/vk_enum_to_str.h: util/gen_enum_to_str.py \ + $(vulkan_api_xml) + $(MKDIR_GEN) + $(PYTHON_GEN) $(srcdir)/util/gen_enum_to_str.py \ + --xml $(vulkan_api_xml) \ + --outdir $(top_builddir)/src/vulkan/util -# The gallium includes are for the util/u_math.h include from main/macros.h +libvulkan_util_la_SOURCES = $(VULKAN_UTIL_SOURCES) AM_CPPFLAGS = \ - $(INTEL_CFLAGS) \ - $(VALGRIND_CFLAGS) \ $(DEFINES) \ -I$(top_srcdir)/include \ + -I$(top_srcdir)/include/drm-uapi \ -I$(top_srcdir)/src \ - -I$(top_srcdir)/src/glsl/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/vulkan/util \ -I$(top_srcdir)/src/gallium/auxiliary \ - -I$(top_srcdir)/src/gallium/include \ - -I$(top_builddir)/src \ - -I$(top_builddir)/src/glsl/nir \ - -I$(top_builddir)/src/vulkan - -libvulkan_la_CFLAGS = $(CFLAGS) -Wno-override-init - -VULKAN_SOURCES = \ - anv_allocator.c \ - anv_cmd_buffer.c \ - anv_batch_chain.c \ - anv_descriptor_set.c \ - anv_device.c \ - anv_dump.c \ - anv_entrypoints.c \ - anv_entrypoints.h \ - anv_formats.c \ - anv_image.c \ - anv_intel.c \ - anv_meta.c \ - anv_meta_clear.c \ - anv_nir_apply_dynamic_offsets.c \ - anv_nir_apply_pipeline_layout.c \ - anv_nir_lower_push_constants.c \ - anv_pass.c \ - anv_pipeline.c \ - anv_private.h \ - anv_query.c \ - anv_util.c \ - anv_wsi.c \ - anv_wsi_x11.c - -libisl_la_CFLAGS = $(libvulkan_la_CFLAGS) - -libisl_la_SOURCES = \ - isl.c \ - isl_format_layout.c \ - isl_gen4.c \ - isl_gen4.h \ - isl_gen6.c \ - isl_gen6.h \ - isl_gen7.c \ - isl_gen7.h \ - isl_gen8.c \ - isl_gen8.h \ - isl_gen9.c \ - isl_gen9.h \ - isl_image.c \ - $(NULL) - -BUILT_SOURCES = \ - anv_entrypoints.h \ - anv_entrypoints.c \ - isl_format_layout.c - -libanv_gen7_la_SOURCES = \ - genX_cmd_buffer.c \ - gen7_cmd_buffer.c \ - gen7_pipeline.c \ - gen7_state.c -libanv_gen7_la_CFLAGS = $(libvulkan_la_CFLAGS) -DANV_GENx10=70 - -libanv_gen75_la_SOURCES = \ - genX_cmd_buffer.c \ - gen7_cmd_buffer.c \ - gen7_pipeline.c \ - gen7_state.c -libanv_gen75_la_CFLAGS = $(libvulkan_la_CFLAGS) -DANV_GENx10=75 - -libanv_gen8_la_SOURCES = \ - genX_cmd_buffer.c \ - gen8_cmd_buffer.c \ - gen8_pipeline.c \ - gen8_state.c -libanv_gen8_la_CFLAGS = $(libvulkan_la_CFLAGS) -DANV_GENx10=80 - -libanv_gen9_la_SOURCES = \ - genX_cmd_buffer.c \ - gen8_cmd_buffer.c \ - gen8_pipeline.c \ - gen8_state.c -libanv_gen9_la_CFLAGS = $(libvulkan_la_CFLAGS) -DANV_GENx10=90 - -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 < $< > $@ - -%-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 \ - anv_wsi_wayland.c -libvulkan_la_CFLAGS += -DHAVE_WAYLAND_PLATFORM + -I$(top_srcdir)/src/gallium/include + +AM_CFLAGS = \ + $(LIBDRM_CFLAGS) \ + $(VISIBILITY_CFLAGS) + +VULKAN_WSI_GENERATED_SOURCES = + +VULKAN_WSI_SOURCES = \ + $(VULKAN_WSI_FILES) + +if HAVE_PLATFORM_X11 +AM_CPPFLAGS += \ + $(XCB_DRI3_CFLAGS) \ + -DVK_USE_PLATFORM_XCB_KHR \ + -DVK_USE_PLATFORM_XLIB_KHR + +VULKAN_WSI_SOURCES += $(VULKAN_WSI_X11_FILES) +endif + +if HAVE_PLATFORM_DRM +AM_CPPFLAGS += \ + -DVK_USE_PLATFORM_DISPLAY_KHR + +VULKAN_WSI_SOURCES += $(VULKAN_WSI_DISPLAY_FILES) endif -libvulkan_la_SOURCES = \ - $(VULKAN_SOURCES) \ - anv_gem.c +if HAVE_XLIB_LEASE +AM_CPPFLAGS += \ + $(XCB_RANDR_CFLAGS) \ + $(XLIB_RANDR_CFLAGS) \ + -DVK_USE_PLATFORM_XLIB_XRANDR_EXT +endif + +CLEANFILES = \ + $(VULKAN_UTIL_GENERATED_FILES) \ + $(VULKAN_WSI_WAYLAND_GENERATED_FILES) + +WL_DRM_XML = $(top_srcdir)/src/egl/wayland/wayland-drm/wayland-drm.xml -anv_entrypoints.h : anv_entrypoints_gen.py $(vulkan_include_HEADERS) - $(AM_V_GEN) cat $(vulkan_include_HEADERS) | $(CPP) $(VULKAN_ENTRYPOINT_CPPFLAGS) - | $(PYTHON2) $< header > $@ +wsi/wayland-drm-protocol.c : $(WL_DRM_XML) + $(MKDIR_GEN) + $(AM_V_GEN)$(WAYLAND_SCANNER) $(SCANNER_ARG) $< $@ -anv_entrypoints.c : anv_entrypoints_gen.py $(vulkan_include_HEADERS) - $(AM_V_GEN) cat $(vulkan_include_HEADERS) | $(CPP) $(VULKAN_ENTRYPOINT_CPPFLAGS) - | $(PYTHON2) $< code > $@ +wsi/wayland-drm-client-protocol.h : $(WL_DRM_XML) + $(MKDIR_GEN) + $(AM_V_GEN)$(WAYLAND_SCANNER) client-header $< $@ -isl_format_layout.c: isl_format_layout_gen.bash \ - isl_format_layout.csv - $(AM_V_GEN)$(srcdir)/isl_format_layout_gen.bash \ - <$(srcdir)/isl_format_layout.csv >$@ +WL_DMABUF_XML = $(WAYLAND_PROTOCOLS_DATADIR)/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml -CLEANFILES = $(BUILT_SOURCES) +wsi/linux-dmabuf-unstable-v1-protocol.c : $(WL_DMABUF_XML) + $(MKDIR_GEN) + $(AM_V_GEN)$(WAYLAND_SCANNER) $(SCANNER_ARG) $< $@ -libvulkan_la_LIBADD = $(WAYLAND_LIBS) -lxcb -lxcb-dri3 \ - $(top_builddir)/src/mesa/drivers/dri/i965/libi965_compiler.la \ - ../mesa/libmesa.la \ - ../mesa/drivers/dri/common/libdri_test_stubs.la \ - -lpthread -ldl -lstdc++ \ - $(PER_GEN_LIBS) libisl.la +wsi/linux-dmabuf-unstable-v1-client-protocol.h : $(WL_DMABUF_XML) + $(MKDIR_GEN) + $(AM_V_GEN)$(WAYLAND_SCANNER) client-header $< $@ -# Libvulkan with dummy gem. Used for unit tests. +if HAVE_PLATFORM_WAYLAND +wsi/linux-dmabuf-unstable-v1-protocol.lo: wsi/linux-dmabuf-unstable-v1-client-protocol.h +wsi/wayland-drm-protocol.lo: wsi/wayland-drm-client-protocol.h +wsi/wsi_common_wayland.lo: wsi/linux-dmabuf-unstable-v1-client-protocol.h wsi/wayland-drm-client-protocol.h -libvulkan_test_la_SOURCES = \ - $(VULKAN_SOURCES) \ - anv_gem_stubs.c +AM_CPPFLAGS += \ + -I$(top_builddir)/src/vulkan/wsi \ + $(WAYLAND_CLIENT_CFLAGS) \ + -DVK_USE_PLATFORM_WAYLAND_KHR + +VULKAN_WSI_SOURCES += \ + $(VULKAN_WSI_WAYLAND_FILES) + +VULKAN_WSI_GENERATED_SOURCES += \ + $(VULKAN_WSI_WAYLAND_GENERATED_FILES) + +endif -libvulkan_test_la_CFLAGS = $(libvulkan_la_CFLAGS) -libvulkan_test_la_LIBADD = $(libvulkan_la_LIBADD) +nodist_libvulkan_wsi_la_SOURCES = $(VULKAN_WSI_GENERATED_SOURCES) -include $(top_srcdir)/install-lib-links.mk +libvulkan_wsi_la_SOURCES = $(VULKAN_WSI_SOURCES)