mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Roland Hieber <rhi@pengutronix.de>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH 1/4] vulkan-loader: new package
Date: Fri, 10 Jan 2020 10:36:21 +0100	[thread overview]
Message-ID: <20200110093621.f2bbf2jgitxpp7nc@pengutronix.de> (raw)
In-Reply-To: <20200110091200.28555-1-p.zabel@pengutronix.de>

On Fri, Jan 10, 2020 at 10:11:57AM +0100, Philipp Zabel wrote:
> Add the Vulkan loader dispatch library and Vulkan headers in known-good
> combination. There is a file scripts/know_good.json in the vulkan-loader
> source tree that contains the vulkan-header commit to be used for the
> SDK release.
> 
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
> ---
>  rules/vulkan-loader.in   | 23 ++++++++++
>  rules/vulkan-loader.make | 97 ++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 120 insertions(+)
>  create mode 100644 rules/vulkan-loader.in
>  create mode 100644 rules/vulkan-loader.make
> 
> diff --git a/rules/vulkan-loader.in b/rules/vulkan-loader.in
> new file mode 100644
> index 000000000000..8134e373de89
> --- /dev/null
> +++ b/rules/vulkan-loader.in
> @@ -0,0 +1,23 @@
> +## SECTION=multimedia_libs
> +
> +config VULKAN_LOADER
> +	tristate
> +	prompt "vulkan-loader"
> +	select HOST_CMAKE
> +	select HOST_QEMU
> +	select LIBXCB		if VULKAN_LOADER_X11
> +	select WAYLAND		if VULKAN_LOADER_WAYLAND
> +	help
> +	  Vulkan ICD Loader
> +
> +if VULKAN_LOADER
> +
> +config VULKAN_LOADER_X11
> +	bool
> +	prompt "X11"
> +
> +config VULKAN_LOADER_WAYLAND
> +	bool
> +	prompt "Wayland"
> +
> +endif
> diff --git a/rules/vulkan-loader.make b/rules/vulkan-loader.make
> new file mode 100644
> index 000000000000..ff2f4a1ea48c
> --- /dev/null
> +++ b/rules/vulkan-loader.make
> @@ -0,0 +1,97 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2020 by Philipp Zabel <p.zabel@pengutronix.de>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_VULKAN_LOADER) += vulkan-loader
> +
> +#
> +# Paths and names
> +#
> +VULKAN_LOADER_VERSION	:= 1.1.130
> +VULKAN_LOADER_MD5	:= 857a8ec5b90d681aa0c66d0e8e8f298f
> +VULKAN_LOADER		:= vulkan-loader-$(VULKAN_LOADER_VERSION)
> +VULKAN_LOADER_SUFFIX	:= tar.gz
> +VULKAN_LOADER_URL	:= https://github.com/KhronosGroup/Vulkan-Loader/archive/sdk-$(VULKAN_LOADER_VERSION).0.$(VULKAN_LOADER_SUFFIX)
> +VULKAN_LOADER_SOURCE	:= $(SRCDIR)/$(VULKAN_LOADER).$(VULKAN_LOADER_SUFFIX)
> +VULKAN_LOADER_DIR	:= $(BUILDDIR)/$(VULKAN_LOADER)
> +VULKAN_LOADER_LICENSE	:= Apache-2.0
> +VULKAN_LOADER_LICENSE_FILES := file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac
> +

For the license part:
Reviewed-by: Roland Hieber <rhi@pengutronix.de>
(There are a few others in the source, but these are more permissive, so
Apache-2.0 as a whole is okay for now.)

