Commit Graph

7864 Commits

Author SHA1 Message Date
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