summaryrefslogtreecommitdiff
path: root/games-util/grfcodec
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-01-28 22:42:59 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-01-28 22:42:59 +0000
commitfc4ad6e568738af8995c2e87896c671c39eb8c72 (patch)
treeb56fb204081c089b8a979d01e8badc2c819f8cf0 /games-util/grfcodec
parent417348c68a53a9317b6afbf343381518a405f682 (diff)
gentoo auto-resync : 28:01:2025 - 22:42:58
Diffstat (limited to 'games-util/grfcodec')
-rw-r--r--games-util/grfcodec/Manifest10
-rw-r--r--games-util/grfcodec/files/6.0.6_p20210310/0001-Remove-brittle-apWrapper-code.patch144
-rw-r--r--games-util/grfcodec/files/6.0.6_p20210310/0002-Fix-ODR-violations.patch63
-rw-r--r--games-util/grfcodec/files/grfcodec-6.0.6_p20230811-action-5.patch30
-rw-r--r--games-util/grfcodec/grfcodec-6.0.6_p20210310-r1.ebuild40
-rw-r--r--games-util/grfcodec/grfcodec-6.0.6_p20230811-r1.ebuild46
-rw-r--r--games-util/grfcodec/grfcodec-6.1.0-r1.ebuild21
-rw-r--r--games-util/grfcodec/grfcodec-9999.ebuild38
8 files changed, 55 insertions, 337 deletions
diff --git a/games-util/grfcodec/Manifest b/games-util/grfcodec/Manifest
index 76778e80d2ff..8917922a89bc 100644
--- a/games-util/grfcodec/Manifest
+++ b/games-util/grfcodec/Manifest
@@ -1,12 +1,6 @@
-AUX 6.0.6_p20210310/0001-Remove-brittle-apWrapper-code.patch 3501 BLAKE2B 2132586124cfe2232c655f5041a2ef28b46cac8e72acecd2cb9004bece074c915c0f9609455e73f2ce8d95b28c5d1ac7d4739c4264e90e1a570f33d136bd4f9d SHA512 68a7a2329dfeee4ad28562b088948ddd6457e0f6b14a63e6be376041897070c5acc756b14e158dc4631a4fb1e0197f523d8bb76272d7d39c093e49259efa700f
-AUX 6.0.6_p20210310/0002-Fix-ODR-violations.patch 1722 BLAKE2B 941c2c95b7876b8b2be39e623cbff969b0609e50a3c798acd34052f0c13bf048971fe2b07885bcdc2921e66a928ce6d11c2bee71e26602116f104725acf3d04c SHA512 e73f4ee685230128489d47f3d10f296456debd3e6a85b6ccdbecb6ceb550a59cb95cbd37b2a222883b058b15aa319221e9040c4bdda4511e74c05e26a778ea50
-AUX grfcodec-6.0.6_p20230811-action-5.patch 1114 BLAKE2B c71b3e752623872b82e6a3c52df35e8ffc92400389ec1b35fa7af0e1288c5f5607600761be0bf89515248a1e9c976228a2c964bcb570d2f6afe24e87666916e6 SHA512 ac67e720c2ed37bd0db8323c7ac93315aaea03ebe528d52eba67aaaedfae2a6c53d35628da6ca1771dc50598338ac25875c380df819b072f42e6f64c7aecdabf
AUX grfcodec-6.0.6_p20230811-no-fortify-source.patch 585 BLAKE2B 62b2ec66f6cfffd26bc69c1489d10b9bc568b5343d186300728e641ab1b2a54b13658045f8dc45a331792a204a71d5e6dbf5fbc84f3e1e1cec53ee165a2525b9 SHA512 1155b81eefe3e299907bdfc19d170b17e28c44b67554e71b21a501b6e84d4e889c354f3ab0b3e29ebb1210edede41d6b73c9a24e8b241dd6af419547b22bd298
AUX grfcodec-6.1.0-cmake-install.patch 493 BLAKE2B 6df0603c520b9148ef8bbddd8cb14030d8c653ddcac1834d1feed381b2e6e7d0f41965f644eb46d01557e914a09ca8d9d0158593ad7b1668c3e43365e6a18dbe SHA512 69b20eb9997dd85d8d27d4ec443d73c038dfdb91c51adcd8a6280f1fa454cf3e07f1efa532b8475df7a236bc7cdcea4816574d91119fb06d266cba242bbeaef7
-DIST grfcodec-6.0.6_p20210310.tar.gz 205795 BLAKE2B 24d803e208b2fc465ae71611c0c0fb2737bfa8c5a28375bc08a6220581d7b07bb2f2a390e2ddb7f4beb8a80951862473919d41bce83364af70b6dc646f0f3f8e SHA512 10f4ec28c69d87e397f0fb5b497dbefce8fcd826731d3a0a864cbbd333b7df188ab0087445644ad245aeff65a8b6563dfdfa657ac1a2248e56e296c01f7d58a8
-DIST grfcodec-6.0.6_p20230811.tar.gz 205324 BLAKE2B 00d36b6785d00edec061cc0f0a695225a78c487bc66c4521f0f3da1050304bc382ed78d1df8dff8602b35b167505388ad993c46f01ac39960c131a6f5c7264eb SHA512 95a883636720ad1fdd0a2e17cba60b6cde15b5fe0337cfe2330db75d60e9a2bdb1dea3c06bb8f8acace8989b6abaf6d1845b30c5bc5f6c76f34e5aa76f36ddd4
DIST grfcodec-6.1.0-source.tar.xz 170688 BLAKE2B e9ce6ca4984e319abd5c1fd53473b1257b2b98b0948b5bef5e6275e29b50243981bf7fc837b190b37b2bb12d2ac9aecbb8595150eedb029f1d7ae64053668475 SHA512 9129e0f38b151e11c90585e0fe966e042ad08ec90f800ee80f749865aed6c72c733639b8d02ecd613409f2a0ae6d1f72fa1d3524f7c450a0f06ff42ee170f16f
-EBUILD grfcodec-6.0.6_p20210310-r1.ebuild 993 BLAKE2B 1cb3e7064e2f72b373c4b0dd83d8c3f16a017dddd7a3351328e8ffdddb84f70e3aba7937eb49b47230d74684240cd91873f1434b1bc18bb7c24d08dbaabcb464 SHA512 c69963730921fe1260bb24a90ea78b9b2ea6db788f057586d12eae09f6943144ae6dca2cfec5318ea13fd45b0c83984549f941224af5b0ea23fda8ddd051ff26
-EBUILD grfcodec-6.0.6_p20230811-r1.ebuild 1083 BLAKE2B 37eb930403c15423cb87ac926825b4a7deb7731d35e6c340c13c57045b0ace5e5baba21030320435776bdc8c4923bdc076783fbc60e2216a094c5e6803feab47 SHA512 2ef328d4219b951d06cde84ee03f313a3aa8955f30bd6e01d59872141ace5b1207132d063d6fe3628caf53e46ab61dcc638353b7a26c660932b4832db218ca88
-EBUILD grfcodec-6.1.0-r1.ebuild 630 BLAKE2B 94c978bbb4a11c379217f1d561da2a2d462f79290b882343500a02dd445bad1024219583f6bc4f71e136e56c74dbe5daa614fb58daea738a899eb8ebe928b57a SHA512 f24784095fd73e46a2e48a89da5088817eb08aeeb5f51356dac789d1ab674263be8d0daee3b333a4cd1a1da7badd6c4dec8b80fb83de305ba302b91c1277f8c7
+EBUILD grfcodec-6.1.0-r1.ebuild 742 BLAKE2B 6166eca4a27e5f31d83bcb14bee48547aea16baec0af515a4cae1435eea42e96e59b17715e018ff32b5b0e3d4a5696d9f8b643ae7b282037d49d1ed58308fd10 SHA512 ce43fe65c6f2e06ded532e092d698fb8902ec4cdb3560fb6468bb0544400e2c8439c8392a3056ab5bba3515662a639d258e3163f1ff33447793fd98c6ae57228
+EBUILD grfcodec-9999.ebuild 780 BLAKE2B 5b63118670cb5df9fbc1f18555efe3165697dc3846d88fc360997a71ee6b1e66ac95d269670901b5804f7a881b758d6f0ac895271cf1c489423aac07125d0273 SHA512 921829d953fa61fcdbd05a3d349544b9c9f31816c246e4399336e9a256ee7108f2fcc016adf08ce005cbbdad3eb7ae1ed1ee35442d8e8bc6116ac9ba02f729cb
MISC metadata.xml 335 BLAKE2B 32e45cd9e4b4e6a0ae59d41d18ef90ca9a39389016247b71b6b1b7069a6fd1b73c92bc331d10059942aa57693a2405d90915249393e2ee9b515027f97b5fadf4 SHA512 36a58b8b3e9b793b7cc62def166dc87f24c3df029916c3226fe66f5213dcf156038a31707e81c52defbacd0a7e40fc3c5df476c93d9f1380556ac02140ef0fc2
diff --git a/games-util/grfcodec/files/6.0.6_p20210310/0001-Remove-brittle-apWrapper-code.patch b/games-util/grfcodec/files/6.0.6_p20210310/0001-Remove-brittle-apWrapper-code.patch
deleted file mode 100644
index e702f00160ce..000000000000
--- a/games-util/grfcodec/files/6.0.6_p20210310/0001-Remove-brittle-apWrapper-code.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-From 9e928c98c8ad0767607bc421b14ac289cdc6e536 Mon Sep 17 00:00:00 2001
-From: David Seifert <soap@gentoo.org>
-Date: Sat, 8 Oct 2022 16:29:43 +0200
-Subject: [PATCH 1/2] Remove brittle `apWrapper` code
-
-* This causes issues on musl, and generally doesn't make the
- code any simpler, while also creating lots of opportunities
- for undefined behavior.
-
-Bug: https://bugs.gentoo.org/715910
----
- src/messages.cpp | 14 ++++++++++----
- src/sanity.cpp | 4 +++-
- src/sanity_defines.h | 23 -----------------------
- src/strings.cpp | 9 +++++----
- 4 files changed, 18 insertions(+), 32 deletions(-)
-
-diff --git a/src/messages.cpp b/src/messages.cpp
-index 385f217..3794f66 100644
---- a/src/messages.cpp
-+++ b/src/messages.cpp
-@@ -60,8 +60,11 @@ void ManualConsoleMessages(){
- }
-
- string mysprintf(const char*str,...){
-- WrapAp(str);
-- return myvsprintf(str,ap);
-+ va_list ap;
-+ va_start(ap, str);
-+ string result = myvsprintf(str,ap);
-+ va_end(ap);
-+ return result;
- }
-
- #if defined DEBUG || defined _DEBUG
-@@ -69,8 +72,11 @@ static RenumMessageId curMessage;
- #endif
-
- string IssueMessage(int minSan,RenumMessageId id,...){
-- WrapAp(id);
-- return vIssueMessage(minSan,id,ap);
-+ va_list ap;
-+ va_start(ap, id);
-+ string result = vIssueMessage(minSan,id,ap);
-+ va_end(ap);
-+ return result;
- }
-
- string vIssueMessage(int minSan,RenumMessageId id,va_list& arg_ptr){
-diff --git a/src/sanity.cpp b/src/sanity.cpp
-index 844d840..0793a63 100644
---- a/src/sanity.cpp
-+++ b/src/sanity.cpp
-@@ -151,13 +151,15 @@ void Before8(int action){
- }
-
- bool CheckLength(int alen,int elen,RenumMessageId message,...){
-- WrapAp(message);
-+ va_list ap;
-+ va_start(ap, message);
- if(alen<elen){
- vIssueMessage(FATAL,message,ap);
- return true;
- }
- if(alen>elen)
- vIssueMessage(WARNING2,message,ap);
-+ va_end(ap);
- return false;
- }
-
-diff --git a/src/sanity_defines.h b/src/sanity_defines.h
-index d094f21..47f9c5f 100644
---- a/src/sanity_defines.h
-+++ b/src/sanity_defines.h
-@@ -22,7 +22,6 @@
- #ifndef _RENUM_SANITY_DEFS_H_INCLUDED_
- #define _RENUM_SANITY_DEFS_H_INCLUDED_
-
--#include <cstdarg>
- #include "message_mgr.h"
-
- bool CheckLength(int,int,RenumMessageId,...);
-@@ -70,26 +69,4 @@ typedef auto_array<uint> Guintp;
- type&operator[](uint x){return _p[x];}\
- type operator[](uint x)const{return _p[x];}\
-
--class apWrapper{
--private:
-- va_list _ap;
--public:
-- ~apWrapper(){va_end(_ap);}
-- operator va_list&(){return _ap;}
-- operator const va_list&()const{return _ap;}
--#ifdef __va_copy
-- va_list&operator=(va_list&ap){
-- __va_copy(_ap,ap);
-- return _ap;
-- }
--#else
-- va_list const&operator=(va_list const&ap){
-- return _ap=ap;
-- }
--#endif
--};
--#define WrapAp(v)\
-- apWrapper ap;\
-- va_start((va_list&)ap,v);
--
- #endif//_RENUM_SANITY_DEFS_H_INCLUDED_
-diff --git a/src/strings.cpp b/src/strings.cpp
-index 2512734..e184825 100644
---- a/src/strings.cpp
-+++ b/src/strings.cpp
-@@ -23,6 +23,7 @@
- #include<string>
- #include<cerrno>
- #include<cstdlib>
-+#include<cstdarg>
-
- using namespace std;
-
-@@ -396,15 +397,15 @@ static const uchar stackSize[]={0,1,2,2,4,2,8};
-
- string MakeStack(int items,...){
- string ret;
-- WrapAp(items);
-+ va_list ap;
-+ va_start(ap, items);
- uint item;
- for(int i=0;i<items;i++){
-- item=va_arg(ap.operator va_list&(),uint);
-- // ^^^^^^^^^^^^^^^^^^^
-- // gcc complains without that call.
-+ item=va_arg(ap, uint);
- VERIFY(item&&item<STACK_INVALID,item);
- ret+=string(stackSize[item],char(item|i<<4));
- }
-+ va_end(ap);
- return ret;
- }
-
---
-2.38.0
-
diff --git a/games-util/grfcodec/files/6.0.6_p20210310/0002-Fix-ODR-violations.patch b/games-util/grfcodec/files/6.0.6_p20210310/0002-Fix-ODR-violations.patch
deleted file mode 100644
index d76a904efd9a..000000000000
--- a/games-util/grfcodec/files/6.0.6_p20210310/0002-Fix-ODR-violations.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From f2e16cca87e8a324ce7ccc9cc2d82235b1e490c1 Mon Sep 17 00:00:00 2001
-From: David Seifert <soap@gentoo.org>
-Date: Sat, 8 Oct 2022 16:29:44 +0200
-Subject: [PATCH 2/2] Fix ODR violations
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-* When compiling with `-flto`, ODR violations pop up:
-
- src/escapes.h:98:1: error: type ‘struct esc’ violates the C++ One Definition Rule [-Werror=odr]
- 98 | START_ESCAPES()
- | ^
- src/escapes.h:98:1: note: a different type is defined in another translation unit
- 98 | START_ESCAPES()
- | ^
- src/escapes.h:98:1: note: the first difference of corresponding definitions is field ‘additional’
- 98 | START_ESCAPES()
- | ^
- src/escapes.h:98:1: note: a type with different number of fields is defined in another translation unit
- 98 | START_ESCAPES()
- | ^
-
- by wrapping the `struct esc` definitions in unnamed namespaces, we can avoid running afoul of ODR.
-
-Bug: https://bugs.gentoo.org/859310
----
- src/escapes.h | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/src/escapes.h b/src/escapes.h
-index 91da82f..d3d2bea 100644
---- a/src/escapes.h
-+++ b/src/escapes.h
-@@ -8,6 +8,7 @@
- #ifndef GRFCODEC
-
- #define START_ESCAPES()\
-+ namespace {\
- const struct esc{\
- char byte;\
- char*str;\
-@@ -30,6 +31,7 @@
- #else /* GRFCODEC */
-
- #define START_ESCAPES()\
-+ namespace {\
- const struct esc{\
- char byte;\
- char*str;\
-@@ -59,7 +61,8 @@
- #endif /* GRFCODEC */
-
- #define END_ESCAPES() };\
-- static const unsigned int num_esc=sizeof(escapes)/sizeof(escapes[0]);
-+ static const unsigned int num_esc=sizeof(escapes)/sizeof(escapes[0]);\
-+ }
-
- #ifdef GRFCODEC
-
---
-2.38.0
-
diff --git a/games-util/grfcodec/files/grfcodec-6.0.6_p20230811-action-5.patch b/games-util/grfcodec/files/grfcodec-6.0.6_p20230811-action-5.patch
deleted file mode 100644
index 333c9f5ed2e9..000000000000
--- a/games-util/grfcodec/files/grfcodec-6.0.6_p20230811-action-5.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Bug: https://bugs.gentoo.org/912189
-Upstream: https://github.com/OpenTTD/grfcodec/pull/23
-
-From de32367a6896c9f310fa48929e29643beaa08af4 Mon Sep 17 00:00:00 2001
-From: Matthew Smith <matthew@gentoo.org>
-Date: Sun, 13 Aug 2023 09:30:01 +0100
-Subject: [PATCH] data: Fix Action5 table
-
-The alternative sprite counts were added into the action 5 table, but
-the counts were not updated. This caused all of the types defined after
-type 0x09 to be mis-read.
-
-Fixes: d5a7b850bcef30c0bfd17ceeb4a18c431770f468
---- a/src/data.cpp
-+++ b/src/data.cpp
-@@ -170,9 +170,9 @@ NDF_HEADER(0x04, 17),
- /*06*/ OFFSET, OPTIONS(2), 0x4A, 0x5A,
- /*07*/ OPTIONS(1), 0x5D,
- /*08*/ OFFSET, OPTIONS(1), 0x41,
--/*09*/ OFFSET, OPTIONS(1), 0x06, 0x12,
-+/*09*/ OFFSET, OPTIONS(2), 0x06, 0x12,
- /*0A*/ OFFSET | RECOLOUR | WORD, OPTIONS(1), W(0x100),
--/*0B*/ OFFSET, OPTIONS(1), 0x71, 0x77,
-+/*0B*/ OFFSET, OPTIONS(2), 0x71, 0x77,
- /*0C*/ OPTIONS(1), 0x85,
- /*0D*/ OPTIONS(2), 0x10, 0x12,
- /*0E*/ MIXED, OPTIONS(1), 0x00,
---
-2.41.0
-
diff --git a/games-util/grfcodec/grfcodec-6.0.6_p20210310-r1.ebuild b/games-util/grfcodec/grfcodec-6.0.6_p20210310-r1.ebuild
deleted file mode 100644
index 90d01d7a6794..000000000000
--- a/games-util/grfcodec/grfcodec-6.0.6_p20210310-r1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake vcs-snapshot
-
-COMMIT=045774dee7cab1a618a3e0d9b39bff78a12b6efa
-
-DESCRIPTION="A suite of programs to modify openttd/Transport Tycoon Deluxe's GRF files"
-HOMEPAGE="https://github.com/OpenTTD/grfcodec"
-SRC_URI="https://github.com/OpenTTD/grfcodec/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-
-RDEPEND="media-libs/libpng:="
-DEPEND="${RDEPEND}
- dev-libs/boost"
-
-PATCHES=( "${FILESDIR}"/${PV} )
-
-src_configure() {
- local mycmakeargs=(
- # Make sure we don't use git by accident.
- # Build system does not care much if it's
- # executed successfully and populates
- # YEARS / VERSION with empty values.
- -DGIT_EXECUTABLE=/bin/do-not-use-git-executable
- )
-
- cmake_src_configure
-}
-
-src_install() {
- dobin "${BUILD_DIR}"/{grfcodec,grfid,grfstrip,nforenum}
- doman docs/*.1
- dodoc changelog.txt docs/*.txt
-}
diff --git a/games-util/grfcodec/grfcodec-6.0.6_p20230811-r1.ebuild b/games-util/grfcodec/grfcodec-6.0.6_p20230811-r1.ebuild
deleted file mode 100644
index 600aa5d3e4a8..000000000000
--- a/games-util/grfcodec/grfcodec-6.0.6_p20230811-r1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake vcs-snapshot
-
-COMMIT=d5a7b850bcef30c0bfd17ceeb4a18c431770f468
-
-DESCRIPTION="A suite of programs to modify openttd/Transport Tycoon Deluxe's GRF files"
-HOMEPAGE="https://github.com/OpenTTD/grfcodec"
-SRC_URI="https://github.com/OpenTTD/grfcodec/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-
-RDEPEND="media-libs/libpng:="
-DEPEND="${RDEPEND}
- dev-libs/boost"
-
-PATCHES=(
- # Bug #894648
- "${FILESDIR}"/${P}-no-fortify-source.patch
-
- # Bug #912189
- "${FILESDIR}"/${P}-action-5.patch
-)
-
-src_configure() {
- local mycmakeargs=(
- # Make sure we don't use git by accident.
- # Build system does not care much if it's
- # executed successfully and populates
- # YEARS / VERSION with empty values.
- -DGIT_EXECUTABLE=/bin/do-not-use-git-executable
- )
-
- cmake_src_configure
-}
-
-src_install() {
- dobin "${BUILD_DIR}"/{grfcodec,grfid,grfstrip,nforenum}
- doman docs/*.1
- dodoc changelog.txt docs/*.txt
-}
diff --git a/games-util/grfcodec/grfcodec-6.1.0-r1.ebuild b/games-util/grfcodec/grfcodec-6.1.0-r1.ebuild
index ce2b664d42de..a84ac889ed7d 100644
--- a/games-util/grfcodec/grfcodec-6.1.0-r1.ebuild
+++ b/games-util/grfcodec/grfcodec-6.1.0-r1.ebuild
@@ -1,21 +1,30 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake
-DESCRIPTION="A suite of programs to modify openttd/Transport Tycoon Deluxe's GRF files"
+DESCRIPTION="Suite of programs to modify openttd/Transport Tycoon Deluxe's GRF files"
HOMEPAGE="https://github.com/OpenTTD/grfcodec"
-SRC_URI="https://github.com/OpenTTD/grfcodec/releases/download/${PV}/${P}-source.tar.xz"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/OpenTTD/grfcodec"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/OpenTTD/grfcodec/releases/download/${PV}/${P}-source.tar.xz"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+fi
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
RDEPEND="media-libs/libpng:="
-DEPEND="${RDEPEND}
- dev-libs/boost"
+DEPEND="
+ ${RDEPEND}
+ dev-libs/boost
+"
PATCHES=(
"${FILESDIR}"/${PN}-6.1.0-cmake-install.patch
diff --git a/games-util/grfcodec/grfcodec-9999.ebuild b/games-util/grfcodec/grfcodec-9999.ebuild
new file mode 100644
index 000000000000..fec48e34967f
--- /dev/null
+++ b/games-util/grfcodec/grfcodec-9999.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Suite of programs to modify openttd/Transport Tycoon Deluxe's GRF files"
+HOMEPAGE="https://github.com/OpenTTD/grfcodec"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/OpenTTD/grfcodec"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/OpenTTD/grfcodec/releases/download/${PV}/${P}-source.tar.xz"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+fi
+
+LICENSE="GPL-2+"
+SLOT="0"
+
+RDEPEND="media-libs/libpng:="
+DEPEND="
+ ${RDEPEND}
+ dev-libs/boost
+"
+
+PATCHES=(
+ # Bug #894648
+ "${FILESDIR}"/${PN}-6.0.6_p20230811-no-fortify-source.patch
+)
+
+src_install() {
+ cmake_src_install
+
+ rm "${ED}"/usr/share/doc/${PF}/COPYING || die
+}