commit:     ac1b7e0eeda71029d1c9faba0a3bb56386ae9cc2
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 24 22:14:13 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Apr 24 23:58:49 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac1b7e0e

games-util/libstrangle: new package, add 0.1.1_p20220222

Useful tool to limit frame rate, change vsync state,
and some other features.

Use snapshot to include the >=glibc-2.34 fix among others.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 games-util/libstrangle/Manifest                    |  1 +
 .../libstrangle/libstrangle-0.1.1_p20220222.ebuild | 71 ++++++++++++++++++++++
 games-util/libstrangle/metadata.xml                | 11 ++++
 3 files changed, 83 insertions(+)

diff --git a/games-util/libstrangle/Manifest b/games-util/libstrangle/Manifest
new file mode 100644
index 000000000000..970a75cf0622
--- /dev/null
+++ b/games-util/libstrangle/Manifest
@@ -0,0 +1 @@
+DIST libstrangle-0.1.1_p20220222.tar.gz 947358 BLAKE2B 
2222550e28d4af1dafc43691f3021fdac30445e3223673b74f69adfe681c9b1879925b3961dc9d086f2e5cadeeca7488e1a53bcdb6e302b2e4087a0f2a19a380
 SHA512 
5f6d7bc5acb95be4c0083a16134dfe7c6a95ab6a73cca69ec2d92cf75ebf5ecfaea08dda0d887e8e136fd410c988c0bd36289c2a17df3eb1698b453bb38c4011

diff --git a/games-util/libstrangle/libstrangle-0.1.1_p20220222.ebuild 
b/games-util/libstrangle/libstrangle-0.1.1_p20220222.ebuild
new file mode 100644
index 000000000000..1ecf01f317d3
--- /dev/null
+++ b/games-util/libstrangle/libstrangle-0.1.1_p20220222.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib multilib-minimal toolchain-funcs
+
+STRANGLE_COMMIT="0273e318e3b0cc759155db8729ad74266b74cb9b"
+
+DESCRIPTION="Frame rate limiter for OpenGL/Vulkan"
+HOMEPAGE="https://gitlab.com/torkel104/libstrangle/";
+SRC_URI="https://gitlab.com/torkel104/libstrangle/-/archive/${STRANGLE_COMMIT}/${P}.tar.gz";
+S="${WORKDIR}/${PN}-${STRANGLE_COMMIT}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# Note: requires a glibc version with DT_HASH fix or split libdl.so.
+# For the latter, <glibc-2.34 is acceptable but skip so portage
+# doesn't suggest downgrading to stable users.
+# https://gitlab.com/torkel104/libstrangle/-/issues/59
+# (cleanup these after fixed glibc is stable for some time)
+RDEPEND="
+       sys-apps/grep[pcre]
+       elibc_glibc? (
+               || (
+                       >=sys-libs/glibc-2.35-r4
+                       (
+                               >=sys-libs/glibc-2.34-r12
+                               <sys-libs/glibc-2.35
+                       )
+               )
+       )"
+DEPEND="
+       media-libs/libglvnd
+       dev-util/vulkan-headers"
+
+QA_SONAME="usr/lib.*/libstrangle.*" # intended for dlopen()
+
+src_prepare() {
+       default
+
+       sed -ri '/^C(XX)?FLAGS=/s|=|+=$(CPPFLAGS) |' makefile || die
+
+       multilib_copy_sources
+}
+
+multilib_src_compile() {
+       emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD{,XX}FLAGS="${LDFLAGS}" 
native
+}
+
+multilib_src_install() {
+       local emakeargs=(
+               DESTDIR="${D}"
+               prefix="${EPREFIX}"/usr
+               libdir="${EPREFIX}"/usr/$(get_libdir)
+       )
+
+       emake "${emakeargs[@]}" install-native
+}
+
+multilib_src_install_all() {
+       emake DESTDIR="${D}" prefix="${EPREFIX}"/usr install-common
+       einstalldocs
+}
+
+pkg_postinst() {
+       has_multilib_profile && use amd64 && use !abi_x86_32 &&
+               ewarn "Note that USE=abi_x86_32 is needed for 32bit games 
(common with steam / wine)"
+}

diff --git a/games-util/libstrangle/metadata.xml 
b/games-util/libstrangle/metadata.xml
new file mode 100644
index 000000000000..1af7db338edf
--- /dev/null
+++ b/games-util/libstrangle/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>Ionen Wolkens</name>
+       </maintainer>
+       <upstream>
+               <remote-id type="gitlab">torkel104/libstrangle</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to