summaryrefslogtreecommitdiffstats
path: root/qmake
Commit message (Collapse)AuthorAgeFilesLines
* qmake: fix warning about duplicate references in project fileJake Petroules2017-07-201-1/+5
| | | | | | | Task-number: QTBUG-59301 Change-Id: I2562b862465a52ecc56f551bcdb98fa7279ebfcf Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* qmake: Remove last remains of WinCE supportOliver Wolff2017-07-191-3/+3
| | | | | | Change-Id: Ifc2ecee8464710efd02a38b3a9794104f15a0f04 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* winrt: qmake: Fix deployment rules of created solution filesOliver Wolff2017-07-191-2/+3
| | | | | | | | If these rules are not added to the solution, Visual Studio will complain, that the project has to be deployed before it can be run. Change-Id: I6d3fbc949c85b11a92f78e13e2f6a1b92a5cfdc7 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Doc: Update docs for QMAKE_MACOSX_DEPLOYMENT_TARGET in qmake ManualLeena Miettinen2017-07-171-6/+5
| | | | | | | | The old docs contained obsolete information. Also, the new docs match the new docs for the other Apple OS deployment targets. Change-Id: Id773fa2086f291d8a2552fe1b339ec1e13c19d74 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Doc: Add Apple OS deployment targets to the qmake ManualLeena Miettinen2017-07-171-1/+25
| | | | | | | | | | | The following variables were not documented: - QMAKE_IOS_DEPLOYMENT_TARGET - QMAKE_TVOS_DEPLOYMENT_TARGET - QMAKE_WATCHOS_DEPLOYMENT_TARGET Change-Id: I5cfb6c0024d92e943aed882fd01bc2a4f2c7c042 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* qmake: Separate object_script by Makefile nameOrgad Shaneh2017-07-071-0/+4
| | | | | | | | | If several Makefiles are used in the same directory (for example, for multiple projects in the same directory or different build configurations), they all reference the same object_script, which is obviously wrong. Change-Id: I9b499ceb6b6bd6058f54b452fa44bfb2313eec26 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Pass the absolute path with the file when finding filesAndy Shaw2017-06-191-3/+4
| | | | | | | | | | | | When generating a project, the directories can be specified as arguments to the qmake call. As a result files can either be incorrectly added to the project with a leading slash, or can end up duplicated. By passing the absolute path with the file, it ensures that the file is added correctly and no duplicates occur as a result. Task-number: QTBUG-48342 Change-Id: If774de8d7f5cceca80042a25a3aa4e5b045249da Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* qmake: Delete static library before calling ar on MinGWOrgad Shaneh2017-06-121-0/+7
| | | | | | | | | | | | This was already done on unix, but not for MinGW. If the archive already exists, it is appended rather than replaced. This can cause invalid references when whole-archive linking is used and some object file that was already linked was deleted. Change-Id: Ie265371f197d996d57002b248043736544ee641e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* qmake: Fix initialization order in VcprojGenerator ctorOrgad Shaneh2017-06-121-2/+2
| | | | | | | Detected by clang Change-Id: I17b49b1737ca4a9ab6608a5d8701a9e1c50af5ae Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* qmake: Use braces for struct initialization in MSVC object modelOrgad Shaneh2017-06-121-9/+9
| | | | | | | Detected by clang Change-Id: I4c5fbdb402f55ce40e84a6a40ead6c32a60cfa22 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* qmake: Delete unused variables in MSBuild object modelOrgad Shaneh2017-06-121-27/+0
| | | | | | | | | Detected by clang. Remove also comments that reference unused variables. Change-Id: I6de54d96cd23b93eed6d109629a9462b7770e94e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* qmake: Avoid raw string comparisonOrgad Shaneh2017-06-121-1/+1
| | | | | | | | Detected by clang. Change-Id: I4c734d1af77a331d178ce91610ab08a8048fe410 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
* make mkspecs not mess up -rpath-linkOswald Buddenhagen2017-05-311-0/+2
| | | | | | | | | | | | | | | adding shared install paths via QMAKE_LFLAGS in the spec has the tiny side effect that they are searched _first_, which is generally a really bad idea - they should be _last_. for that purpose, introduce QMAKE_RPATHLINKDIR_POST, and migrate all specs to use it. QMAKE_RPATHDIR_POST is added for consistency, but not actually used. Task-number: QTBUG-59457 Change-Id: Iac6cda5e9111ef8cca454a69861fe8408bb40589 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* make mkspecs not mess up library and include search pathsOswald Buddenhagen2017-05-312-0/+5
| | | | | | | | | | | | | | adding shared install paths to QMAKE_{INCDIR,LIBDIR} in the spec has the tiny side effect that they are searched _first_, which is generally a really bad idea - they should be _last_. for that purpose, make QMAKE_{INCDIR,LIBDIR}_POST live up to their names (i.e., search them actually last) and migrate all affected specs to use them. Task-number: QTBUG-40825 Change-Id: Ie0de81c3cc49e193186d2fedd7d6c77590c8ef79 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix parsing of MSVC's /utf-8 option, take 2Joerg Bornemann2017-05-231-1/+1
| | | | | | | | The dash was missing. This commit amends 70e772079. Task-number: QTBUG-59431 Change-Id: I18f3519a502ca57336cafad574f8738f2e717740 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Do not warn about unknown MSVC compiler conformance optionsJoerg Bornemann2017-05-231-5/+1
| | | | | | | | | | | | Every /Zc:XXX option qmake doesn't know about yields a "WARNING: Could not parse Compiler option '-Zc:XXX'; added to AdditionalOptions." Put all /Zc:XXX options we don't handle into AdditionalOptions without printing a warning. There's no point in making all options known to qmake and updating them for every MSVC release. Change-Id: I319e027791a7b0a29d139ee3074ab1aed8ce8a63 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Simplify built-in qmake install commandSimon Hausmann2017-05-044-37/+31
| | | | | | | | As the directory installation command also works with files as a source we can unify the external commands, resulting in simpler command lines. Change-Id: I65013626eedbdb3ce1c77ed230d46edd1603b986 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* VS 2017: Fall back to "x86" as arch if it is not "arm" or "x64"Oliver Wolff2017-05-031-1/+1
| | | | | | | | | | | | The same as for other visual studio versions use "x86" as arch instead of win32. arch is used to determine library paths and these use x86 and not win32. As compilerArch is not used in MSVC 2017 it can be removed. Task-number: QTBUG-60530 Change-Id: I47157eb1d7ae9d913461210d34858ffb37c81586 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* Preserve last modification timestamps of installed directoriesSimon Hausmann2017-05-026-28/+103
| | | | | | | | | Similar to the two parent commits, this patchs preserves the time stamps of files we install as a result of recursive directory copying. Change-Id: Id5931a467196d5cd67acfa0deffc2488af8a3669 Task-number: QTBUG-59004 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Fix make install to be deterministicSimon Hausmann2017-04-282-13/+12
| | | | | | | | | | | The result of "make install" should be the same regardless of whether it has been run multiple times and the destination exists already. This is done by making the file installation calls always take canonical source and target paths and not look at the target directory. Task-number: QTBUG-60370 Change-Id: I83a584c0dbc4fd10c79976d4169bf6bc051884a1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Fix precompiled headers on Apple platforms, with multiple architecturesJake Petroules2017-04-142-36/+58
| | | | | | | | | | The original commit only added support for GCC and Clang, but not ICC. Amends 73331eeb Change-Id: Id7638cf1b538edb1008fb3aa10754c1f517a994f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Preserve last modification timestamps of installed program filesSimon Hausmann2017-04-134-4/+19
| | | | | | | | | | Similar to the parent commit, this patch adds a unified code path in qmake itself for installing program files while preserving their original last modification timestamp. Change-Id: I7b7dcfa6228c2bfd48ea6036549398bb6f90032f Task-number: QTBUG-59004 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-04-121-12/+12
|\ | | | | | | Change-Id: I3bd83a839b16822035ed56a5cffe77bd6bc3f08d
| * write Libs.private to .pc files only in static buildsOswald Buddenhagen2017-04-111-12/+12
| | | | | | | | | | | | | | | | | | | | projects using a dynamic build are not supposed to access this variable anyway. Task-number: QTBUG-51598 Change-Id: I81b55ea9ba460b80919f40ed7fe3d52129636b9e Reviewed-by: Michal Klocek <michal.klocek@qt.io> Reviewed-by: Jonathan Liu <net147@gmail.com>
* | Preserve last modification timestamps of installed filesSimon Hausmann2017-04-127-63/+139
| | | | | | | | | | | | | | | | | | | | | | On non-windows platforms, we use the "-p" parameter of install(1) to preserve the last modification timestamps of files. On Windows the use of copy does not preserve them. As a cross-platform solution, this patch introduces a simple built-in install command in qmake to copy files. Task-number: QTBUG-59004 Change-Id: I3064d29a2b8c7b009a1efbf8f00b84c079ea5417 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | qmake: Do not mix canonical and non canonical pathsOliver Wolff2017-04-111-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | When having Qt sources in a symbolic link "shadowed" did not work because _PRO_FILE_PWD_ used canonical path, while source_root did not. Due to this mix it was possible that shadowedPath did not find any "common denominator" and always returned and empty string. The first place where things broke was while running config.tests. Task-number: QTBUG-59319 Change-Id: If73ecbc58290ee9113f887a73c312ebfb5e20a33 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Doc: Move $$files() documentation to "Built-in Replace Functions"Joerg Bornemann2017-04-041-5/+5
| | | | | | | | | | | | | | | | | | files is not a test function. Change-Id: I6d23dac5d1c87bd35961406dd62cc3cf37d652e3 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Doc: link error in qmake manualNico Vertriest2017-03-281-1/+2
| | | | | | | | | | | | | | qmake-manual.qdoc:3226: warning: Can't link to 'system(command[, mode])' Change-Id: I22f7a9a79594d204b67796219bb84a60e76e92b1 Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
* | Doc: Add documentation for new iOS variables in qmake manualVikas Pachdha2017-03-281-0/+19
| | | | | | | | | | | | | | | | | | documentation of QMAKE_DEVELOPMENT_TEAM and QMAKE_PROVISIONING_PROFILE Change-Id: Id5854862e44387e31db40f574d85f88512c27f0c Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Fix uninitialized VCLinkerTool::DebugInfoOptionJoerg Bornemann2017-03-221-0/+1
| | | | | | | | | | | | | | | | | | | | Due to that uninitialized variable /DEBUG:FASTLINK ended up in vcxproj files for VS < 2015. However, that option is supported by VS >= 2015 only. Task-number: QTBUG-59630 Change-Id: I34d9eef1a3bf2262bac48962938afe84eb7de934 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-211-2/+2
|\| | | | | | | | | | | | | Conflicts: src/plugins/platforms/eglfs/eglfs-plugin.pro Change-Id: Id76cdbb41b7758572a3b8ea4dcb40d49bac968db
| * qmake: Add _CRT_SECURE_NO_WARNINGS to all MSVC-like compilersThiago Macieira2017-03-201-2/+2
| | | | | | | | | | | | | | | | The warning comes from the MS headers, not from the compiler. Task-number: QTBUG-59576 Change-Id: Ie67d35dff21147e99ad9fffd14acd7fb628fa1d4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.8' into 5.9" into refs/staging/5.9Liang Qi2017-03-132-5/+5
|\ \
| * | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-132-5/+5
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/network/network.pro mkspecs/features/mac/default_post.prf src/corelib/io/qfilesystemengine_win.cpp src/corelib/io/qprocess.cpp src/corelib/io/qprocess.h src/corelib/io/qprocess_p.h src/corelib/io/qprocess_unix.cpp src/corelib/io/qprocess_win.cpp src/corelib/thread/qmutex.cpp src/platformsupport/fontdatabases/windows/windows.pri src/plugins/platforms/eglfs/eglfsdeviceintegration.pro tests/auto/corelib/io/io.pro Change-Id: I8a27e0e141454818bba9c433200a4e84a88d147e
| | * qmake: Check for QT_CONFIG(process) in qmakebuiltinsUlf Hermann2017-03-062-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | The code in question is obviously checking for support of QProcess, not for general bootstrap mode. You can manually disable QProcess, in which case it is still not available after bootstrapping is done. Change-Id: Ia99810b8900621911a31912034358a01af4f18a0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | | Fix parsing of the /utf8 MSVC compiler flag in VS project generatorJoerg Bornemann2017-03-131-1/+6
|/ / | | | | | | | | | | | | | | | | | | | | | | | | Adding the /utf8 compiler flag resulted in undefining all preprocessor symbols for VS project files, because the ingenious compiler option parsing logic checked for a 'u' prefix, and "utf8" obviously matched. The /utf8 flag is added to the additional options, because there doesn't seem to be an XML tag for that. Task-number: QTBUG-59431 Change-Id: I762fcdcf6caf0606b40633861e265df5edb4a9c4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Add QMake variables for development team and provisioning profileVikas Pachdha2017-03-131-5/+12
| | | | | | | | | | | | | | | | | | Adding both development team and provisioning profile to Xcode switches off the automatic signing Task-number: QTBUG-38782 Change-Id: Ic869e16490c11e369b6674c815e860cac66c5afa Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Add documentation for QMAKE_LINK variableAndy Shaw2017-03-081-0/+9
| | | | | | | | | | | | Change-Id: I39f11f42750c705feabf5e1a87bcd277693af1fb Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Fix MSVC Makefiles when SOURCES is emptyJoerg Bornemann2017-03-071-2/+0
| | | | | | | | | | | | | | | | | | Call sites of NmakeMakefileGenerator::writeResponseFileFiles expect that the output is terminated with '\n'. Do not bail out if files is empty. Task-number: QTBUG-59305 Change-Id: Id3fef8dbc506dad1868e6b352119f5f27b50a368 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Improve time stamp precision of qmake's touch functionSimon Hausmann2017-03-011-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | On POSIX compliant platforms, the default precision we apply to preserving time stamps is seconds. However we can do better and use utimensat() - if available - to increase the precision to nanoseconds. The values are provided by statbuf's st_mtim. This is guarded for compatibility with older systems, similar to commit 494ced13292fa9d7b572f5310090f6b8fab36e26. Change-Id: I6928660230d84f8511bf0f58e268906d2e575e04 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-161-16/+2
|\| | | | | | | | | | | | | | | | | Conflicts: src/corelib/plugin/qlibrary_unix.cpp src/plugins/platforms/xcb/qxcbconnection.cpp tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp Change-Id: I632c400d909f8c204f55743aadc7886af2f15dfb
| * Doc: Remove mentioning of Windows CE from qmake documentationKai Koehne2017-02-141-16/+2
| | | | | | | | | | | | Change-Id: Ibfd575a63dd80b1571d1ba61d593aff75dd83f9f Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-143-7/+2
|\| | | | | | | Change-Id: I2bd2e61bae1eab4fc74fa6accd741ed9ae1f0669
| * rename qvector.cpp => qvector.qdocOswald Buddenhagen2017-02-093-7/+2
| | | | | | | | | | | | | | | | | | | | the file contains no code. this avoids complaints from ar/ranlib in static/bootstrapped builds. Change-Id: Iee22ffc61a5f9ea8c25f5455b7e8e017ac521624 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | qmake/nmake: Prevent overlong lines in link and lib response filesJoerg Bornemann2017-02-132-7/+35
| | | | | | | | | | | | | | | | | | | | | | Linking with too many object files could lead to "LNK1170: line in command file contains 131071 or more characters". Do not write all .obj files into one line but respect a limit of 1000 characters. If the limit is reached the object files are separated by newlines instead of spaces. Task-number: QTBUG-58710 Change-Id: Ibae1f737d6b614a9624b4e00cdd21d3722d341e3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-087-38/+52
|\| | | | | | | | | | | | | | | Conflicts: configure.json mkspecs/win32-icc/qmake.conf Change-Id: Ibf40546b024d644c7d9ed490bee15b82597f4d3f
| * add a bunch of complementary options to -afterOswald Buddenhagen2017-02-066-36/+50
| | | | | | | | | | | | | | | | in particular, -before (just for symmetry, as it's the default), -early (the actual objective), and -late (for symmetry again). Change-Id: I274303582a348b052c3e5106ff360ab4fd7d4ee2 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Unbreak the build with ICC on WindowsThiago Macieira2017-01-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Commit 52d64fca662d0e488801fc40dffdc0a732cfdbd5 made qlibraryinfo.obj be compiled with an extra -D argument, but that doesn't take effect since a precompiled header is in effect. Warning #673: the initial sequence of preprocessing directives is not compatible with those of precompiled header file "qmake_pch.pchi" qlibraryinfo.cpp(61): catastrophic error: cannot open source file "qconfig.cpp" Change-Id: Iab7c358838e1487387a2fffd149d74a9aa2be338 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'gerrit/dev' into HEADOswald Buddenhagen2017-02-0123-106/+427
|\ \
| * | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-2523-106/+427
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf mkspecs/common/msvc-desktop.conf mkspecs/common/msvc-version.conf mkspecs/common/winrt_winphone/qmake.conf mkspecs/features/mac/default_post.prf mkspecs/features/mac/sdk.prf mkspecs/features/qt.prf mkspecs/features/uikit/default_post.prf mkspecs/features/winrt/default_pre.prf mkspecs/winphone-arm-msvc2013/qmake.conf mkspecs/winphone-x86-msvc2013/qmake.conf mkspecs/winrt-arm-msvc2013/qmake.conf mkspecs/winrt-x64-msvc2013/qmake.conf mkspecs/winrt-x86-msvc2013/qmake.conf qmake/generators/win32/msvc_vcproj.cpp src/gui/kernel/qwindowsysteminterface.cpp src/network/kernel/qhostaddress.cpp src/plugins/platforms/mirclient/qmirclientplugin.cpp src/plugins/platforms/mirclient/qmirclientplugin.h src/widgets/util/qsystemtrayicon.cpp tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp tools/configure/Makefile.mingw tools/configure/Makefile.win32 Done-with: Jake Petroules <jake.petroules@qt.io> Done-with: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Change-Id: I4be3262d3994e11929d3b1ded2c3379783797dbe