summaryrefslogtreecommitdiffstats
path: root/Source/cmQtAutoGenerators.cxx
Commit message (Collapse)AuthorAgeFilesLines
* clang-tidy: apply readability-redundant-string-init fixesDaniel Pfeifer2016-12-121-1/+1
|
* QtAutogen: Don't use std::i/ofstream::is_open()Sebastian Holtermann2016-12-071-3/+4
|
* QtAutogen: Rename and sort variablesSebastian Holtermann2016-12-071-28/+46
|
* QtAutogen: Generate included ui_ and moc_ files in _automoc/includesSebastian Holtermann2016-12-071-44/+46
| | | | | | | | | | 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.
* QtAutogen: Use checksum based subdirectories to avoid name collisionsSebastian Holtermann2016-12-071-26/+21
|
* QtAutogen: Remove .dir suffix from automoc build directorySebastian Holtermann2016-12-071-1/+1
|
* QtAutogen: Generate moc compilation in _automoc.dir/moc_compilation.cppSebastian Holtermann2016-12-071-12/+16
|
* QtAutogen: Use upper case for MOC, UIC and RCC in messagesSebastian Holtermann2016-12-071-1/+1
|
* QtAutogen: New common bold logging methodSebastian Holtermann2016-12-071-16/+15
|
* QtAutogen: Make sure parent directory exists before writing filesSebastian Holtermann2016-12-071-37/+83
|
* QtAutogen: Improved error handlingSebastian Holtermann2016-12-071-16/+30
|
* QtAutogen: Error and warning log method tweaksSebastian Holtermann2016-12-071-13/+23
|
* QtAutogen: Improved error recognitionSebastian Holtermann2016-12-071-42/+48
|
* QtAutogen: Improved error recognition on config loadSebastian Holtermann2016-12-071-22/+38
|
* QtAutogen: Rename config AM_RELAXED_MODE to AM_MOC_RELAXED_MODESebastian Holtermann2016-12-061-2/+2
|
* Merge topic 'autorcc-only-no-rebuild'Brad King2016-11-101-2/+2
|\ | | | | | | | | e4232b82 QtAutogen: Do not re-generate AUTORCC outputs on every build
| * QtAutogen: Do not re-generate AUTORCC outputs on every buildBrad King2016-11-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.6.0-rc1~134^2~10 (Autogen: Split out moc file generation code to dedicated method, 2016-04-18) removed the unconditional creation of the `<target>_automoc.cpp` file. Now it is generated only when `AUTOMOC` is enabled. However, if this file is not created then our internal `GenerateAll` setting is enabled on every build, causing `AUTORCC` to re-generate its file(s) every time. Fix the `GenerateAll` setting to be used only for when autogen settings change. The old logic was left from when we had only automoc. Closes: #16413
* | Fix several include-what-you-use findingsDaniel Pfeifer2016-11-081-12/+11
| |
* | cmState: Split auxiliary classes into separate filesStephen Kelly2016-10-191-0/+2
| | | | | | | | | | | | | | Port dependents to the new locations as needed. Leave behind a cmState.h include in cmListFileCache to reduce noise. It is removed in a following commit.
* | cmState: Port dependents to new cmStateTypes headerStephen Kelly2016-10-191-1/+1
| |
* | cmState: Port dependent code to new cmStateSnapshot nameStephen Kelly2016-10-191-1/+1
|/
* Simplify CMake per-source license noticesBrad King2016-09-271-13/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* fix a load of include-what-you-use violationsDaniel Pfeifer2016-09-031-3/+10
|
* QtAutogen: Allow multiple qrc files with the same nameSebastian Holtermann2016-08-101-14/+48
| | | | Use cmFilePathUuid for qrc files.
* QtAutogen: Allow multiple moc files with the same nameSebastian Holtermann2016-08-101-10/+12
| | | | | | Use cmFilePathUuid for moc files. Closes: #12873
* QtAutogen: Use std:: instead of ::std::Sebastian Holtermann2016-08-101-2/+2
|
* Merge topic 'revert-autogen-subdirs'Brad King2016-07-221-64/+15
|\ | | | | | | | | 5e55d87b Autogen: Revert changes to generate moc/rcc in subdirectories
| * Autogen: Revert changes to generate moc/rcc in subdirectoriesBrad King2016-07-211-64/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Use better KWSys SystemTools::GetEnv and HasEnv signaturesDāvis Mosāns2016-07-181-1/+1
| |
* | Avoid using KWSys auto_ptr by adopting it ourselvesBrad King2016-06-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Replace use of cmsys::auto_ptr with a CM_AUTO_PTR macro that maps to our own implementation adopted from the KWSys auto_ptr implementation. Later we may be able to map CM_AUTO_PTR to std::auto_ptr on compilers that do not warn about it. Automate the client site conversions: git grep -l auto_ptr -- Source/ | grep -v Source/kwsys/ | xargs sed -i \ 's|cmsys::auto_ptr|CM_AUTO_PTR|;s|cmsys/auto_ptr.hxx|cm_auto_ptr.hxx|'
* | use CM_NULLPTRDaniel Pfeifer2016-06-281-6/+6
| |
* | Prefer istringstream and ostringstream over stringstream.Daniel Pfeifer2016-06-141-29/+29
| | | | | | | | Use istringsream for parsing, ostringstream for generation.
* | Simplify boolean expressionsDaniel Pfeifer2016-06-021-6/+5
|/ | | | | | Use clang-tidy's readability-simplify-boolean-expr checker. After applying the fix-its, revise all changes *very* carefully. Be aware of false positives and invalid changes.
* Use std::replace for replacing chars in strings.Daniel Pfeifer2016-05-241-1/+1
| | | | | | | | | | | Find uses of `cmSystemTools::ReplaceString` where both `replace` and `with` are string literals with a size of one. Automate with: git grep -l ReplaceString | xargs sed -i "s|cmSystemTools::ReplaceString(\([^,]*\), \"\(.\)\", \"\(.\)\");|std::replace(\1.begin(), \1.end(), '\2', '\3');|g" git grep -l ReplaceString | xargs sed -i "s|cmSystemTools::ReplaceString(\([^,]*\), \"\(.\)\", \"\\\\\\\\\");|std::replace(\1.begin(), \1.end(), '\2', '\\\\\\\\');|g" git grep -l ReplaceString | xargs sed -i "s|cmSystemTools::ReplaceString(\([^,]*\), \"\\\\\\\\\", \"\(.\)\");|std::replace(\1.begin(), \1.end(), '\\\\\\\\', '\2');|g"
* Revise C++ coding style using clang-formatKitware Robot2016-05-161-833/+631
| | | | | | | | | | | | | 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.
* Format include directive blocks and ordering with clang-formatBrad King2016-04-291-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sort include directives within each block (separated by a blank line) in lexicographic order (except to prioritize `sys/types.h` first). First run `clang-format` with the config file: --- SortIncludes: false ... Commit the result temporarily. Then run `clang-format` again with: --- SortIncludes: true IncludeCategories: - Regex: 'sys/types.h' Priority: -1 ... Commit the result temporarily. Start a new branch and cherry-pick the second commit. Manually resolve conflicts to preserve indentation of re-ordered includes. This cleans up the include ordering without changing any other style. Use the following command to run `clang-format`: $ git ls-files -z -- \ '*.c' '*.cc' '*.cpp' '*.cxx' '*.h' '*.hh' '*.hpp' '*.hxx' | egrep -z -v '(Lexer|Parser|ParserHelper)\.' | egrep -z -v '^Source/cm_sha2' | egrep -z -v '^Source/(kwsys|CursesDialog/form)/' | egrep -z -v '^Utilities/(KW|cm).*/' | egrep -z -v '^Tests/Module/GenerateExportHeader' | egrep -z -v '^Tests/RunCMake/CommandLine/cmake_depends/test_UTF-16LE.h' | xargs -0 clang-format -i This selects source files that do not come from a third-party. Inspired-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
* Source: Stabilize include orderBrad King2016-04-291-2/+2
| | | | | Each source file has a logical first include file. Include it in an isolated block so that tools that sort includes do not move them.
* Autogen: Message tweaks: Compiler type (moc/qrc/ui) added to progress messagesSebastian Holtermann2016-04-251-4/+4
|
* Autogen: Message cleanups: Compose messages in std::stringstreamSebastian Holtermann2016-04-251-104/+158
| | | | | 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.
* Autogen: Generate qrc_NAME.cpp files in subdirectoriesSebastian Holtermann2016-04-221-5/+10
| | | | | | | 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
* Autogen: Generate not included moc files in subdirectories (#12873)Sebastian Holtermann2016-04-221-10/+59
| | | | | | | Not included moc files generated from a source file in CMAKE_CURRENT_SOURCE_DIR/SUBDIR will be generated in the directory CMAKE_CURRENT_BINARY_DIR/TARGETNAME_automoc.dir/SUBDIR/
* Autogen: Check added for name collisions of generated qrc_NAME.cpp filesSebastian Holtermann2016-04-221-0/+14
|
* Autogen: Check added for name collisions of generated ui_NAME.h filesSebastian Holtermann2016-04-221-0/+16
|
* Autogen: Check added for name collisions of generated moc filesSebastian Holtermann2016-04-221-0/+69
| | | | | The test exits with an error if two or more source files would generate the same moc file.
* Autogen: Qrc processing: Generate single map with final input / output namesSebastian Holtermann2016-04-191-46/+74
|
* Autogen: Ui processing: Generate single map with final input / output namesSebastian Holtermann2016-04-191-17/+39
| | | | The single map allows name collision testing (in a later commit)
* Autogen: Split out UI file generation code to dedicated methodSebastian Holtermann2016-04-191-12/+26
|
* Autogen: Split out moc file generation code to dedicated methodSebastian Holtermann2016-04-191-54/+103
|
* Autogen: Rename method GenerateQrc{ => Files}Sebastian Holtermann2016-04-191-2/+2
|
* Autogen: New logCommand method. It prints commands using std::cout.Sebastian Holtermann2016-04-191-21/+24
|