Commit Graph

74 Commits

Author SHA1 Message Date
Sebastian Holtermann
b770b85d6c QtAutogen: Determine the Qt major version in only one way 2016-12-07 08:24:01 -05:00
Sebastian Holtermann
5c3dc7460e QtAutogen: Clean removes autogen build directory
Cleaning removes the entire autogen build directory instead
of single files.
2016-12-07 08:24:01 -05:00
Sebastian Holtermann
8c9358386b QtAutogen: Generate included ui_ and moc_ files in _automoc/includes
ui_ and moc_ files that are include in source files get generated in
$CURRENT_BUILD_DIR/$TARGETNAME_automoc/include.
The directory is added to the INCLUDE_DIRECTORIES of the origin target
in the generation stage.

From now on all autogen files get generated below
$CURRENT_BUILD_DIR/$TARGETNAME_automoc.
2016-12-07 08:24:01 -05:00
Sebastian Holtermann
057ac11bfb QtAutogen: Use checksum based subdirectories to avoid name collisions 2016-12-07 08:24:00 -05:00
Sebastian Holtermann
d3afe4070b QtAutogen: Remove .dir suffix from automoc build directory 2016-12-07 08:23:59 -05:00
Sebastian Holtermann
6f53b1ab64 QtAutogen: Generate moc compilation in _automoc.dir/moc_compilation.cpp 2016-12-07 08:23:59 -05:00
Sebastian Holtermann
39e07d7a17 QtAutogen: Use upper case for MOC, UIC and RCC in messages 2016-12-07 08:23:59 -05:00
Sebastian Holtermann
69871e67e3 QtAutogen: Comments 2016-12-06 15:59:27 +01:00
Sebastian Holtermann
9360e28816 QtAutogen: For loop feature test optimization 2016-12-06 15:59:27 +01:00
Sebastian Holtermann
8548caa3ee QtAutogen: Variable scope optimizations 2016-12-06 15:59:27 +01:00
Sebastian Holtermann
9d9c68e21a QtAutogen: Rename variable templates in config template 2016-12-06 15:59:27 +01:00
Sebastian Holtermann
bb8c96689f QtAutogen: Make strings const 2016-12-06 15:59:27 +01:00
Sebastian Holtermann
4fa858ecb1 QtAutogen: Change config file permissions only on demand 2016-12-06 15:59:26 +01:00
Sebastian Holtermann
273e481e48 QtAutogen: Inline single use variable 2016-12-06 15:59:26 +01:00
Sebastian Holtermann
6f024008ce QtAutogen: Remove unused intermediate definition in makefile 2016-12-06 15:59:26 +01:00
Sebastian Holtermann
ff1a01b743 QtAutogen: Moc related variable renamed 2016-12-06 15:59:26 +01:00
Sebastian Holtermann
f448364de8 QtAutogen: Moc related variable renamed 2016-12-06 15:59:26 +01:00
Sebastian Holtermann
4eadf2ce3f QtAutogen: Target directory name function rename 2016-12-06 15:59:26 +01:00
Sebastian Holtermann
2e18801a1b QtAutogen: Move util functions to file begin 2016-12-06 15:59:25 +01:00
Sebastian Holtermann
048aac2cf9 QtAutogen: Moc related setup function rename 2016-12-06 15:59:25 +01:00
Sebastian Holtermann
c9e2208278 QtAutogen: Uic related function rename 2016-12-06 15:59:25 +01:00
Sebastian Holtermann
26505dfcb7 QtAutogen: Uic related setup function rename 2016-12-06 15:59:25 +01:00
Sebastian Holtermann
fc055c04e1 QtAutogen: Rcc related function rename 2016-12-06 15:59:25 +01:00
Sebastian Holtermann
9eba41479b QtAutogen: Rcc related function rename 2016-12-06 15:59:25 +01:00
Sebastian Holtermann
693d85f8d6 QtAutogen: Rcc related list function rename 2016-12-06 15:59:25 +01:00
Sebastian Holtermann
43747ee8b3 QtAutogen: Rcc related setup function rename 2016-12-06 15:59:24 +01:00
Sebastian Holtermann
8de8d3b191 QtAutogen: Remove and inline ReadAll function
The function was only used once.
2016-12-06 15:59:24 +01:00
Sebastian Holtermann
d0283dc185 QtAutogen: Use shorter name for static function 2016-12-06 15:59:24 +01:00
Sebastian Holtermann
2c9667e897 QtAutogen: Use util prefix for static function name 2016-12-06 15:59:24 +01:00
Daniel Pfeifer
2e620f0b38 Fix several include-what-you-use findings 2016-11-08 09:42:04 -05:00
Stephen Kelly
e6eecec761 cmListFileCache: Remove cmState header include
Include it in dependents which have previously relied on it
transitively.
2016-10-19 15:41:00 +02:00
Stephen Kelly
a91eaf3872 cmState: Port dependents to new cmStateTypes header 2016-10-19 15:40:59 +02:00
Sebastian Holtermann
a189d019dd QtAutogen: Use cmSystemTools::Error instead of std::cerr
We can use std::cerr only in the build-time tool, not during CMake
generation.
2016-09-30 10:12:59 -04:00
Sebastian Holtermann
98b11f252c QtAutogen: Allow .qrc files that do not contain any file reference 2016-09-30 10:02:48 -04:00
Brad King
86578eccf2 Simplify CMake per-source license notices
Per-source copyright/license notice headers that spell out copyright holder
names and years are hard to maintain and often out-of-date or plain wrong.
Precise contributor information is already maintained automatically by the
version control tool.  Ultimately it is the receiver of a file who is
responsible for determining its licensing status, and per-source notices are
merely a convenience.  Therefore it is simpler and more accurate for
each source to have a generic notice of the license name and references to
more detailed information on copyright holders and full license terms.

