Commit Graph

8000 Commits

Author SHA1 Message Date
Brad King 544c263f48 COMP: Add missing assert include. 2008-02-07 16:24:54 -05:00
Alexander Neundorf d4ffc0d3b9 STYLE: add some comments
Alex
2008-02-07 16:22:00 -05:00
Brad King 4987e17f46 ENH: Improve link line generation for static library cycles.
- Move Tarjan algorithm from cmComputeTargetDepends
    into its own class cmComputeComponentGraph
  - Use cmComputeComponentGraph to identify the component DAG
    of link dependencies in cmComputeLinkDepends
  - Emit non-trivial component members more than once but always
    in a contiguous group on the link line
2008-02-07 16:14:05 -05:00
Bill Hoffman 0bfad2946d ENH: make sure files are binary for download and make status a pair of value string 2008-02-07 13:26:16 -05:00
Bill Hoffman 9afb2100c1 ENH: for windows only allow a static qt for install and NSIS of cmake-gui 2008-02-07 11:43:20 -05:00
Brad King aee3f7b54a STYLE: Nightly Date Stamp 2008-02-07 00:01:02 -05:00
Brad King 96c55629c5 BUG: Fix cmComputeLinkInformation to include the target's user link directories in the runtime path computation. This bug was introduced when cmOrderRuntimeDirectories was introduced. 2008-02-06 20:14:55 -05:00
Brad King d9b9720167 ENH: Make find_library test for the library file as named before trying prefixes and suffixes. This will allow users to explicitly search for static libraries on unix. See bug #1643. 2008-02-06 15:26:22 -05:00
Brad King a5074872b0 STYLE: Improve documentation of target_link_libraries command to make target-level dependency explicit. See bug #6043. 2008-02-06 15:23:36 -05:00
Clinton Stimpson 2f327a13a3 ENH: Update some strings to match program name. 2008-02-06 15:10:32 -05:00
Clinton Stimpson 0cb622a28b BUG: On Mac OS X, give the CMake library the correct path to the cmake
exectuables.  Fixes #6286.
2008-02-06 14:45:32 -05:00
Brad King 9e64d5b272 ENH: Improve exporting/importing of targets
- Use real name instead of link for location of versioned targets
  - Error when a target is exported multiple times
2008-02-06 14:20:36 -05:00
Brad King afad124313 BUG: Make sure linking to a shared lib on windows uses import library and not the new realname. 2008-02-06 14:19:03 -05:00
Brad King 31a6670e43 BUG: Do not create versioned executable names on Xcode where they are not supported. 2008-02-06 14:06:50 -05:00
Brad King 07be6bb87b ENH: When linking to versioned targets whose real file name is known pass the real name to the linker instead of the symlink name. 2008-02-06 13:34:44 -05:00
Bill Hoffman a752fc5e85 ENH: remove debug print stuff 2008-02-06 09:46:58 -05:00
Bill Hoffman 7dfcc3fc12 ENH: add DOWNLOAD option to FILE command 2008-02-06 09:35:02 -05:00
Bill Hoffman 0c3607eafc ENH: change name of qt-dialog 2008-02-06 09:17:03 -05:00
Brad King 4664b3aedf STYLE: Nightly Date Stamp 2008-02-06 00:01:04 -05:00
Brad King 523ddedac5 ENH: Analyze inter-target dependencies to safely fix cycles
- Cycles may be formed among static libraries
  - Native build system should not have cycles in target deps
  - Create cmComputeTargetDepends to analyze dependencies
  - Identify conneced components and use them to fix deps
  - Diagnose cycles containing non-STATIC targets
  - Add debug mode property GLOBAL_DEPENDS_DEBUG_MODE
  - Use results in cmGlobalGenerator as target direct depends
2008-02-05 23:10:41 -05:00
Brad King 5b9fccdc0e STYLE: Nightly Date Stamp 2008-02-05 00:01:02 -05:00
Brad King efec4f1cd6 COMP: Add missing include for assert. 2008-02-04 19:00:33 -05:00
Brad King 8401c5ba06 ENH: Allow separate installation of shared libs and their links.
- Add NAMELINK_ONLY and NAMELINK_SKIP to INSTALL command
  - Options select a \"namelink\" mode
  - cmInstallTargetGenerator selects files/link based on mode
  - See bug #4419
