From 8895ea3b63c7ab959794acef93548c1c9df9307e Mon Sep 17 00:00:00 2001 From: Andreas Müller Date: Sun, 14 Apr 2019 13:59:30 +0200 Subject: qtbase: Fix build with recent oe-core/pseudo on hosts with glibc >= 2.28 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Recently pseudo changed to not support reanameeat2 as glibc wrapper [1]. This causes massive failures at do_install [2] on qtbase. To work around tell Qt build configuration not to use ranameat2 independent of glibc version. Target qtbase does not require this adjustment - there is no pseudo on target. [1] https://git.openembedded.org/openembedded-core/commit/?id=0fb257121b68f38b40c078150db8f7d0979b7ea5 [2] https://github.com/meta-qt5/meta-qt5/issues/187 Signed-off-by: Andreas Müller --- ...-version-for-renameat2-statx-on-non-boots.patch | 38 ------------ .../qtbase/0013-Disable-ltcg-for-host_build.patch | 26 ++++++++ .../qtbase/0014-Disable-ltcg-for-host_build.patch | 26 -------- ...gExtras.cmake.in-cope-with-variable-path-.patch | 66 ++++++++++++++++++++ ...gExtras.cmake.in-cope-with-variable-path-.patch | 66 -------------------- ...-corelib-Include-sys-types.h-for-uint32_t.patch | 27 +++++++++ ...KE_CXX.COMPILER_MACROS-for-clang-on-linux.patch | 41 +++++++++++++ ...-corelib-Include-sys-types.h-for-uint32_t.patch | 27 --------- .../qtbase/0017-Always-build-uic-and-qvkgen.patch | 28 +++++++++ ...KE_CXX.COMPILER_MACROS-for-clang-on-linux.patch | 41 ------------- .../qtbase/0018-Always-build-uic-and-qvkgen.patch | 28 --------- ...18-Avoid-renameeat2-for-native-sdk-builds.patch | 70 ++++++++++++++++++++++ 12 files changed, 258 insertions(+), 226 deletions(-) delete mode 100644 recipes-qt/qt5/qtbase/0013-Check-glibc-version-for-renameat2-statx-on-non-boots.patch create mode 100644 recipes-qt/qt5/qtbase/0013-Disable-ltcg-for-host_build.patch delete mode 100644 recipes-qt/qt5/qtbase/0014-Disable-ltcg-for-host_build.patch create mode 100644 recipes-qt/qt5/qtbase/0014-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch delete mode 100644 recipes-qt/qt5/qtbase/0015-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch create mode 100644 recipes-qt/qt5/qtbase/0015-corelib-Include-sys-types.h-for-uint32_t.patch create mode 100644 recipes-qt/qt5/qtbase/0016-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch delete mode 100644 recipes-qt/qt5/qtbase/0016-corelib-Include-sys-types.h-for-uint32_t.patch create mode 100644 recipes-qt/qt5/qtbase/0017-Always-build-uic-and-qvkgen.patch delete mode 100644 recipes-qt/qt5/qtbase/0017-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch delete mode 100644 recipes-qt/qt5/qtbase/0018-Always-build-uic-and-qvkgen.patch create mode 100644 recipes-qt/qt5/qtbase/0018-Avoid-renameeat2-for-native-sdk-builds.patch (limited to 'recipes-qt/qt5/qtbase') diff --git a/recipes-qt/qt5/qtbase/0013-Check-glibc-version-for-renameat2-statx-on-non-boots.patch b/recipes-qt/qt5/qtbase/0013-Check-glibc-version-for-renameat2-statx-on-non-boots.patch deleted file mode 100644 index 53dc5ea7..00000000 --- a/recipes-qt/qt5/qtbase/0013-Check-glibc-version-for-renameat2-statx-on-non-boots.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 3dcb42b38dd8bfbb8b509149ee9e870b80fa0658 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= -Date: Tue, 21 Aug 2018 00:29:06 +0200 -Subject: [PATCH] Check glibc version for renameat2/statx on non bootstrapped - build -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Upstream-Status: Pending - -Signed-off-by: Andreas Müller ---- - src/corelib/io/qfilesystemengine_unix.cpp | 11 +++++++++++ - 1 file changed, 11 insertions(+) - -diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp -index b2d81066db..b90e3dc15d 100644 ---- a/src/corelib/io/qfilesystemengine_unix.cpp -+++ b/src/corelib/io/qfilesystemengine_unix.cpp -@@ -93,6 +93,17 @@ extern "C" NSString *NSTemporaryDirectory(); - #ifndef FICLONE - # define FICLONE _IOW(0x94, 9, int) - #endif -+ -+// renameat2/statx features for non bootstrapped build -+#ifndef QT_BOOTSTRAPPED -+#ifdef __GLIBC_PREREQ -+# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1) -+# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1) -+#else -+# define QT_FEATURE_renameat2 -1 -+# define QT_FEATURE_statx -1 -+#endif -+#endif - #endif - - #if defined(Q_OS_ANDROID) diff --git a/recipes-qt/qt5/qtbase/0013-Disable-ltcg-for-host_build.patch b/recipes-qt/qt5/qtbase/0013-Disable-ltcg-for-host_build.patch new file mode 100644 index 00000000..142db442 --- /dev/null +++ b/recipes-qt/qt5/qtbase/0013-Disable-ltcg-for-host_build.patch @@ -0,0 +1,26 @@ +From 9dc5c503d37edb7aea8f401ff3d760a87091da3f Mon Sep 17 00:00:00 2001 +From: Samuli Piippo +Date: Tue, 23 Oct 2018 09:54:57 +0300 +Subject: [PATCH] Disable ltcg for host_build + +debug-prefix-map does not work correctly for static libraries +when using ltcg, and since host_build compilations link agaist +the libQt5Bootstrap.a library, it breaks source file packaging +into debug packages. + +Task-number: QTBUG-71230 +Upstream-Status: Inappropriate [embedded specific] +--- + mkspecs/features/ltcg.prf | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mkspecs/features/ltcg.prf b/mkspecs/features/ltcg.prf +index ccf0226272..482e5b573d 100644 +--- a/mkspecs/features/ltcg.prf ++++ b/mkspecs/features/ltcg.prf +@@ -1,4 +1,4 @@ +-CONFIG(release, debug|release) { ++CONFIG(release, debug|release):!host_build { + # We need fat object files when creating static libraries on some platforms + # so the linker will know to load a particular object from the library + # in the first place. On others, we have special ar and nm to create the symbol diff --git a/recipes-qt/qt5/qtbase/0014-Disable-ltcg-for-host_build.patch b/recipes-qt/qt5/qtbase/0014-Disable-ltcg-for-host_build.patch deleted file mode 100644 index 142db442..00000000 --- a/recipes-qt/qt5/qtbase/0014-Disable-ltcg-for-host_build.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 9dc5c503d37edb7aea8f401ff3d760a87091da3f Mon Sep 17 00:00:00 2001 -From: Samuli Piippo -Date: Tue, 23 Oct 2018 09:54:57 +0300 -Subject: [PATCH] Disable ltcg for host_build - -debug-prefix-map does not work correctly for static libraries -when using ltcg, and since host_build compilations link agaist -the libQt5Bootstrap.a library, it breaks source file packaging -into debug packages. - -Task-number: QTBUG-71230 -Upstream-Status: Inappropriate [embedded specific] ---- - mkspecs/features/ltcg.prf | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mkspecs/features/ltcg.prf b/mkspecs/features/ltcg.prf -index ccf0226272..482e5b573d 100644 ---- a/mkspecs/features/ltcg.prf -+++ b/mkspecs/features/ltcg.prf -@@ -1,4 +1,4 @@ --CONFIG(release, debug|release) { -+CONFIG(release, debug|release):!host_build { - # We need fat object files when creating static libraries on some platforms - # so the linker will know to load a particular object from the library - # in the first place. On others, we have special ar and nm to create the symbol diff --git a/recipes-qt/qt5/qtbase/0014-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch b/recipes-qt/qt5/qtbase/0014-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch new file mode 100644 index 00000000..1f990f24 --- /dev/null +++ b/recipes-qt/qt5/qtbase/0014-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch @@ -0,0 +1,66 @@ +From 21bcae84788d1b14a754bc56a1adc43abf888e84 Mon Sep 17 00:00:00 2001 +From: Max Krummenacher +Date: Sat, 27 Oct 2018 12:29:31 +0000 +Subject: [PATCH] Qt5GuiConfigExtras.cmake.in: cope with variable path to + sysroot + +EGL is configured to need an include path into the recipe-specific sysroot. +However users of the cmake file will have a different absolute path than that +used when creating the cmake file from cmake.in in qtbase. + +Change to store the relative path within the sysroot and then prepend the +currently used sysroot in the _qt5gui_find_extra_libs macro. + +Upstream-Status: Inappropriate [OE specific] + +Signed-off-by: Max Krummenacher +--- + src/gui/Qt5GuiConfigExtras.cmake.in | 22 ++++++++-------------- + 1 file changed, 8 insertions(+), 14 deletions(-) + +diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in +index 07869efd7d..671aa82167 100644 +--- a/src/gui/Qt5GuiConfigExtras.cmake.in ++++ b/src/gui/Qt5GuiConfigExtras.cmake.in +@@ -75,21 +75,15 @@ unset(_qt5gui_OPENGL_INCLUDE_DIR CACHE) + + macro(_qt5gui_find_extra_libs Name Libs LibDir IncDirs) + set(Qt5Gui_${Name}_LIBRARIES) +-!!IF !mac +- set(Qt5Gui_${Name}_INCLUDE_DIRS ${IncDirs}) +-!!ELSE ++ + foreach(_dir ${IncDirs}) +- if (EXISTS ${_dir}) +- list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_dir}) +- else() +- find_path(_actual_dir ${_dir}) # Look in sdk directories +- if (_actual_dir) +- list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_actual_dir}) +- endif() +- unset(_actual_dir CACHE) ++ find_path(_actual_dir ${_dir}) ++ if (_actual_dir) ++ list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_actual_dir}) + endif() ++ unset(_actual_dir CACHE) + endforeach() +-!!ENDIF ++ + foreach(_lib ${Libs}) + string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _cmake_lib_name ${_lib}) + if (NOT TARGET Qt5::Gui_${_cmake_lib_name} AND NOT _Qt5Gui_${_cmake_lib_name}_LIBRARY_DONE) +@@ -158,11 +152,11 @@ endmacro() + + + !!IF !isEmpty(CMAKE_EGL_LIBS) +-_qt5gui_find_extra_libs(EGL \"$$CMAKE_EGL_LIBS\" \"$$CMAKE_EGL_LIBDIR\" \"$$CMAKE_EGL_INCDIRS\") ++_qt5gui_find_extra_libs(EGL \"$$CMAKE_EGL_LIBS\" \"$$CMAKE_EGL_LIBDIR\" \"$$replace(CMAKE_EGL_INCDIRS,$$re_escape($$PKG_CONFIG_SYSROOT_DIR),)\") + !!ENDIF + + !!IF !isEmpty(CMAKE_OPENGL_LIBS) +-_qt5gui_find_extra_libs(OPENGL \"$$CMAKE_OPENGL_LIBS\" \"$$CMAKE_OPENGL_LIBDIR\" \"$$CMAKE_OPENGL_INCDIRS\") ++_qt5gui_find_extra_libs(OPENGL \"$$CMAKE_OPENGL_LIBS\" \"$$CMAKE_OPENGL_LIBDIR\" \"$$replace(CMAKE_OPENGL_INCDIRS,$$re_escape($$PKG_CONFIG_SYSROOT_DIR),)\") + + !!ENDIF + diff --git a/recipes-qt/qt5/qtbase/0015-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch b/recipes-qt/qt5/qtbase/0015-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch deleted file mode 100644 index 1f990f24..00000000 --- a/recipes-qt/qt5/qtbase/0015-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 21bcae84788d1b14a754bc56a1adc43abf888e84 Mon Sep 17 00:00:00 2001 -From: Max Krummenacher -Date: Sat, 27 Oct 2018 12:29:31 +0000 -Subject: [PATCH] Qt5GuiConfigExtras.cmake.in: cope with variable path to - sysroot - -EGL is configured to need an include path into the recipe-specific sysroot. -However users of the cmake file will have a different absolute path than that -used when creating the cmake file from cmake.in in qtbase. - -Change to store the relative path within the sysroot and then prepend the -currently used sysroot in the _qt5gui_find_extra_libs macro. - -Upstream-Status: Inappropriate [OE specific] - -Signed-off-by: Max Krummenacher ---- - src/gui/Qt5GuiConfigExtras.cmake.in | 22 ++++++++-------------- - 1 file changed, 8 insertions(+), 14 deletions(-) - -diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in -index 07869efd7d..671aa82167 100644 ---- a/src/gui/Qt5GuiConfigExtras.cmake.in -+++ b/src/gui/Qt5GuiConfigExtras.cmake.in -@@ -75,21 +75,15 @@ unset(_qt5gui_OPENGL_INCLUDE_DIR CACHE) - - macro(_qt5gui_find_extra_libs Name Libs LibDir IncDirs) - set(Qt5Gui_${Name}_LIBRARIES) --!!IF !mac -- set(Qt5Gui_${Name}_INCLUDE_DIRS ${IncDirs}) --!!ELSE -+ - foreach(_dir ${IncDirs}) -- if (EXISTS ${_dir}) -- list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_dir}) -- else() -- find_path(_actual_dir ${_dir}) # Look in sdk directories -- if (_actual_dir) -- list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_actual_dir}) -- endif() -- unset(_actual_dir CACHE) -+ find_path(_actual_dir ${_dir}) -+ if (_actual_dir) -+ list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_actual_dir}) - endif() -+ unset(_actual_dir CACHE) - endforeach() --!!ENDIF -+ - foreach(_lib ${Libs}) - string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _cmake_lib_name ${_lib}) - if (NOT TARGET Qt5::Gui_${_cmake_lib_name} AND NOT _Qt5Gui_${_cmake_lib_name}_LIBRARY_DONE) -@@ -158,11 +152,11 @@ endmacro() - - - !!IF !isEmpty(CMAKE_EGL_LIBS) --_qt5gui_find_extra_libs(EGL \"$$CMAKE_EGL_LIBS\" \"$$CMAKE_EGL_LIBDIR\" \"$$CMAKE_EGL_INCDIRS\") -+_qt5gui_find_extra_libs(EGL \"$$CMAKE_EGL_LIBS\" \"$$CMAKE_EGL_LIBDIR\" \"$$replace(CMAKE_EGL_INCDIRS,$$re_escape($$PKG_CONFIG_SYSROOT_DIR),)\") - !!ENDIF - - !!IF !isEmpty(CMAKE_OPENGL_LIBS) --_qt5gui_find_extra_libs(OPENGL \"$$CMAKE_OPENGL_LIBS\" \"$$CMAKE_OPENGL_LIBDIR\" \"$$CMAKE_OPENGL_INCDIRS\") -+_qt5gui_find_extra_libs(OPENGL \"$$CMAKE_OPENGL_LIBS\" \"$$CMAKE_OPENGL_LIBDIR\" \"$$replace(CMAKE_OPENGL_INCDIRS,$$re_escape($$PKG_CONFIG_SYSROOT_DIR),)\") - - !!ENDIF - diff --git a/recipes-qt/qt5/qtbase/0015-corelib-Include-sys-types.h-for-uint32_t.patch b/recipes-qt/qt5/qtbase/0015-corelib-Include-sys-types.h-for-uint32_t.patch new file mode 100644 index 00000000..660ab051 --- /dev/null +++ b/recipes-qt/qt5/qtbase/0015-corelib-Include-sys-types.h-for-uint32_t.patch @@ -0,0 +1,27 @@ +From b7fc603ef5eed592cacdb1f4763ba56cca38458f Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Thu, 6 Dec 2018 11:47:52 -0800 +Subject: [PATCH] corelib: Include sys/types.h for uint32_t + +This has been includes indirectly on glibc/linux systems +via inttypes.h -> stdint.h -> sys/types.h but it breaks on +musl where this indirect include chain does not exist. + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + src/corelib/global/qnumeric_p.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/corelib/global/qnumeric_p.h b/src/corelib/global/qnumeric_p.h +index 4a225b2599..4414865c71 100644 +--- a/src/corelib/global/qnumeric_p.h ++++ b/src/corelib/global/qnumeric_p.h +@@ -55,6 +55,7 @@ + #include "QtCore/private/qglobal_p.h" + #include + #include ++#include + + #if defined(Q_CC_MSVC) + # include diff --git a/recipes-qt/qt5/qtbase/0016-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch b/recipes-qt/qt5/qtbase/0016-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch new file mode 100644 index 00000000..69ff9604 --- /dev/null +++ b/recipes-qt/qt5/qtbase/0016-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch @@ -0,0 +1,41 @@ +From 4ef9f792bcee9a64f5f0eae2103d807227b6ab24 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Thu, 6 Dec 2018 15:06:20 -0800 +Subject: [PATCH] Define QMAKE_CXX.COMPILER_MACROS for clang on linux + +This is required when using clang for compiler, fixes +mkspecs/features/toolchain.prf:215: Variable QMAKE_CXX.COMPILER_MACROS is not defined. + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + mkspecs/features/toolchain.prf | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/mkspecs/features/toolchain.prf b/mkspecs/features/toolchain.prf +index 9c3a64aa8b..d0758ab778 100644 +--- a/mkspecs/features/toolchain.prf ++++ b/mkspecs/features/toolchain.prf +@@ -41,6 +41,13 @@ defineReplace(qtVariablesFromGCC) { + return($$ret) + } + ++defineReplace(qtVariablesFromCLANG) { ++ ret = $$system("$$1 $$2 -E $$system_quote($$PWD/data/macros.cpp) \ ++ <$$QMAKE_SYSTEM_NULL_DEVICE 2>$$QMAKE_SYSTEM_NULL_DEVICE", lines, ec) ++ !equals(ec, 0): qtCompilerErrror($$1, $$ret) ++ return($$ret) ++} ++ + isEmpty($${target_prefix}.COMPILER_MACROS) { + msvc { + clang_cl { +@@ -60,6 +67,8 @@ isEmpty($${target_prefix}.COMPILER_MACROS) { + } else { + vars = $$qtVariablesFromMSVC($$QMAKE_CXX) + } ++ } else: clang { ++ vars = $$qtVariablesFromCLANG($$QMAKE_CXX, $$QMAKE_CXXFLAGS) + } else: gcc|ghs { + vars = $$qtVariablesFromGCC($$QMAKE_CXX) + } diff --git a/recipes-qt/qt5/qtbase/0016-corelib-Include-sys-types.h-for-uint32_t.patch b/recipes-qt/qt5/qtbase/0016-corelib-Include-sys-types.h-for-uint32_t.patch deleted file mode 100644 index 660ab051..00000000 --- a/recipes-qt/qt5/qtbase/0016-corelib-Include-sys-types.h-for-uint32_t.patch +++ /dev/null @@ -1,27 +0,0 @@ -From b7fc603ef5eed592cacdb1f4763ba56cca38458f Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Thu, 6 Dec 2018 11:47:52 -0800 -Subject: [PATCH] corelib: Include sys/types.h for uint32_t - -This has been includes indirectly on glibc/linux systems -via inttypes.h -> stdint.h -> sys/types.h but it breaks on -musl where this indirect include chain does not exist. - -Upstream-Status: Pending -Signed-off-by: Khem Raj ---- - src/corelib/global/qnumeric_p.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/corelib/global/qnumeric_p.h b/src/corelib/global/qnumeric_p.h -index 4a225b2599..4414865c71 100644 ---- a/src/corelib/global/qnumeric_p.h -+++ b/src/corelib/global/qnumeric_p.h -@@ -55,6 +55,7 @@ - #include "QtCore/private/qglobal_p.h" - #include - #include -+#include - - #if defined(Q_CC_MSVC) - # include diff --git a/recipes-qt/qt5/qtbase/0017-Always-build-uic-and-qvkgen.patch b/recipes-qt/qt5/qtbase/0017-Always-build-uic-and-qvkgen.patch new file mode 100644 index 00000000..f85530ea --- /dev/null +++ b/recipes-qt/qt5/qtbase/0017-Always-build-uic-and-qvkgen.patch @@ -0,0 +1,28 @@ +From cd331cf6aca8aef21d202cd0c541757e10f070e4 Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Sat, 16 Nov 2013 00:32:30 +0100 +Subject: [PATCH] Always build uic and qvkgen + +Even if we are not building gui or widgets. This tool is needed later +as a native tool when compiling the target. + +Change-Id: I257668ac28c22b192e7ec7736e6c23fa3be6bab6 +Signed-off-by: Mikko Levonmaa +Signed-off-by: Martin Jansa +--- + src/src.pro | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/src.pro b/src/src.pro +index 1c76a2e46f..fbd4014fb3 100644 +--- a/src/src.pro ++++ b/src/src.pro +@@ -232,7 +232,7 @@ qtConfig(gui) { + } + } + } +-SUBDIRS += src_plugins ++SUBDIRS += src_plugins src_tools_uic src_tools_qvkgen + + nacl: SUBDIRS -= src_network src_testlib + diff --git a/recipes-qt/qt5/qtbase/0017-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch b/recipes-qt/qt5/qtbase/0017-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch deleted file mode 100644 index 69ff9604..00000000 --- a/recipes-qt/qt5/qtbase/0017-Define-QMAKE_CXX.COMPILER_MACROS-for-clang-on-linux.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 4ef9f792bcee9a64f5f0eae2103d807227b6ab24 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Thu, 6 Dec 2018 15:06:20 -0800 -Subject: [PATCH] Define QMAKE_CXX.COMPILER_MACROS for clang on linux - -This is required when using clang for compiler, fixes -mkspecs/features/toolchain.prf:215: Variable QMAKE_CXX.COMPILER_MACROS is not defined. - -Upstream-Status: Pending -Signed-off-by: Khem Raj ---- - mkspecs/features/toolchain.prf | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/mkspecs/features/toolchain.prf b/mkspecs/features/toolchain.prf -index 9c3a64aa8b..d0758ab778 100644 ---- a/mkspecs/features/toolchain.prf -+++ b/mkspecs/features/toolchain.prf -@@ -41,6 +41,13 @@ defineReplace(qtVariablesFromGCC) { - return($$ret) - } - -+defineReplace(qtVariablesFromCLANG) { -+ ret = $$system("$$1 $$2 -E $$system_quote($$PWD/data/macros.cpp) \ -+ <$$QMAKE_SYSTEM_NULL_DEVICE 2>$$QMAKE_SYSTEM_NULL_DEVICE", lines, ec) -+ !equals(ec, 0): qtCompilerErrror($$1, $$ret) -+ return($$ret) -+} -+ - isEmpty($${target_prefix}.COMPILER_MACROS) { - msvc { - clang_cl { -@@ -60,6 +67,8 @@ isEmpty($${target_prefix}.COMPILER_MACROS) { - } else { - vars = $$qtVariablesFromMSVC($$QMAKE_CXX) - } -+ } else: clang { -+ vars = $$qtVariablesFromCLANG($$QMAKE_CXX, $$QMAKE_CXXFLAGS) - } else: gcc|ghs { - vars = $$qtVariablesFromGCC($$QMAKE_CXX) - } diff --git a/recipes-qt/qt5/qtbase/0018-Always-build-uic-and-qvkgen.patch b/recipes-qt/qt5/qtbase/0018-Always-build-uic-and-qvkgen.patch deleted file mode 100644 index f85530ea..00000000 --- a/recipes-qt/qt5/qtbase/0018-Always-build-uic-and-qvkgen.patch +++ /dev/null @@ -1,28 +0,0 @@ -From cd331cf6aca8aef21d202cd0c541757e10f070e4 Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Sat, 16 Nov 2013 00:32:30 +0100 -Subject: [PATCH] Always build uic and qvkgen - -Even if we are not building gui or widgets. This tool is needed later -as a native tool when compiling the target. - -Change-Id: I257668ac28c22b192e7ec7736e6c23fa3be6bab6 -Signed-off-by: Mikko Levonmaa -Signed-off-by: Martin Jansa ---- - src/src.pro | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/src.pro b/src/src.pro -index 1c76a2e46f..fbd4014fb3 100644 ---- a/src/src.pro -+++ b/src/src.pro -@@ -232,7 +232,7 @@ qtConfig(gui) { - } - } - } --SUBDIRS += src_plugins -+SUBDIRS += src_plugins src_tools_uic src_tools_qvkgen - - nacl: SUBDIRS -= src_network src_testlib - diff --git a/recipes-qt/qt5/qtbase/0018-Avoid-renameeat2-for-native-sdk-builds.patch b/recipes-qt/qt5/qtbase/0018-Avoid-renameeat2-for-native-sdk-builds.patch new file mode 100644 index 00000000..ea0cb2be --- /dev/null +++ b/recipes-qt/qt5/qtbase/0018-Avoid-renameeat2-for-native-sdk-builds.patch @@ -0,0 +1,70 @@ +From 6bd6e1b5dea4364c9b4b42fd198b289c095b364b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Sun, 14 Apr 2019 13:27:58 +0200 +Subject: [PATCH] Avoid renameeat2 for native(sdk) builds +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Recently pseudo changed to not support reanameeat2 as glibc wrapper [1]. This +causes massive failures at do_install [2] on qtbase. + +To work around tell Qt build configuration not to use ranameet2 independent +of glibc version. + +[1] https://git.openembedded.org/openembedded-core/commit/?id=0fb257121b68f38b40c078150db8f7d0979b7ea5 +[2] https://github.com/meta-qt5/meta-qt5/issues/187 + +Upstream-Status: Inappropriate [OE-specific] + +Signed-off-by: Andreas Müller +--- + src/corelib/global/qconfig-bootstrapped.h | 4 ++-- + src/corelib/io/qfilesystemengine_unix.cpp | 10 ---------- + 2 files changed, 2 insertions(+), 12 deletions(-) + +diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h +index dfcc3c9c7f..30166fe41c 100644 +--- a/src/corelib/global/qconfig-bootstrapped.h ++++ b/src/corelib/global/qconfig-bootstrapped.h +@@ -100,14 +100,14 @@ + #define QT_FEATURE_process -1 + #define QT_FEATURE_regularexpression -1 + #ifdef __GLIBC_PREREQ +-# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1) ++# define QT_FEATURE_renameat2 -1 + #else + # define QT_FEATURE_renameat2 -1 + #endif + #define QT_FEATURE_sharedmemory -1 + #define QT_FEATURE_slog2 -1 + #ifdef __GLIBC_PREREQ +-# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1) ++# define QT_FEATURE_statx -1 + #else + # define QT_FEATURE_statx -1 + #endif +diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp +index b2d81066db..d1783ebdf3 100644 +--- a/src/corelib/io/qfilesystemengine_unix.cpp ++++ b/src/corelib/io/qfilesystemengine_unix.cpp +@@ -1248,16 +1248,6 @@ bool QFileSystemEngine::renameFile(const QFileSystemEntry &source, const QFileSy + if (Q_UNLIKELY(srcPath.isEmpty() || tgtPath.isEmpty())) + return emptyFileEntryWarning(), false; + +-#if defined(RENAME_NOREPLACE) && QT_CONFIG(renameat2) +- if (renameat2(AT_FDCWD, srcPath, AT_FDCWD, tgtPath, RENAME_NOREPLACE) == 0) +- return true; +- +- // We can also get EINVAL for some non-local filesystems. +- if (errno != EINVAL) { +- error = QSystemError(errno, QSystemError::StandardLibraryError); +- return false; +- } +-#endif + #if defined(Q_OS_DARWIN) && defined(RENAME_EXCL) + if (renameatx_np(AT_FDCWD, srcPath, AT_FDCWD, tgtPath, RENAME_EXCL) == 0) + return true; +-- +2.20.1 + -- cgit v1.2.3-54-g00ecf