Hi,

solene@ reported to me that OpenTTD's colors were off on her powerpc
machine. I've found out that endianness was not properly detected,
so i fixed it and upstreamed [0] the changes needed.

It builds and works as expected on powerpc and amd64.

Comments/feedback are welcome,

Charlène.


[0] https://github.com/OpenTTD/OpenTTD/pull/7996


Index: Makefile
===================================================================
RCS file: /cvs/ports/games/openttd/Makefile,v
retrieving revision 1.65
diff -u -p -u -p -r1.65 Makefile
--- Makefile    15 Nov 2019 22:55:15 -0000      1.65
+++ Makefile    11 Feb 2020 11:31:52 -0000
@@ -5,7 +5,7 @@ COMMENT=        open source clone of the game T
 V =            1.9.3
 DISTNAME =     openttd-$V-source
 PKGNAME =      openttd-$V
-REVISION =     0
+REVISION =     1
 
 CATEGORIES=    games
 
Index: patches/patch-src_core_endian_type_hpp
===================================================================
RCS file: patches/patch-src_core_endian_type_hpp
diff -N patches/patch-src_core_endian_type_hpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_core_endian_type_hpp      11 Feb 2020 11:31:52 -0000
@@ -0,0 +1,21 @@
+$OpenBSD$
+
+Fix endianness detection
+
+Index: src/core/endian_type.hpp
+--- src/core/endian_type.hpp.orig
++++ src/core/endian_type.hpp
+@@ -35,6 +35,13 @@
+ #     else
+ #             define TTD_ENDIAN TTD_BIG_ENDIAN
+ #     endif
++#elif defined(__OpenBSD__)
++#     include <endian.h>
++#     if BYTE_ORDER == LITTLE_ENDIAN
++#             define TTD_ENDIAN TTD_LITTLE_ENDIAN
++#     else
++#             define TTD_ENDIAN TTD_BIG_ENDIAN
++#     endif
+ #elif !defined(TESTING)
+ #     include <sys/param.h>
+ #     if __BYTE_ORDER == __LITTLE_ENDIAN

Reply via email to