All it needs is a little modification in code/egobootypedef.h . But the modification concerns a part of the file added by 2.22-endian.patch , so i made a little patch for the patch (does that sounds awful ?). Anyway it's just a matter of replacing : #if __i386__ by #if defined( __i386__ ) || defined( __x86_64 ) which is used to determine the machine's endianess Reproducible: Always Steps to Reproduce: 1. patch files/2.22-endian.patch with the attached patch 2. ebuild egoboo-2.22.ebuild digest 3. emerge egoboo Actual Results: the compilation succeeds and the game is playable :)
Created attachment 67270 [details, diff] 2.22-endian.patch modification for amd64 support
(In reply to comment #0) > Anyway it's just a matter of replacing : > > #if __i386__ > > by > > #if defined( __i386__ ) || defined( __x86_64 ) > oops, should be : #if defined( __i386__ ) || defined( __x86_64__ )
(In reply to comment #0) > so i made a little patch for the patch (does that sounds awful ?). Well if it does, i can also provide a separate patch and a modified ebuild that handles the patch. I guess that as this modification doesn't change the way the package is build on other arches, it doesn't requires a new ebuild name.
Created attachment 67354 [details, diff] 2.22-amd64.patch here is the patch
Created attachment 67355 [details] egoboo-2.22.ebuild and here is the modified ebuild...
Also confirming this works. Any reason we don't have a ~amd64 or amd64 keyword in the tree?
Okay, so just to sum up (for referential sake), the patch enables determination of correct endianness on amd64 with a simple modification: from: #if defined( __i386__ ) to: #if defined( __i386__ ) || defined( __x86_64__ ) Thanks Bruno for the patch and everyone for the testing. ~amd64 added.