SHA256
1
0
forked from pool/deutex

Accepting request 560959 from home:avindra

- update to 5.1.0
  * General
    - The -overwrite option now works.
    - Levels are extracted/inserted in a way to preserve GL nodes.
    - Inserting pictures with a height of 1 pixel no longer causes
      a malloc error, and allows the operation of rebuilding a
      Doom 1 or 2 IWAD.
    - texture lump file names can now be overridden.
  * Graphics
    - DeuTex supports reading and writing sprite offsets based on
      PNG grab chunks in a manner compatible with SLADE and ZDoom.
      wadinfo.txt overrides these offsets unless -pngoffsets is used.
- includes 5.0.0
  * Removed features
    - DeuSF.
    - -man troff format generation.
    - WinTex options.
    - -fullsnd: now the only mode.
    - MS-DOS and OS/2 compatibility.
    - Incomplete (and conditioned out) Rise of the Triad support.
  * File format support
    - PNG support added, creating an optional dependency on libpng
      1.6. If compiled in, it is the default extraction format,
      PPM otherwise.
    - Au and VOC sound formats removed. WAV is the only supported
      format for extraction and creation.
    - Full sound lumps from the WAD are always extracted.
    - MIDI files can be included just by being named *.mid, and
      are extracted to the same file name extension.
  * General
    - Log file support has been removed, in favor of the user
      doing a shell redirection (eg, with > or 2>) instead.
    - Arch-vile sprites are now extracted and inserted using
      literal names for sprites with the [ and ] characters in
      names (was illegal in DOS), and sprite names with \ are
      now altered to use ^ on-disk, matching the ZDoom PK3
      standard.
    - Graphics with a height > 128 are now inserted into Doom WAD
      files correctly.
    - UDMF (Universal Doom Map Format) support.
  * Build systems, code standards
    - Real Autoconf+Automake build system to replace the
      barely-functioning imitation one. ./configure, make, and
      related environment variables work as should be expected.
    - MS-DOS and OS/2 batch files removed.
    - A malloc.h include was removed to allow compilation on MacOS,
      and is not needed by current Unix systems in general.
    - Major cleanup, linting and refactoring
    - C99-style cleanups to use (u)intN_t types, bool, true,
      false throughout the code, replacing old defines.
    - AsciiDoc now used for documentation
- cleanup with spec-cleaner
- remove patches obsoleted by upstream cleanup and refactoring
  * deutex-automake.diff
  * deutex-braces.diff
  * deutex-init-stdfp.diff
    - check_types removed (b76fafa6fee9a64929e7b1087ac36ea3ce39e27d)
  * deutex-soundbuf.diff
- rebase deutex-proto.diff
- rebase deutex-nolimit.diff
- renumber patches

OBS-URL: https://build.opensuse.org/request/show/560959
OBS-URL: https://build.opensuse.org/package/show/games:tools/deutex?expand=0&rev=3
This commit is contained in:
Jan Engelhardt 2018-01-01 18:58:32 +00:00 committed by Git OBS Bridge
parent 3da299538e
commit 5fb04e6c8f
11 changed files with 127 additions and 295 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:faed02b5b286044e28c71a82c72243408dc89a8d14677500b5eea607f048afe8
size 263351

3
deutex-5.1.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c1de33b25aa9f2e5f56007b6a20059f2a3721d93a31fc8636dcd042e30a89343
size 163292

16
deutex-5.1.0.tar.xz.sig Normal file
View File

@ -0,0 +1,16 @@
-----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-----

View File