Our `Copyright.txt` file now contains a list of Contributors whose names
appeared source-level copyright notices.  It also references version control
history for more precise information.  Therefore we no longer need to spell
out the list of Contributors in each source file notice.

Replace CMake per-source copyright/license notice headers with a short
description of the license and links to `Copyright.txt` and online information
available from "https://cmake.org/licensing".  The online URL also handles
cases of modules being copied out of our source into other projects, so we
can drop our notices about replacing links with full license text.

Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority
of the replacements mechanically.  Manually fix up shebang lines and trailing
newlines in a few files.  Manually update the notices in a few files that the
script does not handle.
2016-09-27 15:14:44 -04:00
Daniel Pfeifer
efed6468ed fix a load of include-what-you-use violations 2016-09-03 08:04:56 -04:00
Daniel Pfeifer
7b6349da4d CMake: don't use else after return 2016-08-18 20:36:29 +02:00
Brad King
447b142b6a Merge topic 'issue-tracker-urls'
2bdba83e issues: update references to the CMake issue tracker
2016-08-16 13:26:15 -04:00
Ben Boeckel
2bdba83e4b issues: update references to the CMake issue tracker
References to specific comments are left as-is since comments were not
migrated.
2016-08-15 09:34:06 -04:00
Sebastian Holtermann
4e9b97d739 QtAutogen: Allow multiple qrc files with the same name
Use cmFilePathUuid for qrc files.
2016-08-10 13:21:33 -04:00
Brad King
19ccd35473 Merge topic 'revert-autogen-subdirs'
5e55d87b Autogen: Revert changes to generate moc/rcc in subdirectories
2016-07-22 09:17:28 -04:00
Brad King
5e55d87bdc Autogen: Revert changes to generate moc/rcc in subdirectories
Revert these commits:

* v3.6.0-rc1~134^2
  Tests: QtAutogen: Same source name in different directories test, 2016-04-13
* v3.6.0-rc1~134^2~1
  Autogen: Generate qrc_NAME.cpp files in subdirectories, 2016-04-19
* v3.6.0-rc1~134^2~2
  Autogen: Generate not included moc files in subdirectories, 2016-04-19

They regress existing builds that depend on the paths/symbols generated
previously.  Another approach will be needed to solve the name collision
problem they were intended to solve.  Leave the error diagnostics for
the colliding cases that were added in the same topic as the above
commits because they provide a useful early failure in relevant cases.

Fixes #16209.
2016-07-21 09:27:19 -04:00
Daniel Pfeifer
1d6909a287 use CM_NULLPTR 2016-06-28 09:02:26 -04:00
Daniel Pfeifer
24ab29b882 Prefer istringstream and ostringstream over stringstream.
Use istringsream for parsing, ostringstream for generation.
2016-06-14 22:37:36 +02:00
Daniel Pfeifer
1b2bb93302 Remove redundant c_str() calls.
Run clang-tidy's readability-redundant-string-cstr checker.
Ignore findings in kwsys.
2016-05-26 22:52:22 +02:00
Kitware Robot
d9fd2f5402 Revise C++ coding style using clang-format
Run the `Utilities/Scripts/clang-format.bash` script to update
all our C++ code to a new style defined by `.clang-format`.
Use `clang-format` version 3.8.

* If you reached this commit for a line in `git blame`, re-run the blame
  operation starting at the parent of this commit to see older history
  for the content.

* See the parent commit for instructions to rebase a change across this
  style transition commit.
2016-05-16 16:05:19 -04:00
Sebastian Holtermann
9b58190c8f Autogen: Message cleanups: Compose messages in std::stringstream
To avoid Race conditions with other processes writing to stdout/stderr compose
the whole message in a std::stringstream then submit the single complete message.
2016-04-25 10:38:58 -04:00
Sebastian Holtermann
9c6fa684e7 Autogen: Generate qrc_NAME.cpp files in subdirectories
A qrc_NAME.cpp file generated from NAME.qrc in the directory
CMAKE_CURRENT_SOURCE_DIR/SUBDIR
will be generated in the directory
CMAKE_CURRENT_BINARY_DIR/TARGETNAME_automoc.dir/SUBDIR
2016-04-22 08:54:25 -04:00
Brad King
3144857e1e Avoid depending on CMAKE_ROOT cache entry internally (#16015)
Use cmSystemTools::GetCMakeRoot() which always knows the location of our
resources.  Do not depend on CMAKE_ROOT because the user could unset it
from the cache.
2016-03-16 09:03:26 -04:00
Brad King
b5d94065c0 Merge topic 'autorcc-qt-5.1-compat'
e78fcc63 QtAutogen: Fix rcc invocation for Qt 5.0 and 5.1 (#15644)
2015-10-29 08:42:22 -04:00