X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fintel%2Fvulkan%2FMakefile.am;h=4a7bb1899084bc4b301b3f44614dc87ead348d1f;hb=722ab3de9f0e30e1dfbbd2b5217330b85f53bcec;hp=8a545a896571107ccd7415fe75173697aabb702a;hpb=82d0b59f02ba7041b12836874f1eb3dd2b58d979;p=mesa.git diff --git a/src/intel/vulkan/Makefile.am b/src/intel/vulkan/Makefile.am index 8a545a89657..4a7bb189908 100644 --- a/src/intel/vulkan/Makefile.am +++ b/src/intel/vulkan/Makefile.am @@ -23,25 +23,20 @@ include Makefile.sources 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 PER_GEN_LIBS = \ - libanv-gen7.la \ - libanv-gen75.la \ - libanv-gen8.la \ - libanv-gen9.la + libanv-gen7.la \ + libanv-gen75.la \ + libanv-gen8.la \ + libanv-gen9.la noinst_LTLIBRARIES = $(PER_GEN_LIBS) @@ -52,30 +47,24 @@ AM_CPPFLAGS = \ $(VALGRIND_CFLAGS) \ $(DEFINES) \ -I$(top_srcdir)/include \ + -I$(top_builddir)/src \ -I$(top_srcdir)/src \ + -I$(top_srcdir)/src/vulkan/wsi \ + -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_GENERATED_FILES) \ - $(VULKAN_FILES) \ - $(VULKAN_WSI_X11_FILES) - -BUILT_SOURCES = \ - $(VULKAN_GENERATED_FILES) + -I$(top_builddir)/src/intel \ + -I$(top_srcdir)/src/intel +AM_CFLAGS = \ + $(VISIBILITY_CFLAGS) \ + -Wno-override-init -msse2 libanv_gen7_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=70 libanv_gen7_la_SOURCES = $(GEN7_FILES) @@ -89,72 +78,112 @@ 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) -%-client-protocol.h : $(top_srcdir)/src/egl/wayland/wayland-drm/%.xml - $(AM_V_GEN)$(WAYLAND_SCANNER) client-header < $< > $@ +VULKAN_LIB_DEPS = -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 \ + -DVK_USE_PLATFORM_XLIB_KHR -VULKAN_ENTRYPOINT_CPPFLAGS += -DVK_USE_PLATFORM_WAYLAND_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 += \ + -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/vulkan/wsi/libvulkan_wsi.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/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) 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) cat $(vulkan_include_HEADERS) |\ + $(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) cat $(vulkan_include_HEADERS) |\ + $(PYTHON2) $(srcdir)/anv_entrypoints_gen.py code > $@ -CLEANFILES = $(BUILT_SOURCES) +.PHONY: anv_timestamp.h -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 +anv_timestamp.h: + @echo "Updating anv_timestamp.h" + $(AM_V_GEN) echo "#define ANV_TIMESTAMP \"$(TIMESTAMP_CMD)\"" > $@ + +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 + +libvulkan_intel_la_LIBADD = $(VULKAN_LIB_DEPS) libvulkan_intel_la_LDFLAGS = \ -shared \ -module \ -no-undefined \ -avoid-version \ + $(BSYMBOLIC) \ $(GC_SECTIONS) \ $(LD_NO_UNDEFINED) icdconfdir = @VULKAN_ICD_INSTALL_DIR@ -icdconf_DATA = intel_icd.json +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}#" + -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 = $(libvulkan_intel_la_LIBADD) +libvulkan_test_la_LIBADD = $(VULKAN_LIB_DEPS) include $(top_srcdir)/install-lib-links.mk