Bug 273678 - emulators/libretro-bsnes: Fails to build with GCC 13: error: 'runtime_error' is not a member of 'std'
Summary: emulators/libretro-bsnes: Fails to build with GCC 13: error: 'runtime_error' ...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Lorenzo Salvadore
URL:
Keywords:
Depends on:
Blocks: 273397
  Show dependency treegraph
 
Reported: 2023-09-10 07:27 UTC by Lorenzo Salvadore
Modified: 2023-12-14 21:36 UTC (History)
1 user (show)

See Also:
beyert: maintainer-feedback+


Attachments
0001-emulators-libretro-bsnes-Update-to-v115.a.20231101.patch (2.02 KB, text/plain)
2023-12-09 09:51 UTC, Lorenzo Salvadore
salvadore: maintainer-approval? (beyert)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Lorenzo Salvadore freebsd_committer freebsd_triage 2023-09-10 07:27:20 UTC
This bug report blocks the update of GCC_DEFAULT to 13. This webpage can help finding ta fix: https://gcc.gnu.org/gcc-13/porting_to.html

./nall/arithmetic/natural.hpp:239:23: error: 'runtime_error' is not a member of 'std'
  239 |   if(!rhs) throw std::runtime_error("division by zero");
      |                       ^~~~~~~~~~~~~
./nall/arithmetic/natural.hpp:1:1: note: 'std::runtime_error' is defined in header '<stdexcept>'; did you forget to '#include <stdexcept>'?
  +++ |+#include <stdexcept>
    1 | #define ConcatenateType(Size) uint##Size##_t
