summaryrefslogtreecommitdiff
path: root/dev-games
diff options
context:
space:
mode:
Diffstat (limited to 'dev-games')
-rw-r--r--dev-games/Manifest.gzbin5728 -> 5735 bytes
-rw-r--r--dev-games/libnw/Manifest4
-rw-r--r--dev-games/libnw/files/libnw-1.30.02-C23.patch210
-rw-r--r--dev-games/libnw/libnw-1.30.02-r1.ebuild3
-rw-r--r--dev-games/libnw/libnw-1.30.02-r2.ebuild44
5 files changed, 258 insertions, 3 deletions
diff --git a/dev-games/Manifest.gz b/dev-games/Manifest.gz
index 8423fa3970d8..262ddc81aad6 100644
--- a/dev-games/Manifest.gz
+++ b/dev-games/Manifest.gz
Binary files differ
diff --git a/dev-games/libnw/Manifest b/dev-games/libnw/Manifest
index c49af0cab423..69bbb4a01448 100644
--- a/dev-games/libnw/Manifest
+++ b/dev-games/libnw/Manifest
@@ -1,3 +1,5 @@
+AUX libnw-1.30.02-C23.patch 4578 BLAKE2B d0ac63e79d9390a1a7edd95782c16f795b1cff51b55f14984aaf2be0ddaee10810c7ebda088cd0fb6789fb5fd442eb904e37d909a49bbb6cd4b0f4c6667926d7 SHA512 e7eec59dd19278ae929b4f4aeed4f41141c848d49d5a3d63ee2bc42e78509b775d5a49ed0ae087b6aa6e171934c2f6a6a21bbf28dfc2549ce8ab9fd09a1489e5
DIST libnw-1.30.02.tar.gz 317336 BLAKE2B 0e7298b409bfa6034a28f5f27e3c4103367fd8adca58bb7510d12aa641a3bea162e82e17343adbd3a1ded94ec9834231def9e4d0ad264512923ffcc0b63625f1 SHA512 5175fe6737dc1a3ddd5e53354435ff0db56ad560f24e330f348190b2ed9e6d2418dc20497dcb64f316572c4c75b298fe12794fde73516347d70e737700f67939
-EBUILD libnw-1.30.02-r1.ebuild 856 BLAKE2B 6151f82a05d2d90a7fe99071a04a06d7f5e5949f54313e52d04c906f99f7f1be23053be290a0dd060a8d9600cbe58921e0c77c311f80e9c037f166d63714b094 SHA512 742335156f95ed9f66d24c1965b2a8f9366efd2e89be908ed27b0d6ae5f5a8539169bd724fb1288ede399a53d5b42b149b1dfaba2912e12216b93878474a14a6
+EBUILD libnw-1.30.02-r1.ebuild 855 BLAKE2B 9496ac84bebacd9c84e5eebb043688d0938f7bc62773693d5b2f55135b77678e7979fcd769ad5bc75b835be750edbf5ad27642bffd1d94a9619e34710e1c2b65 SHA512 44ec1642543b316396e0c63c9da151c5c5dbccfb2791bdff75970cbbf994eb04a25821690d47cff7b6b2e728071aa10c548ea37167b1af000d6badfd1e2a97b9
+EBUILD libnw-1.30.02-r2.ebuild 900 BLAKE2B c90068f4170f2e5cee5cfc09bfd1b94b8c544fa7038971f60d4542f2a0a0ddcc57e6a389e7574a8bf104b03ef0362097ee2d1ddc894178366f01929f9cf2d64a SHA512 f8628135b2e4aa43bd2f60e29cf8692f5729ed6cd62c380dc36294e298eba136ba3d711b6971e3874065ce0119702e25074c4f24b22f9abbaab46dcf91821016
MISC metadata.xml 1009 BLAKE2B 116dfb968daac03e57e634f9a7c1ec25a365b162cfd5ec3e02a0675fab9fdf0abc0a962dce40a46db430180a9dc19b4abe5ce6fed6b1fca1265965733ab60ee3 SHA512 35e3669d430c7d18806ad065a6fae068f46800499e9f52efa798ad435de478357d7c25bc2dd4ba56083ac9cd034f3bf730119b4384e421e90770cee65200cb96
diff --git a/dev-games/libnw/files/libnw-1.30.02-C23.patch b/dev-games/libnw/files/libnw-1.30.02-C23.patch
new file mode 100644
index 000000000000..984cd10f3605
--- /dev/null
+++ b/dev-games/libnw/files/libnw-1.30.02-C23.patch
@@ -0,0 +1,210 @@
+https://bugs.gentoo.org/931876
+Fix incompatible pointer cast by pointing to hopefully correct struct
+member.
+Ordering of {.y,.c} is important so makefile doesn't try and fail to
+regenerate autogenerated file we just edited.
+--- a/libnw/mdly.y
++++ b/libnw/mdly.y
+@@ -214,7 +214,7 @@
+ dummynodeelement
+ : token_parent token_string =
+ {
+- cur_Node->parent = $2;
++ cur_Node->parent->name = $2;
+ }
+ | token_position xyz =
+ {
+@@ -247,7 +247,7 @@
+ trimeshnodeelement
+ : token_parent token_string =
+ {
+- cur_Node->parent = $2;
++ cur_Node->parent->name = $2;
+ }
+ | token_position xyz =
+ {
+@@ -359,7 +359,7 @@
+ aabbnodeelement
+ : token_parent token_string =
+ {
+- cur_Node->parent = $2;
++ cur_Node->parent->name = $2;
+ }
+ | token_ambient rgb =
+ {
+--- a/libnw/mdly.c
++++ b/libnw/mdly.c
+@@ -1142,7 +1142,7 @@
+ case 22:
+ #line 216 "mdly.y"
+ {
+- cur_Node->parent = yyvsp[0].string;
++ cur_Node->parent->name = yyvsp[0].string;
+ }
+ break;
+ case 23:
+@@ -1167,7 +1167,7 @@
+ case 30:
+ #line 249 "mdly.y"
+ {
+- cur_Node->parent = yyvsp[0].string;
++ cur_Node->parent->name = yyvsp[0].string;
+ }
+ break;
+ case 31:
+@@ -1294,7 +1294,7 @@
+ case 60:
+ #line 361 "mdly.y"
+ {
+- cur_Node->parent = yyvsp[0].string;
++ cur_Node->parent->name = yyvsp[0].string;
+ }
+ break;
+ case 61:
+Minimum amount of patching to make it compile with C23:
+_POSIX_C_SOURCE for fileno and getopt
+strings for strncasecmp
+--- a/libnw/key.c
++++ b/libnw/key.c
+@@ -9,6 +9,7 @@
+ # endif
+ # include <string.h>
+ #endif
++#include <strings.h>
+ #include "global.h"
+ #include "key.h"
+ #include "restyp.h"
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -2,4 +2,4 @@
+
+ EXTRA_DIST = README.tech TODO autogen.sh README.License-Torlack Doxyfile.in magic
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/itpdis/Makefile.am
++++ b/itpdis/Makefile.am
+@@ -10,4 +10,4 @@
+
+ INCLUDES = -I$(top_srcdir)/include
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/libnw/Makefile.am
++++ b/libnw/Makefile.am
+@@ -18,4 +18,4 @@
+ EXTRA_DIST = $(man_MANS) sety.h mdly.h agg_toc_load.3.in agg_toc_del.3.in \
+ agg_create.3.in bif_toc_load.3.in get_game_dir.3.in read_key.3.in
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nw2da2csv/Makefile.am
++++ b/nw2da2csv/Makefile.am
+@@ -10,4 +10,4 @@
+
+ EXTRA_DIST = $(man_MANS) nw2da2csv.1.in
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nwaggext/Makefile.am
++++ b/nwaggext/Makefile.am
+@@ -10,4 +10,4 @@
+
+ INCLUDES = -I$(top_srcdir)/include
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nwareamap/Makefile.am
++++ b/nwareamap/Makefile.am
+@@ -10,4 +10,4 @@
+
+ INCLUDES = -I$(top_srcdir)/include
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nwmrgplc/Makefile.am
++++ b/nwmrgplc/Makefile.am
+@@ -10,4 +10,4 @@
+
+ EXTRA_DIST = $(man_MANS) nwmrgplc.1.in
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nwresext/Makefile.am
++++ b/nwresext/Makefile.am
+@@ -10,4 +10,4 @@
+
+ INCLUDES = -I$(top_srcdir)/include
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nwstrref/Makefile.am
++++ b/nwstrref/Makefile.am
+@@ -10,4 +10,4 @@
+
+ INCLUDES = -I$(top_srcdir)/include
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nwtsfix/Makefile.am
++++ b/nwtsfix/Makefile.am
+@@ -10,4 +10,4 @@
+
+ EXTRA_DIST = $(man_MANS) nwtsfix.1.in
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nwtsmerge/Makefile.am
++++ b/nwtsmerge/Makefile.am
+@@ -10,4 +10,4 @@
+
+ EXTRA_DIST = $(man_MANS) nwtsmerge.1.in
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/nwtsrefs/Makefile.am
++++ b/nwtsrefs/Makefile.am
+@@ -10,4 +10,4 @@
+
+ EXTRA_DIST = $(man_MANS) nwtsrefs.1.in
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/plistcheck/Makefile.am
++++ b/plistcheck/Makefile.am
+@@ -6,4 +6,4 @@
+
+ INCLUDES = -I$(top_srcdir)/include
+
+-AM_CFLAGS = -Wall
++AM_CFLAGS = -Wall -D_POSIX_C_SOURCE=200809L
+--- a/itpdis/main.c
++++ b/itpdis/main.c
+@@ -12,6 +12,7 @@
+ # endif
+ # include <string.h>
+ #endif
++#include <strings.h>
+ #include "global.h"
+ #include "gamedir.h"
+ #include "itp.h"
+--- a/nwmrgplc/main.c
++++ b/nwmrgplc/main.c
+@@ -12,6 +12,7 @@
+ # endif
+ # include <string.h>
+ #endif
++#include <strings.h>
+ #include "global.h"
+ #include "gamedir.h"
+ #include "2da.h"
+--- a/nwtsrefs/main.c
++++ b/nwtsrefs/main.c
+@@ -12,6 +12,7 @@
+ # endif
+ # include <string.h>
+ #endif
++#include <strings.h>
+ #include <ctype.h>
+ #include "global.h"
+ #include "gamedir.h"
diff --git a/dev-games/libnw/libnw-1.30.02-r1.ebuild b/dev-games/libnw/libnw-1.30.02-r1.ebuild
index 70e02dd86931..138aa232ff3a 100644
--- a/dev-games/libnw/libnw-1.30.02-r1.ebuild
+++ b/dev-games/libnw/libnw-1.30.02-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -23,7 +23,6 @@ DOCS=( AUTHORS ChangeLog NEWS README README.tech TODO )
src_prepare() {
default
eautoreconf
-
}
src_configure() {
diff --git a/dev-games/libnw/libnw-1.30.02-r2.ebuild b/dev-games/libnw/libnw-1.30.02-r2.ebuild
new file mode 100644
index 000000000000..51910d3a94e7
--- /dev/null
+++ b/dev-games/libnw/libnw-1.30.02-r2.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="Tools and libraries for NWN file manipulation"
+HOMEPAGE="https://sourceforge.net/projects/openknights/"
+SRC_URI="https://downloads.sourceforge.net/openknights/${P}.tar.gz"
+
+LICENSE="openknights"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="!sci-biology/newick-utils"
+BDEPEND="
+ app-alternatives/yacc
+ app-alternatives/lex"
+
+DOCS=( AUTHORS ChangeLog NEWS README README.tech TODO )
+
+PATCHES=( "${FILESDIR}/${P}-C23.patch" )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/855314
+ #
+ # Sourceforge software dead since 2006, no point reporting anything.
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ default
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}