summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* BUG: fix for 7045, use gcc for .mBill Hoffman2008-08-191-2/+3
|
* BUG: fix 6647 arguments after -E should not be parsed by CMakeBill Hoffman2008-08-193-11/+18
|
* BUG: fix for 6794 support for LTCG WholeProgramOptimization, which is not ↵Bill Hoffman2008-08-191-0/+1
| | | | available in VS 8 and newer.
* BUG: fix for 7496, do not just report configure done when there is an error ↵Bill Hoffman2008-08-191-1/+6
| | | | during configure
* BUG: 7448 fix crash in ccmake when compiler is changedBill Hoffman2008-08-191-1/+4
|
* ENH: Disallow link-type keywords in link interfaceBrad King2008-08-194-0/+69
| | | | | | | | | The LINK_INTERFACE_LIBRARIES target property may not contain the "debug", "optimized", or "general" keywords. These keywords are supported only by the target_link_libraries (and link_libraries) command and are not a generic library list feature in CMake. When a user attempts to add one of these keywords to the property value, we now produce an error message that refers users to alternative means.
* ENH: Clarify link interface documentationBrad King2008-08-191-5/+14
| | | | | | | | The LINK_INTERFACE_LIBRARIES property does not apply for STATIC libraries. The IMPORTED_LINK_INTERFACE_LIBRARIES property does apply for STATIC libraries. State both explicitly in the documentation. Also, clarify that the per-configuration version of these properties completely overrids the generic version.
* BUG: Linking to modules is for 2.2 compat onlyBrad King2008-08-191-8/+11
| | | | | | | | The compatibility check to allow linking to modules should test for CMake 2.2, not the unreleased 2.3. See issue #7500. Furthermore, the message should be more clear about fixing the code instead of setting CMAKE_BACKWARDS_COMPATIBILITY unless one is just trying to build an existing project.
* STYLE: Nightly Date StampBrad King2008-08-191-1/+1
|
* ENH: Improve errors when a policy is REQUIREDBrad King2008-08-184-165/+142
| | | | | | In the future some policies may be set to REQUIRED_IF_USED or REQUIRED_ALWAYS. This change clarifies the error messages users receive when violating the requirements.
* ENH: Add UNKNOWN type for IMPORTED librariesBrad King2008-08-187-10/+60
| | | | | | | | | | | | | | | When creating an IMPORTED target for a library that has been found on disk, it may not be known whether the library is STATIC or SHARED. However, the library may still be linked using the file found from disk. Use of an IMPORTED target is still important to allow per-configuration files to be specified for the library. This change creates an UNKNOWN type for IMPORTED library targets. The IMPORTED_LOCATION property (and its per-config equivalents) specifies the location of the library. CMake makes no assumptions about the library that cannot be inferred from the file on disk. This will help projects and find-modules import targets found on disk or specified by the user.
* STYLE: Convert unused target type cases to defaultBrad King2008-08-182-25/+5
| | | | | | In switch statements that deal with only a few target types, use a 'default' case for the remaining target types instead of listing them explicitly. This will make it easier to add more types in the future.
* ENH: Make link interface mode more distinctBrad King2008-08-182-11/+20
| | | | | | | | | Rename the recently added INTERFACE mode of the target_link_libraries() command to LINK_INTERFACE_LIBRARIES. This makes it much more distinct from a normal call to the command, and clearly states its connection to the property of the same name. Also require the option to appear immediately after the target name to make it a mode rather than an option.
* ENH: Add cmake_policy(GET) command modeBrad King2008-08-182-0/+67
| | | | | | | It is likely that projects or CMake modules in the future will need to check the value of a policy setting. For example, if we add a policy that affects the results of FindXYZ.cmake modules, the module code will need to be able to check the policy.
* STYLE: Nightly Date StampBrad King2008-08-181-1/+1
|
* STYLE: Nightly Date StampBrad King2008-08-171-1/+1
|
* STYLE: extend documentation for RETURN() a bitAlexander Neundorf2008-08-161-5/+9
| | | | | | ENH: add a test for calling RETURN() in an included file Alex
* BUG: fix #7477, set VERBOSE=1 in the kdevelop setting for the environment,Alexander Neundorf2008-08-161-2/+4
| | | | | | not together with the make executable Alex
* STYLE: remove some commented codeAlexander Neundorf2008-08-161-13/+2
| | | | Alex
* BUG: fix #7471, only put build directories and CMakeFiles/ in the blacklistAlexander Neundorf2008-08-161-4/+9
| | | | Alex
* STYLE: Nightly Date StampBrad King2008-08-161-1/+1
|
* COMP: Work-around bogus compiler warning.Brad King2008-08-151-0/+2
|
* STYLE: Nightly Date StampBrad King2008-08-151-1/+1
|
* ENH: Inform user when RPATH or RUNPATH is removedBrad King2008-08-143-5/+27
|
* BUG: Update both RPATH and RUNPATH entriesBrad King2008-08-141-70/+119
| | | | | | | | | During installation the RPATH and RUNPATH entries of ELF binaries are edited to match the user specification. Usually either one entry is present or both entries refer to the same string literal. In the case that they are both present and refer to separate string literals we need to update both. I have never seen this case in practice, but we should do this just in case.
* BUG: Remove both RPATH and RUNPATH entriesBrad King2008-08-141-62/+92
| | | | | | | | Removal of the RPATH and RUNPATH from ELF binaries must work when both entries are present. Both entries should be removed. Previously only one would be removed and the other would be blanked because it pointed at the same string which was zeroed. This fixes gentoo bug number 224901.
* STYLE: Nightly Date StampBrad King2008-08-141-1/+1
|
* STYLE: Nightly Date StampBrad King2008-08-131-1/+1
|
* ENH: Teach find_package about lib64 pathsBrad King2008-08-122-9/+28
| | | | | When find_package is about to look in <prefix>/lib, search first in <prefix>/lib64 in cases that find_library would use lib64 paths.
* STYLE: one ifdef block less, the documentation object can be created a bit laterAlexander Neundorf2008-08-121-3/+1
| | | | Alex
* STYLE: Nightly Date StampBrad King2008-08-121-1/+1
|
* ENH: Simple specification of link interfacesBrad King2008-08-112-12/+111
| | | | | | | | Create an INTERFACE option to the target_link_libraries command to help set the LINK_INTERFACE_LIBRARIES and LINK_INTERFACE_LIBRARIES_DEBUG properties. This will help users specify link interfaces using variables from Find*.cmake modules that include the 'debug' and 'optimized' keywords.
* STYLE: Nightly Date StampBrad King2008-08-111-1/+1
|
* STYLE: Nightly Date StampBrad King2008-08-101-1/+1
|
* STYLE: Nightly Date StampBrad King2008-08-091-1/+1
|
* STYLE: Nightly Date StampBrad King2008-08-081-1/+1
|
* ENH: Tolerate repeated link library typesBrad King2008-08-072-26/+62
| | | | | | | | The "debug", "optimized", and "general" link library type specifier arguments to the target_link_library commands are sometimes repeated in user code due to variable expansion and other complications. Instead of silently accepting the duplicates and trying to link to a bogus library like "optimized.lib", warn and ignore the earlier specifiers.
* ENH: Clarify documentation of EXCLUDE_FROM_ALLBrad King2008-08-071-7/+15
| | | | | | The add_subdirectory() command's EXCLUDE_FROM_ALL option does not override inter-target dependencies. This change clarifies the documentation accordingly.
* STYLE: Nightly Date StampBrad King2008-08-071-1/+1
|
* BUG: Avoid bogus dependency on executable targetsBrad King2008-08-064-7/+39
| | | | | | | | | | | | When an executable target within the project is named in target_link_libraries for another target, but the executable does not have the ENABLE_EXPORTS property set, then the executable cannot really be linked. This is probably a case where the user intends to link to a third-party library that happens to have the same name as an executable target in the project (or else will get an error at build time). We need to avoid making the other target depend on the executable target incorrectly, since the executable may actually want to link to that target and this is not a circular depenency.
* ENH: Improve readability of circular depends errorBrad King2008-08-061-2/+2
| | | | | | When reporting the dependencies in a strongly connected component quote the target names to make the message more readable no matter the target name.
* BUG: Fix crash on circular target dependenciesBrad King2008-08-061-1/+4
| | | | | | After reporting an error about circular target dependencies do not try to continue generation because the dependency computation object is not in a useful state.
* BUG: don't crash in the generator is EXECUTABLE_OUTPUT_PATH orAlexander Neundorf2008-08-061-3/+3
| | | | | | LIBRARY_OUTPUT_PATH are empty Alex
* STYLE: Nightly Date StampBrad King2008-08-061-1/+1
|
* BUG: Custom command depends may match sourcesBrad King2008-08-051-0/+9
| | | | | | | | Custom command dependencies that are not full paths or targets may also match source files. When one does, the full information about the source file's location and name may be used. This fixes the case when a custom commands depends by relative path on a source file generated by another custom command specifying its output by relative path.
* BUG: Fix matching of ambiguous sf extensions.Brad King2008-08-052-18/+58
| | | | | | | | A name with an ambiguous extension may only match an unambiguous name that is extended by one of the fixed set of extensions tried when finding the source file on disk. This rule makes matching of source files with ambiguous extensions much less aggressive but still sufficient.
* BUG: Do not convert RPATH entries to full path.Brad King2008-08-051-1/+1
| | | | | | When generating RPATH entries on the link line using a repeated linker flag (-R ... -R ... style) do not convert individual entries to a full path. We need to preserve what the user requested.
* BUG: Fix escaping in link scriptsBrad King2008-08-051-1/+1
| | | | | | | When generating escape sequences for the native build tool do not put in Makefile escapes for paths generated into link scripts. This fixes putting "$ORIGIN" into the RPATH, and probably some other subtle problems.
* STYLE: Nightly Date StampBrad King2008-08-051-1/+1
|
* ENH: Build large archives incrementallyBrad King2008-08-041-0/+4
| | | | | | Creation of archive libraries with the unix 'ar' tool should be done incrementally when the number of object files is large. This avoids problems with the command line getting too many arguments.