Files
haikuports/media-sound/mixxx/patches/mixxx-2.5.4.patchset
2026-02-18 16:18:15 +01:00

191 lines
6.0 KiB
Plaintext

From 58d636010efed9672d23e8ad4939bc86c631f91a Mon Sep 17 00:00:00 2001
From: Luc Schrijvers <begasus@gmail.com>
Date: Fri, 26 Sep 2025 13:33:49 +0200
Subject: Fix for missing byteswap.h
diff --git a/lib/kaitai/kaitai/kaitaistream.cpp b/lib/kaitai/kaitai/kaitaistream.cpp
index 2ad14a4..695b91c 100644
--- a/lib/kaitai/kaitai/kaitaistream.cpp
+++ b/lib/kaitai/kaitai/kaitaistream.cpp
@@ -41,6 +41,11 @@
#define __BYTE_ORDER BYTE_ORDER
#define __BIG_ENDIAN BIG_ENDIAN
#define __LITTLE_ENDIAN LITTLE_ENDIAN
+#elif defined(__HAIKU__)
+#include <ByteOrder.h>
+#define bswap_16 B_SWAP_INT16
+#define bswap_32 B_SWAP_INT32
+#define bswap_64 B_SWAP_INT64
#else // !__APPLE__ or !_MSC_VER or !__QNX__ or !BSD
#include <endian.h>
#include <byteswap.h>
--
2.52.0
From 0dd9b065c28e24785307e9af9f5dc51a417dc412 Mon Sep 17 00:00:00 2001
From: Luc Schrijvers <begasus@gmail.com>
Date: Fri, 26 Sep 2025 14:00:10 +0200
Subject: Haiku doesn't have pthread_attr_setinheritsched
diff --git a/lib/libshout-idjc/src/common/thread/thread.c b/lib/libshout-idjc/src/common/thread/thread.c
index 2e1f2e3..8c1ff05 100644
--- a/lib/libshout-idjc/src/common/thread/thread.c
+++ b/lib/libshout-idjc/src/common/thread/thread.c
@@ -296,7 +296,7 @@ thread_type *thread_create_c(char *name, void *(*start_routine)(void *),
pthread_attr_setstacksize (&attr, 512*1024);
-#ifndef __ANDROID__
+#if !defined(__ANDROID__) && !defined(__HAIKU__)
pthread_attr_setinheritsched (&attr, PTHREAD_INHERIT_SCHED);
#endif
--
2.52.0
From 2fadaf8f4a0ce408a7f8fda2fbcfacb8fb86550a Mon Sep 17 00:00:00 2001
From: Luc Schrijvers <begasus@gmail.com>
Date: Fri, 26 Sep 2025 14:42:31 +0200
Subject: We are not linux
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e948f17..18b7cdb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1981,7 +1981,7 @@ if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/res/Mixxx-Manual.pdf")
endif()
# Additional Linux-only files
-if(UNIX AND NOT APPLE)
+if(UNIX AND NOT APPLE AND NOT HAIKU)
# .desktop file for KDE/GNOME menu
install(
FILES
--
2.52.0
From abe704315b29c813faebe73ab5b9ea773f1d95af Mon Sep 17 00:00:00 2001
From: Luc Schrijvers <begasus@gmail.com>
Date: Fri, 26 Sep 2025 16:32:26 +0200
Subject: Fix?
diff --git a/src/library/browse/foldertreemodel.cpp b/src/library/browse/foldertreemodel.cpp
index fa09b7e..5e9ccd5 100644
--- a/src/library/browse/foldertreemodel.cpp
+++ b/src/library/browse/foldertreemodel.cpp
@@ -94,22 +94,10 @@ bool FolderTreeModel::directoryHasChildren(const QString& path) const {
while (!has_children && ((entry = readdir(directory)) != nullptr)) {
if (entry->d_name != dot && entry->d_name != dotdot) {
total_count++;
- if (entry->d_type == DT_UNKNOWN) {
+ {
unknown_count++;
- } else if (entry->d_type == DT_DIR) {
has_children = true;
break;
- } else if (entry->d_type == DT_LNK) {
- // Check if this links to a directory
- struct stat st;
- std::string fullPath = path.toStdString();
- fullPath += '/';
- fullPath += entry->d_name;
- // stat() follows the symlink
- if (stat(fullPath.c_str(), &st) == 0 && S_ISDIR(st.st_mode)) {
- has_children = true;
- break;
- }
}
}
}
--
2.52.0
From 664d7f1dcc1cb9d07ff8eabe33b233d913cfc94d Mon Sep 17 00:00:00 2001
From: Luc Schrijvers <begasus@gmail.com>
Date: Fri, 26 Sep 2025 18:26:44 +0200
Subject: Fix fatal error: arch/1/limits.h: No such file or directory
ticket created at: https://dev.haiku-os.org/ticket/19765
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 18b7cdb..2326df0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1714,7 +1714,6 @@ if(WARNINGS_FATAL)
endif()
target_compile_definitions(mixxx-lib PUBLIC
- "${CMAKE_SYSTEM_PROCESSOR}"
$<$<CONFIG:Debug>:MIXXX_BUILD_DEBUG>
$<$<CONFIG:Debug>:MIXXX_DEBUG_ASSERTIONS_ENABLED>
$<$<NOT:$<CONFIG:Debug>>:MIXXX_BUILD_RELEASE>
--
2.52.0
From 56d2b249a923ddbf83802a0babfe9bd4bdb45394 Mon Sep 17 00:00:00 2001
From: Luc Schrijvers <begasus@gmail.com>
Date: Sun, 28 Sep 2025 08:31:18 +0200
Subject: Set configuration path to config/settings/mixxx
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2326df0..bc66b60 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1593,9 +1593,12 @@ set_source_files_properties(src/util/moc_included_test.cpp PROPERTIES SKIP_PRECO
set_target_properties(mixxx-lib PROPERTIES AUTOMOC ON AUTOUIC ON CXX_CLANG_TIDY "${CLANG_TIDY}")
target_include_directories(mixxx-lib PUBLIC src "${CMAKE_CURRENT_BINARY_DIR}/src")
-if(UNIX AND NOT APPLE)
+if(UNIX AND NOT APPLE AND NOT HAIKU)
target_sources(mixxx-lib PRIVATE src/util/rlimit.cpp)
set(MIXXX_SETTINGS_PATH ".mixxx/")
+else()
+ target_sources(mixxx-lib PRIVATE src/util/rlimit.cpp)
+ set(MIXXX_SETTINGS_PATH "config/settings/mixxx/")
endif()
if(APPLE)
--
2.52.0
From 44a1f5707d501702d55ae3b12fcdfd3f71ead467 Mon Sep 17 00:00:00 2001
From: Luc Schrijvers <begasus@gmail.com>
Date: Sun, 28 Sep 2025 09:33:00 +0200
Subject: Set resources path for Haiku
diff --git a/src/preferences/configobject.cpp b/src/preferences/configobject.cpp
index 81709fa..50eabd0 100644
--- a/src/preferences/configobject.cpp
+++ b/src/preferences/configobject.cpp
@@ -65,10 +65,14 @@ QString computeResourcePathImpl() {
"'--resource-path <path>'.");
}
}
-#if defined(__UNIX__)
+#if defined(__UNIX__) && !defined(__HAIKU__)
else if (mixxxDir.cd(QStringLiteral("../share/mixxx"))) {
qResourcePath = mixxxDir.absolutePath();
}
+#elif defined(__HAIKU__)
+ else if (mixxxDir.cd(QStringLiteral("../data/mixxx"))) {
+ qResourcePath = mixxxDir.absolutePath();
+ }
#elif defined(__WINDOWS__)
// On Windows, set the config dir relative to the application dir if all
// of the above fail.
--
2.52.0