@ -1,75 +0,0 @@
---
Makefile.am | 37 +++++++++++++++++++++++++++++++++++++
configure.ac | 9 +++++++++
src/deutex.h | 2 +-
3 files changed, 47 insertions(+), 1 deletion(-)
Index: deutex-4.4.902/Makefile.am
===================================================================
--- /dev/null
+++ deutex-4.4.902/Makefile.am
@@ -0,0 +1,37 @@
+# -*- Makefile -*-
+
+AM_CFLAGS = -Wall -Wpointer-arith -Wstrict-prototypes
+
+bin_PROGRAMS = deusf deutex
+
+deutex_SOURCES = \
+ src/color.c \
+ src/compose.c \
+ src/deutex.c \
+ src/endianio.c \
+ src/endianm.c \
+ src/extract.c \
+ src/gifcodec.c \
+ src/ident.c \
+ src/listdir.c \
+ src/lists.c \
+ src/log.c \
+ src/lzw.c \
+ src/merge.c \
+ src/mkwad.c \
+ src/picture.c \
+ src/sound.c \
+ src/sscript.c \
+ src/substit.c \
+ src/text.c \
+ src/texture.c \
+ src/tools.c \
+ src/usedidx.c \
+ src/version.c \
+ src/wadio.c
+deutex_CFLAGS = ${AM_CFLAGS} -DDeuTex
+
+deusf_SOURCES = ${deutex_SOURCES}
+deusf_CFLAGS = ${AM_CFLAGS} -DDeuSF
+
+man_MANS = deutex.6
Index: deutex-4.4.902/configure.ac
===================================================================
--- /dev/null
+++ deutex-4.4.902/configure.ac
@@ -0,0 +1,9 @@
+AC_INIT([deutex], [4.4.902])
+AC_CONFIG_HEADERS([config.h])
+AM_INIT_AUTOMAKE([-Wall foreign subdir-objects])
+AC_PROG_CC
+AC_PROG_INSTALL
+AC_CHECK_HEADERS([inttypes.h])
+AC_CHECK_FUNCS([snprintf])
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT
Index: deutex-4.4.902/src/deutex.h
===================================================================
--- deutex-4.4.902.orig/src/deutex.h
+++ deutex-4.4.902/src/deutex.h
@@ -100,7 +100,7 @@ extern const char deutex_version[];
#endif
/* Fixed-size types */
-#ifdef HAVE_INTTYPES
+#ifdef HAVE_INTTYPES_H
# include <inttypes.h>
#endif

View File

