summaryrefslogtreecommitdiffstats
path: root/Source/cmQtAutoGenerators.cxx
Commit message (Collapse)AuthorAgeFilesLines
* 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
|
* Autogen: Rename header extension Join method to JoinExtsSebastian Holtermann2016-04-191-5/+9
| | | | While at it, simplify the signature and avoid a trailing separator.
* Autogen: Use SystemTools string functions instead of rolling out ownSebastian Holtermann2016-04-191-20/+2
|
* Fix spelling typos in comments and documentation (#16037)Felix Geyer2016-03-291-3/+3
| | | | | The Debian package checker tool (lintian) detected several typos in CMake.
* Revert "Automoc: Fix support of files with the same name (#12873)"Brad King2016-02-191-32/+3
| | | | | | | | | | This reverts commit 9beb2744d7685fca9cd5717308d4457dffdefcdc. Our AUTOMOC documentation states that it should be possible to `#include "moc_foo.cpp"` in `foo.cpp`, and this will not work if the file is placed in a different directory. Another solution will need to be found to the original problem. Reported-by: Stephen Kelly <steveire@gmail.com>
* Automoc: Fix support of files with the same name (#12873)Mariusz Pluciński2016-02-161-3/+32
|
* cmake: Store hardcoded lists of sources and headersStephen Kelly2015-10-271-1/+1
| | | | Don't duplicate this in each cmMakefile.
* cmState: Initialize default definitions immediately.Stephen Kelly2015-10-131-0/+1
| | | | Don't leave this as cmMakefile responsibility.
* Set the current dirs on the snapshot before creating the cmMakefile.Stephen Kelly2015-10-071-2/+3
| | | | | | The cmMakefile should get a fully prepared snapshot and not clobber its definitions. It should eventually be able to process list files from any starting-point snapshot, though that is some refactoring away still.
* QtAutogen: Port away from cmLocalGenerator.Stephen Kelly2015-09-291-8/+7
|
* QtAutogen: Split initializer class into separate file.Stephen Kelly2015-09-291-1049/+8
|
* QtAutogen: Split initializer methods into separate class.Stephen Kelly2015-09-261-22/+31
|
* QtAutogen: Add _automoc.cpp sources before initializing.Stephen Kelly2015-09-261-2/+15
|
* QtAutogen: Move initialization condition to caller.Stephen Kelly2015-09-261-13/+1
|
* QtAutogen: Make some methods static.Stephen Kelly2015-09-261-12/+15
|
* QtAutogen: Don't use members to initialize automoc targets.Stephen Kelly2015-09-261-19/+17
|
* QtAutogen: Rename variable.Stephen Kelly2015-09-261-2/+3
|
* QtAutogen: Don't use a member to store skipped uic files.Stephen Kelly2015-09-261-11/+9
|
* cmLocalGenerator: Create from already-constructed cmMakefile.Stephen Kelly2015-08-281-1/+2
| | | | Don't manage the lifetime of the cmMakefile with cmLocalGenerator.
* QtAutogen: Use a smart pointer.Stephen Kelly2015-08-281-2/+1
|
* cmGlobalGenerator: Remove MakeLocalGenerator method.Stephen Kelly2015-08-281-1/+1
| | | | Inline implementation to callers.
* cmGlobalGenerator: Require a snapshot to create a local generator.Stephen Kelly2015-08-281-1/+2
|
* cmGeneratorTarget: Move GetConfigCommonSourceFiles from cmTarget.Stephen Kelly2015-08-261-3/+11
|
* cmGeneratorTarget: Move compile defintions processing from cmTarget.Stephen Kelly2015-08-261-2/+0
|
* Remove use of include <cmsys/ios/*> and cmsys_ios::*Brad King2015-08-201-3/+2
| | | | We no longer need this compatibility layer for the compilers we support.
* Merge topic 'global-generator-makefiles'Brad King2015-08-111-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6d8a125e cmQtAutoGenerators: Prefer a generator to access global generator. 5f66900e cmGlobalGenerator: Port Find API to cmMakefile. c5b8841f cmGlobalGenerator: Create global targets from cmMakefiles. 8f75ea3b cmGlobalGenerator: Port global target creation to cmMakefile. 56f0540b cmGlobalGenerator: Port Configure-time check to cmMakefile. 19b546ef cmGlobalGenerator: Base final target property computation on Makefiles. f8be9ba9 cmGlobalGenerator: Base progress on Makefiles, not LocalGenerators. bc1097e3 cmExportLibraryDependenciesCommand: Port to cmMakefile. 204aecdf cmGlobalGenerator: Port configure-time code to cmMakefile. 3dd6f0a5 cmake: Port configure-time code to cmMakefile. 73e4df99 cmGlobalGenerator: Store a container of cmMakefiles. 19369937 cmGeneratorTarget: Port internal type to cmGeneratorTarget. 32f131b0 cmGeneratorTarget: Prefer the local generator to access the global.
| * cmQtAutoGenerators: Prefer a generator to access global generator.Stephen Kelly2015-08-071-2/+2
| |