summaryrefslogtreecommitdiffstats
path: root/mkspecs/features
Commit message (Collapse)AuthorAgeFilesLines
* Android: Never error out on literal-suffix warningEskil Abrahamsen Blomfeldt2013-09-201-0/+4
| | | | | | | | | When warnings are treated as errors, no Android code will compile, since one of the platform headers in the NDK triggers the literal-suffix warning. So we need to mark this as no-error. Change-Id: Icabf1c2f2d32f76ee157d04e62a28f83abeed8f1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Android: Let ANDROID_API_VERSION env var take precedenceEskil Abrahamsen Blomfeldt2013-09-201-5/+5
| | | | | | | | | | | | | If you specify ANDROID_API_VERSION to override the default API versions used for building the jar files, this should take precedence even when the .pro files specify a different default API version (like QtAccessibility does when it sets the default to android-16.) Otherwise it's impossible to override these defaults. Change-Id: Idef98aaf3b51490bd7ced8c53770ee2f5680b1db Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* WinRT: Basic global supportAndrew Knight2013-09-202-2/+2
| | | | | | | | Various global changes, primarily preprocessor flow, to support the WinRT platform. Change-Id: I3fa9cf91d5fb24019362e88fcf205e31b4f810b5 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* Add qmake generation of Android deployment settingsEskil Abrahamsen Blomfeldt2013-09-191-0/+70
| | | | | | | | | | | | This outputs a json file with the necessary settings from qmake so that an external build tool can easily get the settings without having to parse the entire .pro source. Used by the androiddeployqt tool. Task-number: QTBUG-32856 Change-Id: I5d3ac0ab6a0350162d06b0a0bf0c9bcbd90d8b5a Reviewed-by: Daniel Teske <daniel.teske@digia.com> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Fix extension of static pluginsStephen Kelly2013-09-171-6/+15
| | | | | Change-Id: I2656746cbc93a0912bb844fab7d466da39997867 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* iOS: Change main-wrapper logic to not require changing the user's mainTor Arne Vestbø2013-09-111-2/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using a define to rename the user's main() function during compilation, we leave the user code alone, and inject our wrapper one step earlier in the process, at the application entry point 'start'. This entry point is provided by crt1.o, which is normally linked into the application automatically. The start() function sets up some state and then calls main(), but we change the start() function to instead call our main wrapper. Instead of shipping our own crt1 binary/sources, we make a copy of the appropriate crt1.o at build time, and modify its symbol table in place. This is unproblematic as long as we keep the same length for the wrapper function name, as the symbol names are just entries in the global string table of the object file. The result is that for the regular Qt use-case the user won't see any changes to their main function, and we have more control over the startup sequence. For the hybrid use-case, we no longer rely on the fragile solution of having our back-up 'main' symbol in a single translation unit, which would break eg with --load_all, and we don't need to provide a dummy 'qt_user_main' symbol. OSX 10.8 and iOS 6.0 introduced a new load command called LC_MAIN, which places the state setup in the shared dyld, and then just calls main() directly. Once we bump the minimum deployment target to iOS 6.0 we can start using this loader instead of LC_UNIXTHREAD, but for now we force the classic loader using the -no_new_main flag. There's also a bug in the ld64 linker provided by the current Xcode toolchains that results in the -e linker flag (to set the entry point) having no effect, but hopefully this bug has been fixed (or Apple has switched to the LLVM lld linker) by the time we bump our deployment target. Change-Id: Ie0ba869c13ddc5277dc95c539aebaeb60e949dc2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Sergio Ahumada2013-09-104-7/+46
|\ | | | | | | refs/staging/dev
| * Merge remote-tracking branch 'origin/stable' into devSergio Ahumada2013-09-074-7/+46
| |\ | | | | | | | | | Change-Id: I9ee4176f0a0078908d49896508826154c9f71530
| | * Fix usr-move workaround in the presence of multi-arch.Stephen Kelly2013-09-062-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cmake directory may not be $PREFIX/lib/cmake, but instead $PREFIX/lib/<arch>/cmake. Getting the PATH of such a directory will not lead us to $PREFIX/, but to $PREFIX/lib. Use a relative calculation instead. Task-number: QTBUG-33223 Change-Id: Ice4e0f859ab1df238bad4eb942f073e84dd86cc3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| | * Add source directories to include paths if needed.Stephen Kelly2013-09-052-2/+21
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-33145 Change-Id: I555064cd92691459222463df9917f8222e31323b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| | * export QT_TOOL_ENV to the tool module pri fileOswald Buddenhagen2013-08-272-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | fixes "make ts" in qttranslations in a non-installed prefix build. amends 13e01fda1 Change-Id: I2547d825c1c71e42fdacab5edaace67247ef69e7 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | | Teach CMake about Qt 5 plugins.Stephen Kelly2013-09-104-0/+83
|/ / | | | | | | | | Change-Id: Idd3225759f9f5ec620f79e29035eb176f965bef7 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Fix -Wno-error=deprecated for GCC and ClangThiago Macieira2013-09-041-2/+2
| | | | | | | | | | | | | | | | | | Commit a7ba0ad93e22d095f86c5faebd0b6ddf374656c8 introduced the -Wno- language. The warning about deprecated functions, variables or types is -Wdeprecated-declarations. Change-Id: I6d269851afefc6a3fc3bf6599c3c702eb164245e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | don't install non-framework headers in addition to frameworks, take 2Oswald Buddenhagen2013-09-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | the redundancy is entirely unnecessary at this point. the cmake problem that prompted the revert has been fixed long since by commit 4f5f9331d9fd983e2960501847e0a10dfb0219ff. This reverts commit 215f137e29ad9176fa1a5d4c446115379f5dbc0d, thus restoring 6d61dfdbb74a2055438b999c6962f89cc3388eea.. Change-Id: I94749dc18d924163e9c9add500078d88ccd00ffc Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-272-28/+30
|\| | | | | | | | | | | | | Conflicts: examples/widgets/doc/src/addressbook-fr.qdoc Change-Id: Id1196e8e0c6445f1616c3f29234c974d809f8e48
| * Populate INTERFACE_LINK_LIBRARIES property in the cmake files.Stephen Kelly2013-08-211-1/+3
| | | | | | | | | | | | | | | | This is new in CMake 2.8.12 and replaces the old properties matching IMPORTED_INTERFACE_LINK_LIBRARIES_<CONFIG>. Change-Id: I5d4c454972f2535f6792e95718c73d80c56ac24c Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * CMake: Move some code around.Stephen Kelly2013-08-211-27/+27
| | | | | | | | | | | | | | | | | | This makes the diff clearer when adding plugin information in a followup commit. Change-Id: I857d9f71b08074f2ffa2f852ad72e5dd975adc3e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Make sure deprecation warnings don't cause errors with -WerrorThiago Macieira2013-08-271-3/+4
| | | | | | | | | | | | | | | | | | | | | | It sounds like a good thing to have this warning, but for future-proofing we can't have it. The system libraries might change and add deprecation marks (OS X does that often). If they do that, we don't want poor developers to have to fix all warnings before they can build Qt again. Change-Id: I4ff317da0de596c470bb1efe6e59bcf70aeec8fc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Set an upper range of compiler versions for -WerrorThiago Macieira2013-08-231-11/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows us to go back to older versions of Qt with newer compilers, that didn't exist when those versions were released. It also allows someone upgrading their compiler and not being faced with having to fix all warnings before Qt compiles. This commit whitelists the following compilers: * Apple Clang versions 4.0, 4.1 and 4.2 (OS X only) * Intel Compiler versions 13.0, 13.1 and 14.0 (Linux only) * GCC versions 4.6, 4.7 and 4.8 (all OS) Notably, Clang on other other OS besides OS X and MSVC are missing. Change-Id: I665160d40a59336da1904f2a6c1eda543e592b48 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Fix bootstrap class path warning (java)Frederik Gladhorn2013-08-221-4/+5
| | | | | | | | | | | | | | | | | | | | Due to forcing java 6 we need to pass the bootstrap jar file (android.jar). https://blogs.oracle.com/darcy/entry/bootclasspath_older_source Change-Id: I530a7e2a7df40813011a6dde93d6ccc3aaaa61d6 warning: [options] bootstrap class path not set in conjunction with -source 1.6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-212-1/+6
|\| | | | | | | | | | | | | | | | | Conflicts: qmake/doc/src/qmake-manual.qdoc src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/src.pro Change-Id: I0a560826c420e46988da3776bd8f9160c365459a
| * Give the extra compiler a unique name for the vcproj generationMat Sutcliffe2013-08-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The first word of the .name variable of each extra compiler is used as a key in a container that keeps track of them. See also: qmake/generators/win32/msvc_objectmodel.cpp: VCProjectSingleConfig::filterForExtraCompiler qmake/generators/win32/msvc_vcproj.cpp: VcprojGenerators::initExtraCompilerOutputs Task-number: QTBUG-32912 Change-Id: I7ea5c58884db559621f50740075b7f2e4e3ef7f8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * suppress error output from pkg-configOswald Buddenhagen2013-08-151-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | under normal circumstances, any errors will be noticed already by the pkg-config --exists call, which is silent anyway. therefore this doesn't change anything in normal qmake usage. however, lupdate's and creator's evaluators skip the --exists calls and subsequently invoke the normal query, which then prints useless noise to the terminal. Task-number: QTBUG-28159 Change-Id: I536412060f3830aafeb0587f855cd6af11227bca Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | don't include non-framework include paths when using frameworksOswald Buddenhagen2013-08-201-5/+4
| | | | | | | | | | Change-Id: Ia72d5b611b9870b83846299bc7642841b09b84b1 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2013-08-163-3/+7
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-143-3/+7
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/macx-xcode/Info.plist.app mkspecs/macx-xcode/Info.plist.lib qmake/doc/qmake.qdocconf src/corelib/global/qglobal.h tests/auto/other/exceptionsafety/exceptionsafety.pro tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp Change-Id: I3c769a4a82dc2e99a12c69123fbf17613fd2ac2a
| | * gdb_dwarf_index: Use a sed call that's more POSIX-compliant.Raphael Kubo da Costa2013-08-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sed versions other than the GNU one often default to being POSIX-compliant, in which case "+" (with and without escaping) is always an ordinary character. Achieve the same functionality in a way that works with both GNU and BSD seds by using "xx*" insted of "x\+". Change-Id: I1d2576a8c0e17b31f01a44d9632c57991e53780d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * Use absolute path in the /usr move workaround if -libdir is specifiedStephen Kelly2013-07-241-0/+4
| | | | | | | | | | | | | | | | | | Change-Id: I68d087b15839418008db5bf1c0c76ca303245519 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| | * Move the cmakeRelativePath function to cmake_functions.Stephen Kelly2013-07-242-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-32570 Change-Id: I05bbf7084ef8501bf17698f2ecc1cf3d8fd4d460 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| | * CMake: Add a clean_path before returning a path.Stephen Kelly2013-07-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The $$path may already be absolute, so prepending a slash may result in //usr/lib, for example. Task-number: QTBUG-32570 Change-Id: If7a4f6fbec0216404cfe48c1da62d21d75b3e272 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| | * CMake: Remove copy-pasto for the IMPORTED_LOCATIONStephen Kelly2013-07-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-32579 Change-Id: Ibe9dd92824091989168fca842a59b556937b1f08 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | | Make java xlint warnings visibleFrederik Gladhorn2013-08-161-1/+1
|/ / | | | | | | | | Change-Id: If347c920df5e5aa0924a9f8d626d7e3e017d3536 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | iOS: Wrap Xcode projects in Makefile for convenience and subdirs supportTor Arne Vestbø2013-08-133-16/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qmake expects the generator to be the same for each node in the tree of subdirs, including the leaf projects, which caused failures when qmake tried to recurse out to the leaf projects and run 'make', when the leaf project was an Xcode project. We now wrap the Xcode project in a meta-makefile that just calls out to xcodebuild to do the actual work. This allows us to get rid of the hacky generator detection, and use the macx-xcode mkspec instead of setting the generator, which is much cleaner. Change-Id: I2fed6a4dd6343b6a320eb459ecae824553bff459 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | iOS: Link to platform plugin when application requires gui-privateTor Arne Vestbø2013-08-131-1/+1
| | | | | | | | | | Change-Id: I53e955f9673bd6560f44400a8fa877917107c353 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Integrate gcov support into Qt build system.Sergio Ahumada2013-08-071-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | To instrument a Qt application or library with the gcov coverage tool, do `CONFIG+=gcov' in the application .pro file. To instrument Qt itself with gcov, use the `-gcov' configure option. Change-Id: If24e91d95318609b0df1a76ed6d679bd92bcaab2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | iOS: Move platform plugin linking logic into iOS-specific qt.prfTor Arne Vestbø2013-07-302-22/+24
| | | | | | | | | | Change-Id: I54350c8df3fe4bf20fc59cd42a28458018664eef Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-07-235-63/+74
|\| | | | | | | | | | | | | Conflicts: tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp Change-Id: I18a9d83fc14f4a9afdb1e40523ec51e3fa1d7754
| * don't install mac bundles atomicallyOswald Buddenhagen2013-07-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... as that causes debug+release installs to overwrite each other's postprocessed files. introduces CONFIG+=sliced_bundle, which instructs qmake to create file-by-file install commands. we don't know whether people are not putting files outside qmake's knowledge into the bundle build dir, so this mode is not necessarily backwards-compatible, and thus off by default. Task-number: QTBUG-28336 Change-Id: I23e90985ccd3311f0237ed61aadca6d7ed8325b7 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * Don't check for the existence of private include directories.Stephen Kelly2013-07-221-5/+12
| | | | | | | | | | | | | | | | | | | | | | Some packagers don't want to install the private headers. Check the existence of private headers only if the 'Private' component is specified when finding the package. Task-number: QTBUG-32466 Change-Id: I1fdbfb25e8ce485cd051564b937f766b2733741a Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * Fix wayland-scanner to work with CONFIG+=silentJan Arne Petersen2013-07-201-53/+53
| | | | | | | | | | | | | | | | Use "_" instead of "-" in variables so variable replacement works properly. Change-Id: I2b17dca8f2351bc0933c165017f3fbb9393b0514 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| * Use the compilers used by Qt for the CMake tests.Stephen Kelly2013-07-191-0/+2
| | | | | | | | | | | | | | | | Task-number: QTQAINFRA-609 Change-Id: I32ad70a4b31baf1815c2c08ac16e35e78052e569 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * Only run the cmake test in the install location if not already done.Stephen Kelly2013-07-151-4/+6
| | | | | | | | | | | | | | For developer builds, there is no need to run the test a second time. Change-Id: I3564874cb2e9d6cc243e25a89ecd7f89df23b0bd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Merge "Merge branch 'stable' into dev" into refs/staging/devSergio Ahumada2013-07-1212-138/+202
|\ \
| * | Merge branch 'stable' into devSergio Ahumada2013-07-1112-138/+202
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/generators/mac/pbuilder_pbx.cpp src/corelib/json/qjsonwriter.cpp src/corelib/kernel/qeventdispatcher_blackberry.cpp src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm Change-Id: I24df576c4cbd18fa51b03122f71e32bb83b9028f
| | * Refer to Apple products by their actual names.Jake Petroules2013-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | This is a comment-only change. Change-Id: I2432b1135ef21d781c9486df06699710f2696ee3 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
| | * Always use forward slashes in paths passed to cmake.Stephen Kelly2013-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | Otherwise it issues many warnings. Change-Id: I072afc65eed3f2549e5e5894f8d290c792025e4c Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| | * CMake: Fix handling of insignificant_test.Stephen Kelly2013-07-101-2/+3
| | | | | | | | | | | | | | | | | | | | | The test should still be run, even though it is insignificant. Change-Id: I6a3853e2b0e9670152b4f329dbceed2986a7e008 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * don't pass -indexdir during prepare_docs phaseOswald Buddenhagen2013-07-081-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the forward-referenced directories don't exist yet, so we get pointless warnings. in fact, this is why we do a multi-pass build in the first place, and consequently using indexes during the first pass is illogical. Task-number: QTBUG-32152 Change-Id: I66bf6b43238827e87cb8bf6932d581b808c1032d Reviewed-by: Martin Smith <martin.smith@digia.com>
| | * make requirement for -private suffix explicit, take 2Oswald Buddenhagen2013-07-052-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the previous attempt broke ActiveQt, as it actually has public modules without headers (they are provided by a common base module). so explicitly mark the internal modules as such instead of applying heuristics. Change-Id: I8d8a2ee66f02c3444da2036a497e7f382f089f62 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| | * Android Windows: Adjust to new SDK layoutRay Donnelly2013-07-042-16/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Google moved dx.bat into a new build-tools/VERSION folder meaning our dx.bat no longer found dx.jar. Fix this by passing into our dx.bat, the location of the real dx.bat Removed hardcoded 17.0.0 and %ANDROID_BUILD_TOOLS_REVISION% path searches. Change-Id: I91c12c01745d6f12edbd126102b8f06eba291402 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>