Commit Graph

8069 Commits

Author SHA1 Message Date
Brad King 45d0dd1344 BUG: Fix misuse of stl vector that caused definitions to be dropped by cmMakefile::PushScope. 2008-01-30 08:37:38 -05:00
Brad King d2f901bebf COMP: Fix warnings on VS9. 2008-01-30 07:44:24 -05:00
Brad King bd822c734b STYLE: Nightly Date Stamp 2008-01-30 00:01:04 -05:00
Brad King 52b3f85642 ENH: Enable use of link script whenever incremental archive construction rules are available. Enable use of archive construction rules on MSYS. 2008-01-29 21:16:49 -05:00
Brad King 66e0b4212f ENH: Added build rule variables CMAKE_<LANG>_ARCHIVE_CREATE, CMAKE_<LANG>_ARCHIVE_APPEND, and CMAKE_<LANG>_ARCHIVE_FINISH to support creation of static archive libraries out of a large number of objects. See bug #6284. 2008-01-29 20:46:25 -05:00
Brad King 44cf465ff5 BUG: Fix uninitialzed members of cmCacheManager. 2008-01-29 17:30:48 -05:00
Brad King 6066e92ba2 BUG: cmTarget instances should not be copied. Removed pass-by-value arguments from cmLocalVisualStudio7Generator::WriteGroup and cmLocalVisualStudio6Generator::WriteGroup. Updated cmTarget to make this easier to find. 2008-01-29 17:30:34 -05:00
Clinton Stimpson f9114a0510 ENH: Correctly format multi-line error messages. 2008-01-29 15:54:49 -05:00
Brad King 319c4c4d80 ENH: Update cmInstallTargetGenerator to get the shared libraries linked by a target from cmComputeLinkInformation instead of duplicating the computation. 2008-01-29 15:47:18 -05:00
Brad King ffac622a85 ENH: Add cmTarget::GetLinkInformation method to allow several places in the generators to share link information while only computing it once per configuration for a target. Use it to simplify the chrpath feature. 2008-01-29 15:07:33 -05:00
Brad King 3406e1ef2c ENH: Added not to find_package documentation about unspecified choice among multiple versions. 2008-01-29 09:57:39 -05:00
Brad King a099551882 STYLE: Nightly Date Stamp 2008-01-29 00:01:03 -05:00
Brad King 41c2895b75 ENH: Added version support to Config mode of find_package command.
- Added EXACT option to request an exact version.
  - Enforce version using check provided by package.
  - Updated FindPackageTest to test versioning in config mode.
2008-01-28 20:38:48 -05:00
Brad King e75932b61f STYLE: Updated TODO comment for PUBLIC_HEADER_LOCATION export. 2008-01-28 15:22:07 -05:00
Brad King 64b6c0b950 ENH: Document PRIVATE_HEADER, PUBLIC_HEADER, and RESOURCE target properties and corresponding arguments to INSTALL(TARGETS). 2008-01-28 15:12:12 -05:00
Brad King e3b1bdb058 ENH: Support exporting/importing of AppBundle targets.
- Imported bundles have the MACOSX_BUNDLE property set
  - Added cmTarget::IsAppBundleOnApple method to simplify checks
  - Document BUNDLE keyword in INSTALL command
  - Updated IMPORTED_LOCATION property documentation for bundles
  - Updated ExportImport test to test bundles
2008-01-28 14:46:16 -05:00
Brad King 437043bb04 BUG: Fix export/import file generation to not store link dependencies of executables or modules. 2008-01-28 13:37:59 -05:00
Brad King 6388ebceb1 ENH: Restored APPEND option to EXPORT() command in new implementation. 2008-01-28 13:21:42 -05:00
Brad King 28ea034737 ENH: Support exporting/importing of Framework targets.
- Imported frameworks have the FRAMEWORK property set
  - Added cmTarget::IsFrameworkOnApple method to simplify checks
  - Also remove separate IMPORTED_ENABLE_EXPORTS property and just use ENABLE_EXPORTS since, like FRAMEWORK, it just represents the target type.
  - Document FRAMEWORK keyword in INSTALL command.
  - Updated IMPORTED_LOCATION property documentation for Frameworks
2008-01-28 13:05:58 -05:00
Brad King 3d94b3b717 COMP: Add virtual destructor to cmExportFileGenerator to avoid warnings about other virtual functions. 2008-01-28 09:53:21 -05:00
Brad King 5594ad4885 ENH: Updated exporting and importing of targets to support libraries and configurations.
- Created cmExportFileGenerator hierarchy to implement export file generation
  - Installed exports use per-config import files loaded by a central one.
  - Include soname of shared libraries in import information
  - Renamed PREFIX to NAMESPACE in INSTALL(EXPORT) and EXPORT() commands
  - Move addition of CMAKE_INSTALL_PREFIX to destinations to install generators
  - Import files compute the installation prefix relative to their location when loaded
  - Add mapping of importer configurations to importee configurations
  - Rename IMPORT targets to IMPORTED targets to distinguish from windows import libraries
  - Scope IMPORTED targets within directories to isolate them
  - Place all properties created by import files in the IMPORTED namespace
  - Document INSTALL(EXPORT) and EXPORT() commands.
  - Document IMPORTED signature of add_executable and add_library
  - Enable finding of imported targets in cmComputeLinkDepends
