mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Philipp Zabel <p.zabel@pengutronix.de>
To: ptxdist@pengutronix.de
Subject: [ptxdist] [PATCH v3 3/4] glslang: new package
Date: Tue,  4 Feb 2020 10:51:33 +0100	[thread overview]
Message-ID: <20200204095134.7115-3-p.zabel@pengutronix.de> (raw)
In-Reply-To: <20200204095134.7115-1-p.zabel@pengutronix.de>

Add reference SPIR-V generator, required to build Vulkan validation
layers.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
---
Changes since v2:
 - fixed targetinstall to use install_copy where appropriate
 - added missing host-glslang
 - updated to 2020-01-05-g4fc7a33910fb, marked as known good in
   vulkan-validationlayers v1.1.131.
---
 rules/glslang.in        | 25 +++++++++++++
 rules/glslang.make      | 77 +++++++++++++++++++++++++++++++++++++++++
 rules/host-glslang.in   |  6 ++++
 rules/host-glslang.make | 34 ++++++++++++++++++
 4 files changed, 142 insertions(+)
 create mode 100644 rules/glslang.in
 create mode 100644 rules/glslang.make
 create mode 100644 rules/host-glslang.in
 create mode 100644 rules/host-glslang.make

diff --git a/rules/glslang.in b/rules/glslang.in
new file mode 100644
index 000000000000..c2a660243d31
--- /dev/null
+++ b/rules/glslang.in
@@ -0,0 +1,25 @@
+## SECTION=multimedia_libs
+
+menuconfig GLSLANG
+	tristate
+	prompt "glslang"
+	select HOST_CMAKE
+	help
+	  Khronos-reference SPIR-V generator
+
+if GLSLANG
+
+config GLSLANG_TOOLS
+	bool
+	prompt "install tools"
+	help
+	  Install glslangValidator and spirv-remap tools.
+
+config GLSLANG_LIBS
+	bool
+	prompt "install shared libraries"
+	help
+	  Install libglslang, libHLSL, libSPIRV, and libSPVRemapper shared
+	  libraries.
+
+endif
diff --git a/rules/glslang.make b/rules/glslang.make
new file mode 100644
index 000000000000..5d27fcb1c10e
--- /dev/null
+++ b/rules/glslang.make
@@ -0,0 +1,77 @@
+# -*-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_GLSLANG) += glslang
+
+#
+# Paths and names
+#
+GLSLANG_VERSION		:= 2020-01-05-g4fc7a33910fb
+GLSLANG_MD5		:= 1a2f2327ba83c393525a6d20844a6169
+GLSLANG			:= glslang-$(GLSLANG_VERSION)
+GLSLANG_SUFFIX		:= tar.gz
+GLSLANG_URL		:= https://github.com/KhronosGroup/glslang/archive/$(GLSLANG_VERSION).$(GLSLANG_SUFFIX)
+GLSLANG_SOURCE		:= $(SRCDIR)/$(GLSLANG).$(GLSLANG_SUFFIX)
+GLSLANG_DIR		:= $(BUILDDIR)/$(GLSLANG)
+GLSLANG_LICENSE		:= BSD-3-clause AND MIT AND Apple-MIT-License
+GLSLANG_LICENSE_FILES := file://LICENSE.txt;md5=918e668376010a04448a312fb37ae69b
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+GLSLANG_CONF_TOOL	:= cmake
+GLSLANG_CONF_OPT	:= \
+	$(CROSS_CMAKE_USR) \
+	-DCMAKE_BUILD_TYPE=Release \
+	-DCMAKE_INSTALL_LIBDIR=/usr/lib \
+	-DBUILD_SHARED_LIBS=ON \
+	-DBUILD_EXTERNAL=OFF \
+	-DSKIP_GLSLANG_INSTALL=OFF \
+	-DENABLE_SPVREMAPPER=ON \
+	-DENABLE_GLSLANG_BINARIES=ON \
+	-DENABLE_GLSLANG_WEB=OFF \
+	-DENABLE_GLSLANG_WEB_DEVEL=OFF \
+	-DENABLE_OPT=ON \
+	-DENABLE_PCH=ON \
+	-DENABLE_CTEST=OFF
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/glslang.targetinstall:
+	@$(call targetinfo)
+
+	@$(call install_init, glslang)
+	@$(call install_fixup, glslang, PRIORITY, optional)
+	@$(call install_fixup, glslang, SECTION, base)
+	@$(call install_fixup, glslang, AUTHOR, "Philipp Zabel <p.zabel@pengutronix.de>")
+	@$(call install_fixup, glslang, DESCRIPTION, Khronos-reference SPIR-V generator)
+
+ifdef GLSLANG_TOOLS
+	@$(call install_copy, glslang, 0, 0, 0755, -, /usr/bin/glslangValidator)
+	@$(call install_copy, glslang, 0, 0, 0755, -, /usr/bin/spirv-remap)
+endif
+
+ifdef GLSLANG_LIBS
+	@$(call install_lib, glslang, 0, 0, 0644, libglslang-default-resource-limits)
+	@$(call install_lib, glslang, 0, 0, 0644, libglslang)
+	@$(call install_lib, glslang, 0, 0, 0644, libHLSL)
+	@$(call install_lib, glslang, 0, 0, 0644, libSPIRV)
+	@$(call install_lib, glslang, 0, 0, 0644, libSPVRemapper)
+endif
+
+	@$(call install_finish, glslang)
+
+	@$(call touch)
+
+# vim: syntax=make
diff --git a/rules/host-glslang.in b/rules/host-glslang.in
new file mode 100644
index 000000000000..69f255572c2b
--- /dev/null
+++ b/rules/host-glslang.in
@@ -0,0 +1,6 @@
+## SECTION=hosttools_noprompt
+
+config HOST_GLSLANG
+	tristate
+	default y if ALLYES
+	select HOST_CMAKE
diff --git a/rules/host-glslang.make b/rules/host-glslang.make
new file mode 100644
index 000000000000..08a0e7590604
--- /dev/null
+++ b/rules/host-glslang.make
@@ -0,0 +1,34 @@
+# -*-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
+#
+HOST_PACKAGES-$(PTXCONF_HOST_GLSLANG) += host-glslang
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+HOST_GLSLANG_CONF_TOOL	:= cmake
+HOST_GLSLANG_CONF_OPT	:= \
+	$(HOST_CMAKE_OPT) \
+	-DCMAKE_BUILD_TYPE=Release \
+	-DCMAKE_INSTALL_LIBDIR=/usr/lib \
+	-DBUILD_SHARED_LIBS=OFF \
+	-DBUILD_EXTERNAL=OFF \
+	-DSKIP_GLSLANG_INSTALL=OFF \
+	-DENABLE_SPVREMAPPER=ON \
+	-DENABLE_GLSLANG_BINARIES=ON \
+	-DENABLE_GLSLANG_WEB=OFF \
+	-DENABLE_GLSLANG_WEB_DEVEL=OFF \
+	-DENABLE_OPT=ON \
+	-DENABLE_PCH=ON \
+	-DENABLE_CTEST=OFF
+
+# vim: syntax=make
-- 
2.20.1


_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

  parent reply	other threads:[~2020-02-04  9:51 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-04  9:51 [ptxdist] [PATCH v3 1/4] vulkan-loader: version bump 1.2.131.0 -> 1.2.131.1 Philipp Zabel
2020-02-04  9:51 ` [ptxdist] [PATCH v3 2/4] spirv-tools: version bump 2019.5 -> 2020-01-14-g323a81fc5e30 Philipp Zabel
2020-02-04  9:51 ` Philipp Zabel [this message]
2020-02-04  9:51 ` [ptxdist] [PATCH v3 4/4] vulkan-validationlayers: new package Philipp Zabel

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=20200204095134.7115-3-p.zabel@pengutronix.de \
    --to=p.zabel@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