summaryrefslogtreecommitdiff
path: root/dev-util/rgbds
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-01-07 06:41:06 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-01-07 06:41:06 +0000
commitd69399c7befdd98cda62d6a1788ae2aa7f104c5e (patch)
treeeac7184f4cfe7d67580c1d0a0d9942a91e6cb4ee /dev-util/rgbds
parente4d9d6796d5018e338f0b27a3bc97716195bf0b8 (diff)
gentoo auto-resync : 07:01:2025 - 06:41:06
Diffstat (limited to 'dev-util/rgbds')
-rw-r--r--dev-util/rgbds/Manifest7
-rw-r--r--dev-util/rgbds/files/rgbds-0.7.0-fix-nan-tests.patch147
-rw-r--r--dev-util/rgbds/rgbds-0.6.1.ebuild40
-rw-r--r--dev-util/rgbds/rgbds-0.9.0.ebuild (renamed from dev-util/rgbds/rgbds-0.7.0-r1.ebuild)7
4 files changed, 3 insertions, 198 deletions
diff --git a/dev-util/rgbds/Manifest b/dev-util/rgbds/Manifest
index 9585bba80bb4..7b02e156cc49 100644
--- a/dev-util/rgbds/Manifest
+++ b/dev-util/rgbds/Manifest
@@ -1,9 +1,6 @@
-AUX rgbds-0.7.0-fix-nan-tests.patch 5256 BLAKE2B 8a0f21f992ff526fd8abc1f34d80518217255375921ccc69672a57a2bb30681a94a5aa42d9a58c8bfe90eeeeadb3b70bbf97a15277c5e8e8a27be1b57ba34935 SHA512 6ad1db1c35f5952cbffe1e59551f6a58d6cbf0230e6501749cf36ffddb8b112f1abd02990876d116ac393dcad39d3ecdbb239e98b3c6b5357ff4bafac328ef24
-DIST rgbds-0.6.1.tar.gz 8041890 BLAKE2B cd5483e6fa5e2ca3bc9a6e3de44fdf7dc92289d558ac72d8922c0cf21b9dc576b878bfd7610cb41f791ad16cc415e446c925ee0dbc77ec4370d6ef4549935681 SHA512 b4a111e3d98a190d3c9b500dc59585fe68a8e6febc79b6716b406b96714e401bac427336388409ae456ee0f1e5a2c285bfe7b4bfa10e0d148ffc161adefe435b
-DIST rgbds-0.7.0.tar.gz 8053662 BLAKE2B 07f6901eeaade45125acce5c33430bdefc5a4228d2fe952d55ca254c0fc17dc5248262ecc7df5e9dd0a73aab29a39a2b38988a7ae93ad739609397a286e96aa9 SHA512 82d799f9639cb3a4c110f84f5184f46a371e66428e7d3b4f3f0229473d472dea1b381268df92736f2d1d4f5e8e2c83b61888c3ab4055768f9472b834f66f2f68
DIST rgbds-0.8.0.tar.gz 8052350 BLAKE2B 46edb43a530169d03e026070b61272e95357213747296658e4ceb821f8e420979ceffcbc07b41b6778187a1f6a614d3587416d5ad3596f19bacc6c9067051837 SHA512 1c36e0fc7ecfd930c9cbc9f9772d2c7268148e2d456c56c92265ba45b9108c531fc412669d980f6c621b4d89d367458f01a2e0cf20443f13b83f841585f3edac
-EBUILD rgbds-0.6.1.ebuild 816 BLAKE2B 7992f7590f30bd809b3b5551b52ce2fe8f28e031d7a931373952717a6c20b8014e2f8a2d3b66ae9aa8e87e1ba5bb84c85063cf1ab7e4be569a395f72b88b71db SHA512 f7305129d91c25e6fc1d704e2a1bd147201a711225817293007f238943ef30eb4e033a5d4f41a962360b3b190ae11183d944fe49009226cfd747cf3f593439f2
-EBUILD rgbds-0.7.0-r1.ebuild 1085 BLAKE2B 6df90750b7deb7e97466479365fc9262e5bcad793fc685e2185c4be8355e76aed64ec4ed73c0d8b5ca8e01b54a3a5d8693d8ec21188434d7351ef33cc655f796 SHA512 650b4d190b14a9f9a68de6d19828a89b2d5ba21a287c09f6b95c878ff4f4c3f0053a325e78b0adf54d7b4b200e34db762133b520a094d9ae5d6ebf57ecc93745
+DIST rgbds-0.9.0.tar.gz 8093242 BLAKE2B b6ee19b4e4ce0e4d77f3b3ec11115a389b8debd71477478dbef72065ae17caae10e53b49b45dbc822443392c27023948cc3033117f13a7c1340d8ca90f1ff6b5 SHA512 d86a478dfcfb007e095696c32a4fa098eb9818d3bdac90d7c61bbac8901346acb6f9371ee3285b2adcf71e3c199f731b7b6c60a99be06e64b463ea7aef0f4901
EBUILD rgbds-0.8.0.ebuild 997 BLAKE2B a00f08315ce37800a64e64ceb1fca7cdb00a10ad2f3799a577db5122940f598824df666836112bf6b11559b0129ad9494b901a12afc51494f6e849f270908d62 SHA512 eca845312232f4c3aafbefb161a30ae4b566ff0b91b6d577063777484ec73ebd9ad4d48c1fc880c4979228c4e63de50e8b46d147adef61df716b4215e3b3ab0f
+EBUILD rgbds-0.9.0.ebuild 997 BLAKE2B a00f08315ce37800a64e64ceb1fca7cdb00a10ad2f3799a577db5122940f598824df666836112bf6b11559b0129ad9494b901a12afc51494f6e849f270908d62 SHA512 eca845312232f4c3aafbefb161a30ae4b566ff0b91b6d577063777484ec73ebd9ad4d48c1fc880c4979228c4e63de50e8b46d147adef61df716b4215e3b3ab0f
EBUILD rgbds-9999.ebuild 997 BLAKE2B a00f08315ce37800a64e64ceb1fca7cdb00a10ad2f3799a577db5122940f598824df666836112bf6b11559b0129ad9494b901a12afc51494f6e849f270908d62 SHA512 eca845312232f4c3aafbefb161a30ae4b566ff0b91b6d577063777484ec73ebd9ad4d48c1fc880c4979228c4e63de50e8b46d147adef61df716b4215e3b3ab0f
MISC metadata.xml 682 BLAKE2B cf9153f0ca5faaefa518fd7300d4107d3eb4770f8471ccbaf90bfb8ca6397c3387b970b4ed97a8c5ea78695f168be3265d6e3bf84fa67dcef4ba214cd7f7bd3e SHA512 b4810cc1b6c4b9b557a11e0b172520bf0d74fd2874c6557726e51a85e946ec9e60ba4952e2746f19de25f98b97918aab1fef7c7278956ab0d0f2f551d709e20f
diff --git a/dev-util/rgbds/files/rgbds-0.7.0-fix-nan-tests.patch b/dev-util/rgbds/files/rgbds-0.7.0-fix-nan-tests.patch
deleted file mode 100644
index 9cee354a810e..000000000000
--- a/dev-util/rgbds/files/rgbds-0.7.0-fix-nan-tests.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-https://bugs.gentoo.org/928268
-https://github.com/gbdev/rgbds/issues/1387
-https://github.com/gbdev/rgbds/pull/1388
-https://github.com/gbdev/rgbds/commit/9ab3446d1a3d84d6b34062b8287be9169fbe663b
-
-From 1afbaa3cf2b667c33ae02e899ad7a833e3b71292 Mon Sep 17 00:00:00 2001
-From: Sylvie <35663410+Rangi42@users.noreply.github.com>
-Date: Sun, 31 Mar 2024 12:53:20 -0400
-Subject: [PATCH] Fix two bugs with RGBASM fixed-point math (#1388)
-
-- Fixed-point formulas are implemented using IEEE-754 floating-point
- internally, which could give infinity or NaN values whose conversion
- to fixed-point integer was platform-dependent.
-- Formatting fixed-point $8000_0000 (INT32_MIN, -2147483648) was
- not putting the negative sign in front.
----
- src/asm/fixpoint.cpp | 10 +++++++++-
- src/asm/format.cpp | 22 +++++++++++++---------
- test/asm/format-extremes.asm | 8 ++++++++
- test/asm/format-extremes.out | 4 ++++
- test/asm/math.asm | 8 ++++++--
- 5 files changed, 40 insertions(+), 12 deletions(-)
- create mode 100644 test/asm/format-extremes.asm
- create mode 100644 test/asm/format-extremes.out
-
-diff --git a/src/asm/fixpoint.cpp b/src/asm/fixpoint.cpp
-index 97a091af..9334bbba 100644
---- a/src/asm/fixpoint.cpp
-+++ b/src/asm/fixpoint.cpp
-@@ -15,7 +15,6 @@
- #endif
-
- #define fix2double(i, q) ((double)((i) / pow(2.0, q)))
--#define double2fix(d, q) ((int32_t)round((d) * pow(2.0, q)))
-
- // 2*pi radians == 1 turn
- #define turn2rad(f) ((f) * (M_PI * 2))
-@@ -33,6 +32,15 @@ double fix_PrecisionFactor(void)
- return pow(2.0, fixPrecision);
- }
-
-+static int32_t double2fix(double d, int32_t q)
-+{
-+ if (isnan(d))
-+ return 0;
-+ if (isinf(d))
-+ return d < 0 ? INT32_MIN : INT32_MAX;
-+ return (int32_t)round(d * pow(2.0, q));
-+}
-+
- int32_t fix_Sin(int32_t i, int32_t q)
- {
- return double2fix(sin(turn2rad(fix2double(i, q))), q);
-diff --git a/src/asm/format.cpp b/src/asm/format.cpp
-index 553e5c77..2b8b8a8a 100644
---- a/src/asm/format.cpp
-+++ b/src/asm/format.cpp
-@@ -180,11 +180,10 @@ void fmt_PrintNumber(char *buf, size_t bufLen, struct FormatSpec const *fmt, uin
- char sign = fmt->sign; // 0 or ' ' or '+'
-
- if (fmt->type == 'd' || fmt->type == 'f') {
-- int32_t v = value;
--
-- if (v < 0 && v != INT32_MIN) {
-+ if (int32_t v = value; v < 0) {
- sign = '-';
-- value = -v;
-+ if (v != INT32_MIN)
-+ value = -v;
- }
- }
-
-@@ -229,15 +228,20 @@ void fmt_PrintNumber(char *buf, size_t bufLen, struct FormatSpec const *fmt, uin
- fracWidth = 255;
- }
-
-- snprintf(valueBuf, sizeof(valueBuf), "%.*f", (int)fracWidth,
-- value / fix_PrecisionFactor());
-+ double fval = fabs(value / fix_PrecisionFactor());
-+ snprintf(valueBuf, sizeof(valueBuf), "%.*f", (int)fracWidth, fval);
-+ } else if (fmt->type == 'd') {
-+ // Decimal numbers may be formatted with a '-' sign by `snprintf`, so `abs` prevents that,
-+ // with a special case for `INT32_MIN` since `labs(INT32_MIN)` is UB. The sign will be
-+ // printed later from `signChar`.
-+ uint32_t uval = value != (uint32_t)INT32_MIN ? labs((int32_t)value) : value;
-+ snprintf(valueBuf, sizeof(valueBuf), "%" PRIu32, uval);
- } else {
-- char const *spec = fmt->type == 'd' ? "%" PRId32
-- : fmt->type == 'u' ? "%" PRIu32
-+ char const *spec = fmt->type == 'u' ? "%" PRIu32
- : fmt->type == 'X' ? "%" PRIX32
- : fmt->type == 'x' ? "%" PRIx32
- : fmt->type == 'o' ? "%" PRIo32
-- : "%" PRId32;
-+ : "%" PRIu32;
-
- snprintf(valueBuf, sizeof(valueBuf), spec, value);
- }
-diff --git a/test/asm/format-extremes.asm b/test/asm/format-extremes.asm
-new file mode 100644
-index 00000000..19ddb677
---- /dev/null
-+++ b/test/asm/format-extremes.asm
-@@ -0,0 +1,8 @@
-+MACRO test
-+ def v = \1
-+ println "{#09x:v} = {#012o:v} = {#033b:v} = {u:v}U = {+d:v} = {+.16f:v}"
-+ENDM
-+ test $7fff_ffff ; INT32_MAX
-+ test $8000_0000 ; INT32_MIN
-+ test $0000_0000 ; UINT32_MIN
-+ test $ffff_ffff ; UINT32_MAX
-diff --git a/test/asm/format-extremes.out b/test/asm/format-extremes.out
-new file mode 100644
-index 00000000..9e19b2f4
---- /dev/null
-+++ b/test/asm/format-extremes.out
-@@ -0,0 +1,4 @@
-+$7fffffff = &17777777777 = %01111111111111111111111111111111 = 2147483647U = +2147483647 = +32767.9999847412109375
-+$80000000 = &20000000000 = %10000000000000000000000000000000 = 2147483648U = -2147483648 = -32768.0000000000000000
-+$00000000 = &00000000000 = %00000000000000000000000000000000 = 0U = +0 = +0.0000000000000000
-+$ffffffff = &37777777777 = %11111111111111111111111111111111 = 4294967295U = -1 = -0.0000152587890625
-diff --git a/test/asm/math.asm b/test/asm/math.asm
-index b189fca8..9f87a11b 100644
---- a/test/asm/math.asm
-+++ b/test/asm/math.asm
-@@ -19,14 +19,18 @@ ENDM
-
- assert DIV(5.0, 2.0) == 2.5
- assert DIV(-5.0, 2.0) == -2.5
-- assert DIV(-5.0, 0.0) == $8000_0000
-+ assert DIV(5.0, 0.0) == $7fff_ffff ; +inf => INT32_MAX
-+ assert DIV(-5.0, 0.0) == $8000_0000 ; -inf => INT32_MIN
-+ assert DIV(0.0, 0.0) == $0000_0000 ; nan => 0
-
- assert MUL(10.0, 0.5) == 5.0
- assert MUL(10.0, 0.0) == 0.0
-
- assert FMOD(5.0, 2.0) == 1.0
- assert FMOD(-5.0, 2.0) == -1.0
-- assert FMOD(-5.0, 0.0) == $8000_0000
-+ assert FMOD(5.0, 0.0) == 0 ; nan
-+ assert FMOD(-5.0, 0.0) == 0 ; nan
-+ assert FMOD(0.0, 0.0) == 0 ; nan
-
- assert POW(10.0, 2.0) == 100.0
- assert POW(100.0, 0.5) == 10.0
diff --git a/dev-util/rgbds/rgbds-0.6.1.ebuild b/dev-util/rgbds/rgbds-0.6.1.ebuild
deleted file mode 100644
index 91276f0bb814..000000000000
--- a/dev-util/rgbds/rgbds-0.6.1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="Rednex Game Boy Development System"
-HOMEPAGE="https://rgbds.gbdev.io/"
-if [[ "${PV}" == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/gbdev/${PN}.git"
-else
- SRC_URI="https://github.com/gbdev/${PN}/archive/v${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-DEPEND="media-libs/libpng"
-RDEPEND="${DEPEND}"
-BDEPEND="
- sys-devel/bison
- virtual/pkgconfig
-"
-
-src_compile() {
- append-flags -DNDEBUG
-
- emake Q= \
- CC="$(tc-getCC)" \
- CXX="$(tc-getCXX)" \
- PKG_CONFIG="$(tc-getPKG_CONFIG)"
-}
-
-src_install() {
- emake DESTDIR="${D}" PREFIX="${EPREFIX}"/usr Q= STRIP= install
- dodoc README.rst
-}
diff --git a/dev-util/rgbds/rgbds-0.7.0-r1.ebuild b/dev-util/rgbds/rgbds-0.9.0.ebuild
index 052429ca8c57..7f24c27d44dd 100644
--- a/dev-util/rgbds/rgbds-0.7.0-r1.ebuild
+++ b/dev-util/rgbds/rgbds-0.9.0.ebuild
@@ -25,11 +25,6 @@ BDEPEND="
virtual/pkgconfig
"
-PATCHES=(
- # https://bugs.gentoo.org/928268
- "${FILESDIR}"/${P}-fix-nan-tests.patch
-)
-
src_compile() {
append-flags -DNDEBUG
@@ -51,5 +46,5 @@ src_test() {
src_install() {
emake DESTDIR="${D}" PREFIX="${EPREFIX}"/usr Q= STRIP= install
- dodoc README.rst
+ dodoc README.md
}