summaryrefslogtreecommitdiffstats
path: root/src/corelib/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* Regenerate everything under ./srcAlexandru Croitor2019-11-121-1/+0
| | | | | | | Change-Id: Ibdbdc17f8c2ee41356f490dd839a47e1bcf4c586 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate a bunch of projects after pro2cmake changesAlexandru Croitor2019-11-121-1/+1
| | | | | | Change-Id: I675a068411785364915a074ca0e631fec944d228 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Re-generate affected cmake files and configure.json after the mergeSimon Hausmann2019-10-171-3/+10
| | | | | | | | | This also removes the workarounds of commit b2662b05dd078c46b82f5f041f51b0b83554113d now that it's fixed "upstream" in the .pro files. Change-Id: Idd5e6273873a700fcda5a6cad2039c4e88b61f6f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Regenerate files after dev -> wip/cmake mergeAlexandru Croitor2019-10-141-2/+2
| | | | | | | | | | Note the following bigger things that had to be done: Handle GSS library / feature with a new custom find module. Implement rudimentary support for relocatability (does not currently handle extprefix). Change-Id: Ic6cd27dda7ebca9829f51cb42ea76fff6d1767ef Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix up android architecture suffixingSimon Hausmann2019-10-141-2/+2
| | | | | | | | | | | Don't globally map any variable use of QT_ARCH to ANDROID_ABI, as that'll break if somebody uses it in a different context. Instead the CMAKE_SYSTEM_PROCESSOR variable provides a reasonable value and it is also set by the Android toolchain files. Change-Id: Ibf203c39db586bbec5b800a365d83b3a509dbb62 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix Android build from multi-arch qmake changesLeander Beernaert2019-10-141-1/+1
| | | | | | | | | | Add condition replacements for the android ABIs. Add a replacement for QT_ARCH to ANDROID_ABI, since QT_ARCH is only used with the android build for now. Change-Id: I553d7910546de32236f723ec2e9a05a18da76130 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Regenerate qtbase after wip/qt6 -> wip/cmake mergeAlexandru Croitor2019-10-141-26/+54
| | | | | | | | | | | | | | | Note that android builds will be broken after this merge and regeneration, because we don't currently handle the minimum required changes that were brought in with the Android multi ABI support that comes from 5.14. This will have to be addressed in a separate change. For now the build on Android will fail while compiling due to incorrect generation of LIB_SUFFIX with QT_ARCH. Change-Id: Ia4a871f4b7ddd0da11caf5f34e10a599a97bb55d Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Clean up tinycbor handlingSimon Hausmann2019-10-081-1/+1
| | | | | | | | | | | | Now that pro2cmake handles the include path resolution more like qmake, the tinycbor wrapper target is not needed anymore. Re-generated some CMakeLists.txt to complete that step. Change-Id: I032b2e9bdf9e26f63f3c550d7bca5df93369a82a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate qtbase/src projectsAlexandru Croitor2019-09-301-4/+4
| | | | | | | | To get less diffs for next merges and pro2cmake changes. Change-Id: I7fb5ff34bb884072a9964e8e3488c69f4290fca2 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Create module tools packages (config files) automaticallyAlexandru Croitor2019-09-221-1/+0
| | | | | | | | | | | | | | | | | | | | | Previously you had to make sure to use DISABLE_TOOLS_EXPORT in an add_qt_module call if the tools are built after the module, as well as to manually call qt_export_tools after all associated tools are built. This was needlessly complex, especially for people that are porting a repo with tools for the first time. The tools package creation is now automatically done at QtPostProcess step, so there is no need to use either DISABLE_TOOLS_EXPORT or qt_export_tools() manually. DISABLE_TOOLS_EXPORT is now a no-op, and will be removed once all repos are updated not to use it. Change-Id: I965b0d3a8a0cb908afae87b047083ed7bea9f02f Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix add_qt_docs callsSimon Hausmann2019-09-191-1/+1
| | | | | | | | Brown paper bag for me, don't use a comma to separate parameters when calling a function. Change-Id: I21e16142fab4fd1c2714df13cd6a892b036e899a Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Re-generate main module CMake filesSimon Hausmann2019-09-181-1/+1
| | | | | | | This fixes the calls to add_qt_docs to include the target. Change-Id: I2c4c807bca8faa48bb49f4b8710035f21abfca0e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Regenerate src/corelibAlexandru Croitor2019-09-111-5/+6
| | | | | | | Change-Id: Ibb69cad45169546fa97ee06881868cdbb082e9d6 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Use pre-compiled headers when building Qt with cmakeMårten Nordheim2019-09-111-0/+5
| | | | | | | | | | | | | | | | | | Some modules define their own manually-maintained lists, and we can rely on the headers generated by each module to include in the pch as well e.g. QtCore/QtCore. There's also e.g. QtWidgetDepends for QtWidgets, but this only works for modules, not for tools, examples or other applications. For now we'll use the Qt<Module>/Qt<Module> headers for the modules we depend on. Building with PCH can be disabled with -DBUILD_WITH_PCH=NO, and it only works for versions of CMake newer than 3.15.20190829. Change-Id: Iae52bd69acfdfd58f4cd20d3cfa3c7f42775f732 Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Extract add_qt_resource into reusable componentsLeander Beernaert2019-08-221-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | This patch moves all of the underlying code for add_qt_resource into a common reusable snippet for both the Qt build and user projects. For users, the new API is available under QT5_ADD_RESOURCES. If outfiles is a CMAKE target we will use the new API, otherwise we will fall back to the old behavior. This patch also adds EXTRA_CMAKE_FILES and EXTRA_CMAKE_INCLUDES to add_qt_module so that module specific cmake files can be installed and loaded by the module's config.cmake. The code will be installed under CMAKE_BINARY_DIR/Qt{}CoreResource.cmake and is injected into Qt{}Core_Config.cmake via the extra cmake includes passed into add_qt_module. To make sure it still works with QtBuild, we do the actual generation of the file from QtBaseGlobalTargets and include the generated file there as well. Change-Id: I85fefaa11dde01a6790d23c62d6a64cd157e2617 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Merge branch 'wip/qt6' into wip/cmakeAlexandru Croitor2019-08-151-61/+66
| | | | Change-Id: I50ac36b8803c296998149e98cc61e38687cdd14b
* Fix mapping of Apple platforms in pro2cmake.pyAlexandru Croitor2019-07-231-15/+23
| | | | | | | | | | | | "mac" scope in qmake actually means all mac platforms, just like "darwin", aka macOS, iOS, watchOS, etc. Regenerate corelib, gui and testlib after this modification. This is a requirement for the iOS port. Change-Id: I029c7e907d13f6ec31816a08602a5930f9ac16a7 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Add special case handling for corelib mimetypes resourcesLeander Beernaert2019-07-181-5/+7
| | | | | | | | | | | | | We have to treat the resources from mimetypes in corelibs specially as they are reused for two test cases. Since we no longer use the qrc files, we have wrapped the relevant code in a function that can be called for every target that depends on it. This change also corrects formatting for the generate CMake code regarding resource commands. Change-Id: I50a05c81151d75aefc9ca165f5ffeb9f5cd77162 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Merge remote-tracking branch 'origin/wip/qt6' into wip/cmakeAlexandru Croitor2019-07-111-20/+10
| | | | Change-Id: I715b1d743d5f11560e7b3fbeb8fd64a5e5ddb277
* Android: Final changes for APK generationLeander Beernaert2019-06-261-3/+12
| | | | | | | | | | | | | | | | | | | | Generate the ${MODULE}-android-dependencies.xml for the androiddeployqt tool. This will ensure all the right plugins and dependencies are packaged when generating the apk. This change also changes the visibility for executable to default/public. Not having this will cause the application to crash as we can't locate main() in the executable (shared library). Additionally pro2cmake conversion script has been updated to perform the required conversions for the Android settings. Finally, the 6 projects in QtBase that have Android dependencies have been updated with the new script and the step that produces the xml files in run at the end in QtPostProcess.cmake. Change-Id: I9774ba1b123bc11cae972fa37054ef2c51988498 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Merge remote-tracking branch 'origin/wip/qt6' into wip/cmakeAlexandru Croitor2019-06-141-30/+30
| | | | | | | | | | This changes many different CMake places to mention Qt6 instead of Qt5. Note that some old qt5 cmake config files in corelib are probably not needed anymore, but I still renamed and kept them for now. Change-Id: Ie69e81540386a5af153f76c0242e18d48211bec4
* Make WinMain linkage compatible with Qt 5Simon Hausmann2019-06-121-0/+11
| | | | | | | | | | | | | | | | | | | | In Qt 5, the Qt5Core target was extended by Qt5CoreConfigExtras.cmake to have a generator expression as interface linkage that would conditionally link WinMain. This patch implements the same through regular interface linkage right in corelib. Since the linkage happens through a generator expression, our dependency generator does not see this as a dependency. Therefore we add this as an unconditional package dependency for corelib, on Windows. In theory this could be done also in winmain's CMakeLists.txt, as targets can be extended outside of their directory. However this adds a directory id (WinMain:@<023423>) to the linkage, which mysteriously is not removed on the exported core target. Change-Id: If2abb9ba790f51274f582c9ec28c13d968b84302 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Qt CMake Build Bot
* Export installation locations compatible with qmake -queryVolker Krause2019-06-051-0/+10
| | | | | Change-Id: I634bd1036ce197602d4acaf4535ab43227d120a8 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Update .prev cmake filesAlbert Astals Cid2019-06-051-1/+1
| | | | | Change-Id: I440a3cb0288670424cf20c5d56e641a6741fee91 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Add WrapPCRE2 packageCristian Adam2019-06-051-1/+1
| | | | | | | | The WrapPCRE2 package handles the PCRE2 packages that have targets, and reuse them. Change-Id: I24b0b51f507703cd8287f845f7e425f62dd2c3d6 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake: build with exceptions disabled by defaultAlbert Astals Cid2019-06-051-0/+1
| | | | | | | | | Only re-enable exceptions for the modules that do CONFIG+=exceptions in qmake Change-Id: I9f19078adbdc1b8fa3d4102fb51a099e7e35522e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Regenerate the main qtbase modulesAlexandru Croitor2019-06-051-0/+2
| | | | | | | | | | | | | | | There were some changes done in pro2cmake, so regenerate the main qtbase modules to keep everything up to date. Some new whitespace got added. Some special cases were removed (ZLIB). Some opengl code got moved around. Some plugin types were added. And some other minor things. Change-Id: Ie8cba4a9aa6b4b163c39d6cf546ea9e0bfc05c01 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Merge remote-tracking branch 'origin/dev' into wip/cmakeAlexandru Croitor2019-06-031-1/+3
| | | | | | Take 5. Change-Id: Ifb2d20e95ba824e45e667fba6c2ba45389991cc3
* Improve qconfig.cpp generationAlexandru Croitor2019-05-311-1/+1
| | | | | | | | | | | | | | | | | | We used to copy a qconfig.cpp.in file verbatim. Add some plumbing to actually compute the strings and their lengths as it is done in qtbase/configure.pri. Also make sure to replace the hardcoded linux mkspec with one that is automatically determined. Of course both the detection of the mkspec, and the hardcoded strings for include, lib, etc. should be fixed in the future. This is a stepping stone to allow building a Qt application using the qmake built by CMake. Change-Id: I2e6754f44b20b09b09d14fd85785d56288e6517b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Add basic support for compiling applications with qmakeSimon Hausmann2019-05-311-0/+1
| | | | | | | | | | | | | | | | | * Generate module .pri files * Generate qconfig.pri * Propagate MODULE_CONFIG from the .pro files This enables the basic use-case of simple application builds that for example use the moc. Omitted from the patch is support for private module configurations, prl files (should we do this?) and possibly more hidden gems that need to be implemented to for example support building Qt modules with qmake. Task-number: QTBUG-75666 Change-Id: Icbf0d9ccea4cd683e4c38340b9a2320bf7951d0d Reviewed-by: Qt CMake Build Bot Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Rerun pro2cmake on projects that use .ui filesAlexandru Croitor2019-05-221-2/+0
| | | | | | | Task-number: QTBUG-75875 Change-Id: I95109b07fc4a6e09fe7911a21fc5f27f2c895d77 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Build and use double-conversion library shipped by Qt when neededAlexandru Croitor2019-05-221-2/+3
| | | | | | | | | | | | | | | | Some Linux distros might not have a double-conversion library. Because it is such an essential library for QtCore, compile and use the the copy of the library bundled with Qt. Also change library name to be a proper target with double colons, so that in case the library is not found for some reason, the CMake configure step would fail, instead of failing at link time. Task-number: QTBUG-74133 Change-Id: I9f3b4298ae6e952891a7a89541d46878176bf1ce Fixes: QTBUG-75891 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Regenerate corelibAlexandru Croitor2019-05-201-14/+18
| | | | | | | And add the first version of the .prev file. Change-Id: I5d8f2354f86bc279e185e31173df4aeeb6e46116 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Fix special cases in corelibAlexandru Croitor2019-05-061-12/+13
| | | | | Change-Id: I506f379245619c8b5d248ea27dba35a165b455ee Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: export locally-built dependencies in static buildJean-Michaël Celerier2019-05-021-0/+7
| | | | | Change-Id: Ifbcedd32cef3b9c8b4b8c9ca0d229850f696f406 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Write find_dependency() calls in Qt Module config filesAlexandru Croitor2019-05-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change introduces a new function called qt_find_package() which can take an extra option called PROVIDED_TARGETS, which associates targets with the package that defines those targets. This is done by setting the INTERFACE_QT_PACKAGE_NAME and INTERFACE_QT_PACKAGE_VERSION properties on the imported targets. This information allows us to generate appropriate find_dependency() calls in a module's Config file for third party libraries. For example when an application links against QtCore, it should also link against zlib and atomic libraries. In order to do that, the library locations first have to be found by CMake. This is achieved by embedding find_dependency(ZLIB) and find_dependency(Atomic) in Qt5CoreDependencies.cmake which is included by Qt5CoreConfig.cmake. The latter is picked up when an application project contains find_package(Qt5Core), and thus all linking dependencies are resolved. The information 'which package provides which targets' is contained in the python json2cmake conversion script. The generated output of the script contains qt_find_package() calls that represent that information. The Qt5CoreDependencies.cmake file and which which dependencies it contains is generated at the QtPostProcess stop. Note that for non-static Qt builds, we only need to propagate public 3rd party libraries. For static builds, we need all third party libraries. In order for the INTERFACE_QT_PACKAGE_NAME property to be read in any scope, the targets on which the property is set, have to be GLOBAL. Also for applications and other modules to find all required third party libraries, we have to install all our custom Find modules, and make sure they define INTERFACE IMPORTED libraries, and not just IMPORTED libraries. Change-Id: I694d6e32d05b96d5e241df0156fc79d0029426aa Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Export tool config and target files for each relevant moduleAlexandru Croitor2019-05-021-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMake will now generate config and target files for each module that provides tools. As a result, namespaced global targets such as Qt5::moc or Qt5::rcc can be made available. Third party projects that require just these tools, and not the Qt modules themselves, should specify CMAKE_PREFIX_PATH pointing to the installed Qt location, and call find_package(Qt5CoreTools), find_package(Qt5GuiTools), etc. It is also possible to call find_package(Qt5Tools REQUIRED Core Widgets) where the last option is a list of modules whose tools should be imported. Note that all the tools are in the Qt5:: namespace and not in the Qt5CoreTools:: or Qt5WidgetsTools:: namespace. This commit also changes the behavior regarding when to build tools while building Qt itself. When cross compiling Qt (checked via CMAKE_CROSSCOMPILING) or when -DQT_FORCE_FIND_TOOLS=TRUE is passed, tools added by add_qt_tool will always be searched for and not built. In this case the user has to specify the CMake variable QT_HOST_PATH pointing to an installed host Qt location. When not cross compiling, tools added by add_qt_tool are built from source. When building leaf modules (like qtsvg) that require some tool that was built in qtbase (like moc), the module project should contain a find_package(Qt5ToolsCore) call and specify an appropriate CMAKE_PREFIX_PATH so that the tool package is found. Note that because HOST_QT_TOOLS_DIRECTORY was replaced by QT_HOST_PATH, the ensure syncqt code was changed to make it work properly with both qtbase and qtsvg. Here's a list of tools and their module associations: qmake, moc, rcc, tracegen, qfloat16-tables, qlalr -> CoreTools qvkgen -> GuiTools uic -> WidgetTools dbus related tools -> DBusTools Task-number: QTBUG-74134 Change-Id: Ie67d1e2f8de46102b48eca008f0b50caf4fbe3ed Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Merge commit 'dev' into 'wip/cmake-merge'Tobias Hunger2019-04-161-52/+92
| | | | Change-Id: I176c40d031be26a1dd1cf08843e448a660598783
* CMake: Update src/corelibTobias Hunger2019-04-111-157/+157
| | | | | Change-Id: I0321883f762460b146666bfbad0d8b27c3fdeadd Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix architecture conditionsAlexandru Croitor2019-04-031-1/+1
| | | | | | | | | | | The actual variable that contains the architecture is TEST_architecture_arch. TEST_architecture only contains the value if the test was performed or not. Fix the conversion script and all the generated files. Change-Id: Icb3480832cab894948f4fef03b8bc8187cab6152 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Fix AUTOMOC and friends to run only once the tools are builtAlexandru Croitor2019-03-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | While building on macOS, AUTOMOC sometimes hanged indefinitely. The problem was that AUTOMOC was executed for the qmacstyle plugin before moc was actually built. Because of an upstream bug in CMake, AUTOMOC was caught in a deadlock without reporting that spawning the moc process failed. Specifically if a libuv spawn() call failed, the condition variable for a waiting thread was not notified, and the thread kept waiting forever for the process launch to finish. Fix the dependency by setting the AUTOGEN_TARGET_DEPENDS property on all targets that have AUTOGEN tools enabled. This makes sure that moc and friends are built before they are used. Also add some special cases to disable autogen tools on certain targets to break cycles between targets. Fixes: QTBUG-74636 Change-Id: I6e689e63cba1962525f169f332a58498d173c0a6 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Mikhail Svetkin <mikhail.svetkin@qt.io>
* Fix windows build after gui regenerationAlexandru Croitor2019-03-211-8/+14
| | | | | | | | | | | | | | | | | - vulkan/nolink is not a valid target, instead pass along vulkan include directories to consuming targets, and don't link to the library at all - fix vulkan support target name in the windows qpa dependencies - the wrong opengl dynamic feature was used in the windows qpa (the current way is consistent with qmake, otherwise there were issues with the feature evaluation, because gui feature definitions are not available in the qpa project scope) - fix issue with qfloat16_f16c not being built because of previous subarch issues Change-Id: Ia75fc76a71e516fe8718027063fe554657d4d47b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix Windows buildAlexandru Croitor2019-03-181-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | - Fix qmake build - Fix QtNetwork moc-ing, by including the moc files inside the cpp files - Fix sql odbc plugin by including QT_PLUGIN define - Fix Boostrap to link against the Platform target, to get the correct Unicode and WIN64 defines. - Fix vulkan headers to be found - Fix freetype bzip and png unresolved symbols / linker issues when building minimal platform plugin (also need to make sure to use the vcpkg toolchain instead of CMAKE_PREFIX_PATH because then find_package is overridden, which does magic to properly propagate static library dependencies). - Fix qfilesystementry test not to be built without private tests feature (it led to undefined symbols issues). - Make sure to remove QT_NO_CAST_TO_ASCII define when building QtCore, so that the qstringbuilder3 test builds successfully. Task-number: QTBUG-74140 Change-Id: I353d08392b604d55f8e62cdd8696d1e19a3c084a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Corelib: Update to include qrc-file removalTobias Hunger2019-03-181-1/+6
| | | | | Change-Id: I18d556d7517de7d9f2eb55045511d2166f0105ce Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: Re-generate CMakeLists.txt file for corelibTobias Hunger2019-03-111-351/+540
| | | | | Change-Id: I96fb3e388a39481c513f1c6a23327e41a785e4af Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake: Fix moc on macOSMikhail Svetkin2019-03-061-1/+4
| | | | | | | | | moc does not generate moc_defs.h and that's why moc does not understand that he runs on macOS. It happens because cmake can not find Qt version. Change-Id: I34c51ebb69dc1ff782a0f129e114cda819122805 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix buildSimon Hausmann2019-03-061-1/+1
| | | | | | | | | There is no more internal function for adding general linker flags. Let's use the appropriate cmake function right away, regardless of the compiler choice. This is also how global.pri handled it. Change-Id: I20c9002a31aa4d7e64c1c59d8d67118774da337c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Fix build without double-conversion on macOSMikhail Svetkin2019-02-271-0/+5
| | | | | | Change-Id: I5102e93141eec95044df44884dcf6ecd1b9e8dd0 Reviewed-by: Mikhail Svetkin <mikhail.svetkin@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake: fix a syntax for elseLiang Qi2019-02-211-1/+1
| | | | | | | | This amends d885226544c. Change-Id: Ia7b2fb6e0e762c73d3c0775cdd106c1dec646ab2 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix ELF interpreter detectionSimon Hausmann2019-02-201-6/+16
| | | | | | | | | | | | Use the same approach as with qmake, by using readelf -l /bin/ls and then a regular expression to extract the program interpreter path. It's a little simpler in cmake because we can avoid the perl dance and quotes and just use cmake's built-in regular expression matching. This change also excludes static builds, as with qmake. Change-Id: I699e166c4b38b3fe98e6390316206109ad6363f9 Reviewed-by: Kevin Funk <kevin.funk@kdab.com>