Commit Graph

643 Commits

Author SHA1 Message Date
Brad King d2f62e6ac3 ENH: Made cmTarget::GetSourceLists return a reference to const so that all additions of sources must go through access methods in cmTarget. 2007-05-28 09:59:08 -04:00
Brad King ba7780a3c4 ENH: Fixed INSTALL_FILES and INSTALL_PROGRAMS commands to not create targets. No targets of type cmTarget::INSTALL_FILES or cmTarget::INSTALL_PROGRAMS are created, so we do not need to check for them everywhere anymore. 2007-05-23 15:40:12 -04:00
Alexander Neundorf 4878c00905 ENH: add the IMPORT keyword to ADD_EXECUTABLE(), which generates an
"imported" executable target. This can then be used e.g. with
ADD_CUSTOM_COMMAND() to generate stuff. It adds a second container for
"imported" targets, and FindTarget() now takes an additional argument bool
useImportedTargets to specify whether you also want to search in the
imported targets or only in the "normal" targets.

Alex
2007-05-22 10:24:59 -04:00
Brad King 9a5b4eba97 BUG: All variable accesses should produce watch callbacks, including IF(DEFINED <var>) ones. Instead we define a new access type for IF(DEFINED) so that the error does not show up for backward compatibility variables. 2007-05-17 17:40:59 -04:00
Brad King b8928b0c8e BUG: Do not complain about missing watched variables when they are accessd with IF(DEFINED VAR). 2007-05-17 15:12:13 -04:00
Brad King bdc7792e40 COMP: GCC 2.95 does not have std::string::clear() method. 2007-05-17 14:47:18 -04:00
Alexander Neundorf 61d3444f93 ENH: merge CMake-CrossCompileBasic to HEAD
-add a RESULT_VARIABLE to INCLUDE()
-add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain
-have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system)
-use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to
run the executables if they have a different suffix because they are
probably crosscompiled, but nevertheless it should be able to find them
-make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE
-support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.)
-move ranlib on OSX from the file command to a command in executed in cmake_install.cmake
-add support for stripping during install in cmake_install.cmake
-split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools
-remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms
-create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these
-add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a
list of directories which will be prepended to all search directories, right
now as a cmake variable, turning it into a global cmake property may need
some more work
-remove cmTestTestHandler::TryExecutable(), it's unused
-split cmFileCommand::HandleInstall() into slightly smaller functions

Alex
2007-05-17 13:20:44 -04:00
Alexander Neundorf 7f11536704 ENH: now target names can be used in add_custom_command() and
add_custom_target() as COMMAND, and cmake will recognize them and replace
them with the actual output path of these executables. Also the dependency
will be added automatically. Test included.
ENH: moved TraceVSDependencies() to the end of GlobalGenerator::Configure(),
so it is done now in one central place

Alex
2007-05-09 08:25:45 -04:00
Alexander Neundorf 16b1f05fc2 COMP: fix warning on VS8: conversion unsigned int -> size_t
Alex
2007-05-04 09:50:39 -04:00
Alexander Neundorf ef0b9ff2cc BUG: fix cmake listfile stack: if a file could not be opened, remove it from
the stack (usually CMakeCInformation.cmake and CMakeCXXInformation.cmake
which both put Linux-gcc.cmake on the stack without removing it again:
INCLUDE(... OPTIONAL) )
STYLE: better readable output formatting of the listfile stack, now in the
same order as in gdb or with include files

