diff --git a/common/shlibs b/common/shlibs index 26bb003ce97..1f0de4c37ad 100644 --- a/common/shlibs +++ b/common/shlibs @@ -1859,6 +1859,11 @@ libQt53DRender.so.5 qt5-3d-5.6.0_1 libQt53DQuick.so.5 qt5-3d-5.6.0_1 libQt53DQuickInput.so.5 qt5-3d-5.6.0_1 libQt53DQuickRender.so.5 qt5-3d-5.6.0_1 +libQt53DExtras.so.5 qt5-3d-5.6.0_1 +libQt53DQuickExtras.so.5 qt5-3d-5.6.0_1 +libQt5Charts.so.5 qt5-charts-5.7.1_1 +libQt5DataVisualization.so.5 qt5-datavis3d-5.7.1_1 +libQt5Gamepad.so.5 qt5-gamepad-5.7.1_1 libQt5Nfc.so.5 qt5-connectivity-5.6.0_1 libQt5WebView.so.5 qt5-webview-5.6.0_1 libQt5Qml.so.5 qt5-declarative-5.6.0_1 @@ -1866,8 +1871,8 @@ libQt5Quick.so.5 qt5-declarative-5.6.0_1 libQt5QuickTest.so.5 qt5-declarative-5.6.0_1 libQt5QuickWidgets.so.5 qt5-declarative-5.6.0_1 libQt5QuickParticles.so.5 qt5-declarative-5.6.0_1 -libQt5Enginio.so.1 qt5-engineio-5.6.0_1 -libEnginio.so.1 qt5-enginio-5.6.0_1 +libQt5QuickControls2.so.5 qt5-quickcontrols2-5.7.1_1 +libQt5QuickTemplates2.so.5 qt5-quickcontrols2-5.7.1_1 libQt5Positioning.so.5 qt5-location-5.6.0_1 libQt5Location.so.5 qt5-location-5.6.0_1 libQt5Multimedia.so.5 qt5-multimedia-5.6.0_1 @@ -1875,6 +1880,7 @@ libQt5MultimediaQuick_p.so.5 qt5-multimedia-5.6.0_1 libQt5MultimediaWidgets.so.5 qt5-multimedia-5.6.0_1 libqgsttools_p.so.1 qt5-multimedia-5.6.0_1 libQt5LabsTemplates.so.5 qt5-quickcontrols2-5.6.0_1 +libQt5Scxml.so.5 qt5-scxml-5.7.1_1 libQt5Script.so.5 qt5-script-5.6.0_1 libQt5ScriptTools.so.5 qt5-script-5.6.0_1 libQt5Sensors.so.5 qt5-sensors-5.6.0_1 @@ -1886,6 +1892,7 @@ libQt5Help.so.5 qt5-tools-5.6.0_1 libQt5Designer.so.5 qt5-tools-5.6.0_1 libQt5DesignerComponents.so.5 qt5-tools-5.6.0_1 libQt5WaylandClient.so.5 qt5-wayland-5.6.0_1 +libQt5WaylandCompositor.so.5 qt5-wayland-5.6.0_1 libQt5WebChannel.so.5 qt5-webchannel-5.6.0_1 libQt5WebEngineCore.so.5 qt5-webengine-5.6.0_1 libQt5WebEngine.so.5 qt5-webengine-5.6.0_1 @@ -1906,6 +1913,7 @@ libQt5OpenGL.so.5 qt5-5.6.0_1 libQt5PrintSupport.so.5 qt5-5.6.0_1 libQt5XcbQpa.so.5 qt5-5.6.0_1 libQt5EglDeviceIntegration.so.5 qt5-5.6.0_1 +libQt5EglFsKmsSupport.so.5 qt5-5.7.1_1 libQt5WebKit.so.5 qt5-webkit-5.6.0_1 libQt5WebKitWidgets.so.5 qt5-webkit-5.6.0_1 libx265.so.95 x265-2.1_1 diff --git a/srcpkgs/qt5-enginio b/srcpkgs/qt5-charts similarity index 100% rename from srcpkgs/qt5-enginio rename to srcpkgs/qt5-charts diff --git a/srcpkgs/qt5-enginio-devel b/srcpkgs/qt5-charts-devel similarity index 100% rename from srcpkgs/qt5-enginio-devel rename to srcpkgs/qt5-charts-devel diff --git a/srcpkgs/qt5-plugin-gtk b/srcpkgs/qt5-datavis3d similarity index 100% rename from srcpkgs/qt5-plugin-gtk rename to srcpkgs/qt5-datavis3d diff --git a/srcpkgs/qt5-datavis3d-devel b/srcpkgs/qt5-datavis3d-devel new file mode 120000 index 00000000000..75793eb6664 --- /dev/null +++ b/srcpkgs/qt5-datavis3d-devel @@ -0,0 +1 @@ +qt5 \ No newline at end of file diff --git a/srcpkgs/qt5-gamepad b/srcpkgs/qt5-gamepad new file mode 120000 index 00000000000..75793eb6664 --- /dev/null +++ b/srcpkgs/qt5-gamepad @@ -0,0 +1 @@ +qt5 \ No newline at end of file diff --git a/srcpkgs/qt5-gamepad-devel b/srcpkgs/qt5-gamepad-devel new file mode 120000 index 00000000000..75793eb6664 --- /dev/null +++ b/srcpkgs/qt5-gamepad-devel @@ -0,0 +1 @@ +qt5 \ No newline at end of file diff --git a/srcpkgs/qt5-scxml b/srcpkgs/qt5-scxml new file mode 120000 index 00000000000..75793eb6664 --- /dev/null +++ b/srcpkgs/qt5-scxml @@ -0,0 +1 @@ +qt5 \ No newline at end of file diff --git a/srcpkgs/qt5-scxml-devel b/srcpkgs/qt5-scxml-devel new file mode 120000 index 00000000000..75793eb6664 --- /dev/null +++ b/srcpkgs/qt5-scxml-devel @@ -0,0 +1 @@ +qt5 \ No newline at end of file diff --git a/srcpkgs/qt5-virtualkeyboard b/srcpkgs/qt5-virtualkeyboard new file mode 120000 index 00000000000..75793eb6664 --- /dev/null +++ b/srcpkgs/qt5-virtualkeyboard @@ -0,0 +1 @@ +qt5 \ No newline at end of file diff --git a/srcpkgs/qt5-virtualkeyboard-devel b/srcpkgs/qt5-virtualkeyboard-devel new file mode 120000 index 00000000000..75793eb6664 --- /dev/null +++ b/srcpkgs/qt5-virtualkeyboard-devel @@ -0,0 +1 @@ +qt5 \ No newline at end of file diff --git a/srcpkgs/qt5/patches/fix-gcc6-std_string.patch b/srcpkgs/qt5/patches/fix-gcc6-std_string.patch deleted file mode 100644 index b81d32a8476..00000000000 --- a/srcpkgs/qt5/patches/fix-gcc6-std_string.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- qtwebengine/src/3rdparty/chromium/ui/events/ozone/evdev/touch_evdev_debug_buffer.h 2016-08-26 10:48:27.000000000 +0200 -+++ qtwebengine/src/3rdparty/chromium/ui/events/ozone/evdev/touch_evdev_debug_buffer.h 2016-11-02 12:17:07.784214681 +0100 -@@ -6,6 +6,7 @@ - #define UI_EVENTS_OZONE_EVDEV_TOUCH_DEBUG_BUFFER_H_ - - #include -+#include - #include - - #include "base/memory/scoped_ptr.h" diff --git a/srcpkgs/qt5/patches/hack-compiler_version_echo.patch b/srcpkgs/qt5/patches/hack-compiler_version_echo.patch new file mode 100644 index 00000000000..e7e2fe17c9a --- /dev/null +++ b/srcpkgs/qt5/patches/hack-compiler_version_echo.patch @@ -0,0 +1,12 @@ +--- qtwebengine/src/3rdparty/chromium/build/compiler_version.py 2016-11-07 15:46:18.000000000 +0100 ++++ qtwebengine/src/3rdparty/chromium/build/compiler_version.py 2016-12-21 17:11:17.027999078 +0100 +@@ -116,6 +116,9 @@ + if mode == 'host': + environments = ['CXX_host'] + environments; + compiler = GetEnvironFallback(environments, 'c++') ++ # Hack: remove leading "@echo compiling xyz && " from compiler string ++ if compiler.startswith("@echo"): ++ compiler = compiler[compiler.find("&&")+3:] + + if compiler: + compiler_version = GetVersion(compiler, tool) diff --git a/srcpkgs/qt5/patches/libressl-compat.patch b/srcpkgs/qt5/patches/libressl-compat.patch index 90ddc536261..4d829bf9c08 100644 --- a/srcpkgs/qt5/patches/libressl-compat.patch +++ b/srcpkgs/qt5/patches/libressl-compat.patch @@ -49,3 +49,28 @@ to disable that code for libressl. aeadParams.pAAD = (unsigned char *) additionalData; aeadParams.ulAADLen = additionalDataLen; aeadParams.ulTagLen = tagSize; +--- qtbase/src/network/ssl/qsslsocket_openssl_symbols_p.h 2016-12-01 09:17:04.000000000 +0100 ++++ qtbase/src/network/ssl/qsslsocket_openssl_symbols_p.h 2016-12-19 23:09:01.362450092 +0100 +@@ -489,9 +489,9 @@ + int q_EC_curve_nist2nid(const char *name); + #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L + #endif // OPENSSL_NO_EC +-#if OPENSSL_VERSION_NUMBER >= 0x10002000L ++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && defined(SSL_CTRL_GET_SERVER_TEMP_KEY) + #define q_SSL_get_server_tmp_key(ssl, key) q_SSL_ctrl((ssl), SSL_CTRL_GET_SERVER_TMP_KEY, 0, (char *)key) +-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L ++#endif // (OPENSSL_VERSION_NUMBER >= 0x10002000L) && defined(SSL_CTRL_GET_SERVER_TEMP_KEY) + + // PKCS#12 support + int q_PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, STACK_OF(X509) **ca); +--- qtbase/src/network/ssl/qsslsocket_openssl.cpp 2016-12-01 09:17:04.000000000 +0100 ++++ qtbase/src/network/ssl/qsslsocket_openssl.cpp 2016-12-19 23:12:19.584374209 +0100 +@@ -1587,7 +1587,7 @@ + } + #endif // OPENSSL_VERSION_NUMBER >= 0x1000100fL ... + +-#if OPENSSL_VERSION_NUMBER >= 0x10002000L ++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && defined(SSL_CTRL_GET_SERVER_TMP_KEY) + if (q_SSLeay() >= 0x10002000L && mode == QSslSocket::SslClientMode) { + EVP_PKEY *key; + if (q_SSL_get_server_tmp_key(ssl, &key)) diff --git a/srcpkgs/qt5/patches/fix-execinfo.patch b/srcpkgs/qt5/patches/qt-musl-execinfo.patch similarity index 100% rename from srcpkgs/qt5/patches/fix-execinfo.patch rename to srcpkgs/qt5/patches/qt-musl-execinfo.patch diff --git a/srcpkgs/qt5/patches/qt-musl-mallinfo.patch b/srcpkgs/qt5/patches/qt-musl-mallinfo.patch index 170064b4006..df249422882 100644 --- a/srcpkgs/qt5/patches/qt-musl-mallinfo.patch +++ b/srcpkgs/qt5/patches/qt-musl-mallinfo.patch @@ -1,32 +1,22 @@ -In musl libc there is no struct mallinfo and no function mallinf() - ---- qtwebengine/src/3rdparty/chromium/content/child/content_child_helpers.cc 2015-06-05 04:52:18.502230985 +0200 -+++ qtwebengine/src/3rdparty/chromium/content/child/content_child_helpers.cc 2015-06-05 04:52:06.712231020 +0200 -@@ -15,7 +15,7 @@ - - namespace content { - --#if defined(OS_LINUX) || defined(OS_ANDROID) -+#if (defined(OS_LINUX) && defined(__GLIBC__)) || defined(OS_ANDROID) - size_t GetMemoryUsageKB() { - struct mallinfo minfo = mallinfo(); - uint64_t mem_usage = ---- qtwebengine/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc 2016-03-03 15:48:36.000000000 +0100 -+++ qtwebengine/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc 2016-03-17 05:09:41.409425897 +0100 -@@ -29,6 +29,7 @@ - // Called at trace dump point time. Creates a snapshot the memory counters for - // the current process. - bool MallocDumpProvider::OnMemoryDump(ProcessMemoryDump* pmd) { -+#if defined(__GLIBC__) +--- qtwebengine/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc 2016-11-07 15:46:18.000000000 +0100 ++++ qtwebengine/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc 2016-12-20 03:02:28.260383021 +0100 +@@ -61,7 +61,7 @@ + // fixed quantum, so the excess region will not be resident. + // See crrev.com/1531463004 for detailed explanation. + resident_size = stats.max_size_in_use; +-#else ++#elif defined(__GLIBC__) struct mallinfo info = mallinfo(); DCHECK_GE(info.arena + info.hblkhd, info.uordblks); -@@ -46,7 +47,7 @@ - MemoryAllocatorDump* inner_dump = pmd->CreateAllocatorDump(kAllocatedObjects); - inner_dump->AddScalar(MemoryAllocatorDump::kNameSize, - MemoryAllocatorDump::kUnitsBytes, info.uordblks); -- -+#endif - return true; - } +--- qtwebengine/src/3rdparty/chromium/content/child/content_child_helpers.cc 2016-11-07 15:46:18.000000000 +0100 ++++ qtwebengine/src/3rdparty/chromium/content/child/content_child_helpers.cc 2016-12-20 04:15:06.214331244 +0100 +@@ -18,7 +18,7 @@ + namespace content { + +-#if defined(OS_LINUX) || defined(OS_ANDROID) ++#if (defined(OS_LINUX) || defined(OS_ANDROID)) && defined(__GLIBC__) + size_t GetMemoryUsageKB() { + struct mallinfo minfo = mallinfo(); + uint64_t mem_usage = diff --git a/srcpkgs/qt5/patches/qt-musl-resolve.patch b/srcpkgs/qt5/patches/qt-musl-resolve.patch index 34da0a34fd0..edfceb79f30 100644 --- a/srcpkgs/qt5/patches/qt-musl-resolve.patch +++ b/srcpkgs/qt5/patches/qt-musl-resolve.patch @@ -1,29 +1,26 @@ -The musl resolver does not define res_ninit() and res_nclose() functions -like glibc does. A wrapper for musl to mimick GLIBC's function should do -the trick. - ---- qtwebengine/src/3rdparty/chromium/net/base/dns_reloader.cc 2015-06-03 12:34:26.979892244 +0200 -+++ qtwebengine/src/3rdparty/chromium/net/base/dns_reloader.cc 2015-06-03 12:32:07.091899808 +0200 -@@ -8,6 +8,9 @@ - !defined(OS_ANDROID) - +--- qtwebengine/src/3rdparty/chromium/net/dns/dns_reloader.cc 2016-11-07 15:46:18.000000000 +0100 ++++ qtwebengine/src/3rdparty/chromium/net/dns/dns_reloader.cc 2016-12-20 03:33:11.749059656 +0100 +@@ -9,6 +9,10 @@ + #include -+#if defined(OS_LINUX) && !defined(__GLIBC__) -+#include "net/dns/resolv_compat.h" -+#endif - - #include "base/basictypes.h" - #include "base/lazy_instance.h" ---- qtwebengine/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc 2015-02-17 05:58:45.000000000 +0100 -+++ qtwebengine/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc 2015-06-04 22:22:01.104300355 +0200 -@@ -21,6 +21,10 @@ - #include "net/dns/notify_watcher_mac.h" - #include "net/dns/serial_worker.h" - -+#if defined(OS_LINUX) && !defined(__GLIBC__) -+#include "net/dns/resolv_compat.h" + ++#if !defined(__GLIBC__) ++#include "resolv_compat.h" +#endif + - #if defined(OS_MACOSX) && !defined(OS_IOS) - #include "net/dns/dns_config_watcher_mac.h" - #endif + #include "base/lazy_instance.h" + #include "base/logging.h" + #include "base/macros.h" +--- qtwebengine/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc 2016-11-07 15:46:18.000000000 +0100 ++++ qtwebengine/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc 2016-12-20 03:40:07.671953098 +0100 +@@ -6,6 +6,10 @@ + + #include + ++#if !defined(__GLIBC__) ++#include "resolv_compat.h" ++#endif ++ + #include "base/bind.h" + #include "base/files/file.h" + #include "base/files/file_path.h" diff --git a/srcpkgs/qt5/patches/qt-musl-set_thread_name_np.patch b/srcpkgs/qt5/patches/qt-musl-set_thread_name_np.patch new file mode 100644 index 00000000000..0d81a351ba4 --- /dev/null +++ b/srcpkgs/qt5/patches/qt-musl-set_thread_name_np.patch @@ -0,0 +1,11 @@ +--- qtwebengine/src/3rdparty/chromium/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c 2016-11-07 15:46:18.000000000 +0100 ++++ qtwebengine/src/3rdparty/chromium/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c 2016-12-20 07:41:38.408483734 +0100 +@@ -71,7 +71,7 @@ + #if defined(__Userspace_os_Darwin) + pthread_setname_np(name); + #endif +-#if defined(__Userspace_os_Linux) ++#if defined(__Userspace_os_Linux) && defined(__GLIBC__) + pthread_setname_np(pthread_self(), name); + #endif + #if defined(__Userspace_os_FreeBSD) diff --git a/srcpkgs/qt5/patches/qtwebengine-5.7.0-icu58.patch b/srcpkgs/qt5/patches/qtwebengine-5.7.0-icu58.patch new file mode 100644 index 00000000000..5ca07f54225 --- /dev/null +++ b/srcpkgs/qt5/patches/qtwebengine-5.7.0-icu58.patch @@ -0,0 +1,50 @@ +--- qtwebengine/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 2016-11-15 17:07:38.680665385 -0800 ++++ qtwebengine/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 2016-11-15 17:12:17.564001354 -0800 +@@ -26,6 +26,9 @@ + #include "wtf/StdLibExtras.h" + #include "wtf/text/CharacterNames.h" + ++#include ++#include ++ + namespace blink { + + unsigned numGraphemeClusters(const String& string) +@@ -122,13 +125,18 @@ + { B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), 0, B(0, 0, 0, 0, 0, 0, 0, 0), 0, 0, 0, B(0, 0, 0, 0, 0, 0, 0, 0), 0, 0, 0, B(0, 0, 0, 0, 0, 0, 0, 0) }, // DEL + }; + ++#if U_ICU_VERSION_MAJOR_NUM >= 58 ++#define BA_LB_COUNT (U_LB_COUNT - 3) ++#else ++#define BA_LB_COUNT U_LB_COUNT ++#endif + // Line breaking table for CSS word-break: break-all. This table differs from + // asciiLineBreakTable in: + // - Indices are Line Breaking Classes defined in UAX#14 Unicode Line Breaking + // Algorithm: http://unicode.org/reports/tr14/#DescriptionOfProperties + // - 1 indicates additional break opportunities. 0 indicates to fallback to + // normal line break, not "prohibit break." +-static const unsigned char breakAllLineBreakClassTable[][U_LB_COUNT / 8 + 1] = { ++static const unsigned char breakAllLineBreakClassTable[][BA_LB_COUNT / 8 + 1] = { + // XX AI AL B2 BA BB BK CB CL CM CR EX GL HY ID IN IS LF NS NU OP PO PR QU SA SG SP SY ZW NL WJ H2 H3 JL JT JV CP CJ HL RI + { B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0) }, // XX + { B(0, 1, 1, 0, 1, 0, 0, 0), B(0, 0, 0, 0, 0, 1, 0, 0), B(0, 0, 0, 1, 1, 0, 1, 0), B(1, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 1, 0) }, // AI +@@ -178,7 +186,7 @@ + #undef AL + + static_assert(WTF_ARRAY_LENGTH(asciiLineBreakTable) == asciiLineBreakTableLastChar - asciiLineBreakTableFirstChar + 1, "asciiLineBreakTable should be consistent"); +-static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == U_LB_COUNT, "breakAllLineBreakClassTable should be consistent"); ++static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == BA_LB_COUNT, "breakAllLineBreakClassTable should be consistent"); + + static inline bool shouldBreakAfter(UChar lastCh, UChar ch, UChar nextCh) + { +@@ -209,7 +217,7 @@ + + static inline bool shouldBreakAfterBreakAll(ULineBreak lastLineBreak, ULineBreak lineBreak) + { +- if (lineBreak >= 0 && lineBreak < U_LB_COUNT && lastLineBreak >= 0 && lastLineBreak < U_LB_COUNT) { ++ if (lineBreak >= 0 && lineBreak < BA_LB_COUNT && lastLineBreak >= 0 && lastLineBreak < BA_LB_COUNT) { + const unsigned char* tableRow = breakAllLineBreakClassTable[lastLineBreak]; + return tableRow[lineBreak / 8] & (1 << (lineBreak % 8)); + } diff --git a/srcpkgs/qt5/patches/qtwebengine-nss.patch b/srcpkgs/qt5/patches/qtwebengine-nss.patch new file mode 100644 index 00000000000..39a9016a283 --- /dev/null +++ b/srcpkgs/qt5/patches/qtwebengine-nss.patch @@ -0,0 +1,29 @@ +--- qtwebengine/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc 2015-12-10 18:17:21.000000000 +0100 ++++ qtwebengine/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc 2016-01-14 +17:11:38.432633534 +0100 +@@ -57,6 +57,10 @@ + #include "net/ssl/ssl_platform_key.h" + #endif + ++#if defined(USE_NSS_CERTS) || defined(OS_IOS) ++#include "net/cert_net/nss_ocsp.h" ++#endif ++ + namespace net { + + namespace { +@@ -795,6 +799,14 @@ + DCHECK(!ssl_); + DCHECK(!transport_bio_); + ++#if defined(USE_NSS_CERTS) || defined(OS_IOS) ++ if (ssl_config_.cert_io_enabled) { ++ // TODO(davidben): Move this out of SSLClientSocket. See ++ // https://crbug.com/539520. ++ EnsureNSSHttpIOInit(); ++ } ++#endif ++ + SSLContext* context = SSLContext::GetInstance(); + crypto::OpenSSLErrStackTracer err_tracer(FROM_HERE); + diff --git a/srcpkgs/qt5/template b/srcpkgs/qt5/template index 290fbd58d67..96605ca1fa1 100644 --- a/srcpkgs/qt5/template +++ b/srcpkgs/qt5/template @@ -1,14 +1,14 @@ # Template file for 'qt5' pkgname=qt5 -version=5.6.2 -revision=9 +version=5.7.1 +revision=1 wrksrc="qt-everywhere-opensource-src-${version}" homepage="http://qt.io/" short_desc="A cross-platform application and UI framework (QT5)" maintainer="Juan RP " license="GPL-3, LGPL-2.1" distfiles="http://download.qt.io/official_releases/qt/${version%.*}/${version}/single/qt-everywhere-opensource-src-${version}.tar.xz" -checksum=83e61bfc78bba230770704e828fa4d23fe3bbfdcfa4a8f5db37ce149731d89b3 +checksum=46ebca977deb629c5e69c2545bc5fe13f7e40012e5e2e451695c583bd33502fa if [ "${XBPS_MACHINE%%-musl}" = i686 ]; then nodebug=yes # prevent OOM @@ -19,7 +19,8 @@ makedepends=" fontconfig-devel libXi-devel libXv-devel libXinerama-devel libXrandr-devel libXcursor-devel libXScrnSaver-devel dbus-devel glib-devel icu-devel cups-devel libjpeg-turbo-devel sqlite-devel alsa-lib-devel tiff-devel - libmng-devel libxshmfence-devel libSM-devel xcb-util-keysyms-devel + libmng-devel libsrtp-devel libvpx-devel snappy-devel minizip-devel + libxshmfence-devel libSM-devel xcb-util-keysyms-devel xcb-util-image-devel xcb-util-renderutil-devel xcb-util-wm-devel libXcomposite-devel libwebp-devel libxkbcommon-devel harfbuzz-devel gtk+-devel mtdev-devel freetds-devel libmysqlclient-devel postgresql-libs-devel @@ -27,11 +28,14 @@ makedepends=" pciutils-devel nss-devel libcap-devel libinput-devel libproxy-devel libxcb-devel libxkbcommon-devel tslib-devel wayland-devel" depends="qtchooser" -replaces="qt5-doc<5.6.0 qt5-quick1<5.6.0 qt5-quick1-devel<5.6.0 qt5-webkit<5.6.0 qt5-webkit-devel<5.6.0" +replaces="qt5-doc<5.6.0 qt5-quick1<5.6.0 qt5-quick1-devel<5.6.0 qt5-webkit<5.6.0 qt5-webkit-devel<5.6.0 + qt5-enginio<5.7.1 qt5-enginio-devel<5.7.1 qt5-plugin-gtk<5.7.1" # Work around SSLv3_{client,server}_method missing in libressl-2.3.3 CFLAGS="-DOPENSSL_NO_SSL3_METHOD" CXXFLAGS="-DOPENSSL_NO_SSL3_METHOD" +# Required for musl libc +LDFLAGS="-pthread" if [ -n "$CROSS_BUILD" ]; then # Need some devel packages in the host to build qmake, moc, uic, rcc @@ -40,14 +44,18 @@ if [ -n "$CROSS_BUILD" ]; then fi _cleanup_wrksrc_leak() { - # Replace ${wrksrc} in cmake files - sed -i ${PKGDESTDIR}/usr/lib/cmake/*/*.cmake \ - -e "s;${wrksrc}/qtbase/host;/usr/lib/qt5;g" \ - -e "s;devices/void-${XBPS_CROSS_TRIPLET}-g++;linux-g++;g" - # Replace ${wrksrc} in pkgconfig files - sed -i ${PKGDESTDIR}/usr/lib/pkgconfig/*.pc \ - -e "s;${wrksrc}/qtbase/host;/usr/lib/qt5;g" \ - -e "s;devices/void-${XBPS_CROSS_TRIPLET}-g++;linux-g++;g" + if [ -d "${PKGDESTDIR}/usr/lib/cmake" ]; then + # Replace ${wrksrc} in cmake files + sed -i ${PKGDESTDIR}/usr/lib/cmake/*/*.cmake \ + -e "s;${wrksrc}/qtbase/host;/usr/lib/qt5;g" \ + -e "s;devices/void-${XBPS_CROSS_TRIPLET}-g++;linux-g++;g" + fi + if [ -d "${PKGDESTDIR}/usr/lib/pkgconfig" ]; then + # Replace ${wrksrc} in pkgconfig files + sed -i ${PKGDESTDIR}/usr/lib/pkgconfig/*.pc \ + -e "s;${wrksrc}/qtbase/host;/usr/lib/qt5;g" \ + -e "s;devices/void-${XBPS_CROSS_TRIPLET}-g++;linux-g++;g" + fi # Remove QMAKE_PRL_BUILD_DIR from linker hint files find ${PKGDESTDIR} -iname "*.prl" -exec sed -i "{}" \ -e "/^QMAKE_PRL_BUILD_DIR/d" \ @@ -208,12 +216,6 @@ do_configure() { if [ "${XBPS_MACHINE%%-musl}" = i686 ]; then LDFLAGS+=" -Wl,--no-keep-memory" # else OOM on 32-bit fi - unset CPP AR AS RANLIB - export LD="${CXX}" - export QMAKE_CFLAGS="${CFLAGS}" - export QMAKE_CXXFLAGS="${CXXFLAGS}" - export QMAKE_LFLAGS="${LDFLAGS}" - ./configure ${opts} else spec=void-${XBPS_CROSS_TRIPLET}-g++ _create_config ${spec} @@ -223,30 +225,29 @@ do_configure() { opts+=" -sysroot ${XBPS_CROSS_BASE}" opts+=" -hostprefix host" opts+=" -extprefix /usr" - - export CC="$XBPS_CC" - export CXX="$XBPS_CXX" - export CPP="$XBPS_CPP" - export LD="$XBPS_CXX" export CFLAGS="$XBPS_CFLAGS" export CXXFLAGS="$XBPS_CXXFLAGS" export CPPFLAGS="$XBPS_CPPFLAGS" export LDFLAGS="$XBPS_LDFLAGS" - export AR="ar" - export AS="as" - export NM="nm" - export OBJDUMP="objdump" - export STRIP="strip" - export RANLIB="ranlib" - ./configure ${opts} fi + + export CC="$XBPS_CC" + export CXX="$XBPS_CXX" + export CPP="$XBPS_CPP" + export LD="$XBPS_CXX" + export AR="ar" + export AS="as" + export NM="nm" + export OBJDUMP="objdump" + export STRIP="strip" + export RANLIB="ranlib" + ./configure ${opts} } do_build() { export LD_LIBRARY_PATH="${wrksrc}/qtbase/lib:${wrksrc}/qttools/lib:${LD_LIBRARY_PATH}" if [ -z "$CROSS_BUILD" ]; then - export LD="$CXX" - unset CPP AR AS RANLIB + unset CC CXX LD CPP AR AS RANLIB make ${makejobs} else export CC="$XBPS_CC" @@ -270,6 +271,9 @@ do_build() { do_install() { local f base + if [ -z "$CROSS_BUILD" ]; then + unset CC CXX LD CPP AR AS RANLIB + fi cd ${wrksrc}/qtbase make INSTALL_ROOT=${DESTDIR} install @@ -359,6 +363,51 @@ qt5-canvas3d_package() { } } +qt5-charts-devel_package() { + short_desc+=" - Charts component (development)" + depends="qt5-charts-${version}_${revision} qt5-declarative-devel-${version}_${revision}" + pkg_install() { + _install_devel qtcharts + } +} + +qt5-charts_package() { + short_desc+=" - Charts component" + pkg_install() { + _install_subpkg qtcharts + } +} + +qt5-gamepad-devel_package() { + short_desc+=" - Gamepad component (development)" + depends="qt5-gamepad-${version}_${revision} qt5-declarative-devel-${version}_${revision}" + pkg_install() { + _install_devel qtgamepad + } +} + +qt5-gamepad_package() { + short_desc+=" - Gamepad component" + pkg_install() { + _install_subpkg qtgamepad + } +} + +qt5-datavis3d-devel_package() { + short_desc+=" - 3D data visualization (development)" + depends="qt5-datavis3d-${version}_${revision} qt5-declarative-devel-${version}_${revision}" + pkg_install() { + _install_devel qtdatavis3d + } +} + +qt5-datavis3d_package() { + short_desc+=" - 3D data visualization" + pkg_install() { + _install_subpkg qtdatavis3d + } +} + qt5-connectivity-devel_package() { short_desc+=" - Connectivity component (development)" depends="qt5-connectivity-${version}_${revision} qt5-devel-${version}_${revision}" @@ -389,21 +438,6 @@ qt5-declarative_package() { } } -qt5-enginio-devel_package() { - short_desc+=" - Enginio component (development)" - depends="qt5-enginio-${version}_${revision} qt5-devel-${version}_${revision}" - pkg_install() { - _install_devel qtenginio - } -} - -qt5-enginio_package() { - short_desc+=" - Enginio component" - pkg_install() { - _install_subpkg qtenginio - } -} - qt5-examples_package() { short_desc+=" - Examples" depends="qt5-devel-${version}_${revision} qt5-qmake-${version}_${revision}" @@ -491,6 +525,21 @@ qt5-script_package() { } } +qt5-scxml-devel_package() { + short_desc+=" - SCXML model integration (development)" + depends="qt5-scxml-${version}_${revision} qt5-devel-${version}_${revision}" + pkg_install() { + _install_devel qtscxml + } +} + +qt5-scxml_package() { + short_desc+=" - SCXML model integration" + pkg_install() { + _install_subpkg qtscxml + } +} + qt5-sensors-devel_package() { short_desc+=" - Sensors component (development)" depends="qt5-sensors-${version}_${revision} qt5-devel-${version}_${revision}" @@ -551,6 +600,21 @@ qt5-svg_package() { } } +qt5-virtualkeyboard-devel_package() { + short_desc+=" - Virtual keyboard (development)" + depends="qt5-virtualkeyboard-${version}_${revision} qt5-declarative-devel-${version}_${revision}" + pkg_install() { + _install_devel qtvirtualkeyboard + } +} + +qt5-virtualkeyboard_package() { + short_desc+=" - Virtual keyboard" + pkg_install() { + _install_subpkg qtvirtualkeyboard + } +} + qt5-wayland-devel_package() { short_desc+=" - Wayland component (development)" depends="qt5-wayland-${version}_${revision} qt5-devel-${version}_${revision}" @@ -711,10 +775,10 @@ qt5-devel_package() { depends="zlib-devel libressl-devel>=2.1.4 libXext-devel libXrender-devel fontconfig-devel libglib-devel MesaLib-devel mtdev-devel dbus-devel icu-devel qt5-${version}_${revision} - qt5-plugin-gtk-${version}_${revision} qt5-qmake-${version}_${revision} qt5-host-tools-${version}_${revision}" short_desc+=" - Development files" + # qt5-enginio-devel is gone pkg_install() { vmove usr/include vmove usr/lib/*.a @@ -725,13 +789,6 @@ qt5-devel_package() { } } -qt5-plugin-gtk_package() { - short_desc+=" - GTK+ theme plugin" - pkg_install() { - vmove usr/lib/qt5/plugins/platformthemes/libqgtk2.so - } -} - qt5-plugin-odbc_package() { short_desc+=" - ODBC plugin" pkg_install() {