From: "demize" <demize@unstable.systems>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/proj/guru:dev commit in: media-sound/spct/
Date: Sat, 12 Jul 2025 01:57:39 +0000 (UTC) [thread overview]
Message-ID: <1752285197.fa3e56c1bac20ff00d81ac66ff84468eb808b1d7.demize@gentoo> (raw)
commit: fa3e56c1bac20ff00d81ac66ff84468eb808b1d7
Author: Vivian Heisz (vhz) <demize <AT> unstable <DOT> systems>
AuthorDate: Sat Jul 12 01:47:09 2025 +0000
Commit: demize <demize <AT> unstable <DOT> systems>
CommitDate: Sat Jul 12 01:53:17 2025 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=fa3e56c1
media-sound/spct: add 1.1.7
This is a bit of an overhaul to the ebuild, done because upstream added
a shared/static library version of the application.
With the changes here, prefix builds, multilib builds, and cross builds
should all work correctly (and I've tested to make sure they do).
Support is included for the binary itself, with the shared library gated
behind a USE flag.
Signed-off-by: Vivian Heisz (vhz) <demize <AT> unstable.systems>
media-sound/spct/Manifest | 1 +
media-sound/spct/metadata.xml | 5 +++-
media-sound/spct/spct-1.1.7.ebuild | 61 ++++++++++++++++++++++++++++++++++++++
3 files changed, 66 insertions(+), 1 deletion(-)
diff --git a/media-sound/spct/Manifest b/media-sound/spct/Manifest
index 761b25a829..f1bf80c187 100644
--- a/media-sound/spct/Manifest
+++ b/media-sound/spct/Manifest
@@ -1 +1,2 @@
DIST spct-1.1.3.tar.gz 652776 BLAKE2B 7bd4da790c3afbc7bbc31b7f9c457b07a83034518375626265fe6da0fd13441bdf96fbb14b8b5b28ca92d78d993a1eaff8dc23bbe2f2ad7234c1c34369333d68 SHA512 58df651f0613d4cc61bb70236a97d711b9f99024ccbc8db7d89dc8459cdf0fc256491ff41abb87935e7cf808c5933933683fc69d59a181fc8bd684824cbfac1d
+DIST spct-1.1.7.tar.gz 653891 BLAKE2B 500347fa1c0738dc2b2440e7d212b6558bf82ca6a83275b4c76b6ead3a623805337fbde66a2c1ca6829f1c6f9a25331ee5c0cdb418a142f692fad624bec5d1db SHA512 d26fb611da309325aec3d7d5d2c64105b0f441249d796fc255a7f07b04bc479cd115cf579be682b4d54238a45d3aa619524d2c2afd07c5b35292f66137786358
diff --git a/media-sound/spct/metadata.xml b/media-sound/spct/metadata.xml
index f10996f6fd..ffef7a3d41 100644
--- a/media-sound/spct/metadata.xml
+++ b/media-sound/spct/metadata.xml
@@ -2,7 +2,7 @@
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <name>demize</name>
+ <name>Vivian Heisz (vhz)</name>
<email>demize@unstable.systems</email>
</maintainer>
<upstream>
@@ -13,4 +13,7 @@
<remote-id type="codeberg">jneen/spct</remote-id>
<bugs-to>https://codeberg.org/jneen/spct/issues/new</bugs-to>
</upstream>
+ <use>
+ <flag name="libspct">Build spct as a shared library (libspct) for use in other applications.</flag>
+ </use>
</pkgmetadata>
diff --git a/media-sound/spct/spct-1.1.7.ebuild b/media-sound/spct/spct-1.1.7.ebuild
new file mode 100644
index 0000000000..a9bd62ecd9
--- /dev/null
+++ b/media-sound/spct/spct-1.1.7.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs multilib-build
+
+DESCRIPTION="CLI program for playing back and rendering SPC files."
+HOMEPAGE="https://codeberg.org/jneen/spct"
+SRC_URI="https://codeberg.org/jneen/spct/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-3"
+SLOT="0/$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64"
+IUSE="libspct"
+
+DEPEND="
+ media-libs/game-music-emu[${MULTILIB_USEDEP}]
+ sys-libs/ncurses:=[${MULTILIB_USEDEP}]
+"
+BDEPEND="virtual/pkgconfig"
+RDEPEND="
+ ${DEPEND}
+"
+
+src_compile() {
+ # We use multilib-build directly here because the existing build system is designed with cross-compiles in mind
+ # We also specify the platform and arch manually, since otherwise those are determined by `uname` on CHOST
+ spct_compile() {
+ tc-export CXX
+ if multilib_is_native_abi; then
+ # only build the binary on the native ABI
+ emake VERSION="${PV}" PLATFORM="linux" ARCH="$(tc-arch)" LIBGME_NO_VENDOR=1 bin
+ fi
+
+ if use libspct; then
+ emake VERSION="${PV}" PLATFORM="linux" ARCH="$(tc-arch)" LIBGME_NO_VENDOR=1 lib
+ fi
+ }
+
+ multilib_foreach_abi spct_compile
+}
+
+src_install() {
+ spct_install() {
+ if multilib_is_native_abi; then
+ # only install the binary on the native ABI
+ emake PREFIX="${ED}/usr" LIBDIR="${ED}/usr/$(get_libdir)" VERSION="${PV}" PLATFORM="linux" \
+ ARCH="$(tc-arch)" LIBGME_NO_VENDOR=1 install-bin
+ fi
+
+ if use libspct; then
+ emake PREFIX="${ED}/usr" LIBDIR="${ED}/usr/$(get_libdir)" VERSION="${PV}" PLATFORM="linux" \
+ ARCH="$(tc-arch)" LIBGME_NO_VENDOR=1 install-lib
+ fi
+ }
+
+ multilib_foreach_abi spct_install
+ dodoc README.md
+}
next reply other threads:[~2025-07-12 1:57 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-12 1:57 demize [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-08-11 15:11 [gentoo-commits] repo/proj/guru:dev commit in: media-sound/spct/ demize
2025-08-11 15:11 demize
2025-04-03 19:28 demize
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=1752285197.fa3e56c1bac20ff00d81ac66ff84468eb808b1d7.demize@gentoo \
--to=demize@unstable.systems \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/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