aboutsummaryrefslogtreecommitdiffstats
path: root/share
Commit message (Collapse)AuthorAgeFilesLines
...
* Assume that libc++ is present on iOS if cpp.minimumIosVersion is not setIvan Komissarov2019-06-261-2/+2
| | | | | | | | Otherwise, tests fail to locate old c++ library on recent Macs. Change-Id: I6ff5ceb0753dea73a5da1c70cfeb97b848cb7948 Reviewed-by: Qbs CI Bot <travis-bot@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add PathProbe::candidateFilter propertyIvan Komissarov2019-06-265-13/+15
| | | | | | | | | | | | | | | This property can be used to check if candidate conforms with some conditions. For example, an architecture of a shared library candidate should match the current qbs.architecture. Also, this will allow to implement support for the "text based stub libraries" (yaml files that point to a real library in a system) on macOS - instead of checking real file architecture, it should be read from .tbd file Change-Id: Ie84a3e70d883dec949440358e2f08213a8501982 Reviewed-by: Qbs CI Bot <travis-bot@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Allow PathProbe to search multiple filesIvan Komissarov2019-06-255-54/+119
| | | | | | Change-Id: I6ae2dd130cbafb03e51bc6e8e8a3e262d6d45fc6 Reviewed-by: Qbs CI Bot <travis-bot@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Fix build with NDKr20BogDan Vatra2019-06-171-1/+1
| | | | | | | | In NDK r20 clang adds -lc++ library automatically which leads to link fails. Change-Id: Ifa5ae1f4be7d8a93146ef08a5dc312596dd19147 Reviewed-by: Qbs CI Bot <travis-bot@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge "Merge 1.13 into master"The Qt Project2019-06-171-1/+1
|\
| * Merge 1.13 into masterChristian Kandeler2019-06-141-1/+1
| |\ | | | | | | | | | Change-Id: Idab53d6bd9b6f2841e30d4a31f53ac53a05c2f09
| | * Add Visual Studio 2019 support1.13Joerg Bornemann2019-06-071-1/+1
| | | | | | | | | | | | | | | | | | Fixes: QBS-1451 Change-Id: I644835cf8ce18d546e6c8e2c75f689766456555d Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* | | Fix javac version detectionIvan Komissarov2019-06-143-5/+19
|/ / | | | | | | | | | | | | It seems, that javac -version can return "12" instead of "12.0.0" Change-Id: I804cbadb410dc11f566fda122f3082a8607ebb36 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Do not use pathSuffixes in IncludeProbeIvan Komissarov2019-06-031-1/+4
| | | | | | | | | | | | | | | | | | | | | | This is wrong - on Windows, INCLUDE variable already contains /include suffix. This also makes IncludeProbe consistent with LibraryProbe. Change-Id: I166de8d4274842743886b0e234fff48688fd4c44 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Add pkgconfig.sysroot propertyIvan Komissarov2019-05-272-0/+6
| | | | | | | | | | | | | | | | | | | | | | By default, pkg-config uses qbs.sysroot property which is not desirable in some cases - for example, on macOS, even build for current system is sysrooted to the SDK folder within XCode installation. pkg-config installed with brew resides in /usr/local and can't be found within an SDK dir. For that reason, it make sense to override it manually Change-Id: Ibf779fd1bf0e87189abb2eab23d4e9e153fcca17 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | C/C++: Prevent adjacent duplicate libsChristian Kandeler2019-05-272-1/+10
| | | | | | | | | | | | | | | | It is never necessary to have the same library on the linker command line twice in a row, so we can safely remove such duplicates. Change-Id: Ie6ebe489862702828996fb78533eb4ac400df1cd Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* | Merge 1.13 into masterChristian Kandeler2019-05-234-16/+36
|\| | | | | | | Change-Id: Ic8e80604deb03e48fe264271de2e0add5023af87
| * Qt Support: Properly handle host libsChristian Kandeler2019-05-231-1/+13
| | | | | | | | | | | | | | | | | | | | We did not take into account that these might be located in a different place than the target libs. Change-Id: I2c27b6be6c8962416f1c062cd1d51ebed45f1796 Fixes: QBS-1445 Reviewed-by: Ola Røer Thorsen <ola@silentwings.no> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
| * Qt Support: Fix dependency de-duplicationChristian Kandeler2019-05-231-10/+12
| | | | | | | | | | | | | | | | | | | | | | | | This functionality broke completely in c4e60ed828, which went unnoticed because it turned into a no-op rather than causing an error. As a result, Qt libraries tended to appear more than once on the linker command line. Task-number: QBS-1441 Change-Id: Ic2634b4501f0360a1adb13aa847e34e9d38674f7 Reviewed-by: Ola Røer Thorsen <ola@silentwings.no> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
| * Do not override properties that are present in user plistIvan Komissarov2019-05-161-1/+2
| | | | | | | | | | | | Fixes: QBS-1447 Change-Id: Ie03530e960cbcf0ab14a9cb501a169aec311ec1a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Fix generation of the default Info.plist when building for iOSIvan Komissarov2019-05-162-4/+9
| | | | | | | | | | | | Task-number: QBS-1447 Change-Id: Icdd94b7731d1c84a225c53f780e339f9c7034320 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use validateFunc property in protobuf modulesIvan Komissarov2019-05-223-14/+22
| | | | | | | | | | | | | | | | | | This allows to use more native .base property to call super class validate function. Change-Id: I0f68be8e5823796502c53d719a00825075666b43 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Remove unused property in protobufbaseIvan Komissarov2019-05-201-1/+0
| | | | | | | | | | Change-Id: I52239c01a0e6dff3c22353c3ec4b354fd73a7662 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | bare-metal: Implement cpp.compilerIncludePaths for KEIL toolchainDenis Shienkov2019-05-163-0/+23
| | | | | | | | | | Change-Id: I3a70a4a1045444bf053ebf5ac7f32dbe72c827a5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | bare-metal: Implement cpp.compilerDefinesByLanguage for KEIL toolchainDenis Shienkov2019-05-153-10/+32
| | | | | | | | | | Change-Id: Id689c4e0290ba83e8755b6787601338a01af07c9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | bare-metal: Implement cpp.compilerDefinesByLanguage for SDCC toolchainDenis Shienkov2019-05-142-1/+7
| | | | | | | | | | Change-Id: I934a7bf3679dfda15ef245a9d14e834dc5136861 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | bare-metal: Implement cpp.compilerIncludePaths for SDCC toolchainDenis Shienkov2019-05-143-0/+36
| | | | | | | | | | Change-Id: If9143a5af10c842bbb2b6dd08d201f8d9963012f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | bare-metal: Use preferred architecture to dump macrosDenis Shienkov2019-05-143-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | .. for SDCC toolchain. The SDCC compiler binary support multiple architectures (aka 8051, z80, and others). So, it is necessary to set a target architecture option before getting the macros. We will take a preferred target architecture from the qbs.architecture property. If this property initially is undefined, then will be returned macros for default compiler architecture (usually it is mcs51). Change-Id: I379ffe90895b62e2786c3ffba2da47b1864da75d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | bare-metal: Implement cpp.compilerIncludePaths for IAR toolchainDenis Shienkov2019-05-103-0/+55
| | | | | | | | | | Change-Id: I3b8a3607e1e5c252731dea783acd9c1a0867a127 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | bare-metal: Implement cpp.compilerDefinesByLanguage for IAR toolchainDenis Shienkov2019-05-103-7/+25
| | | | | | | | | | | | Change-Id: Id18528b1f6f6a98bec3f877e70c660180078a66c Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge 1.13 into masterChristian Kandeler2019-05-105-5/+13
|\| | | | | | | Change-Id: Ic02d717f80f5d831f0cedb3b7c565a9bfef3a2a3
| * Fix building iOS-simulator apps when qbs.architecture is undefinedIvan Komissarov2019-05-071-1/+1
| | | | | | | | | | | | | | | | | | QtCreator does not set the qbs.architecture property for the ios- simulator and the condition check for the Qt modules fails. Task-number: QBS-838 Change-Id: I39fe4ad75d3261a6b83f81bf0593ee9445bcefd8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Qt: Do not link static plugins into static librariesChristian Kandeler2019-05-073-3/+8
| | | | | | | | | | | | | | | | | | Plugins should only be linked into applications and shared libraries. Change-Id: I95adc3f1f1ec8ea512e4166e78be1d9c5abb6745 Fixes: QBS-1441 Reviewed-by: Ola Røer Thorsen <ola@silentwings.no> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Fix reading *.prl file in qml.jsIvan Komissarov2019-05-021-1/+4
| | | | | | | | | | Change-Id: Iebe425c3e10be927666dd19d3be86bd30d8a43cd Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Android: add Qt.android_support.extraLibsBogDan Vatra2019-05-021-0/+10
| | | | | | | | | | | | | | extraLibs are needed to add OpenSSL support to Qt apps. Change-Id: Ib91f593c0be7d9a689fdc6c0537749353f3164eb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Android: Set a buildable default package nameBogDan Vatra2019-04-291-1/+6
| | | | | | | | | | Change-Id: Ia7edff17b4485d521177e9e87f1dd8d41c91c32a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Android: Nuke mips[64] abi supportBogDan Vatra2019-04-263-18/+6
| | | | | | | | | | | | | | Mips' abis were removed long time ago from the Android NDK Change-Id: I8d006b6758ee4faa7f2d697a7252981470d43e1a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Default to the minimum supported NDK API versionBogDan Vatra2019-04-263-7/+11
| | | | | | | | | | | | | | | | | | - android-16 will be used for 32 bit arm ABIs - android-21 will be used for all 64 bit ABIs and x86. x86 has broken wstring support in android-16 to android-19. Change-Id: I38f6e6ec3f16c172cb0b061cfc4cc9efdb8f1700 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Android: default to c++14BogDan Vatra2019-04-251-0/+1
| | | | | | | | | | | | | | See https://github.com/android-ndk/ndk/wiki/Changelog-r19 Change-Id: Iaa778979bad4b42dbbc0b0915104cf9f9738309e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Android: Nuke support for old NDKsBogDan Vatra2019-04-254-191/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Support NDK only r19+ - Remove deprecated and unsupported stl libs: "system", "gabi++_static", "gabi++_shared", "stlport_static", "stlport_shared", "gnustl_static", "gnustl_shared" - Fix armv7a link (we need to link against libc++.[a/so].API) - Use lldb - Use llvm bin utils [ChangeLog][Android] Support NDK only r19+, remove deprecated and unsupported stl libs, use lldb and llvm bin utils Change-Id: If9d5d5462dffb6c9bf481f910ee2c3ba03bc5649 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | [Android] Allow the user to override version attributesBogDan Vatra2019-04-241-1/+6
| | | | | | | | | | | | | | | | Allow the user to override the android::versionCode and android::versionName from QBS project file. Change-Id: I437294e8f6b52c1072bb1c992d1c7ac5233896c9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use LLVM toolchain starting with NDK r19+BogDan Vatra2019-04-241-6/+14
| | | | | | | | | | | | | | | | Starting with NDK r19+ llvm toolchain has all the tools we need and gcc toolchain will be removed in future versions. Change-Id: Ifc88d4dbf779fd39950f23a56191e61c9369a432 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | NDK r+19 doesn't need gcc-toolchain anymoreBogDan Vatra2019-04-241-1/+1
| | | | | | | | | | Change-Id: Ibe91183e1944365f10e64c104187167a6310d1fd Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Android: follow official android flags for cmakeBogDan Vatra2019-04-241-2/+13
| | | | | | | | | | | | | | | | | | Update our cflags and lflags with the ones found in <ndk_r19>/build/ cmake/android.toolchain.cmake Task-number: QTBUG-73274 Change-Id: Ieb1923ffa6658fa917f7ead1e1bc036cf595f8bb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix tests on non-latin systemsIvan Komissarov2019-04-231-0/+3
| | | | | | | | | | | | | | | | Qt Creator uses non-latin letters in path to the build directory in case of ru_RU.UTF-8 $LANG on Linux. Now QBS does handle that correctly. Change-Id: Ifc727b120a5f0ee60972c5e3ed24067426db8df2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge 1.13 into masterChristian Kandeler2019-04-161-32/+27
|\| | | | | | | Change-Id: Ia8cf58fc81c2567bc112eb706fa595a1def9dede
| * Qt support: Fix detection of deployment target for Apple platformsv1.13.0Christian Kandeler2019-04-081-32/+27
| | | | | | | | | | | | | | | | | | | | | | In Qt 5.12, the deployment target information has moved from qmake.conf into an included file, so let's expand the includes before looking for the respective line. Fixes: QBS-1434 Change-Id: I174c03cf227f319e33f484e82735d7ed550c2b11 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | bare-metal: Add SDCC toolchain supportDenis Shienkov2019-04-103-0/+605
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds a basic support for the SDCC compiler: * http://sdcc.sourceforge.net/ As this compiler support multiple architectures, then it is impossible to uniquely identify the current architecture by dumping of the pre-defined macros (because its content depends on a target flag). In this case the cpp.architecture will contains a default architecture (which is dumped with an omitted target flag). To use it with Qt Creator, it is enough to add there a desired Kit with a custom SDCC C/C++ compiler, and then set the following in the Kit's Qbs profile settings: * Key: qbs.toolchainType * Value: sdcc To create the SDCC profile it is enougth to use the following command: qbs setup-toolchains --type sdcc <path/to/sdcc/compiler/binary> <profile name> A toolchain type can be omitted; in this case the QBS will tries to detect the toolchain type from the specified compiler name. Also it is possible to auto-detect the SDCC toolchain from the PATH environment using the following command: qbs setup-toolchain --detect At current time are supported only the 8051 (aka MCS51) architecture; other architectures can be added later. Change-Id: I8cc239d62e35472ab667e054a64a1e59c2d548bd Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Add support for the clang-cl compilerIvan Komissarov2019-04-106-377/+611
|/ | | | | | Task-number: QBS-1316 Change-Id: Ibf9da364610c260ead088a8990a70c7739d53c39 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Auto-detect Android.ndk.platformChristian Kandeler2019-04-055-22/+58
| | | | | | | ... the same way as Android.sdk.platform. Change-Id: I974fdfd9f56f312cbd39ea155d87694622a9c0b8 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* bare-metal: Improve filtering for KEIL compiler outputDenis Shienkov2019-03-191-3/+8
| | | | | | | | Added some additional allowed output patterns (for MCS51 architecture). Change-Id: I68629566ea11c53fd5d4c10ae6e1c4e668a70694 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* bare-metal: Add missed linker options from IAR for AVR toolchainDenis Shienkov2019-03-121-0/+4
| | | | | Change-Id: I7654eb66ea4a11c9e7e035d3512f2b0601733b28 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* PkgConfigProbe: Check for package version in an extra callChristian Kandeler2019-03-121-7/+12
| | | | | | | | | The --*-version arguments cannot be mixed with --cflags and --libs. Change-Id: I6326fd34f4698cb91cdaa592d7843bd2fdeaa7cf Fixes: QBS-1430 Reviewed-by: Kai Dohmen <psykai1993@googlemail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android: Check for valid package name upon package creationChristian Kandeler2019-02-271-1/+10
| | | | | | | | | That's nicer than letting users get a cryptic error message when they try to install their package on the device. Change-Id: Ie5321a28475f879f991c4440c7e64c1c3ebd5a9d Fixes: QBS-1428 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* bare-metal: Fix architecture name for 8-bit AVR mcu'sDenis Shienkov2019-02-191-3/+0
| | | | | | | | | | | | | | The pre-defined '__AVR_ARCH__' macro just defines a machine specific type of a core: https://www.microchip.com/webdoc/AVRLibcReferenceManual/using_tools_1using_avr_gcc_mach_opt.html Each core may differ in the size of a RAM, ROM, FLASH, presence of an additional instructions or a periphery, but an architecture always is 8-bit RISC AVR. Change-Id: I39b12e6b4cf4a24a1c5c27c61c31a6e01437acea Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>