Commit Graph

313 Commits

Author SHA1 Message Date
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
Bill Hoffman a4f40c31f1 ENH: add dump documentation test 2001-08-23 17:40:07 -04:00
Yves Starreveld a159c2d306 Added support for .mm source files (ObjC++) 2001-08-21 11:04:38 -04:00
Sebastien Barre afba045028 gcc and MSVC clash on basic_string::compare(), let's try substr() 2001-08-19 12:14:24 -04:00
Sebastien Barre ce4f2718f2 Support for $ENV{VAR} syntax (lookup in the environment vars) 2001-08-18 12:52:19 -04:00
Brad King 3d86ad7237 ENH: Improved INSTALL_FILES and INSTALL_PROGRAMS commands to allow each call to the command in a single directory to specify a different install path. 2001-08-14 17:18:52 -04:00
Bill Hoffman db1303aa7d ENH: big change, only allow commands access to the cache via the cmMakefile class and GetDefinition, also the cmMakefile is the only way for commands to add to the cache. Also, some changes to configure.in that check for for scoping 2001-08-08 11:54:46 -04:00
Bill Hoffman 4b2d48051f ENH: html output for docs 2001-08-07 13:46:04 -04:00
Brad King ee12492c0a BUG: Fixed off-by-one error in ExpandVariablesInString for case of $ or @ as last character of string. 2001-08-02 14:10:19 -04:00
Brad King 8a03ccda07 ENH: Added SUBDIR_DEPENDS command and corresponding support code. This command allows specification that a set of subdirectories be built before a particular directory. 2001-08-01 16:14:16 -04:00
Brad King cfa25e9e1a ENH: Added INSTALL_PROGRAMS command and corresponding support. This involved splitting cmTarget::INSTALL into INSTALL_FILES and INSTALL_PROGRAMS enum values. INSTALL_FILES no longer adds execute permission. The INSTALL_PROGRAMS commnad takes either a list of explicit names, or a regex. It will not expand source lists like the INSTALL_FILES command will. 2001-07-31 11:29:21 -04:00
Brad King ddec29c52d BUG: Changed include and link directory paths in cmMakefile back to std::vector because there is an order dependency. Only cmMakefile::AddIncludeDirectory and cmMakefile::AddLinkDirectory should be called to add directories to the paths. They make sure the paths are unique as they are inserted. 2001-07-30 11:34:03 -04:00
Ian Scott b24861d895 Removed the Uniquification of the include and link directory list in FinalPass,
and achieved the same effect by makein m_LinkDirectores and m_IncludeDirectories
a set rather than vector
2001-07-30 07:18:38 -04:00
Bill Hoffman 8bad4180c7 ENH: Re-implemented ExpandVariablesInString to significantly improve performance. 2001-07-27 16:29:50 -04:00
Ian Scott 4878ed3d29 MAkefile now strips duplicate directores from the libraries and include paths 2001-07-27 13:06:05 -04:00
Bill Hoffman a5eac44d18 ENH: rework GUI with configure/OK/Cancel 2001-07-25 18:30:27 -04:00
Ken Martin 4ab2650802 added for each command 2001-07-25 16:53:13 -04:00
Amitha Perera e169953e92 ENH: Source and header file extensions are in variables in cmMakefile.
AUX_SOURCE_DIRECTORY will only add files that have a "source" extension.
2001-07-16 18:40:42 -04:00
Bill Hoffman 556d27c9eb ENH: add support for mac osx 2001-07-16 10:14:41 -04:00
Berk Geveci 87331468e9 Better error checking. 2001-07-10 16:20:24 -04:00
Brad King e693d47253 ENH: Added support for selection of static/shared build on a per-library basis. 2001-07-02 15:38:02 -04:00
Bill Hoffman 8da64c7c44 ENH: put back stdio.h to get sprintf 2001-06-22 14:53:14 -04:00
Brad King 487dc39f12 ERR: Removed stray standard header include. They should be added to cmStandardIncludes.h 2001-06-22 12:17:53 -04:00
Ken Martin 24ec7f5c3c removed stricmp 2001-06-22 11:32:27 -04:00
Ken Martin 43793f7df4 added escape quotes option in replace strings 2001-06-22 11:14:32 -04:00
John Biddiscombe e1e7b8adca ENH: Added RemoveSource(...) to complement AddSource. New command
SOURCE_FILES_REMOVE uses it and can be used to take files out of the build
2001-06-22 09:47:02 -04:00
Brad King cf82992964 ENH: Extended INCLUDE_REGULAR_EXPRESSION to allow selective complaints about missing dependencies. 2001-06-21 15:02:52 -04:00
Bill Hoffman 4f77d737c9 ENH: move utilities to targets from makefile, and add versioning to cache 2001-06-07 14:52:29 -04:00
Ken Martin 37801ddaae added enable testing deprecated some commands 2001-06-06 13:58:18 -04:00
Bill Hoffman 9922155423 ENH: rename Invoke to InitialPass 2001-06-06 13:19:15 -04:00
Jim Miller 6948617497 Change name of file created from Testfile to CMakeTestfile.txt 2001-06-06 11:02:13 -04:00