Alex
2007-05-01 11:46:47 -04:00
Andy Cedilnik f9f1ccadb3 ENH: Add variable watch command 2007-04-11 15:13:05 -04:00
Brad King cc13a060c6 STYLE: Fix line-too-long. 2007-04-05 09:19:29 -04:00
Andy Cedilnik 6fb9e2781a ENH: Add variable for the current list file 2007-04-04 12:05:10 -04:00
Brad King 5a32aa5919 ENH: Added target property ENABLE_EXPORTS for executable targets. It enables the executables for linking by loadable modules that import symbols from the executable. This finishes the executable import library support mentioned in bug #4210. 2007-03-22 09:45:25 -04:00
Ken Martin f52d37c26f BUG: change in how set cache overrides local definitions. Should mainly be a NOP change for most cases 2007-03-15 13:48:15 -04:00
Ken Martin c53b26baf2 ENH: some more cleanup 2007-03-13 15:18:27 -04:00
Bill Hoffman 5891ba16ce ENH: add project to target map, not used yet, but created 2007-03-13 14:23:08 -04:00
Ken Martin b99129d2d8 ENH: some code cleanup 2007-03-12 10:26:59 -04:00
Ken Martin bfb3598c4b BUG: improve bad argument handling for INCLUDE_DIRECTORIES and ADD_DEFINITIONS bug 4364 2007-03-07 11:03:57 -05:00
Ken Martin e5e2e6a3b3 BUG: cleanup paths in GetSourceFile to handle bug 2724 2007-02-28 14:45:58 -05:00
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
Brad King 53510fa603 BUG: Custom commands should have variables expanded before comparing with previously added custom commands. 2003-07-14 10:33:09 -04:00
Brad King 1a4ec91593 BUG#65: Fixed inheritance of CMAKE_CURRENT_SOURCE_DIR and CMAKE_CURRENT_BINARY_DIR. 2003-07-08 13:27:34 -04:00
Ken Martin e315bff47b performance improvements 2003-06-24 15:23:34 -04:00
Brad King 38482b46d1 ENH: Merged use of the kwsys RegularExpression class instead of cmRegularExpression. 2003-06-23 14:10:12 -04:00
Brad King dc3fd5c267 ENH: Merged use of kwsys library. 2003-06-23 08:58:58 -04:00
Ken Martin aaf2795050 fix to expand variables in custom command outputs and main dependencies 2003-06-20 20:33:43 -04:00
Ken Martin 454c7ad2b6 bug in not expanding variables for custom commands in targets 2003-06-20 13:56:51 -04:00
Ken Martin e9e312b441 minor perf improvement 2003-06-20 11:23:47 -04:00
Ken Martin 70c65ea016 bug fix for finding source files 2003-06-19 14:27:39 -04:00
Bill Hoffman 5394a75340 BUG: fix not being able to find generated files in the binary tree 2003-06-18 09:13:39 -04:00
Brad King a5d930a686 BUG: Fixed translation of relative path names to full path names. 2003-06-13 16:59:42 -04:00
Ken Martin 61a3e4fb80 more custom command 2003-06-05 16:45:06 -04:00
Ken Martin f698e306a7 more changes to support full paths 2003-06-05 16:12:25 -04:00
Ken Martin 5c217cf83f perf improvement 2003-06-05 15:28:51 -04:00
Ken Martin adbb5c5e79 more changes to handle full paths correctly 2003-06-05 15:18:16 -04:00
Ken Martin 703242071f more crazt changes source files now must match with full path 2003-06-05 14:40:25 -04:00
Ken Martin b53b467414 hopeful fix for backwards compat 2003-06-04 19:04:35 -04:00
Ken Martin 72be61fb57 tricky fix for backwards compat 2003-06-04 16:06:33 -04:00
Bill Hoffman 11a698558e better error reporting 2003-06-04 14:01:46 -04:00
Bill Hoffman 620b832da3 ENH: allow duplicate commands with the same output to be reduced automatically to one command 2003-06-04 14:00:30 -04:00
Bill Hoffman fc0a916eee ENH: allow duplicate commands with the same output to be reduced automatically to one command 2003-06-04 13:42:42 -04:00
Ken Martin 40123f1fce compielr errors on como 2003-06-04 08:40:09 -04:00
Ken Martin 0b3b21fa63 warning fixes 2003-06-03 14:55:20 -04:00
Ken Martin ba68f771b3 yikes added new custom command support 2003-06-03 10:30:23 -04:00
Bill Hoffman 5945a5a448 ENH: add some includes for borland 6 2003-05-23 16:40:55 -04:00
Bill Hoffman 90169d041c make sure M is after m 2003-03-14 11:58:56 -05:00
Brad King 0b6ae58a06 BUG: c extension must come before C. 2003-03-14 10:54:53 -05:00
Ken Martin 2f927a538b allow the same subdir to be added twice 2003-03-13 12:59:46 -05:00
Andy Cedilnik ce23446000 Fix regular expressions 2003-03-13 12:48:52 -05:00
Andy Cedilnik 84d15bf00e Synchronize extension lists 2003-03-13 12:24:16 -05:00
Andy Cedilnik ce750180ba Add method which returns a list of all variables 2003-03-06 11:19:28 -05:00
Brad King 1fe42129d4 ENH: Centralized setting of CMake version number to top-level CMake listfile. 2003-02-13 21:57:05 -05:00
Brad King cde384411d Several fixes/improvements:
- Fixed CollapseFullPath to work on relative paths with base paths
    not in the current working directory.
  - INCLUDE command now supports relative paths (using above fix).
  - Added ABSOLUTE option to GET_FILENAME_COMPONENT command to
    unwind symlinks and relative paths.
  - Fixed libName_EXPORTS macro definition to be valid C identifier.
  - Added DEFINE_SYMBOL target propterty for customizing the export symbol.
  - Implemented LINK_FLAGS target propterty for libraries in VC6 and VC7.

