Commit Graph

863 Commits

Author SHA1 Message Date
Brad King 67834f2d53 BUG: Correct Mac OS X framework behavior
- Place the built library in foo.framework/Versions/A/foo
  - Do not create unused content symlinks (like PrivateHeaders)
  - Do not use VERSION/SOVERSION properties for frameworks
  - Make cmTarget::GetDirectory return by value
  - Remove the foo.framework part from cmTarget::GetDirectory
  - Correct install_name construction and conversion on install
  - Fix MACOSX_PACKAGE_LOCATION under Xcode to use the
    Versions/<version> directory for frameworks
  - Update the Framework test to try these things
2008-04-08 00:06:47 -04:00
Ken Martin 16f1cc9b59 ENH: support unset of properties 2008-04-01 14:22:09 -04:00
Brad King 71d292d087 BUG: Fix Fortran test to use more portable comment syntax in fixed format source. 2008-03-28 14:04:52 -04:00
Ken Martin ff90b5efbf BUG: make test more robust 2008-03-25 14:37:12 -04:00
Ken Martin f0486827d5 BUG: add debugging into to check out a problem 2008-03-25 14:15:20 -04:00
Ken Martin ce8810c4e7 ENH: preclean some warnings 2008-03-25 11:27:18 -04:00
Brad King a6a673979d ENH: Add "if(POLICY policy-id)" option for IF command.
- This will help projects support multiple CMake versions.
  - In order to set a policy when using a newer CMake but still
    working with an older CMake one may write
      if(POLICY CMP1234)
        cmake_policy(SET CMP1234 NEW)
      endif(POLICY CMP1234)
  - Note that since CMake 2.4 does not have if(POLICY) supporting
    it will also require using "if(COMMAND cmake_policy)"
2008-03-20 18:25:59 -04:00
Brad King 8e2f45c24b BUG: Convert cmake_policy(VERSION) to cmake_minimum_required(VERSION) in Tests/MakeClean/ToClean/CMakeLists.txt and Tests/Preprocess/CMakeLists.txt. CMP0000 now requires the cmake_minimum_required command. 2008-03-20 18:25:33 -04:00
Sebastien Barre f64d3d0b77 ENH: add REMOVE_DUPLICATES subcommand to LIST command (and test). Remove duplicates from a list (keep the ordering) 2008-03-12 17:02:10 -04:00
Brad King 5233b75a77 ENH: Improve handling of old-style compatibility.
- Remove CMP_0001 (no slash in target name) and restore
    old CMAKE_BACKWARDS_COMPATIBILITY check for it
  - Replace all checks of CMAKE_BACKWARDS_COMPATIBILITY
    with cmLocalGenerator::NeedBackwardsCompatibility calls
  - Create new CMP_0001 to determine whether or not
    CMAKE_BACKWARDS_COMPATIBILITY is used.
    (old = use, new = ignore)
  - Show CMAKE_BACKWARDS_COMPATIBILITY in cache only when
    CMP_0001 is set to OLD or WARN
  - Update documentation of cmake_policy and cmake_minimum_required
    to indicate their relationship and the 2.4 version boundary
  - When no cmake policy version is set in top level makefile
    implicitly call cmake_policy(VERSION 2.4) which restores
    CMAKE_BACKWARDS_COMPATIBILITY and other 2.4 compatibility
  - Fix tests MakeClean and Preprocess to call
    cmake_policy(VERSION 2.6) because they depend on new policies
2008-03-07 15:30:35 -05:00
David Cole a4e0edd4e8 ENH: Add script GetPrerequisites.cmake to help analyze what shared libraries executable files depend on. Primary uses are to determine what shared libraries should be copied into Mac OSX bundle applications to create standalone bundles apps and to determine what shared library files need to be installed for an executable to run on any platform. Requires native platform tools dumpbin, otool and ldd to generate results. 2008-03-04 08:18:34 -05:00
Brad King b2cf4db201 BUG: Fix typo XCode -> Xcode in Preprocess test. 2008-03-01 10:56:03 -05:00
Brad King e083de1cf5 ENH: Update Preprocess test to distinguish between the make tool or compiler tool that is at fault for not supporting a particular character in definitions. Make it skip the % character when the compiler is MSVC and it is a non-nmake tool. 2008-03-01 09:08:59 -05:00
Brad King b459ec9f57 ENH: Updated DEFINE_PROPERTY command to be more extendible and more consistent with new SET_PROPERTY and GET_PROPERTY signatures. 2008-02-14 13:36:23 -05:00
Brad King a71d56096c BUG: Need ANSI C. 2008-02-08 09:24:29 -05:00
Brad King bdb628145a ENH: Make Dependency test Case2 require two traversals of a static library loop. 2008-02-07 16:14:17 -05:00
Bill Hoffman 378ca535a4 ENH: complex must link to curl now 2008-02-07 08:55:56 -05:00
Brad King 1cba430d1b ENH: Combine all dependency* tests into one Dependency test. Add more difficult test cases. 2008-02-06 14:52:12 -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 4d9fa41124 COMP: Convert C function prototypes to use (void) instead of (). 2008-02-03 08:57:58 -05:00
Ken Martin 8f5e85c4cc ENH: disable test for vs 70 as devenv randomly segfaults when building the sub-project 2008-02-01 16:17:06 -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
Brad King 587419db83 ENH: Update ExportImport test to enforce dependent library paths
- Build without rpaths
  - Place implementation libs in separate directories
2008-02-01 09:57:47 -05:00
Brad King 65761dee55 BUG: Fix commit 1.41 of Tests/CMakeLists.txt to place fake target before --version flag instead of after. 2008-02-01 09:36:54 -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
Brad King 109b5fc7a2 ENH: Updated ExportImport test to try LINK_INTERFACE_LIBRARIES. 2008-01-30 17:26:09 -05:00
Bill Hoffman d51e9cf180 ENH: add missing files 2008-01-30 13:02:32 -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
Brad King e5fce58da3 BUG: Custom command driver outputs must be SYMBOLIC since no corresponding file is created. 2008-01-29 08:03:43 -05:00
Brad King 3630a4e4e7 BUG: Make sure CMAKE_INSTALL_PREFIX stays in subproject caches. 2008-01-29 07:57:24 -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 9275e1f1d2 BUG: Fix Framework test after fixing FRAMEWORK targets to not install like frameworks on non-Apple systems. 2008-01-28 14:46:58 -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 611bff2c1b ENH: Added framework to ExportImport test. 2008-01-28 13:06:17 -05:00
Brad King 976b426b2d ENH: Added ExportImport test to test new export/import features. 2008-01-28 08:40:21 -05:00
Brad King 1332b55794 BUG: Updated SimpleInstall tests for new export/import interface. 2008-01-28 08:39:25 -05:00
Ken Martin f4b7ba9c42 ENH: add testing for return and break commands 2008-01-23 10:29:21 -05:00
Brad King d2d18fb565 ENH: Added RuntimePath test to make sure rpath gets correct order. 2008-01-22 09:15:16 -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 19d22f6105 BUG: Do not get in infinite loop when checking make tool version in cmake build tree. 2008-01-21 17:29:54 -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
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
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 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 a3e53fcfa2 ENH: Use new set_property signature to set COMPILE_DEFINITIONS properties in Preprocess test. 2008-01-17 17:34:56 -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 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 ec2839c57d STYLE: change case to match book 2008-01-17 10:26:49 -05:00