qt5: switch to submodules source packages

webengine module is skipped
This commit is contained in:
Jerome Duval
2021-04-08 18:55:56 +02:00
parent 98c76e7d1b
commit b02cb67137
6 changed files with 358 additions and 219 deletions

View File

@@ -0,0 +1,23 @@
From cbe4a359a377c03c2036f7e9474faa84e58a5a10 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 11 Feb 2019 15:57:25 +1000
Subject: Fix build qt3d zip module
diff --git a/src/3rdparty/assimp/contrib/zip/src/miniz.h b/src/3rdparty/assimp/contrib/zip/src/miniz.h
index 2e4e223..6436df5 100644
--- a/src/3rdparty/assimp/contrib/zip/src/miniz.h
+++ b/src/3rdparty/assimp/contrib/zip/src/miniz.h
@@ -2917,7 +2917,7 @@ void *tdefl_write_image_to_png_file_in_memory(const void *pImage, int w, int h,
#define MZ_FFLUSH fflush
#define MZ_FREOPEN(f, m, s) freopen(f, m, s)
#define MZ_DELETE_FILE remove
- #elif defined(__GNUC__) && _LARGEFILE64_SOURCE
+ #elif defined(__GNUC__) && _LARGEFILE64_SOURCE && !defined(__HAIKU__)
#ifndef MINIZ_NO_TIME
#include <utime.h>
#endif
--
2.28.0

View File

@@ -1,91 +1,3 @@
From d1ffd868c47c8d20f64a504f4e850f3f5c6a3423 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 11 Feb 2019 15:51:31 +1000
Subject: Fix Haiku build
diff --git a/qtdeclarative/src/3rdparty/masm/wtf/PageBlock.cpp b/qtdeclarative/src/3rdparty/masm/wtf/PageBlock.cpp
index e715ed2..1362a13 100644
--- a/qtdeclarative/src/3rdparty/masm/wtf/PageBlock.cpp
+++ b/qtdeclarative/src/3rdparty/masm/wtf/PageBlock.cpp
@@ -40,7 +40,14 @@ namespace WTF {
static size_t s_pageSize;
static size_t s_pageMask;
-#if OS(UNIX)
+#if OS(HAIKU)
+
+inline size_t systemPageSize()
+{
+ return 4096;
+}
+
+#elif OS(UNIX)
inline size_t systemPageSize()
{
diff --git a/qtdeclarative/src/3rdparty/masm/wtf/Platform.h b/qtdeclarative/src/3rdparty/masm/wtf/Platform.h
index ab1da21..5d8617e 100644
--- a/qtdeclarative/src/3rdparty/masm/wtf/Platform.h
+++ b/qtdeclarative/src/3rdparty/masm/wtf/Platform.h
@@ -418,6 +418,11 @@
#define WTF_OS_QNX 1
#endif
+/* OS(HAIKU) - Haiku */
+#if defined(__HAIKU__)
+#define WTF_OS_HAIKU 1
+#endif
+
/* OS(SOLARIS) - Solaris */
#if defined(sun) || defined(__sun)
#define WTF_OS_SOLARIS 1
@@ -452,6 +457,7 @@
|| OS(HURD) \
|| OS(INTEGRITY) \
|| OS(LINUX) \
+ || OS(HAIKU) \
|| OS(NETBSD) \
|| OS(OPENBSD) \
|| OS(QNX) \
--
2.28.0
From 74ec545bf871171e23968f1e484a6250d46bdc51 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
Date: Mon, 11 Feb 2019 15:53:20 +1000
Subject: Add filteredDeviceFilePaths for Haiku's /dev/ports/*
diff --git a/qtserialport/src/serialport/qserialportinfo_unix.cpp b/qtserialport/src/serialport/qserialportinfo_unix.cpp
index 105d10a..80932e9 100644
--- a/qtserialport/src/serialport/qserialportinfo_unix.cpp
+++ b/qtserialport/src/serialport/qserialportinfo_unix.cpp
@@ -79,13 +79,20 @@ static QStringList filteredDeviceFilePaths()
<< QStringLiteral("cu*");
#elif defined(Q_OS_QNX)
<< QStringLiteral("ser*");
+#elif defined(Q_OS_HAIKU)
+ << QStringLiteral("*serial*")
+ << QStringLiteral("usb*");
#else
;
#endif
QStringList result;
+#if defined(Q_OS_HAIKU)
+ QDir deviceDir(QStringLiteral("/dev/ports"));
+#else
QDir deviceDir(QStringLiteral("/dev"));
+#endif
if (deviceDir.exists()) {
deviceDir.setNameFilters(deviceFileNameFilterList);
deviceDir.setFilter(QDir::Files | QDir::System | QDir::NoSymLinks);
--
2.28.0
From 5d39eaa4c2578632be296d2cebbc4b830c77ccff Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
@@ -94,10 +6,10 @@ Subject: Make sure libs are searched in the develop/ dir by CMake
Static libs at least are not in the lib[/x86] dirs...
diff --git a/qtbase/mkspecs/features/create_cmake.prf b/qtbase/mkspecs/features/create_cmake.prf
diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
index 24ed125..52f637e 100644
--- a/qtbase/mkspecs/features/create_cmake.prf
+++ b/qtbase/mkspecs/features/create_cmake.prf
--- a/mkspecs/features/create_cmake.prf
+++ b/mkspecs/features/create_cmake.prf
@@ -112,6 +112,9 @@ win32:!static:!staticlib {
CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/
CMAKE_DLL_DIR_IS_ABSOLUTE = True
@@ -118,10 +30,10 @@ Date: Mon, 11 Feb 2019 15:55:08 +1000
Subject: Disable built-in haiku QPA plugin
diff --git a/qtbase/src/plugins/platforms/platforms.pro b/qtbase/src/plugins/platforms/platforms.pro
diff --git a/src/plugins/platforms/platforms.pro b/src/plugins/platforms/platforms.pro
index 23f838a..8ef1812 100644
--- a/qtbase/src/plugins/platforms/platforms.pro
+++ b/qtbase/src/plugins/platforms/platforms.pro
--- a/src/plugins/platforms/platforms.pro
+++ b/src/plugins/platforms/platforms.pro
@@ -42,10 +42,6 @@ freebsd {
SUBDIRS += bsdfb
}
@@ -136,40 +48,16 @@ index 23f838a..8ef1812 100644
--
2.28.0
From 0221470b1c9027a4717c1cefdee09849e1e1da02 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 11 Feb 2019 15:55:38 +1000
Subject: disable mapbox-gl-native on Haiku.
diff --git a/qtlocation/src/plugins/geoservices/geoservices.pro b/qtlocation/src/plugins/geoservices/geoservices.pro
index b81ad34..7b642c0 100644
--- a/qtlocation/src/plugins/geoservices/geoservices.pro
+++ b/qtlocation/src/plugins/geoservices/geoservices.pro
@@ -8,7 +8,7 @@ qtConfig(geoservices_esri): SUBDIRS += esri
qtConfig(geoservices_itemsoverlay): SUBDIRS += itemsoverlay
qtConfig(geoservices_osm): SUBDIRS += osm
-qtConfig(geoservices_mapboxgl) {
+qtConfig(geoservices_mapboxgl):!haiku {
!exists(../../3rdparty/mapbox-gl-native/mapbox-gl-native.pro) {
warning("Submodule mapbox-gl-native does not exist. Run 'git submodule update --init' on qtlocation.")
} else {
--
2.28.0
From 437c03637773374d1b084752c81860b7e3bbc766 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 11 Feb 2019 15:56:12 +1000
Subject: Fix QStandartPaths for Haiku
diff --git a/qtbase/src/corelib/io/qstandardpaths_haiku.cpp b/qtbase/src/corelib/io/qstandardpaths_haiku.cpp
diff --git a/src/corelib/io/qstandardpaths_haiku.cpp b/src/corelib/io/qstandardpaths_haiku.cpp
index 044d69f..1f255a9 100644
--- a/qtbase/src/corelib/io/qstandardpaths_haiku.cpp
+++ b/qtbase/src/corelib/io/qstandardpaths_haiku.cpp
--- a/src/corelib/io/qstandardpaths_haiku.cpp
+++ b/src/corelib/io/qstandardpaths_haiku.cpp
@@ -145,22 +145,22 @@ QString QStandardPaths::writableLocation(StandardLocation type)
return haikuStandardPath(B_USER_NONPACKAGED_BIN_DIRECTORY);
case TempLocation:
@@ -229,10 +117,10 @@ Date: Mon, 11 Feb 2019 15:56:39 +1000
Subject: QSslSocketPrivate::unixRootCertDirectories(): add ssl path for Haiku.
diff --git a/qtbase/src/network/ssl/qsslsocket.cpp b/qtbase/src/network/ssl/qsslsocket.cpp
diff --git a/src/network/ssl/qsslsocket.cpp b/src/network/ssl/qsslsocket.cpp
index fbeb9de..02cc653 100644
--- a/qtbase/src/network/ssl/qsslsocket.cpp
+++ b/qtbase/src/network/ssl/qsslsocket.cpp
--- a/src/network/ssl/qsslsocket.cpp
+++ b/src/network/ssl/qsslsocket.cpp
@@ -2958,6 +2958,7 @@ QList<QByteArray> QSslSocketPrivate::unixRootCertDirectories()
<< "/usr/local/ssl/certs/" // Solaris
<< "/etc/openssl/certs/" // BlackBerry
@@ -251,10 +139,10 @@ Date: Mon, 11 Feb 2019 15:56:59 +1000
Subject: Fix build for Haiku platform
diff --git a/qtbase/mkspecs/features/toolchain.prf b/qtbase/mkspecs/features/toolchain.prf
diff --git a/mkspecs/features/toolchain.prf b/mkspecs/features/toolchain.prf
index 9d790f6..55d156c 100644
--- a/qtbase/mkspecs/features/toolchain.prf
+++ b/qtbase/mkspecs/features/toolchain.prf
--- a/mkspecs/features/toolchain.prf
+++ b/mkspecs/features/toolchain.prf
@@ -254,7 +254,7 @@ isEmpty($${target_prefix}.INCDIRS) {
}
}
@@ -268,39 +156,16 @@ index 9d790f6..55d156c 100644
2.28.0
From cbe4a359a377c03c2036f7e9474faa84e58a5a10 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 11 Feb 2019 15:57:25 +1000
Subject: Fix build qt3d zip module
diff --git a/qt3d/src/3rdparty/assimp/contrib/zip/src/miniz.h b/qt3d/src/3rdparty/assimp/contrib/zip/src/miniz.h
index 2e4e223..6436df5 100644
--- a/qt3d/src/3rdparty/assimp/contrib/zip/src/miniz.h
+++ b/qt3d/src/3rdparty/assimp/contrib/zip/src/miniz.h
@@ -2917,7 +2917,7 @@ void *tdefl_write_image_to_png_file_in_memory(const void *pImage, int w, int h,
#define MZ_FFLUSH fflush
#define MZ_FREOPEN(f, m, s) freopen(f, m, s)
#define MZ_DELETE_FILE remove
- #elif defined(__GNUC__) && _LARGEFILE64_SOURCE
+ #elif defined(__GNUC__) && _LARGEFILE64_SOURCE && !defined(__HAIKU__)
#ifndef MINIZ_NO_TIME
#include <utime.h>
#endif
--
2.28.0
From f54915880945d5dcd7e79a85adb4d483c3f2c5e9 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 11 Feb 2019 15:57:54 +1000
Subject: Fix endian detection
diff --git a/qtbase/src/3rdparty/sha3/brg_endian.h b/qtbase/src/3rdparty/sha3/brg_endian.h
diff --git a/src/3rdparty/sha3/brg_endian.h b/src/3rdparty/sha3/brg_endian.h
index 9bb306e..9f0ea58 100644
--- a/qtbase/src/3rdparty/sha3/brg_endian.h
+++ b/qtbase/src/3rdparty/sha3/brg_endian.h
--- a/src/3rdparty/sha3/brg_endian.h
+++ b/src/3rdparty/sha3/brg_endian.h
@@ -39,10 +39,10 @@ Changes for ARM 9/9/2010 [Downstream relative to Gladman's GitHub, upstream to Q
#elif defined( BSD ) && ( BSD >= 199103 ) || defined( __APPLE__ ) || \
defined( __CYGWIN32__ ) || defined( __DJGPP__ ) || defined( __osf__ )
@@ -324,10 +189,10 @@ Date: Sat, 27 Apr 2019 17:47:23 +1000
Subject: Add dnslookup query function for Haiku
diff --git a/qtbase/src/network/kernel/kernel.pri b/qtbase/src/network/kernel/kernel.pri
diff --git a/src/network/kernel/kernel.pri b/src/network/kernel/kernel.pri
index 7282e20..d2faef3 100644
--- a/qtbase/src/network/kernel/kernel.pri
+++ b/qtbase/src/network/kernel/kernel.pri
--- a/src/network/kernel/kernel.pri
+++ b/src/network/kernel/kernel.pri
@@ -54,6 +54,11 @@ android:qtConfig(dnslookup) {
SOURCES += kernel/qdnslookup_android.cpp
}
@@ -340,11 +205,11 @@ index 7282e20..d2faef3 100644
win32: {
SOURCES += kernel/qhostinfo_win.cpp
diff --git a/qtbase/src/network/kernel/qdnslookup_haiku.cpp b/qtbase/src/network/kernel/qdnslookup_haiku.cpp
diff --git a/src/network/kernel/qdnslookup_haiku.cpp b/src/network/kernel/qdnslookup_haiku.cpp
new file mode 100644
index 0000000..0b387df
--- /dev/null
+++ b/qtbase/src/network/kernel/qdnslookup_haiku.cpp
+++ b/src/network/kernel/qdnslookup_haiku.cpp
@@ -0,0 +1,56 @@
+/****************************************************************************
+**
@@ -412,10 +277,10 @@ Date: Wed, 27 May 2020 19:54:30 +1000
Subject: Disable LibResolv for Haiku
diff --git a/qtbase/src/network/kernel/qhostinfo_unix.cpp b/qtbase/src/network/kernel/qhostinfo_unix.cpp
diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp
index 9b0a2ee..480671b 100644
--- a/qtbase/src/network/kernel/qhostinfo_unix.cpp
+++ b/qtbase/src/network/kernel/qhostinfo_unix.cpp
--- a/src/network/kernel/qhostinfo_unix.cpp
+++ b/src/network/kernel/qhostinfo_unix.cpp
@@ -87,7 +87,7 @@ typedef void (*res_nclose_proto)(res_state_ptr);
static res_nclose_proto local_res_nclose = nullptr;
static res_state_ptr local_res = nullptr;
@@ -435,10 +300,10 @@ Date: Sun, 8 Sep 2019 00:17:19 +1000
Subject: Don't use ifaddrs for Haiku
diff --git a/qtbase/src/network/kernel/qnetworkinterface_unix.cpp b/qtbase/src/network/kernel/qnetworkinterface_unix.cpp
diff --git a/src/network/kernel/qnetworkinterface_unix.cpp b/src/network/kernel/qnetworkinterface_unix.cpp
index 4c57bff..0c8e38f 100644
--- a/qtbase/src/network/kernel/qnetworkinterface_unix.cpp
+++ b/qtbase/src/network/kernel/qnetworkinterface_unix.cpp
--- a/src/network/kernel/qnetworkinterface_unix.cpp
+++ b/src/network/kernel/qnetworkinterface_unix.cpp
@@ -51,7 +51,7 @@
# include "qdatetime.h"
#endif
@@ -458,10 +323,10 @@ Date: Sun, 8 Sep 2019 18:32:05 +1000
Subject: Add platform plugins installer
diff --git a/qtbase/src/gui/gui.pro b/qtbase/src/gui/gui.pro
diff --git a/src/gui/gui.pro b/src/gui/gui.pro
index 20372d9..803e9b7 100644
--- a/qtbase/src/gui/gui.pro
+++ b/qtbase/src/gui/gui.pro
--- a/src/gui/gui.pro
+++ b/src/gui/gui.pro
@@ -35,6 +35,7 @@ testcocoon {
osx: LIBS_PRIVATE += -framework AppKit
@@ -470,10 +335,10 @@ index 20372d9..803e9b7 100644
CONFIG += simd optimize_full
diff --git a/qtbase/src/gui/kernel/qguiapplication.cpp b/qtbase/src/gui/kernel/qguiapplication.cpp
diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp
index 239a783..8bdb7f6 100644
--- a/qtbase/src/gui/kernel/qguiapplication.cpp
+++ b/qtbase/src/gui/kernel/qguiapplication.cpp
--- a/src/gui/kernel/qguiapplication.cpp
+++ b/src/gui/kernel/qguiapplication.cpp
@@ -116,6 +116,11 @@
# include <QtCore/QLibraryInfo>
#endif // Q_OS_WIN
@@ -518,28 +383,6 @@ index 239a783..8bdb7f6 100644
2.28.0
From d50302a60710100ceed487bdbb0d9af9540e5ed7 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 15 Dec 2019 11:27:19 +1000
Subject: Enable assembler for JIT
diff --git a/qtdeclarative/src/qml/jit/qv4assemblercommon_p.h b/qtdeclarative/src/qml/jit/qv4assemblercommon_p.h
index ead1e75..58d9635 100644
--- a/qtdeclarative/src/qml/jit/qv4assemblercommon_p.h
+++ b/qtdeclarative/src/qml/jit/qv4assemblercommon_p.h
@@ -66,7 +66,7 @@ namespace QV4 {
namespace JIT {
#if defined(Q_PROCESSOR_X86_64) || defined(ENABLE_ALL_ASSEMBLERS_FOR_REFACTORING_PURPOSES)
-#if defined(Q_OS_LINUX) || defined(Q_OS_QNX) || defined(Q_OS_FREEBSD) || defined(Q_OS_DARWIN)
+#if defined(Q_OS_LINUX) || defined(Q_OS_QNX) || defined(Q_OS_FREEBSD) || defined(Q_OS_DARWIN) || defined(Q_OS_HAIKU)
class PlatformAssembler_X86_64_SysV : public JSC::MacroAssembler<JSC::MacroAssemblerX86_64>
{
--
2.28.0
From 61e1c632163e47eb6fe825084ba459b55010c687 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
@@ -547,10 +390,10 @@ Date: Wed, 27 May 2020 19:54:58 +1000
Subject: Disable sharedmemory feature for bootstrap
diff --git a/qtbase/src/tools/bootstrap/bootstrap.pro b/qtbase/src/tools/bootstrap/bootstrap.pro
diff --git a/src/tools/bootstrap/bootstrap.pro b/src/tools/bootstrap/bootstrap.pro
index c212ccb..1a31b62 100644
--- a/qtbase/src/tools/bootstrap/bootstrap.pro
+++ b/qtbase/src/tools/bootstrap/bootstrap.pro
--- a/src/tools/bootstrap/bootstrap.pro
+++ b/src/tools/bootstrap/bootstrap.pro
@@ -11,7 +11,8 @@ MODULE_DEFINES = \
QT_VERSION_MINOR=$$QT_MINOR_VERSION \
QT_VERSION_PATCH=$$QT_PATCH_VERSION \
@@ -571,10 +414,10 @@ Date: Sun, 29 Dec 2019 18:13:19 +1000
Subject: Fix build for x86_gcc2
diff --git a/qtbase/src/3rdparty/forkfd/forkfd.c b/qtbase/src/3rdparty/forkfd/forkfd.c
diff --git a/src/3rdparty/forkfd/forkfd.c b/src/3rdparty/forkfd/forkfd.c
index b663b8a..5ad2b12 100644
--- a/qtbase/src/3rdparty/forkfd/forkfd.c
+++ b/qtbase/src/3rdparty/forkfd/forkfd.c
--- a/src/3rdparty/forkfd/forkfd.c
+++ b/src/3rdparty/forkfd/forkfd.c
@@ -719,7 +719,7 @@ int forkfd(int flags, pid_t *ppid)
/* parent process */
info->deathPipe = death_pipe[1];
@@ -594,10 +437,10 @@ Date: Thu, 4 Jun 2020 23:11:17 +1000
Subject: Implement QFilesystemWatcher for Haiku
diff --git a/qtbase/src/corelib/io/io.pri b/qtbase/src/corelib/io/io.pri
diff --git a/src/corelib/io/io.pri b/src/corelib/io/io.pri
index a33ffe7..91190d4 100644
--- a/qtbase/src/corelib/io/io.pri
+++ b/qtbase/src/corelib/io/io.pri
--- a/src/corelib/io/io.pri
+++ b/src/corelib/io/io.pri
@@ -96,6 +96,9 @@ qtConfig(filesystemwatcher) {
} else:macos {
OBJECTIVE_SOURCES += io/qfilesystemwatcher_fsevents.mm
@@ -608,10 +451,10 @@ index a33ffe7..91190d4 100644
} else:qtConfig(inotify) {
SOURCES += io/qfilesystemwatcher_inotify.cpp
HEADERS += io/qfilesystemwatcher_inotify_p.h
diff --git a/qtbase/src/corelib/io/qfilesystemwatcher.cpp b/qtbase/src/corelib/io/qfilesystemwatcher.cpp
diff --git a/src/corelib/io/qfilesystemwatcher.cpp b/src/corelib/io/qfilesystemwatcher.cpp
index 96d9210..f6147de 100644
--- a/qtbase/src/corelib/io/qfilesystemwatcher.cpp
+++ b/qtbase/src/corelib/io/qfilesystemwatcher.cpp
--- a/src/corelib/io/qfilesystemwatcher.cpp
+++ b/src/corelib/io/qfilesystemwatcher.cpp
@@ -54,6 +54,8 @@
#include "qfilesystemwatcher_polling_p.h"
#if defined(Q_OS_WIN)
@@ -630,11 +473,11 @@ index 96d9210..f6147de 100644
#elif defined(USE_INOTIFY)
// there is a chance that inotify may fail on Linux pre-2.6.13 (August
// 2005), so we can't just new inotify directly.
diff --git a/qtbase/src/corelib/io/qfilesystemwatcher_haiku.cpp b/qtbase/src/corelib/io/qfilesystemwatcher_haiku.cpp
diff --git a/src/corelib/io/qfilesystemwatcher_haiku.cpp b/src/corelib/io/qfilesystemwatcher_haiku.cpp
new file mode 100644
index 0000000..8355ca8
--- /dev/null
+++ b/qtbase/src/corelib/io/qfilesystemwatcher_haiku.cpp
+++ b/src/corelib/io/qfilesystemwatcher_haiku.cpp
@@ -0,0 +1,254 @@
+/****************************************************************************
+**
@@ -890,11 +733,11 @@ index 0000000..8355ca8
+QT_END_NAMESPACE
+
+#include "moc_qfilesystemwatcher_haiku_p.cpp"
diff --git a/qtbase/src/corelib/io/qfilesystemwatcher_haiku_p.h b/qtbase/src/corelib/io/qfilesystemwatcher_haiku_p.h
diff --git a/src/corelib/io/qfilesystemwatcher_haiku_p.h b/src/corelib/io/qfilesystemwatcher_haiku_p.h
new file mode 100644
index 0000000..8a8d75a
--- /dev/null
+++ b/qtbase/src/corelib/io/qfilesystemwatcher_haiku_p.h
+++ b/src/corelib/io/qfilesystemwatcher_haiku_p.h
@@ -0,0 +1,84 @@
+/****************************************************************************
+**
@@ -990,10 +833,10 @@ Date: Tue, 16 Jun 2020 18:06:57 +1000
Subject: Don't use AF_INET6 for new sockets
diff --git a/qtbase/src/network/socket/qnativesocketengine_unix.cpp b/qtbase/src/network/socket/qnativesocketengine_unix.cpp
diff --git a/src/network/socket/qnativesocketengine_unix.cpp b/src/network/socket/qnativesocketengine_unix.cpp
index e5b9fbb..a1b1fc4 100644
--- a/qtbase/src/network/socket/qnativesocketengine_unix.cpp
+++ b/qtbase/src/network/socket/qnativesocketengine_unix.cpp
--- a/src/network/socket/qnativesocketengine_unix.cpp
+++ b/src/network/socket/qnativesocketengine_unix.cpp
@@ -265,8 +265,12 @@ bool QNativeSocketEnginePrivate::createNewSocket(QAbstractSocket::SocketType soc
}
int protocol = 0;
@@ -1017,10 +860,10 @@ Date: Mon, 5 Oct 2020 19:40:40 +1000
Subject: Disable Haswell CPU feature for plugins
diff --git a/qtbase/src/corelib/plugin/qlibrary_unix.cpp b/qtbase/src/corelib/plugin/qlibrary_unix.cpp
diff --git a/src/corelib/plugin/qlibrary_unix.cpp b/src/corelib/plugin/qlibrary_unix.cpp
index a5c72f8..cc2afac 100644
--- a/qtbase/src/corelib/plugin/qlibrary_unix.cpp
+++ b/qtbase/src/corelib/plugin/qlibrary_unix.cpp
--- a/src/corelib/plugin/qlibrary_unix.cpp
+++ b/src/corelib/plugin/qlibrary_unix.cpp
@@ -191,7 +191,7 @@ bool QLibraryPrivate::load_sys()
prefixes.append(QString());
}

View File

@@ -0,0 +1,77 @@
From d1ffd868c47c8d20f64a504f4e850f3f5c6a3423 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 11 Feb 2019 15:51:31 +1000
Subject: Fix Haiku build
diff --git a/src/3rdparty/masm/wtf/PageBlock.cpp b/src/3rdparty/masm/wtf/PageBlock.cpp
index e715ed2..1362a13 100644
--- a/src/3rdparty/masm/wtf/PageBlock.cpp
+++ b/src/3rdparty/masm/wtf/PageBlock.cpp
@@ -40,7 +40,14 @@ namespace WTF {
static size_t s_pageSize;
static size_t s_pageMask;
-#if OS(UNIX)
+#if OS(HAIKU)
+
+inline size_t systemPageSize()
+{
+ return 4096;
+}
+
+#elif OS(UNIX)
inline size_t systemPageSize()
{
diff --git a/src/3rdparty/masm/wtf/Platform.h b/src/3rdparty/masm/wtf/Platform.h
index ab1da21..5d8617e 100644
--- a/src/3rdparty/masm/wtf/Platform.h
+++ b/src/3rdparty/masm/wtf/Platform.h
@@ -418,6 +418,11 @@
#define WTF_OS_QNX 1
#endif
+/* OS(HAIKU) - Haiku */
+#if defined(__HAIKU__)
+#define WTF_OS_HAIKU 1
+#endif
+
/* OS(SOLARIS) - Solaris */
#if defined(sun) || defined(__sun)
#define WTF_OS_SOLARIS 1
@@ -452,6 +457,7 @@
|| OS(HURD) \
|| OS(INTEGRITY) \
|| OS(LINUX) \
+ || OS(HAIKU) \
|| OS(NETBSD) \
|| OS(OPENBSD) \
|| OS(QNX) \
--
2.28.0
From d50302a60710100ceed487bdbb0d9af9540e5ed7 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 15 Dec 2019 11:27:19 +1000
Subject: Enable assembler for JIT
diff --git a/src/qml/jit/qv4assemblercommon_p.h b/src/qml/jit/qv4assemblercommon_p.h
index ead1e75..58d9635 100644
--- a/src/qml/jit/qv4assemblercommon_p.h
+++ b/src/qml/jit/qv4assemblercommon_p.h
@@ -66,7 +66,7 @@ namespace QV4 {
namespace JIT {
#if defined(Q_PROCESSOR_X86_64) || defined(ENABLE_ALL_ASSEMBLERS_FOR_REFACTORING_PURPOSES)
-#if defined(Q_OS_LINUX) || defined(Q_OS_QNX) || defined(Q_OS_FREEBSD) || defined(Q_OS_DARWIN)
+#if defined(Q_OS_LINUX) || defined(Q_OS_QNX) || defined(Q_OS_FREEBSD) || defined(Q_OS_DARWIN) || defined(Q_OS_HAIKU)
class PlatformAssembler_X86_64_SysV : public JSC::MacroAssembler<JSC::MacroAssemblerX86_64>
{
--
2.28.0

View File

@@ -0,0 +1,23 @@
From 0221470b1c9027a4717c1cefdee09849e1e1da02 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Mon, 11 Feb 2019 15:55:38 +1000
Subject: disable mapbox-gl-native on Haiku.
diff --git a/src/plugins/geoservices/geoservices.pro b/src/plugins/geoservices/geoservices.pro
index b81ad34..7b642c0 100644
--- a/src/plugins/geoservices/geoservices.pro
+++ b/src/plugins/geoservices/geoservices.pro
@@ -8,7 +8,7 @@ qtConfig(geoservices_esri): SUBDIRS += esri
qtConfig(geoservices_itemsoverlay): SUBDIRS += itemsoverlay
qtConfig(geoservices_osm): SUBDIRS += osm
-qtConfig(geoservices_mapboxgl) {
+qtConfig(geoservices_mapboxgl):!haiku {
!exists(../../3rdparty/mapbox-gl-native/mapbox-gl-native.pro) {
warning("Submodule mapbox-gl-native does not exist. Run 'git submodule update --init' on qtlocation.")
} else {
--
2.28.0

View File

@@ -0,0 +1,35 @@
From 74ec545bf871171e23968f1e484a6250d46bdc51 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
Date: Mon, 11 Feb 2019 15:53:20 +1000
Subject: Add filteredDeviceFilePaths for Haiku's /dev/ports/*
diff --git a/src/serialport/qserialportinfo_unix.cpp b/src/serialport/qserialportinfo_unix.cpp
index 105d10a..80932e9 100644
--- a/src/serialport/qserialportinfo_unix.cpp
+++ b/src/serialport/qserialportinfo_unix.cpp
@@ -79,13 +79,20 @@ static QStringList filteredDeviceFilePaths()
<< QStringLiteral("cu*");
#elif defined(Q_OS_QNX)
<< QStringLiteral("ser*");
+#elif defined(Q_OS_HAIKU)
+ << QStringLiteral("*serial*")
+ << QStringLiteral("usb*");
#else
;
#endif
QStringList result;
+#if defined(Q_OS_HAIKU)
+ QDir deviceDir(QStringLiteral("/dev/ports"));
+#else
QDir deviceDir(QStringLiteral("/dev"));
+#endif
if (deviceDir.exists()) {
deviceDir.setNameFilters(deviceFileNameFilterList);
deviceDir.setFilter(QDir::Files | QDir::System | QDir::NoSymLinks);
--
2.28.0

View File

@@ -8,11 +8,141 @@ COPYRIGHT="2015-2020 The Qt Company Ltd."
LICENSE="GNU LGPL v2.1
GNU LGPL v3
FDL"
REVISION="1"
SOURCE_URI="https://download.qt.io/official_releases/qt/${portVersion%.*}/$portVersion/single/qt-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256="3a530d1b243b5dec00bc54937455471aaa3e56849d2593edb8ded07228202240"
SOURCE_DIR="qt-everywhere-src-$portVersion"
PATCHES="qt5-$portVersion.patchset"
REVISION="2"
baseURL="https://download.qt.io/official_releases/qt/${portVersion%.*}/$portVersion/submodules"
SOURCE_URI="https://github.com/qt/qt5/archive/$portVersion.tar.gz"
SOURCE_DIR="qt5-$portVersion"
SOURCE_URI_01="$baseURL/qt3d-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_01="03ed6a48c813c75296c19f5d721184ab168280b69d2656cf16f877d3d4c55c1d"
SOURCE_DIR_01="qt3d-everywhere-src-$portVersion"
PATCHES_01="qt3d-$portVersion.patchset"
SOURCE_URI_02="$baseURL/qtactiveqt-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_02="868161fee0876d17079cd5bed58d1667bf19ffd0018cbe515129f11510ad2a5c"
SOURCE_DIR_02="qtactiveqt-everywhere-src-$portVersion"
SOURCE_URI_03="$baseURL/qtandroidextras-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_03="5813278690d89a9c232eccf697fc280034de6f9f02a7c40d95ad5fcf8ac8dabd"
SOURCE_DIR_03="qtandroidextras-everywhere-src-$portVersion"
SOURCE_URI_04="$baseURL/qtbase-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_04="909fad2591ee367993a75d7e2ea50ad4db332f05e1c38dd7a5a274e156a4e0f8"
SOURCE_DIR_04="qtbase-everywhere-src-$portVersion"
PATCHES_04="qtbase-$portVersion.patchset"
SOURCE_URI_05="$baseURL/qtcharts-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_05="e0750e4195bd8a8b9758ab4d98d437edbe273cd3d289dd6a8f325df6d13f3d11"
SOURCE_DIR_05="qtcharts-everywhere-src-$portVersion"
SOURCE_URI_06="$baseURL/qtconnectivity-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_06="0380327871f76103e5b8c2a305988d76d352b6a982b3e7b3bc3cdc184c64bfa0"
SOURCE_DIR_06="qtconnectivity-everywhere-src-$portVersion"
SOURCE_URI_07="$baseURL/qtdatavis3d-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_07="226a6575d573ad78aca459709722c496c23aee526aa0c38eb7c93b0bea1eb6fd"
SOURCE_DIR_07="qtdatavis3d-everywhere-src-$portVersion"
SOURCE_URI_08="$baseURL/qtdeclarative-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_08="c600d09716940f75d684f61c5bdaced797f623a86db1627da599027f6c635651"
SOURCE_DIR_08="qtdeclarative-everywhere-src-$portVersion"
PATCHES_08="qtdeclarative-$portVersion.patchset"
SOURCE_URI_09="$baseURL/qtdoc-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_09="a47809f00f1bd690ca4e699cb32ffe7717d43da84e0167d1f562210da7714ce4"
SOURCE_DIR_09="qtdoc-everywhere-src-$portVersion"
SOURCE_URI_10="$baseURL/qtgamepad-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_10="c77611f7898326d69176ad67a9b886f617cdedc368ec29f223d63537d25b075c"
SOURCE_DIR_10="qtgamepad-everywhere-src-$portVersion"
SOURCE_URI_11="$baseURL/qtgraphicaleffects-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_11="ec8d67f64967d5046410490b549c576f9b9e8b47ec68594ae84aa8870173dfe4"
SOURCE_DIR_11="qtgraphicaleffects-everywhere-src-$portVersion"
SOURCE_URI_12="$baseURL/qtimageformats-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_12="bf8285c7ce04284527ab823ddc7cf48a1bb79131db3a7127342167f4814253d7"
SOURCE_DIR_12="qtimageformats-everywhere-src-$portVersion"
SOURCE_URI_13="$baseURL/qtlocation-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_13="984fcb09e108df49a8dac35d5ce6dffc49caafd2acb1c2f8a5173a6a21f392a0"
SOURCE_DIR_13="qtlocation-everywhere-src-$portVersion"
PATCHES_13="qtlocation-$portVersion.patchset"
SOURCE_URI_14="$baseURL/qtlottie-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_14="cec6095ab8f714e609d2ad3ea8c4fd819461ce8793adc42abe37d0f6dc432517"
SOURCE_DIR_14="qtlottie-everywhere-src-$portVersion"
SOURCE_URI_15="$baseURL/qtmacextras-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_15="6959b0f2cec71cd66800f36cab797430860e55fa33c9c23698d6a08fc2b8776e"
SOURCE_DIR_15="qtmacextras-everywhere-src-$portVersion"
SOURCE_URI_16="$baseURL/qtmultimedia-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_16="0c3758810e5131aabcf76e4965e4c18b8911af54d9edd9305d2a8278d8346df5"
SOURCE_DIR_16="qtmultimedia-everywhere-src-$portVersion"
SOURCE_URI_17="$baseURL/qtnetworkauth-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_17="fcc2ec42faa68561efa8f00cd72e662fbc06563ebc6de1dc42d96bb2997acd85"
SOURCE_DIR_17="qtnetworkauth-everywhere-src-$portVersion"
SOURCE_URI_18="$baseURL/qtpurchasing-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_18="87120d319ff2f8106e78971f7296d72a66dfe91e763d213199aea55046e93227"
SOURCE_DIR_18="qtpurchasing-everywhere-src-$portVersion"
SOURCE_URI_19="$baseURL/qtquick3d-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_19="5b0546323365ce34e4716f22f305ebb4902e222c1a0910b65ee448443c2f94bb"
SOURCE_DIR_19="qtquick3d-everywhere-src-$portVersion"
SOURCE_URI_20="$baseURL/qtquickcontrols-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_20="c393fb7384b1f047f10e91a6832cf3e6a4c2a41408b8cb2d05af2283e8549fb5"
SOURCE_DIR_20="qtquickcontrols-everywhere-src-$portVersion"
SOURCE_URI_21="$baseURL/qtquickcontrols2-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_21="671b6ce5f4b8ecc94db622d5d5fb29ef4ff92819be08e5ea55bfcab579de8919"
SOURCE_DIR_21="qtquickcontrols2-everywhere-src-$portVersion"
SOURCE_URI_22="$baseURL/qtquicktimeline-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_22="b9c247227607437acec7c7dd18ad46179d20369c9d22bdb1e9fc128dfb832a28"
SOURCE_DIR_22="qtquicktimeline-everywhere-src-$portVersion"
SOURCE_URI_23="$baseURL/qtremoteobjects-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_23="6781b6bc90888254ea77ce812736dac00c67fa4eeb3095f5cd65e4b9c15dcfc2"
SOURCE_DIR_23="qtremoteobjects-everywhere-src-$portVersion"
SOURCE_URI_24="$baseURL/qtscript-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_24="a299715369afbd1caa4d7fa2875d442eab91adcaacafce54a36922442624673e"
SOURCE_DIR_24="qtscript-everywhere-src-$portVersion"
SOURCE_URI_25="$baseURL/qtscxml-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_25="60b9590b9a41c60cee7b8a8c8410ee4625f0389c1ff8d79883ec5a985638a7dc"
SOURCE_DIR_25="qtscxml-everywhere-src-$portVersion"
SOURCE_URI_26="$baseURL/qtsensors-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_26="3f0011f9e9942cad119146b54d960438f4568a22a274cdad4fae06bb4e0e4839"
SOURCE_DIR_26="qtsensors-everywhere-src-$portVersion"
SOURCE_URI_27="$baseURL/qtserialbus-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_27="aeeb7e5c0d3f8503215b22e1a84c0002ca67cf63862f6e3c6ef44a67ca31bd88"
SOURCE_DIR_27="qtserialbus-everywhere-src-$portVersion"
SOURCE_URI_28="$baseURL/qtserialport-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_28="59c559d748417306bc1b2cf2315c1e63eed011ace38ad92946af71f23e2ef79d"
SOURCE_DIR_28="qtserialport-everywhere-src-$portVersion"
PATCHES_28="qtserialport-$portVersion.patchset"
SOURCE_URI_29="$baseURL/qtspeech-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_29="c810fb9eecb08026434422a32e79269627f3bc2941be199e86ec410bdfe883f5"
SOURCE_DIR_29="qtspeech-everywhere-src-$portVersion"
SOURCE_URI_30="$baseURL/qtsvg-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_30="8bc3c2c1bc2671e9c67d4205589a8309b57903721ad14c60ea21a5d06acb585e"
SOURCE_DIR_30="qtsvg-everywhere-src-$portVersion"
SOURCE_URI_31="$baseURL/qttools-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_31="c189d0ce1ff7c739db9a3ace52ac3e24cb8fd6dbf234e49f075249b38f43c1cc"
SOURCE_DIR_31="qttools-everywhere-src-$portVersion"
SOURCE_URI_32="$baseURL/qttranslations-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_32="d5788e86257b21d5323f1efd94376a213e091d1e5e03b45a95dd052b5f570db8"
SOURCE_DIR_32="qttranslations-everywhere-src-$portVersion"
SOURCE_URI_33="$baseURL/qtvirtualkeyboard-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_33="9a3193913be30f09a896e3b8c2f9696d2e9b3f88a63ae9ca8c97a2786b68cf55"
SOURCE_DIR_33="qtvirtualkeyboard-everywhere-src-$portVersion"
SOURCE_URI_34="$baseURL/qtwayland-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_34="193732229ff816f3aaab9a5e2f6bed71ddddbf1988ce003fe8dd84a92ce9aeb5"
SOURCE_DIR_34="qtwayland-everywhere-src-$portVersion"
SOURCE_URI_35="$baseURL/qtwebchannel-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_35="127fe79c43b386713f151ed7d411cd81e45e29f9c955584f29736f78c9303ec1"
SOURCE_DIR_35="qtwebchannel-everywhere-src-$portVersion"
#SOURCE_URI_36="$baseURL/qtwebengine-everywhere-src-$portVersion.tar.xz"
#CHECKSUM_SHA256_36="c8afca0e43d84f7bd595436fbe4d13a5bbdb81ec5104d605085d07545b6f91e0"
#SOURCE_DIR_36="qtwebengine-everywhere-src-$portVersion"
SOURCE_URI_37="$baseURL/qtwebglplugin-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_37="81e782b517ed29e10bea1aa90c9f59274c98a910f2c8b105fa78368a36b41446"
SOURCE_DIR_37="qtwebglplugin-everywhere-src-$portVersion"
SOURCE_URI_38="$baseURL/qtwebsockets-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_38="a0b42d85dd34ff6e2d23400e02f83d8b85bcd80e60efd1521d12d9625d4a233f"
SOURCE_DIR_38="qtwebsockets-everywhere-src-$portVersion"
SOURCE_URI_39="$baseURL/qtwebview-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_39="be9f46167e4977ead5ef5ecf883fdb812a4120f2436383583792f65557e481e7"
SOURCE_DIR_39="qtwebview-everywhere-src-$portVersion"
SOURCE_URI_40="$baseURL/qtwinextras-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_40="65b8272005dec00791ab7d81ab266d1e3313a3bbd8e54e546d984cf4c4ab550e"
SOURCE_DIR_40="qtwinextras-everywhere-src-$portVersion"
SOURCE_URI_41="$baseURL/qtx11extras-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_41="7014702ee9a644a5a93da70848ac47c18851d4f8ed622b29a72eed9282fc6e3e"
SOURCE_DIR_41="qtx11extras-everywhere-src-$portVersion"
SOURCE_URI_42="$baseURL/qtxmlpatterns-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256_42="76ea2162a7c349188d7e7e4f6c77b78e8a205494c90fee3cea3487a1ae2cf2fa"
SOURCE_DIR_42="qtxmlpatterns-everywhere-src-$portVersion"
ADDITIONAL_FILES="
Assistant.rdef.in
Designer.rdef.in
@@ -563,6 +693,14 @@ BUILD()
{
export LLVM_INSTALL_DIR="$(llvm-config --prefix)"
_fdirs=$(ls -d /sources-*/*)
for _dir in $_fdirs; do
_module=${_dir//*\/}
[ ! -L "${_dir}" ] && [ -d "${_module//-*}" ] && rmdir "${_module//-*}"
[ ! -L "${_dir}" ] && mv "$_dir" "${_module//-*}" \
&& ln -srf "${_module//-*}" "$_dir"
done
CPPFLAGS=-D_BSD_SOURCE ./configure \
-prefix $prefix \
-bindir $binDir \