Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 891201 - games-emulation/jgemu - keywording request, x86, arm, arm64, ppc, ppc64
Summary: games-emulation/jgemu - keywording request, x86, arm, arm64, ppc, ppc64
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Keywording (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: orbea
URL:
Whiteboard:
Keywords: PullRequest
Depends on: 867001 914196
Blocks:
  Show dependency tree
 
Reported: 2023-01-17 16:05 UTC by orbea
Modified: 2024-04-29 08:46 UTC (History)
3 users (show)

See Also:
Package list:
dev-libs/miniz dev-libs/trio media-libs/jg games-emulation/jgrf games-emulation/bsnes-jg games-emulation/cega-jg games-emulation/gambatte-jg games-emulation/geolith-jg games-emulation/jollycv-jg games-emulation/mednafen-jg games-emulation/melonds-jg games-emulation/mgba-jg games-emulation/nestopia-jg games-emulation/prosystem-jg dev-util/rgbds games-emulation/sameboy-jg games-emulation/vecx-jg
Runtime testing required: Yes
nattka: sanity-check+


Attachments
preproc.txt (file_891201.txt,10.85 KB, text/plain)
2023-12-08 15:54 UTC, matoro
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description orbea 2023-01-17 16:05:55 UTC
Please add keywords for all applicable architectures for the games-emulation/jgemu metapackage and the included emulators. Upstream is explicitly interested in fixing portability issues where possible so please report issues to either gentoo or the jgemu gitlab organization.

The man page included with the games-emulation/jgrf frontend should have everything needed on how to run these emulators.
Comment 1 NATTkA bot gentoo-dev 2023-09-11 20:12:28 UTC Comment hidden (obsolete)
Comment 2 NATTkA bot gentoo-dev 2023-09-11 20:21:04 UTC
All sanity-check issues have been resolved
Comment 3 Roy Bamford gentoo-dev 2023-09-12 11:27:53 UTC
It all builds on ~arm64, even with USE=doc.
I don't have the controller for any run time testing.
Comment 4 orbea 2023-09-12 14:24:53 UTC
> THanks for testing!

> I don't have the controller for any run time testing.

You can assign the keyboard as a controller, the man page in the jgrf package should be rather comprehensive.
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-09-13 03:19:44 UTC
arm64 done
Comment 6 Arthur Zamarin archtester Gentoo Infrastructure gentoo-dev Security 2023-09-17 08:56:28 UTC
x86 done
Comment 7 Arthur Zamarin archtester Gentoo Infrastructure gentoo-dev Security 2023-12-02 09:23:10 UTC
ppc done
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-03 07:41:35 UTC
ppc64 done
Comment 9 matoro archtester 2023-12-07 16:22:16 UTC
On arm:

In file included from /var/tmp/portage/games-emulation/bsnes-jg-1.1.2/work/bsnes-1.1.2/src/processor/wdc65816.hpp:27,
                 from /var/tmp/portage/games-emulation/bsnes-jg-1.1.2/work/bsnes-1.1.2/src/cpu.hpp:26,
                 from /var/tmp/portage/games-emulation/bsnes-jg-1.1.2/work/bsnes-1.1.2/src/controller.cpp:22:
/var/tmp/portage/games-emulation/bsnes-jg-1.1.2/work/bsnes-1.1.2/src/processor/endian.hpp:27:4: error: #error "Endianness is unknown, update endian.h"
   27 |   #error "Endianness is unknown, update endian.h"
      |    ^~~~~


This appears to be because they are defining off __LITTLE_ENDIAN__.  There is a complaint from gcc that this is not consistent here:  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60490
Comment 10 orbea 2023-12-08 14:40:39 UTC
Would you mind telling me what arm device is this? Can I assume you are using little endian?
Comment 11 matoro archtester 2023-12-08 15:53:30 UTC
(In reply to orbea from comment #10)
> Would you mind telling me what arm device is this? Can I assume you are
> using little endian?

This is using a clean armv7a stage3 chroot on an arm64 device.  Yes, it's LE, but it doesn't define __LITTLE_ENDIAN__ for some reason.

It does define __BYTE_ORDER__ = __ORDER_LITTLE_ENDIAN__
Comment 12 matoro archtester 2023-12-08 15:54:21 UTC
Created attachment 878398 [details]
preproc.txt

This is the complete output of the following command:

gcc -dM -E - < /dev/null | sort
Comment 13 orbea 2023-12-10 00:52:00 UTC
Thanks for that info, I also found this useful reference.

https://sourceforge.net/p/predef/wiki/Endianness/

With that I updated the endian.hpp file in bsnes-jg usptream and backported the patch to Gentoo in a PR.

https://github.com/gentoo/gentoo/pull/34205

I'm sure it will fix your issue and perhaps some others too.
Comment 14 Larry the Git Cow gentoo-dev 2024-01-05 05:24:31 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65681f9674bb4393c8047f98fe43744632e97ac6

commit 65681f9674bb4393c8047f98fe43744632e97ac6
Author:     orbea <orbea@riseup.net>
AuthorDate: 2023-12-10 00:44:57 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-01-05 05:24:05 +0000

    games-emulation/bsnes-jg: fix arm endianness detection
    
    Reported in comment #9 in issue #891201.
    
    Bug: https://bugs.gentoo.org/891201
    Upstream-PR: https://gitlab.com/jgemu/bsnes/-/merge_requests/371
    Upstream-Commit: https://gitlab.com/jgemu/bsnes/-/commit/647e868f3d97bd937c46ecf312bbfbc25b816dc1
    Signed-off-by: orbea <orbea@riseup.net>
    Closes: https://github.com/gentoo/gentoo/pull/34205
    Signed-off-by: Sam James <sam@gentoo.org>

 games-emulation/bsnes-jg/bsnes-jg-1.1.2-r1.ebuild  | 50 +++++++++++++++++++
 .../bsnes-jg/files/bsnes-jg-1.1.2-endianness.patch | 58 ++++++++++++++++++++++
 2 files changed, 108 insertions(+)
Comment 15 orbea 2024-01-05 15:20:36 UTC
@matoro, the fix was merged in Gentoo now, would you  mind trying again? :)
Comment 16 matoro archtester 2024-01-06 19:36:53 UTC
arm done

all arches done
Comment 17 orbea 2024-01-07 14:29:35 UTC
Thank you very much, its greatly appreciated!
Comment 18 Larry the Git Cow gentoo-dev 2024-04-29 08:46:34 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3cdf7dff8db89871e20ce105d4c23feb18b66f6a

commit 3cdf7dff8db89871e20ce105d4c23feb18b66f6a
Author:     orbea <orbea@riseup.net>
AuthorDate: 2024-03-30 19:16:22 +0000
Commit:     Joonas Niilola <juippis@gentoo.org>
CommitDate: 2024-04-29 08:45:19 +0000

    games-emulation/jgemu: keyword 1.0.0 for ~arm, ~arm64, ~ppc, ~ppc64, ~x86
    
    Already done for all related packages.
    
    Bug: https://bugs.gentoo.org/891201
    Signed-off-by: orbea <orbea@riseup.net>
    Signed-off-by: Joonas Niilola <juippis@gentoo.org>

 games-emulation/jgemu/jgemu-1.0.0.ebuild | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)