> +VULKAN_HEADERS_VERSION	:= 1.1.130
> +VULKAN_HEADERS_MD5	:= 5a623558b956c4853b4a62d2bf0979d1
> +VULKAN_HEADERS_SUFFIX	:= tar.gz
> +VULKAN_HEADERS_URL	:= https://github.com/KhronosGroup/Vulkan-Headers/archive/v$(VULKAN_HEADERS_VERSION).$(VULKAN_HEADERS_SUFFIX)
> +VULKAN_HEADERS_SOURCE	:= $(SRCDIR)/vulkan-headers-$(VULKAN_HEADERS_VERSION).$(VULKAN_HEADERS_SUFFIX)
> +$(VULKAN_HEADERS_SOURCE) := VULKAN_HEADERS
> +VULKAN_HEADERS_DIR	:= $(VULKAN_LOADER_DIR)/vulkan-headers
> +
> +VULKAN_LOADER_SOURCES	:= $(VULKAN_LOADER_SOURCE) $(VULKAN_HEADERS_SOURCE)
> +
> +# ----------------------------------------------------------------------------
> +# Extract
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/vulkan-loader.extract:
> +	@$(call targetinfo)
> +	@$(call clean, $(VULKAN_LOADER_DIR))
> +	@$(call extract, VULKAN_LOADER)
> +	@$(call extract, VULKAN_HEADERS)
> +	@$(call patchin, VULKAN_LOADER)
> +	@$(call touch)
> +
> +# ----------------------------------------------------------------------------
> +# Prepare
> +# ----------------------------------------------------------------------------
> +
> +VULKAN_LOADER_CONF_TOOL	:= cmake
> +VULKAN_LOADER_CONF_OPT	:= \
> +	$(CROSS_CMAKE_USR) \
> +	-DCMAKE_BUILD_TYPE=Release \
> +	-DCMAKE_CROSSCOMPILING_EMULATOR=$(PTXDIST_SYSROOT_CROSS)/bin/qemu-cross \
> +	-DCMAKE_INSTALL_LIBDIR=/usr/lib \
> +	-DBUILD_WSI_XCB_SUPPORT=$(call ptx/onoff, PTXCONF_VULKAN_LOADER_X11) \
> +	-DBUILD_WSI_XLIB_SUPPORT=$(call ptx/onoff, PTXCONF_VULKAN_LOADER_X11) \
> +	-DBUILD_WSI_WAYLAND_SUPPORT=$(call ptx/onoff, PTXCONF_VULKAN_LOADER_WAYLAND) \
> +	-DBUILD_LOADER=ON \
> +	-DBUILD_TESTS=OFF \
> +	-DVulkanHeaders_INCLUDE_DIR=$(VULKAN_HEADERS_DIR)/include \
> +	-DVulkanRegistry_DIR=$(VULKAN_HEADERS_DIR)/registry
> +
> +# ----------------------------------------------------------------------------
> +# Install
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/vulkan-loader.install:
> +	@$(call targetinfo)
> +	@$(call world/install, VULKAN_LOADER)
> +	@cp -rp $(VULKAN_HEADERS_DIR)/include $(VULKAN_LOADER_PKGDIR)/usr
> +	@cp -rp $(VULKAN_HEADERS_DIR)/registry $(VULKAN_LOADER_PKGDIR)/usr/share/vulkan
> +	@$(call touch)
> +
> +# ----------------------------------------------------------------------------
> +# Target-Install
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/vulkan-loader.targetinstall:
> +	@$(call targetinfo)
> +
> +	@$(call install_init, vulkan-loader)
> +	@$(call install_fixup, vulkan-loader, PRIORITY, optional)
> +	@$(call install_fixup, vulkan-loader, SECTION, base)
> +	@$(call install_fixup, vulkan-loader, AUTHOR, "Philipp Zabel <p.zabel@pengutronix.de>")
> +	@$(call install_fixup, vulkan-loader, DESCRIPTION, Vulkan ICD Loader)
> +
> +	@$(call install_lib, vulkan-loader, 0, 0, 0644, libvulkan)
> +
> +	@$(call install_finish, vulkan-loader)
> +
> +	@$(call touch)
> +
> +# vim: syntax=make
> -- 
> 2.20.1
> 
> 
> _______________________________________________
> ptxdist mailing list
> ptxdist@pengutronix.de
> 

-- 
Roland Hieber, Pengutronix e.K.          | r.hieber@pengutronix.de     |
Steuerwalder Str. 21                     | https://www.pengutronix.de/ |
31137 Hildesheim, Germany                | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686         | Fax:   +49-5121-206917-5555 |

_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

      parent reply	other threads:[~2020-01-10  9:36 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-10  9:11 Philipp Zabel
2020-01-10  9:11 ` [ptxdist] [PATCH 2/4] mesalib: enable zink gallium driver Philipp Zabel
2020-01-10  9:11 ` [ptxdist] [PATCH 3/4] mesalib: enable vulkan drivers Philipp Zabel
2020-01-10  9:12 ` [ptxdist] [PATCH 4/4] gst-plugins-bad1: enable vulkan plugin Philipp Zabel
2020-01-10  9:36 ` Roland Hieber [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200110093621.f2bbf2jgitxpp7nc@pengutronix.de \
    --to=rhi@pengutronix.de \
    --cc=ptxdist@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox