Bug 252362

Summary: emulators/mame: upgrade to 0.249
Product: Ports & Packages Reporter: Stéphane D'Alu <sdalu>
Component: Individual Port(s)Assignee: Li-Wen Hsu <lwhsu>
Status: Closed FIXED    
Severity: Affects Only Me CC: agh, james.wright, lwhsu
Priority: --- Flags: bugzilla: maintainer-feedback? (manu)
Version: Latest   
Hardware: Any   
OS: Any   
URL: https://www.mamedev.org/releases/whatsnew_0246.txt
Bug Depends on: 264151    
Bug Blocks: 264167    
Attachments:
Description Flags
mame patch
none
mess patch
none
mame patch
none
mess patch
none
mame patch
none
mess patch
none
mame 0.231 patch
none
mess 0.231 patch
none
Diff to 0.243
none
MAME and MESS patch to 0.243
none
mame-0.243.patch
none
mess-0.243.patch
none
mame-0.243.patch
none
mame-0.243.patch
none
mame-0.243.patch
none
mess-0.243.patch
none
mame-0.243.patch
none
mess-0.243.patch
none
mame-0.243.patch
none
mame-0.244.patch
none
mess-0.244.patch
none
mame-0.245.patch
none
mame-0.245.patch
none
mess-0.245.patch
none
mame-0.245.patch
none
mess-0.245.patch
none
mame-0.245.patch
none
mame-0.245-no-sphinx-docs.patch
none
mess-0.246.patch
none
mame-0.246.patch
none
mame-0.246.no-sphinx-build-docs.patch
none
mame-0.246.patch
none
mame-0.248.patch
none
mess-0.248.patch
none
mame-0.249.patch
none
mess-0.249.patch
none
mame-0.249.patch
none
mame-0.249.patch
none
mame-0.249.patch none

Description Stéphane D'Alu 2021-01-02 22:28:57 UTC
Created attachment 221216 [details]
mame patch

Upgrading mame/mess to latest release: 0.227
Comment 1 Stéphane D'Alu 2021-01-02 22:29:26 UTC
Created attachment 221217 [details]
mess patch
Comment 2 Stéphane D'Alu 2021-04-09 21:29:14 UTC
Created attachment 223956 [details]
mame patch
Comment 3 Stéphane D'Alu 2021-04-09 21:29:37 UTC
Created attachment 223957 [details]
mess patch
Comment 4 Stéphane D'Alu 2021-04-09 21:31:23 UTC
Created attachment 223958 [details]
mame patch
Comment 5 Stéphane D'Alu 2021-04-09 21:31:46 UTC
Created attachment 223959 [details]
mess patch
Comment 6 James Wright 2021-05-01 19:53:13 UTC
Just a heads up that 0.231 was released a few days ago (28 Apr), any plans to update the patch?
Comment 7 Stéphane D'Alu 2021-05-03 15:07:32 UTC
Created attachment 224632 [details]
mame 0.231 patch
Comment 8 Stéphane D'Alu 2021-05-03 15:07:58 UTC
Created attachment 224633 [details]
mess 0.231 patch
Comment 9 Alastair Hogge 2022-05-02 12:36:32 UTC
Created attachment 233653 [details]
Diff to 0.243

Hello all,

I have attempted to update MAME to 0.243, however, because MAME takes so long to build, I have not yet play tested it, and am currently waiting on the build to finish.

# poudriere testport passed:
[...]
===========================================================================
=>> Checking for filesystem violations... done
=======================<phase: run-depends    >============================
===== env: DEVELOPER_MODE=yes USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0
===>   mame-0.243 depends on package: liberation-fonts-ttf>=0 - not found
===>   Installing existing package /packages/All/liberation-fonts-ttf-2.1.5,2.pkg
[pkg.direwolf.home.arpa.] Installing liberation-fonts-ttf-2.1.5,2...
[pkg.direwolf.home.arpa.] Extracting liberation-fonts-ttf-2.1.5,2: .......... done
=====
Message from liberation-fonts-ttf-2.1.5,2:

--
You can start using the fonts by following these instructions:

Add the following line to the "Files" section of your x.org configuration file:

        FontPath "/usr/local/share/fonts/Liberation/"
