commit: 4c92aee93dc8e74d760e0a0d2c649e80d3cceae7
Author: Yuan Liao <liaoyuan <AT> gmail <DOT> com>
AuthorDate: Sat Feb 19 23:39:45 2022 +0000
Commit: Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Sat Feb 19 23:39:45 2022 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=4c92aee9
dev-util/blueprint-compiler: Initial import
Signed-off-by: Yuan Liao <liaoyuan <AT> gmail.com>
dev-util/blueprint-compiler/Manifest | 1 +
.../blueprint-compiler-0.1.0_pre20220219.ebuild | 91 ++++++++++++++++++++++
.../blueprint-compiler-9999.ebuild | 91 ++++++++++++++++++++++
dev-util/blueprint-compiler/metadata.xml | 11 +++
4 files changed, 194 insertions(+)
diff --git a/dev-util/blueprint-compiler/Manifest
b/dev-util/blueprint-compiler/Manifest
new file mode 100644
index 000000000..c0379ca60
--- /dev/null
+++ b/dev-util/blueprint-compiler/Manifest
@@ -0,0 +1 @@
+DIST blueprint-compiler-0.1.0_pre20220219.tar.gz 51398 BLAKE2B
282fa95486d0fd18d8fc41682f29a4ecd9b94b4f4b617697809630d66d7fdcaebd8f1830bc0675f1f5917787c80d0d15f10a72230378390fd32642fc9473ccc2
SHA512
ca4b0f654bb212750f5381fa6d95dc66e0fbc494962bb60d370ec919bae239f657bcc3873522b3c903eb2441e684d83d794835df249b8107e40ac5429a53f067
diff --git
a/dev-util/blueprint-compiler/blueprint-compiler-0.1.0_pre20220219.ebuild
b/dev-util/blueprint-compiler/blueprint-compiler-0.1.0_pre20220219.ebuild
new file mode 100644
index 000000000..6dfccd58c
--- /dev/null
+++ b/dev-util/blueprint-compiler/blueprint-compiler-0.1.0_pre20220219.ebuild
@@ -0,0 +1,91 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..10} )
+
+inherit meson python-r1
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.gnome.org/jwestman/blueprint-compiler.git"
+else
+ # Upstream has not started to tag releases yet, so each keyworded
(normal)
+ # ebuild is to be based on a Git commit snapshot at this moment.
+ # Live ebuild: Might be intentionally left blank
+ # Normal ebuild: Fill in commit SHA-1 object name to this variable's
value
+ GIT_COMMIT="8ce748e62b6f7d10cf16a075a37c8f4b1f0267e4"
+ KEYWORDS="~amd64"
+
+
SRC_URI="https://gitlab.gnome.org/jwestman/blueprint-compiler/-/archive/${GIT_COMMIT}/blueprint-compiler-${GIT_COMMIT}.tar.gz
-> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${GIT_COMMIT}"
+fi
+
+DESCRIPTION="Compiler for Blueprint, a markup language for GTK user interfaces"
+HOMEPAGE="https://jwestman.pages.gitlab.gnome.org/blueprint-compiler/"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+
+IUSE="doc"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ doc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/furo[${PYTHON_USEDEP}]
+ )
+"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+"
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use doc docs)
+ )
+ python_foreach_impl meson_src_configure
+}
+
+src_compile() {
+ python_foreach_impl meson_src_compile
+}
+
+src_test() {
+ python_foreach_impl meson_src_test
+}
+
+src_install() {
+ my_src_install() {
+ local exe="${ED}/usr/bin/${PN}"
+
+ # Meson installs a Python script at ${ED}/usr/bin/${PN}; on
+ # Gentoo, the script should go into ${ED}/usr/lib/python-exec,
+ # and ${ED}/usr/bin/${PN} should be a symbolic link to
+ # ${ED}/usr/lib/python-exec/python-exec2.
+ #
+ # When multiple PYTHON_TARGETS are enabled, then after the
+ # package has been installed for one Python implementation,
+ # Meson will follow the ${ED}/usr/bin/${PN} symbolic link and
+ # install the script at ${ED}/usr/lib/python-exec/python-exec2
+ # for the remaining implementations, leading to file collision.
+ if [[ -L "${exe}" ]]; then
+ rm -v "${exe}" || die "Failed to remove symbolic link
${exe}"
+ fi
+
+ meson_src_install
+ python_doscript "${exe}"
+ python_optimize
+
+ # Install Sphinx-generated documentation only once
+ # since the documentation is supposed to be identical
+ # between different Python implementations
+ use doc && HTML_DOCS=( "${BUILD_DIR}/docs"/* )
+ }
+
+ python_foreach_impl my_src_install
+ einstalldocs
+}
diff --git a/dev-util/blueprint-compiler/blueprint-compiler-9999.ebuild
b/dev-util/blueprint-compiler/blueprint-compiler-9999.ebuild
new file mode 100644
index 000000000..7ffa8d633
--- /dev/null
+++ b/dev-util/blueprint-compiler/blueprint-compiler-9999.ebuild
@@ -0,0 +1,91 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..10} )
+
+inherit meson python-r1
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.gnome.org/jwestman/blueprint-compiler.git"
+else
+ # Upstream has not started to tag releases yet, so each keyworded
(normal)
+ # ebuild is to be based on a Git commit snapshot at this moment.
+ # Live ebuild: Might be intentionally left blank
+ # Normal ebuild: Fill in commit SHA-1 object name to this variable's
value
+ GIT_COMMIT=""
+ KEYWORDS="~amd64"
+
+
SRC_URI="https://gitlab.gnome.org/jwestman/blueprint-compiler/-/archive/${GIT_COMMIT}/blueprint-compiler-${GIT_COMMIT}.tar.gz
-> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${GIT_COMMIT}"
+fi
+
+DESCRIPTION="Compiler for Blueprint, a markup language for GTK user interfaces"
+HOMEPAGE="https://jwestman.pages.gitlab.gnome.org/blueprint-compiler/"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+
+IUSE="doc"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ doc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/furo[${PYTHON_USEDEP}]
+ )
+"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+"
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use doc docs)
+ )
+ python_foreach_impl meson_src_configure
+}
+
+src_compile() {
+ python_foreach_impl meson_src_compile
+}
+
+src_test() {
+ python_foreach_impl meson_src_test
+}
+
+src_install() {
+ my_src_install() {
+ local exe="${ED}/usr/bin/${PN}"
+
+ # Meson installs a Python script at ${ED}/usr/bin/${PN}; on
+ # Gentoo, the script should go into ${ED}/usr/lib/python-exec,
+ # and ${ED}/usr/bin/${PN} should be a symbolic link to
+ # ${ED}/usr/lib/python-exec/python-exec2.
+ #
+ # When multiple PYTHON_TARGETS are enabled, then after the
+ # package has been installed for one Python implementation,
+ # Meson will follow the ${ED}/usr/bin/${PN} symbolic link and
+ # install the script at ${ED}/usr/lib/python-exec/python-exec2
+ # for the remaining implementations, leading to file collision.
+ if [[ -L "${exe}" ]]; then
+ rm -v "${exe}" || die "Failed to remove symbolic link
${exe}"
+ fi
+
+ meson_src_install
+ python_doscript "${exe}"
+ python_optimize
+
+ # Install Sphinx-generated documentation only once
+ # since the documentation is supposed to be identical
+ # between different Python implementations
+ use doc && HTML_DOCS=( "${BUILD_DIR}/docs"/* )
+ }
+
+ python_foreach_impl my_src_install
+ einstalldocs
+}
diff --git a/dev-util/blueprint-compiler/metadata.xml
b/dev-util/blueprint-compiler/metadata.xml
new file mode 100644
index 000000000..bb8f2c8f4
--- /dev/null
+++ b/dev-util/blueprint-compiler/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>[email protected]</email>
+ <name>Yuan Liao</name>
+ </maintainer>
+ <upstream>
+
<doc>https://jwestman.pages.gitlab.gnome.org/blueprint-compiler/</doc>
+ </upstream>
+</pkgmetadata>