Hi !

> http://build-failures.rhaalovely.net/sparc64/2021-03-21/games/egoboo.log
> http://build-failures.rhaalovely.net/powerpc/2021-02-22/games/egoboo.log
> http://build-failures.rhaalovely.net/mips64/2021-03-21/games/egoboo.log

There is a typo in the big endian code there. It's 'SDL_Swap32'.

With the below diff, it builds and works fine on macppc, colors are
not off. I added a safety revision bump as well.

Comments/feedback are welcome,

Charlène.


[0] https://wiki.libsdl.org/SDL_Swap32


Index: Makefile
===================================================================
RCS file: /cvs/ports/games/egoboo/Makefile,v
retrieving revision 1.11
diff -u -p -u -p -r1.11 Makefile
--- Makefile    8 Mar 2021 18:20:14 -0000       1.11
+++ Makefile    26 Mar 2021 16:03:56 -0000
@@ -3,6 +3,7 @@
 COMMENT =              dungeon-crawling action-RPG adventure
 
 DISTNAME =             egoboo-2.8.1
+REVISION =             0
 CATEGORIES =           games
 
 HOMEPAGE =             http://egoboo.sourceforge.net
@@ -21,7 +22,8 @@ LIB_DEPENDS =         devel/sdl-image \
 FIX_CRLF_FILES =       src/Makefile src/enet/Makefile src/game/Makefile \
                        src/game/extensions/ogl_texture.c \
                        src/game/game.c \
-                       src/game/platform/file_linux.c
+                       src/game/platform/file_linux.c \
+                       src/game/md2.c
 
 USE_GMAKE =            Yes
 WRKSRC =               ${WRKDIST}/src
Index: patches/patch-src_game_md2_c
===================================================================
RCS file: patches/patch-src_game_md2_c
diff -N patches/patch-src_game_md2_c
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_game_md2_c        26 Mar 2021 16:03:56 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Fix the build on BE_ARCHS.
+
+Index: src/game/md2.c
+--- src/game/md2.c.orig
++++ src/game/md2.c
+@@ -511,7 +511,7 @@ MD2_Model_t* md2_load( const char * szFilename, MD2_Mo
+                 int i;
+                 for ( i = 0; i < cmd->command_count; i++ )
+                 {
+-                    cmd->data[i].index = SDL_swap32( cmd->data[i].s );
++                    cmd->data[i].index = SDL_Swap32( cmd->data[i].s );
+                     cmd->data[i].s     = ENDIAN_FLOAT( cmd->data[i].s );
+                     cmd->data[i].t     = ENDIAN_FLOAT( cmd->data[i].t );
+                 };

Reply via email to