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
next prev 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