===>   mame-0.243 depends on package: liberation-fonts-ttf>=0 - found
===>   Returning to build of mame-0.243
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/x11.pc - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/xext.pc - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/xi.pc - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/xinerama.pc - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/xrender.pc - found
===>   mame-0.243 depends on package: qt5-buildtools>=5.15.2 - found
===========================================================================
=>> Recording filesystem state for prestage... done
=======================<phase: stage          >============================
===== env: DEVELOPER_MODE=yes STRICT_DEPENDS=yes USER=root UID=0 GID=0
===>  Staging for mame-0.243
===>   mame-0.243 depends on package: liberation-fonts-ttf>=0 - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/x11.pc - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/xext.pc - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/xi.pc - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/xinerama.pc - found
===>   mame-0.243 depends on file: /usr/local/libdata/pkgconfig/xrender.pc - found
===>   mame-0.243 depends on package: qt5-buildtools>=5.15.2 - found
===>   Generating temporary packing list
install  -s -m 555 /wrkdirs/usr/ports/emulators/mame/work/mame-mame0243/mame /wrkdirs/usr/ports/emulators/mame/work/stage/usr/local/bin
(cd /wrkdirs/usr/ports/emulators/mame/work/mame-mame0243 &&  install  -s -m 555 chdman jedutil ldresample ldverify  romcmp unidasm  /wrkdirs/usr/ports/emulators/mame/work/stag
e/usr/local/libexec/mame)
(cd /wrkdirs/usr/ports/emulators/mame/work/mame-mame0243 && /bin/sh -c '(/usr/bin/find -Ed $1 $3 | /usr/bin/cpio -dumpl $2 >/dev/null 2>&1) &&  /usr/bin/find -Ed $1 $3 \(   -t
ype d -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 755 "$@"'\'' . {} +  -o -type f -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 0644 "$@"'\'' . {} + \)' COPYTREE_SHARE artwork /
wrkdirs/usr/ports/emulators/mame/work/stage/usr/local/share/mame)
(cd /wrkdirs/usr/ports/emulators/mame/work/mame-mame0243 && /bin/sh -c '(/usr/bin/find -Ed $1 $3 | /usr/bin/cpio -dumpl $2 >/dev/null 2>&1) &&  /usr/bin/find -Ed $1 $3 \(   -t
ype d -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 755 "$@"'\'' . {} +  -o -type f -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 0644 "$@"'\'' . {} + \)' COPYTREE_SHARE hash /wrk
dirs/usr/ports/emulators/mame/work/stage/usr/local/share/mame)
(cd /wrkdirs/usr/ports/emulators/mame/work/mame-mame0243 && /bin/sh -c '(/usr/bin/find -Ed $1 $3 | /usr/bin/cpio -dumpl $2 >/dev/null 2>&1) &&  /usr/bin/find -Ed $1 $3 \(   -t
ype d -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 755 "$@"'\'' . {} +  -o -type f -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 0644 "$@"'\'' . {} + \)' COPYTREE_SHARE docs /wrk
dirs/usr/ports/emulators/mame/work/stage/usr/local/share/doc/mame)
install  -m 0644 /wrkdirs/usr/ports/emulators/mame/work/target.ini  /wrkdirs/usr/ports/emulators/mame/work/stage/usr/local/share/examples/mame/mame.ini
====> Compressing man pages (compress-man)
===========================================================================
====> Running Q/A tests (stage-qa)
Warning: Possible REINPLACE_CMD issues:
- - REINPLACE_CMD ran, but did not modify file contents: scripts/genie.lua
====> Checking for pkg-plist issues (check-plist)
===> Parsing plist
===> Checking for items in STAGEDIR missing from pkg-plist
===> Checking for items in pkg-plist which are not in STAGEDIR
===> No pkg-plist issues found (check-plist)
=>> Checking for staging violations... done
=======================<phase: package        >============================
===== env: DEVELOPER_MODE=yes PACKAGES=/tmp/pkgs PKGREPOSITORY=/tmp/pkgs PKGLATESTREPOSITORY=/tmp/pkgs/Latest 'PKG_NOTES=build_timestamp built_by' 'PKG_NOTE_build_timestamp=20
22-05-02T07:51:13+0000' 'PKG_NOTE_built_by=poudriere-git-3.3.99.20211130' STRICT_DEPENDS=yes USER=root UID=0 GID=0
===>  Building package for mame-0.243
install -l rs /tmp/pkgs/mame-0.243.pkg /tmp/pkgs/mame-0.243.txz
===========================================================================
=>> Recording filesystem state for preinst... done
=======================<phase: install        >============================
===== env: DEVELOPER_MODE=yes STRICT_DEPENDS=yes USER=root UID=0 GID=0
===>  Installing for mame-0.243
===>  Checking if mame is already installed
===>   Registering installation for mame-0.243
[pkg.direwolf.home.arpa.] Installing mame-0.243...
An example configuration file has been installed in
"/usr/local/share/examples/mame/mame.ini"
Should you create a "~/.mame" directory and place it here or
launch "mame -createconfig" and place the mame.ini created instead.