2008-01-28 08:38:36 -05:00
Brad King a7cb9d1120 STYLE: Nightly Date Stamp 2008-01-28 00:01:02 -05:00
Brad King 8f97980615 COMP: Use kwsys to get STL set_intersection algorithm. 2008-01-27 15:09:58 -05:00
Brad King 99b97dece8 ENH: Created cmComputeLinkDepends to compute link dependencies.
- This will be useful for imported library dependencies
  - Replaces old cmTarget analyze-lib-depends stuff for linking
  - Formalizes graph construction and dump
  - Explicitly represents dependency inferral sets
  - Use BFS of initial dependencies to preserve order
2008-01-27 13:42:49 -05:00
Brad King c631aa2a87 STYLE: Nightly Date Stamp 2008-01-27 00:01:07 -05:00
Brad King a35145fb27 STYLE: Nightly Date Stamp 2008-01-26 00:01:03 -05:00
Brad King 386a6ebf25 COMP: Need to return a value from fake MD5 method under bootstrap. 2008-01-25 08:11:04 -05:00
Brad King 817d17e822 STYLE: Nightly Date Stamp 2008-01-25 00:01:03 -05:00
Brad King f1c5b50cb7 COMP: Cannot do MD5 from KWSys during CMake bootstrap. 2008-01-24 16:11:06 -05:00
Brad King 1dec54489a ENH: Add cmSystemTools::ComputeStringMD5 method. 2008-01-24 14:41:18 -05:00
Brad King 02b1767e42 BUG: Make cmake -E remove_directory work when directory is not present. 2008-01-24 14:37:48 -05:00
Brad King 3a462fa673 ENH: Apply new implicit link directory find_library policy when loading a cache from an earlier CMake. 2008-01-24 07:37:15 -05:00
Brad King 7213408287 ENH: Added cmMakefile::NeedCacheCompatibility method and support for it in cmCacheManager. This will allow commands to modify their behavior when running with a cache loaded from an earlier CMake version. 2008-01-24 07:37:08 -05:00
Brad King f5d86035f2 COMP: Add include of <limits.h> to get USHRT_MAX constant. 2008-01-24 07:31:59 -05:00
Brad King 8b1117e6c9 STYLE: Nightly Date Stamp 2008-01-24 00:01:03 -05:00
Alexander Neundorf cebb599b53 STYLE: fix typo
Alex
2008-01-23 18:34:19 -05:00
Brad King 11ad0bace4 ENH: Remove sparcv9 architecture subdir added earlier. The new implicit link directory policy takes care of the problem. 2008-01-23 17:53:18 -05:00
Brad King f5a5b1ffd6 ENH: Simplify code by removing unnecessary LINK_DIRECTORIES call. 2008-01-23 16:53:33 -05:00
Brad King 7adb808244 ENH: Teach find_library to avoid returning library paths in system directories that may be converted to architecture-specific directories by the compiler when it invokes the linker. 2008-01-23 16:21:49 -05:00
Brad King 48fddd602d BUG: Fix cmComputeLinkInformation cycle detection. 2008-01-23 15:56:17 -05:00
Brad King f27379e3f7 ENH: Added CMAKE_LINK_OLD_PATHS compatibility mode for linker search paths. 2008-01-23 15:22:38 -05:00
Brad King 65c1d62902 COMP: Fix build on Borland 5.5. 2008-01-23 13:37:28 -05:00
Brad King 09af624dee BUG: Fix generation of Watcom link lines.
- Work-around bug in Watcom command line parsing for spaces in paths.
  - Add 'library' option before libraries specified by file path.
2008-01-23 13:30:55 -05:00
Brad King 865c2bc6d6 BUG: Work-around bug in MSVC 6 command line parsing. 2008-01-23 13:03:03 -05:00
Ken Martin 3d63c85f75 ENH: look for CTestConfiguration.ini first 2008-01-23 12:51:24 -05:00
Ken Martin 0e69d38004 ENH: add return and break support to cmake, also change basic command invocation signature to be able to return extra informaiton via the cmExecutionStatus class 2008-01-23 10:28:26 -05:00
Brad King 72a301f880 BUG: Be less aggressive about finding conflicts in the runtime path when the real soname is not known. 2008-01-23 10:21:08 -05:00
Brad King e417fb7100 ENH: Enable library search path suffix for sparcv9 architecture. This should be generalized to a platform file later. 2008-01-23 09:53:33 -05:00
Brad King 78fcb26695 STYLE: Nightly Date Stamp 2008-01-23 00:01:03 -05:00
Brad King ceb716575e BUG: When a library file name is linked without a path make sure the link type is restored after the -l option. 2008-01-22 10:05:27 -05:00
Brad King 96fd5909d9 ENH: Implement linking with paths to library files instead of -L and -l separation. See bug #3832
- This is purely an implementation improvement.  No interface has changed.
  - Create cmComputeLinkInformation class
  - Move and re-implement logic from:
      cmLocalGenerator::ComputeLinkInformation
      cmOrderLinkDirectories
  - Link libraries to targets with their full path (if it is known)
  - Dirs specified with link_directories command still added with -L
  - Make link type specific to library names without paths
    (name libfoo.a without path becomes -Wl,-Bstatic -lfoo)
  - Make directory ordering specific to a runtime path computation feature
    (look for conflicting SONAMEs instead of library names)
  - Implement proper rpath support on HP-UX and AIX.
