summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qt_helper_lib.prf
Commit message (Collapse)AuthorAgeFilesLines
* Install 3rd party headers and meta for static buildsMichal Klocek2020-11-161-1/+29
| | | | | | | | | | | | | | | | | When doing static builds any project which uses same libraries as qtbase 3rd party libraries will most likely end up in broken binaries, since symbols will be included twice. Moreover, libraries can have different versions. Install 3rd party headers and meta data for: * qtlibpng * qtfreetype * qtharbuzz Pick-to: 5.15 Task-number: QTBUG-87154 Change-Id: I243dff9a12a95af20dee414f55bb762b8d579c81 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android: Install the qmldir files when configuring for a single abiAndy Shaw2020-08-031-1/+1
| | | | | | | | | | | This amends 0ef46b41d86b9fad4fc4a18bd577d208afa1fce8 to ensure the new configuration is styled correctly for qmake. Task-number: QTBUG-80938 Change-Id: Iebfff3ff0570d2e92d01d4eb1178c0d6261468f9 Pick-to: 5.15 Reviewed-by: Lars Schmertmann <lars.schmertmann@governikus.de> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Android: Enable configuring for a single abi architectureAndy Shaw2020-07-101-1/+1
| | | | | | | Fixes: QTBUG-80938 Pick-to: 5.15 Change-Id: Id87202e6b2520b18c6b06b71675157f588a28bd6 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Revert "Don't reference build directory in helper lib pri"Liang Qi2020-05-071-9/+9
| | | | | | | | | | This reverts commit c9d9ac5bb07a737c862b40302cd681f7b3b321fd. This breaks prefix build which tries to link to install folder. Task-number: QTBUG-83967 Change-Id: I084152afde91c2063154bef8ac99d7e997c9394b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Don't reference build directory in helper lib priTor Arne Vestbø2020-04-301-9/+9
| | | | | | | Otherwise the helper-lib pri file will be unusable when installed. Change-Id: Id79a61e6ca9bb1b32c82ee158fd18f51319c484e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix regression when doing a debug only build with MSVCKai Koehne2020-03-031-1/+1
| | | | | | | | | | | | | | qt helper libs for msvc will always get a 'd' suffix for debug builds. This is different than for MinGW, where it will only get a 'd' for mixed debug builds in -debug-and-release scenarios (see commit 1749f9184b97). This amends d32a679, which incorrectly removed the 'd' suffix when linking helper libs built for MSVC. Fixes: QTBUG-82620 Change-Id: I8097de0e1bab4d1e58fc37b0c50ee6b07650a626 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* MinGW: Fix debug-and-release configurationKai Koehne2020-02-271-1/+1
| | | | | | | | | | Make sure that, if Qt was configured with -debug-and-release, winmain and user apps are generated by default in debug-and-release mode, too. This amends 9b4ec1393fde2af7deb39b9a2f98bcc93635603f . Change-Id: I0f169d63ca98c9bde41114225004a0844425db33 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Say hello to Android multi arch build in one goBogDan Vatra2019-08-261-13/+20
| | | | | | | | | | | | | | Multi arch build in one go is need to support the new .aab packaging format. By default the users apps are built for all Android ABIs: arm64-v8a armeabi-v7a x86_64 x86 The user can pass ANDROID_ABIS to qmake to filter the ABIs during development, e.g. qmake ANDROID_ABIS="arm64-v8a armeabi-v7a" will build only for arm ABIs. [ChangeLog][Android] Android multi arch build in one go, needed to support the new .aab packaging format. Change-Id: I3a64caf9621c2a195863976a62a57cdf47e6e3b5 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* configure: normalize dashes to underscores in exported librariesOswald Buddenhagen2018-12-191-1/+2
| | | | | | | it works without it, but technically speaking it's undefined behavior. Change-Id: Icdcdd5b923ce4cecd9dc9e75f9d5d66d0fa8a032 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* add support for transitive deps to QMAKE_USEOswald Buddenhagen2018-12-071-0/+13
| | | | | | | | | | | | | | | | | | | we already knew the dependencies (as they are declared in the json files), but failed to export them in any way, which made linking against statically built external deps which have deps in turn fail (unless the project happened to pull in the dep anyway, as is the case with qtcore + zlib). the previous assumption was that the USE-able library objects would be self-contained, but that is conceptually unclean. instead, properly export the raw dependencies and resolve them only in qmake_use.prf. note that pkg-config produces self-contained output, so we need to actively subtract the dependencies we know. Change-Id: I4b41a7efc05bbd309a6d66275d7557a80efd5af4 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* configure: actually resolve libraries into full filepathsOswald Buddenhagen2018-12-031-4/+15
| | | | | | | | | | | | | | this considerably speeds up failures, as no doomed build is attempted, and produces more reliable results, as no second lookup (which would be subject to environment changes) is done any more during the build. in principle, this also opens up possibilities like selecting specific variants of dependencies, automatically extracting rpaths, etc. qt_helper_lib.prf also needs to create fully resolved library names now. Change-Id: I65f13564b635433030e40fa017427bbc72d1c130 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* fix usage of "empty" librariesOswald Buddenhagen2017-02-221-0/+1
| | | | | | | | | | | | | a header-only library in a default location would produce no variables at all, making it appear undefined. fix this by forcing the writeout of the QMAKE_LIBS_* variable, and use its definedness (rather than non-emptiness) as a signifier. this works for both QMAKE_USE and configure tests'/libraries' 'use' entries. Change-Id: Id7a1e23725caba1a91ea4db448b4aeb7fe632393 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* fix debug-only builds on debug-and-release platformsOswald Buddenhagen2016-11-071-4/+7
| | | | | | | | | | this actually affects only non-framework Darwin builds - debug-only framework builds are impossible, and Windows is always debug-and-release. Change-Id: Ia79dbbefc5750168ebd8967fe4afbe173f55a0d6 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Get rid of simulator_and_device CONFIG option (mostly)Oswald Buddenhagen2016-10-161-1/+0
| | | | | | | | | | | | | | | | A separate flag is no longer needed now that simulator and device builds are not exclusive any more (*) - both 'simulator' and 'device' being set at the same time is a sufficient indication (uikit/default_pre.prf sets this up according to the simulator_and_device feature and the QMAKE_MAC_SDK variable). (*) xcodebuild mode actually still uses exclusive builds, but this is activated locally in uikit/default_post.prf, and uikit/xcodebuild.prf implements the actual build passes manually anyway, so this change does not affect it. Change-Id: Idf173a7bfeb984498d3a49ed6b8d1a16da6c2089 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* use helper libs via QMAKE_USEOswald Buddenhagen2016-10-151-0/+25
| | | | | | | | | | | | | | | | | | | | for that, qt_help_lib.prf gains the ability to write "external module pri" files that contain suitable information for QMAKE_USE. these files have a bunch of limitations: - they are not installed, because a) they are not relocatable and b) the helper libs' headers are not installed, either - it won't work with qmake -r, which is ok, as qt5 does not build with qmake -r anyway - deps are not transitive, neither at build nor at use time the freetype, harfbuzz-ng, pcre, and png helper libs have been adjusted accordingly, and their uses replaced with QMAKE_USE instances. this also allowed inlining the now trivial {harfbuzz,pcrc,png}_dependency.pri files. freetype_dependency.pri remains due to its funkiness. Change-Id: I16890eecb122e34ec49f3d3e68380d1ea71a198a Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Use qtConfig throughout in qtbaseLars Knoll2016-08-191-4/+4
| | | | | | | | | | | Use the new qtConfig macro in all pro/pri files. This required adding some feature entries, and adding {private,public}Feature to every referenced already existing entry. Change-Id: I164214dad1154df6ad84e86d99ed14994ef97cf4 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-231-1/+1
|\ | | | | | | | | | | | | | | Conflicts: src/angle/src/libGLESv2/libGLESv2.pro src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.cpp Change-Id: If8da4cfe8f57fea9f78e7239f378a6302c01674e
| * limit installation of ANGLE translator and preprocessor helper librariesOswald Buddenhagen2016-06-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | libGLES2 (the only user of these libraries) is built dynamically even in a static qt built when dynamicgl is configured. in this case the static libraries need not be installed. amends 2311997. Change-Id: Ic9bc3937d6ee0d97e0ca7fc96596fa90ebfe8710 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | fix logical mismerge from 5.6Oswald Buddenhagen2016-06-171-1/+1
|/ | | | | | | | iphonesimulator_and_iphoneos was renamed to simulator_and_device in 5.7. Task-number: QTBUG-54163 Change-Id: If4a76f45450edc0f6e8fb3615355613212314300 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* fix ios device&simulator builds againOswald Buddenhagen2016-06-101-1/+3
| | | | | | | | | | | | | the assumption stated in b67a0836d is actually invalid - configure sets build_all without debug_and_release there. debug_and_release does actually imply build_all, though. to make things less confusing, don't let configure inject iphonesimulator_and_iphoneos into all projects, but handle it like debug_and_release instead. Change-Id: Ib7acdc63308a538862fc603428f81aba60bca08e Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Merge remote-tracking branch 'origin/5.6.1' into 5.6Liang Qi2016-05-191-0/+1
|\ | | | | | | | | | | | | Conflicts: src/network/socket/qnativesocketengine_winrt.cpp Change-Id: I8edb72f8ba958d80c3d7993b3feaaae782ca8d9c
| * make zlib_dependency auto-add QtCore as a private depOswald Buddenhagen2016-05-091-0/+1
| | | | | | | | | | | | | | | | our zlib header includes qglobal.h, so we need the qtcore include dirs, and qtcore is also where the actual code is compiled into. Change-Id: I09f530a1b4e6160438215a6d7223c0771ce94f05 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | QT_CONFIG simplification re debug_and_release and build_allOswald Buddenhagen2016-05-171-2/+1
|/ | | | | | | | don't pretend that these two flags can be set separately - the configures set them in tandem. Change-Id: Ib0beae0152de09026d4627fd3ae0feabd9ce1b81 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* load qt_common in qt_helper_libOswald Buddenhagen2016-02-191-0/+3
| | | | | | | | | | | | | | this has multiple consequences: - we do sane DESTDIR replacement for debug_and_release builds, fixing QTBUG-47313 - we don't create debug/release subdirectories, fixing QTBUG-47639. this only makes sense given the complementary call of $$qt5LibraryTarget() - we patch up the .prl files upon installation Task-number: QTBUG-47313 Task-number: QTBUG-47639 Change-Id: Id409bbd26781a773409b94835ab6b97e71569322 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* restore qt4's qtLibraryTarget() behaviorOswald Buddenhagen2015-03-051-1/+1
| | | | | | | | | | the function is used in our examples and code generated by qt-creator, so the qt5-specific magic behavior is inappropriate. create a separate function instead. Task-number: QTBUG-44595 Change-Id: I4d72cc1e5cbfc274b3210520baa213f4c5479ca9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* fix too aggressive installation of helper librariesOswald Buddenhagen2014-05-201-3/+3
| | | | | | | | | | | of course all helper libraries are built statically, so the criterion is not useful. what is interesting is whether the whole qt configuration is static, as that determines what will happen with the helper library when linking the final "actual" artifacts. Change-Id: I96980c645cb478b2f7a30688b49cb51bec8c9f08 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* install convenience libraries when building staticallyOswald Buddenhagen2014-04-281-1/+3
| | | | | | | | | | | | we don't link static libs into other static libs, so the intermediate libs need to be installed and resolved at app link time. Task-number: QTBUG-32519 Change-Id: I0558140f98a6938b03306df7f800d66f8a19a7cd Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jeremy Lainé <jeremy.laine@m4x.org> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* centralize auxiliary lib creationOswald Buddenhagen2014-04-281-0/+25
this covers convenience libraries which are linked into dlls (if we are not building statically) and "proper" (installed) builds of 3rdparty code. Change-Id: I2f00248c0baa0e73346e477724bf49bbc62ba925 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>