Debian Bug report logs - #889059
FTBFS with 2.0.20171212

version graph

Package: src:warzone2100; Maintainer for src:warzone2100 is Debian Games Team <pkg-games-devel@lists.alioth.debian.org>;

Reported by: Thomas Goirand <zigo@debian.org>

Date: Thu, 1 Feb 2018 16:18:01 UTC

Severity: serious

Tags: buster, sid

Found in version warzone2100/3.2.1-2

Fixed in version warzone2100/3.2.1-3

Done: Markus Koschany <apo@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#889059; Package src:warzone2100. (Thu, 01 Feb 2018 16:18:04 GMT) (full text, mbox, link).


Acknowledgement sent to Thomas Goirand <zigo@debian.org>:
New Bug report received and forwarded. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>. (Thu, 01 Feb 2018 16:18:04 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: Thomas Goirand <zigo@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: FTBFS with 2.0.20171212
Date: Thu, 01 Feb 2018 17:15:21 +0100
Source: warzone2100
Version: 3.2.1-2
Severity: important

Hi,

Rebuilding warzone2100 with libminiupnpc 2.0.20171212, that I have just uploaded
to Experimental (currently in NEW) leads to FTBFS:

netplay.cpp: In function ‘int upnp_init(void*)’:
netplay.cpp:954:50: error: invalid conversion from ‘int*’ to ‘unsigned char’ [-fpermissive]
   devlist = upnpDiscover(3000, NULL, NULL, 0, 0, &result);
                                                  ^~~~~~~
netplay.cpp:954:57: error: too few arguments to function ‘UPNPDev* upnpDiscover(int, const char*, const char*, int, int, unsigned char, int*)’
   devlist = upnpDiscover(3000, NULL, NULL, 0, 0, &result);
                                                         ^
In file included from netplay.cpp:45:0:
/usr/include/miniupnpc/miniupnpc.h:62:1: note: declared here
 upnpDiscover(int delay, const char * multicastif,
 ^~~~~~~~~~~~
netplay.cpp:974:106: error: too few arguments to function ‘void* miniwget_getaddr(const char*, int*, char*, int, unsigned int, int*)’
    descXML = (char *)miniwget_getaddr(dev->descURL, &descXMLsize, lanaddr, sizeof(lanaddr), dev->scope_id);
                                                                                                          ^
In file included from netplay.cpp:44:0:
/usr/include/miniupnpc/miniwget.h:21:25: note: declared here
 MINIUPNP_LIBSPEC void * miniwget_getaddr(const char *, int *, char *, int, unsigned int, int *);
                         ^~~~~~~~~~~~~~~~
netplay.cpp: In function ‘int NETsendFile(char*, const Sha256&, UDWORD)’:
netplay.cpp:1932:107: warning: ‘PHYSFS_sint64 PHYSFS_read(PHYSFS_File*, void*, PHYSFS_uint32, PHYSFS_uint32)’ is deprecated [-Wdeprecated-declarations]
  bytesToRead = PHYSFS_read(NetPlay.players[player].wzFile.pFileHandle, inBuff, 1, MAX_FILE_TRANSFER_PACKET);
                                                                                                           ^
In file included from ../../lib/framework/file.h:22:0,
                 from netplay.cpp:30:
/usr/include/physfs.h:1333:27: note: declared here
 PHYSFS_DECL PHYSFS_sint64 PHYSFS_read(PHYSFS_File *handle,
                           ^~~~~~~~~~~
In file included from ../../lib/framework/string_ext.h:24:0,
                 from ../../lib/framework/frame.h:44,
                 from netplay.cpp:26:
netplay.cpp: In function ‘UBYTE NETrecvFile(NETQUEUE)’:
netplay.cpp:2005:103: warning: ‘const char* PHYSFS_getLastError()’ is deprecated [-Wdeprecated-declarations]
     debug(LOG_FATAL, "PHYSFS_openRead(\"%s\") failed with error: %s\n", fileName, PHYSFS_getLastError());
                                                                                                       ^
../../lib/framework/debug.h:261:93: note: in definition of macro ‘debug’
 #define debug(part, ...) do { if (enabled_debug[part]) _debug(__LINE__, part, __FUNCTION__, __VA_ARGS__); } while(0)
                                                                                             ^~~~~~~~~~~
In file included from ../../lib/framework/file.h:22:0,
                 from netplay.cpp:30:
/usr/include/physfs.h:654:25: note: declared here
 PHYSFS_DECL const char *PHYSFS_getLastError(void) PHYSFS_DEPRECATED;
                         ^~~~~~~~~~~~~~~~~~~
netplay.cpp:2080:62: warning: ‘PHYSFS_sint64 PHYSFS_write(PHYSFS_File*, const void*, PHYSFS_uint32, PHYSFS_uint32)’ is deprecated [-Wdeprecated-declarations]
  PHYSFS_write(NetPlay.pMapFileHandle, outBuff, bytesToRead, 1);
                                                              ^
In file included from ../../lib/framework/file.h:22:0,
                 from netplay.cpp:30:
/usr/include/physfs.h:1362:27: note: declared here
 PHYSFS_DECL PHYSFS_sint64 PHYSFS_write(PHYSFS_File *handle,
                           ^~~~~~~~~~~~
In file included from ../../lib/framework/string_ext.h:24:0,
                 from ../../lib/framework/frame.h:44,
                 from netplay.cpp:26:
netplay.cpp:2087:101: warning: ‘const char* PHYSFS_getLastError()’ is deprecated [-Wdeprecated-declarations]
    debug(LOG_ERROR, "Could not close file handle after trying to save map: %s", PHYSFS_getLastError());
                                                                                                     ^
../../lib/framework/debug.h:261:93: note: in definition of macro ‘debug’
 #define debug(part, ...) do { if (enabled_debug[part]) _debug(__LINE__, part, __FUNCTION__, __VA_ARGS__); } while(0)
                                                                                             ^~~~~~~~~~~
In file included from ../../lib/framework/file.h:22:0,
                 from netplay.cpp:30:
/usr/include/physfs.h:654:25: note: declared here
 PHYSFS_DECL const char *PHYSFS_getLastError(void) PHYSFS_DEPRECATED;
                         ^~~~~~~~~~~~~~~~~~~
netplay.cpp: In function ‘void dumpDebugSync(uint8_t*, size_t, uint32_t, unsigned int)’:
netplay.cpp:3599:33: warning: ‘PHYSFS_sint64 PHYSFS_write(PHYSFS_File*, const void*, PHYSFS_uint32, PHYSFS_uint32)’ is deprecated [-Wdeprecated-declarations]
  PHYSFS_write(fp, buf, bufLen, 1);

In file included from ../../lib/framework/file.h:22:0,
                 from netplay.cpp:30:
/usr/include/physfs.h:654:25: note: declared here
 PHYSFS_DECL const char *PHYSFS_getLastError(void) PHYSFS_DEPRECATED;
                         ^~~~~~~~~~~~~~~~~~~
netplay.cpp:2080:62: warning: ‘PHYSFS_sint64 PHYSFS_write(PHYSFS_File*, const void*, PHYSFS_uint32, PHYSFS_uint32)’ is deprecated [-Wdeprecated-declarations]
  PHYSFS_write(NetPlay.pMapFileHandle, outBuff, bytesToRead, 1);
                                                              ^
In file included from ../../lib/framework/file.h:22:0,
                 from netplay.cpp:30:
/usr/include/physfs.h:1362:27: note: declared here
 PHYSFS_DECL PHYSFS_sint64 PHYSFS_write(PHYSFS_File *handle,
                           ^~~~~~~~~~~~
In file included from ../../lib/framework/string_ext.h:24:0,
                 from ../../lib/framework/frame.h:44,
                 from netplay.cpp:26:
netplay.cpp:2087:101: warning: ‘const char* PHYSFS_getLastError()’ is deprecated [-Wdeprecated-declarations]
    debug(LOG_ERROR, "Could not close file handle after trying to save map: %s", PHYSFS_getLastError());
                                                                                                     ^
../../lib/framework/debug.h:261:93: note: in definition of macro ‘debug’
 #define debug(part, ...) do { if (enabled_debug[part]) _debug(__LINE__, part, __FUNCTION__, __VA_ARGS__); } while(0)
                                                                                             ^~~~~~~~~~~
In file included from ../../lib/framework/file.h:22:0,
                 from netplay.cpp:30:
/usr/include/physfs.h:654:25: note: declared here
 PHYSFS_DECL const char *PHYSFS_getLastError(void) PHYSFS_DEPRECATED;
                         ^~~~~~~~~~~~~~~~~~~
netplay.cpp: In function ‘void dumpDebugSync(uint8_t*, size_t, uint32_t, unsigned int)’:
netplay.cpp:3599:33: warning: ‘PHYSFS_sint64 PHYSFS_write(PHYSFS_File*, const void*, PHYSFS_uint32, PHYSFS_uint32)’ is deprecated [-Wdeprecated-declarations]
  PHYSFS_write(fp, buf, bufLen, 1);

Please fix this issue before I upload it to Sid, at which time this bug will
become RC.

Cheers,

Thomas Goirand (zigo)

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#889059; Package src:warzone2100. (Fri, 02 Feb 2018 16:15:12 GMT) (full text, mbox, link).


Acknowledgement sent to miniupnp <miniupnp@free.fr>:
Extra info received and forwarded to list. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>. (Fri, 02 Feb 2018 16:15:12 GMT) (full text, mbox, link).


Message #10 received at 889059@bugs.debian.org (full text, mbox, reply):

From: miniupnp <miniupnp@free.fr>
To: 889059@bugs.debian.org
Subject: FTBFS with 2.0.20171212
Date: Fri, 2 Feb 2018 17:03:38 +0100
[Message part 1 (text/plain, inline)]
Hello,

to build with multiple versions of libminiupnpc-dev,

replace 

 devlist = upnpDiscover(3000, NULL, NULL, 0, 0, &result);

by :

#if defined(MINIUPNPC_API_VERSION) && (MINIUPNPC_API_VERSION >= 14)   miniupnpc_dev = upnpDiscover(3000, NULL, NULL, 0, 0, 2, &result); /* use default TTL of 2 */
#elif defined(MINIUPNPC_API_VERSION) && (MINIUPNPC_API_VERSION >= 8)
  miniupnpc_dev = upnpDiscover(3000, NULL, NULL, 0, 0, &result);
#elif defined(MINIUPNPC_API_VERSION) && (MINIUPNPC_API_VERSION >= 3)
  miniupnpc_dev = upnpDiscover(3000, NULL, NULL, 0);
#else
  miniupnpc_dev = upnpDiscover(3000, NULL, NULL);
#endif



regards,

Thomas Bernard

[Message part 2 (text/html, inline)]

Added indication that bug 889059 blocks 889937 Request was from Emilio Pozuelo Monfort <pochu@debian.org> to 889937-submit@bugs.debian.org. (Sat, 10 Feb 2018 10:57:08 GMT) (full text, mbox, link).


Severity set to 'serious' from 'important' Request was from Adrian Bunk <bunk@debian.org> to control@bugs.debian.org. (Thu, 15 Feb 2018 11:48:03 GMT) (full text, mbox, link).


Added tag(s) sid and buster. Request was from Adrian Bunk <bunk@debian.org> to control@bugs.debian.org. (Thu, 15 Feb 2018 11:48:03 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Debian Games Team <pkg-games-devel@lists.alioth.debian.org>:
Bug#889059; Package src:warzone2100. (Thu, 22 Feb 2018 19:51:06 GMT) (full text, mbox, link).


Acknowledgement sent to peter green <plugwash@p10link.net>:
Extra info received and forwarded to list. Copy sent to Debian Games Team <pkg-games-devel@lists.alioth.debian.org>. (Thu, 22 Feb 2018 19:51:06 GMT) (full text, mbox, link).


Message #21 received at 889059@bugs.debian.org (full text, mbox, reply):

From: peter green <plugwash@p10link.net>
To: 889059@bugs.debian.org
Cc: miniupnp@free.fr
Subject: Re: FTBFS with (miniupnpc) 2.0.20171212 (warzone2100)
Date: Thu, 22 Feb 2018 19:48:14 +0000
[Message part 1 (text/plain, inline)]
> to build with multiple versions of libminiupnpc-dev, replace
I think your suggested replacement is a bit over the top. I don't think there is any mileage in debian patches adding support for very old versions of miniupnpc.

Also your suggested fix seems to have a couple of issues. Firstly it seems to be missing a newline and secondly
it seems to have a wrong variable name in it.

Finally it seems that warzone2100 upstream was using the "API 14+" version of the call. Debian then patched it to support the API 8-13 version of the call and broke support for API 14+.

So taking this all into account I whipped up a patch to support both the API 14+ version of that call and the API 8-13 version but not the older versions.

Unfortunately after doing so it seems that the package still failed to build in Raspbian buster, the next error was:

> netplay.cpp:978:106: error: too few arguments to function ‘void* miniwget_getaddr(const char*, int*, char*, int, unsigned int, int*)’
>     descXML = (char *)miniwget_getaddr(dev->descURL, &descXMLsize, lanaddr, sizeof(lanaddr), dev->scope_id);

Some searching lead me to https://github.com/miniupnp/miniupnp/commit/c4991916e5c12a7754e935e71a5313e75af6aeb9#diff-9813014a8c763f65cfbd4caec9552ddd and based on the changes to the testminiwget code in that commit I whipped up a patch.

With these fixes I was able to get a succesful build in Raspbian buster.

Debdiff attatched and uploaded to Raspbian, no intent to NMU in Debian.

[Message part 2 (text/html, inline)]
[warzone2100.debdiff (text/plain, attachment)]

Reply sent to Markus Koschany <apo@debian.org>:
You have taken responsibility. (Sat, 24 Feb 2018 00:39:03 GMT) (full text, mbox, link).


Notification sent to Thomas Goirand <zigo@debian.org>:
Bug acknowledged by developer. (Sat, 24 Feb 2018 00:39:03 GMT) (full text, mbox, link).


Message #26 received at 889059-close@bugs.debian.org (full text, mbox, reply):

From: Markus Koschany <apo@debian.org>
To: 889059-close@bugs.debian.org
Subject: Bug#889059: fixed in warzone2100 3.2.1-3
Date: Sat, 24 Feb 2018 00:35:58 +0000
Source: warzone2100
Source-Version: 3.2.1-3

We believe that the bug you reported is fixed in the latest version of
warzone2100, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 889059@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Markus Koschany <apo@debian.org> (supplier of updated warzone2100 package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Sat, 24 Feb 2018 00:51:59 +0100
Source: warzone2100
Binary: warzone2100 warzone2100-data warzone2100-music
Architecture: source
Version: 3.2.1-3
Distribution: unstable
Urgency: medium
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Changed-By: Markus Koschany <apo@debian.org>
Description:
 warzone2100 - 3D real time strategy game
 warzone2100-data - data files for warzone2100
 warzone2100-music - official music for warzone2100
Closes: 889059
Changes:
 warzone2100 (3.2.1-3) unstable; urgency=medium
 .
   * Team upload.
   * Use compat level 11.
   * Declare compliance with Debian Policy 4.1.3.
   * Drop obsolete menu file and xpm icons. Remove imagemagick from B-D.
   * Fix build with miniupnpc API 16.
     Thanks to Peter Michael Green for the patch. (Closes: #889059)
Checksums-Sha1:
 4ab27347a2f90d5beeecce65bd4fc812666ec43d 2716 warzone2100_3.2.1-3.dsc
 2c83c089ef96f40c6ce620030ee2940128bc13f0 28812 warzone2100_3.2.1-3.debian.tar.xz
 cf1075643d2068667fbed6b0a4430a98eae77d4f 15789 warzone2100_3.2.1-3_amd64.buildinfo
Checksums-Sha256:
 fb1496e438b56168e3eda214a1b9835896a55452f6fb246a0bfbb4aa6c73091f 2716 warzone2100_3.2.1-3.dsc
 d91bb86b5af97c2c0950fd9a13c6293889ae13dda584baaf38f3113ae74b62f3 28812 warzone2100_3.2.1-3.debian.tar.xz
 bf385c8541c127f25d9394518129d8c95010b92ac0775515c87b0435b7ce7b1b 15789 warzone2100_3.2.1-3_amd64.buildinfo
Files:
 a341c870daf7b1d3f66eaecf658b9f2c 2716 games optional warzone2100_3.2.1-3.dsc
 da5e0f7c0d368b5a82fcfc5d1fba0c0e 28812 games optional warzone2100_3.2.1-3.debian.tar.xz
 818073f8dc36f94800ba504cecb554e2 15789 games optional warzone2100_3.2.1-3_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iQKjBAEBCgCNFiEErPPQiO8y7e9qGoNf2a0UuVE7UeQFAlqQrItfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEFD
RjNEMDg4RUYzMkVERUY2QTFBODM1RkQ5QUQxNEI5NTEzQjUxRTQPHGFwb0BkZWJp
YW4ub3JnAAoJENmtFLlRO1HkLqMQAJt7wYQ0e6zOBFSLY64BPA+pLxcb4vKUthKN
/Cwlick62NlCd/FHfAkoo71zYjMNj99CYat+Zrdna7OL06Lkg2q1g2QtxT93Uwo+
VOhaqr1r5VUliOHHl8MGTxhxeZpm4f5PeT0qx1wSIBkqFihsEGcGe4HvaGDJuRoU
/vqn0y+Sl4f/QxpcDZ7v2socfu1NGOX/PrI3538WB9nNqmSrGFwsi+BKOBMoaF1/
ZgdhXoXEd+vtuUqfIcFNJftjVknBzmaxrA4VrLojPxDq1qCJKNwrYGrtmhdVA6wI
OIHM65xDA4qX4PNoI11gqlZPiFGZF7DrZ13VetPwuKJiGXN0ipgemJbCWtOZ+ITT
dcZFJz0G7Ky1QCxfYMIe/PUzuvvGwZKJzwghb0ITSaSlSLeRIbvh8ImOl8mjNRn/
AHH90tSUJlcuArl026rprTilzCmcRfPrscBYSCa5CENcdCQpi1Vk4zKR5Jsg+Piz
tsDrzFujcJv9rN7Nc3z5i/nxKuqNUktqrCWyBUkhjb020kyQ/rjRXGGx89+PbJCY
cvmY68iIG+eUDlrmfE/W0HMzzrRL5pHv73sJ5h6dkRF5jJjSfg17PfX+O6rf9L3h
wPCos1luxBByy5ubE3zY4m1Loavi0V6CKamccWkvGrNacBE9hyVJO8XH/FveA+IH
LAf6dxYu
=bxxB
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Thu, 29 Mar 2018 07:28:21 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sun Jul 2 12:46:04 2023; Machine Name: buxtehude

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.