2008-02-04 17:03:48 -05:00
Bill Hoffman 852f6018bb ENH: make sure ALL_BUILD only shows up once 2008-02-04 16:05:00 -05:00
Brad King 847c8403fe BUG: Added TARGET_ARCHIVES_MAY_BE_SHARED_LIBS global property to help compute proper rpath information on AIX when shared libraries have names like "libfoo.a". 2008-02-04 15:22:10 -05:00
Brad King e67dc68a3b STYLE: Nightly Date Stamp 2008-02-04 00:01:03 -05:00
Brad King dc06ac5881 COMP: Avoid warning in kwsys IOStream.cxx when the helper functions are not needed. Define one public symbol to avoid complaints from archivers about empty object files. 2008-02-03 08:58:10 -05:00
Brad King 62145a5811 BUG: cmCTest::GetConfigType should return the string by reference-to-const so that callers may use .c_str() safely. 2008-02-03 08:57:41 -05:00
Brad King 6b8bb7d7fa COMP: Fix warning in SystemInformation.cxx about possibly incorrect assignment in if condition. 2008-02-03 08:20:11 -05:00
Brad King 8280232d0d COMP: Fix unreachable code warning. Remove runtime test of constant information. 2008-02-03 08:14:38 -05:00
Brad King b38bc43894 COMP: Remove inline keyword from forward declaration for VS9. 2008-02-03 08:07:17 -05:00
Brad King 607e05ff1a STYLE: Nightly Date Stamp 2008-02-03 00:01:02 -05:00
Bill Hoffman e3b0d3927a ENH: fix infinite loop from size_t change 2008-02-02 16:18:35 -05:00
Brad King dce9f2dad7 STYLE: Nightly Date Stamp 2008-02-02 00:01:05 -05:00
Ken Martin 22835a71cd ENH: really Bill, using Ken's checkout, fix output in ctest so clean output in build and test is not lost, also display the command lines used 2008-02-01 16:05:40 -05:00
Brad King 0dac20cd20 BUG: Fixed typo resulting in confusing error message from cmExportInstallFileGenerator. 2008-02-01 14:35:14 -05:00
Brad King 16186ec18c BUG: Remove InstallNameFixupPath from cmTarget and cmInstallTargetGenerator.
- Motivation:
    - It depended on the order of installation
    - It supported only a single destination for each target
    - It created directory portions of an install name without user request
  - Updated ExportImport test to install targets in an order that expoed
    this bug
2008-02-01 13:08:12 -05:00
Bill Hoffman 15741325e0 ENH: fix warnings 2008-02-01 12:35:50 -05:00
Clinton Stimpson f1b334ca7a ENH: Show version number in window title. 2008-02-01 11:48:00 -05:00
Bill Hoffman 2564097e8c ENH: fix more warnings 2008-02-01 11:40:55 -05:00
Bill Hoffman 5343910cba ENH: fix more warnings 2008-02-01 11:36:06 -05:00
Bill Hoffman 889d900ef2 ENH: fix more warnings 2008-02-01 11:34:42 -05:00
Bill Hoffman f6826df4f3 ENH: fix more warnings 2008-02-01 11:33:14 -05:00
Bill Hoffman 9b55f81522 ENH: fix some warnings and 64 bit build windows 2008-02-01 11:30:08 -05:00
Bill Hoffman 32409bb8e3 ENH: fix win64 build and a warning 2008-02-01 11:09:39 -05:00
Clinton Stimpson 41ad9d20df ENH: Use translation file if it exists for the locale.
Consolidate some strings.

      More responsive interrupting.  Prompt user if they try to close during
      configure, and allow them to close.
2008-02-01 10:41:29 -05:00
Brad King 82fcaebe28 ENH: Pass dependent library search path to linker on some platforms.
- Move runtime path ordering out of cmComputeLinkInformation
    into its own class cmOrderRuntimeDirectories.
  - Create an instance of cmOrderRuntimeDirectories for runtime
    path ordering and another instance for dependent library
    path ordering.
  - Replace CMAKE_DEPENDENT_SHARED_LIBRARY_MODE with explicit
    CMAKE_LINK_DEPENDENT_LIBRARY_FILES boolean.
  - Create CMAKE_LINK_DEPENDENT_LIBRARY_DIRS boolean.
  - Create variables to specify -rpath-link flags:
      CMAKE_SHARED_LIBRARY_RPATH_LINK_<LANG>_FLAG
      CMAKE_EXECUTABLE_RPATH_LINK_<LANG>_FLAG
  - Enable -rpath-link flag on Linux and QNX.
  - Documentation and error message updates
2008-02-01 08:56:00 -05:00
Brad King f28f1585f6 COMP: Fix shadowed local warning. 2008-02-01 08:55:41 -05:00
Brad King 6223f3f763 STYLE: Nightly Date Stamp 2008-02-01 00:01:03 -05:00
Bill Hoffman cc7c89ca51 ENH: try to fix hp and vs 6, again... 2008-01-31 21:33:32 -05:00
Bill Hoffman 5a36673807 STYLE: line length 2008-01-31 16:38:45 -05:00
Bill Hoffman 294dca62ee ENH: fixes for borland 2008-01-31 16:37:52 -05:00
Ken Martin 70e9412dc7 BUG: minor fix for ctest 2008-01-31 16:33:07 -05:00
Bill Hoffman dc0f41c298 ENH: remove extra junk 2008-01-31 16:10:32 -05:00
Brad King 2cff26fa52 ENH: Support linking to shared libs with dependent libs
- Split IMPORTED_LINK_LIBRARIES into two parts:
      IMPORTED_LINK_INTERFACE_LIBRARIES
      IMPORTED_LINK_DEPENDENT_LIBRARIES
  - Add CMAKE_DEPENDENT_SHARED_LIBRARY_MODE to select behavior
  - Set mode to LINK for Darwin (fixes universal binary problem)
  - Update ExportImport test to account for changes
