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
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
Brad King
a28b197b11
ENH: Generalize the check for sizeof void* to detect more ABI information.
2008-01-21 18:30:17 -05:00
Brad King
17dbc31ad4
BUG: Added missing documentation of LINK_FLAGS_<CONFIG> property.
2008-01-21 13:59:10 -05:00
Brad King
9a16d01591
COMP: snprintf is not portable.
2008-01-21 13:04:08 -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
Brad King
9198a92af9
COMP: Fix VS6 and old HP build. This source does not have the #define for hack.
2008-01-21 08:01:04 -05:00
Brad King
b1151a6487
STYLE: Nightly Date Stamp
2008-01-21 00:01:03 -05:00
Brad King
ce2b20361a
BUG: Fix previous commit to not access empty strings out of bounds.
2008-01-20 19:29:12 -05:00
Brad King
9f982d7d39
BUG: Make sure search paths never have double-slashes. Leading with two slashes (//) on cygwin looks like a network path and delays while waiting for a non-existent machine. This file was left out of the previous checkin for this problem.
2008-01-20 17:41:14 -05:00
Brad King
c7b844ba3e
BUG: Make sure search paths never have double-slashes. Leading with two slashes (//) on cygwin looks like a network path and delays while waiting for a non-existent machine.
2008-01-20 17:24:46 -05:00
Brad King
b28c2625c7
COMP: Fix build during bootstrap on MSys.
2008-01-20 13:36:13 -05:00
Brad King
983625e2b5
STYLE: Nightly Date Stamp
2008-01-20 00:01:03 -05:00
Ken Martin
c3ab83150c
ENH: improve backwards compatibility
2008-01-19 15:09:36 -05:00
Brad King
abf2054765
STYLE: Nightly Date Stamp
2008-01-19 00:01:03 -05:00
Brad King
aed67d5d93
COMP: Fix build on Borland 5.5.
2008-01-18 18:40:05 -05:00
Alexander Neundorf
52b96e5bd9
BUG: don't crash if cmMakefile::RaiseScope() is called from a cmake file in
...
the top level directory in normal code (i.e. not within a function)
Alex
2008-01-18 17:11:50 -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
Bill Hoffman
77ef811c8e
ENH: add MSVC90 define to vs9 ide
2008-01-18 14:34:48 -05:00
Ken Martin
f74c8cf0d8
STYLE: fix bug 5682
2008-01-18 12:26:45 -05:00
Ken Martin
7c473d4828
BUG: fix bugs 5539 (progress going beyond 100% when new files are added) and 5889 (tests are not found in some cases when using add_subdirectory to .. etc)
2008-01-18 10:25:25 -05:00
Brad King
6ad79d13dd
BUG: Construction of COMPILE_DEFINITIONS_<CONFIG> property name must use upper-case config name.
2008-01-18 08:35:37 -05:00
Brad King
2eff05e5cb
STYLE: Fix line-too-long.
2008-01-18 08:19:37 -05:00
Brad King
10678ea1d7
STYLE: Nightly Date Stamp
2008-01-18 00:01:02 -05:00
Brad King
119e02631c
ENH: Clarify documentation of find_package command.
2008-01-17 20:59:57 -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
8d1d5500c8
ENH: Enable use of COMPILE_DEFINITIONS property for Fortran sources.
2008-01-17 19:58:01 -05:00
Brad King
7f589c9f23
BUG: COMPILE_DEFINITIONS directory property needs to be inherited from parent when a directory is created.
2008-01-17 19:50:39 -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
caca9b8065
ENH: Add AppendProperty methods for use by C++ code in CMake. Simplify implementation of SET_PROPERTY command by using them.
2008-01-17 18:13:55 -05:00
Alexander Neundorf
9e8a1c639a
STYLE: PATHS is optional ( #6253 )
...
Alex
2008-01-17 17:49:30 -05:00
Alexander Neundorf
eccee212e1
STYLE: fix typo ( #6252 )
...
Alex
2008-01-17 17:43:04 -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
83901b30da
COMP: Fix VS build.
2008-01-17 16:24:51 -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
456631225b
ENH: use CTestTestfile.txt
2008-01-17 12:44:59 -05:00
Ken Martin
14fc7dd1dd
ENH: remove unused prototype
2008-01-17 12:35:07 -05:00
Brad King
5ef98132dd
COMP: Fix warning about missing virtual destructor.
2008-01-17 10:32:27 -05:00
Brad King
18b9e7db6c
ENH: Enable CMAKE_<lang>_DEFINE_FLAG for COMPILE_DEFINITIONS property implementation.
2008-01-17 10:00:19 -05:00
Brad King
b424df917d
ENH: Major improvements to the FIND_PACKAGE command. See bug #3659 .
...
- Use CMAKE_PREFIX_PATH and CMAKE_SYSTEM_PREFIX_PATH among other means
to locate package configuration files.
- Create cmFindCommon as base for cmFindBase and cmFindPackageCommand
- Move common functionality up to cmFindCommon
- Improve documentation of FIND_* commands.
- Fix FIND_* commands to not add framework/app paths in wrong place.
2008-01-17 09:02:31 -05:00
Brad King
491d5d0104
STYLE: Nightly Date Stamp
2008-01-17 00:01:02 -05:00
Brad King
a06dcdba97
ENH: Allow LIST(APPEND) command to append nothing.
2008-01-16 11:24:41 -05:00
Brad King
34c04bbc24
STYLE: Nightly Date Stamp
2008-01-16 00:01:04 -05:00
Brad King
80c2be45e0
ENH: Renamed <CONFIG>_COMPILE_DEFINITIONS to COMPILE_DEFINITIONS_<CONFIG> for better documentation clarity.
2008-01-15 21:02:00 -05:00
Bill Hoffman
a7e1031efe
ENH: remove patch as directory change was already fixed
2008-01-15 14:00:52 -05:00
Bill Hoffman
feea7133ef
BUG: fix for bug 6234, use cd /d so that drives can be changed.
2008-01-15 11:56:41 -05:00
Brad King
34c04d6d02
ENH: Added partial implementation of recognizing per-configration properties.
2008-01-15 10:49:59 -05:00
Brad King
da335fbd00
ENH: Add explicit documentation entry for configuration-specific <CONFIG>_COMPILE_DEFINITIONS.
2008-01-15 10:49:22 -05:00
Brad King
53e9b5b329
STYLE: Nightly Date Stamp
2008-01-15 00:01:06 -05:00
Alexander Neundorf
f8f232bdd8
BUG: make -help-module-list work by filling the modules section first, also
...
for custom modules
Alex
2008-01-14 17:05:09 -05:00