qt5base-lts/qmake
Joerg Bornemann dcd2f82951 Fix circular dependencies in generated vcxproj files
For QMAKE_EXTRA_COMPILERS with inputs that are "buildable" (e.g. C++
sources) the custom build step is added to the output file. From Visual
Studio's point of view this looks like a circular dependency (e.g.
foo.moc generates foo.moc). Usually this just prints a warning that can
be ignored. But this circular dependency also breaks dependencies
between custom build steps. This became noticeable when the generation of
moc_predefs.h was added. Generating moc_predefs.h must be done before
any moc custom build step is executed.

This patch fixes the issue by using fake files (output file plus suffix
".cbt" for "custom build tool") that act as dummy inputs for the custom
build tools.

Task-number: QTBUG-16904
Task-number: QTBUG-57196
Change-Id: I4711e44a0551046d215db151fa0312af8a9177a2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2016-12-01 05:07:08 +00:00
..
doc Merge remote-tracking branch 'origin/5.7' into 5.8 2016-11-24 10:31:21 +01:00
generators Fix circular dependencies in generated vcxproj files 2016-12-01 05:07:08 +00:00
library Merge remote-tracking branch 'origin/5.7' into 5.8 2016-11-24 10:31:21 +01:00
cachekeys.h Updated license headers 2016-01-21 18:55:18 +00:00
main.cpp moc: get the system #defines from the compiler itself 2016-07-20 02:54:03 +00:00
Makefile.unix configure: put more of the makefile contents into template files 2016-11-23 09:38:14 +00:00
Makefile.unix.macos configure: put more of the makefile contents into template files 2016-11-23 09:38:14 +00:00
Makefile.unix.mingw configure: put more of the makefile contents into template files 2016-11-23 09:38:14 +00:00
Makefile.unix.unix configure: put more of the makefile contents into template files 2016-11-23 09:38:14 +00:00
Makefile.unix.win32 configure: put more of the makefile contents into template files 2016-11-23 09:38:14 +00:00
Makefile.win32 Merge remote-tracking branch 'origin/5.7' into 5.8 2016-11-24 10:31:21 +01:00
meta.cpp qmake: eradicate Q_FOREACH loops [needing qAsConst()] 2016-01-28 20:25:18 +00:00
meta.h Updated license headers 2016-01-21 18:55:18 +00:00
option.cpp ensure that QMAKE_QMAKE always ends in .exe on windows 2016-11-15 22:43:56 +00:00
option.h bump qmake version 2016-11-15 22:43:51 +00:00
project.cpp Merge remote-tracking branch 'origin/5.7' into dev 2016-07-19 20:14:40 +02:00
project.h Merge remote-tracking branch 'origin/5.7' into dev 2016-07-19 20:14:40 +02:00
property.cpp Merge remote-tracking branch 'origin/5.6' into 5.7 2016-11-15 09:58:16 +01:00
property.h Updated license headers 2016-01-21 18:55:18 +00:00
qmake_pch.h Updated license headers 2016-01-21 18:55:18 +00:00
qmake-aux.pro configure: Separate host and build platform. 2015-10-30 13:14:51 +00:00
qmake.pri Clean up building of bootstrap lib and tools 2016-10-11 06:04:54 +00:00
qmake.pro configure: delete some dead code and outdated comments 2016-11-23 09:38:09 +00:00