===> SECURITY REPORT:
      This port has installed the following files which may act as network
      servers and may therefore pose a remote security risk to the system.
/usr/local/bin/mame
/usr/local/libexec/mame/unidasm
/usr/local/libexec/mame/ldresample
/usr/local/libexec/mame/ldverify
/usr/local/libexec/mame/romcmp
/usr/local/libexec/mame/chdman

      If there are vulnerabilities in these programs there may be a security
      risk to the system. FreeBSD makes no guarantee about the security of
      ports included in the Ports Collection. Please type 'make deinstall'
      to deinstall the port if this is a concern.

      For more information, and contact details about the security
      status of this software, see the following webpage:
http://mamedev.org/
===========================================================================
=>> Checking shared library dependencies
 0x0000000000000001 NEEDED               Shared library: [libGL.so.1]
 0x0000000000000001 NEEDED               Shared library: [libQt5Core.so.5]
 0x0000000000000001 NEEDED               Shared library: [libQt5Gui.so.5]
 0x0000000000000001 NEEDED               Shared library: [libQt5Widgets.so.5]
 0x0000000000000001 NEEDED               Shared library: [libSDL2-2.0.so.0]
 0x0000000000000001 NEEDED               Shared library: [libSDL2_ttf-2.0.so.0]
 0x0000000000000001 NEEDED               Shared library: [libX11.so.6]
 0x0000000000000001 NEEDED               Shared library: [libXext.so.6]
 0x0000000000000001 NEEDED               Shared library: [libXi.so.6]
 0x0000000000000001 NEEDED               Shared library: [libXinerama.so.1]
 0x0000000000000001 NEEDED               Shared library: [libc++.so.1]
 0x0000000000000001 NEEDED               Shared library: [libc.so.7]
 0x0000000000000001 NEEDED               Shared library: [libcxxrt.so.1]
 0x0000000000000001 NEEDED               Shared library: [libfontconfig.so.1]
 0x0000000000000001 NEEDED               Shared library: [libfreetype.so.6]
 0x0000000000000001 NEEDED               Shared library: [libgcc_s.so.1]
 0x0000000000000001 NEEDED               Shared library: [libm.so.5]
 0x0000000000000001 NEEDED               Shared library: [libpugixml.so.1]
 0x0000000000000001 NEEDED               Shared library: [libthr.so.3]
 0x0000000000000001 NEEDED               Shared library: [libutil.so.9]
=======================<phase: deinstall      >============================
===== env: DEVELOPER_MODE=yes STRICT_DEPENDS=yes USER=root UID=0 GID=0
===>  Deinstalling for mame
===>   Deinstalling mame-0.243
Updating database digests format: .......... done
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        mame: 0.243

Number of packages to be removed: 1

The operation will free 342 MiB.
[pkg.direwolf.home.arpa.] [1/1] Deinstalling mame-0.243...
[pkg.direwolf.home.arpa.] [1/1] Deleting files for mame-0.243: .......... done
===========================================================================
=>> Checking for extra files and directories
[02:51:36] Installing from package
[pkg.direwolf.home.arpa.] Installing mame-0.243...
[pkg.direwolf.home.arpa.] Extracting mame-0.243: .......... done
=====
Message from mame-0.243:

--
An example configuration file has been installed in
"/usr/local/share/examples/mame/mame.ini"
Should you create a "~/.mame" directory and place it here or
launch "mame -createconfig" and place the mame.ini created instead.
[02:51:40] Cleaning up
===>  Cleaning for mame-0.243
[02:51:40] Deinstalling package
Updating database digests format: . done
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        mame: 0.243

