summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'vs10-source-paths'David Cole2012-05-014-80/+137
|\ | | | | | | | | | | | | | | | | d931ce9 VS10: Generate relative source paths when possible (#12570) b2e7c7a VS11: Do not use source path conversion workaround specific to VS 10 4248132 VS10: Convert paths normally unless forced to relative c2ba6ba VS10: Simplify vcxproj.filter file generation 4f2d9d2 VS10: Refactor custom commands to use WriteSource
| * VS10: Generate relative source paths when possible (#12570)Brad King2012-04-273-4/+77
| | | | | | | | | | | | | | | | | | | | Since commit ed0075bd (Use relative paths for custom command inputs, 2011-06-22) CMake generates full paths to source files in VS 10 project files to avoid trouble with deep source/build tree paths. However, the VS 10 IDE will not populate the source file property dialog for a file referenced by full path. Instead use a relative path when possible. When not possible produce a detailed warning explaining the problem and suggesting use of shorter directory paths.
| * VS11: Do not use source path conversion workaround specific to VS 10Brad King2012-04-271-7/+22
| | | | | | | | | | | | | | | | | | CMake <= 2.8.4 generated VS 10 project files with a relative path to source files. Then commit ed0075bd (Use relative paths for custom command inputs, 2011-06-22) switched to using relative paths only for source files holding custom commands and full paths for other sources. This behavior was inhereted by the VS 11 generator but is not needed so use the workaround only for exactly VS 10. Explain the behavior in comments.
| * VS10: Convert paths normally unless forced to relativeBrad King2012-04-272-19/+21
| | | | | | | | | | | | | | Most CMake generators produce relative paths within the build tree and full paths to files outside the build tree. Make VS 10 and VS 11 project files consistent with this approach except for paths forced to be relative to work around a VS 10 bug.
| * VS10: Simplify vcxproj.filter file generationBrad King2012-04-272-65/+26
| | | | | | | | | | | | | | | | | | Remove the duplicate source file classification logic used to generate the filter files. Instead record during the main vcxproj file generation the source files generated for each tool. Also record whether or not each source file is converted to a relative path. Use the recorded result during filter generation to ensure consistency between the project file and filter file.
| * VS10: Refactor custom commands to use WriteSourceBrad King2012-04-272-14/+20
| | | | | | | | | | All other source file elements are already written through WriteSource. Refactor custom command source element generation into WriteSource too.
* | Merge topic 'kwsys-environ-cleanup'David Cole2012-05-0110-91/+336
|\ \ | | | | | | | | | | | | | | | e48796b KWSys: Fix SystemTools environment memory handling (#13156) b10c5cb CTest: Simplify environment save/restore
| * | KWSys: Fix SystemTools environment memory handling (#13156)Brad King2012-04-275-25/+310
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The SystemTools::PutEnv function tries to provide the "putenv" API without leaking memory. However, the kwsysDeletingCharVector singleton frees memory that may still be referenced by the environment table, having been placed there by putenv. If any static destruction or processing by an external tool happens after the singleton is destroyed and accesses the environment it will read invalid memory. Replace use of putenv with setenv/unsetenv when available. The latter manage internal copies of the values passed instead of referencing the original memory. When setenv/unsetenv are not available use putenv with a singleton that removes its values from the environment before freeing their memory. This requires an "unputenv" implementation. On at least some platforms it must be written in terms of "putenv" because other APIs are not available and direct modification of the "environ" global is not safe (e.g. on Windows there is interaction with "wenviron"). Fortunately either putenv("A=") or putenv("A") will remove "A" from the environment on these platforms. On other platforms fall back to direct manipulation of "environ". Also add UnPutEnv to the API and add a test for the behavior of both.
| * | CTest: Simplify environment save/restoreBrad King2012-04-245-66/+26
| | | | | | | | | | | | | | | | | | | | | | | | Replace use of AppendEnv/RestoreEnv pairs with instances of SaveRestoreEnvironment. Simplify the signature of AppendEnv and use it in place of similar loops elsewhere. Move the RestoreEnv implementation inside the SaveRestoreEnvironment destructor which is the only place left that calls it.
* | | Merge topic 'doc-html-anchors'David Cole2012-05-011-5/+5
|\ \ \ | | | | | | | | | | | | | | | | dfccdd6 Documentation: Fix HTML anchor ranges
| * | | Documentation: Fix HTML anchor rangesBrad King2012-04-261-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Generate anchors of the form <a name="..."></a> instead of <a name="..."/> to ensure browsers know that the anchor contains no text and do not try to guess an end of the range. Also make the "section_Index" and item label anchors empty instead of containing the section header or label text. This ensures that the text associated with target anchors is not rendered as if it were a hyperlink.
* | | | Merge topic 'ctest_memcheck-xml-encoding'David Cole2012-05-011-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 3da577d CTest: Escape MemCheck test output for XML (#13124)
| * | | | CTest: Escape MemCheck test output for XML (#13124)Brad King2012-04-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Any output that goes through CleanTestOutput must be printed through cmXMLSafe.
* | | | | Merge topic 'try-compile-cleanup-dirs'David Cole2012-05-011-0/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 953257c try_compile: Cleanup temporary directories (#13160)
| * | | | | try_compile: Cleanup temporary directories (#13160)Brad King2012-04-261-0/+1
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 4fbdce2b (try_compile: Use random executable file name, 2012-02-13) a different <target>.dir is used for each try-compile. Cleanup the directories as well as their content to avoid accumulating leftover temporary directories.
* | | | | Merge topic 'kwsys-remove-DateStamp'David Cole2012-05-014-119/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 5f807a6 KWSys: Remove DateStamp
| * | | | | KWSys: Remove DateStampBrad King2012-04-254-119/+1
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | KWSys is no longer shared in projects via a server-side directory symlink in CVS. An automated nightly date stamp commit can no longer be shared by multiple projects directly. It needs a per-project replay robot so the nightly commits end up needing N+1 robots instead of N. Remove the DateStamp feature because it is no longer useful or maintained by nightly commits.
* | | | | CMake Nightly Date StampKitware Robot2012-05-011-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2012-04-301-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2012-04-291-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2012-04-281-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2012-04-271-1/+1
| |/ / / |/| | |
* | | | CMake Nightly Date StampKitware Robot2012-04-261-1/+1
| | | |
* | | | Merge topic 'compile-XL-v6'David Cole2012-04-251-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b3c7788 Workaround IBM XL v6 streams seekg bug (#13149) 09a91c6 libarchive: Avoid 'inline' keyword on XL C v6 (#13148) a8995eb libarchive: Avoid trailing , in enum for XL v6 (#13148)
| * | | | Workaround IBM XL v6 streams seekg bug (#13149)Jim Hague2012-04-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It seems that file.seekg(0) will, in some circumstances, cause the next file.getline() to omit the first character it reads. Workaround the bug by seeking from ios::beg explicitly.
* | | | | Merge topic 'enhance-include_external_msproject'David Cole2012-04-259-26/+127
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b803410 VS: Fix line-too-long style errors 8787f94 Merge branch 'list-empty-error' into enhance-include_external_msproject 4a30258 include_external_msproject: Test TYPE, GUID, PLATFORM options (#13120) f3191f5 Merge branch 'test-RunCMake-check' into enhance-include_external_msproject 5913903 include_external_msproject: Add TYPE, GUID, PLATFORM options (#13120)
| * | | | | VS: Fix line-too-long style errorsBrad King2012-04-194-12/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 59139031 (include_external_msproject: Add TYPE, GUID, PLATFORM options, 2012-04-16) introduced some long lines. Wrap them.
| * | | | | Merge branch 'list-empty-error' into enhance-include_external_msprojectBrad King2012-04-191-1/+14
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Resolve conflict in Tests/RunCMake/CMakeLists.txt by adding both tests.
| * | | | | | include_external_msproject: Add TYPE, GUID, PLATFORM options (#13120)Leonid Yurchenko2012-04-169-25/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These allow one to reference more external VS project file variations.
* | | | | | | Merge topic 'list-empty-error'David Cole2012-04-251-1/+14
|\ \ \ \ \ \ \ | | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | 05604eb list: Handle errors on empty lists more gracefully (#13138)
| * | | | | | list: Handle errors on empty lists more gracefully (#13138)Brad King2012-04-171-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit ed1ea24c (Fix INSERT to allow inserting to empty list, 2006-05-15) the list command allows insertion into an empty list at index 0. Fix rejection of insertion at non-zero (negative) indices to present an error message instead of crashing. While at it, fix the error message of the GET and REMOVE_AT operations when the list is empty to not present a bogus allowed range. Add a "RunCMake.list" test to cover failure cases on empty lists.
* | | | | | | Merge topic 'doc-find_package-variables'David Cole2012-04-251-3/+26
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5ed93db find_package: Fix components signature documentation (#13142) 6c12e82 find_package: Document <package>_FIND_* variables (#13142)
| * | | | | | | find_package: Fix components signature documentation (#13142)Brad King2012-04-191-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the signature notation to show that "REQUIRED COMPONENTS ..." is allowed and that REQUIRED is an option on its own.
| * | | | | | | find_package: Document <package>_FIND_* variables (#13142)Brad King2012-04-181-0/+23
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When loading a find module or package config file the find_package command defines several variables to provide information about the caller's request. Previously this was documented only in the Modules/readme.txt file which is not distributed. Document the behavior explicitly in the main find_package documentation.
* | | | | | | Merge topic 'vs10-rule-files'David Cole2012-04-259-52/+87
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 72333a4 VS10: Avoid creating .rule files next to outputs (#13141) 369e346 Factor out custom command .rule file path generation f9b758e Cleanup custom command .rule file internal handling
| * | | | | | | VS10: Avoid creating .rule files next to outputs (#13141)Brad King2012-04-183-1/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hide custom command .rule files inside the CMakeFiles directory. Ensure a short, deterministic, and unique name by using a hash of the directory path containing the output file. Preserve the file name so the entry in the IDE is human-readable. Clarify the comment that explains why the rule file must be created on disk.
| * | | | | | | Factor out custom command .rule file path generationBrad King2012-04-183-10/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add cmGlobalGenerator::GenerateRuleFile to compute a generator-specific rule file location. This will allow specific generators to override the location of .rule files without changing the behavior of other generators.
| * | | | | | | Cleanup custom command .rule file internal handlingBrad King2012-04-185-41/+41
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach cmMakefile::AddCustomCommandToOutput to return the cmSourceFile instance to which the custom command is attached. Use the return value instead of separately adding a .rule extension and searching for the source. Mark CMake-generated .rule files explicitly with a property instead of trusting the file extension.
* | | | | | | Merge topic 'CPackDeb-fixFakerootOnControl'David Cole2012-04-251-5/+10
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | abc9b32 Use fakeroot for control.tar.gz as well
| * | | | | | | Use fakeroot for control.tar.gz as wellEric NOULARD2012-04-171-5/+10
| | | | | | | |
* | | | | | | | Merge topic 'ctest_coverage-locale'David Cole2012-04-251-1/+29
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3247d63 ctest_coverage: Save/restore LC_ALL around gcov (#13136)
| * | | | | | | | ctest_coverage: Save/restore LC_ALL around gcov (#13136)Brad King2012-04-161-1/+29
| | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit ffbe61bb (make sure english is used for output of gcov, 2008-05-10) taught ctest_coverage to set LC_ALL=POSIX to get English output from gcov. Use the more portable value LC_ALL=C and restore the original value when finished.
* | | | | | | | Merge topic 'OBJECTLibrariesInCodeBlocks'David Cole2012-04-252-2/+43
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 38d4c1e CodeBlocks: improve support for OBJECT libraries d2ed3c7 -fix #13081: support OBJECT libraries in CodeBlocks/QtCreator projects
| * | | | | | | | CodeBlocks: improve support for OBJECT librariesAlex Neundorf2012-04-092-2/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit creates a dummy text file for each OBJECT library for the CodeBlocks generator, so the generated project file can reference a unique file for each target. Most probably these files are unused. Alex
| * | | | | | | | -fix #13081: support OBJECT libraries in CodeBlocks/QtCreator projectsAlex Neundorf2012-03-311-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Alex
* | | | | | | | | Merge topic 'doc-target_link_libraries-repeat'David Cole2012-04-251-1/+2
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ebf39cd Document behavior of multiple target_link_libraries calls (#13113)
| * | | | | | | | | Document behavior of multiple target_link_libraries calls (#13113)Brad King2012-04-091-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | State explicitly that multiple calls append (rather than replace).
* | | | | | | | | | Merge topic 'ninja-patches'David Cole2012-04-254-13/+38
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c9747f3 Ninja: CMAKE_USE_NINJA is the name of the macro 2a081a2 Ninja: no additional variable needed to enable ninja b8c3e8c Ninja: enable Ninja for CodeBlocks 11bd9b5 Ninja: remove GCC -Wshadow warning f93e818 Ninja: add option to enable ninja where it is not enabled by default 73426ac Ninja: no 16:9 screens for the cmake team ;) 8217c26 Ninja: ensure output directories exist
| * | | | | | | | | | Ninja: CMAKE_USE_NINJA is the name of the macroPeter Kuemmel2012-04-081-1/+1
| | | | | | | | | | |
| * | | | | | | | | | Ninja: no additional variable needed to enable ninjaPeter Kuemmel2012-04-081-7/+5
| | | | | | | | | | |