summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIonen Wolkens <ionen@gentoo.org>2022-04-24 18:14:13 -0400
committerIonen Wolkens <ionen@gentoo.org>2022-04-24 19:58:49 -0400
commitac1b7e0eeda71029d1c9faba0a3bb56386ae9cc2 (patch)
tree6897ad9578ad0cdf4511a5043c8f27761373ef86 /games-util/libstrangle
parentapp-pda/gtkpod: destabilize 2.1.5-r3 for ~amd64, ~x86 (diff)
downloadgentoo-ac1b7e0eeda71029d1c9faba0a3bb56386ae9cc2.tar.gz
gentoo-ac1b7e0eeda71029d1c9faba0a3bb56386ae9cc2.tar.bz2
gentoo-ac1b7e0eeda71029d1c9faba0a3bb56386ae9cc2.zip
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@gentoo.org>
Diffstat (limited to 'games-util/libstrangle')
-rw-r--r--games-util/libstrangle/Manifest1
-rw-r--r--games-util/libstrangle/libstrangle-0.1.1_p20220222.ebuild71
-rw-r--r--games-util/libstrangle/metadata.xml11
3 files changed, 83 insertions, 0 deletions
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>ionen@gentoo.org</email>
+ <name>Ionen Wolkens</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gitlab">torkel104/libstrangle</remote-id>
+ </upstream>
+</pkgmetadata>