Bug 205097 - emulators/mame: Update to 0.168
Summary: emulators/mame: Update to 0.168
Status: Closed Overcome By Events
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Walter Schwarzenfeld
URL:
Keywords: easy, needs-qa, patch
Depends on:
Blocks:
 
Reported: 2015-12-07 17:34 UTC by Paul Boehmer
Modified: 2018-03-19 14:12 UTC (History)
3 users (show)

See Also:


Attachments
svn diff (2.79 KB, patch)
2015-12-07 17:34 UTC, Paul Boehmer
koobs: maintainer-approval+
Details | Diff
svn diff to mame 0.173 (29.41 KB, patch)
2016-05-23 00:59 UTC, Steven Wilson
no flags Details | Diff
svn diff to mess 0.173 (5.86 KB, patch)
2016-05-23 01:00 UTC, Steven Wilson
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Boehmer 2015-12-07 17:34:54 UTC
Created attachment 163946 [details]
svn diff

Update emulators/mame to version 0.168

Corresponding port emulators/mess also updated via separate PR
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2015-12-08 04:04:58 UTC
Comment on attachment 163946 [details]
svn diff

Port is unmaintained, implicit approval
Comment 2 John Marino freebsd_committer freebsd_triage 2015-12-10 00:24:09 UTC
The slave port emulators/mess is not discussed. 

Do neither MAME or MESS have changes in pkg-plist?  If not, then this PR could updated both of them together.  (bug 205098 would be closed as invalid)
Comment 3 Paul Boehmer 2015-12-10 00:48:31 UTC
(In reply to John Marino from comment #2)

There are no changes to the either mame's or mess' plist file.
Comment 4 John Marino freebsd_committer freebsd_triage 2015-12-10 07:31:58 UTC
note that the patch reverts the UTC heading meaning it was not generated with makepatch or ports-mgmt/genpatch.

Whoever takes this PR is going to have to regenerate that patch if it's not updated beforehand.
Comment 5 Jason Unovitch freebsd_committer freebsd_triage 2015-12-19 01:52:13 UTC
Set open and hop on CC.  This patch doesn't pass QA.

===>  Applying FreeBSD patches for mame-0.168
No file to patch.  Skipping...
7 out of 7 hunks ignored--saving rejects to src/lib/netlist/plib/pparser.c.rej
=> Patch patch-src_lib_netlist_plib_pparser.c failed to apply cleanly.
Comment 6 Kubilay Kocak freebsd_committer freebsd_triage 2015-12-19 07:24:48 UTC
(In reply to Jason Unovitch from comment #5)

Once you Open, you bought it :)
Comment 7 Steven Wilson 2016-05-23 00:59:59 UTC
Created attachment 170559 [details]
svn diff to mame 0.173

I got a little restless, so I thought I'd try an update to the latest (0.173). This is my first contribution to ports, so please don't assume that I know what I'm doing.

I tested building with poudriere for FreeBSD 10.3 i386 and amd64. I tested actually running on FreeBSD 11-CURRENT amd64. I also tried to build for FreeBSD 9.3 with poudriere, but it failed (more info below). All testing was done against a recent head ports tree.


Outstanding issues:

- Build fails on FreeBSD 9.x with "../../../../../src/emu/emu.h:24:10: fatal error: 'unordered_map' file not found". At one point I found a mention of a similar problem on reviews.freebsd.org, but I lost the URL and haven't been able to find it again.

- Building MAME with the DEBUG option enabled fails at the final link phase with "../../../../freebsd/bin/x64/Debug/mame_mame/liboptional.a: could not read symbols: Malformed archive". I suspect that this is ld choking on the sheer number of symbols, as MESS does link successfully (after ld runs for several minutes and grows to ~6GB of rss), and /usr/bin/ar seems to be perfectly happy listing the symbols in the produced liboptional.a.

- There are numerous -Wcast-align warnings. Adding -Wno-cast-align to CXXFLAGS didn't suppress them; this might be LLVM bug 8476 (https://llvm.org/bugs/show_bug.cgi?id=8476).


Notable changes:

- Bump the compiler USES to c++14-lang. Upstream now depends on C++14.

- Respect ${CC} and ${CXX}. The current port has "cc" and "c++" hardcoded in a couple places. I think this change is needed to pick up a C++14 compiler to build on FreeBSD 10.x, but I made the change before testing there, so I'm not sure it's required. The upstream build scripts are pretty opinionated about compilers, so this might be brittle (but it probably was before, too).

- Add a dependency on devel/libuv. Upstream has a bundled libuv, but the build system doesn't link the bundled version properly for FreeBSD.

- Add a QTDEBUG option for MAME's Qt-based debugger (for debugging emulated programs). This makes the dependency on Qt optional.

- Qt dependency is now Qt5; upstream build scripts seem to want this, and it works.

- QTDEBUG adds -fPIC to CFLAGS. This is apparently a Qt5 ABI thing, and without -fPIC the build failed and complained specifically about this.

- Port is now BROKEN on FreeBSD 9.x (previously 8.x). See above note about build failure.

- Patch updates (remove a couple, add a couple, regenerate/fix the rest).

- pkg-plist changes (see other patch for emulators/mess).

- Add LICENSE=GPLv2+. Yes, MAME is now properly FOSS.
Comment 8 Steven Wilson 2016-05-23 01:00:47 UTC
Created attachment 170560 [details]
svn diff to mess 0.173
Comment 9 Steven Wilson 2016-05-28 03:27:24 UTC
0.174 is out now, but I'm getting exciting new compilation failures with

11-CURRENT clang: error: call to implicitly-deleted copy constructor of 'std::__1::unique_ptr<netlist::logic_family_desc_t, std::__1::default_delete<netlist::logic_family_desc_t> >' second(__p.second)

GCC 4.9: error: 'cbegin' is not a member of 'std'

GCC 5.3: segfault

I guess I'll sit this version out.
Comment 10 Jason Unovitch freebsd_committer freebsd_triage 2017-11-23 21:01:25 UTC
Pass back to pool. Pending updated/working patch.
Comment 11 Walter Schwarzenfeld freebsd_triage 2018-03-19 14:12:45 UTC
Close here in favour of the newer update to 0.195 bug #226687.