summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/uxn/uxn-9999.ebuild66
1 files changed, 41 insertions, 25 deletions
diff --git a/app-emulation/uxn/uxn-9999.ebuild b/app-emulation/uxn/uxn-9999.ebuild
index 65b28334a901..ef6e9fc2dafe 100644
--- a/app-emulation/uxn/uxn-9999.ebuild
+++ b/app-emulation/uxn/uxn-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -9,47 +9,63 @@ DESCRIPTION="An assembler and emulator for the Uxn stack-machine, written in ANS
HOMEPAGE="https://wiki.xxiivv.com/site/uxn.html
https://git.sr.ht/~rabbits/uxn/"
-if [[ ${PV} == *9999* ]] ; then
+if [[ "${PV}" == *9999* ]] ; then
inherit git-r3
- EGIT_REPO_URI="https://git.sr.ht/~rabbits/uxn"
-elif [[ ${PV} == *_p20230609 ]] ; then
- COMMIT=f3674b2562e6c5557fc008edbac71d9fcfde64ff
- SRC_URI="https://git.sr.ht/~rabbits/uxn/archive/${COMMIT}.tar.gz
+
+ EGIT_REPO_URI="https://git.sr.ht/~rabbits/${PN}"
+elif [[ "${PV}" == *_p20240304 ]] ; then
+ COMMIT=e7c25fad05850f0e577fc83a140405ca6ccd93c2
+ SRC_URI="https://git.sr.ht/~rabbits/${PN}/archive/${COMMIT}.tar.gz
-> ${P}.tar.gz"
- S="${WORKDIR}"/uxn-${COMMIT}
+ S="${WORKDIR}/uxn-${COMMIT}"
+
KEYWORDS="~amd64 ~x86"
else
- die "wrong package version (PV), given: ${PV}"
+ die "wrong package version (PV), please update the ebuild, given: ${PV}"
fi
LICENSE="MIT"
SLOT="0"
-RDEPEND="media-libs/libsdl2:="
-DEPEND="${RDEPEND}"
+RDEPEND="
+ media-libs/libsdl2:=
+"
+DEPEND="
+ ${RDEPEND}
+"
-PATCHES=( "${FILESDIR}"/uxn-0_p20230609-build.sh.patch )
+PATCHES=(
+ "${FILESDIR}/uxn-0_p20230609-build.sh.patch"
+)
src_compile() {
- CC="$(tc-getCC)" CFLAGS="${CFLAGS} ${LDFLAGS}" ./build.sh --no-run ||
- die "build failed"
-
- local f
- local f_base
- for f in ./projects/{examples/*,software,utils}/*.tal ; do
- f_base="$(basename "${f}" .tal)"
- ebegin "Assembling ROM ${f_base}"
- ./bin/uxnasm "${f}" "$(dirname "${f}")"/"${f_base}".rom
- eend ${?} || die "failed to assemble ${f}"
- done
+ CC="$(tc-getCC)" CFLAGS="${CFLAGS} ${LDFLAGS}" \
+ ./build.sh --no-run \
+ || die "building with \"build.sh\" failed"
+
+ # Fails to assemble via following loop.
+ # Possibly not mean to be assembled by hand.
+ rm -rf ./projects/library ./projects/software/{asma,launcher}.tal || die
+
+ local tal_file
+ local tal_file_base
+
+ while read -r tal_file ; do
+ tal_file_base="$(basename "${tal_file}" .tal)"
+
+ ebegin "Assembling ROM ${tal_file_base}"
+ bin/uxnasm "${tal_file}" "$(dirname "${tal_file}")/${tal_file_base}.rom"
+ eend ${?} || die "failed to assemble ${tal_file}"
+ done \
+ < <(find projects -type f -name "*.tal")
}
src_install() {
- exeinto /usr/bin
- doexe bin/uxn*
+ insinto /usr/bin
+ doins bin/uxn*
+ fperms 0755 /usr/bin/uxn*
insinto /usr/share/uxn
- doins bin/*.rom
doins -r projects
einstalldocs