summaryrefslogtreecommitdiffstats
path: root/qmake
Commit message (Collapse)AuthorAgeFilesLines
* qmake: move QT_BEGIN_NAMESPACE to correct placeOswald Buddenhagen2018-12-192-3/+3
| | | | | | | | this makes no difference whatsoever, because qmake isn't actually built in a namespace, but it makes the new qtc code model happy. Change-Id: I70ad8e16cceff73276a821219fc80bab365954b5 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* qmake: don't mess up linking order of librariesOswald Buddenhagen2018-12-141-2/+12
| | | | | | | | | | | | | | | | ... which are specified by full filepath, by making the de-duplication consistent with that applied to libs specified with -l, that is, last one wins. the problem existed "forever", but it became more visible after the recent configure changes. fwiw, Win32MakefileGenerator is not affected, because it has the opposite problem: it de-duplicates everything (including object files) in "last one wins mode". it might make sense to change that as well. Change-Id: Id7ef1d394fcc9d444450672c06a6f11af2b19eab Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Doc: correct syntax error in qmake manualNico Vertriest2018-12-121-1/+1
| | | | | | Change-Id: I600f8c9ea8e55dad19345bd4d726cf8d5438e9ce Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Fix qmake's detection for conflicting source files for nmakeJoerg Bornemann2018-12-101-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consider the following source tree: foo/narf.cpp bar/narf.c bar/gnampf.cpp The .pro file has SOURCES += foo/narf.cpp bar/gnampf.cpp The file bar/narf.c is not supposed to be built for whatever reason. QMake's nmake Makefile generator generates inference rules of the form {.\foo}.cpp{debug\}.obj:: ... for every source subdirectory and every source file extension. Thus, we have {.\foo}.cpp{debug\}.obj:: {.\bar}.cpp{debug\}.obj:: {.\bar}.c{debug\}.obj:: Depending on the exact execution order of the inference rules (which depends on the names of the files) the latter rule might get picked, and we're erronously compiling bar/narf.c even though it's not referenced in the .pro file. Conclusion: QMake's detection of conflicting source files must consider the base names of source files, and not the exact file names. Fixes: QTBUG-72059 Change-Id: I50c2725ae2a7421053369a10680230f571af00ea Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* qmake: Escape '=' in dependency paths for unix makeUlf Hermann2018-11-301-0/+2
| | | | | | | | | | | | | | '=' cannot be handled in the same manner as other "critical" characters as no amount of backslashes will escape it. Use a variable instead. The documentation for nmake suggests that '=' in file names is not among the "Special Characters in a Makefile". Therefore, we assume nmake can handle it and don't escape it. Fixes: QTBUG-67262 Change-Id: Ib60f808d7d4e981c98f7d8bf2075d55b2b7f3b7d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Fix crash in qmake parsingAllan Sandfeld Jensen2018-11-291-2/+2
| | | | | | | | | | | | | The read from a QHash needs to be protected too if other threads are writing. sync-up with qtc, no actual effect on qmake itself. Fixes: QTCREATORBUG-21416 Change-Id: I75e5634e11b10056d6dbb6fdceef482ca2222ca1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from qtcreator/5f79b5d2e5e33321cdcd00362f0d6d9442a73ec2) Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* qmake: fix return type of toLongLong()Oswald Buddenhagen2018-11-211-1/+1
| | | | | | Fixes: QTBUG-71886 Change-Id: I62880e7ad8a1707c9094b07cf89d5c0c7841d235 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Merge remote-tracking branch 'origin/5.12.0' into 5.12Liang Qi2018-11-162-2/+2
|\ | | | | | | Change-Id: Ic1dd39044e19f50e1068d4ac70dacaad6440e570
| * Revert "Revert "qmake: Work around MSVC compiler bug.""Oliver Wolff2018-11-141-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | The assert still happens on MSVC 2015 64 bit when running qmake -tp vc -r. This reverts commit f4169a633b97b7b6e7365172cf3d38d2f16a8914. Fixes: QTBUG-71228 Change-Id: I05bd3e0677414edb970f07e0555cdc95ce32f592 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 4be8168ff7fe8c871a7f3cd7dce8fa4f70e1a6cf) Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * qmake: fix .prl file generation for bundlesOswald Buddenhagen2018-11-072-2/+2
| | | | | | | | | | | | | | | | amends 2b27646146a. Fixes: QTBUG-70444 Change-Id: I8bd310f5624ea0ac9260c7d9ea0d29b0c9caa077 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Add Windows Desktop arm64 target to QtbaseThomas Miller2018-11-111-12/+34
| | | | | | | | | | | | | | | | | | Allows a qt build to be configured to target arm64 desktop apps cross platform and build them with nmake. Change-Id: I99fed12047b45a504a1644201bcc19b18c69f3e6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Revert "Revert "qmake: Work around MSVC compiler bug.""Oliver Wolff2018-11-091-0/+14
| | | | | | | | | | | | | | | | | | | | | | The assert still happens on MSVC 2015 64 bit when running qmake -tp vc -r. This reverts commit f4169a633b97b7b6e7365172cf3d38d2f16a8914. Fixes: QTBUG-71228 Change-Id: I05bd3e0677414edb970f07e0555cdc95ce32f592 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Liang Qi2018-11-095-15/+8
|\ \ | |/ |/| | | | | | | | | | | | | | | Conflicts: .qmake.conf qmake/Makefile.unix src/gui/text/qtextdocument.cpp src/gui/text/qtextdocument.h Change-Id: Iba26da0ecbf2aa4ff4b956391cfb373f977f88c9
| * Modernize the "textcodec" featureLiang Qi2018-11-075-15/+8
| | | | | | | | | | | | | | | | | | Also clean up QTextCodec usage in qmake build and some includes of qtextcodec.h. Change-Id: I0475b82690024054add4e85a8724c8ea3adcf62a Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Doc: Add description for mode argument of qmake's $$system()Paul Wicking2018-11-021-0/+5
| | | | | | | | | | | | | | Fixes: QTBUG-70926 Change-Id: Icfd13352cd64053c11502058188041ad16f6c287 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | qmake: Add support for CONFIG += c++17Kai Koehne2018-10-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | The correct name is c++1z. Anyhow, this is easy enough to get wrong, so make sure CONFIG += c++17 works as well. Task-number: QTBUG-67527 Change-Id: Iea26b18824b38b1b5170f85987cf5c750b8e10ab Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: André Hartmann <aha_1980@gmx.de>
* | qmake: fix the precedence of QMAKE_LIBDIR_POSTv5.12.0-beta2Oswald Buddenhagen2018-10-123-12/+30
| | | | | | | | | | | | | | | | | | | | | | it must end up in front of QMAKE_LIBS{,_PRIVATE}, but not of LIBS{,_PRIVATE} (which are preceded by QMAKE_LIBDIR). Task-number: QTBUG-61982 Started-by: Liang Qi <liang.qi@qt.io> Change-Id: Id3de01ee0e9b66af02f79949aeb5a0eabd55363f Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | qmake: document {,QMAKE_}LIBS_PRIVATEOswald Buddenhagen2018-10-121-0/+23
| | | | | | | | | | | | Change-Id: I6637d5f57d372f63b3cfaeb28c7e48c940887db6 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | qmake: make sure QMAKE_LIBS{,_PRIVATE} comes after LIBS{,_PRIVATE}Oswald Buddenhagen2018-10-129-25/+42
| | | | | | | | | | | | | | | | | | | | the early merging of LIBS* into QMAKE_LIBS* meant that we could not interleave them properly. defer the merging until the points of use. Task-number: QTBUG-70779 Started-by: BogDan Vatra <bogdan@kdab.com> Change-Id: I890f98016c3721396a1f0f6f149a9e2b37d56d8e Reviewed-by: Liang Qi <liang.qi@qt.io>
* | qmake: nuke QMAKE_INTERNAL_PRL_LIBSOswald Buddenhagen2018-10-123-14/+3
| | | | | | | | | | | | | | | | | | | | | | | | it's unused now, and just complicates matters. its interaction with LIBS_PRIVATE & co. has always been a bit shaky. google produces no public hits outside qt itself, so let's assume it really remained internal. Change-Id: I6606bbabd44f1b76d84e97219e155e38d6f1b3a6 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | qmake: remove support for static archive splittingOswald Buddenhagen2018-10-122-74/+14
| | | | | | | | | | | | | | | | | | | | this was introduced in 2002 supposedly for qnx4, but doesn't appear to have actually been used ever. remove it, as it's in the way now. Change-Id: I54dcabb61e1d3609a1e7a9fa4ff4b25509cfdb7a Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | qmake: Fix building with lld with mingw makefilesMartin Storsjö2018-10-121-15/+17
| | | | | | | | | | | | | | | | | | | | | | lld for coff/mingw doesn't support linker scripts, which qmake used for passing larger numbers of input file names to the linker. Instead of using a fullblown linker script for this, just use a plain response file, which both lld and binutils ld support. Change-Id: I3aace7902fa6ca861a0a9fe67feaa236e7ea417b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-09-301-4/+1
|\| | | | | | | Change-Id: Iaa438d14357be1bf75bb645cb8d3245947c055b8
| * Fix the /J option for MSVC project generationAndrew Patterson2018-09-271-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Remove the DefaultCharIsUnsigned member and XML property because the MSVC project file no longer has a specific XML tag for that setting; instead, the /J option should go directly into the AdditionalOptions tag. Task-number: QTBUG-69611 Change-Id: I8f386427b7384ae09553f66193a2c9ea2b98dbc8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Revert "qmake: Work around MSVC compiler bug."Friedemann Kleint2018-09-261-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fix was for MSVC2010 which is now no longer supported and causes a warning: msvc_vcproj.cpp(217,12): warning: unknown pragma ignored [-Wunknown-pragmas] #pragma optimize( "g", off ) by clang-cl. This reverts commit 9f54846d951838361f4188b423e7aa7c7b9a9540. Task-number: QTBUG-63512 Change-Id: I395b964d09ac04a7dc852e43d7d95669948eea52 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Miguel Costa <miguel.costa@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | qmake: rework .prl filename constructionOswald Buddenhagen2018-08-304-16/+9
| | | | | | | | | | | | | | | | | | | | | | instead of trying to reverse-engineer it from the final target including extension and possible bundle path, construct the basename explicitly. this avoids that we mangle the filename if the actual target contains a period for some reason. Task-number: QTBUG-70097 Change-Id: I0bae9f010ab82e258680830250f8e28656f09d67 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | qmake: fix file id mapping lifetime managementOswald Buddenhagen2018-08-244-12/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | turns out that flushing the ids together with the ProFile cache was an abysmal idea, as the latter expires after a few seconds after loading the project, while references to the ProFiles (and thus the underlying file ids) are kept for as long as the project stays loaded. the early flush would cause re-use of the file ids, which would wreak all kinds of havoc when re-loading projects. but just ref-counting the vfs class is insufficient as well, as then the ProFile cache (which expires after a timeout) could outlive all VFS instances and thus refer to ids which were discarded and later re-used. so we ref-count, and additionally let the cache instance hold a reference to the vfs class. this is sync-up with qt creator; no actual effect on qmake itself. amends 190aa94be. Change-Id: Idd4478ffc1c2405b3b83df32fba45b1f687f6a18 Reviewed-by: Robert Loehning <robert.loehning@qt.io> Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Tobias Hunger <tobias.hunger@qt.io> (cherry picked from qtcreator/d03fb350672d311dccc06f0bcb4da744a3c99745) (cherry picked from qtcreator/1ddfb443b686ef04cc0e28363308ce70d01f0d73) Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-08-161-1/+16
|\| | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qconfig-bootstrapped.h src/plugins/platforms/xcb/qxcbbackingstore.cpp Done-with: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I4af138ffb2f5306373244523768209e8873b2798
| * qmake vcxproj generator: Fix extra compilers for single configsJoerg Bornemann2018-08-091-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For single config mode (no debug_and_release) extra compilers wouldn't get added to the vcxproj file. Single config mode creates a temporary project, and that was incomplete. Multi config mode, on the other hand, directly operates on the "real data" and wasn't affected by this problem. Task-number: QTBUG-69769 Change-Id: I9cd942e43d80adbeac9a3c8fbe1a5766bc9645a0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * qmake vcxproj generator: Fix compilation of generated C++ sourcesJoerg Bornemann2018-08-081-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Generated C++ source files with extensions other than .cpp would not get compiled, because the code ignored all other C++ source extensions like .cc and .cxx. Fix this by respecting the value of QMAKE_EXT_CPP and QMAKE_EXT_C. Task-number: QTBUG-69770 Change-Id: I097dfef6920e353a351c97891cdbfdc9a859815f Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | qmake: Apply modernize-use-nullptrAlessandro Portale2018-08-0825-75/+75
| | | | | | | | | | | | | | Use nullptr instead of 0. Change-Id: Ib3120b9c424a274a2d4dd4c42ec5d7cd5bdead65 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | qmake: Apply modernize-use-overrideAlessandro Portale2018-08-0813-119/+119
| | | | | | | | | | | | | | Add overrides to functions, except for destructors. Change-Id: I6e4640aa95a5c97d6bd6f6d8692d3290c421344e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | qmake: Avoid comparison of values with different enumeration typesAlessandro Portale2018-08-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | A switch statement using enumeration type midlErrorCheckOption as condition had an enumeration value from type midlStructMemberAlignOption as a case label. This had only coincidentally the intended effect, since the intended value (midlErrorCheckOption::midlEnableCustom) and the actually used one (midlStructMemberAlignOption::midlStructMemberAlignOption) have both the value 0. Change-Id: I73b337f23e733a1a6fb80517e29365e01838238a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-08-074-184/+239
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/corelib/doc/src/objectmodel/signalsandslots.qdoc src/plugins/platforms/cocoa/qcocoamenuloader.mm src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp tests/auto/gui/image/qimage/tst_qimage.cpp Done-with: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I9bd24ee9b00d4f26c8f344ce3970aa6e93935ff5
| * qmake: improve the fake projectOswald Buddenhagen2018-08-062-183/+229
| | | | | | | | | | | | | | | | | | | | | | qt creator's clang code model is a bit more picky than the old one, so we need a project that approximately works. while we're at it, inline qmake.pri, add some missing files, and beautify the source lists. Change-Id: I87ca1db2ee3e55ea08e4c23f7913e882ab44fd21 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * qmake: don't escape colons in dependency paths on windows, after allOswald Buddenhagen2018-08-021-0/+9
| | | | | | | | | | | | | | | | | | amends 7c34e0a7b4. Change-Id: I2ecdf0a450337e667f55af09b3de79fb47e05428 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Fix builds with some MinGW distributionsKai Koehne2018-08-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some distributions do not define MINGW_HAS_SECURE_API globally, resulting in methods like wgetenv_s not being declared in the headers. This is probably to keep compatibility with Windows XP. Anyhow, we don't support Windows XP anymore, so we can safely add the define. Note that this is not necessary for the mingw-builds distro, which is the only one we test and support. Anyhow, I don't see any risk in adding these for other distributions. Diff was provided by Philippe Dunski in the bug report. Task-number: QTBUG-67443 Change-Id: I3a64b11541fe95e527ed44bbf8ad94469d457d3d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Merge "Merge branch '5.11' into dev" into refs/staging/devEdward Welbourne2018-07-314-175/+184
|\ \
| * | Merge branch '5.11' into devEdward Welbourne2018-07-314-175/+184
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakebuiltins.cpp src/plugins/platforms/windows/qwindowstabletsupport.h src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/widgets/styles/qstylesheetstyle.cpp tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp Done-With: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I000b0eb3cea2a5c7a99b95732bfdd41507cf916e
| | * Fix qtbase build for MSVC 2017 15.8Thomas Miller2018-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | | Fixed breaks caused by MSVC 2017 15.8 fixing std::aligned_storage. Change-Id: I5adea18c184e34bbdc3bd294d034b97383ef08a3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Doc: Fix typos and grammar in qmake variable referenceKai Koehne2018-07-271-11/+11
| | | | | | | | | | | | | | | Change-Id: I2e039ed1383c9d7fec61b378c5ca8e99fbbf1911 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * qmake: break out testFunc_cache() from evaluateBuiltinConditional()Edward Welbourne2018-07-202-163/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's 160ish lines and adequately isolated. Still, it *might* be contributing to compilers being slow (unlikely though that seems) so seemed worth tidying up anyway. Task-number: QTQAINFRA-2117 Change-Id: I9e55e677552c273fdf3480ccefc229fd6fd2b66a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | | qmake: Harden logic for handling the -o optionTor Arne Vestbø2018-07-316-105/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now treat -o foo/bar/baz as a request to generate the output in the foo/bar directory with baz as the output name, or if foo/bar/baz is already a directory, in the foo/bar/baz directory with the default output name. We take care to handle generator specific directory structures, so that the project directory does not get merged into OUT_PWD. This is done in runQmake(), before parsing the project file, so that OUT_PWD will be correct during project parsing. The individual generators are then passed the filename relative to the final output directory. Each generator now also makes sure to add the right project suffix to the output file, so -o foo will result in foo.pro or foo.vcproj, instead of just foo. Task-number: QTBUG-44408 Change-Id: I26990cec0c0458bee2b88dbb86322617a85f54b5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | | qmake: Emit warning when regenerating Xcode project during buildTor Arne Vestbø2018-07-302-0/+7
|/ / | | | | | | | | | | | | | | | | Makes it a bit more clear why all the Xcode settings were lost. Task-number: QTBUG-45113 Change-Id: I3b19edb02a24673f56e77d3a1fb7cc76584c73fd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | qmake: Add support for running lreleaseKai Koehne2018-07-281-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CONFIG+=lrelease enables that all .ts files in TRANSLATIONS or EXTRA_TRANSLATIONS are compiled by lrelease. EXTRA_TRANSLATIONS is a new variable that is only processed by lrelease, but not lupdate - this is useful for translation files that are supposed to be empty, because they match the language of the original translation sources. If embed_translations is also set, the generated .qm files will be made available through the Qt resource system under :/i18n/. Alternatively, the user can specify an installation target by setting QM_FILES_INSTALL_PATH. Note that relative paths in TRANSLATIONS are not taken into account. That is, TRANSLATIONS = component1/de.ts component2/de.ts will cause a conflict. [ChangeLog][qmake] New CONFIG options lrelease and embed_translations were added. CONFIG+=lrelease does run lrelease on translation files listed in TRANSLATIONS and EXTRA_TRANSLATIONS. CONFIG+=embed_translations does include the generated .qm files as resources under :/i18n/. Change-Id: I94db5b8431d07b24f59b2c332ede91450f9c0c58 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | qdoc: Fix CONFIG documentation tableKai Koehne2018-07-251-2/+2
| | | | | | | | | | | | | | | | Amends 591edbb11c Change-Id: Ic31d733a1f2d386daa05afa865cb61a987f45578 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | qmake: don't drop non-existing files from .depend_command outputOswald Buddenhagen2018-07-251-4/+8
| | | | | | | | | | | | | | | | this allows for dynamic generation of the dependencies. Task-number: QTBUG-61267 Change-Id: If5b8aed6b9e4bde189cc3ba6a5f13dcf8def3a1e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | qmake: add line-based mode for .depend_commandsOswald Buddenhagen2018-07-232-5/+23
| | | | | | | | | | | | Task-number: QTBUG-48919 Change-Id: I6988fb2f26fd62ab40eb7392ccb0e033ad291fe6 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | qmake: Write correct Xcode project directory name to xcscheme fileTor Arne Vestbø2018-07-201-0/+1
| | | | | | | | | | | | | | | | | | | | The Xcode project name may be affected by e.g. the -o argument to qmake, so we can't assume it's based on the target. Change-Id: Ibb9f4265017ffcfe26bd8734758dcb30237c704f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | uic: Revert the microoptimization patch introducing QStringLiteralJarek Kobus2018-07-191-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts the following commits: d12d2949d1e4ac08a47928ef27bc45459b3fb104 26c3bec09bccf9006f5ef4945a428d9ef56c1d12 49b08f96e824f49fab9aa5c9a1a0ed582d4558bb We can't easily predict all code paths for QDesigner with such a microoptimization. We also don't want to generate three different string constructions depending on some sophisticated heuristics. [ChangeLog][uic] The -no-stringliteral option is now deprecated and UIC will not generate QStringLiteral anymore. Task-number: QTBUG-65251 Task-number: QTBUG-51602 Change-Id: I34a5a1934a8df19c5c84ac2ba8e5168ce5665037 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>