From f03b9ea9090c186d7d28a62a315ad6fcba391437980754468967816c6208bfe3 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Tue, 9 Jan 2018 00:32:02 +0000 Subject: [PATCH] Accepting request 562640 from home:avindra @jengelh all of your patches are upstream now :) One minor difference with your "nolimit" fix, the upstream has chosen to emit a warning instead of an error: https://github.com/Doom-Utils/deutex/commit/f8b1336bbcb7bc387d3e856cc7c9f75697cd0f0b#diff-737f0ad7650b480ebdf2807f16ae18ca - update to 5.1.1 * Fixed: texture name array: the maximum possible string size is now supported. * Fixed: some warnings and errors with old versions of pkg-config and gcc * Fixed: Aliasing errors (caused crashes on some architectures, such as sparc64) * Can now build WADs with an arbitrary number of lumps. A warning is emitted when more than 4046 are included (vanilla Doom limit). - remove 0001-increase-array-size-for-char-tname-variable-51.patch * upstreamed in 7024dd74a33780ef2dbdf614f4e52526cc3ab457 - remove 0001-Fix-strict-aliasing-violations.patch * upstreamed in 85d821dd3c145be1a998ca2a704930caaad73030 - remove deutex-proto.diff * upstreamed in 07bd0a5083fc15db20bee9056511bd3e10dd1362 - remove deutex-nolimit.diff * fixed in f8b1336bbcb7bc387d3e856cc7c9f75697cd0f0b - remove deprecated BuildRoot option OBS-URL: https://build.opensuse.org/request/show/562640 OBS-URL: https://build.opensuse.org/package/show/games:tools/deutex?expand=0&rev=6 --- 0001-Fix-strict-aliasing-violations.patch | 98 ------------------- ...rray-size-for-char-tname-variable-51.patch | 30 ------ deutex-5.1.0.tar.xz | 3 - deutex-5.1.0.tar.xz.sig | 16 --- deutex-5.1.1.tar.xz | 3 + deutex-5.1.1.tar.xz.sig | 16 +++ deutex-nolimit.diff | 25 ----- deutex-proto.diff | 39 -------- deutex.changes | 22 +++++ deutex.spec | 8 +- 10 files changed, 42 insertions(+), 218 deletions(-) delete mode 100644 0001-Fix-strict-aliasing-violations.patch delete mode 100644 0001-increase-array-size-for-char-tname-variable-51.patch delete mode 100644 deutex-5.1.0.tar.xz delete mode 100644 deutex-5.1.0.tar.xz.sig create mode 100644 deutex-5.1.1.tar.xz create mode 100644 deutex-5.1.1.tar.xz.sig delete mode 100644 deutex-nolimit.diff delete mode 100644 deutex-proto.diff diff --git a/0001-Fix-strict-aliasing-violations.patch b/0001-Fix-strict-aliasing-violations.patch deleted file mode 100644 index 6dc1234..0000000 --- a/0001-Fix-strict-aliasing-violations.patch +++ /dev/null @@ -1,98 +0,0 @@ -From e954d4e296383f6b48fac9f8bf7b413aa70b4cc1 Mon Sep 17 00:00:00 2001 -From: Jan Engelhardt -Date: Mon, 1 Jan 2018 20:18:38 +0100 -Subject: [PATCH] Fix strict aliasing violations - -Type-punning causes unaligned pointers, and those cause crashes on -some processors, e.g. sparc64. - -deutex.c: In function 'COMhelp': -deutex.c:1130:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] - width1 = *((short *) &d->exec) + OPTINDENT; -deutex.c:1131:13: warning: - width2 = *((short *) &d->use); -deutex.c: In function 'opt_widths': -deutex.c:1236:17: warning: - *((short *) ¤t_section->com) = (short) width2r; -deutex.c:1237:17: warning: - if (*((short *) ¤t_section->com) != width2r) -deutex.c:1239:21: warning: - *((short *) ¤t_section->com) = SHRT_MAX; -deutex.c:1241:17: warning: - *((short *) ¤t_section->exec) = (short) width1t; -deutex.c:1242:17: warning: - if (*((short *) ¤t_section->exec) != width1t) -deutex.c:1244:21: warning: - *((short *) ¤t_section->exec) = SHRT_MAX; -deutex.c:1246:17: warning: - *((short *) ¤t_section->use) = (short) width2t; -deutex.c:1247:17: warning: - if (*((short *) ¤t_section->use) != width2t) -deutex.c:1249:21: warning: - *((short *) ¤t_section->use) = SHRT_MAX; ---- - src/deutex.c | 31 ++++++++++++++++++------------- - 1 file changed, 18 insertions(+), 13 deletions(-) - -diff --git a/src/deutex.c b/src/deutex.c -index 15ff8c3..f14dc82 100644 ---- a/src/deutex.c -+++ b/src/deutex.c -@@ -1124,11 +1124,14 @@ void COMhelp(int argc, const char *argv[]) - /* Do a first pass on all the options for this section. Find out how - wide the left and right columns need to be. */ - if (d->type == SEC) { -+ uint16_t tmp; - if (section++) - putchar('\n'); - printf("%s:\n", d->help); -- width1 = *((short *) &d->exec) + OPTINDENT; -- width2 = *((short *) &d->use); -+ memcpy(&tmp, d->exec, sizeof(tmp)); -+ width1 = tmp + OPTINDENT; -+ memcpy(&tmp, d->use, sizeof(tmp)); -+ width2 = tmp; - if (width1 + 1 + width2 > TTYCOL) - width1 = TTYCOL - width2 - COLSPACING; - } -@@ -1229,24 +1232,26 @@ static void opt_widths() - - exec = maximum text width of the first column, - - use = maximum text width of second column. */ - if (current_section != NULL) { -+ uint16_t tmp; - current_section->argc = (char) width1r; - if (current_section->argc != width1r) - current_section->argc = CHAR_MAX; /* Can't happen */ - -- *((short *) ¤t_section->com) = (short) width2r; -- if (*((short *) ¤t_section->com) != width2r) -+ tmp = width2r; -+ if (tmp != width2r) - /* Can't happen */ -- *((short *) ¤t_section->com) = SHRT_MAX; -+ tmp = SHRT_MAX; -+ memcpy(current_section->com, &tmp, sizeof(tmp)); - -- *((short *) ¤t_section->exec) = (short) width1t; -- if (*((short *) ¤t_section->exec) != width1t) -- /* Can't happen */ -- *((short *) ¤t_section->exec) = SHRT_MAX; -+ tmp = width1t; -+ if (tmp != width1t) -+ tmp = SHRT_MAX; -+ memcpy(current_section->exec, &tmp, sizeof(tmp)); - -- *((short *) ¤t_section->use) = (short) width2t; -- if (*((short *) ¤t_section->use) != width2t) -- /* Can't happen */ -- *((short *) ¤t_section->use) = SHRT_MAX; -+ tmp = width2t; -+ if (tmp != width2t) -+ tmp = SHRT_MAX; -+ memcpy(current_section->use, &tmp, sizeof(tmp)); - } - } - --- -2.15.1 - diff --git a/0001-increase-array-size-for-char-tname-variable-51.patch b/0001-increase-array-size-for-char-tname-variable-51.patch deleted file mode 100644 index 8295a6a..0000000 --- a/0001-increase-array-size-for-char-tname-variable-51.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 7024dd74a33780ef2dbdf614f4e52526cc3ab457 Mon Sep 17 00:00:00 2001 -From: Fabian Greffrath -Date: Mon, 18 Dec 2017 02:12:37 +0100 -Subject: [PATCH] increase array size for char "tname" variable (#51) - -In src/texture.c:466 the "t" variable is of type signed short, so the -theoretically lowest possible value is -32768, which takes 6 digits. -The "TEX" string literal takes another 3 digits, so together with the -'\0' string delimiter byte we need an array size of 10 bytes for the -"tname" variable to be able to store the full maximum length string. ---- - src/texture.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/texture.c b/src/texture.c -index 86c2396..3771c24 100644 ---- a/src/texture.c -+++ b/src/texture.c -@@ -393,7 +393,7 @@ void TXUreadTEXTURE(const char *texture1_name, const char *Data, - int16_t Xofs, Yofs, Pindex; /* x,y coordinate in texture space */ - /* patch name index in PNAMES table */ - int32_t MaxPindex; -- static char tname[8]; /*texture name */ -+ static char tname[10]; /*texture name */ - static char pname[8]; /*patch name */ - size_t header_size = 0; - size_t item_size = 0; --- -2.15.1 - diff --git a/deutex-5.1.0.tar.xz b/deutex-5.1.0.tar.xz deleted file mode 100644 index 685adbb..0000000 --- a/deutex-5.1.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c1de33b25aa9f2e5f56007b6a20059f2a3721d93a31fc8636dcd042e30a89343 -size 163292 diff --git a/deutex-5.1.0.tar.xz.sig b/deutex-5.1.0.tar.xz.sig deleted file mode 100644 index 027bd5a..0000000 --- a/deutex-5.1.0.tar.xz.sig +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCAAdFiEEmUWc4ncAN/9VZutLhkmzdgeggEIFAlmNchYACgkQhkmzdgeg -gELN3w/8CJ9xsiB8jST7j9Y7EDKClYwtaxwFrs5sKul/y44ti1/a5cjrK6TM11bu -F9Yql93kb5dgEfxOzriDVeif03Jj9Gsp4YTGMqv70nrKQ8MV+FHSgw8aKqm5eFfE -GWvGLkoTv0gnAof/fx3xrWmWQC+k7rJDmd2snUaXMpmzl5LfPIbbViQL1Gc8pTtu -JZEN+F1KIOf0eSI6nq5wEbvUkSMmacm8SxSq8zD1MmeXtlRY7v9e0d72ISGnHvhB -//55ZwQSuxtbgyAfz7UkY3keScwDpQIn29uhbERcwtiKdziyVBpZfD4AQARnK2v/ -jjyoXTIUH6Fal1xi7fWR2sS0+HxQ9YQm1NBsqErpNWnGG5WKBBfuvGoGGtWTGdad -bQOnZfgaUHHuehC+0DuttHYg2K2p7qZ0lCteK1b5XeETCF38PN6NU4mOdH762KhI -v6CFcSGNKPPxhWPuaWnnawWr3V0Q6W6zYG/Ud7tZaUvfyU6KdbHiQGjlnMz3k4uB -MgbOpf0zaHeyJ80ZBBVw6L1mBdwOS4QGt7IfVwkMTLzp0IF6W2Oa0znyJuxpFjIW -u3Ti8uwCydMDFndH/A53S7ofZiiribb0I6x0+mqg7SPJ+O7wLXLe91ZIcl1enrRQ -uIkom6dU3Cr9HbobEhCNA24SXfxyvTaDfO/wYTgA0JXbrlBQO1w= -=NWOV ------END PGP SIGNATURE----- diff --git a/deutex-5.1.1.tar.xz b/deutex-5.1.1.tar.xz new file mode 100644 index 0000000..9fba0e2 --- /dev/null +++ b/deutex-5.1.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92034232cb8911e7e1d53aa9f1236cc44995664f86f5d33cf2bfcd1ac7a21f7b +size 163584 diff --git a/deutex-5.1.1.tar.xz.sig b/deutex-5.1.1.tar.xz.sig new file mode 100644 index 0000000..5777a64 --- /dev/null +++ b/deutex-5.1.1.tar.xz.sig @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEEmUWc4ncAN/9VZutLhkmzdgeggEIFAlpS9mwACgkQhkmzdgeg +gEKweQ//dqMrjsxDs0NMDh5AUXZDP9bgSeQTYuFJTVfbm6ndhjibiVdY9DVXvPcc +xrYELmfykoBb5IU1hwn9WtVS06OaBfHQ9uNaucdFNJ/5SlNJqnDnyTgeJtdUf0bq +eOaol3CVwghFGUVT0EEi8mLkoqndXTaTETbFaIxICuSmrCbeUr8z+wkN27+opFoI +y3Cci1qSRqVm/HReOJUZcr1kBkGQYgyGU2Me03SbUrgsECBSdRWq64SgquSAkzC3 +cy7Ct35ARxs+Wc4pVVtwjgw2W2e1u7f08d7jzNit/nD5zLo9jXPao73q4K8lNCbT +F1OcWrb5czBorv1xnV6pGV1tXfgpznT3pfl7sHZA+CDR1DJHtqbcoRjo3nmCR9MT +nSYj436Pi0mr/tyeBgWZrlhm1Twal+5WEzUi/9t78QPKSH1vLGxA3XC7dmSmGno8 +i9zCd46C/Vx9I/6pQLOQOcdLIvdZosrQ46v9SiM+2C6zFUTkjxeYO20CcnORZsXB +Nx0vBzVOTnHNwJJeYCwtqMmuu+a4zozEASrJvcFTkTFArJ+Sa1sgOA+u5cH3qcce +J0yfVk7eNMILwADBG8/XKOiBNtnjP2+6aAc2Ad/fDjDN76Qtaq6AsTaEaQvZdQuH +P97gQvkLBRk/yPpBRsovxz3vpiMJnvLdpvSe4JGxh2yqUPIrVhE= +=zUkY +-----END PGP SIGNATURE----- diff --git a/deutex-nolimit.diff b/deutex-nolimit.diff deleted file mode 100644 index e69e35d..0000000 --- a/deutex-nolimit.diff +++ /dev/null @@ -1,25 +0,0 @@ -From 4a59997a18cb1c5269b05ef3f7a2fcd3ba2f7552 Mon Sep 17 00:00:00 2001 -From: Jan Engelhardt -Date: Mon, 1 Jan 2018 19:34:40 +0100 -Subject: [PATCH] Drop limit of 4096 lumps - ---- - src/mkwad.c | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/src/mkwad.c b/src/mkwad.c -index 45db4cd..3ad607b 100644 ---- a/src/mkwad.c -+++ b/src/mkwad.c -@@ -105,8 +105,6 @@ void WADRopenR(struct WADINFO *info, const char *wadin) - ntry = WADRreadLong(info); - if (ntry <= 0) - ProgError("WR09", "%s: zero entries", fname(wadin)); -- if (ntry >= 0x2000) -- ProgError("WR11", "%s: too many entries", fname(wadin)); - info->dirpos = dirpos = WADRreadLong(info); - if ((dirpos < 0) || (dirpos > 0x10000000L)) - ProgError("WR13", "%s: invalid directory offset %08lX", --- -2.15.1 - diff --git a/deutex-proto.diff b/deutex-proto.diff deleted file mode 100644 index ea9cc33..0000000 --- a/deutex-proto.diff +++ /dev/null @@ -1,39 +0,0 @@ -From acd96b8c80a584d877845646ceac388feda46748 Mon Sep 17 00:00:00 2001 -From: Jan Engelhardt -Date: Mon, 1 Jan 2018 19:28:24 +0100 -Subject: [PATCH] build: fix gcc warnings abuot old K&R style function - declarations - -Older gcc complain about the K&R-style prototype. Fix 'em. -(Forward ported from a deutex 4.4.x patch.) -src/deutex.c:108:1: warning: function declaration is not a prototype -src/deutex.c:1611:13: warning: function declaration is not a prototype ---- - src/deutex.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/deutex.c b/src/deutex.c -index 15ff8c3..505a352 100644 ---- a/src/deutex.c -+++ b/src/deutex.c -@@ -76,7 +76,7 @@ const char *palette_lump = "PLAYPAL"; - static char anon[1] = { '\0' }; - - typedef void (*comfun_t) (int argc, const char *argv[]); --static void opt_widths(); -+static void opt_widths(void); - static int is_prefix(const char *s1, const char *s2); - static void call_opt(comfun_t func, ...); - -@@ -1212,7 +1212,7 @@ void COMformat(int argc, const char *argv[]) - /* - * opt_widths - make a pass through Com and compute widths per section - */ --static void opt_widths() -+static void opt_widths(void) - { - comdef_t *d; - comdef_t *current_section = NULL; --- -2.15.1 - diff --git a/deutex.changes b/deutex.changes index 0f07801..33ee871 100644 --- a/deutex.changes +++ b/deutex.changes @@ -1,3 +1,25 @@ +------------------------------------------------------------------- +Tue Jan 9 00:09:12 UTC 2018 - avindra@opensuse.org + +- update to 5.1.1 + * Fixed: texture name array: the maximum possible string size is + now supported. + * Fixed: some warnings and errors with old versions of pkg-config + and gcc + * Fixed: Aliasing errors (caused crashes on some architectures, + such as sparc64) + * Can now build WADs with an arbitrary number of lumps. A warning + is emitted when more than 4046 are included (vanilla Doom limit). +- remove 0001-increase-array-size-for-char-tname-variable-51.patch + * upstreamed in 7024dd74a33780ef2dbdf614f4e52526cc3ab457 +- remove 0001-Fix-strict-aliasing-violations.patch + * upstreamed in 85d821dd3c145be1a998ca2a704930caaad73030 +- remove deutex-proto.diff + * upstreamed in 07bd0a5083fc15db20bee9056511bd3e10dd1362 +- remove deutex-nolimit.diff + * fixed in f8b1336bbcb7bc387d3e856cc7c9f75697cd0f0b +- remove deprecated BuildRoot option + ------------------------------------------------------------------- Mon Jan 1 18:18:37 UTC 2018 - jengelh@inai.de diff --git a/deutex.spec b/deutex.spec index 598e8cd..caa202c 100644 --- a/deutex.spec +++ b/deutex.spec @@ -17,7 +17,7 @@ Name: deutex -Version: 5.1.0 +Version: 5.1.1 Release: 0 Summary: WAD composer for Doom and related games License: GPL-2.0+ @@ -27,11 +27,6 @@ URL: https://github.com/Doom-Utils/deutex Source: https://github.com/Doom-Utils/deutex/releases/download/v%version/%name-%version.tar.xz Source2: https://github.com/Doom-Utils/deutex/releases/download/v%version/%name-%version.tar.xz.sig -Patch1: 0001-increase-array-size-for-char-tname-variable-51.patch -Patch2: 0001-Fix-strict-aliasing-violations.patch -Patch3: deutex-proto.diff -Patch4: deutex-nolimit.diff -BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: asciidoc BuildRequires: automake BuildRequires: pkgconfig @@ -49,7 +44,6 @@ functions such as merging WADs. %prep %setup -q -%patch -P 1 -P 2 -P 3 -P 4 -p1 %build autoreconf -fiv