Commit Graph

288 Commits

Author SHA1 Message Date
Brad King 22c62c9e65 BUG: Sweeping changes to cleanup computation of target names. This should
fix many bugs related to target names being computed inconsistently.

- Centralized computation of a target's file name to a method in
  cmTarget.  Now that global knowledge is always available the
  *_CMAKE_PATH cache variables are no longer needed.

- Centralized computation of link library command lines and link
  directory search order.

- Moved computation of link directories needed to link CMake targets
  to be after evaluation of linking dependencies.

This also removed alot of duplicate code in which each version had its
own bugs.

This commit is surrounded by the tags

  CMake-TargetNameCentralization1-pre

and

  CMake-TargetNameCentralization1-post

so make the large set of changes easy to identify.
2006-01-13 18:18:32 -05:00
Bill Hoffman 82bb6fae0d ENH: add framework support to FIND_FILE 2005-12-27 14:56:56 -05:00
Bill Hoffman 452925649a ENH: add better support for framework linking 2005-12-26 13:14:19 -05:00
Bill Hoffman f6588b7919 ENH: fix borland make clean targets before build, add new generators for msys and mingw 2005-12-22 16:42:36 -05:00
Brad King 163e3ff56c ENH: Removed cmMakefile arguments from cmTarget methods because cmTarget has the ivar m_Makefile now. Re-implemented cmLocalUnixMakefileGenerator3::AppendAnyDepend to use the new global knowledge and avoid the need to look at the cache for information about other targets. This should fix problems with custom commands and executables with the OUTPUT_NAME set. Also the <target>_LIBRARY_TYPE cache variable is no longer needed at all and has been removed. 2005-12-14 10:47:33 -05:00
Andy Cedilnik ea7c7bb34d ENH: Allow the installer to overwrite the install prefix 2005-12-10 12:11:20 -05:00
Andy Cedilnik 34e7834451 ENH: Add support for output reguilar expression 2005-11-08 17:59:20 -05:00
Andy Cedilnik fcce3ac0a1 ENH: Add a way for test to intentionally fail 2005-09-06 23:31:41 -04:00
Brad King d392acb4e6 ENH: Added versioned executable support. This partially addresses bug#2143. Also made OUTPUT_NAME work when installing executables. 2005-08-17 16:11:18 -04:00
Bill Hoffman e59e9d0e59 ENH: fix bug 2087 lib prefix stripped off on windows 2005-08-10 12:55:41 -04:00
Andy Cedilnik bebc745824 ENH: Add set and get test propety command 2005-07-31 11:51:42 -04:00
Ken Martin c6b011e35e ENH: put cmake files intoa CMakeFiles subdir to clean up bin tree 2005-07-29 09:19:25 -04:00
Ken Martin f85f919dbc ENH: reduce the number of files produced still needs a bit more cleanup 2005-07-27 09:49:37 -04:00
Bill Hoffman b8b298104b ENH: make sure flags set in CC or CXX environment variables stay with the compiler 2005-07-20 15:44:55 -04:00
Bill Hoffman 44b54d2b94 ENH: fix for bug 992, mac bundle install fix 2005-07-14 16:00:40 -04:00
Bill Hoffman 1b115dc2e3 ENH: add -L as possible library flag 2005-07-13 16:24:16 -04:00
Ken Martin d11707c6e6 BUG: fix for debug optimized link libraries 2005-07-05 09:00:20 -04:00
Ken Martin 369308ca76 ENH: make LOCATION an computed property of the target and get rid of a bunch of const junk 2005-06-22 09:06:46 -04:00
Ken Martin 708828dc37 ENH: removed old convert calls 2005-06-10 08:41:47 -04:00
Andy Cedilnik 6af66e8b20 ENH: Add capability to include files to DartTestfile.txt and add example of that 2005-06-07 09:57:05 -04:00
Ken Martin a3a7f040c6 COMP: shut up warning 2005-05-13 15:50:42 -04:00
Ken Martin 8c65179339 ENH: warning fixes and some first steps in cleaning up the convert code 2005-05-13 09:54:30 -04:00
Andy Cedilnik 26d4dd174f COMP: Remove warning 2005-04-25 09:59:59 -04:00
Andy Cedilnik d395b563ed ENH: Improve internal test handling by creating a test class. Command cmEnableTesting now only sets CMAKE_TESTING_ENABLED and cmAddTest only adds a test to the list. The actual test files are written by local generator. This way we can at some point in the future replace DartTestfile with some XML file 2005-04-24 15:59:51 -04:00
Brad King 1b71f4477b ENH: Added cmTarget::GetBaseName and cmTarget::GetFullName methods and removed cmLocalGenerator::GetFullTargetName and cmLocalUnixMakefileGenerator2::GetBaseTargetName. This functionality is more sensibly implemented in cmTarget. It is also needed for an upcoming feature in which both the shared and static versions of a library will be removed before one is linked. 2005-04-22 15:23:21 -04:00
Bill Hoffman c8cc20a1af BUG: add missing header for borland 2005-04-12 15:11:54 -04:00
Bill Hoffman 1004073942 ENH: performance improvements 2005-04-12 13:27:07 -04:00
Ken Martin ee7fbdf058 BUG: local gen was setting proj dir when it shouldnt 2005-04-12 09:36:18 -04:00
Bill Hoffman e0fab29395 ENH: remove commented code 2005-03-22 07:27:10 -05:00
Ken Martin 345cf04012 ENH: big change that includes immediate subdir support, removing the notion of inherited commands, makefiles no longer read in the parent makefiles but instead inherit thier parent makefiles current settings 2005-03-18 10:41:41 -05:00
Ken Martin 791aa6052b ENH: add support for out of source source 2005-03-14 11:29:15 -05:00
Brad King ea258e9a1a ENH: Converted some ConvertToRelativeOutputPath calls to ConvertToOptionallyRelativeOutputPath in preparation for making ConvertToRelativeOutputPath not check CMAKE_USE_RELATIVE_PATHS. 2005-02-24 16:25:47 -05:00
Brad King cb48e0c161 ENH: Merged implementations of ConvertToRelative*Path methods. The main ConvertToRelativePath method is now in cmGlobalGenerator. It converts paths only if they are at least inside the deepest common directory between the top-level source and build trees. Each cmLocalGenerator instance calls this global method with its own output directory as the "local" argument from which paths are relative. Added separate ConvertToOptionallyRelative path that pays attention to the CMAKE_USE_RELATIVE_PATHS option. 2005-02-24 16:04:54 -05:00
Bill Hoffman 2ebbf64508 ENH: remove unused code 2005-02-24 14:27:16 -05:00
Bill Hoffman ff812580eb ENH: add a new library path ordering algorithm to make sure -L paths will pick the correct libraries if possible 2005-02-24 13:16:41 -05:00
Brad King 7c7b173042 ENH: Added better default install location for windows builds. The previous default /usr/local did not make much sense. Now "%SystemDrive%/Program Files/PROJECT_NAME" is used, which is the windows equivalent to /usr/local. 2005-02-22 15:22:40 -05:00
Brad King 39af9ee1e4 ENH: Updated implementation of custom commands. Multiple command lines are now supported effectively allowing entire scripts to be written. Also removed extra variable expansions and cleaned up passing of commands through to the generators. The command and individual arguments are now kept separate all the way until the generator writes them out. This cleans up alot of escaping issues. 2005-02-22 10:32:44 -05:00
Bill Hoffman 785b0dc012 ENH: all tests are passing for XCode 2005-02-18 13:32:51 -05:00
Bill Hoffman 35ec09480a ENH: move AddFlags stuff up to LocalGenerator from LocalUnix generator 2005-02-02 13:19:57 -05:00
Brad King a5ae290a5b STYLE: Adjusted signature of cmGeneratedFileStream to make copy-if-different more explicity. 2004-11-03 07:51:51 -05:00
Brad King d46d8df0ed ENH: Re-implemented cmGeneratedFileStream to look like a real stream and replace the destination file atomically. This will avoid problems with the process being terminated while generating a file. 2004-11-03 07:23:18 -05:00
Bill Hoffman 674349caed FIX: fix shared flag 2004-10-29 15:32:06 -04:00
Bill Hoffman 36c8f1d157 ENH: put error checking for missing linker languages 2004-10-27 10:53:01 -04:00
Brad King 16e86a3ea9 ENH: Split part of GetIncludeFlags method into separate GetIncludeDirectories method. 2004-10-26 10:15:49 -04:00
Bill Hoffman ab817f2e81 COMP: fix warnings 2004-10-21 15:21:38 -04:00
Bill Hoffman 560b7af06e COMP: fix warning 2004-10-21 14:55:29 -04:00
Bill Hoffman 7cef36c628 ENH: add the ability to generate custom commands for a language that is not supported by an IDE 2004-10-21 14:34:02 -04:00
Bill Hoffman 39f112b71b BUG: make sure all returns for ConvertToRelativeOutputPath get passed by ConvertToOutputPath 2004-10-14 16:50:38 -04:00
Bill Hoffman 9fe79b2297 BUG: now that system tools relative path works, clean up the convert to relative output path code 2004-10-14 15:09:20 -04:00
Bill Hoffman 692ba48c4e ENH: major changes to support addition of languages from cmake modules directory. 2004-09-22 14:42:05 -04:00
Bill Hoffman 46a493ae74 ENH: remove warnings 2004-09-03 13:24:10 -04:00
Bill Hoffman c2ef51e181 ENH: define language extensions in cmake files and not hard coded, also fix trycompile problem 2004-09-03 12:03:41 -04:00
Brad King 419f53ea7b BUG: install_manifest.txt should be overwritten each time the install is run. 2004-07-02 14:08:49 -04:00
Andy Cedilnik f9b43b9212 BUG: Implement installing of shared library versioning and add test for the whole thing 2004-06-28 14:40:17 -04:00
Andy Cedilnik b97ad900c0 ENH: Fix bug in cmake install when exec/librayr output path not defined. Closes Bug #899 - subdir INSTALL_TARGETS INSTALL_PROGRAMS dont work 2004-06-01 11:30:59 -04:00
Bill Hoffman cc2ab62f1c BUG: make sure install works with spaces in the path 2004-05-06 16:06:18 -04:00
Andy Cedilnik 5a5cd54730 ENH: GetSafeDefinition is now in cmMakefile 2004-04-27 12:02:32 -04:00
Andy Cedilnik ac8232e140 ENH: Do preinstall and postinstall script even if the target is not installed 2004-04-21 11:32:27 -04:00
Bill Hoffman d0cea4c7bb ENH: make relative paths optional and default off, and add a test for them 2004-03-31 10:01:52 -05:00
Andy Cedilnik 99feab3528 ENH: When installing project, write manifest 2004-03-28 17:59:46 -05:00
Andy Cedilnik 4fbf360a26 BUG: Support paths with spaces 2004-03-28 10:14:25 -05:00
Andy Cedilnik db68c543ff ENH: Add pre and post install script support 2004-03-27 20:59:44 -05:00
Bill Hoffman ddb815c125 ENH: add new subdirectory exclude from top option 2004-03-09 16:28:44 -05:00
Andy Cedilnik b1a7421840 ENH: Styart working on bundles support and abstract WIN32_EXECUTABLE 2004-02-28 18:59:19 -05:00
Andy Cedilnik 34b8852dbe ENH: Improve coverage support and add more verbosity 2004-02-23 09:56:53 -05:00
Andy Cedilnik 038abb867e ENH: Add support for install postfix 2004-02-03 10:53:41 -05:00
Andy Cedilnik a721b96407 ENH: Cleanup output 2004-02-03 10:25:51 -05:00
Andy Cedilnik c1002cccb0 ERR: Remove cout 2004-01-28 11:22:19 -05:00
Andy Cedilnik d13e30f3ae ENH: Make install on windows seems to work now 2004-01-27 12:37:30 -05:00
Andy Cedilnik 6eed8b55dd BUG: Fix for spaces in path 2004-01-26 16:29:36 -05:00
Andy Cedilnik 5c8c6fa3da ENH: Several windows bugs and fixes 2004-01-26 16:24:35 -05:00
Andy Cedilnik 7608d3f586 ERR: Fix std:: namespace 2004-01-25 19:30:24 -05:00
Andy Cedilnik 797db2bd82 ENH: Start adding new installation framework 2004-01-25 19:25:26 -05:00
Brad King ed1c2573aa BUG: Fix to build rule generation with relative paths. 2004-01-23 09:54:50 -05:00
Brad King 01e4c82bb4 STYLE: Deleted trailing whitespace. 2004-01-23 08:53:51 -05:00
Bill Hoffman d1efed1415 ENH: fix for hp make and relative paths never have targets with a ./ at the start of the name 2004-01-06 16:18:38 -05:00
Bill Hoffman ae69928e69 BUG: borland make treats ./target and target as different also convert to outputpathrelative may get passed a quoted path 2003-12-30 08:41:04 -05:00
Bill Hoffman b753a6794b BUG: use ./ infront of the current directory 2003-12-29 14:55:43 -05:00
Andy Cedilnik b5035770bc BUG: On Windows network paths do not really work as regular paths, so when the binary directory is on the network, we will not support relative paths 2003-12-24 15:02:25 -05:00
Bill Hoffman 09ba0a0a31 BUG: keep more of the case information 2003-12-23 15:01:10 -05:00
Bill Hoffman 79c23436d3 BUG: fix for vtk build 2003-12-23 13:31:11 -05:00
Bill Hoffman d79e3ae698 ENH: move relative path to parent generator class 2003-12-22 15:16:46 -05:00
Brad King 1f6a3c67b1 ENH: Added reference to Copyright.txt. Removed old reference to ITK copyright. Changed program name to CMake instead of Insight in source file header. Also removed tabs. 2002-10-23 18:03:27 -04:00
Ken Martin 38d1ea9b4c always set PROJECT_SOURCE_DIR etc 2002-10-04 08:59:02 -04:00
Ken Martin d2c4432bbe changed handling of FinalPass 2002-09-15 08:54:16 -04:00
Brad King 1bad75e8a2 ERR: Removed stray semi-colon. 2002-09-10 15:37:52 -04:00
Ken Martin 5b0611d709 updates 2002-09-04 15:24:49 -04:00
Ken Martin 3ffc4b2ee1 in progress checkin 2002-08-30 16:00:35 -04:00