Several of these fixes were contributed by Gareth Jones.
2003-02-07 14:04:16 -05:00
Bill Hoffman 94b11a6ee4 ENH: fix warning 2003-02-01 16:39:39 -05:00
Bill Hoffman f58d7df66a ENH: add checking for NOTFOUND 2003-01-31 13:50:42 -05:00
Bill Hoffman 2f4ea98a4c add a fatal error, and make sure c and c++ compilers work before using them 2003-01-21 12:50:48 -05:00
Brad King d4d04b46cd BUG: Fix for custom commands with spaces in paths. The arguments were not having spaces escaped. 2003-01-20 19:17:17 -05:00
Andy Cedilnik 5147742a83 Make GetCMakeInstance private and clean cxx file 2003-01-14 09:53:13 -05:00
Ken Martin bd217452cd more option on var watches 2003-01-09 11:35:27 -05:00
Andy Cedilnik 829f8382e0 Add option of watching variables 2003-01-08 12:59:52 -05:00
Brad King 54541bd40a ENH: Improved filename/line number reporting in error message. Macro invocations now chain up the error message. 2002-12-12 11:36:28 -05:00
Brad King 4888c088ae ENH: Moved ExpandListVariables out of individual commands. Argument evaluation rules are now very consistent. Double quotes can always be used to create exactly one argument, regardless of contents inside. 2002-12-11 18:13:33 -05:00
Andy Cedilnik 3893ee72d2 Add comment support, so that you can see in build process what the custom command does 2002-12-10 16:47:37 -05:00
Bill Hoffman b0f4a4cb39 ENH: fix IntDir jump and build problem 2002-12-06 15:35:22 -05:00
Ken Martin cdf3fb6e7b fix purify FMR 2002-12-03 12:59:40 -05:00
Bill Hoffman 952c2f2d64 add project command even if inheriting 2002-12-02 16:15:36 -05:00
Ken Martin 9e526f797a removed cmMakefile depend from cmSystemTools 2002-12-02 15:59:59 -05:00
Bill Hoffman ddbc9e6292 ENH: remove cerr calls 2002-12-02 15:37:27 -05:00
Bill Hoffman 27110975c2 ENH: add PROJECT command if there is not one 2002-12-02 15:30:59 -05:00
Amitha Perera 939035ad91 BUG: the dependency analysis would incorrectly alphabetically re-order the
link lines, which affects external libraries pulled up from deep within
the dependency tree. Fixed by preserving order everywhere.
2002-11-19 18:01:05 -05:00
Ken Martin 20b7e6b222 ENH: space fixes and add a status option to message command 2002-11-13 15:59:40 -05:00
Bill Hoffman f5d95fb078 Complete rework of makefile generators expect trouble 2002-11-08 15:46:08 -05:00
Andy Cedilnik 384fda81a9 Try to remove some warnings 2002-10-24 10:23:11 -04: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
Andy Cedilnik a518fed4e3 Try to improve source group interface 2002-10-04 18:16:13 -04:00
Ken Martin 85896b3460 minor memory fix 2002-09-26 13:52:12 -04:00
Andy Cedilnik 202600f95a Add GetLocal on cmMakefile and on local builds do not perform tests 2002-09-20 15:01:00 -04:00
Andy Cedilnik 157e2b4ac3 Add option of TRY_COMPILE to store the output of compilation so that if the output fails you can display it or store it in the file 2002-09-20 13:15:56 -04:00
Andy Cedilnik c91629109b Remove unnecessary disabling of output 2002-09-19 16:09:57 -04:00
Andy Cedilnik f5c6dfcb1c When doing try compile disable output 2002-09-19 14:35:20 -04:00
Ken Martin 610ff11cf3 now Try compile can include CMAKE_FLAGS 2002-09-18 11:37:40 -04:00
Brad King aa29bbc326 ENH: Added RemoveDefinition method. 2002-09-18 10:39:41 -04:00
Ken Martin 2a68d21e85 cleaned up some of the cmake interface 2002-09-17 13:59:58 -04:00
Ken Martin a4ca3229ff renamed GenerateMakefile to ConfigureFinalPass 2002-09-15 08:52:24 -04:00
Ken Martin ee592e9b98 some fixes for try compile 2002-09-13 13:48:14 -04:00
Ken Martin 6132184cc3 better trycompile and enable langiages 2002-09-13 10:42:50 -04:00
Ken Martin 2aea6d528e added a flag if a cmake is in try compile 2002-09-12 11:08:06 -04:00
Andy Cedilnik bef93dc5c1 Couple of changes: cache variables now have a map of properties. ADVANCED and HELPSTRING are now properties of cache variable, IsAdvanced is gone, so is GetCacheEntry, since cache entries are now all private. To access them, you use the iterator. -ADVANCED cache entries are gone and are replaced by the property of cache variables. The cache file still looks the same, but the -ADVANCED cache entries are created when writing file. MarkAsAdvanced and VariableRequires are fixed. So are curses gui and wizard 2002-09-11 14:05:45 -04:00
Ken Martin 19323b6bac minor fix in try compile code 2002-09-11 12:52:11 -04:00
Ken Martin bea21587cf updated makefile moved commands into cmake and fixed try compile 2002-09-10 16:52:39 -04:00
Brad King eb1ff5f968 ERR: Fixes for comeau compiler. NULL is a pointer of type void*, and cannot be compared directly with other pointer types. We use 0 instead. 2002-09-10 15:37:28 -04:00
Ken Martin 25ff4552b3 new arch 2002-09-06 13:06:23 -04:00
Ken Martin d0be2896d7 changed cache manager and registered generators to no longer be singletons 2002-08-28 14:51:10 -04:00
Ken Martin 9f870d3efb minor bug 2002-08-21 13:16:07 -04:00
Ken Martin 6deb5bbe70 better IF ELSE handling 2002-08-09 12:00:49 -04:00
Ken Martin 3c9206fdd8 makefile now does not ignore NOTFOUND libs and includes 2002-07-25 09:16:17 -04:00
Ken Martin 8a3b2ad92e makefile now ignores NOTFOUND libs and includes 2002-07-25 08:00:03 -04:00
Ken Martin 8d8470c30e full variable replacement and removal or empty arguments 2002-07-19 14:42:34 -04:00
Ken Martin fcc410de44 fixed if statements inside a foreach 2002-07-17 10:48:39 -04:00
Bill Hoffman ed7a32ebe4 BUG: fix for compile with hp 2002-07-11 14:20:39 -04:00
Ken Martin 32ad30e883 better error handling with if statements 2002-07-10 11:38:38 -04:00
Ken Martin 2a7e4539e6 fixed warning 2002-07-02 08:24:36 -04:00
Ken Martin c24d201c39 minor cleanup 2002-06-28 08:57:25 -04:00
Ken Martin ca2fdeb640 performance inprovements 2002-06-27 21:17:25 -04:00
Ken Martin 6eb671097d bug fix 2002-06-27 16:47:38 -04:00
Ken Martin 4b12e5a306 bug fix 2002-06-27 16:42:57 -04:00
Ken Martin 44a7cd55ff removed all source lists from the system and made them vectors. Also appended _CMAKE_PATH to the end of the automatic cache entries for executables and libraries. Odds of all these changes working are slim but cmake builds and passes all its tests. VTK40 starts building 2002-06-27 15:57:09 -04:00
Brad King 28895b0f9f ERR: Fixed compiler warnings. 2002-06-18 17:20:27 -04:00
Bill Hoffman e5668ea656 ENH: only add _LIB_DEPEND information for libraries and modules 2002-06-03 10:25:55 -04:00
Bill Hoffman cdf550de13 ENH: rework library depend stuff 2002-05-03 16:34:05 -04:00
Bill Hoffman a80153b5cb make it backwards compatible with old cmake 2002-05-02 15:56:13 -04:00
Bill Hoffman 2242006ca1 Debug optimized cache fixes 2002-05-02 15:10:19 -04:00
Bill Hoffman 27fe57b716 ENH: change LINK_LIBRARY to add to targets 2002-05-02 13:17:10 -04:00
Amitha Perera 099436db26 ENH: Make the LinkLibraries command contribute dependencies towards AddLibraries. 2002-05-01 16:33:27 -04:00
Amitha Perera 1f8df8585e ENH: Add library dependency analysis. 2002-05-01 14:00:21 -04:00
Berk Geveci d0d25bb989 Reformatted the error printed by cmMakefile. 2002-05-01 10:12:48 -04:00
Bill Hoffman fd22157e55 ENH: improve speed of GetSource function 2002-04-30 12:58:57 -04:00
Bill Hoffman ecbc720829 BUG: make sure link directories are not duplicated 2002-04-29 10:23:29 -04:00
Brad King 5a418b0e00 ENH: Removed out-of-date commands CABLE_WRAP_TCL CABLE_CLASS_SET and CONFIGURE_GCCXML 2002-04-17 14:54:48 -04:00
Bill Hoffman 789267c949 ENH: speed improvements 2002-04-11 17:02:10 -04:00
Bill Hoffman 4ea0f6b949 ENH: add enable language support for PROJECT command, this means that a C only project can be built with cmake, even without a cxx compiler 2002-04-02 15:43:23 -05:00
Bill Hoffman 8b3b49a010 ENH: major change, the cmMakefile now contains a master list of cmSourceFile objects, the source lists reference the list via pointers, also you can now set properties on a file, like compile flags, abstract, etc. 2002-03-29 10:06:30 -05:00
Sebastien Barre 437a8c9816 FIX: foreach function-blockers were using expanded args. Add virtual func to specify if function blocker needs them expanded or not. 2002-03-26 16:45:52 -05:00
Bill Hoffman 93474efd8b ENH: add .in as a header file type, as it can not be compiled 2002-03-14 16:04:02 -05:00
Bill Hoffman 809b32fe59 ENH: remove several compiler warnings 2002-03-13 10:25:11 -05:00
Bill Hoffman 4651dbcfc6 ENH: expand variables in arguments before the commands get them 2002-03-05 18:41:24 -05:00
Sebastien Barre 2649962d65 FIX: although a CMakeLists.txt file could be searched up 'n' level in the directory tree, ReadListFile() always implied a CMakeLists.txt file was up *one* level. 2002-02-25 15:06:18 -05:00
Brad King 8ed3ce29bf ERR: Removed cmCacheManager::DefineCache method. It is no longer needed. 2002-01-22 10:17:37 -05:00
Will Schroeder a6a43d5320 ENH:Updated copyright 2002-01-21 15:30:43 -05:00
Amitha Perera 1859209282 BUG: .txx are not source files. They contain template code which can only
be compiled when included in a regular .cxx file. By themselves, they cause
do not cause code to be generated.
2001-12-28 15:56:15 -05:00
Brad King fd37e46eb3 ENH: Added option to IF command to test if a command exists. Syntax is IF(COMMAND name-of-command). 2001-12-18 09:39:26 -05:00
Brad King dca0fd0859 BUG: Existing projects have cache entries with the same name as the command they adjust (VTK_WRAP_JAVA in VTK, for example). Setting the command name as a variable is too dangerous. 2001-12-18 09:16:48 -05:00
Brad King 1b6ca3eba0 ENH: Each cmake command now adds a cmake variable of its own name, set
to ON.  This allows constructs in CMakeLists.txt files like:
IF(FOO_COMMAND)
  FOO_COMMAND()