2008-01-31 15:45:31 -05:00
Bill Hoffman 52e75800b4 ENH: fix for qnx, I hope, and fix indent stuff 2008-01-31 15:34:09 -05:00
Bill Hoffman 99ebc1e728 ENH: fix build errors with asm stuff on mingw and hopefully win64 2008-01-31 15:10:19 -05:00
Bill Hoffman 414b89b903 ENH: fix build for mingw 2008-01-31 14:50:08 -05:00
Bill Hoffman b270a4ee7b ENH: split into implementation and interface class to clean up namespace issues with #define stuff 2008-01-31 14:34:11 -05:00
Brad King 82d8264b9f BUG: Need to install cstddef header. 2008-01-31 12:56:18 -05:00
Bill Hoffman 48b554dee8 ENH: remove a const cast 2008-01-31 12:19:00 -05:00
Ken Martin 21852384e0 ENH: read in old file formats Dart as well 2008-01-31 11:43:44 -05:00
Brad King 065f23ba38 STYLE: Work-around std:: check since this is a platform test. 2008-01-31 08:32:08 -05:00
Brad King e3c2c1923a STYLE: Remove references to std:: inside KWSys, even in comments. This will allow a commit check to be added. 2008-01-31 08:21:35 -05:00
Brad King d81875fb87 COMP: Replace kwsys_stl:: with kwsys_ios:: for streams access. 2008-01-31 08:21:27 -05:00
Brad King afd7d4ca4c ENH: Add target property LINK_SEARCH_END_STATIC to help people building static binaries on some platforms. 2008-01-31 08:05:34 -05:00
Brad King 3a05425309 BUG: Move decision to switch library paths found in implicit link directories to use -l options from cmFindLibraryCommand to cmComputeLinkInformation. Existing projects may depend on find_library returning a full path. This slightly weakens cmComputeLinkInformation but is necessary for compatibility. 2008-01-31 07:50:40 -05:00
Brad King 73a5f0846f COMP: Remove unused parameter. 2008-01-31 06:51:43 -05:00
Brad King 3edc8e83ef STYLE: Nightly Date Stamp 2008-01-31 00:01:05 -05:00
Bill Hoffman 6903d2df8b ENH: remove const 2008-01-30 22:56:34 -05:00
Bill Hoffman 2a6e918c1f COMP: use kwsys_stl and not std:: 2008-01-30 21:40:43 -05:00
Brad King 0ac845b7da BUG: Fixed previous commit in cmExportFileGenerator to separate libraries correctly in the import link list. 2008-01-30 17:57:54 -05:00
Brad King 7902bc06aa ENH: Implemented link-interface specification feature.
- Shared libs and executables with exports may now have
    explicit transitive link dependencies specified
  - Created LINK_INTERFACE_LIBRARIES and related properties
  - Exported targets get the interface libraries as their
    IMPORTED_LINK_LIBRARIES property.
  - The export() and install(EXPORT) commands now give
    an error when a linked target is not included since
    the user can change the interface libraries instead
    of adding the target.
2008-01-30 17:25:52 -05:00
Bill Hoffman 22be36f8d5 ENH: make sure global targets are in the right projects 2008-01-30 16:22:51 -05:00
Bill Hoffman 2d0e838339 ENH: fix for vs 70 2008-01-30 12:55:59 -05:00
Brad King ed5661821c BUG: cmComputeLinkDepends should not follow the dependencies of executables. 2008-01-30 12:15:17 -05:00
Bill Hoffman 8a83f09637 ENH: fix for bug 3218 dependant projects are written out automatically if they are in the project. Also fix bug 5829, remove hard coded CMAKE_CONFIGURATION_TYPES from vs 7 generator 2008-01-30 12:04:38 -05:00
Bill Hoffman 21e6791789 ENH: remove warnings 2008-01-30 11:54:55 -05:00
Brad King e9503a174e ENH: Make add_custom_command interpret relative OUTPUT locations with respect to the build tre instead of the source tree. This can greatly simplify user code since generating a file will not need to reference CMAKE_CURRENT_BINARY_DIR. The new behavior is what users expect 99% of the time. 2008-01-30 11:22:10 -05:00
Brad King d5db5a275a BUG: Add cmSourceFile::GetPropertyForUser to centralize the LOCATION property hack. This fixes the LOCATION property when retrieved via the get_property command. 2008-01-30 11:21:54 -05:00
Bill Hoffman c4093afc52 ENH: enhancements for cdash, include system information and better time entries 2008-01-30 11:17:36 -05:00
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