Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F111123670
D26825.id78343.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
7 KB
Referenced Files
None
Subscribers
None
D26825.id78343.diff
View Options
Index: head/emulators/openmsx/Makefile
===================================================================
--- head/emulators/openmsx/Makefile
+++ head/emulators/openmsx/Makefile
@@ -1,8 +1,7 @@
# $FreeBSD$
PORTNAME= openmsx
-PORTVERSION= 0.15.0
-PORTREVISION= 2
+PORTVERSION= 16.0
CATEGORIES= emulators
MAINTAINER= menelkir@itroll.org
@@ -11,8 +10,6 @@
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/doc/GPL.txt
-BROKEN= fails to build
-
LIB_DEPENDS= libpng.so:graphics/png \
libogg.so:audio/libogg \
libvorbis.so:audio/libvorbis \
@@ -29,7 +26,7 @@
USE_GITHUB= yes
GH_ACCOUNT= openMSX
GH_PROJECT= openMSX
-GH_TAGNAME= 0f2b558
+GH_TAGNAME= a46a814
BINARY_ALIAS= python3=${PYTHON_CMD}
Index: head/emulators/openmsx/distinfo
===================================================================
--- head/emulators/openmsx/distinfo
+++ head/emulators/openmsx/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1588351340
-SHA256 (openMSX-openMSX-0.15.0-0f2b558_GH0.tar.gz) = 4be0852c3eed442771dc450ad5385a5b30c97927be543da91bd685e5484d560d
-SIZE (openMSX-openMSX-0.15.0-0f2b558_GH0.tar.gz) = 5589585
+TIMESTAMP = 1602852184
+SHA256 (openMSX-openMSX-16.0-a46a814_GH0.tar.gz) = 56d66cd7baa4e93febf36fba9ed3e0efa65fb2095432aa659c37e364c23852ac
+SIZE (openMSX-openMSX-16.0-a46a814_GH0.tar.gz) = 5605130
Index: head/emulators/openmsx/files/patch-src_utils_endian.hh
===================================================================
--- head/emulators/openmsx/files/patch-src_utils_endian.hh
+++ head/emulators/openmsx/files/patch-src_utils_endian.hh
@@ -0,0 +1,88 @@
+--- src/utils/endian.hh.orig 2020-08-25 21:16:08 UTC
++++ src/utils/endian.hh
+@@ -9,23 +9,23 @@
+ namespace Endian {
+
+ // Reverse bytes in a 16-bit number: 0x1234 becomes 0x3412
+-[[nodiscard]] static inline uint16_t bswap16(uint16_t x)
++[[nodiscard]] static inline uint16_t byteswap16(uint16_t x)
+ {
+ // This sequence generates 'optimal' code on a wide range of gcc/clang
+ // versions (a single rotate instruction on x86). The newer compiler
+ // versions also do 'the right thing' for the simpler expression below.
+- // Those newer compilers also support __builtin_bswap16() but that
++ // Those newer compilers also support __builtin_byteswap16() but that
+ // doesn't generate better code (and is less portable).
+ return ((x & 0x00FF) << 8) | ((x & 0xFF00) >> 8);
+ //return (x << 8) | (x >> 8);
+ }
+
+ // Reverse bytes in a 32-bit number: 0x12345678 becomes 0x78563412
+-[[nodiscard]] static inline uint32_t bswap32(uint32_t x)
++[[nodiscard]] static inline uint32_t byteswap32(uint32_t x)
+ {
+ #if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3))
+ // Starting from gcc-4.3 there's a builtin function for this.
+- // E.g. on x86 this is translated to a single 'bswap' instruction.
++ // E.g. on x86 this is translated to a single 'byteswap' instruction.
+ return __builtin_bswap32(x);
+ #else
+ return (x << 24) |
+@@ -36,22 +36,22 @@ namespace Endian {
+ }
+
+ // Reverse bytes in a 64-bit value: 0x1122334455667788 becomes 0x8877665544332211
+-[[nodiscard]] static inline uint64_t bswap64(uint64_t x)
++[[nodiscard]] static inline uint64_t byteswap64(uint64_t x)
+ {
+ #if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3))
+ // Starting from gcc-4.3 there's a builtin function for this.
+- // E.g. on x86 this is translated to a single 'bswap' instruction.
++ // E.g. on x86 this is translated to a single 'byteswap' instruction.
+ return __builtin_bswap64(x);
+ #else
+- return (uint64_t(bswap32(x >> 0)) << 32) |
+- (uint64_t(bswap32(x >> 32)) << 0);
++ return (uint64_t(byteswap32(x >> 0)) << 32) |
++ (uint64_t(byteswap32(x >> 32)) << 0);
+ #endif
+ }
+
+-// Use overloading to get a (statically) polymorphic bswap() function.
+-[[nodiscard]] static inline uint16_t bswap(uint16_t x) { return bswap16(x); }
+-[[nodiscard]] static inline uint32_t bswap(uint32_t x) { return bswap32(x); }
+-[[nodiscard]] static inline uint64_t bswap(uint64_t x) { return bswap64(x); }
++// Use overloading to get a (statically) polymorphic byteswap() function.
++[[nodiscard]] static inline uint16_t byteswap(uint16_t x) { return byteswap16(x); }
++[[nodiscard]] static inline uint32_t byteswap(uint32_t x) { return byteswap32(x); }
++[[nodiscard]] static inline uint64_t byteswap(uint64_t x) { return byteswap64(x); }
+
+
+ // Identity operator, simply returns the given value.
+@@ -61,7 +61,7 @@ struct Ident {
+
+ // Byte-swap operator, swap bytes in the given value (16 or 32 bit).
+ struct BSwap {
+- template <typename T> [[nodiscard]] inline T operator()(T t) const { return bswap(t); }
++ template <typename T> [[nodiscard]] inline T operator()(T t) const { return byteswap(t); }
+ };
+
+ // Helper class that stores a value and allows to read/write that value. Though
+@@ -165,7 +165,7 @@ static inline void writeL32(void* p, uint32_t x)
+
+ template<bool SWAP, typename T> static ALWAYS_INLINE void write_UA(void* p, T x)
+ {
+- if (SWAP) x = bswap(x);
++ if (SWAP) x = byteswap(x);
+ memcpy(p, &x, sizeof(x));
+ }
+ static ALWAYS_INLINE void write_UA_B16(void* p, uint16_t x)
+@@ -197,7 +197,7 @@ template<bool SWAP, typename T> [[nodiscard]] static A
+ {
+ T x;
+ memcpy(&x, p, sizeof(x));
+- if (SWAP) x = bswap(x);
++ if (SWAP) x = byteswap(x);
+ return x;
+ }
+ [[nodiscard]] static ALWAYS_INLINE uint16_t read_UA_B16(const void* p)
Index: head/emulators/openmsx/files/patch-src_utils_sha1.cc
===================================================================
--- head/emulators/openmsx/files/patch-src_utils_sha1.cc
+++ head/emulators/openmsx/files/patch-src_utils_sha1.cc
@@ -0,0 +1,11 @@
+--- src/utils/sha1.cc.orig 2020-10-16 15:25:27 UTC
++++ src/utils/sha1.cc
+@@ -123,7 +123,7 @@ static inline __m128i _mm_cmple_epu8(__m128i a, __m128
+ // load 64-bit (possibly unaligned) and swap bytes
+ static inline uint64_t loadSwap64(const char* s)
+ {
+- return Endian::bswap64(*reinterpret_cast<const uint64_t*>(s));
++ return Endian::byteswap64(*reinterpret_cast<const uint64_t*>(s));
+ }
+
+ #else
Index: head/emulators/openmsx/files/patch-src_utils_tiger.cc
===================================================================
--- head/emulators/openmsx/files/patch-src_utils_tiger.cc
+++ head/emulators/openmsx/files/patch-src_utils_tiger.cc
@@ -0,0 +1,15 @@
+--- src/utils/tiger.cc.orig 2020-10-16 15:12:50 UTC
++++ src/utils/tiger.cc
+@@ -662,9 +662,9 @@ static inline void initState(uint64_t state[3])
+ static inline void returnState(uint64_t state[3])
+ {
+ if (OPENMSX_BIGENDIAN) {
+- state[0] = Endian::bswap64(state[0]);
+- state[1] = Endian::bswap64(state[1]);
+- state[2] = Endian::bswap64(state[2]);
++ state[0] = Endian::byteswap64(state[0]);
++ state[1] = Endian::byteswap64(state[1]);
++ state[2] = Endian::byteswap64(state[2]);
+ }
+ }
+
Index: head/emulators/openmsx/pkg-descr
===================================================================
--- head/emulators/openmsx/pkg-descr
+++ head/emulators/openmsx/pkg-descr
@@ -1,4 +1,4 @@
OpenMSX, the open source MSX emulator that tries to achieve
near-perfect emulation by using a novel emulation model.
-WWW: http://openmsx.org
+WWW: https://openmsx.org
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Feb 28, 6:15 PM (15 h, 4 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16888983
Default Alt Text
D26825.id78343.diff (7 KB)
Attached To
Mode
D26825: emulators/openmsx: Update to 16.0
Attached
Detach File
Event Timeline
Log In to Comment