summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjoerg <joerg@pkgsrc.org>2020-05-30 20:47:08 +0000
committerjoerg <joerg@pkgsrc.org>2020-05-30 20:47:08 +0000
commit44b684c55f691d4419f2ca65ccecc93fa6267100 (patch)
tree88cd4b33fab1b070898a33e17d92cc887ad508ef
parent8d0a8fc32c4650d7b698045e05f5680fdbe3e3e4 (diff)
downloadpkgsrc-44b684c55f691d4419f2ca65ccecc93fa6267100.tar.gz
Don't force GCC libraries. Don't use broken AVX detection with clang.
-rw-r--r--games/openrct2/distinfo4
-rw-r--r--games/openrct2/patches/patch-src_openrct2_CMakeLists.txt18
-rw-r--r--games/openrct2/patches/patch-src_openrct2_util_Util.cpp22
3 files changed, 43 insertions, 1 deletions
diff --git a/games/openrct2/distinfo b/games/openrct2/distinfo
index 0963b48a0f7..c98f153d400 100644
--- a/games/openrct2/distinfo
+++ b/games/openrct2/distinfo
@@ -1,13 +1,15 @@
-$NetBSD: distinfo,v 1.1 2019/11/17 16:19:57 nia Exp $
+$NetBSD: distinfo,v 1.2 2020/05/30 20:47:08 joerg Exp $
SHA1 (openrct2-0.2.4.tar.gz) = 625b106d6b1eeefd5e979bf5f92b80e19e47739b
RMD160 (openrct2-0.2.4.tar.gz) = f49860012f1b7ef39452d87821ca178045e768bb
SHA512 (openrct2-0.2.4.tar.gz) = 956044b5fa5e55256a33f352d2d1e8a4eb6738b98dc9894807b3628b5c5c08f3229c952fbf8b33ad867771f88c6d7e17ad1a8a4e050f8f269a6152d013afce03
Size (openrct2-0.2.4.tar.gz) = 6805976 bytes
SHA1 (patch-src_openrct2-ui_UiContext.Linux.cpp) = 36bd777ed772a0f18d76f699214223cc4011da6c
+SHA1 (patch-src_openrct2_CMakeLists.txt) = a0553c147661396405a607f5ef62f10fc9b55f6c
SHA1 (patch-src_openrct2_Version.h) = 5402d56aaedcac51d333d95c49f88472d9de7e91
SHA1 (patch-src_openrct2_core_FileStream.hpp) = b1b69a0cb86207fd0c9d25beda3a063ee232b4fe
SHA1 (patch-src_openrct2_platform_Linux.cpp) = 9562e6a0314a1c37192e8715bac39e1d9fd7faba
SHA1 (patch-src_openrct2_platform_Platform.Linux.cpp) = 426b2bcbb6bf59d5093cbc27ef3f638a054cf1e8
SHA1 (patch-src_openrct2_platform_Platform2.h) = 36da0bf860735b771837a949e67bcfe95380c684
SHA1 (patch-src_openrct2_platform_Posix.cpp) = 103299bf299ccc347154ebad5d8ca1b1f26a34e3
+SHA1 (patch-src_openrct2_util_Util.cpp) = 4086d3a99c24581f82f950ad87b7a0e5f94b9e40
diff --git a/games/openrct2/patches/patch-src_openrct2_CMakeLists.txt b/games/openrct2/patches/patch-src_openrct2_CMakeLists.txt
new file mode 100644
index 00000000000..8e7da124fd1
--- /dev/null
+++ b/games/openrct2/patches/patch-src_openrct2_CMakeLists.txt
@@ -0,0 +1,18 @@
+$NetBSD: patch-src_openrct2_CMakeLists.txt,v 1.1 2020/05/30 20:47:08 joerg Exp $
+
+--- src/openrct2/CMakeLists.txt.orig 2020-05-27 23:23:58.110984083 +0000
++++ src/openrct2/CMakeLists.txt
+@@ -143,13 +143,6 @@ if (NOT MINGW AND NOT MSVC)
+ endif ()
+ endif ()
+
+-if (NOT APPLE AND NOT MINGW AND NOT MSVC)
+- # This is ugly hack to work around https://bugs.launchpad.net/ubuntu/+source/gcc-5/+bug/1568899.
+- # Once C++17 is enabled (and thus old compilers are no longer supported, this needs to be gone.
+- # We cannot simply detect the _compiler_ version, as the bug exists with the C++ _library_
+- target_link_libraries(${PROJECT_NAME} gcc_s gcc)
+-endif ()
+-
+ if (NOT DISABLE_TTF)
+ if (STATIC)
+ target_link_libraries(${PROJECT_NAME} ${FREETYPE_STATIC_LIBRARIES})
diff --git a/games/openrct2/patches/patch-src_openrct2_util_Util.cpp b/games/openrct2/patches/patch-src_openrct2_util_Util.cpp
new file mode 100644
index 00000000000..2938d5e2ebb
--- /dev/null
+++ b/games/openrct2/patches/patch-src_openrct2_util_Util.cpp
@@ -0,0 +1,22 @@
+$NetBSD: patch-src_openrct2_util_Util.cpp,v 1.1 2020/05/30 20:47:08 joerg Exp $
+
+--- src/openrct2/util/Util.cpp.orig 2020-05-27 23:27:33.350998119 +0000
++++ src/openrct2/util/Util.cpp
+@@ -184,7 +184,7 @@ int32_t bitscanforward(int32_t source)
+ #endif
+ }
+
+-#if defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__))
++#if defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__)) && !defined(__clang__)
+ # include <cpuid.h>
+ # define OpenRCT2_CPUID_GNUC_X86
+ #elif defined(_MSC_VER) && (_MSC_VER >= 1500) && (defined(_M_X64) || defined(_M_IX86)) // VS2008
+@@ -223,7 +223,7 @@ bool sse41_available()
+
+ bool avx2_available()
+ {
+-#ifdef OPENRCT2_X86
++#if defined(OPENRCT2_X86) && !defined(__clang__)
+ // For GCC and similar use the builtin function, as cpuid changed its semantics in
+ // https://github.com/gcc-mirror/gcc/commit/132fa33ce998df69a9f793d63785785f4b93e6f1
+ // which causes it to ignore subleafs, but the new function is unavailable on