./nall/string/eval/evaluator.hpp: In function 'int64_t nall::Eval::evaluateInteger(Node*)':
./nall/string/eval/evaluator.hpp:43:9: warning: enumeration value 'Null' not handled in switch [-Wswitch]
   43 |   switch(node->type) {
      |         ^

Full log: https://pkg-status.freebsd.org/package18/data/124amd64-default-foo/2023-09-06_17h55m19s/logs/errors/libretro-bsnes-20211218_1.log

This bug looks similar to bug #273677.
Comment 1 Timothy Beyer 2023-09-11 02:19:17 UTC
Thanks for the report, I will get some poudriere builds going, or also see if updating to a newer version addresses GCC 13 support.  AFAIK, this emulator didn't consistently build on LLVM/Clang over the course of the past couple years, but I'll try their recommendations on porting to GCC 13 to see if that fixes the build.
Comment 3 commit-hook freebsd_committer freebsd_triage 2023-12-06 15:02:02 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=597ca5a01e3893880470afdd10a9cc4a0cdaa93a

commit 597ca5a01e3893880470afdd10a9cc4a0cdaa93a
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2023-11-18 12:02:56 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2023-12-06 15:01:49 +0000

    emulators/higan: Update to v110

    Moreover,

    - Switch to USE_GITHUB, since the sources are now available only there.
    - Replace WWW with the GitHub repository link, since the site in WWW
      does not exist anymore.
    - Change default sound option from OSS to OPENAL: OSS does not work.
    - Do not require GCC anymore.

    PR:             273678
    Approved by:    Naram Qashat <cyberbotx@cyberbotx.com> (maintainer)

 emulators/higan/Makefile                           | 40 ++++++++++------------
 emulators/higan/distinfo                           |  6 ++--
 .../higan/files/patch-higan_GNUmakefile (gone)     | 10 ------
 .../patch-higan_target-tomoko_GNUmakefile (gone)   | 15 --------
 ...get-tomoko_presentation_presentation.cpp (gone) | 11 ------
 ...h-higan_target-tomoko_program_medium.cpp (gone) | 11 ------
 .../patch-higan_target-tomoko_tomoko.cpp (gone)    | 23 -------------
 .../patch-higan_target-tomoko_tomoko.hpp (gone)    |  8 -----
 ...n_target-tomoko_tools_cheat-database.cpp (gone) | 11 ------
 .../higan/files/patch-icarus_core_core.cpp (gone)  | 35 -------------------
 .../higan/files/patch-icarus_icarus.cpp (gone)     | 23 -------------
 emulators/higan/pkg-plist                          | 35 ++++++++++---------
 12 files changed, 41 insertions(+), 187 deletions(-)
Comment 4 Lorenzo Salvadore freebsd_committer freebsd_triage 2023-12-06 15:22:46 UTC
(In reply to commit-hook from comment #3)

I mistyped the PR number and this commit has little to do with this PR. Sorry.
Comment 5 Lorenzo Salvadore freebsd_committer freebsd_triage 2023-12-09 09:51:08 UTC
Created attachment 246927 [details]
0001-emulators-libretro-bsnes-Update-to-v115.a.20231101.patch
Comment 6 Lorenzo Salvadore freebsd_committer freebsd_triage 2023-12-09 09:53:53 UTC
Comment on attachment 246927 [details]
0001-emulators-libretro-bsnes-Update-to-v115.a.20231101.patch

This patch fixes the issue and even removes the dependency on GCC.

Timothy: Do you approve as maintainer?
Comment 7 Timothy Beyer 2023-12-10 02:07:47 UTC
(In reply to Lorenzo Salvadore from comment #6)
Yes, I strongly approve of such a patch, I'm sorry I didn't do the upgrade sooner, as I suspected that I could get rid of the GCC dependency with it, but thank you for the patch and I approve.
Comment 8 commit-hook freebsd_committer freebsd_triage 2023-12-10 10:57:22 UTC
A commit in branch main references this bug:

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

commit da0deb2481b0bd75e4fce25be43f8f2fa6064b20
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2023-12-09 12:06:43 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2023-12-10 10:57:09 +0000

    emulators/emulationstation: Update to v2.11.2

    Changes:
    https://github.com/RetroPie/EmulationStation/compare/v2.9.4...v2.11.2

    PR:             273678
    Approved by:    Timothy Beyer <beyert@cs.ucr.edu> (maintainer)

 emulators/emulationstation/Makefile | 3 +--
 emulators/emulationstation/distinfo | 6 +++---
 2 files changed, 4 insertions(+), 5 deletions(-)
Comment 9 Lorenzo Salvadore freebsd_committer freebsd_triage 2023-12-10 11:00:30 UTC
Committed, thanks Timothy.
Comment 10 commit-hook freebsd_committer freebsd_triage 2023-12-10 11:21:26 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6cc273791f4566897fc6716c5dad17eee63aacff

commit 6cc273791f4566897fc6716c5dad17eee63aacff
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2023-12-10 11:17:29 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2023-12-10 11:20:49 +0000

    emulators/emulationstation: Revert last commit

    This reverts commit da0deb2481b0bd75e4fce25be43f8f2fa6064b20.

    I messed up with two different commits. This was not the commit approved
    by Timothy and needs more testing.

    PR: 273678

 emulators/emulationstation/Makefile | 3 ++-
 emulators/emulationstation/distinfo | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)
Comment 11 commit-hook freebsd_committer freebsd_triage 2023-12-10 11:21:27 UTC
A commit in branch main references this bug:

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

commit e09a7da253df4de0fad5d5547f37a00b5b5679f4
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2023-12-06 15:45:15 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2023-12-10 11:21:09 +0000

    emulators/libretro-bsnes: Update to v115.a.20231101

    Also remove dependency on GCC ports: this makes it easier to update
    GCC_DEFAULT. Moreover, the port now builds with lang/gcc13.

    Set PORTEPOCH to use a version scheme more consistent with
    https://docs.freebsd.org/en/books/porters-handbook/book/#makefile-master_sites-github

    PR:             273678
    Approved by:    Timothy Beyer <beyert@cs.ucr.edu>

 emulators/libretro-bsnes/Makefile | 12 ++++++------
 emulators/libretro-bsnes/distinfo |  6 +++---
 2 files changed, 9 insertions(+), 9 deletions(-)
Comment 12 commit-hook freebsd_committer freebsd_triage 2023-12-14 21:36:42 UTC
A commit in branch main references this bug:

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

commit f60288f8df26391a6d107ddbc11b6590dfa0ee00
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2023-12-14 21:28:25 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2023-12-14 21:34:44 +0000

    emulators/libretro-bsnes: Remove dependency on GCC

    This time for real: the precedent commit on this port introduced
     USE_GCC=13 by mistake.

    PR:             273678
    Reported by:    gerald

 emulators/libretro-bsnes/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)