diff options
Diffstat (limited to 'mkspecs')
45 files changed, 311 insertions, 157 deletions
diff --git a/mkspecs/common/g++-win32.conf b/mkspecs/common/g++-win32.conf index c3a1f3a373..6369436863 100644 --- a/mkspecs/common/g++-win32.conf +++ b/mkspecs/common/g++-win32.conf @@ -17,7 +17,7 @@ include(g++-base.conf) MAKEFILE_GENERATOR = MINGW QMAKE_PLATFORM = win32 mingw -CONFIG += debug_and_release debug_and_release_target precompile_header +CONFIG += precompile_header DEFINES += UNICODE _UNICODE WIN32 MINGW_HAS_SECURE_API=1 QMAKE_COMPILER_DEFINES += __GNUC__ _WIN32 # can't add 'DEFINES += WIN64' and 'QMAKE_COMPILER_DEFINES += _WIN64' defines for diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf index 4d82321cba..472333d2ea 100644 --- a/mkspecs/common/gcc-base.conf +++ b/mkspecs/common/gcc-base.conf @@ -93,6 +93,7 @@ QMAKE_CFLAGS_SSE4_1 += -msse4.1 QMAKE_CFLAGS_SSE4_2 += -msse4.2 QMAKE_CFLAGS_F16C += -mf16c QMAKE_CFLAGS_RDRND += -mrdrnd +QMAKE_CFLAGS_RDSEED += -mrdseed QMAKE_CFLAGS_AVX += -mavx QMAKE_CFLAGS_AVX2 += -mavx2 QMAKE_CFLAGS_AVX512F += -mavx512f diff --git a/mkspecs/common/icc-base-unix.conf b/mkspecs/common/icc-base-unix.conf index 54eda984b7..e0bb55577e 100644 --- a/mkspecs/common/icc-base-unix.conf +++ b/mkspecs/common/icc-base-unix.conf @@ -51,6 +51,7 @@ QMAKE_CFLAGS_AVX512VL += -march=skylake-avx512 QMAKE_CFLAGS_AESNI += -maes QMAKE_CFLAGS_F16C += $$QMAKE_CFLAGS_AVX2 QMAKE_CFLAGS_RDRND += -mrdrnd +QMAKE_CFLAGS_RDSEED += -mrdseed QMAKE_CFLAGS_SHANI += -msha QMAKE_CXX = icpc diff --git a/mkspecs/common/mac.conf b/mkspecs/common/mac.conf index b77494ec9b..61bea952b2 100644 --- a/mkspecs/common/mac.conf +++ b/mkspecs/common/mac.conf @@ -14,7 +14,6 @@ include(unix.conf) QMAKE_RESOURCE = /Developer/Tools/Rez QMAKE_EXTENSION_SHLIB = dylib -QMAKE_EXTENSIONS_AUX_SHLIB = tbd QMAKE_LIBDIR = # sdk.prf will prefix the proper SDK sysroot diff --git a/mkspecs/common/macx.conf b/mkspecs/common/macx.conf index 889027ada5..67552dcc6c 100644 --- a/mkspecs/common/macx.conf +++ b/mkspecs/common/macx.conf @@ -8,7 +8,7 @@ QMAKE_MAC_SDK = macosx QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.12 QMAKE_APPLE_DEVICE_ARCHS = x86_64 QT_MAC_SDK_VERSION_MIN = 10.13 -QT_MAC_SDK_VERSION_MAX = 10.14 +QT_MAC_SDK_VERSION_MAX = 10.15 device.sdk = macosx device.target = device diff --git a/mkspecs/common/msvc-desktop.conf b/mkspecs/common/msvc-desktop.conf index 0bb3e13337..f5d12f445b 100644 --- a/mkspecs/common/msvc-desktop.conf +++ b/mkspecs/common/msvc-desktop.conf @@ -19,6 +19,7 @@ CONFIG += flat debug_and_release debug_and_release_target precom # MSVC 2017 15.8+ fixed std::aligned_storage but compilation fails without # _ENABLE_EXTENDED_ALIGNED_STORAGE flag since the fix breaks binary compatibility. DEFINES += UNICODE _UNICODE WIN32 _ENABLE_EXTENDED_ALIGNED_STORAGE +DEFINES_RELEASE += NDEBUG QMAKE_COMPILER_DEFINES += _WIN32 contains(QMAKE_TARGET.arch, x86_64) { DEFINES += WIN64 diff --git a/mkspecs/common/msvc-version.conf b/mkspecs/common/msvc-version.conf index af33132077..adb45582c7 100644 --- a/mkspecs/common/msvc-version.conf +++ b/mkspecs/common/msvc-version.conf @@ -50,6 +50,7 @@ greaterThan(QMAKE_MSC_VER, 1799) { QMAKE_CFLAGS_F16C = -arch:AVX QMAKE_CFLAGS_RDRND = + QMAKE_CFLAGS_RDSEED = equals(QMAKE_MSC_VER, 1800) { QMAKE_CFLAGS_RELEASE += -Zc:strictStrings diff --git a/mkspecs/common/winrt_winphone/qmake.conf b/mkspecs/common/winrt_winphone/qmake.conf index 03fb96f2c5..e683018a81 100644 --- a/mkspecs/common/winrt_winphone/qmake.conf +++ b/mkspecs/common/winrt_winphone/qmake.conf @@ -11,6 +11,7 @@ CONFIG = package_manifest $$CONFIG incremental flat precompile_ # MSVC 2017 15.8+ fixed std::aligned_storage but compilation fails without # _ENABLE_EXTENDED_ALIGNED_STORAGE flag since the fix breaks binary compatibility. DEFINES += UNICODE WIN32 QT_LARGEFILE_SUPPORT Q_BYTE_ORDER=Q_LITTLE_ENDIAN _ENABLE_EXTENDED_ALIGNED_STORAGE +DEFINES_RELEASE += NDEBUG QMAKE_COMPILER_DEFINES += _WIN32 DEPLOYMENT_PLUGIN += qwinrt diff --git a/mkspecs/devices/linux-imx8-g++/qmake.conf b/mkspecs/devices/linux-imx8-g++/qmake.conf new file mode 100644 index 0000000000..17e6c884e9 --- /dev/null +++ b/mkspecs/devices/linux-imx8-g++/qmake.conf @@ -0,0 +1,41 @@ +# +# qmake configuration for the NXP i.MX8 based boards (64-bit) +# +# The configuration below is set up for running with the fbdev-style +# Vivante graphics stack. (so eglfs with the eglfs_viv backend, no +# direct drm use via eglfs_kms) + +# Wayland should also be functional. However, when writing Wayland +# *compositors* with Qt, the eglfs backend will have to be switched to +# eglfs_viv_wl by setting the QT_QPA_EGLFS_INTEGRATION environment +# variable. +# +# Below is an example configure line that assumes there is an AArch64 +# toolchain and sysroot available in $HOME/imx8. On device Qt is +# expected to be placed under /usr/local/qt514 whereas on the host +# 'make install' will copy the host tools and the target libraries to +# $HOME/imx8/qt5. +# +# ./configure -release -opengl es2 -device linux-imx8-g++ \ +# -device-option CROSS_COMPILE=~/imx8/toolchain/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux- \ +# -sysroot ~/imx8/sysroot \ +# -opensource -confirm-license -make libs -prefix /usr/local/qt514 -extprefix ~/imx8/qt5 -v + +include(../common/linux_device_pre.conf) + +QMAKE_LIBS_EGL += -lEGL +QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL -lGAL +QMAKE_LIBS_OPENVG += -lOpenVG -lEGL -lGAL + +IMX8_CFLAGS = -march=armv8-a -mtune=cortex-a72.cortex-a53 -DLINUX=1 -DEGL_API_FB=1 +QMAKE_CFLAGS += $$IMX8_CFLAGS +QMAKE_CXXFLAGS += $$IMX8_CFLAGS + +DISTRO_OPTS += aarch64 + +# Preferred eglfs backend +EGLFS_DEVICE_INTEGRATION = eglfs_viv + +include(../common/linux_arm_device_post.conf) + +load(qt_config) diff --git a/mkspecs/devices/linux-imx8-g++/qplatformdefs.h b/mkspecs/devices/linux-imx8-g++/qplatformdefs.h new file mode 100644 index 0000000000..6a35ed45d5 --- /dev/null +++ b/mkspecs/devices/linux-imx8-g++/qplatformdefs.h @@ -0,0 +1,40 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the qmake spec of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "../../linux-g++/qplatformdefs.h" diff --git a/mkspecs/devices/linux-rasp-pi4-v3d-g++/qmake.conf b/mkspecs/devices/linux-rasp-pi4-v3d-g++/qmake.conf new file mode 100644 index 0000000000..69b0c761a8 --- /dev/null +++ b/mkspecs/devices/linux-rasp-pi4-v3d-g++/qmake.conf @@ -0,0 +1,40 @@ +# qmake configuration for the Raspberry Pi 4 (32-bit) using the Mesa V3D +# graphics stack. (not the Broadcom stack) +# +# This supports accelerated OpenGL both for X11 and DRM/KMS. Perhaps +# Wayland too. +# +# Tested with a sysroot created from Raspbian Buster and a gcc 7.4 +# toolchain from Linaro. +# +# Example configure command line, assuming installation to +# /usr/local/qt5pi on device and ~/rpi/qt5 on the host: +# +# ./configure -release -opengl es2 -device linux-rasp-pi4-v3d-g++ -device-option CROSS_COMPILE=~/rpi/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- \ +# -sysroot ~/rpi/sysroot -opensource -confirm-license -make libs -prefix /usr/local/qt5pi -extprefix ~/rpi/qt5 -v +# +# Check the configure output carefully. EGLFS, EGLFS GBM, and EGL on X11 +# should all be 'yes'. Otherwise something is wrong. +# +# If getting linker errors like "undefined reference to `_dl_stack_flags'" check the +# symlinks in the sysroot, they were probably not adjusted +# correctly. F.ex. sysroot/usr/lib/arm-linux-gnueabihf/libpthread.so must point to +# sysroot/lib/arm-linux-gnueabihf/libpthread.so.0. If it is a broken link instead, bad +# things will happen. + +include(../common/linux_device_pre.conf) + +QMAKE_LIBS_EGL += -lEGL +QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL + +QMAKE_CFLAGS = -march=armv8-a -mtune=cortex-a72 -mfpu=crypto-neon-fp-armv8 +QMAKE_CXXFLAGS = $$QMAKE_CFLAGS + +DISTRO_OPTS += hard-float +DISTRO_OPTS += deb-multi-arch + +EGLFS_DEVICE_INTEGRATION = eglfs_kms + +include(../common/linux_arm_device_post.conf) + +load(qt_config) diff --git a/mkspecs/devices/linux-rasp-pi4-v3d-g++/qplatformdefs.h b/mkspecs/devices/linux-rasp-pi4-v3d-g++/qplatformdefs.h new file mode 100644 index 0000000000..4435fb2557 --- /dev/null +++ b/mkspecs/devices/linux-rasp-pi4-v3d-g++/qplatformdefs.h @@ -0,0 +1,40 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the qmake spec of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "../../linux-g++/qplatformdefs.h" diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf index 5c561042cd..346fbf2467 100644 --- a/mkspecs/features/create_cmake.prf +++ b/mkspecs/features/create_cmake.prf @@ -42,6 +42,9 @@ CMAKE_INCLUDE_NAME = $$eval(QT.$${MODULE}.name) # (or QtCore_{libinfix_suffix}, Foo_{libinfix_suffix} on macos with -framework). CMAKE_QT_STEM = $${TARGET} +# ANDROID_ABI is set by the android toolchain file, see https://developer.android.com/ndk/guides/cmake +android: CMAKE_QT_STEM = $$replace(CMAKE_QT_STEM, "_$${QT_ARCH}", '_\$\{ANDROID_ABI\}') + # On macOS when building just a debug configuration which is not part of debug_and_release, # $${TARGET} already contains a _debug suffix, as per the following call chain: # qt_module.prf -> qt5LibraryTarget -> qtLibraryTarget -> qtPlatformTargetSuffix. @@ -297,7 +300,8 @@ mac { CMAKE_PRL_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.prl } else { qt_framework { - CMAKE_LIB_FILE_LOCATION_DEBUG = $${CMAKE_QT_STEM}.framework/$${CMAKE_QT_STEM}_debug + # Intentionally there is no '_debug' infix for framework builds. + CMAKE_LIB_FILE_LOCATION_DEBUG = $${CMAKE_QT_STEM}.framework/$${CMAKE_QT_STEM} CMAKE_LIB_FILE_LOCATION_RELEASE = $${CMAKE_QT_STEM}.framework/$${CMAKE_QT_STEM} CMAKE_BUILD_IS_FRAMEWORK = "true" } else { diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in index 4d3dc1bd35..364c23e750 100644 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in @@ -53,7 +53,11 @@ function(_qt5_$${CMAKE_MODULE_NAME}_process_prl_file prl_file_location Configura set(_lib_deps) set(_link_flags) - get_filename_component(_qt5_install_libs \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/lib\" ABSOLUTE) +!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) + set(_qt5_install_libs \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}\") +!!ELSE + set(_qt5_install_libs \"$${CMAKE_LIB_DIR}\") +!!ENDIF if(EXISTS \"${prl_file_location}\") file(STRINGS \"${prl_file_location}\" _prl_strings REGEX \"QMAKE_PRL_LIBS_FOR_CMAKE[ \\t]*=\") diff --git a/mkspecs/features/default_pre.prf b/mkspecs/features/default_pre.prf index 1c24bf071a..b2629d04c0 100644 --- a/mkspecs/features/default_pre.prf +++ b/mkspecs/features/default_pre.prf @@ -26,4 +26,10 @@ CONFIG = \ unset(today) } +CONFIG(debug, debug|release) { + DEFINES += $$DEFINES_DEBUG +} else { + DEFINES += $$DEFINES_RELEASE +} + load(toolchain) diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf index 60b2eb2117..03084c7f07 100644 --- a/mkspecs/features/mac/default_post.prf +++ b/mkspecs/features/mac/default_post.prf @@ -71,7 +71,8 @@ qt { # Add the same default rpaths as Xcode does for new projects. # This is especially important for iOS/tvOS/watchOS where no other option is possible. !no_default_rpath { - QMAKE_RPATHDIR += @executable_path/../Frameworks + uikit: QMAKE_RPATHDIR += @executable_path/Frameworks + else: QMAKE_RPATHDIR += @executable_path/../Frameworks equals(TEMPLATE, lib):!plugin:lib_bundle: QMAKE_RPATHDIR += @loader_path/Frameworks } @@ -97,21 +98,22 @@ macx-xcode { qmake_pkginfo_typeinfo.value = "????" QMAKE_MAC_XCODE_SETTINGS += qmake_pkginfo_typeinfo - !isEmpty(VERSION) { - l = $$split(VERSION, '.') 0 0 # make sure there are at least three - VER_MAJ = $$member(l, 0, 0) - VER_MIN = $$member(l, 1, 1) - VER_PAT = $$member(l, 2, 2) - unset(l) + bundle_version = $$VERSION + isEmpty(bundle_version): bundle_version = 1.0.0 - qmake_full_version.name = QMAKE_FULL_VERSION - qmake_full_version.value = $${VER_MAJ}.$${VER_MIN}.$${VER_PAT} - QMAKE_MAC_XCODE_SETTINGS += qmake_full_version + l = $$split(bundle_version, '.') 0 0 # make sure there are at least three + VER_MAJ = $$member(l, 0, 0) + VER_MIN = $$member(l, 1, 1) + VER_PAT = $$member(l, 2, 2) + unset(l) - qmake_short_version.name = QMAKE_SHORT_VERSION - qmake_short_version.value = $${VER_MAJ}.$${VER_MIN} - QMAKE_MAC_XCODE_SETTINGS += qmake_short_version - } + qmake_full_version.name = QMAKE_FULL_VERSION + qmake_full_version.value = $${VER_MAJ}.$${VER_MIN}.$${VER_PAT} + QMAKE_MAC_XCODE_SETTINGS += qmake_full_version + + qmake_short_version.name = QMAKE_SHORT_VERSION + qmake_short_version.value = $${VER_MAJ}.$${VER_MIN} + QMAKE_MAC_XCODE_SETTINGS += qmake_short_version !isEmpty(QMAKE_XCODE_DEBUG_INFORMATION_FORMAT) { debug_information_format.name = DEBUG_INFORMATION_FORMAT @@ -270,7 +272,7 @@ xcode_product_bundle_identifier_setting.value = "$${xcode_product_bundle_identif QMAKE_MAC_XCODE_SETTINGS += xcode_product_bundle_identifier_setting !macx-xcode { - generate_xcode_project.commands = @$(QMAKE) -spec macx-xcode $(EXPORT__PRO_FILE_) $$QMAKE_ARGS + generate_xcode_project.commands = @$(QMAKE) -spec macx-xcode \"$(EXPORT__PRO_FILE_)\" $$QMAKE_ARGS generate_xcode_project.target = xcodeproj QMAKE_EXTRA_VARIABLES += _PRO_FILE_ QMAKE_EXTRA_TARGETS += generate_xcode_project diff --git a/mkspecs/features/mac/no_warn_empty_obj_files.prf b/mkspecs/features/mac/no_warn_empty_obj_files.prf new file mode 100644 index 0000000000..598938ab12 --- /dev/null +++ b/mkspecs/features/mac/no_warn_empty_obj_files.prf @@ -0,0 +1,7 @@ +# Prevent warnings about object files without any symbols. This is a common +# thing in Qt as we tend to build files unconditionally, and then use ifdefs +# to compile out parts that are not relevant. +QMAKE_RANLIB += -no_warning_for_no_symbols + +# We have to tell 'ar' to not run ranlib by itself +QMAKE_AR += -S diff --git a/mkspecs/features/metatypes.prf b/mkspecs/features/metatypes.prf new file mode 100644 index 0000000000..a0a548eeb2 --- /dev/null +++ b/mkspecs/features/metatypes.prf @@ -0,0 +1,34 @@ +qtPrepareTool(MOC_COLLECT_JSON, moc) + +QMAKE_MOC_OPTIONS += --output-json + +moc_json_header.input = HEADERS +moc_json_header.output = $$MOC_DIR/$${QMAKE_H_MOD_MOC}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_CPP)}.json +moc_json_header.CONFIG = no_link moc_verify +moc_json_header.depends = $$MOC_DIR/$${QMAKE_H_MOD_MOC}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_CPP)} +moc_json_header.commands = $$escape_expand(\\n) # force creation of rule +moc_json_header.variable_out = MOC_JSON_FILES + +moc_json_source.input = SOURCES +moc_json_source.output = $$MOC_DIR/$${QMAKE_CPP_MOD_MOC}${QMAKE_FILE_BASE}$${QMAKE_EXT_CPP_MOC}.json +moc_json_source.CONFIG = no_link moc_verify +moc_json_source.depends = $$MOC_DIR/$${QMAKE_CPP_MOD_MOC}${QMAKE_FILE_BASE}$${QMAKE_EXT_CPP_MOC} +moc_json_source.commands = $$escape_expand(\\n) # force creation of rule +moc_json_source.variable_out = MOC_JSON_FILES + +MOC_COLLECT_JSON_OUTPUT = $$lower($$basename(TARGET))_metatypes.json + +moc_collect_json.CONFIG += no_link combine +moc_collect_json.commands = $$MOC_COLLECT_JSON --collect-json -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_IN} +moc_collect_json.input = MOC_JSON_FILES +moc_collect_json.output = $$MOC_COLLECT_JSON_OUTPUT +moc_collect_json.name = Collect moc JSON output into central file + +install_metatypes { + do_install.path = $$[QT_INSTALL_LIBS]/metatypes + do_install.files = $$OUT_PWD/$$MOC_COLLECT_JSON_OUTPUT + prefix_build: INSTALLS += do_install + else: COPIES += do_install +} + +QMAKE_EXTRA_COMPILERS += moc_collect_json moc_json_header moc_json_source diff --git a/mkspecs/features/qmake_use.prf b/mkspecs/features/qmake_use.prf index ecb4f7ed41..8475e4111a 100644 --- a/mkspecs/features/qmake_use.prf +++ b/mkspecs/features/qmake_use.prf @@ -22,6 +22,8 @@ for(ever) { !defined(QMAKE_LIBS_$$nu, var): \ error("Library '$$lower($$replace(nu, _, -))' is not defined.") + QMAKE_LIBDIR += $$eval(QMAKE_LIBDIR_$$nu) + android { ABI_LIBS = $$eval(QMAKE_LIBS_$${nu}_$${QT_ARCH}) isEmpty(ABI_LIBS): ABI_LIBS = $$eval(QMAKE_LIBS_$${nu}) diff --git a/mkspecs/features/qml_plugin.prf b/mkspecs/features/qml_plugin.prf index 02068ae766..f1c5658b04 100644 --- a/mkspecs/features/qml_plugin.prf +++ b/mkspecs/features/qml_plugin.prf @@ -55,7 +55,7 @@ INSTALLS += target # Some final setup -TARGET = $$qt5LibraryTarget($$TARGET) +TARGET = $$qt5LibraryTarget($$TARGET, "qml/$$TARGETPATH/") load(qt_targets) load(qt_common) diff --git a/mkspecs/features/qt_build_config.prf b/mkspecs/features/qt_build_config.prf index 745b09a885..8273ba3fe1 100644 --- a/mkspecs/features/qt_build_config.prf +++ b/mkspecs/features/qt_build_config.prf @@ -88,6 +88,9 @@ cross_compile: \ android|uikit|winrt: \ CONFIG += builtin_testdata +# Prevent warnings about object files without any symbols +macos: CONFIG += no_warn_empty_obj_files + CONFIG += \ utf8_source \ create_prl link_prl \ diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf index 1219fe1443..adac835c26 100644 --- a/mkspecs/features/qt_configure.prf +++ b/mkspecs/features/qt_configure.prf @@ -537,98 +537,23 @@ defineReplace(qtGccSysrootifiedPaths) { return($$sysrootified) } -# libs-var, libs, in-paths, out-paths-var +# libs-var, libs, in-paths defineTest(qtConfResolveLibs) { - ret = true - paths = $$3 - out = - copy = false - for (l, 2) { - $$copy { - copy = false - out += $$l - } else: equals(l, "-s") { - # em++ flag to link libraries from emscripten-ports; passed on literally. - copy = true - out += $$l - } else: contains(l, "^-L.*") { - lp = $$replace(l, "^-L", ) - gcc: lp = $$qtGccSysrootifiedPath($$lp) - !exists($$lp/.) { - qtLog("Library path $$val_escape(lp) is invalid.") - ret = false - } else { - paths += $$lp - } - } else: !android: contains(l, "^-l.*") { - lib = $$replace(l, "^-l", ) - lcan = - integrity:contains(lib, "^.*\\.a") { - # INTEGRITY compiler searches for exact filename - # if -l argument has .a suffix - lcan += $${lib} - } else: contains(lib, "^:.*") { - # Use exact filename when -l:filename syntax is used. - lib ~= s/^:// - lcan += $${lib} - } else: unix { - # Under UNIX, we look for actual shared libraries, in addition - # to static ones. - shexts = $$QMAKE_EXTENSION_SHLIB $$QMAKE_EXTENSIONS_AUX_SHLIB - for (ext, shexts) { - lcan += $${QMAKE_PREFIX_SHLIB}$${lib}.$${ext} - } - lcan += \ - $${QMAKE_PREFIX_STATICLIB}$${lib}.$${QMAKE_EXTENSION_STATICLIB} - } else { - # Under Windows, we look only for static libraries, as even for DLLs - # one actually links against a static import library. - mingw { - lcan += \ - # MinGW supports UNIX-style library naming in addition to - # the MSVC style. - lib$${lib}.dll.a lib$${lib}.a \ - # Fun fact: prefix-less libraries are also supported. - $${lib}.dll.a $${lib}.a - } - lcan += $${lib}.lib - } - l = $$qtConfFindInPathList($$lcan, $$paths $$EXTRA_LIBDIR $$QMAKE_DEFAULT_LIBDIRS) - isEmpty(l) { - qtLog("None of [$$val_escape(lcan)] found in [$$val_escape(paths)] and global paths.") - ret = false - } else { - out += $$l - } - } else { - out += $$l - } - } - $$1 = $$out + for (path, 3): \ + pre_lflags += -L$$path + $$1 = $$pre_lflags $$2 export($$1) - !isEmpty(4) { - $$4 = $$paths - export($$4) - } - return($$ret) -} - -# source-var -defineTest(qtConfResolveAllLibs) { - ret = true - !qtConfResolveLibs($${1}.libs, $$eval($${1}.libs), , $${1}.libdirs): \ - ret = false - for (b, $${1}.builds._KEYS_): \ - !qtConfResolveLibs($${1}.builds.$${b}, $$eval($${1}.builds.$${b}), $$eval($${1}.libdirs), ): \ - ret = false - return($$ret) + return(true) } # libs-var, in-paths, libs defineTest(qtConfResolvePathLibs) { ret = true - gcc: 2 = $$qtGccSysrootifiedPaths($$2) - for (libdir, 2) { + gcc: \ + local_paths = $$qtGccSysrootifiedPaths($$2) + else: \ + local_paths = $$2 + for (libdir, local_paths) { !exists($$libdir/.) { qtLog("Library path $$val_escape(libdir) is invalid.") ret = false @@ -678,8 +603,11 @@ defineReplace(qtConfGetTestIncludes) { # includes-var, in-paths, test-object-var defineTest(qtConfResolvePathIncs) { ret = true - gcc: 2 = $$qtGccSysrootifiedPaths($$2) - for (incdir, 2) { + gcc: \ + local_paths = $$qtGccSysrootifiedPaths($$2) + else: \ + local_paths = $$2 + for (incdir, local_paths) { !exists($$incdir/.) { qtLog("Include path $$val_escape(incdir) is invalid.") ret = false @@ -773,11 +701,9 @@ defineTest(qtConfLibrary_inline) { for (ld, libdir): \ libs += -L$$ld $${1}.libs = $$libs $$eval($${1}.libs) + export($${1}.libs) } - !qtConfResolveAllLibs($$1): \ - return(false) - !qtConfResolvePathIncs($${1}.includedir, $$includes, $$2): \ return(false) @@ -832,9 +758,7 @@ defineTest(qtConfLibrary_pkgConfig) { !qtConfResolveLibs($${1}.libs, $$libs): \ return(false) contains($${1}.libs, ".*\\.$${QMAKE_EXTENSION_STATICLIB}$") { - qtRunLoggedCommand("$$pkg_config --static --libs-only-L $$args", libpaths)|return(false) - qtRunLoggedCommand("$$pkg_config --static --libs-only-l $$args", libs)|return(false) - eval(libs = $$libpaths $$libs) + qtRunLoggedCommand("$$pkg_config --static --libs $$args", libs)|return(false) !qtConfResolveLibs($${1}.libs, $$libs): \ return(false) } diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index ede494eec1..661b7dd961 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -5,7 +5,7 @@ defineReplace(qtPlatformTargetSuffix) { else: CONFIG(debug, debug|release) { !debug_and_release|build_pass { mac: return($${suffix}_debug) - win32: return($${suffix}d) + win32:!gcc: return($${suffix}d) } } return($$suffix) @@ -21,7 +21,13 @@ defineReplace(qtLibraryTarget) { } defineReplace(qt5LibraryTarget) { - LIBRARY_NAME = $$qtLibraryTarget($$1) + android { + LIBRARY_NAME_PREFIX = $$2 + LIBRARY_NAME_PREFIX = $$replace(LIBRARY_NAME_PREFIX, "//", "/") + LIBRARY_NAME_PREFIX = $$replace(LIBRARY_NAME_PREFIX, "/", "_") + LIBRARY_NAME = $$LIBRARY_NAME_PREFIX$$qtLibraryTarget($$1) + unset(LIBRARY_NAME_PREFIX) + } else: LIBRARY_NAME = $$qtLibraryTarget($$1) isEmpty(QMAKE_FRAMEWORK_BUNDLE_NAME) { # Insert the major version of Qt in the library name # unless it's a framework build. @@ -153,8 +159,12 @@ defineTest(qtAddToolEnv) { !isEmpty(cmd): cmd = "$$cmd " equals(ds, /) { batch_name = $${batch_name}.sh + equals(QMAKE_HOST.os, Darwin):exists(/bin/bash): \ + shell = /bin/bash + else: \ + shell = /bin/sh batch_cont = \ - "$$LITERAL_HASH!/bin/sh" \ + "$$LITERAL_HASH!$$shell" \ $$batch_sets \ "exec $$cmd\"$@\"" # It would be nicer to use the '.' command (without 'exec' above), diff --git a/mkspecs/features/qt_plugin.prf b/mkspecs/features/qt_plugin.prf index 6e7388c352..573d717eea 100644 --- a/mkspecs/features/qt_plugin.prf +++ b/mkspecs/features/qt_plugin.prf @@ -92,7 +92,7 @@ target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE INSTALLS += target qt_libinfix_plugins: TARGET = $$TARGET$$QT_LIBINFIX -TARGET = $$qt5LibraryTarget($$TARGET) +TARGET = $$qt5LibraryTarget($$TARGET, "plugins/$$PLUGIN_TYPE/") CONFIG += create_cmake diff --git a/mkspecs/features/qt_tracepoints.prf b/mkspecs/features/qt_tracepoints.prf index d1b45a47cb..56d315e1cd 100644 --- a/mkspecs/features/qt_tracepoints.prf +++ b/mkspecs/features/qt_tracepoints.prf @@ -16,7 +16,7 @@ PROVIDER_NAME = qt$$lower($$MODULE) INCLUDEPATH += $$absolute_path($$TRACEGEN_DIR, $$OUT_PWD) HEADER_PATH = $$OUT_PWD/$$TRACEGEN_DIR/$${PROVIDER_NAME}_tracepoints_p$${first(QMAKE_EXT_H)} -!force_bootstrap:if(qtConfig(lttng)|qtConfig(etw)) { +if(qtConfig(lttng)|qtConfig(etw)) { SOURCE_PATH = $$OUT_PWD/$$TRACEGEN_DIR/$${PROVIDER_NAME}_tracepoints$${first(QMAKE_EXT_CPP)} isEmpty(BUILDS)|build_pass { diff --git a/mkspecs/features/simd.prf b/mkspecs/features/simd.prf index a0b40fcf11..3918c4fe73 100644 --- a/mkspecs/features/simd.prf +++ b/mkspecs/features/simd.prf @@ -137,6 +137,7 @@ addSimdCompiler(avx512ifma) addSimdCompiler(avx512vbmi) addSimdCompiler(f16c) addSimdCompiler(rdrnd) +addSimdCompiler(rdseed) addSimdCompiler(neon) addSimdCompiler(mips_dsp) addSimdCompiler(mips_dspr2) diff --git a/mkspecs/features/uic.prf b/mkspecs/features/uic.prf index 1cedce5ae7..a5df0c7e8d 100644 --- a/mkspecs/features/uic.prf +++ b/mkspecs/features/uic.prf @@ -9,7 +9,7 @@ uic.depend_command = $$QMAKE_UIC_DEP -d ${QMAKE_FILE_IN} uic.output = $$UI_DIR/$${QMAKE_MOD_UIC}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)} uic.input = FORMS uic.variable_out = GENERATED_FILES -uic.CONFIG += no_link target_predeps dep_lines +uic.CONFIG += no_link target_predeps dep_lines dep_existing_only uic.name = UIC ${QMAKE_FILE_IN} silent:uic.commands = @echo uic ${QMAKE_FILE_IN} && $$uic.commands QMAKE_EXTRA_COMPILERS += uic diff --git a/mkspecs/features/uikit/gc_binaries.prf b/mkspecs/features/uikit/gc_binaries.prf index c4f7445951..aa27e69054 100644 --- a/mkspecs/features/uikit/gc_binaries.prf +++ b/mkspecs/features/uikit/gc_binaries.prf @@ -1,2 +1,6 @@ # bitcode (release mode) is incompatible with splitting sections. -!bitcode|!release: load(gc_binaries) +# We have to explicitly exclude Xcode, as that supports both debug +# and release builds in the same project. Xcode already has a settting +# for dead code stripping which is enabled by default, so we'll still +# strip any libraries build with split sections. +!bitcode|if(!macx-xcode:!release): load(gc_binaries) diff --git a/mkspecs/features/uikit/xcodebuild.mk b/mkspecs/features/uikit/xcodebuild.mk index 0c8d99f4b8..e1156d0e76 100644 --- a/mkspecs/features/uikit/xcodebuild.mk +++ b/mkspecs/features/uikit/xcodebuild.mk @@ -27,8 +27,8 @@ distclean: clean_all $(EXPORT_SUBTARGETS): % : %-build # Generic targets -%_first: $(firstword $(call targets, %)) ; -%_all: $(call targets, %) ; +%_first: $(EXPORT_PRE_TARGETDEPS) $(firstword $(call targets, %)) ; +%_all: $(EXPORT_PRE_TARGETDEPS) $(call targets, %) ; # Actions %-build: ACTION = build diff --git a/mkspecs/features/uikit/xcodebuild.prf b/mkspecs/features/uikit/xcodebuild.prf index 7a6b2acfc2..01022c7b99 100644 --- a/mkspecs/features/uikit/xcodebuild.prf +++ b/mkspecs/features/uikit/xcodebuild.prf @@ -29,6 +29,8 @@ cmd = "$$QMAKE_QMAKE $$system_quote($$_PRO_FILE_) -spec macx-xcode $$args" debug(1, "Generating Xcode project in $$OUT_PWD using '$$cmd'") system("$$QMAKE_CD $$system_quote($$OUT_PWD) && $$cmd") +QMAKE_EXTRA_VARIABLES += PRE_TARGETDEPS + # Subtargets for(build, BUILDS): \ diff --git a/mkspecs/features/wasm/wasm.prf b/mkspecs/features/wasm/wasm.prf index 54d351bfd5..25413d7470 100644 --- a/mkspecs/features/wasm/wasm.prf +++ b/mkspecs/features/wasm/wasm.prf @@ -6,16 +6,6 @@ exists($$QMAKE_QT_CONFIG) { qtConfig(thread) { EMCC_THREAD_LFLAGS += -s USE_PTHREADS=1 - # Hardcode wasm memory size. Emscripten does not currently support memory growth - # (ALLOW_MEMORY_GROWTH) in pthreads mode, and requires specifying the memory size - # at build time. Further, browsers limit the maximum initial memory size to 1GB. - TOTAL_MEMORY = 1GB - !isEmpty(QMAKE_WASM_TOTAL_MEMORY) { - TOTAL_MEMORY = $$QMAKE_WASM_TOTAL_MEMORY - } - - message("Setting TOTAL_MEMORY to" $$TOTAL_MEMORY) - EMCC_THREAD_LFLAGS += -s TOTAL_MEMORY=$$TOTAL_MEMORY # Create worker threads at startup. This is supposed to be an optimization, # however exceeding the pool size has been obesverved to hang the application. @@ -29,6 +19,20 @@ exists($$QMAKE_QT_CONFIG) { } else { EMCC_THREAD_LFLAGS += -s ALLOW_MEMORY_GROWTH=1 } + + qtConfig(thread) | !isEmpty(QMAKE_WASM_TOTAL_MEMORY) { + + # Hardcode wasm memory size. Emscripten does not currently support memory growth + # (ALLOW_MEMORY_GROWTH) in pthreads mode, and requires specifying the memory size + # at build time. Further, browsers limit the maximum initial memory size to 1GB. + # QMAKE_WASM_TOTAL_MEMORY must be a multiple of 64KB + TOTAL_MEMORY = 1GB + !isEmpty(QMAKE_WASM_TOTAL_MEMORY) { + TOTAL_MEMORY = $$QMAKE_WASM_TOTAL_MEMORY + } + message("Setting TOTAL_MEMORY to" $$TOTAL_MEMORY) + EMCC_THREAD_LFLAGS += -s TOTAL_MEMORY=$$TOTAL_MEMORY + } QMAKE_LFLAGS += $$EMCC_THREAD_LFLAGS QMAKE_LFLAGS_DEBUG += $$EMCC_THREAD_LFLAGS QMAKE_CFLAGS += $$EMCC_THREAD_LFLAGS diff --git a/mkspecs/features/win32/windows_vulkan_sdk.prf b/mkspecs/features/win32/windows_vulkan_sdk.prf index 2aebbd3b25..4dc0e50090 100644 --- a/mkspecs/features/win32/windows_vulkan_sdk.prf +++ b/mkspecs/features/win32/windows_vulkan_sdk.prf @@ -3,6 +3,11 @@ isEmpty(QMAKE_INCDIR_VULKAN) { # headers are found out-of-the-box on typical Windows setups. QMAKE_INCDIR_VULKAN = $$(VULKAN_SDK)/include + # Do not add default include paths as that can knock std headers + # out of their stride due to their usage of #include_next. + contains(QMAKE_DEFAULT_INCDIRS, $$QMAKE_INCDIR_VULKAN): \ + QMAKE_INCDIR_VULKAN = + # Do not export the include dir but resolve it on every qmake call. QMAKE_EXPORT_INCDIR_VULKAN = - } diff --git a/mkspecs/macx-clang/Info.plist.app b/mkspecs/macx-clang/Info.plist.app index 4d64a77704..fa592af089 100644 --- a/mkspecs/macx-clang/Info.plist.app +++ b/mkspecs/macx-clang/Info.plist.app @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIconFile</key> <string>${ASSETCATALOG_COMPILER_APPICON_NAME}</string> <key>CFBundleIdentifier</key> diff --git a/mkspecs/macx-clang/Info.plist.lib b/mkspecs/macx-clang/Info.plist.lib index ce28365500..34752ec40d 100644 --- a/mkspecs/macx-clang/Info.plist.lib +++ b/mkspecs/macx-clang/Info.plist.lib @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIdentifier</key> <string>${PRODUCT_BUNDLE_IDENTIFIER}</string> <key>CFBundlePackageType</key> diff --git a/mkspecs/macx-g++/Info.plist.app b/mkspecs/macx-g++/Info.plist.app index 4d64a77704..fa592af089 100644 --- a/mkspecs/macx-g++/Info.plist.app +++ b/mkspecs/macx-g++/Info.plist.app @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIconFile</key> <string>${ASSETCATALOG_COMPILER_APPICON_NAME}</string> <key>CFBundleIdentifier</key> diff --git a/mkspecs/macx-g++/Info.plist.lib b/mkspecs/macx-g++/Info.plist.lib index ce28365500..34752ec40d 100644 --- a/mkspecs/macx-g++/Info.plist.lib +++ b/mkspecs/macx-g++/Info.plist.lib @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIdentifier</key> <string>${PRODUCT_BUNDLE_IDENTIFIER}</string> <key>CFBundlePackageType</key> diff --git a/mkspecs/macx-icc/Info.plist.app b/mkspecs/macx-icc/Info.plist.app index 4d64a77704..fa592af089 100644 --- a/mkspecs/macx-icc/Info.plist.app +++ b/mkspecs/macx-icc/Info.plist.app @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIconFile</key> <string>${ASSETCATALOG_COMPILER_APPICON_NAME}</string> <key>CFBundleIdentifier</key> diff --git a/mkspecs/macx-icc/Info.plist.lib b/mkspecs/macx-icc/Info.plist.lib index ce28365500..34752ec40d 100644 --- a/mkspecs/macx-icc/Info.plist.lib +++ b/mkspecs/macx-icc/Info.plist.lib @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIdentifier</key> <string>${PRODUCT_BUNDLE_IDENTIFIER}</string> <key>CFBundlePackageType</key> diff --git a/mkspecs/macx-ios-clang/Info.plist.app b/mkspecs/macx-ios-clang/Info.plist.app index 1acbf9d768..03ba3e82b4 100644 --- a/mkspecs/macx-ios-clang/Info.plist.app +++ b/mkspecs/macx-ios-clang/Info.plist.app @@ -6,8 +6,6 @@ <string>${PRODUCT_NAME}</string> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIconFile</key> <string>${ASSETCATALOG_COMPILER_APPICON_NAME}</string> <key>CFBundleIdentifier</key> diff --git a/mkspecs/macx-ios-clang/Info.plist.lib b/mkspecs/macx-ios-clang/Info.plist.lib index ce28365500..34752ec40d 100644 --- a/mkspecs/macx-ios-clang/Info.plist.lib +++ b/mkspecs/macx-ios-clang/Info.plist.lib @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIdentifier</key> <string>${PRODUCT_BUNDLE_IDENTIFIER}</string> <key>CFBundlePackageType</key> diff --git a/mkspecs/macx-tvos-clang/Info.plist.app b/mkspecs/macx-tvos-clang/Info.plist.app index 04aef816c2..b9b67fe41e 100644 --- a/mkspecs/macx-tvos-clang/Info.plist.app +++ b/mkspecs/macx-tvos-clang/Info.plist.app @@ -8,8 +8,6 @@ <string>${PRODUCT_NAME}</string> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIcons</key> <dict> <key>CFBundlePrimaryIcon</key> diff --git a/mkspecs/macx-tvos-clang/Info.plist.lib b/mkspecs/macx-tvos-clang/Info.plist.lib index ce28365500..34752ec40d 100644 --- a/mkspecs/macx-tvos-clang/Info.plist.lib +++ b/mkspecs/macx-tvos-clang/Info.plist.lib @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIdentifier</key> <string>${PRODUCT_BUNDLE_IDENTIFIER}</string> <key>CFBundlePackageType</key> diff --git a/mkspecs/macx-watchos-clang/Info.plist.app b/mkspecs/macx-watchos-clang/Info.plist.app index 47f5a58d5e..5ac0ef78a0 100644 --- a/mkspecs/macx-watchos-clang/Info.plist.app +++ b/mkspecs/macx-watchos-clang/Info.plist.app @@ -8,8 +8,6 @@ <string>${PRODUCT_NAME}</string> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIdentifier</key> <string>${PRODUCT_BUNDLE_IDENTIFIER}</string> <key>CFBundleName</key> diff --git a/mkspecs/macx-watchos-clang/Info.plist.lib b/mkspecs/macx-watchos-clang/Info.plist.lib index ce28365500..34752ec40d 100644 --- a/mkspecs/macx-watchos-clang/Info.plist.lib +++ b/mkspecs/macx-watchos-clang/Info.plist.lib @@ -4,8 +4,6 @@ <dict> <key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string> - <key>CFBundleGetInfoString</key> - <string>Created by Qt/QMake</string> <key>CFBundleIdentifier</key> <string>${PRODUCT_BUNDLE_IDENTIFIER}</string> <key>CFBundlePackageType</key> diff --git a/mkspecs/win32-clang-msvc/qmake.conf b/mkspecs/win32-clang-msvc/qmake.conf index 238e401b84..be7cdaa396 100644 --- a/mkspecs/win32-clang-msvc/qmake.conf +++ b/mkspecs/win32-clang-msvc/qmake.conf @@ -15,6 +15,7 @@ QMAKE_CFLAGS_AVX = -mavx QMAKE_CFLAGS_AVX2 = -mavx2 QMAKE_CFLAGS_F16C = -mf16c QMAKE_CFLAGS_RDRND = -mrdrnd +QMAKE_CFLAGS_RDSEED = -mrdseed QMAKE_CFLAGS_AVX512F = -mavx512f QMAKE_CFLAGS_AVX512ER = -mavx512er QMAKE_CFLAGS_AVX512CD = -mavx512cd |