From f8f96d0fa1845365a1a7f1cd8be235fb1a625be8 Mon Sep 17 00:00:00 2001 From: Kimmo Ollila Date: Fri, 25 Jan 2019 08:56:08 +0200 Subject: Fix OpenGL library paths on INTEGRITY QC Snapdragon 820 After 521a85395da1a2728902816c072ec46bcb0ad380 configure doesn't find OpenGL libraries from QMAKE_LIBDIR, hence we use QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBDIR_EGL instead. Task-number: QTBUG-73136 Change-Id: Iaeac46000c5d684f601741cbef91ce745ceb4ea2 Reviewed-by: Janne Koskinen --- mkspecs/devices/integrity-armv8-msm8996au/qmake.conf | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/devices/integrity-armv8-msm8996au/qmake.conf b/mkspecs/devices/integrity-armv8-msm8996au/qmake.conf index e78bde54b9..7fc6c6aafc 100644 --- a/mkspecs/devices/integrity-armv8-msm8996au/qmake.conf +++ b/mkspecs/devices/integrity-armv8-msm8996au/qmake.conf @@ -33,9 +33,6 @@ gl_lib_directory = $$(GL_LIB_DIR) isEmpty(gl_lib_directory): \ error("This qmakespec requires $GL_LIB_DIR to be set") -QMAKE_LIBDIR += $$(QCLIBS_DIR)/base -QMAKE_LIBDIR += $$(QCLIBS_DIR)/multimedia/display - QMAKE_INCDIR += $$(QC_MULTIMEDIA_INC_DIR) QMAKE_LIBS_EGL += -lESXEGL_Adreno -lESXGLESv2_Adreno -ladreno_utils -lGSLUser -lOSUser -lpanel -livfs -lposix -lpmem -ltzbsp -lpaged_alloc -lglnext-llvm -lopenwfd -lplanedef -lmmosallibrary @@ -51,7 +48,12 @@ QMAKE_LFLAGS += -bigswitch # OpenGL libraries have a dependency on libEGL QMAKE_INCDIR_EGL = $$(GL_INC_DIR) QMAKE_LIBDIR_EGL = $$(GL_LIB_DIR) +QMAKE_LIBDIR_EGL += $$(QCLIBS_DIR)/base +QMAKE_LIBDIR_EGL += $$(QCLIBS_DIR)/multimedia/display + QMAKE_INCDIR_OPENGL_ES2 = $$(GL_INC_DIR) QMAKE_LIBDIR_OPENGL_ES2 = $$(GL_LIB_DIR) +QMAKE_LIBDIR_OPENGL_ES2 += $$(QCLIBS_DIR)/base +QMAKE_LIBDIR_OPENGL_ES2 += $$(QCLIBS_DIR)/multimedia/display load(qt_config) -- cgit v1.2.3 From 63891267c1fe2e483fa305de9102891448c52981 Mon Sep 17 00:00:00 2001 From: Janne Koskinen Date: Fri, 21 Dec 2018 10:25:21 +0100 Subject: Disable NEON flags from Integrity compiler Integrity assembler doesn't understand NEON assembly statements. Compiler enables _ARM_NEON_ and _ARM_NEON to indicate that NEON intrinsics are available. _ARM_NEON_ and _ARM_NEON needs to be disabled to skip handwritten assembly code paths in Qt.Auto- vectorization is enabled without the flags enabled. Task-number: QTBUG-72716 Change-Id: I84cfbf98bd2af47740a79f4b300c1801017ee22c Reviewed-by: Tuukka Turunen Reviewed-by: Kimmo Ollila Reviewed-by: Timo Aarnipuro Reviewed-by: Allan Sandfeld Jensen --- mkspecs/common/ghs-integrity-armv8.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/common/ghs-integrity-armv8.conf b/mkspecs/common/ghs-integrity-armv8.conf index e454cfd245..ee4ce458de 100644 --- a/mkspecs/common/ghs-integrity-armv8.conf +++ b/mkspecs/common/ghs-integrity-armv8.conf @@ -17,8 +17,8 @@ os_directory = $$(INTEGRITY_DIR) isEmpty(os_directory): \ error("This qmakespec requires $INTEGRITY_DIR to be set") -QMAKE_CC = cxintarm64 -bsp $$bsp_name -os_dir $$os_directory -non_shared -QMAKE_CXX = cxintarm64 -bsp $$bsp_name -os_dir $$os_directory -non_shared +QMAKE_CC = cxintarm64 -U__ARM_NEON__ -U__ARM_NEON -bsp $$bsp_name -os_dir $$os_directory -non_shared +QMAKE_CXX = cxintarm64 -U__ARM_NEON__ -U__ARM_NEON -bsp $$bsp_name -os_dir $$os_directory -non_shared QMAKE_LINK = $$QMAKE_CXX QMAKE_AR = $$QMAKE_CXX -archive -o -- cgit v1.2.3 From 3a9240428cca2478166f8f005cab663e7846285b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= Date: Tue, 27 Nov 2018 21:54:19 +0100 Subject: Wasm: disable resources_big MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Errors out with “No data signature found”. Change-Id: Ia9a38e8c71aef4e090494ed4754f4c14e913b092 Reviewed-by: Oswald Buddenhagen Reviewed-by: hjk --- mkspecs/features/resources.prf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mkspecs') diff --git a/mkspecs/features/resources.prf b/mkspecs/features/resources.prf index 48e9f83885..bb2a55b93d 100644 --- a/mkspecs/features/resources.prf +++ b/mkspecs/features/resources.prf @@ -108,7 +108,7 @@ rcc.name = RCC ${QMAKE_FILE_IN} rcc.depend_command = $$QMAKE_RCC_DEP -list $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN} rcc.CONFIG += add_inputs_as_makefile_deps dep_lines -!resources_big|ltcg|macx-xcode|contains(TEMPLATE, "vc.*") { +!resources_big|ltcg|macx-xcode|wasm|contains(TEMPLATE, "vc.*") { rcc.output = $$RCC_DIR/$${first(QMAKE_MOD_RCC)}_${QMAKE_FILE_BASE}$${first(QMAKE_EXT_CPP)} rcc.commands = $$QMAKE_RCC $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT} -- cgit v1.2.3 From 11ae0e772cccd3028771c1380f077c605224cc19 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Wed, 23 Jan 2019 13:03:44 +0100 Subject: Consume the -skip option in qtbase/configure ...and yield a warning that -skip has no effect in a qtbase build. This is consistent with configure's help output and enables us to always pass "-skip qtwhatnot", whether we're calling top-level or qtbase configure. Change-Id: Ie5b0791a6000d1d78b1367658ad86a92b2ec6a6a Fixes: QTBUG-71253 Reviewed-by: Oliver Wolff Reviewed-by: Kai Koehne --- mkspecs/features/qt_configure.prf | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'mkspecs') diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf index c45439c3ef..9998d6971c 100644 --- a/mkspecs/features/qt_configure.prf +++ b/mkspecs/features/qt_configure.prf @@ -333,6 +333,15 @@ defineTest(qtConfParseCommandLine) { type = boolean } + isEmpty(type):contains(opt, "skip") { + isEmpty(skipOptionWarningAdded) { + qtConfAddWarning("Command line option -skip is only effective in top-level builds.") + skipOptionWarningAdded = 1 + } + $$qtConfGetNextCommandlineArg() + next() + } + isEmpty(type) { qtConfAddError("Unknown command line option '$$c'.") return() -- cgit v1.2.3 From c2b0bca98429853bcd1f91dff5ae44742b48bc1f Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Thu, 24 Jan 2019 15:06:19 +0100 Subject: configure: Respect -continue in qtConfParseCommandLine If configure is called with -continue, it should not stop processing command line arguments after encountering an invalid one. Example: configure ... -continue -quack -no-feature-gui would ignore everything after -quack. Change-Id: Ia5f0cb13414c9c0c7246ff0c72f8e935fe6dca3c Fixes: QTBUG-72912 Reviewed-by: Lars Knoll --- mkspecs/features/qt_configure.prf | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'mkspecs') diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf index 9998d6971c..7ca65c92b3 100644 --- a/mkspecs/features/qt_configure.prf +++ b/mkspecs/features/qt_configure.prf @@ -344,7 +344,10 @@ defineTest(qtConfParseCommandLine) { isEmpty(type) { qtConfAddError("Unknown command line option '$$c'.") - return() + equals(config.input.continue, yes): \ + next() + else: \ + return() } call = "qtConfCommandline_$${type}" -- cgit v1.2.3 From 5d181961ea28da07128384aa5144c67d07f87a3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= Date: Wed, 16 Jan 2019 14:26:02 +0100 Subject: macOS: Don't check for stale SDK unless target needs to be remade Also catches some more variants of SDK mismatch, such as Xcode not being installed at all, or the SDK missing. Change-Id: I184aaa571ef0ea722ca64c54f665462dabc17533 Reviewed-by: Joerg Bornemann Reviewed-by: Timur Pocheptsov Reviewed-by: Simon Hausmann --- mkspecs/features/mac/sdk.mk | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/mac/sdk.mk b/mkspecs/features/mac/sdk.mk index c0266f2139..c40f58c987 100644 --- a/mkspecs/features/mac/sdk.mk +++ b/mkspecs/features/mac/sdk.mk @@ -1,12 +1,25 @@ -CURRENT_MAC_SDK_VERSION := $(shell DEVELOPER_DIR=$(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) /usr/bin/xcrun --sdk $(EXPORT_QMAKE_MAC_SDK) -show-sdk-version) -ifneq ($(CURRENT_MAC_SDK_VERSION),$(EXPORT_QMAKE_MAC_SDK_VERSION)) - $(info The platform SDK has been changed from version $(EXPORT_QMAKE_MAC_SDK_VERSION) to version $(CURRENT_MAC_SDK_VERSION).) - $(info This requires a fresh build. Please wipe the build directory completely,) - $(info including any .qmake.stash and .qmake.cache files generated by qmake.) - # FIXME: Ideally this should be advertised as just running make distclean, or we - # should even do it automatically by having proper makefile dependencies between - # .qmake.stash and the SDK version, but as qmake doesn't seem to be consistent in - # how it deals with .qmake.stash as a dependency we need to defer that until later. - $(error ^) +ifeq ($(QT_MAC_SDK_NO_VERSION_CHECK),) + CHECK_SDK_COMMAND = /usr/bin/xcrun --sdk $(EXPORT_QMAKE_MAC_SDK) -show-sdk-version 2>&1 + CURRENT_MAC_SDK_VERSION := $(shell DEVELOPER_DIR=$(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) $(CHECK_SDK_COMMAND)) + ifneq ($(CURRENT_MAC_SDK_VERSION),$(EXPORT_QMAKE_MAC_SDK_VERSION)) + # We don't want to complain about out of date SDK unless the target needs to be remade. + # This covers use-cases such as running 'make check' after moving the build to a + # computer without Xcode or with a different Xcode version. + TARGET_UP_TO_DATE := $(shell QT_MAC_SDK_NO_VERSION_CHECK=1 $(MAKE) --question $(QMAKE_TARGET) && echo 1 || echo 0) + ifeq ($(TARGET_UP_TO_DATE),0) + ifneq ($(findstring missing DEVELOPER_DIR path,$(CURRENT_MAC_SDK_VERSION)),) + $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) is no longer valid.) + else ifneq ($(findstring SDK "$(EXPORT_QMAKE_MAC_SDK)" cannot be located,$(CURRENT_MAC_SDK_VERSION)),) + $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) no longer contains the $(EXPORT_QMAKE_MAC_SDK_VERSION) platform SDK.) + else ifneq ($(CURRENT_MAC_SDK_VERSION),) + $(info The platform SDK has been changed from version $(EXPORT_QMAKE_MAC_SDK_VERSION) to version $(CURRENT_MAC_SDK_VERSION).) + else + $(info Unknown error resolving current platform SDK version.) + endif + $(info This requires a fresh build. Please wipe the build directory completely,) + $(info including any .qmake.stash and .qmake.cache files generated by qmake.) + $(error ^) + endif + endif endif -- cgit v1.2.3 From 9435526d507611b8b54f7c65df9febdde193c7bf Mon Sep 17 00:00:00 2001 From: Andy Shaw Date: Mon, 15 Oct 2018 09:23:26 +0200 Subject: qmake: Add variables for setting the version number and name in Android This makes it much easier to have the version information set for an Android APK without having to manually modify the AndroidManifest.xml each time. [ChangeLog][Android][qmake] Can now set the version name and code for Android using ANDROID_VERSION_NAME and ANDROID_VERSION_CODE respectively in the pro file. Change-Id: Ie6813bc3a7444f7baa5e772b93bc2695d9b81e57 Done-with: Markus Maier Reviewed-by: Markus Maier Reviewed-by: BogDan Vatra --- mkspecs/features/android/android_deployment_settings.prf | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'mkspecs') diff --git a/mkspecs/features/android/android_deployment_settings.prf b/mkspecs/features/android/android_deployment_settings.prf index 0db3230ce7..ad826bdad3 100644 --- a/mkspecs/features/android/android_deployment_settings.prf +++ b/mkspecs/features/android/android_deployment_settings.prf @@ -58,6 +58,14 @@ contains(TEMPLATE, ".*app"):!build_pass:!android-embedded { !isEmpty(ANDROID_PACKAGE_SOURCE_DIR): \ FILE_CONTENT += " \"android-package-source-directory\": $$emitString($$ANDROID_PACKAGE_SOURCE_DIR)," + # Android-specific version string + !isEmpty(ANDROID_VERSION_NAME): \ + FILE_CONTENT += " \"android-version-name\": $$emitString($$ANDROID_VERSION_NAME)," + + # Android-specific version number + !isEmpty(ANDROID_VERSION_CODE): \ + FILE_CONTENT += " \"android-version-code\": $$emitString($$ANDROID_VERSION_CODE)," + !isEmpty(ANDROID_EXTRA_LIBS): \ FILE_CONTENT += " \"android-extra-libs\": $$emitString($$join(ANDROID_EXTRA_LIBS, ","))," -- cgit v1.2.3 From 8e6231f4ebd0957920b740fb0cc96af0ac66e6cf Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Wed, 30 Jan 2019 16:16:58 +0100 Subject: Fix install targets for generated private headers Header files of modules that specify generated_privates are usually not yet available at qmake-time. Thus, the installation rule must not check for the file's existence. Change-Id: Ifc7ff95422912d255744c9006382ff181176ae77 Fixes: QTBUG-71340 Reviewed-by: Oliver Wolff Reviewed-by: Edward Welbourne --- mkspecs/features/qt_installs.prf | 2 ++ 1 file changed, 2 insertions(+) (limited to 'mkspecs') diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf index 8f98987b99..1ebca17366 100644 --- a/mkspecs/features/qt_installs.prf +++ b/mkspecs/features/qt_installs.prf @@ -38,6 +38,8 @@ qt_install_headers { private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES $$SYNCQT.INJECTED_PRIVATE_HEADER_FILES private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private + generated_privates: \ + private_headers.CONFIG += no_check_exist INSTALLS += private_headers qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES -- cgit v1.2.3 From 74e04d6ace7aa949db97ae2e46c38a4dc0d4d36a Mon Sep 17 00:00:00 2001 From: BogDan Vatra Date: Mon, 28 Jan 2019 17:04:21 +0200 Subject: Android: follow official android flags for cmake Update our cflags and lflags with the ones found in android.toolchain.cmake Fixes: QTBUG-73274 Change-Id: Id9fd9bf04df959239abd3100090a1485e872b2f0 Reviewed-by: Eskil Abrahamsen Blomfeldt --- mkspecs/android-clang/qmake.conf | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/android-clang/qmake.conf b/mkspecs/android-clang/qmake.conf index a0a369bb44..a077c70cba 100644 --- a/mkspecs/android-clang/qmake.conf +++ b/mkspecs/android-clang/qmake.conf @@ -29,8 +29,11 @@ else: equals(ANDROID_TARGET_ARCH, mips): \ else: equals(ANDROID_TARGET_ARCH, mips64): \ QMAKE_CFLAGS += -target mips64el-none-linux-android -QMAKE_CFLAGS += -gcc-toolchain $$NDK_TOOLCHAIN_PATH -QMAKE_LINK = $$QMAKE_CXX $$QMAKE_CFLAGS -Wl,--exclude-libs,libgcc.a +QMAKE_CFLAGS += -gcc-toolchain $$NDK_TOOLCHAIN_PATH -fno-limit-debug-info + +QMAKE_LINK = $$QMAKE_CXX $$QMAKE_CFLAGS -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a +equals(ANDROID_TARGET_ARCH, armeabi-v7a): QMAKE_LINK += -Wl,--exclude-libs,libunwind.a + QMAKE_CFLAGS += -DANDROID_HAS_WSTRING --sysroot=$$NDK_ROOT/sysroot \ -isystem $$NDK_ROOT/sysroot/usr/include/$$NDK_TOOLS_PREFIX \ -isystem $$NDK_ROOT/sources/cxx-stl/llvm-libc++/include \ -- cgit v1.2.3