Number of packages to be removed: 1

The operation will free 342 MiB.
[pkg.direwolf.home.arpa.] [1/1] Deinstalling mame-0.243...
[pkg.direwolf.home.arpa.] [1/1] Deleting files for mame-0.243: .......... done
build of emulators/mame | mame-0.243 ended at Mon May  2 10:19:13 UTC 2022
build time: 02:28:00
[02:51:40] Logs: /net/fafnir/poudriere/data/logs/bulk/direwolf-head-direwolf/2022-05-02_07h27m33s
[02:51:41] Cleaning up
[02:51:41] Unmounting file systems

Two things about the diff:
• I had to add "BINARY_ALIAS=python3=${PYTHON_CMD}" to the Makefile, because the MAME devices/cpu generation stage was failing. I am not sure if this correct, or needed.
• I removed "define NO_AFFINITY_NP 1" from src/osd/sdl/sdlprefix.h as FreeBSD as supported CPU affinity in POSIX thread since FreeBSD-7.2 (https://www.freebsd.org/cgi/man.cgi?query=pthread_affinity_np&apropos=0&sektion=0&manpath=FreeBSD+14.0-current&arch=default&format=html). This could be incorrect too.
Comment 10 Alastair Hogge 2022-05-05 05:19:55 UTC
Created attachment 233733 [details]
MAME and MESS patch to 0.243

Updated patch Based on Stéphane D'Alu work.
Comment 11 Alastair Hogge 2022-05-06 12:42:37 UTC
Created attachment 233766 [details]
mame-0.243.patch

Fix pkg-plist and include patch from bug#257253.

Tested with Neo Geo.
Comment 12 Alastair Hogge 2022-05-06 12:42:58 UTC
Created attachment 233767 [details]
mess-0.243.patch
Comment 13 Alastair Hogge 2022-05-06 12:46:12 UTC
Created attachment 233768 [details]
mame-0.243.patch

Remove customisation left in Makefile.
Comment 14 Alastair Hogge 2022-05-10 06:39:03 UTC
Created attachment 233830 [details]
mame-0.243.patch

Update pkg-descr and pkg-message.in
Comment 15 Stéphane D'Alu 2022-05-10 08:12:57 UTC
Thanks for updating the patch, now let's hope that someone manage to commit it.
Comment 16 Alastair Hogge 2022-05-10 11:20:31 UTC
I have had much success with parallel building of MAME. Parallel builds drop a single threaded build of ≆3 hours to 9 minutes on an AMD Ryzen 9 3950X.

Some areas of post-patch could probably be trimmed to.
Comment 17 Alastair Hogge 2022-05-22 11:59:21 UTC
Created attachment 234114 [details]
mame-0.243.patch

• Sync with main
• Build MAME documentation and install that, instead of source
• Use DOCS framework
• Refactor do-install and post-install targets
• MAME docs now requires bug #264151 to build
Comment 18 Alastair Hogge 2022-05-22 12:02:25 UTC
Created attachment 234115 [details]
mess-0.243.patch

Follow mame patch update.
• Update pkg-descr and point to new MESS home
• MAME now handles all binaries except mess
Comment 19 Alastair Hogge 2022-05-22 12:08:48 UTC
I also updated the example .ini configuration, and the port now installs more resources/data.
Comment 20 Alastair Hogge 2022-05-22 15:13:11 UTC
Created attachment 234119 [details]
mame-0.243.patch
Comment 21 Alastair Hogge 2022-05-22 15:13:37 UTC
Created attachment 234120 [details]
mess-0.243.patch
Comment 22 Alastair Hogge 2022-05-23 02:36:00 UTC
Created attachment 234130 [details]
mame-0.243.patch
Comment 23 Alastair Hogge 2022-05-28 11:57:35 UTC
Created attachment 234289 [details]
mame-0.244.patch

Update to 0.244:
https://www.mamedev.org/releases/whatsnew_0244.txt
Comment 24 Alastair Hogge 2022-05-28 11:58:11 UTC
Created attachment 234290 [details]
mess-0.244.patch

Update to 0.244
Comment 25 Stéphane D'Alu 2022-07-19 12:51:56 UTC
I didn't manage to build with your patch. Can you check that the one you posted is the one you are using?
Comment 26 Alastair Hogge 2022-07-20 08:24:40 UTC
(In reply to Stéphane D'Alu from comment #25)

Built fine last time I tried at ports r594faf8b02f99d6d0a2cc898624fd39a3b21f9c9.
I am working on an update for 0.245, which I plan to have complete by the weekend.

What is the output from the build?
Comment 27 Stéphane D'Alu 2022-07-20 12:59:54 UTC
patch not applying correctly, I think it is due to previous patch being removed and not taken into account by git diff.

also (when removing theses patches), packaging failed due to missing *.1 man pages (I was building without doc)
Comment 28 Alastair Hogge 2022-07-23 09:37:19 UTC
Yeah I have stuffed that patch. Sorry about that.

I am waiting on the build to finish for the 0.245 patch. Will update later.
Comment 29 Alastair Hogge 2022-07-24 01:27:43 UTC
Created attachment 235445 [details]
mame-0.245.patch

Update to 0.245 (https://www.mamedev.org/?p=514)


bug #264151 is required for building MAME(1), I had incorrectly moved the man page build/install with the rest of the documentation; fixed. 

Waiting on poudriere testport.
Comment 30 Alastair Hogge 2022-07-24 11:44:28 UTC
Created attachment 235455 [details]
mame-0.245.patch

Update to 0.245
Comment 31 Alastair Hogge 2022-07-24 11:44:53 UTC
Created attachment 235456 [details]
mess-0.245.patch

Update to mess-0.245.patch
Comment 32 Alastair Hogge 2022-07-24 11:45:55 UTC
Stéphane, could you please fill the URL field of the bug report with https://www.mamedev.org/releases/whatsnew_0245.txt, thanks
Comment 33 Alastair Hogge 2022-07-24 12:51:22 UTC
ta very much
Comment 34 Stéphane D'Alu 2022-07-26 06:47:32 UTC
Can you make the build dependency py-sphinxcontrib-svg2pdfconverter only required if needed: HTMLDOCS ?
Comment 35 Alastair Hogge 2022-07-26 11:45:18 UTC
(In reply to Stéphane D'Alu from comment #34)
> Can you make the build dependency py-sphinxcontrib-svg2pdfconverter only required if needed: HTMLDOCS ?

We could, but it is my understanding that manual pages are mandatory installation components. MAME.1 is part of the Sphinx build (unfortunate at the moment), and the mame port has neglected the entire Sphinx generated documentation, for how long, I do not know.

It is not the build dependency that is holding this up. Manu has sat on this bug for over a year now, that absence has been fortuitous, we have now discovered that the MAME project provides richer and extra documentation, as well as a manual page tied to that documentation system.

OpenBSD is gaining momentum as a gaming machine, this is obviously a great thing, FreeBSD has that reputation too. I think it is frustrating that mame is not an option to the average gamer exploring FreeBSD, however, I do not think that justifies ignoring the great efforts of the MAME team to provide a manual in the first place, man pages are rare, we should support projects that provide them by installing them.

The situation is disheartening to say the least.

Loads of gamers are now exploring systems other than Microsoft, Linux gamers are exploring BSDs. Manu is appears to be heavily tied up with DRM (this enables more gaming of course) and other base related components. Perhaps the line of inquiry should be, how can we assist Manu, or, is there someone else with a commit bit that can assist us?
Comment 36 Alastair Hogge 2022-07-26 11:47:07 UTC
I have two more tests to run. Both mame and mess pass poudriere testport with all options enabled, I am now running poudriere testport with those options disabled. If the tests complete with passes, I have new patches to upload, however, they do not separate the MAME.1 manual from the Sphinx build.
Comment 37 Alastair Hogge 2022-07-26 22:31:45 UTC
Created attachment 235499 [details]
mame-0.245.patch

mame-0.245.patch
Tested with "poudriere testport"
Comment 38 Alastair Hogge 2022-07-27 10:21:58 UTC
Created attachment 235504 [details]
mess-0.245.patch

mess-0.245.patch
Tested with "poudriere testport"
Comment 39 Alastair Hogge 2022-07-28 11:19:15 UTC
Created attachment 235523 [details]
mame-0.245.patch

Fix DOCS_DESC
Comment 40 Alastair Hogge 2022-07-28 12:15:32 UTC
Created attachment 235526 [details]
mame-0.245-no-sphinx-docs.patch

Modified mame-0.245.patch that disables the Sphinx generated man page an, html documentation. Hopefully this makes MAME on FreeBSD more accessible to interested testers.
Comment 41 Alastair Hogge 2022-08-03 02:17:31 UTC
Created attachment 235644 [details]
mess-0.246.patch

Update to 0.246
https://www.mamedev.org/releases/whatsnew_0246.txt
Comment 42 Alastair Hogge 2022-08-03 02:18:00 UTC
Created attachment 235645 [details]
mame-0.246.patch

Update to 0.246
https://www.mamedev.org/releases/whatsnew_0246.txt
Comment 43 Alastair Hogge 2022-08-03 02:18:29 UTC
Created attachment 235646 [details]
mame-0.246.no-sphinx-build-docs.patch
Comment 44 Alastair Hogge 2022-08-27 13:23:19 UTC
Created attachment 236147 [details]
mame-0.246.patch

∙ Restore files/patch-src_osd_eigccx86.h
∙ Format Makefile with ports-mgmt/portfmt
Comment 45 Li-Wen Hsu freebsd_committer freebsd_triage 2022-10-24 08:21:40 UTC
(In reply to Alastair Hogge from comment #44)
Can you help rebase the patch to the latest ports main branch? I tried to apply the patch manually but it is too complex and I am afraid that I would break it.
Comment 46 Alastair Hogge 2022-10-25 08:00:04 UTC
(In reply to Li-Wen Hsu from comment #45)
Hi Li-Wen,

I have patch for 0.248 that has passed the usual testing, however, I am still waiting on poudriere-testport to complete; this process takes longer, because MAME has to be built single threaded inside poudriere. MESS will have to go thru the same process.

I will upload patches and my best effort to explain the changes in the port's Makefile and files/ hierarchy, tomorrow if all goes well.

Sorry for the delay, and thanks for supporting the MAME community on FreeBSD.
Comment 47 Alastair Hogge 2022-10-26 14:43:10 UTC
Created attachment 237653 [details]
mame-0.248.patch

Update to mame-0.248

https://www.mamedev.org/releases/whatsnew_0248.txt
Comment 48 Alastair Hogge 2022-10-26 14:43:51 UTC
Created attachment 237654 [details]
mess-0.248.patch

Update to mess-0.248
Comment 49 Alastair Hogge 2022-10-27 12:25:29 UTC
Hello,

This is an attempt to explain the churn in the diffs to 0.248.

Stéphane D'Alu:
* Remove the "64" suffix from the produced binary
* Reduce 64, and bit endian coding from files/patch-makefile
* Reduce C per-processor x86 magic in files/patch-src_osd_eigccx86.h
Alastair Hogge:
* Run port/Makefile thru portfmt(1) and portlint(1); some variables have been alphabetically sorted
* Populate Makefile with more open-source licenses covering/used in MAME
* Build Sphinx documentation; the manual page is separated from the HTML documentation thru the DOCS OPTION
* Replace SHEBANG_FILES fixes with BINARY_ALIAS= (python)
* Explicitly list paths for PORTDOCS
* Add port specific descriptions for all OPTIONS
* Alphabetically sort Makefile targets
* Add/make use of more specific Makefile targets
* Clean up post-patch target to only search and replace terms that currently exist in target files
* Remove two REINPLACE_CMD's that are now covered with BINARY_ALIAS
* files/patch-3rdparty_asio_include_asio_detail_config.hpp, files/patch-makefile, and files/patch-src_osd_eminline.h are fixed upstream
* FreeBSD supports POSIX CPU thread affinity, so enable it in files/patch-src_osd_sdl_sdlprefix.h instead of disabling it now.
* Update the included sample configuration in files/target.ini.in, also set the paths to more reasonable expectation on FreeBSD—use ${HOME} and /usr/local/share/${EMULATOR} for defaults


The x86 C per-processor magic in the various patches in files/ are now removed; MAME code is littered with this C rubbish, and the local patches in the tree was not covering all cases. I only test on amd64, and the MAME build system detects __amd64__ and complies fine. The binary runs (tested on some Neo-Geo and SEGA games), and reports the following:

Compiler defines B: __amd64__=1 __x86_64__=1 __unix__=1
Comment 50 Alastair Hogge 2022-10-27 13:09:14 UTC
* MESS is just a single binary now, the formally MESS related extra tools/commands are now installed with MAME.
* Updated the MESS homepage
Comment 51 Alastair Hogge 2022-10-27 23:54:28 UTC
MAME have released 0.249:
https://www.mamedev.org/releases/whatsnew_0249.txt
Comment 52 Alastair Hogge 2022-10-29 02:22:55 UTC
Created attachment 237699 [details]
mame-0.249.patch

Update to 0.249
Comment 53 Alastair Hogge 2022-10-29 02:23:36 UTC
Created attachment 237700 [details]
mess-0.249.patch

Update to 0.249
Comment 54 Alastair Hogge 2022-10-29 03:32:34 UTC
(In reply to Alastair Hogge from comment #52)
Oh I fucked up the 0.249 patch for mame, sorry; will upload correct patch later.
Comment 55 Alastair Hogge 2022-10-30 11:52:26 UTC
Created attachment 237720 [details]
mame-0.249.patch

Update to 0.249

Hello,

Sorry for the delay. The updated patch is still going thru a poudriere-testport run, however, I have run tested a successful build via the ports tree.
Comment 56 Li-Wen Hsu freebsd_committer freebsd_triage 2022-10-30 17:23:52 UTC
(In reply to Alastair Hogge from comment #55)
Talked to manu@ and he's fine with the patch and we think it's good to handover the maintainership. Alastair, do you want to help maintaining these ports? That will definitely improve the status and future updates.
Comment 57 Alastair Hogge 2022-10-30 23:30:54 UTC
Created attachment 237734 [details]
mame-0.249.patch

Update to 0.249 (passed poudriere-testport)
Comment 58 Alastair Hogge 2022-10-30 23:35:15 UTC
(In reply to Li-Wen Hsu from comment #56)
Hi Li-Wen and Manu,

Is this some kind of punishment for submitting patches? Nahhhh, I am joking. I would be happy to help, and thank you Manu for reading over the patch.
Comment 59 Alastair Hogge 2022-10-31 00:55:48 UTC
Created attachment 237739 [details]
mame-0.249.patch
Comment 60 commit-hook freebsd_committer freebsd_triage 2022-11-04 02:54:13 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5fb3b275a32501e1df45a08b034b94b8eb93b9a2

commit 5fb3b275a32501e1df45a08b034b94b8eb93b9a2
Author:     Alastair Hogge <agh@riseup.net>
AuthorDate: 2022-11-03 17:25:22 +0000
Commit:     Li-Wen Hsu <lwhsu@FreeBSD.org>
CommitDate: 2022-11-04 02:52:13 +0000

    emulators/{mame,mess}: Update to 0.249

    Release note: https://www.mamedev.org/releases/whatsnew_0249.txt

    Also transfer maintainership.

    PR:             252362
    Reported by:    Stéphane D'Alu <sdalu@sdalu.com> (initial patches)
    Approved by:    manu

 emulators/mame/Makefile                            |  187 ++-
 emulators/mame/distinfo                            |    6 +-
 ...arty_asio_include_asio_detail_config.hpp (gone) |   18 -
 emulators/mame/files/patch-makefile (gone)         |   81 -
 .../mame/files/patch-src_osd_eigccx86.h (gone)     |  110 --
 .../mame/files/patch-src_osd_eminline.h (gone)     |   11 -
 emulators/mame/files/patch-src_osd_sdl_sdlprefix.h |    9 +-
 emulators/mame/files/pkg-message.in                |    8 +-
 emulators/mame/files/target.ini.in                 |  304 ++--
 emulators/mame/pkg-descr                           |   11 +-
 emulators/mame/pkg-plist                           | 1674 +++++++++++++++++++-
 emulators/mess/Makefile                            |    4 +-
 emulators/mess/pkg-descr                           |   10 +-
 emulators/mess/pkg-plist                           | 1658 ++++++++++++++++++-
 14 files changed, 3583 insertions(+), 508 deletions(-)
Comment 61 Alastair Hogge 2022-11-04 03:15:11 UTC
Thanks.