Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 833588 - games-engines/odamex-10.0.0: Version bump
Summary: games-engines/odamex-10.0.0: Version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-02-18 05:10 UTC by William Breathitt Gray
Modified: 2022-03-04 22:49 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description William Breathitt Gray 2022-02-18 05:10:41 UTC
Version 10.0.0 of odamex was released on February 14, 2022: https://github.com/odamex/odamex/releases/tag/10.0.0

Reproducible: Always
Comment 1 William Breathitt Gray 2022-02-18 06:06:10 UTC
I encountered the following error when trying to compile this new version:


/var/tmp/portage/games-engines/odamex-10.0.0/work/odamex-src-10.0.0/master/main.cpp:201:17: error: reference to ‘byte’ is ambiguous
  201 |                 byte playercount = net_message.ReadByte();


It looks like this will need a patch to fully qualify the 'byte' type.
Comment 2 William Breathitt Gray 2022-02-18 06:08:40 UTC
Odamex 10.0.0 also have a new client dependency on fltk, and a new client and server dependency on protobuf.
Comment 3 James Le Cuirot gentoo-dev 2022-02-19 20:54:17 UTC
Ugh. I tried to address the unbundling properly, including the existing miniupnpc library. It did not go well.

miniupnpc expects you to have the "miniupnpc" directory in your include directives, but the bundled version doesn't have that directory, making this awkward.

It relies on the protobuf CMake module, which we don't install because we build it with autotools instead. We can't even use just the bundled module because it's dynamically generated as part of the protobuf build. We should probably switch protobuf to CMake but it's not the most trivial of ebuilds.

CMake installs a FindFLTK module, which helps, but it still didn't work, because Odamex is relying on features from the unreleased "1.4" version. We have this in Portage, but only as a live ebuild.

As Vilhelm has commented upstream, jsoncpp 1.9 won't work. Only the older 0.11 release will, but we don't have that in the tree.

I might look again at miniupnpc, but I don't have the energy for the rest.
Comment 4 James Le Cuirot gentoo-dev 2022-02-19 20:56:11 UTC
The maintainer has said that he no longer wishes to maintain this. We'll just absorb it into games, assuming someone else doesn't step up.
Comment 5 James Le Cuirot gentoo-dev 2022-02-27 14:50:44 UTC
Lots of good news.

I worked through the miniupnpc issue and got a new unbundling patch merged upstream. 🥳

I found that Odamex only uses the unreleased scaling features from FLTK, and these can easily be checked for and skipped if necessary. I have filed another pull request upstream.

The code requires no changes to work with JsonCpp 1.9 aside from building with C++11 instead of C++98. I have asked upstream to consider this.

protobuf is dropping their Autotools build system soon and we will be switching to CMake as soon as issues with it are addressed.
Comment 6 Larry the Git Cow gentoo-dev 2022-03-04 22:49:50 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=644f1b4a501fc9d3c8767023e6a2bebcae0f145c

commit 644f1b4a501fc9d3c8767023e6a2bebcae0f145c
Author:     James Le Cuirot <chewi@gentoo.org>
AuthorDate: 2022-03-04 22:49:27 +0000
Commit:     James Le Cuirot <chewi@gentoo.org>
CommitDate: 2022-03-04 22:49:27 +0000

    games-engines/odamex: Version bump to 10.0.0, unbundling patches
    
    Closes: https://bugs.gentoo.org/833588
    Signed-off-by: James Le Cuirot <chewi@gentoo.org>

 games-engines/odamex/Manifest                      |   1 +
 .../odamex/files/odamex-10.0.0-unbundle-fltk.patch | 105 +++++++++++++++++++++
 .../files/odamex-10.0.0-unbundle-jsoncpp.patch     |  85 +++++++++++++++++
 .../files/odamex-10.0.0-unbundle-miniupnpc.patch   |  96 +++++++++++++++++++
 games-engines/odamex/metadata.xml                  |   3 +-
 games-engines/odamex/odamex-10.0.0.ebuild          |  90 ++++++++++++++++++
 6 files changed, 379 insertions(+), 1 deletion(-)