2008-01-22 09:13:04 -05:00
Brad King 0df9e6904c COMP: Remove inline keyword from forward declaration for VS9. 2008-01-22 08:52:48 -05:00
Brad King a6af060b35 STYLE: Nightly Date Stamp 2008-01-22 00:01:10 -05:00
Brad King 480d733daf ENH: Updated find_package documentation to describe common usage first. 2008-01-21 22:48:07 -05:00
Brad King 16247cbfc3 ENH: Add support to find_library to transform /lib to /lib32 on some architectures. 2008-01-21 18:30:36 -05:00
Brad King a28b197b11 ENH: Generalize the check for sizeof void* to detect more ABI information. 2008-01-21 18:30:17 -05:00
Brad King 17dbc31ad4 BUG: Added missing documentation of LINK_FLAGS_<CONFIG> property. 2008-01-21 13:59:10 -05:00
Brad King 9a16d01591 COMP: snprintf is not portable. 2008-01-21 13:04:08 -05:00
Brad King f41b1e8e91 ENH: Implement version support in the find_package command module mode. Version numbers provided to the command are converted to variable settings to tell the FindXXX.cmake module what version is requested. This addresses issue #1645. 2008-01-21 08:48:33 -05:00
Brad King 9198a92af9 COMP: Fix VS6 and old HP build. This source does not have the #define for hack. 2008-01-21 08:01:04 -05:00
Brad King b1151a6487 STYLE: Nightly Date Stamp 2008-01-21 00:01:03 -05:00
Brad King ce2b20361a BUG: Fix previous commit to not access empty strings out of bounds. 2008-01-20 19:29:12 -05:00
Brad King 9f982d7d39 BUG: Make sure search paths never have double-slashes. Leading with two slashes (//) on cygwin looks like a network path and delays while waiting for a non-existent machine. This file was left out of the previous checkin for this problem. 2008-01-20 17:41:14 -05:00
Brad King c7b844ba3e BUG: Make sure search paths never have double-slashes. Leading with two slashes (//) on cygwin looks like a network path and delays while waiting for a non-existent machine. 2008-01-20 17:24:46 -05:00
Brad King b28c2625c7 COMP: Fix build during bootstrap on MSys. 2008-01-20 13:36:13 -05:00
Brad King 983625e2b5 STYLE: Nightly Date Stamp 2008-01-20 00:01:03 -05:00
Ken Martin c3ab83150c ENH: improve backwards compatibility 2008-01-19 15:09:36 -05:00
Brad King abf2054765 STYLE: Nightly Date Stamp 2008-01-19 00:01:03 -05:00
Brad King aed67d5d93 COMP: Fix build on Borland 5.5. 2008-01-18 18:40:05 -05:00
Alexander Neundorf 52b96e5bd9 BUG: don't crash if cmMakefile::RaiseScope() is called from a cmake file in
the top level directory in normal code (i.e. not within a function)

Alex
2008-01-18 17:11:50 -05:00
Alexander Neundorf fc8ce17433 ENH: remove RAISE_SCOPE() again and instead add SET(<var> <value> PARENT_SCOPE)
Alex
2008-01-18 15:52:54 -05:00
Bill Hoffman 77ef811c8e ENH: add MSVC90 define to vs9 ide 2008-01-18 14:34:48 -05:00
Ken Martin f74c8cf0d8 STYLE: fix bug 5682 2008-01-18 12:26:45 -05:00
Ken Martin 7c473d4828 BUG: fix bugs 5539 (progress going beyond 100% when new files are added) and 5889 (tests are not found in some cases when using add_subdirectory to .. etc) 2008-01-18 10:25:25 -05:00
Brad King 6ad79d13dd BUG: Construction of COMPILE_DEFINITIONS_<CONFIG> property name must use upper-case config name. 2008-01-18 08:35:37 -05:00
Brad King 2eff05e5cb STYLE: Fix line-too-long. 2008-01-18 08:19:37 -05:00
Brad King 10678ea1d7 STYLE: Nightly Date Stamp 2008-01-18 00:01:02 -05:00
Brad King 119e02631c ENH: Clarify documentation of find_package command. 2008-01-17 20:59:57 -05:00
Brad King 9d57dbd098 ENH: Make per-configuration COMPILE_DEFINITIONS_<CONFIG> directory property initialized from parent. 2008-01-17 20:34:10 -05:00
Brad King 8d1d5500c8 ENH: Enable use of COMPILE_DEFINITIONS property for Fortran sources. 2008-01-17 19:58:01 -05:00
Brad King 7f589c9f23 BUG: COMPILE_DEFINITIONS directory property needs to be inherited from parent when a directory is created. 2008-01-17 19:50:39 -05:00
Brad King 433099ecdd ENH: Converted cmMakefile DefineFlags added by ADD_DEFINITIONS command into a COMPILE_DEFINITIONS directory property. 2008-01-17 19:29:43 -05:00
Brad King caca9b8065 ENH: Add AppendProperty methods for use by C++ code in CMake. Simplify implementation of SET_PROPERTY command by using them. 2008-01-17 18:13:55 -05:00
Alexander Neundorf 9e8a1c639a STYLE: PATHS is optional (#6253)
Alex
2008-01-17 17:49:30 -05:00
Alexander Neundorf eccee212e1 STYLE: fix typo (#6252)
Alex
2008-01-17 17:43:04 -05:00
Brad King 669db35aa4 ENH: Changed signature of GET_PROPERTY command to be more powerful and extendible. 2008-01-17 17:19:13 -05:00
Brad King 83901b30da COMP: Fix VS build. 2008-01-17 16:24:51 -05:00
Brad King b8357db11d ENH: Rename SET_PROPERITES command to SET_PROPERTY and give it a more powerful signature. 2008-01-17 15:54:49 -05:00
Ken Martin 456631225b ENH: use CTestTestfile.txt 2008-01-17 12:44:59 -05:00
Ken Martin 14fc7dd1dd ENH: remove unused prototype 2008-01-17 12:35:07 -05:00
Brad King 5ef98132dd COMP: Fix warning about missing virtual destructor. 2008-01-17 10:32:27 -05:00
Brad King 18b9e7db6c ENH: Enable CMAKE_<lang>_DEFINE_FLAG for COMPILE_DEFINITIONS property implementation. 2008-01-17 10:00:19 -05:00
Brad King b424df917d ENH: Major improvements to the FIND_PACKAGE command. See bug #3659.
- Use CMAKE_PREFIX_PATH and CMAKE_SYSTEM_PREFIX_PATH among other means
    to locate package configuration files.
  - Create cmFindCommon as base for cmFindBase and cmFindPackageCommand
  - Move common functionality up to cmFindCommon
  - Improve documentation of FIND_* commands.
  - Fix FIND_* commands to not add framework/app paths in wrong place.
2008-01-17 09:02:31 -05:00
Brad King 491d5d0104 STYLE: Nightly Date Stamp 2008-01-17 00:01:02 -05:00
Brad King a06dcdba97 ENH: Allow LIST(APPEND) command to append nothing. 2008-01-16 11:24:41 -05:00
Brad King 34c04bbc24 STYLE: Nightly Date Stamp 2008-01-16 00:01:04 -05:00
Brad King 80c2be45e0 ENH: Renamed <CONFIG>_COMPILE_DEFINITIONS to COMPILE_DEFINITIONS_<CONFIG> for better documentation clarity. 2008-01-15 21:02:00 -05:00
Bill Hoffman a7e1031efe ENH: remove patch as directory change was already fixed 2008-01-15 14:00:52 -05:00
Bill Hoffman feea7133ef BUG: fix for bug 6234, use cd /d so that drives can be changed. 2008-01-15 11:56:41 -05:00
Brad King 34c04d6d02 ENH: Added partial implementation of recognizing per-configration properties. 2008-01-15 10:49:59 -05:00
Brad King da335fbd00 ENH: Add explicit documentation entry for configuration-specific <CONFIG>_COMPILE_DEFINITIONS. 2008-01-15 10:49:22 -05:00
Brad King 53e9b5b329 STYLE: Nightly Date Stamp 2008-01-15 00:01:06 -05:00
Alexander Neundorf f8f232bdd8 BUG: make -help-module-list work by filling the modules section first, also
for custom modules

Alex
2008-01-14 17:05:09 -05:00
Brad King 75a02152c2 COMP: Fix warning about backslash at end of c++ comment. 2008-01-14 11:07:05 -05:00
Brad King 8262ccfd4e ENH: Create COMPILE_DEFINITIONS property for targets and source files. Create <config>_COMPILE_DEFINITIONS property as per-configuration version. Add Preprocess test to test the feature. Document limitations on Xcode and VS6 generators. 2008-01-14 09:20:58 -05:00
Brad King 2c42f75522 STYLE: Nightly Date Stamp 2008-01-14 00:01:04 -05:00
Brad King 340468a090 BUG: Removed stray debugging statement. 2008-01-13 16:59:09 -05:00
Brad King 857e2e15dd ENH: Improved escaping in kwsys/System. Added escape of % for NMake. Added escape of ; for the VS IDE. 2008-01-13 16:36:20 -05:00
Brad King 4e96f4d503 STYLE: Nightly Date Stamp 2008-01-13 00:01:04 -05:00
Brad King 615ce67ad4 COMP: Fix build on borland. 2008-01-12 09:52:50 -05:00
Brad King 330b7c3f63 STYLE: Nightly Date Stamp 2008-01-12 00:01:05 -05:00
Bill Hoffman ee886fbbdb ENH: add CMAKE_DEFINE_FLAG_(LANG) that can replace -D flags with what the compiler actually uses 2008-01-11 13:00:29 -05:00
Brad King a6d32b96ed ENH: Add SystemTools::SplitPathRootComponent and re-implement SplitPath to use it. Add better treatment of user home directory paths. 2008-01-11 08:33:48 -05:00
Brad King d7c7ab0927 STYLE: Nightly Date Stamp 2008-01-11 00:01:04 -05:00
Brad King 1c2ffbb5bc BUG: Fix hang in Process_Kill on OS X caused by an OS bug in which a pipe read end cannot be closed if the pipe write end is open, the pipe is full, and another process is blocking waiting to write. Work around the problem by killing the children before closing the pipes. 2008-01-10 18:32:38 -05:00
Bill Hoffman d92d51429e BUG: fix for bug 6193, fix xcode depend helper 2008-01-10 15:17:23 -05:00
Brad King 564a23c6ba COMP: Fix build on VS6. 2008-01-10 09:46:04 -05:00
Brad King d53a7a38a1 STYLE: Nightly Date Stamp 2008-01-10 00:01:05 -05:00
Amitha Perera 4d9259c15b STYLE: Spelling fixes on documentation 2008-01-09 22:09:19 -05:00
Alexander Neundorf acb27977f0 ENH: sort the module files alphabetically when generating the documentation
of rht modules

Alex
2008-01-09 16:59:01 -05:00
Brad King b761da39c1 ENH: Patch from Maik to add preprocessor directive handling to Fortran dependency scanning. Also added -fpp flag to Intel Fortran compiler on Windows by default. 2008-01-09 10:30:11 -05:00
Brad King 09e309c3d0 STYLE: Nightly Date Stamp 2008-01-09 00:01:03 -05:00
Bill Hoffman 3777f4139d ENH: figure out long long value 2008-01-08 17:51:05 -05:00
Bill Hoffman 91edea1b8d ENH: fix lots of warnings 2008-01-08 17:20:04 -05:00
Bill Hoffman b9a54d392e ENH: turn off for now 2008-01-08 16:28:46 -05:00
Bill Hoffman 50c5d5a3d5 ENH: fix leaks and turn on by default 2008-01-08 14:59:57 -05:00
Bill Hoffman 66fff9d4b7 ENH: add missing file 2008-01-08 11:43:07 -05:00
Bill Hoffman c87853430e ENH: add new system information class for use in ctest 2008-01-08 11:38:28 -05:00
Bill Hoffman 4b166fc319 BUG: make it compile on vs 6 2008-01-08 08:25:07 -05:00
Brad King 7f406eed93 STYLE: Nightly Date Stamp 2008-01-08 00:01:03 -05:00
Brad King e2e8993eb3 BUG: Fix parsing of fortran include directives during dependency scanning. Previously only #include worked but not just include. 2008-01-07 23:08:42 -05:00
Brad King 52eb0ccac7 BUG: Restore old interface of "make foo.o" and "make foo.i" even though object file names now include source extensions. For Java we also need to always remove the source extension (.java -> .class). This fixes the re-opening of bug #6169. 2008-01-07 16:12:37 -05:00
Alexander Neundorf 9f2790d3e7 BUG: with cmake 2.4 INSTALL_FILES() with no files was accepted by cmake,
with cmake cvs without this patch an invalid cmake_install.cmake script was
generated in this case, it failed with an error if no files were given. So
just do nothing if no files are listed to make it compatible.

http://lists.kde.org/?l=kde-commits&m=119965185114478&w=2

Alex
2008-01-07 14:52:45 -05:00
Brad King e73508aa65 ENH: Changes based on patch from Maik for better cmDependsFortran::ModulesDiffer. 2008-01-07 11:36:17 -05:00
Brad King 0d916d4e72 STYLE: Nightly Date Stamp 2008-01-07 00:01:02 -05:00
Alexander Neundorf 9aeffa6e11 BUG: fix #6105, if a directory inside CMAKE_FIND_ROOT_PATH is given to a
FIND_XXX() command, don't prepend the root to it (since it is already in
this root)

Alex
2008-01-06 17:18:15 -05:00
Brad King 6c073ddb65 STYLE: Nightly Date Stamp 2008-01-06 00:01:04 -05:00
Brad King b26afe75fd STYLE: Nightly Date Stamp 2008-01-05 00:01:03 -05:00
Brad King 4e514a5e00 BUG: File installation should overwrite the destination if the file times differ at all rather than only if the source file is newer. Users expect installation to overwrite destination files. This addresses the re-opening of bug#3349. 2008-01-04 14:22:57 -05:00
Brad King b8785c4524 STYLE: Nightly Date Stamp 2008-01-04 00:01:03 -05:00
Ken Martin ac4c2f675a ENH: change raise_scope signature to be safer for returned varuables 2008-01-03 11:22:33 -05:00
Brad King c61a3b6fe9 STYLE: Fix line-too-long. 2008-01-03 09:40:38 -05:00
Bill Hoffman 45a4ddd85c BUG: fix resource file with a full path 2008-01-03 07:28:12 -05:00
Alexander Neundorf b6918bd9a4 COMP: fix build on Windows with gcc, patch from Maik Beckmann
Alex
2008-01-03 04:19:30 -05:00
Brad King 38ed52fe14 ENH: Add method cmFileTimeComparison::FileTimesDiffer to check if file times differ by 1 second or more. 2008-01-03 00:01:38 -05:00
Brad King 8ca81ae7bf STYLE: Nightly Date Stamp 2008-01-03 00:01:02 -05:00
Brad King aa399c2350 ENH: Cleanup Fortran build directories by placing module stamp files in the target directory that builds them. This is actually a simpler implementation anyway. 2008-01-02 18:30:48 -05:00
Brad King dcd9a1b59f BUG: Make RAISE_SCOPE function work when variable is not defined. 2008-01-02 17:49:16 -05:00
Alexander Neundorf 3da6fd9da4 ENH: only allow usage of chrpath if the executable file format is ELF
Alex
2008-01-02 16:53:10 -05:00
Alexander Neundorf 7b54af713d ENH: add the keywords OFFSET and HEX to the FILE() command, using OFFSET an
offset can be specified where the reading starts, and using HEX the data can
be converted into a hex string, so binary data can be compared with text
functions
-add docs for LIMIT, OFFSET and HEX

Alex
2008-01-02 16:46:38 -05:00
Brad King 2625b0498b STYLE: Fixed line-too-long. 2008-01-02 15:55:18 -05:00
Brad King 62ff2befcc BUG: Do not use VSMacros stuff for VS8sp0 because macros do not work in that version. 2008-01-02 15:53:28 -05:00
Brad King 60bf0531b0 ENH: Added FILES_MATCHING option to INSTALL(DIRECTORY). This will help install a tree of header files while ignoring non-headers. 2008-01-02 15:17:56 -05:00
Bill Hoffman ff04863d9d BUG: fix for bug 6197, absolute paths were not supported 2008-01-02 11:08:02 -05:00
Brad King c7de81f9a6 ENH: Make the Fortran compiler id available to cmDependsFortran at scanning and module timestamp copy time. 2008-01-02 11:04:52 -05:00
Bill Hoffman c8b8e0c702 BUG: fix for bug 6207 explain list index values better 2008-01-02 10:56:08 -05:00
Bill Hoffman 603cd2ab6a ENH: fix new incremental link stuff to work with nmake @ files 2008-01-02 09:32:29 -05:00
Brad King 8624abf272 STYLE: Nightly Date Stamp 2008-01-02 00:01:03 -05:00
Bill Hoffman ada4252c56 ENH: remove warning 2008-01-01 17:19:11 -05:00
Bill Hoffman b479c6a8a9 ENH: add ability to have manifest files and incremental linking with make and nmake 2008-01-01 15:13:41 -05:00
Brad King 06a24eee51 STYLE: Nightly Date Stamp 2008-01-01 00:01:03 -05:00
David Cole 546c839d04 ENH: Add a dependency from the PACKAGE target to the ALL target so that "make package" will first (essentially) do a "make all"... A similar chunk of code already existed for the make install target. This change makes it easy to build an installer package as part of a dashboard run simply by setting CTEST_BUILD_TARGET to "package". 2007-12-31 17:29:20 -05:00
Brad King 1f987c06ea ENH: Changes based on patch from Maik Beckmann to copy fortran modules to timestamps only if they have really changed. This optimization should reduce extra rebuilds caused by dependencies on modules whose providers have recompiled but whose interfaces have not changed. 2007-12-31 11:25:17 -05:00
Brad King 1ebf5aa2df STYLE: Nightly Date Stamp 2007-12-31 00:01:03 -05:00
Brad King b2e8c07af8 ENH: Implemented Fortran module output directory and search path flags. 2007-12-30 16:11:38 -05:00
Brad King cd8a2bbab6 ENH: Simplify Fortran module proxy dependency implementation by removing unnecessary target. 2007-12-30 12:23:54 -05:00
Brad King e30e58d38b STYLE: Nightly Date Stamp 2007-12-30 00:01:04 -05:00
Alexander Neundorf f3ea6a351a BUG: create modules documentation not only for the first documentation creation step
in cmake (the set ModulesFound wasn't cleared at the beginning of each
PrintDocumentation() function, so when documentation for modules was executed the second
time, ModulesFound already contained all modules and so no module was
documented)

Alex
2007-12-29 11:53:36 -05:00
Brad King bd454247da STYLE: Nightly Date Stamp 2007-12-29 00:01:04 -05:00
Brad King 3efc6e40cb BUG: Do not remove the source file extension when computing an object file name. This addresses bug #6169. If CMAKE_BACKWARDS_COMPATIBILITY is 2.4 or lower maintain the old behavior so that existing build trees and old project releases are not affected. 2007-12-28 23:07:26 -05:00
Brad King f872c10b7e ENH: Added method cmLocalGenerator::GetBackwardsCompatibility to reduce parsing of CMAKE_BACKWARDS_COMPATIBILITY variable. Add cmLocalGenerator::NeedBackwardsCompatibility to simplify checks for compatibility requirements. 2007-12-28 23:07:14 -05:00
Brad King edd5f1f5f1 COMP: Fix uninitialized variable and unused parameter warnings. 2007-12-28 22:29:19 -05:00
Brad King 59aa144516 ENH: Simplified and moved link script implementation up from cmMakefileLibraryTargetGenerator to cmMakefileTargetGenerator and use for cmMakefileExecutableTargetGenerator too. This addresses bug #6192. 2007-12-28 14:59:06 -05:00
Brad King 0a7bb41129 ENH: Make FIND_* commands look in the CMAKE_PREFIX_PATH directories directly after looking in each command's specific subdirectory (/include, /lib, or /bin). This may be useful on Windows where projects could be installed in a single directory. See issue #4947. 2007-12-28 12:01:37 -05:00
Brad King 81f6e86f12 ENH: Add per-language clean rule generation to cmake_clean.cmake files to include cmake_clean_<lang>.cmake files generated by dependency scanning. Add Fortran module file and timestamp cleaning rules. 2007-12-28 11:50:14 -05:00
Brad King 68dad94b00 ENH: Implement Fortran module dependencies across targets and directories.
- See issue #5809
  - Keep information about all sources in the target until deps are written
  - Create a fortran.internal file after scanning that lists modules provided
  - Load fortran.internal files from linked targets to find modules
  - Search the include path for external modules
  - Create file-level deps on in-project module timestamps or external mods
2007-12-28 11:49:59 -05:00
Brad King 42f3f3c342 ENH: Store in DependInfo.cmake files a list of the corresponding files for the targets to which a target links. This is useful for locating Fortran modules provided by linked targets. See issue #5809. 2007-12-28 11:49:46 -05:00
Brad King 9528b38fba STYLE: Nightly Date Stamp 2007-12-28 00:01:05 -05:00
Brad King 2541c05b3d STYLE: Nightly Date Stamp 2007-12-27 00:01:03 -05:00
Brad King ad788fe4c8 STYLE: Nightly Date Stamp 2007-12-26 00:01:05 -05:00
Brad King ae3f8adf1f STYLE: Nightly Date Stamp 2007-12-25 00:01:03 -05:00
Brad King 70f73adccb COMP: Fix build on VS6. 2007-12-24 11:15:45 -05:00
Brad King fc55596bd5 STYLE: Nightly Date Stamp 2007-12-24 00:01:03 -05:00
Brad King 611d1119d1 ENH: Clarify documentation of link_directories command for bug#6199. 2007-12-23 19:03:22 -05:00
Brad King 430296dc96 ENH: Moved global inter-target dependency analysis and cycle-prevention code up from cmGlobalUnixMakefileGenerator3 to cmGlobalGenerator. Simplified cmGlobalUnixMakefileGenerator3 to use it. Later other generators may be modified to use it also. 2007-12-23 15:03:42 -05:00
Brad King 8769444beb BUG: Revert previous change until it works on all OSX versions. 2007-12-23 13:16:21 -05:00
Brad King d21dc588ef BUG: Disable static lib deps until a global cycle removal can be done. 2007-12-23 13:13:44 -05:00
Brad King e521c5674d STYLE: Nightly Date Stamp 2007-12-23 00:01:03 -05:00
Brad King 4d360f7ac5 ENH: Convert cmDepends object interface to scan an entire target at once. 2007-12-22 22:41:42 -05:00
Brad King a7245e4792 ENH: Simplify target-level dependencies by depending only on directly linked targets instead of those chained. 2007-12-22 14:17:07 -05:00
Brad King 2836fc43e7 BUG: Support cyclic dependencies among STATIC libraries by removing one from the generated Makefile rules. 2007-12-22 13:08:26 -05:00
Brad King 9fcd08e17c STYLE: Nightly Date Stamp 2007-12-22 00:01:03 -05:00
Brad King e23348c5a6 COMP: Remove unused parameter of method. 2007-12-21 18:32:22 -05:00
Brad King 3cf3bb664a ENH: Make static library targets depend on targets to which they "link" for the purpose of build ordering. This makes the build order consistent for static and shared library builds. It is also useful when custom command inputs of one library are generated as custom commands outputs of another. It may be useful in the future for Fortran module dependencies. Implemented for Makefiles, Xcode, and VS 8 and above. Added sample code to do it for VS 7.1 and below, but left it disabled with comments explaining why. Likely it will never be needed on VS 7.1 or below anyway. 2007-12-21 15:04:06 -05:00
Brad King d2be142e3b BUG: Now that custom targets have dependencies their DependInfo files should be listed in Makefile.cmake. 2007-12-21 13:10:33 -05:00
Brad King d83b4cd255 ENH: Add a depends check step to custom targets. Add support for the IMPLICIT_DEPENDS feature of custom commands when building in custom targets. Convert multiple-output pair checks to be per-target instead of global. 2007-12-21 12:22:12 -05:00
Brad King 6586149d64 BUG: The dependency scanning target should be symbolic. 2007-12-21 11:00:03 -05:00
Brad King e72521b720 STYLE: Nightly Date Stamp 2007-12-21 00:01:02 -05:00
Alexander Neundorf 355b1f23af STYLE: make formatting of help a bit more consistent
Alex
2007-12-20 17:49:38 -05:00
Ken Martin f69a6a7c8c BUG: fix issue with CMAKE_CURENT_LIST_FILE reporting in funcitons 2007-12-20 10:05:08 -05:00
Brad King 4ca0d1ba09 COMP: Fixed error on HP due to newline macro. 2007-12-20 09:35:14 -05:00
Brad King 850721f9af COMP: Fixed data loss warning. 2007-12-20 09:27:59 -05:00
Brad King 48be0a596f STYLE: Nightly Date Stamp 2007-12-20 00:01:04 -05:00
Brad King 011d7db6bd BUG: Fix make depend target in subdirectory Makefile interface. 2007-12-19 17:54:24 -05:00
Brad King 73704ede42 ENH: Enabled color printing of "Scanning dependencies of target ..." message. 2007-12-19 17:15:41 -05:00
Alexander Neundorf f0824c7a19 ENH: options() is now scriptable, set() is scriptable too, I don't see a big
difference

Alex
2007-12-19 16:53:58 -05:00
Alexander Neundorf 3a304f8e1b STYLE: nicer error message:
"Command options() is not scriptable" is IMO better to understand than
"Command options not scriptable" (with all uppercase commands it was easier to see)

Alex
2007-12-19 16:46:15 -05:00
Brad King de96fd1df9 ENH: Moved dependency integrity check from CheckBuildSystem over to a per-target UpdateDependencies step. This greatly reduces the startup time for make processes and allows individual targets to be built without a global dependency check. 2007-12-19 16:36:30 -05:00
Brad King c7bf320539 BUG: cmDependsFortran should store the source file as a dependency of the object file when scanning for dependencies. 2007-12-19 16:35:09 -05:00
Brad King 891256546b ENH: Pass target directory to cmDependsFortran scanning instances. 2007-12-19 14:28:46 -05:00
Brad King 9ccba7c391 ENH: Improved speed of cmake::CheckBuildSystem when checking build system outputs versus dependencies. Instead of doing an O(m*n) comparison of every pair, just locate the oldest output and the newest input and compare them which is now O(m+n). 2007-12-19 11:51:30 -05:00
Brad King 07db9b83a7 ENH: Renamed CMAKE_FIND_PREFIX_PATH to CMAKE_PREFIX_PATH for brevity and consistency with other find path variable names. 2007-12-19 11:06:47 -05:00
Brad King d1fdc38c68 ENH: Added CMAKE_SYSTEM_PREFIX_PATH variable. 2007-12-19 10:34:43 -05:00
Alexander Neundorf ac017f7aba STYLE: fix warnings: comparison signed/unsigned, unused variable
Alex
2007-12-19 03:56:13 -05:00
Brad King 42da2be0b1 STYLE: Nightly Date Stamp 2007-12-19 00:01:03 -05:00
Alexander Neundorf 3ae731fab7 ENH: add support for chrpath, so the RPATH in ELF files can be changed when
installing without having to link the target again -> can save a lot of time

chrpath is handled very similar to install_name_tool on the mac. If the
RPATH in the build tree file is to short, it is padded using the separator
character.
This is currently disabled by default, it can be enabled using the option
CMAKE_USE_CHRPATH. There are additional checks whether it is safe to enable
it. I will rework them and use FILE(READ) instead to detect whether the
binaries are actually ELF files.

chrpath is available here
http://www.tux.org/pub/X-Windows/ftp.hungry.com/chrpath/
or kde svn (since a few days): http://websvn.kde.org/trunk/kdesupport/chrpath/

Alex
2007-12-18 17:50:27 -05:00
Bill Hoffman b57b1c563d BUG: fix for bug 6172 add get source file prop LANGUAGE 2007-12-18 09:57:41 -05:00
Brad King 872553de7e ENH: Implemented generation of display for pre-build, pre-link, and post-build custom command comments during the build. This addresses issue #5353. 2007-12-18 09:50:08 -05:00
Bill Hoffman 42bad89fe7 STYLE: fix line len 2007-12-18 08:53:10 -05:00
Brad King cffd2f18c6 STYLE: Nightly Date Stamp 2007-12-18 00:01:02 -05:00
Brad King 4c87af30b2 BUG: Remove stray debugging message. 2007-12-17 19:48:13 -05:00
Brad King abaa026721 BUG: When the working directory for a custom command is on another drive letter we need to change to that drive letter after changing its working directory. Fixes issue #6150. 2007-12-17 18:38:19 -05:00
Brad King 60149b33c1 BUG: Fixed memory-leaks in fortran parser. 2007-12-17 17:55:21 -05:00
Brad King ca5c5fc770 BUG: Fix parsing of #include preprocessor directives. 2007-12-17 17:55:03 -05:00
Brad King 44f38c9b86 ENH: Fortran include path is the same as C and CXX include paths. 2007-12-17 17:54:43 -05:00
Bill Hoffman c6089d1642 BUG: fix for bug 5931 add some more flags for the gui 2007-12-17 17:28:23 -05:00
Bill Hoffman 4c108d2a24 ENH: try to fix dashboard 2007-12-17 15:27:30 -05:00
Brad King 5e0dadbfb8 BUG: Apply patch from issue #6006. 2007-12-17 15:20:06 -05:00
Bill Hoffman 58f671bb1c ENH: add support for vs 9 win64 2007-12-17 14:43:11 -05:00
Brad King 8506938407 ENH: Added SOURCES property to targets. This is based on patch from issues #6137. 2007-12-17 10:12:22 -05:00
Brad King 99d57b3c8c ENH: Added cmSourceFile::GetLocation method to get a read-only reference to the Location ivar. This partially addresses issue #6137. 2007-12-17 10:12:19 -05:00
Brad King ff8d2a6647 STYLE: Nightly Date Stamp 2007-12-17 00:01:02 -05:00
Alexander Neundorf bcb73bb9f4 BUG: fix STRING(STRIP ...) if no non-space is contained in the input string,
this should fix the dashboard

Alex
2007-12-16 07:56:43 -05:00
Brad King eb098e1970 STYLE: Nightly Date Stamp 2007-12-16 00:01:02 -05:00
Brad King 4143d8a700 ENH: Make module timestamps work for modules in subdirectories. Make sure timestamps for all modules provided by a target are created when the target is done building. 2007-12-15 15:35:00 -05:00
Brad King 994c88559a STYLE: Removed trailing whitespace. 2007-12-15 14:17:21 -05:00
Brad King 540a98aa45 STYLE: Fixed terminology to avoid confusion between roots and prefixes. 2007-12-15 14:14:05 -05:00
Brad King 99dfcc05ef STYLE: Fixed line-too-long. 2007-12-15 14:13:14 -05:00
Brad King f143856371 STYLE: Nightly Date Stamp 2007-12-15 00:01:04 -05:00
Bill Hoffman 779877a2ee BUG: fix for bug 6039 LIB and INCLUDE not used for find stuff 2007-12-14 20:46:15 -05:00
Bill Hoffman a5e76555bf BUG: fix for bug 6136 make sure includes are not directories 2007-12-14 20:31:27 -05:00
Bill Hoffman f282f999c3 BUG: fix bug 6081 2007-12-14 15:50:10 -05:00
Bill Hoffman ad75cb7195 BUG: fix for 6086 uninstall icon not set right 2007-12-14 14:58:27 -05:00
Bill Hoffman 1f84c86e21 STYLE: line length 2007-12-14 12:49:36 -05:00
Brad King 1713bf95c6 STYLE: Nightly Date Stamp 2007-12-14 00:01:04 -05:00
Brad King 6db2c473e2 COMP: Add missing return value from Bill's change. 2007-12-13 18:30:53 -05:00
Brad King 9f61e2a235 ENH: Centralized and globalized computation of CMake program locations. This eliminates startup paths that failed to produce this information. 2007-12-13 17:56:50 -05:00
Brad King ebc036bbda BUG: Fixed typo introduced by previous commit. 2007-12-13 17:39:53 -05:00
Bill Hoffman fd33bf93a5 ENH: fix for bug 6102, allow users to change the compiler 2007-12-13 15:54:29 -05:00
Bill Hoffman 3409e0a777 STYLE: fix indent 2007-12-13 15:42:49 -05:00