summaryrefslogtreecommitdiffstats
path: root/qmake/generators
Commit message (Collapse)AuthorAgeFilesLines
* QtCore/qmake: drop some unneeded QChar -> QString conversionsMarc Mutz2015-10-111-1/+1
| | | | | Change-Id: Id2fb5089b0ec51073efb846b59ecc63942cfb60d Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Stop generating implicit suffix rules in MakefilesTor Arne Vestbø2015-10-093-22/+2
| | | | | | | | | | | | Suffix rules are the old-fashioned way of defining implicit rules for make. We don't need them as we generate explicit rules for all sources we build. [ChangeLog][qmake] Makefile output no longer contains implicit suffix rules, as all sources are built using explicit rules. Change-Id: I4ecfa5b80c8ae33aea8730836f3baf99dd4951dd Task-number: QTBUG-30813 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Distinguish between Objective-C and Objective-C++ sourcesTor Arne Vestbø2015-10-094-120/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of lumping both Objective-C (.m) and Objective-C++ (.mm) sources into the same pile, passing them on to the same compiler as for C++ (CXX), with the C++ flags (CXXFLAGS), we follow Apple's lead and treat them as variants of the C and C++ languages separately, so that Objective-C sources are built with CC and with CFLAGS, and Objective-C++ sources with CXX, and CXXFLAGS. This lets us remove a lot of duplicated flags and definitions from the QMAKE_OBJECTIVE_CFLAGS variable, which in 99% of the cases just matched the C++ equivalent. The remaining Objective-C/C++ flags are added to CFLAGS/CXXFLAGS, as the compiler will just ignore them when running in C/C++ mode. This matches Xcode, which also doesn't have a separate build setting for Objective-C/C++ flags. The Makefile qmake generator has been rewritten to support Objective-C/C++ fully, by not assuming that we're just iterating over the C and C++ extensions when dealing with compilation rules, precompiled headers, etc. There's some duplicated logic in this code, as inherent by qmake's already duplicated code paths, but this can be cleaned up when C++11 support is mandatory and we can use lambda functions. Task-number: QTBUG-36575 Change-Id: I4f06576d5f49e939333a2e03d965da54119e5e31 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Merge "Merge remote-tracking branch 'origin/5.5' into 5.6" into refs/staging/5.6Liang Qi2015-10-022-12/+14
|\
| * Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-10-022-12/+14
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/doc/src/qmake-manual.qdoc src/corelib/tools/qstring.h src/gui/image/qimagereader.cpp src/network/access/qnetworkaccessmanager.cpp src/tools/qdoc/doc/examples/examples.qdoc src/widgets/accessible/qaccessiblewidgetfactory_p.h src/widgets/doc/qtwidgets.qdocconf Change-Id: I8fae62283aebefe24e5ca4b4abd97386560c0fcb
| | * qmake: Fix 'Libs:' line in .pc files on OS XMartin Afanasjew2015-09-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On OS X with a framework-based build of Qt, the 'Libs:' line of the .pc files generated by `qmake` references the framework. This requires two separate arguments to the linker: The fixed string '-framework' and the name of the framework (e.g. 'QtCore'). Only the latter might need quoting. Prior to this fix, they were treated as a single argument (e.g. '-framework QtCore'), thus always quoted because of the contained space, and later lead to errors when trying to link a Qt framework discovered via `pkg-config`. Change-Id: I5c11ee651048832007e2ee4ebcbcf2e3212c8f48 Task-number: QTBUG-47162 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | * fix parsing of WinRT compiler optionsJoerg Bornemann2015-09-181-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set defaults before parsing compiler options. UsePrecompiledHeader, CompileAsWinRT and GenerateWindowsMetadata options were overwritten after parsing the options. Task-number: QTBUG-46978 Change-Id: I8c4e423cd13f575fa679b114108b693937908549 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
| | * Fix qmake messing up headers of generated Visual Studio solution filesJonathan Meier2015-09-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While generating Visual Studio 2015 solution files for a project using the subdirs template qmake writes out both the header for version 2015 and version 2013. The problem is a case fall-through. Task-number: QTBUG-48110 Change-Id: Ib6ddc1ceb306be9b3098d7b7c66a8ffabbd86481 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com> Reviewed-by: Andrew Knight <andrew.knight@intopalo.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | | merge MingwMakefileGenerator::findLibraries() into Win32MakefileGeneratorOswald Buddenhagen2015-10-028-115/+86
| | | | | | | | | | | | | | | | | | | | | | | | as a side effect, this makes the extensions used for searching libraries configurable under windows (QMAKE_LIB_EXTENSIONS). Change-Id: I3e64304fcadbfe74d601b50a70a73180c894503e Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | | rewrite windows library handlingOswald Buddenhagen2015-10-025-71/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | first, store the library's full name in the .prl file, like we do on unix. this is not expected to have any side effects, as QMAKE_PRL_TARGET was entirely unused under windows so far. then, rewrite the mingw library handling: instead of letting the linker resolve the actual libraries, do it ourselves like we do for msvc. we could not do that before due to the partial file names in the .prl files: if the library didn't exist at qmake execution time, we'd have to guess the file extension (the msvc generators never had that problem, as they know about only one possible extension for libraries anyway). make use of processPrlFile()'s ability to replace the reference to the .prl file with the actual library. that way we don't need to re-assemble the file name from pieces, which was fragile and inefficient. QMAKE_*_VERSION_OVERRIDE does not affect libraries coming with .prl files any more. additionally, it is now used literally (not numerically), and values less or equal to zero lost their special meaning as "none" - this isn't a problem, because that's the default anyway, and there is no need to override bogus versions from .prl files any more. no changelog for that, as i found no public traces of that feature outside qtbase. [ChangeLog][qmake][Windows] Libraries coming with .prl files can now have non-standard file extensions and a major version of zero. [ChangeLog][qmake][Windows][Important Behavior Changes] The .prl files written by earlier versions of Qt cannot be used any more. This will affect you if you depend on 3rd party libraries which come with .prl files. Patch up QMAKE_PRL_TARGET to contain the complete file name of the library, and replace any /LIBPATH: in QMAKE_PRL_LIBS with -L. (the part about /LIBPATH: actually refers to the next commit.) Change-Id: I07399341bff0609cb6db9660cbc62b141fb2ad96 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | | make .prl processing less convolutedOswald Buddenhagen2015-10-022-53/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | don't look up the files and normalize the paths multiple times, as this is inefficient and hard to understand. on the way, processPrlFile() got unnested, and libExists() got nuked. note that a missing QMAKE_PRL_TARGET will be now complained about, which really should never happen. Change-Id: Ibcd77a7f963204c013548496ecd2d635e1a4baba Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | | make processPrlFile() munge the path less when replacing the targetOswald Buddenhagen2015-10-021-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | don't prepend the normalized path to the target name, but replace only the filename in the original string. this ensures that any variables in the path are preserved. Change-Id: I58c2b54b7114bfdbf659e6a6ce3e02c2611900d4 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | | make lflags deduplication independent from link_prlOswald Buddenhagen2015-10-021-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the dependency doesn't seem to make any sense. while the deduplication is a bit naive and thus dangerous, it was already enabled by default anyway by virtue of link_prl being enabled by default, so this amounts to a non-change for by far most projects. use no_lflags_merge to disable it. Change-Id: Ia441931ddbc41ed617aee21e6fe8821e3448d2bc Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | | merge processPrlFiles() into findLibraries()Oswald Buddenhagen2015-10-028-161/+121
|/ / | | | | | | | | | | | | | | seems pointless to tear apart the functions, on the way duplicating some boilerplate. Change-Id: Ide3697ca1c931e8de607ac48c21cecce4781fe13 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove QMAKE_<lib>_SUFFIX supportOswald Buddenhagen2015-10-013-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | this feature was added with a dubious commit message a decade ago, was undocumented, and there are no public traces of it being used. if i had to guess what it was meant for: to be able to consistently use -lfoo throughout a project and centrally (e.g., in .qmake.cache) choose to use foo<bar> (bar possibly being "d") instead. however, more explicit methods are being used instead, including in qt itself. Change-Id: Ic3a98dc3aec59876f26909fbf9f7aba32baa05bf Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove support for CONFIG+=compile_libtoolOswald Buddenhagen2015-10-012-100/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | "why not use libtool?" -- sam "srsly dude?!" -- ossi [ChangeLog][qmake] Support for CONFIG+=compile_libtool was removed. Use CONFIG+=create_libtool and/or custom compilers instead. in addition to its utter insanity and superfluousness, this feature was apparently quite broken anyway (QTBUG-35745). Change-Id: I8147a2953f5f065735ae3a2206cd5d33a7c1809a Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove questionable libtool "compatibility" code from prl processingOswald Buddenhagen2015-10-011-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this code would get enabled when *not* compiling with libtool, and would try to use the real library in .libs/ when one tried to link the .la file (i.e., it would reproduce libtool's functionality). that directory structure is found only in build directories, so this code was apparently meant to support mixed projects. that doesn't sound useful. on top of that, the other code paths that were supposed to treat .la files like .prl files were disabled before initial release (because Somebody (TM) noticed that their code "doesn't behave well"). this code here did the same thing, but at the wrong abstraction level. as a side effect, this removes an infinite recursion problem in that code. Task-number: QTBUG-46910 Change-Id: If5291f5ff42c1412075c195753162c54598a250e Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove pointless code pathOswald Buddenhagen2015-10-011-11/+3
| | | | | | | | | | | | | | | | | | there is no need to consider the "-framework foo" syntax, as we fully control the list and insert elements exclusively as "-framework" "foo" a few lines down. Change-Id: I95fa8b46f53673ea3df1a67a2a44d11f7d679cc6 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove pointless code from prl processingOswald Buddenhagen2015-10-011-13/+1
| | | | | | | | | | | | | | the code had a dead variable assignment and no side effects. Change-Id: I9add8f1776f23a29c103b46dc725b9f386a4495a Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove bizarre prl substitution codeOswald Buddenhagen2015-10-011-9/+1
| | | | | | | | | | | | | | | | | | it appears to have been some weird attempt at back-mapping file names to -l arguments, which has been made ineffective with the partial #if 0. i can't even describe what it did at this point. Change-Id: Ie31cbbe7fab8b21b039bfff5877397af07731f1b Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | make /LIBPATH: deduplication code more like in the unix generatorOswald Buddenhagen2015-10-011-18/+13
| | | | | | | | | | Change-Id: If7e83a46b1a2ad92723a222daffa687d74636858 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove link_highest_lib_version misfeatureOswald Buddenhagen2015-10-013-24/+4
| | | | | | | | | | | | | | | | | | | | | | in retrospect, we were too conservative in 925fd32a2d8f making the "feature" optional - it simply makes no sense to have qmake automatically find the highest major (!) version of a library based on a loosely defined platform-specific convention (not standard, unlike ELF's .so versioning) with side effects. Change-Id: Iba92df433b199a9fbff88358f6e0f6835f2e813d Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove magic patching up of libraries specified by file nameOswald Buddenhagen2015-10-012-82/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the assumption is that if somebody bothers to actually specify a file name, they'll most probably go all the way to specify the *correct* file name. otherwise, they'll use -L/-l flags to specify the libs in a cross-platform way and rely on qmake's magic. this code was initially added for the purpose of invoking findHighestVersion() under windows. this has been off by default for a while now. at some point, the code did also swap qt for qt-mt and vice versa if the specified one was missing. this is obviously gone for a while as well. the unix code was pretty much broken since day one: there was a regex match on lib<stub>.* against <stub> itself, which obviously could not have ever succeeded. consequently, the subsequent code ran into a path that tried the file name with a trailing dot (instead of a new extension), which never produced anything meaningful. [ChangeLog][qmake][Important Behavior Changes] The library lookup has been simplified. It may be necessary to be more explicit in some edge cases now. Change-Id: I5804943f1f7a16d38932b31675caabbda33eada7 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | unify handling of library prefixes and extensionsOswald Buddenhagen2015-10-015-30/+5
| | | | | | | | | | | | | | | | | | | | | | make sure that all specs define QMAKE_{PREFIX,EXTENSION}_{SH,STATIC}LIB, and adjust the code to make halfways consistent use of these variables, in particular on windows; Win32MakefileGenerator::getLibTarget() is gone as a result, as is QMAKE_CYGWIN_SHLIB. still, tons of hardcoded "lib" references remain in the unix generator, because no-one cares. Change-Id: I6ccf37cc562f6584221c94fa27b2834412e4e4ca Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove references to $$QMAKE_CYGWIN_EXEOswald Buddenhagen2015-10-011-2/+0
| | | | | | | | | | | | | | | | | | it would cause the unix generator to set TARGET_EXT, but that wasn't used anywhere. so remove the dead code. if it ever gets re-introduced, it will be as QMAKE_EXTENSION_EXE. Change-Id: I44ce3e612651fd229177e37ab6c8879cd8c474b7 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | inline NmakeMakefileGenerator::getPdbTarget()Oswald Buddenhagen2015-10-012-7/+1
| | | | | | | | | | | | | | it was used only once, and virtual for no reason whatsoever. Change-Id: I99411be3dac93d8a129441f656b2443d09108564 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove support for {rvct,arm,ti}_linkerOswald Buddenhagen2015-10-012-61/+12
| | | | | | | | | | | | | | | | rvct and armcc support are remnants from symbian, while the ti linker support was never completed in the first place. Change-Id: I5c9d7f0ce67de24c348cbee4af618a499fe06f16 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove overuse of trimmed()Oswald Buddenhagen2015-10-014-10/+9
| | | | | | | | | | | | | | | | there is no reason to expect the various list elements to be space-encumbered, or to tolerate it if they were. Change-Id: I1a2e5c8d30456b640408503334c55f9262792db5 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | de-duplicate calculation of target baseOswald Buddenhagen2015-10-011-6/+7
| | | | | | | | | | Change-Id: I546fe454f925dd9ad39ba444fa78455c8dbdfde6 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | don't support arbitrary flags in LIBS on windowsOswald Buddenhagen2015-10-011-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | there should be no flags other than /LIBPATH: in LIBS (and the variables that end up in it) - these belong into QMAKE_LFLAGS. while not very important, this change enables the use of drive-relative paths using unix path separators. note that on unix, arbitrary flags must be supported in LIBS due to GNU ld's --push-state and related position-dependent flags (-whole-archive in particular). luckily, on unix, flags start with a dash, not a slash. Started-by: Dyami Caliri <dyami@dragonframe.com> Change-Id: Ie5764f14d34ad13020ca010499594eed8c69a4a1 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | fix race in debug_and_release builds of static libs for UnixJoerg Bornemann2015-09-221-11/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consider a debug_and_release build of a static library. Set DESTDIR to different values for debug/release. Let TARGET be the same for debug/release. Now qmake would generate code in Unix Makefiles like this: rm mylib.a ar mylib.a ...objects... rm debug/mylib.a mv mylib.a debug/mylib.a and for release analogous. This clashes when building in parallel. This patch resolves this conflict by reducing the commands to: rm debug/mylib.a ar debug/mylib.a ...objects... We believe that every ar implementation that's in use for Qt is able to operate on files in subdirectories. [ChangeLog][Important Behavior Changes][qmake][Unix] QMAKE_POST_LINK steps of static libraries are now required to operate on $(TARGET) in $(DESTDIR) instead of $$OUT_PWD. This matches the Windows backends. Task-number: QTBUG-48287 Change-Id: I192f488ed74c56bc32862426d9e9d4237d9b8135 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | fix relative rpaths on linuxOswald Buddenhagen2015-09-171-1/+3
| | | | | | | | | | | | | | | | | | | | | | $ORIGIN (or $LIB) needs to be escaped to survive the trip through make and the shell. this shouldn't break anything, as there was simply no way to get it right so far. Change-Id: I86337c5994d10dae2e80dd2f858f74874b14bca7 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | don't pretend that non-mac supports relative QMAKE_SONAME_PREFIXOswald Buddenhagen2015-09-171-1/+1
| | | | | | | | | | | | | | | | unlike in DT_RPATH/DT_RUNPATH and DT_NEEDED, $ORIGIN & co. cannot appear in DT_SONAME. Change-Id: I4da23f8419806bdc05d6844ce3397ef43b82914c Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-08-265-14/+31
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/doc/snippets/code/doc_src_qmake-manual.pro qmake/doc/src/qmake-manual.qdoc src/corelib/io/qstorageinfo_unix.cpp src/corelib/tools/qbytearray.cpp src/widgets/kernel/qwidgetwindow.cpp tests/auto/corelib/io/qprocess/tst_qprocess.cpp tests/auto/corelib/mimetypes/qmimedatabase/tst_qmimedatabase.cpp tests/auto/network/access/qnetworkreply/BLACKLIST Change-Id: I9efcd7e1cce1c394eed425c43aa6fce7d2edf31c
| * Fix lookup of Info.plist from mkspecs when shadow-buildingTor Arne Vestbø2015-08-251-1/+5
| | | | | | | | | | | | | | Task-number: QTBUG-47450 Change-Id: I87c45154deecd09a5c75f09e607177fa42459e95 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Mac: Remove invalid bundle identifier charactersMorten Johan Sørvig2015-08-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Valid characters are (A-Z,a-z,0-9,-,.). It is unlikely that we will see anything more exotic than '_' in bundle/library names, go ahead and replace that character only. Task-number: QTBUG-46824 Change-Id: Ia97b7cd6247f40a970b4919363ffb66fb347186c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
| * fix quoting in plist creationOswald Buddenhagen2015-08-181-1/+1
| | | | | | | | | | | | | | | | unlike everywhere else in this file, destdir is not pre-quoted here. Task-number: QTBUG-47775 Change-Id: Ia5b0c56bbdd3eb095f81b0f615d68a338ffa52c5 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| * WinRT: Fix Visual Studio 2015 project generationMaurice Kalinowski2015-08-072-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - ApplicationTypeRevision has been updated to 10.0 in the final VS2015 release - For Universal App project one needs to specify WindowsTargetPlatformVersion and WindowsTargetPlatformMinVersion - Disable adding Qt libraries to the DeploymentFiles variable for Universal Apps. Before an error occurred during build as windeployqt asked to package the very same files. However, windeployqt also takes care of plugins and hence we prefer to rely on windeployqt and disable the link step parsing. Change-Id: I5180519cabde60dbc7786ef27a6fbe0ef2ac44f3 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
| * WinRT: Fix build for Windows 10Maurice Kalinowski2015-08-061-10/+15
| | | | | | | | | | | | | | | | | | | | | | The SDK Version has been updated, hence include and lib directories were wrong. Luckily, Microsoft introduced an environment variable in the final VS2015 release to identify the location. Also has the benefit to reduce hardcoded paths. Change-Id: I9726db031d87d119bc7326154b24554c4b685d57 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com> Reviewed-by: Mika Lindqvist <postmaster@raasu.org>
* | iOS: Refactor xcodebuild exclusive build logic into standalone makefileTor Arne Vestbø2015-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | Instead of going to qmake to generate the makefile that we want, we write the makefile directly and include it from the generated makefile. This leaves us with a single top level makefile for handling exclusive builds through xcodebuild, and covers all the various build configurations in a unified manner. It also allows for improved test device handling. Change-Id: I66851f181ac4da2c8938645e0aa95ffa0fee33c7 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* | Fixing Wec2013 qmake support for VS2013 SDKs.Björn Breitmeyer2015-07-211-6/+9
| | | | | | | | | | | | | | | | | | | | | | SDKs generated from VS2013 use a different folder for build settings than those generated from VS2012. Check both folders, before rejecting a potential SDK. Change-Id: I5bee5cc3771352adaab07d39ebbc350618f6c573 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | qmake: polish some function objectsMarc Mutz2015-07-081-3/+3
| | | | | | | | | | | | | | | | ... by marking the ctors (if any) explicit and the function-call operator const. Change-Id: Ia65fbad0dfdccbb31d630a5501c4d6f0f5aa3623 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | qmake: mark some types movableMarc Mutz2015-07-081-0/+1
| | | | | | | | | | | | | | They are already held in QVector. Change-Id: Ib1266956c860ecd4671501ab12ab932a8ce9b7d6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-07-013-0/+9
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.cpp src/corelib/global/qglobal.h src/corelib/global/qsysinfo.h src/corelib/global/qsystemdetection.h src/corelib/kernel/qobjectdefs.h src/plugins/plugins.pro tests/auto/widgets/itemviews/qlistview/qlistview.pro Change-Id: Ib55aa79d707c4c1453fb9d697f6cf92211ed665c
| * Merge remote-tracking branch 'origin/5.5.0' into 5.5Liang Qi2015-06-272-0/+6
| |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/cocoa/qcocoafiledialoghelper.h Manually fixed src/testlib/qtestcase.cpp to return the right type. Change-Id: Id1634dbe3d73fefe9431b9f5378846cb187624e4
| | * fix PCH related regression in vcxproj generatorJoerg Bornemann2015-06-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When PRECOMPILED_HEADER is set to foo/bar/stable.h and PRECOMPILED_SOURCE is empty, then a C++ file foo/bar/stable.cpp is generated that contains the include "stable.h". We must pass the exact string "stable.h" to the /Yc compile switch instead of "foo/bar/stable.h". Commit dc612acdc6577594c8f61345cea2de549d7aae34 introduced this regression to allow to have PRECOMPILED_SOURCE in a different directory than PRECOMPILED_HEADER. Change-Id: I1a7e096c0455b946a5660d23c70c72abd4c7ac1b Task-number: QTBUG-46679 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| | * pbuilder_pbx: disable bit code for Xcode projectsRichard Moe Gustavsen2015-06-161-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With Xcode7, Apple added support for compiling apps to bit code instead of binary (*). But this is only supported when the deployment target is at least 6.0. And in Qt-5.5, the deployment target is still set to 5.1.1. The result is that every Qt application will fail building once people move to Xcode7. Instead of bumping the deployment target (which we plan to do for Qt-5.6), we choose to switch off bit code for now. *: https://developer.apple.com/library/prerelease/ios/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html Change-Id: I23001563439a7726506b7cd2dc77a82533b8a27b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
| * | allow running msvc2013 mkspecs from msvc2015 shellJochen Seemann2015-06-221-0/+3
| |/ | | | | | | | | | | | | | | | | | | | | Visual Studio 2015 integrates the Windows Runtime development tools, including the msvc2013 compilers. This patch fixes the error that mspdb120.dll is missing. It is typically included through PATH variable of the shell, which points to the "wrong" location in this case. Change-Id: I46289721912d6b517c6083612582f67536d28b11 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
* | Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-06-039-43/+88
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qnamespace.qdoc src/corelib/io/qwindowspipereader.cpp src/corelib/io/qwindowspipereader_p.h src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/plugins/platforms/xcb/qxcbconnection.h tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp tests/auto/tools/qmake/tst_qmake.cpp tests/manual/touch/main.cpp Change-Id: I917d694890e79ee3da7d65134b5b085e23e0dd62
| * Merge "Merge remote-tracking branch 'origin/5.4' into 5.5" into ↵Jani Heikkinen2015-06-021-1/+1
| |\ | | | | | | | | | refs/staging/5.5.0