Commit Graph

201 Commits

Author SHA1 Message Date
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
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
Bill Hoffman
378ca535a4 ENH: complex must link to curl now 2008-02-07 08:55:56 -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
9d57dbd098 ENH: Make per-configuration COMPILE_DEFINITIONS_<CONFIG> directory property initialized from parent. 2008-01-17 20:34:10 -05:00
Brad King
88b31bd007 ENH: Adding test for using HEADER_FILE_ONLY to avoid building a .cxx file. 2007-11-19 14:27:43 -05:00
Bill Hoffman
2e24dd1e5b ENH: fix leak 2007-08-21 12:31:32 -04:00
Bill Hoffman
fcad93e172 ENH: user more memory for parser and add test to complex that sets a huge string 2007-07-20 14:08:37 -04:00
Brad King
b384218ec1 BUG: Disable test of feature that is not documented or implemented everywhere. 2007-05-16 11:40:53 -04:00
Brad King
adcd87c976 BUG: Fixed cmLocalVisualStudio7Generator to deal with quotes in macro definitions properly. This addresses bug#4983. 2007-05-09 10:18:31 -04:00
Brad King
cf7eeab37a ENH: Testing new target properties RUNTIME_OUTPUT_DIRECTORY, LIBRARY_OUTPUT_DIRECTORY, and ARCHIVE_OUTPUT_DIRECTORY. This is an incremental fix for bug#2240 and bug#4210. 2007-03-12 10:23:06 -04:00
Brad King
a4d2dc4366 ENH: Added smoke test for user-value flag mapping for VS IDE. 2007-02-01 12:02:24 -05:00
Ken Martin
27379d7b08 ENH: make properties a bit more formal with documentation and chaining 2006-12-07 09:45:32 -05:00
Bill Hoffman
3a32cec969 ENH: merge in changes for beos support 2006-12-04 17:26:41 -05:00
Brad King
4400842135 ENH: Added test case for bug#3966. 2006-10-30 10:38:55 -05:00
Brad King
21a56b7df7 COMP: Fixed typo: CMAKE_TEST_CMAKELIB -> COMPLEX_TEST_CMAKELIB. 2006-10-22 11:57:11 -04:00
Brad King
b646183f44 ENH: Added explicit name for option to test CMakeLib. Added option to disable testing of CMakeLib if system utility libraries are used until linking made easier. 2006-10-19 14:45:41 -04:00
Brad King
7ad07e0811 BUG: Fix link flags on cygwin shared libraries. This requires that the shared library prefix be supported in the link library regex. 2006-10-05 15:08:20 -04:00
Brad King
97e07dc162 BUG: Test -isystem without affecting other tests. Made separate Library/SystemDir for this purpose. 2006-10-05 12:04:30 -04:00
Brad King
16b781360c BUG: Run testSystemDir test only if -isystem flag is available. 2006-10-05 11:30:44 -04:00
Brad King
c11cf31c9b ENH: Adding SYSTEM option to INCLUDE_DIRECTORIES command. This addresses bug #3462. 2006-10-05 08:55:59 -04:00
Brad King
fcd500289b ENH: Renamed NOT_IN_ALL to EXCLUDE_FROM_ALL. 2006-10-02 12:01:20 -04:00
Brad King
1d9f287af7 ENH: Added NOT_IN_ALL option for ADD_LIBRARY and ADD_EXECUTABLE to avoid building the targets by default. 2006-10-02 11:14:00 -04:00
Brad King
16f8da8b14 ENH: Re-enabling .i rule test on MSYS now that it works. 2006-09-28 10:41:19 -04:00
Brad King
f785ae9ac3 ENH: Re-enable preprocessing target test but specifically disable it on broken platforms. 2006-09-27 14:27:07 -04:00
Brad King
1ce1c5762b BUG: Disable new test_preprocess target until it is fixed on OSX universal binaries and mingw. 2006-09-24 10:28:47 -04:00
Brad King
13380569f3 ENH: Adding test for running preprocessor rules. 2006-09-23 16:55:16 -04:00
Ken Martin
a6e63f3a61 ENH: added test for elseif 2006-09-22 11:49:56 -04:00
Brad King
07ec25e383 ENH: Added test for linking to a static library that is next to a shared library. See bug#1644 for related changes. 2006-09-15 14:31:24 -04:00
Brad King
24b55bfe11 BUG: Make sure sources with unknown extensions are not compiled by VS. 2006-08-03 09:26:36 -04:00
Brad King
1973efbab2 ENH: Adding test for source files and header files with the same base name in the same target. 2006-08-01 10:49:15 -04:00
Brad King
9a74185695 BUG: Fix REMOVE_DEFINITIONS command to not remove substrings. 2006-05-23 12:51:26 -04:00
Brad King
21089bf93f BUG: INCLUDE_DIRECTORIES should interpret relative path arguments with respect to the current source directory. 2006-05-12 10:54:09 -04:00
Brad King
5f20340c2a BUG: Disabling an EXECUTE_PROCESS test until problems on UNIX systems are fixed. 2006-05-08 10:02:28 -04:00
Bill Hoffman
1c44342cff ENH: remove duplicate file name test because it fails on xcode 2006-04-17 18:10:16 -04:00
Bill Hoffman
0f8603acc2 ENH: allow multiple files with the same name in different sub dirs test 2006-04-17 13:59:23 -04:00
Brad King
57a9e26c15 BUG: Fixed cmOrderLinkDirectories to make sure cmake-built libraries are found properly. Also taking libraries that will be built but may not yet exist into account. The per-configuration subdirectories that are included by generators in the link path are checked for conflicting libraries also. Potentially conflicting libraries that are actually symlinks back to the desired library are no longer considered conflicting, which avoids bogus impossible ordering warnings. 2006-04-04 14:25:17 -04:00
Bill Hoffman
b45f4a5d45 ENH: change library order to use a vector 2006-04-04 11:52:00 -04:00
Ken Martin
eb773486f3 ENH: added testing for new features 2006-03-22 15:01:22 -05:00
Brad King
f430ad0ea2 BUG: Removed compiled-in CMAKE_SHARED_MODULE_PREFIX and CMAKE_SHARED_MODULE_SUFFIX for loaded commands in favor of using the settings from the platform files. 2006-03-16 17:20:09 -05:00
Andy Cedilnik
f483e48d2a ENH: Cleanup DynamicLoader so that the symbols have more consistent names, start using dynamic loader from kwsys in CMake 2006-03-16 11:01:05 -05:00
Brad King
1b6e55933b ENH: Strengthened EXECUTE_PROCESS output check test. 2006-02-10 11:47:18 -05:00
Brad King
e666b8e825 BUG: Avoid case problems on windows. 2006-02-09 18:39:00 -05:00
Brad King
9787e55ee8 ENH: Added test for new EXECUTE_PROCESS command. 2006-02-03 17:09:35 -05:00
Bill Hoffman
07ef88c985 ENH: add COMPILE_FLAGS to targets 2006-01-25 08:38:06 -05:00
Bill Hoffman
ac58fb88b9 ENH: more fixes for watcom 2006-01-17 14:35:04 -05:00
Bill Hoffman
9891260a6d ENH: add support for watcom wmake and wcl386 2006-01-17 10:21:45 -05:00
Brad King
22c62c9e65 BUG: Sweeping changes to cleanup computation of target names. This should
fix many bugs related to target names being computed inconsistently.

- Centralized computation of a target's file name to a method in
  cmTarget.  Now that global knowledge is always available the
  *_CMAKE_PATH cache variables are no longer needed.

- Centralized computation of link library command lines and link
  directory search order.

- Moved computation of link directories needed to link CMake targets
  to be after evaluation of linking dependencies.

This also removed alot of duplicate code in which each version had its
own bugs.

This commit is surrounded by the tags

  CMake-TargetNameCentralization1-pre

and

  CMake-TargetNameCentralization1-post

so make the large set of changes easy to identify.
2006-01-13 18:18:32 -05:00
Bill Hoffman
2c73d2e0f3 ENH: add new cmakedefine01 feature from bug report 2603 2006-01-03 16:40:51 -05:00
Andy Cedilnik
e37d8867b8 BUG: Flush the EXECUTABLE and LIBRARY output path to internal 2006-01-02 14:33:16 -05:00