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
Jim Miller
dce5c3efcc
FIX: forgot to close the files
2001-06-06 07:47:56 -04:00
Jim Miller
84dc25e9f5
ENH: Added AddTest, and GenerateTestfile routines
2001-06-05 20:34:01 -04:00
Bill Hoffman
a3cfcd9894
BUG: clean up memory leaks.
2001-06-04 10:18:03 -04:00