summaryrefslogtreecommitdiffstats
path: root/Tests/Dependency
Commit message (Collapse)AuthorAgeFilesLines
* Fix link line order when shared libraries are de-duplicatedDaniele E. Domenichelli2014-11-105-0/+37
| | | | | | | | | | | | | | | | | | | | Since commit v3.1.0-rc1~227^2~1 (De-duplicate shared library targets in generated link lines, 2014-07-30) we de-duplicate shared library targets on the link line. However, some toolchains will fail linking if an executable is linking to a shared library that is not used directly and a static library that depends on the shared one. The linker may not keep the reference to the shared library the first time and then the symbols needed by the static library may not be found. Fix this by reversing the direction of the for loop that removes the duplicate shared libraries, in order to ensure that the last occurrence of the library is left instead of the first one. Extend Tests/Dependency with a case covering this behavior. Create an executable that links to a shared library and a static library but only needs the shared library as a dependency of the static library. Co-Author: Brad King <brad.king@kitware.com>
* Convert CMake-language commands to lower caseKitware Robot2012-08-1316-58/+58
| | | | | | | | | | | | | | | | | Ancient CMake versions required upper-case commands. Later command names became case-insensitive. Now the preferred style is lower-case. Run the following shell code: cmake --help-command-list | grep -v "cmake version" | while read c; do echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-1/+1
| | | | | | | | | | | | | | | | | 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/ \+$//'
* Honor strong intra-component target dependenciesBrad King2010-08-252-0/+4
| | | | | | | | Strong dependencies (created by add_dependencies) must be honored when linearizing a strongly-connected component of the target dependency graph. The initial graph edges have strong/weak labels and can contain cycles that do not consist exclusively of strong edges. The final graph never contains cycles so all edges can be strong.
* Test link multiplicityBrad King2009-09-015-4/+11
| | | | | This tests the LINK_INTERFACE_MULTIPLICITY property for a cycle of three static libraries that must be scanned three times to link properly.
* ENH: Remove CMAKE_ANSI_CFLAGS from testsBrad King2009-07-082-6/+0
| | | | | As of CMake 2.6 this variable is not defined, and the ANSI flags for the HP compiler are simply hard-coded in the default C flags.
* ENH: Test fake circular dependency caseBrad King2008-08-074-0/+27
| | | | | | A recent change fixed a case in which CMake incorrectly diagnosed a circular dependency involving a non-linkable executable target. This adds a test for that case.
* ENH: Add test of preservation of static libraries on original link lines.Brad King2008-04-236-0/+21
|
* ENH: preclean some warningsKen Martin2008-03-251-0/+1
|
* BUG: Need ANSI C.Brad King2008-02-081-0/+2
|
* ENH: Make Dependency test Case2 require two traversals of a static library loop.Brad King2008-02-076-6/+11
|
* ENH: Combine all dependency* tests into one Dependency test. Add more ↵Brad King2008-02-0617-0/+108
| | | | difficult test cases.
* BUG: Fix utility dependencies for static libraries in VS generators. This ↵Brad King2007-04-044-1/+29
| | | | addresses bug#4789.
* ENH: shift to using ADD_SUBDIRECTORYKen Martin2005-06-081-3/+15
|
* BUG: add a test for a single char dir, and fix bug introduced in 1.53, but ↵Bill Hoffman2004-11-013-4/+5
| | | | we still can not handle a space as the start of a directory name
* BUG: Correct some of the dependency analysis code.Amitha Perera2002-05-1011-20/+93
| | | | | | | | | - Make sure the original link line is untouched - Avoid duplicating the link line when supporting version < 1.4 - Make sure the cyclic dependencies and such are output correctly in complicated cases. - Avoid outputing dependencies that are already satisfied on the original link line when possible.
* - bug fix where paths weren't being output when LIB_OUT_PATH *isn't* usedAmitha Perera2002-05-031-18/+16
| | | | | - test case for above mentioned bug - more comments. Comments are good.
* ENH: change LINK_LIBRARY to add to targetsBill Hoffman2002-05-022-3/+4
|
* ENH: Make the LinkLibraries command contribute dependencies towards ↵Amitha Perera2002-05-011-1/+1
| | | | AddLibraries.
* ENH: Make the LinkLibraries command contribute dependencies towards ↵Amitha Perera2002-05-016-11/+50
| | | | AddLibraries.
* ENH: Add library dependency analysis.Amitha Perera2002-05-0119-0/+142