ENDIF(FOO_COMMAND)
This provides the option to add CMake commands for extra functionality
without breaking compatability with earlier versions of CMake.
2001-12-17 16:19:27 -05:00
Brad King ee31c3e0a4 ENH: SUBDIR_DEPENDS command now does nothing. The parallel build functionality is now automatic. Dependencies are setup to force the same build order as a single threaded build, but multiple files in the same directory can be built simultaneously. Also fixed bug with inheriting CMakeLists.txt files when a directory level is skipped. 2001-12-10 11:03:44 -05:00
Berk Geveci 1944e1887d ENH: expand variables in a command before escaping spaces in the command 2001-11-27 17:32:33 -05:00
Bill Hoffman 41017cbc88 ENH: clean up warnings 2001-11-13 12:38:53 -05:00
Sebastien Barre ef74458b34 Add optional BEFORE param to INCLUDE_DIRECTORIES so that include dirs can be specified before the actual include dirs 2001-11-02 22:32:39 -05:00
Bill Hoffman 091e95f26d ENH: add an option to configure file command that allows for only expansion of at variables and not dollar variables 2001-10-30 14:05:07 -05:00
Bill Hoffman 8591786867 ENH: add better error reports in parsing cmake files, like what file has the error 2001-10-02 17:28:55 -04:00
Bill Hoffman baa28efd10 ENH: change InitialPass to take a const reference to the argument string, to avoid changes to the file cache 2001-09-20 15:08:30 -04:00
Ken Martin b9d56e8497 BUG: make a copy of the arguments before passing them to Execute 2001-09-20 13:44:27 -04:00
Ken Martin 0fe42a9857 various windows fixes 2001-09-10 15:11:15 -04:00
Bill Hoffman cc5c1fa6f7 ENH: separate command from its arguments in the custom command. This allows the generator on windows to change the slashes for just the command 2001-09-04 16:07:54 -04:00
John Biddiscombe 0645a50061 ENH: ExpandVariables functions return a char * for convenience 2001-09-01 16:12:52 -04:00
Bill Hoffman 3091e9b8f6 BUG: fix incorrect deletion of function blockers 2001-08-30 17:32:48 -04:00
Bill Hoffman 94337f8015 clean up a bit 2001-08-29 09:57:49 -04:00
Bill Hoffman 5edd7673e1 ENH: add caching for the input CMakeList.txt files, 2X speed up 2001-08-28 18:28:31 -04:00
Yves Starreveld 247c1640da Changes to allow MODULE type target for a shared library 2001-08-28 18:02:59 -04:00
Bill Hoffman f709e5588e ENH: change expand variables to use GetDefinition 2001-08-27 14:44:15 -04:00
Bill Hoffman 538ff79e2f ENH: improve coverage 2001-08-23 18:02:30 -04:00