@ -1,105 +0,0 @@
From: Jan Engelhardt <jengelh@medozas.de>
Fix build warnings.
src/mkwad.c: In function "WADRreadBytes":
src/mkwad.c:386:6: warning: suggest explicit braces to avoid ambiguous "else"
src/mkwad.c: In function "WADRreadShort":
src/mkwad.c:405:6: warning: suggest explicit braces to avoid ambiguous "else"
src/mkwad.c: In function "WADRreadLong":
src/mkwad.c:417:6: warning: suggest explicit braces to avoid ambiguous "else"
src/mkwad.c: In function "WADRreadEntry2":
src/mkwad.c:492:6: warning: suggest explicit braces to avoid ambiguous "else"
src/color.c: In function "COLinit":
src/color.c:224:6: warning: suggest explicit braces to avoid ambiguous "else"
---
src/color.c | 3 ++-
src/mkwad.c | 12 ++++++++----
2 files changed, 10 insertions(+), 5 deletions(-)
Index: deutex-4.4.902/src/color.c
===================================================================
--- deutex-4.4.902.orig/src/color.c
+++ deutex-4.4.902/src/color.c
@@ -221,12 +221,13 @@ void COLinit( UInt8 invR, UInt8 invG, UI
const char *name = NULL;
/*Int16 R,G,B;*/
if(COLok!=FALSE) Bug("PL02", "COLok");
- if(Colsz< 256*sizeof(struct PIXEL))
+ if(Colsz< 256*sizeof(struct PIXEL)) {
if (lumpname == NULL)
ProgError ("PL03", "%s: wrong size for PLAYPAL", fname (pathname));
else
ProgError ("PL04", "%s: %s: wrong size for PLAYPAL",
fname (pathname), lump_name (lumpname));
+ }
COLok=TRUE;
COLpal= (struct PIXEL *)Malloc(256*sizeof(struct PIXEL));
for(i=0;i< NCOLOURS;i++)
Index: deutex-4.4.902/src/mkwad.c
===================================================================
--- deutex-4.4.902.orig/src/mkwad.c
+++ deutex-4.4.902/src/mkwad.c
@@ -383,7 +383,7 @@ iolen_t WADRreadBytes (struct WADINFO *i
{
long ofs = ftell (info->fd);
iolen_t result = WADRreadBytes2 (info, buffer, nbytes);
- if (result != nbytes)
+ if (result != nbytes) {
if (ferror (info->fd))
ProgError ("WR43", "%s: read error (got %lu/%lu bytes)",
fnameofs (info->filename, ofs),
@@ -394,6 +394,7 @@ iolen_t WADRreadBytes (struct WADINFO *i
fnameofs (info->filename, ofs),
(unsigned long) result,
(unsigned long) nbytes);
+ }
return nbytes;
}
@@ -402,11 +403,12 @@ Int16 WADRreadShort(struct WADINFO *info
{ Int16 res;
long ofs = ftell (info->fd);
if (!(info->ok&WADR_READ)) Bug("WR51", "WadRdS");
- if (wad_read_i16 (info->fd, &res))
+ if (wad_read_i16 (info->fd, &res)) {
if (ferror (info->fd))
ProgError ("WR53", "%s: read error", fnameofs (info->filename, ofs));
else
ProgError ("WR55", "%s: unexpected EOF", fnameofs (info->filename, ofs));
+ }
return res;
}
@@ -414,11 +416,12 @@ Int32 WADRreadLong(struct WADINFO *info)
{ Int32 res;
long ofs = ftell (info->fd);
if (!(info->ok&WADR_READ)) Bug("WR61", "WadRdL");
- if (wad_read_i32 (info->fd, &res))
+ if (wad_read_i32 (info->fd, &res)) {
if (ferror (info->fd))
ProgError ("WR63", "%s: read error", fnameofs (info->filename, ofs));
else
ProgError ("WR65", "%s: unexpected EOF", fnameofs (info->filename, ofs));
+ }
return res;
}
@@ -489,7 +492,7 @@ char *WADRreadEntry2 (struct WADINFO *in
buffer = Malloc (size);
WADRseek (info, start);
actual_size = WADRreadBytes2 (info, buffer, size);
- if (actual_size < size)
+ if (actual_size < size) {
if (ferror (info->fd))
ProgError ("WR78", "%s: Lump %s: read error at byte %ld",
fnameofs (info->filename, start + actual_size),
@@ -500,6 +503,7 @@ char *WADRreadEntry2 (struct WADINFO *in
fnameofs (info->filename, start + actual_size),
lump_name (info->dir[n].name),
(long) actual_size);
+ }
*psize = actual_size;
return buffer;
}

View File

@ -1,35 +0,0 @@
From: Jan Engelhardt <jengelh@medozas.de>
Date: 2010-08-23 12:14:04 +0200
Stderr needs to be initialized first, otherwise ProgError will
crash when called from a check_types that does detect a size
mismatch.
---
src/deutex.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
Index: deutex-4.4.902/src/deutex.c
===================================================================
--- deutex-4.4.902.orig/src/deutex.c
+++ deutex-4.4.902/src/deutex.c
@@ -975,9 +975,6 @@ int main (int argc, char *argv_non_const
"\t+------------------------------------+\n\n");
#endif
- /* Sanity checks */
- check_types ();
-
/*
** default parameters
*/
@@ -1017,6 +1014,9 @@ int main (int argc, char *argv_non_const
PrintInit(FALSE);
PrintVerbosity(2);
+ /* Sanity checks */
+ check_types();
+
/* Do a second pass through argv to catch options like --help that
shouldn't cause the creation of a log file. */
{

View File

@ -6,11 +6,11 @@ Permit reading of WADs with more than 4096 entries.
src/mkwad.c | 2 -- src/mkwad.c | 2 --
1 file changed, 2 deletions(-) 1 file changed, 2 deletions(-)
Index: deutex-4.4.902/src/mkwad.c Index: a/src/mkwad.c
=================================================================== ===================================================================
--- deutex-4.4.902.orig/src/mkwad.c --- a/src/mkwad.c
+++ deutex-4.4.902/src/mkwad.c +++ b/src/mkwad.c
@@ -125,8 +125,6 @@ void WADRopenR(struct WADINFO *info, con @@ -105,8 +105,6 @@ void WADRopenR(struct WADINFO *info, const char *wadin)
ntry = WADRreadLong(info); ntry = WADRreadLong(info);
if (ntry <= 0) if (ntry <= 0)
ProgError("WR09", "%s: zero entries", fname(wadin)); ProgError("WR09", "%s: zero entries", fname(wadin));

View File

@ -7,11 +7,11 @@ src/deutex.c:1611:13: warning: function declaration is not a prototype
src/deutex.c | 4 ++-- src/deutex.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-) 1 file changed, 2 insertions(+), 2 deletions(-)
Index: deutex-4.4.902/src/deutex.c Index: a/src/deutex.c
=================================================================== ===================================================================
--- deutex-4.4.902.orig/src/deutex.c --- a/src/deutex.c
+++ deutex-4.4.902/src/deutex.c +++ b/src/deutex.c
@@ -105,7 +105,7 @@ const char *logfile @@ -76,7 +76,7 @@ const char *palette_lump = "PLAYPAL";
static char anon[1] = { '\0' }; static char anon[1] = { '\0' };
typedef void (*comfun_t) (int argc, const char *argv[]); typedef void (*comfun_t) (int argc, const char *argv[]);
@ -20,7 +20,7 @@ Index: deutex-4.4.902/src/deutex.c
static int is_prefix(const char *s1, const char *s2); static int is_prefix(const char *s1, const char *s2);
static void call_opt(comfun_t func, ...); static void call_opt(comfun_t func, ...);
@@ -1608,7 +1608,7 @@ void COMmanopt(int argc, const char *arg @@ -1212,7 +1212,7 @@ void COMformat(int argc, const char *argv[])
/* /*
* opt_widths - make a pass through Com and compute widths per section * opt_widths - make a pass through Com and compute widths per section
*/ */

View File

@ -1,23 +0,0 @@
From: Jan Engelhardt <jengelh@medozas.de>
I: Statement might potentially overflow a destination buffer, where a size
larger than the actual buffer was specified
E: deutex destbufferoverflow src/sound.c:315:11
---
src/sound.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: deutex-4.4.902/src/sound.c
===================================================================
--- deutex-4.4.902.orig/src/sound.c
+++ deutex-4.4.902/src/sound.c
@@ -312,7 +312,7 @@ char *SNDloadVocFile(char *file, Int32
ProgError("VR12", "%s: bad magic", fname (file));
if(fseek(fp,headv.block1,SEEK_SET))
ProgError("VR13", "%s: bad header", fname (file));
- if(fread(&blockv,sizeof(struct VOCHEAD),1,fp)!=1)
+ if(fread(&blockv,sizeof(struct VOCBLOCK1),1,fp)!=1)
ProgError("VR14", "%s: read error in first block", fname (file));
if(blockv.type!=1)
ProgError("VR15", "%s: first block is not sound", fname (file));

View File

@ -1,3 +1,68 @@
-------------------------------------------------------------------
Mon Jan 1 07:58:11 UTC 2018 - avindra@opensuse.org
- update to 5.1.0
* General
- The -overwrite option now works.
- Levels are extracted/inserted in a way to preserve GL nodes.
- Inserting pictures with a height of 1 pixel no longer causes
a malloc error, and allows the operation of rebuilding a
Doom 1 or 2 IWAD.
- texture lump file names can now be overridden.
* Graphics
- DeuTex supports reading and writing sprite offsets based on
PNG grab chunks in a manner compatible with SLADE and ZDoom.
wadinfo.txt overrides these offsets unless -pngoffsets is used.
- includes 5.0.0
* Removed features
- DeuSF.
- -man troff format generation.
- WinTex options.
- -fullsnd: now the only mode.
- MS-DOS and OS/2 compatibility.
- Incomplete (and conditioned out) Rise of the Triad support.
* File format support
- PNG support added, creating an optional dependency on libpng
1.6. If compiled in, it is the default extraction format,
PPM otherwise.
- Au and VOC sound formats removed. WAV is the only supported
format for extraction and creation.
- Full sound lumps from the WAD are always extracted.
- MIDI files can be included just by being named *.mid, and
are extracted to the same file name extension.
* General
- Log file support has been removed, in favor of the user
doing a shell redirection (eg, with > or 2>) instead.
- Arch-vile sprites are now extracted and inserted using
literal names for sprites with the [ and ] characters in
names (was illegal in DOS), and sprite names with \ are
now altered to use ^ on-disk, matching the ZDoom PK3
standard.
- Graphics with a height > 128 are now inserted into Doom WAD
files correctly.
- UDMF (Universal Doom Map Format) support.
* Build systems, code standards
- Real Autoconf+Automake build system to replace the
barely-functioning imitation one. ./configure, make, and
related environment variables work as should be expected.
- MS-DOS and OS/2 batch files removed.
- A malloc.h include was removed to allow compilation on MacOS,
and is not needed by current Unix systems in general.
- Major cleanup, linting and refactoring
- C99-style cleanups to use (u)intN_t types, bool, true,
false throughout the code, replacing old defines.
- AsciiDoc now used for documentation
- cleanup with spec-cleaner
- remove patches obsoleted by upstream cleanup and refactoring
* deutex-automake.diff
* deutex-braces.diff
* deutex-init-stdfp.diff
- check_types removed (b76fafa6fee9a64929e7b1087ac36ea3ce39e27d)
* deutex-soundbuf.diff
- rebase deutex-proto.diff
- rebase deutex-nolimit.diff
- renumber patches
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Jul 7 14:49:32 UTC 2017 - jengelh@inai.de Fri Jul 7 14:49:32 UTC 2017 - jengelh@inai.de

View File

@ -1,7 +1,7 @@
# #
# spec file for package deutex # spec file for package deutex
# #
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -17,28 +17,22 @@
Name: deutex Name: deutex
Version: 4.4.902 Version: 5.1.0
Release: 0 Release: 0
Summary: WAD composer for Doom and related games Summary: WAD composer for Doom and related games
License: GPL-2.0+ License: GPL-2.0+
Group: Development/Tools/Other Group: Development/Tools/Other
Url: http://www.teaser.fr/~amajorel/deutex/ URL: http://www.teaser.fr/~amajorel/deutex/
Source0: https://github.com/Doom-Utils/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.xz
# This prerelease tarball is unfortunately not linked from the homepage, Source1: https://github.com/Doom-Utils/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.xz.sig
# but referenced from Patch1: deutex-proto.diff
# http://doom-editing.gamehourz.com/DeuTex-release-candidate-ftopict85808.html Patch2: deutex-nolimit.diff
Source: http://www.teaser.fr/~amajorel/deutex/fungus/%name-%version.tar.gz BuildRequires: asciidoc
Patch1: deutex-automake.diff
Patch2: deutex-braces.diff
Patch3: deutex-proto.diff
Patch4: deutex-init-stdfp.diff
Patch5: deutex-soundbuf.diff
Patch6: deutex-nolimit.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf BuildRequires: autoconf
BuildRequires: automake BuildRequires: automake
BuildRequires: libtool BuildRequires: libtool
Provides: deusf = %version BuildRequires: pkgconfig
Provides: deusf = %{version}
%description %description
DeuTex is a wad composer for Doom, Heretic, Hexen and Strife. It can DeuTex is a wad composer for Doom, Heretic, Hexen and Strife. It can
@ -53,24 +47,19 @@ such as merging wads, etc.
%prep %prep
%setup -q %setup -q
%patch -P 1 -P 2 -P 3 -P 4 -P 5 -P 6 -p1 %patch -P 1 -P 2 -p1
%build %build
autoreconf -fi autoreconf -fiv
%configure %configure
make CFLAGS="%optflags" %{?_smp_mflags} make CFLAGS="%{optflags}" %{?_smp_mflags}
iconv -f iso8859-1 -t utf-8 <deutex.6 >deutex.6.new;
iconv -f iso8859-1 -t utf-8 <dtexman6.txt >dtexman6.txt.new;
mv deutex.6.new deutex.6;
mv dtexman6.txt.new dtexman6.txt;
%install %install
%make_install %make_install
%files %files
%defattr(-,root,root) %doc COPYING COPYING.LIB
%_bindir/* %{_bindir}/%{name}
%doc %_mandir/*/* %{_mandir}/man6/%{name}.6%{ext_man}
%doc dtexman6.txt CHANGES COPYING COPYING.LIB FAQ
%changelog %changelog