summaryrefslogtreecommitdiffstats
path: root/Source/cmSourceGroup.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Modernize memory managementMarc Chevrier2020-02-271-6/+5
| | | | Update internals of various classes
* Revise include order using clang-format-6.0Kitware Robot2019-10-011-2/+2
| | | | | Run the `clang-format.bash` script to update our C and C++ code to a new include order `.clang-format`. Use `clang-format` version 6.0.
* Source sweep: Use cmStrCat for string concatenationSebastian Holtermann2019-08-221-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is generated by a python script that uses regular expressions to search for string concatenation patterns of the kind ``` std::string str = <ARG0>; str += <ARG1>; str += <ARG2>; ... ``` and replaces them with a single `cmStrCat` call ``` std::string str = cmStrCat(<ARG0>, <ARG1>, <ARG2>, ...); ``` If any `<ARGX>` is itself a concatenated string of the kind ``` a + b + c + ...; ``` then `<ARGX>` is split into multiple arguments for the `cmStrCat` call. If there's a sequence of literals in the `<ARGX>`, then all literals in the sequence are concatenated and merged into a single literal argument for the `cmStrCat` call. Single character strings are converted to single char arguments for the `cmStrCat` call. `std::to_string(...)` wrappings are removed from `cmStrCat` arguments, because it supports numeric types as well as string types. `arg.substr(x)` arguments to `cmStrCat` are replaced with `cm::string_view(arg).substr(x)`
* clang-tidy: Pass by valueRegina Pfeifer2019-01-221-2/+4
|
* cmSourceGroup: code improvements; use std::string and C++11 loopsVitaly Stakhovsky2018-01-111-35/+14
| | | | Topic-rename: cmSourceGroup-modern-cxx
* cmSourceGroup: Return strings from GetName and GetFullNameBrad King2017-11-151-5/+5
|
* Use C++11 nullptrDaniel Pfeifer2017-08-241-3/+3
|
* Simplify CMake per-source license noticesBrad King2016-09-271-11/+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.
* use CM_NULLPTRDaniel Pfeifer2016-06-281-3/+3
|
* Simplify boolean expressionsDaniel Pfeifer2016-06-021-5/+1
| | | | | | 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.
* Pass arguments that are not modified as const&.Daniel Pfeifer2016-05-261-1/+1
| | | | | | | Use clang-tidy's performance-unnecessary-value-param checker to find value parameter declarations of expensive to copy types that are not modified inside the function. Ignore findings in kwsys. After applying the fix-its, manually change `const T&` to `T const&`.
* Revise C++ coding style using clang-formatKitware Robot2016-05-161-42/+28
| | | | | | | | | | | | | 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.
* Remove `//------...` horizontal separator commentsBrad King2016-05-091-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | Modern editors provide plenty of ways to visually separate functions. Drop the explicit comments that previously served this purpose. Use the following command to automate the change: $ git ls-files -z -- \ "*.c" "*.cc" "*.cpp" "*.cxx" "*.h" "*.hh" "*.hpp" "*.hxx" | egrep -z -v "^Source/cmCommandArgumentLexer\." | egrep -z -v "^Source/cmCommandArgumentParser(\.y|\.cxx|Tokens\.h)" | egrep -z -v "^Source/cmDependsJavaLexer\." | egrep -z -v "^Source/cmDependsJavaParser(\.y|\.cxx|Tokens\.h)" | egrep -z -v "^Source/cmExprLexer\." | egrep -z -v "^Source/cmExprParser(\.y|\.cxx|Tokens\.h)" | egrep -z -v "^Source/cmFortranLexer\." | egrep -z -v "^Source/cmFortranParser(\.y|\.cxx|Tokens\.h)" | egrep -z -v "^Source/cmListFileLexer\." | egrep -z -v "^Source/cm_sha2" | egrep -z -v "^Source/(kwsys|CursesDialog/form)/" | egrep -z -v "^Utilities/(KW|cm).*/" | xargs -0 sed -i '/^\(\/\/---*\|\/\*---*\*\/\)$/ {d;}' This avoids modifying third-party sources and generated sources.
* strings: Remove cmStdString referencesBen Boeckel2014-03-081-1/+1
| | | | | | | | | | | Casts from std::string -> cmStdString were high on the list of things taking up time. Avoid such implicit casts across function calls by just using std::string everywhere. The comment that the symbol name is too long is no longer relevant since modern debuggers alias the templates anyways and the size is a non-issue since the underlying methods are generated since it's inherited.
* stringapi: Use strings for source namesBen Boeckel2014-03-081-1/+1
|
* cmSourceGroup: Fix method name capitalization.Stephen Kelly2014-01-221-1/+1
| | | | Adhere to the dominant style.
* cmMakefile: Constify some cmSourceGroup related code.Stephen Kelly2014-01-221-4/+4
|
* CMake: source_group needs to check its own regex after its children (#13611)Clemens Heppner2012-11-231-4/+5
| | | | Otherwise, regexes that descend into sub-folders do not get grouped correctly.
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-5/+5
| | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* Remove unused cmSourceGroup methodBrad King2012-03-091-6/+0
| | | | The non-const GetSourceFiles method is not needed.
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* ENH: add group support and fix borland errorBill Hoffman2009-07-111-1/+15
|
* COMP: Fix build with concept checking of STL.Brad King2008-05-161-9/+50
| | | | - Fix cmSourceGroup to not use std::vector with an incomplete type.
* BUG: fix #4057 (which had several duplicates): handle recursivew source ↵Alexander Neundorf2007-08-241-8/+0
| | | | | | groups better, i.e. multiple sourcegroups with the same end component work now Alex
* STYLE: some m_ to this-> cleanupKen Martin2006-03-151-19/+19
|
* FIX: apply patch from bug# 1965Bill Hoffman2005-07-131-0/+85
|
* ENH: Fully implemented SOURCE_GROUP command.Brad King2003-07-231-25/+51
|
* warning fixesKen Martin2003-06-031-1/+1
|
* yikes added new custom command supportKen Martin2003-06-031-96/+2
|
* Add comment support, so that you can see in build process what the custom ↵Andy Cedilnik2002-12-101-0/+2
| | | | command does
* ENH: Added reference to Copyright.txt. Removed old reference to ITK ↵Brad King2002-10-231-5/+5
| | | | copyright. Changed program name to CMake instead of Insight in source file header. Also removed tabs.
* ENH: remove several compiler warningsBill Hoffman2002-03-131-2/+4
|
* ENH: add file specific compile flagsBill Hoffman2002-03-041-6/+9
|
* ENH:Updated copyrightWill Schroeder2002-01-211-30/+6
|
* ENH: separate command from its arguments in the custom command. This allows ↵Bill Hoffman2001-09-041-10/+20
| | | | the generator on windows to change the slashes for just the command
* ENH: move testing stuff to cmake from configure, good bye dashboard... :)Bill Hoffman2001-05-041-0/+19
|
* better custom rulesKen Martin2001-05-041-0/+16
|
* BUG: Removed output of dual rules for source files that are processed by ↵Brad King2001-04-271-6/+20
| | | | both the compiler and by a custom command. Also removed generation of duplicate CMakeLists.txt in the project files.
* ENH:New copyrightWill Schroeder2001-04-271-3/+28
|
* cleaned up the coding style made ivars private etcKen Martin2001-04-191-10/+10
|
* major changes to support multiple libraries and source listsKen Martin2001-04-111-14/+11
|
* ENH: Added SOURCE_GROUP command and corresponding support code. This ↵Brad King2001-03-201-0/+87
command allows CMakeLists files to specify how sources are organized into groups in the generated DSP files and makefiles.