Commit Graph

473 Commits

Author SHA1 Message Date
Andy Cedilnik 8ad3430931 ENH: Make EXCLUDE_FROM_ALL a target and directory properties. Also, make IsInAll use EXCLUDE_FROM_ALL. Also, enable the test that tests this 2007-02-23 09:46:27 -05:00
Bill Hoffman 0e95a190bc ENH: add atonly support to cmCommandArgumentParserHelper.cxx and remove old non-yacc parser code from cmMakefile.cxx 2007-02-09 13:44:37 -05:00
Ken Martin 5d11564c35 ENH: allow source file properties to chain to Directories and up 2006-12-13 12:19:59 -05:00
Ken Martin 27379d7b08 ENH: make properties a bit more formal with documentation and chaining 2006-12-07 09:45:32 -05:00
Bill Hoffman 3a32cec969 ENH: merge in changes for beos support 2006-12-04 17:26:41 -05:00
Ken Martin 2915f24274 COMP: fix compile issue on Sun hopefully 2006-11-29 17:10:29 -05:00
Bill Hoffman ccb77b65c6 ENH: unify version stuff, get rid of it out of cmake and cmMakefile and only use cmVersion 2006-11-29 15:59:16 -05:00
Ken Martin d6219588c0 COMP: fix compile issue on Sun 2006-11-29 15:45:49 -05:00
Ken Martin daa6d2bc04 ENH: updated handling of debug and optimized target link libraries 2006-11-29 11:00:17 -05:00
Bill Hoffman e9a80cd8a9 ENH: add rc to version stuff 2006-11-28 16:09:21 -05:00
Bill Hoffman 2852600648 ENH: fix for when a library is tagged both debug and optimized 2006-11-20 13:57:12 -05:00
Bill Hoffman f405014a8d BUG: undo bug fix 2722, still replace @foo@ in cmake files 2006-11-17 15:35:09 -05:00
Ken Martin 786fdbc196 ENH: fix a bug with useing debuf optimized libs from other builds 2006-11-16 10:57:00 -05:00
Brad King c11cf31c9b ENH: Adding SYSTEM option to INCLUDE_DIRECTORIES command. This addresses bug #3462. 2006-10-05 08:55:59 -04:00
Brad King 5a6b0792cd ENH: Added COMMENT option to ADD_CUSTOM_TARGET. This addresses bug#3461. 2006-10-04 18:10:30 -04:00
Brad King 523075ded5 BUG: Do not replace @VAR@ syntax in list files. This addresses bug #2722. 2006-10-04 14:37:42 -04:00
Brad King 1d9f287af7 ENH: Added NOT_IN_ALL option for ADD_LIBRARY and ADD_EXECUTABLE to avoid building the targets by default. 2006-10-02 11:14:00 -04:00
Brad King e4ec89d036 ENH: Added SYMBOLIC source file property to mark custom command outputs that are never actually created on disk. This is used by the Watcom WMake generator to generate the .SYMBOLIC mark on the files in the make system. 2006-10-02 10:20:53 -04:00
Brad King 9a1d4e92eb BUG: Fix/cleanup custom commands and custom targets. Make empty comment strings work. Fix ZERO_CHECK target always out of date for debugging. Fix Makefile driving of custom commands in a custom target. Fix dependencies on custom targets not in ALL in VS generators. 2006-09-28 16:40:35 -04:00
Brad King 7d2de52c1a ENH: Cleaned up signature of cmMakefile::AddUtilityCommand. It is not valid to have an output from a utility rule and no calls to the method asked for an output anyway. The argument has been removed. 2006-09-28 13:55:26 -04:00
Brad King d01b6f1281 ENH: Added VERBATIM option to ADD_CUSTOM_COMMAND and ADD_CUSTOM_TARGET commands. This option enables full escaping of custom command arguments on all platforms. See bug#3786. 2006-09-28 11:30:49 -04:00
Brad King ff9c167e64 BUG: Reverting previous change until it is further tested. 2006-08-26 14:43:08 -04:00
Brad King 7a31bc8521 BUG: ConfigureFile must read/write in binary mode to avoid windows newline trouble. The problem occurred when configuring a file in cygwin from a path starting with a windows drive letter instead of a posix path. 2006-08-26 14:37:31 -04:00
Brad King e46829b3f1 ENH: Added platform identifier for QNXNTO. This partially addresses bug#3556. 2006-08-01 14:33:10 -04:00
Brad King 8dda3a2f6e ENH: Adding .hh file as a C++ header file extension. Remove duplicate code from implementation of unique object name computation for VS generators. This addresses bug#3565. 2006-08-01 10:48:40 -04:00
Andy Cedilnik a9c0929d39 COMP: Handle both ansi and non-ansi C 2006-07-26 11:46:22 -04:00
Andy Cedilnik fbdac25f81 ENH: Add a copy constructor to copy the values 2006-07-09 13:19:36 -04:00
Ken Martin f16b03ec07 ENH: fix subdir issue 2006-06-26 11:27:21 -04:00
Andy Cedilnik 99f4edb4e4 ENH: DIsplay the list file stack when displaying errors 2006-06-22 15:31:19 -04:00
Brad King c4dcfd2ed0 ENH: Provide access to CMAKE_PATCH_VERSION in CMake code. 2006-06-15 16:42:42 -04:00
Brad King 640c90f068 ENH: Unknown command invocations should be fatal errors. 2006-06-15 10:24:46 -04:00
Ken Martin 8e9a6beccc ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
Bill Hoffman 85c5a7dbc0 ENH: fix for replacement of @var @ only legal variable names should be replaced 2006-06-06 09:39:21 -04:00
Brad King 9a74185695 BUG: Fix REMOVE_DEFINITIONS command to not remove substrings. 2006-05-23 12:51:26 -04:00
Bill Hoffman 677fcd1174 ENH: fix line length 2006-05-21 14:06:58 -04:00
Bill Hoffman 0f2f074978 ENH: fix for vtk 4.4 and other projects that may try to link to a module 2006-05-19 13:02:12 -04:00
Ken Martin 47c7108111 STYLE: fix line length 2006-05-12 12:29:09 -04:00
Bill Hoffman a468872ccd ENH: add a check to make sure targets only link to libraries and not utility targets to avoid seg faults, bug 3194 2006-05-04 17:54:31 -04:00
Bill Hoffman fa415043d8 ENH: fix re-run of cmake based on configured files that are done with copy if different and never change 2006-04-11 22:39:12 -04:00
Ken Martin 535acdc7a0 ENH: some performance optimizations 2006-04-11 12:51:20 -04:00
Brad King d5719f22c1 ENH: Added support for multiple outputs generated by a single custom command. For Visual Studio generators the native tool provides support. For Xcode and Makefile generators a simple trick is used. The first output is considered primary and has the build rule attached. Other outputs simply depend on the first output with no build rule. During cmake_check_build_system CMake detects when a secondary output is missing and removes the primary output to make sure all outputs are regenerated. This approach always builds the custom command at the right time and only once even during parallel builds. 2006-04-11 11:06:19 -04:00
Bill Hoffman 8c06f8e294 ENH: add support for re-running cmake if the cmakefiles change 2006-04-10 13:53:00 -04:00
Andy Cedilnik a2d8447fb9 BUG: Fix logic. If the variable is not set, then it is always ok to write the file 2006-03-22 14:45:12 -05:00
Andy Cedilnik ee1975570e ENH: Allow blocking of writing into the source tree 2006-03-22 14:40:36 -05:00
Ken Martin 10efe3b079 ENH: added some new functionality 2006-03-22 14:06:52 -05:00
Andy Cedilnik 3806c1050d ENH: Remove things from bootstrap 2006-03-22 09:58:11 -05:00
Ken Martin 3d96e52261 STYLE: some m_ to this-> cleanup 2006-03-15 11:02:08 -05:00
Brad King 6018c27993 BUG: Clarified confusing error message. 2006-03-14 09:37:50 -05:00
Bill Hoffman 0db4cb0d96 ENH: removed unused methods after find changes 2006-03-02 15:03:36 -05:00
Andy Cedilnik c4156b4531 COMP: Even more global target fixes 2006-02-24 17:35:35 -05:00
Andy Cedilnik ea5564624c ENH: Add a notion of a global target 2006-02-23 10:03:24 -05:00
Brad King 96f0266228 ENH: Created new install script generation framework. The INSTALL command creates the generators which are later used by cmLocalGenerator to create the cmake_install.cmake files. A new target installation interface is provided by the INSTALL command which fixes several problems with the INSTALL_TARGETS command. See bug#2691. Bugs 1481 and 1695 are addressed by these changes. 2006-02-19 15:25:27 -05:00
Bill Hoffman c59937a4a8 ENH: put the system path ahead of the command path 2006-02-17 12:49:09 -05:00
Brad King f8a8e88a08 BUG: Need to include empty arguments when parsing prefix/suffix lists for FindLibrary. 2006-02-09 19:03:50 -05:00
Brad King 33587ce376 ENH: Added platform settings CMAKE_FIND_LIBRARY_PREFIXES and CMAKE_FIND_LIBRARY_SUFFIXES to allow customized searching for libraries. 2006-02-09 15:05:13 -05:00
Bill Hoffman 347c5f4b46 ENH: add working directory support 2006-02-08 10:58:36 -05:00
Brad King 9163af8745 BUG: Fixed finding of MinGW libraries with a windows build of CMake. 2006-02-07 17:09:41 -05:00
Andy Cedilnik 4259971961 ENH: Since list file cache does not make much sense any more (because of proper list file parsing), and it actually adds unnecessary complications and make ctest scripting not work, take it out 2006-02-07 08:49:42 -05:00
Brad King 938890757a ENH: Improved support for user-configured search paths. Paths given in the CMAKE_LIBRARY_PATH cmake variable are searched first, then those in the CMAKE_LIBRARY_PATH environment variable, then those listed in the call to the FIND_LIBRARY command and finally those listed in the PATH environment variable. The support is similar for finding include files with FIND_PATH, but the variable is CMAKE_INCLUDE_PATH. 2006-01-27 18:20:55 -05:00
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 7b1440ab9f ENH: fix bundles for Mac and Xcode 2006-01-05 09:13:06 -05:00
Bill Hoffman 2c73d2e0f3 ENH: add new cmakedefine01 feature from bug report 2603 2006-01-03 16:40:51 -05:00
Bill Hoffman 9e5c219b87 ENH: change framework order 2006-01-02 11:07:57 -05:00
Bill Hoffman 452925649a ENH: add better support for framework linking 2005-12-26 13:14:19 -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 1578bebdad ENH: Add variable for debugging. This variable CMAKE_PARENT_LIST_FILE holds the parent CMake list file of the current cmake list file. 2005-11-30 13:46:48 -05:00
Brad King 102dd34bdc BUG: Do not expand escape sequences when re-expanding variables in include directories, link directories, and link libraries. 2005-11-22 17:03:07 -05:00
Ken Martin 345fb993aa ENH: some fixes for better backwards compatibility 2005-10-10 11:49:17 -04:00
Andy Cedilnik bebc745824 ENH: Add set and get test propety command 2005-07-31 11:51:42 -04:00
Brad King 6873773487 BUG: InitializeFromParent should copy include file regular expressions. 2005-07-27 17:23:39 -04:00
Bill Hoffman a9692f0a18 BUG: fix for bug 1850 wrapping can leave out files if they are a substring of another file 2005-07-14 15:12:02 -04:00
Bill Hoffman aa47caab2d FIX: apply patch from bug# 1965 2005-07-13 11:21:30 -04:00
Ken Martin 13e99490fb BUG: library return values were not UNIX slashes on Win98 2005-07-07 15:06:57 -04:00
Ken Martin c5bfdf6917 ENH: cleaned up some old methods and vars 2005-07-07 11:44:36 -04:00
Ken Martin 121fa374a9 BUG: dont pass unverified char * to streams 2005-06-27 15:59:16 -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 e6f9ea3d13 BUG: goof in new feature fixed 2005-06-20 16:24:37 -04:00
Ken Martin 26c53fe14c ENH: modified GET_TARGET_PROPERTIES to work with all targets 2005-06-20 14:00:48 -04:00
Andy Cedilnik 1bbccc5bef ENH: Improve handling of escaped characters 2005-06-17 15:50:08 -04:00
Andy Cedilnik f7ddfbe1fd ENH: Add extra argument 2005-06-16 16:33:24 -04:00
Andy Cedilnik 29f7e505a5 ENH: Use the new parser that supports nested variables 2005-06-13 11:00:29 -04:00
Ken Martin 8f8b72164a ENH: remove old 1.2 compatability from cmake 2.2 2005-06-10 11:27:41 -04:00
Ken Martin 80f796039c ENH: remove old 1.2 compatability from cmake 2.2 2005-06-10 10:45:43 -04:00
Andy Cedilnik a9b729128f BUG: If there is a fatal error, stop processing list file 2005-05-05 10:40:37 -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
Andy Cedilnik 826405a1b6 ENH: Speedup by storing source name without last extension 2005-04-13 16:35:26 -04:00
Bill Hoffman 1004073942 ENH: performance improvements 2005-04-12 13:27:07 -04:00
Brad King 738bbc767b BUG: Do not repeat paths when trying the lib/ to lib64/ replacement. 2005-04-07 14:41:34 -04:00
Brad King 0d494a031c ENH: Adding automatic generation of several 64-bit search path forms. 2005-04-07 14:30:48 -04:00
Bill Hoffman 5e0a796acc ENH: better fix for 64 bit, add 64 to the name of all directories in the search path 2005-04-06 11:56:04 -04:00
Bill Hoffman 3ca1081419 BUG: try to address Bug 1673 . 2005-04-05 17:06:00 -04:00
Andy Cedilnik 86cebea79a ENH: More ctest changes and move SetupTest to superclass 2005-04-01 15:48:46 -05:00
Ken Martin 62969492b0 ENH: removed GetParentProjects 2005-03-29 15:34:27 -05:00
Brad King aa69a14495 BUG: Initializing from parent should copy link directories as well. 2005-03-22 10:23:04 -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
Ken Martin 3ff6722934 ENH: cleanup by removing all the olf local generate junk that i not longer needed 2005-03-10 13:39:38 -05:00
Brad King c1ca511331 COMP: HP compiler does not like initializing a const std::string & with a const char* (which requires the reference to be bound to a temporary with the scope of the reference). 2005-02-24 13:45:37 -05:00
Brad King df301a2542 BUG: Fixed GetCacheMinorVersion to not always return 0. 2005-02-24 10:31:17 -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
Brad King ffb2c0c0e5 BUG: cmSourceFile instances should delete their own custom commands when a new one is set. 2005-02-18 16:19:09 -05:00
Bill Hoffman cb73410ccb ENH: more tests are passing 2005-02-16 16:35:32 -05:00
Ken Martin b1c5f1a7ba ENH: fix for relative paths 2004-12-03 09:05:07 -05:00
Bill Hoffman e75992a871 BUG: fix for 1369 before include directories need to be always added 2004-12-02 13:14:14 -05:00
Bill Hoffman b69606da4c ENH: look in the windows LIB env variable for libraries 2004-10-27 16:00:54 -04:00
Andy Cedilnik 56234aed4b PERF: Remove several classes from the bootstrap and so making bootstrap smaller and faster 2004-10-27 10:47:14 -04:00
Bill Hoffman 5bf55d1590 ENH: shorten the symbols a bit and remove maps of std::string for map of cmStdString 2004-09-29 16:07:07 -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 b5bdf2cb0a ENH: add better error reporting for file open failures 2004-09-07 16:55:25 -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
Bill Hoffman 731369ef9c ENH: try to initialize all languages at the same time 2004-08-27 08:41:07 -04:00
Bill Hoffman 63e6237600 BUG: fix bug where custom command generated .h files do not get the header_file_only flag set 2004-08-09 13:03:41 -04:00
Bill Hoffman 9655299f08 ENH: initial fortran support 2004-08-06 14:51:41 -04:00
Brad King 3c5bccf8a1 BUG: Fix crash when adding a custom command to a source file that cannot be created. 2004-08-04 17:24:21 -04:00
Brad King 9b1771aef4 BUG: CMAKE_TRY_COMPILE_CONFIGURATION should be obtained from the cmMakefile instance for the listfile containing the TRY_COMPILE call, not the top level listfile. 2004-08-04 16:33:10 -04:00
Brad King f99d948916 ERR: Removed duplicate default arguments. 2004-08-04 14:34:03 -04:00
Brad King b6da1d1271 ENH: Added support for special variables CMAKE_CURRENT_LIST_FILE and CMAKE_CURRENT_LIST_LINE that evaluate to the file name and line number in which they appear. This implements the feature request from bug 1012. 2004-08-04 10:45:11 -04:00
Bill Hoffman c8101e8e47 BUG: fix for bug 998, fix spelling errors 2004-07-26 16:59:55 -04:00
Andy Cedilnik 42ea896d22 ENH: When running cmake with PreLoad make sure CMAKE_CURRENT_SOURCE/BINARY_DIR works 2004-07-20 11:07:37 -04:00
Bill Hoffman 5b63b1843e BUG: fix spelling errors BUG 952 2004-07-09 14:18:44 -04:00
Bill Hoffman 40fbba22a4 ENH: add CMAKE_FILE_PATH, CMAKE_PROGRAM_PATH, CMAKE_LIBRARY_PATH, and search them first, PATH second, and last the paths listed in the FIND call 2004-06-30 11:31:41 -04:00
Andy Cedilnik d1470b7d7c ENH: Detect if there were problems writing file 2004-05-27 12:53:15 -04:00
Andy Cedilnik 3031467e33 ENH: Implement additional make clean files as a directory property instead of cmake variable 2004-05-20 16:56:34 -04:00
Andy Cedilnik e09e1679ab ENH: Add method to get definition even if it does not exists 2004-04-27 11:30:31 -04:00
Bill Hoffman 8b0b749a11 ENH: add SUBDIR PREORDER and fix clean for non-relative paths 2004-04-23 12:52:48 -04:00
Bill Hoffman d59e06595c BUG: fix for 301 CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH env vars now used in FIND_LIBRARY and FIND_PATH in addtion to and before PATH 2004-04-22 13:24:20 -04:00
Andy Cedilnik 55a71ba572 ENH: Add check for infinite loops. Make sure that files written using WRITE_FILE and FILE WRITE are not used as input files. Fixes Bug #678 - WRITE_FILE and FILE(WRITE...) lead to infinite loops 2004-04-18 14:41:46 -04:00
Andy Cedilnik 504d0bc3b3 ENH: ADD REMOVE_DEFINITION command. Fix feature request: Bug #182 - Add opposite to ADD_DEFINITIONS 2004-04-15 13:58:10 -04:00
Andy Cedilnik 4a1f15c344 ENH: If configure file fails do not create directory 2004-03-28 16:00:57 -05:00
Bill Hoffman ddb815c125 ENH: add new subdirectory exclude from top option 2004-03-09 16:28:44 -05:00
Andy Cedilnik f93b1e6d48 ENH: Try to remove warning 2004-03-09 07:50:45 -05:00
Andy Cedilnik 3f752ea4cd ENH: Move implementation of configure_file to cmMakefile, so that other classes can use it 2004-03-08 19:05:04 -05:00
Brad King 1dd718457f ENH: Moved variable and #cmakedefine replacement from cmConfigureFileCommand.cxx to a ConfigureString method on cmMakefile. This will give other commands access to the configuration code. 2004-03-03 18:18:47 -05:00
Andy Cedilnik 07bd2d8264 ERR: Fix GetModulesFile 2004-02-29 15:13:01 -05:00
Andy Cedilnik b1a7421840 ENH: Styart working on bundles support and abstract WIN32_EXECUTABLE 2004-02-28 18:59:19 -05:00
Bill Hoffman 5ccfaefb48 ENH: generate a sln and dsw file for each sub project in a project 2003-11-26 14:29:53 -05:00
Bill Hoffman eff0a824c4 BUG: hack fix for problem of MS vs 6 and custom target commands 2003-11-03 15:57:56 -05:00
Andy Cedilnik ac2859aaa3 ENH: Start includding the scripting support 2003-10-29 09:45:26 -05:00
Ken Martin 3baca1e34f added beta release support 2003-08-11 14:45:16 -04:00
Ken Martin 072db6ad70 removed redundent includes 2003-08-10 18:30:54 -04:00
Ken Martin 6a2f1926d8 removed duplicate include 2003-08-10 16:00:27 -04:00
Andy Cedilnik a6567329d7 ENH: When fixing cache value with uninitialized type, collapse full paths for PATH and FILEPATH. Closes Bug #82 - Specifying relative path when entering path can break things 2003-08-08 10:07:09 -04:00
Andy Cedilnik 2003b4987a ENH: Handle untyped but initialized values for boolean AddCacheDefinition. Closes Bug #118 - Specifying cache entries with -D should not need the type 2003-08-08 09:26:55 -04:00
Andy Cedilnik d0b3391642 ENH: oops, initialize variable 2003-08-06 19:19:17 -04:00
Andy Cedilnik 96d561aabc ENH: Add option to retrieve list of macros. Close Bug #25 - Get_CMAKE_PROPERTIES 2003-08-06 18:54:13 -04:00
Andy Cedilnik 32bfe66b5d BUG: Fix problem with uninitialized variables 2003-08-02 09:33:23 -04:00
Andy Cedilnik 2f98c791fa ENH: Allow specifying cmake variables on the command line without specifying the type Bug #118 - Specifying cache entries with -D should not need the type 2003-08-01 14:10:26 -04:00
Ken Martin 0e067f9223 bug fix for bug # 117 2003-07-31 14:46:17 -04:00
Brad King 48aedb2ba3 ENH: Fully implemented SOURCE_GROUP command. 2003-07-23 15:32:54 -04:00
Andy Cedilnik 18c6f9e0c5 ENH: Initial framework for deprecated commands 2003-07-21 14:44:00 -04:00