Commit Graph

11012 Commits

Author SHA1 Message Date
Brad King b653e8b6e7 Merge topic 'dev/test-for-bug-11230'
96a335f XCode generation should fail if lang isn't known
d3a8943 Fix which string is checked for in the test
220c5dc Add test that CMake errors with empty libs
2010-10-05 15:30:10 -04:00
Brad King 54a3bf001c Merge topic 'vs10-empty-target'
448661f VS10: Skip targets with no linker language (#11230)
2010-10-05 15:29:20 -04:00
Brad King 46bc165c36 Merge topic 'fix_custom_commands_with_intdir_vs10'
3d68dd2 Fix for bug #11274, VS10 custom commands that create files in INTDIR fix.
2010-10-05 15:28:45 -04:00
Alex Neundorf 9072535f83 CodeBlocks Generator: Do not omit files in the project file listing.
The CodeBlocks generator used to omit files that were in siblings directories.
Though that filters out a few files that could be argued aren't of interest
to the user, it also potentialy hides files that are relevant to the user.

Patch by Daniel Teske.

Alex

See: http://bugreports.qt.nokia.com/browse/QTCREATORBUG-2250 for an example.
2010-10-05 21:16:17 +02:00
KWSys Robot d0d8f029ab KWSys Nightly Date Stamp 2010-10-05 00:10:31 -04:00
KWSys Robot 5eca3dd0f0 KWSys Nightly Date Stamp 2010-10-04 00:10:06 -04:00
KWSys Robot ef4263aad7 KWSys Nightly Date Stamp 2010-10-03 00:10:04 -04:00
David Cole fd3249e11a New USE_FOLDERS property OFF by default. (#3796)
Visual Studio Express editions do not support solution folders,
so default behavior should be as if USE_FOLDERS global property
is OFF.

Also, allow folder names to be the same as target names: internally,
use a prefix to distinguish folder GUIDs from target GUIDs. Add
a target and folder with the same name in the ExternalProject
test to exercise this code.

For CMake itself, provide a new option CMAKE_USE_FOLDERS that
defaults to ON so that Visual Studio users get a nicely organized
CMake project. Express edition users will have to turn off the
CMAKE_USE_FOLDERS option in order to build CMake in the VS Express
IDE.
2010-10-02 14:31:02 -04:00
KWSys Robot 2488c343f1 KWSys Nightly Date Stamp 2010-10-02 00:10:36 -04:00
Brad King 2596e16c8f VS10: Encode custom command comments for echo (#11283)
VS10 uses MSBuild underneath.  The <Message></Message> CDATA are just
appended to "echo" and executed as a single command.  Encode the message
such that it can be passed to echo.  Convert newlines to tabs since they
cannot be printed this way.
2010-10-01 16:12:00 -04:00
KWSys Robot d69b129481 KWSys Nightly Date Stamp 2010-10-01 00:10:39 -04:00
Ben Boeckel 96a335fd8d XCode generation should fail if lang isn't known 2010-09-30 14:54:20 -04:00
Brad King 448661fbe5 VS10: Skip targets with no linker language (#11230)
In targets with no non-header files the linker language cannot be
determined.  Since the target project file cannot be generated at all in
this case, give up as soon as it is detected.  Otherwise the generation
code may try to run with uninitialized information.
2010-09-30 08:48:38 -04:00
KWSys Robot 4e137de7b1 KWSys Nightly Date Stamp 2010-09-30 00:10:39 -04:00
Bill Hoffman 3d68dd230d Fix for bug #11274, VS10 custom commands that create files in INTDIR fix. 2010-09-29 17:02:04 -04:00
Brad King a2bbe4bef9 Remove trailing whitespace from Xcode generator source
Reverting abandoned topic xcode_source_group_fix_7932 left this source
slightly different due to trailing whitespace removal on some lines.
Remove all trailing whitespace from the file to make it consistent.
2010-09-29 08:38:18 -04:00
KWSys Robot 0f6b3a0059 KWSys Nightly Date Stamp 2010-09-29 00:10:08 -04:00
Alex Neundorf 41e4f1a210 Add automatic variable CMAKE_CURRENT_LIST_DIR(dir of CMAKE_CURRENT_LIST_FILE)
Comes with a simple test and docs.

Alex
2010-09-28 22:10:47 +02:00
Alex Neundorf f9fc79cac5 Remove trailing whitespace
Alex
2010-09-28 21:44:22 +02:00
Brad King d24b8acc1a Merge topic 'cmake-guiRememberAdvancedCheckbox'
3d13502 Make cmake-gui remember whether the "Advanced" checkbox was checked or not
8e8acb7 -remove trailing whitespace
2010-09-28 14:06:31 -04:00
Brad King 3398ec7d6f Merge topic 'vs10-object-intdir'
7ef659f VS10: Use $(IntDir) for per-source output directory (#11270)
2010-09-28 14:04:48 -04:00
Brad King 126158f046 Merge topic 'fixAbsoluteDestHandlingRegression'
225abc5 InstallGen/CPack  fix handling absolute installed file regression
2010-09-28 14:02:44 -04:00
KWSys Robot 5efe30791b KWSys Nightly Date Stamp 2010-09-28 00:10:03 -04:00
Brad King 7ef659fcc3 VS10: Use $(IntDir) for per-source output directory (#11270)
The original implementation of this generator accidentally used
"$(Configuration)/" for source-specific object file names.  Correct it
to use "$(IntDir)/" just like the generators for all previous VS
versions.  The target-wide output directory is "$(IntDir)/" already.
2010-09-27 08:37:00 -04:00
KWSys Robot 993cfc9406 KWSys Nightly Date Stamp 2010-09-27 00:10:04 -04:00
KWSys Robot c928751d27 KWSys Nightly Date Stamp 2010-09-26 00:10:04 -04:00
KWSys Robot f42bae0bd5 KWSys Nightly Date Stamp 2010-09-25 00:10:04 -04:00
KWSys Robot 7d243b9695 KWSys Nightly Date Stamp 2010-09-24 00:10:36 -04:00
Alex Neundorf 3d13502c98 Make cmake-gui remember whether the "Advanced" checkbox was checked or not
Alex
2010-09-23 21:48:07 +02:00
Alex Neundorf 8e8acb7aab -remove trailing whitespace
Alex
2010-09-23 21:47:06 +02:00
KWSys Robot a9bf98b2a6 KWSys Nightly Date Stamp 2010-09-23 00:10:11 -04:00
Brad King dda5bbd7c9 Merge topic 'fix_windows7_untar'
775697d Add a delay after untar on windows to make external project work on windows 7
2010-09-22 13:53:25 -04:00
Brad King 14d5ea7438 Merge topic 'mingw-long-object-lists'
5f05a3c MinGW: Support long object file lists
2d9bb33 Evaluate <OBJECT_DIR> rule variable for executables
2010-09-22 13:52:24 -04:00
KWSys Robot d65a91dd45 KWSys Nightly Date Stamp 2010-09-22 00:10:27 -04:00
Brad King 781c34197b Merge topic 'fix-9963'
a798bb7 Avoid CustomCommand test failure on VS71 (#9963)
9b4ab06 Avoid CustomCommand test failure on VS71 (#9963)
9d2e648 No extra spaces in CustomCommand test (#9963)
269a4b8 Enable calling commands with : in argv[1] (#9963)
2010-09-21 10:44:08 -04:00
Brad King 5968785b2f Merge topic 'xcode-ARCHS-quoting'
a8ded53 Xcode: Quote string values containing '$' (#11244)
0790af3 Xcode: Avoid trailing space in ARCHS list (#11244)
2010-09-21 10:42:50 -04:00
Brad King 724804600b Merge topic 'document-IMPORTED_NO_SONAME'
8f96818 Document IMPORTED_NO_SONAME target property
2010-09-21 10:37:59 -04:00
Brad King 9da64e7c6b Merge topic 'fix-ccmake-search'
5d7c3c0 ccmake: Fix search with '/'
2010-09-21 10:33:08 -04:00
Brad King 753cbf8356 Merge topic 'fix_line_length_issues'
3901174 Fix KWStyle line length issues.
2010-09-21 10:32:18 -04:00
Bill Hoffman 775697d5f5 Add a delay after untar on windows to make external project work on windows 7
OK, on windows 7 after we untar some files,
sometimes we can not rename the directory after
the untar is done. This breaks the external project
untar and rename code.  So, by default we will wait
1/10th of a second after the untar.  If CMAKE_UNTAR_DELAY
is set in the env, its value will be used instead of 100.
2010-09-21 10:04:04 -04:00
KWSys Robot 950b735101 KWSys Nightly Date Stamp 2010-09-21 00:10:07 -04:00
Eric NOULARD 225abc555d InstallGen/CPack fix handling absolute installed file regression 2010-09-20 23:33:35 +02:00
Mikkel Krautz a8ded5338b Xcode: Quote string values containing '$' (#11244)
Allow use of $(STANDARD_32BIT_ARCHS) as CMAKE_OSX_ARCHITECTURES.
The expanded value must remain a single string.
2010-09-20 10:08:40 -04:00
Mikkel Krautz 0790af3bf5 Xcode: Avoid trailing space in ARCHS list (#11244)
With CMAKE_OSX_ARCHITECTURE settings such as $(ARCHS_STANDARD_32BIT),
the space inserted by the for loop would confuse Xcode if quoted. In
this particular example, what would be output would be:

  ARCHS = "$(ARCHS_STANDARD_32BIT) ";

The Xcode UI does not recognize this as the built-in "Standards 32-bit"
architecture setting unless the space is removed.
2010-09-20 10:05:33 -04:00
KWSys Robot b03087798b KWSys Nightly Date Stamp 2010-09-20 00:10:05 -04:00
KWSys Robot d10b94b2f0 KWSys Nightly Date Stamp 2010-09-19 00:10:03 -04:00
KWSys Robot c30c3ade9b KWSys Nightly Date Stamp 2010-09-18 00:10:05 -04:00
Brad King 8f96818a5c Document IMPORTED_NO_SONAME target property
Commit fd37a6ec (Better linker search path computation, 2008-02-21)
added this property but did not document it.  Add the documentation.
2010-09-17 13:28:29 -04:00
KWSys Robot 4b682e13fb KWSys Nightly Date Stamp 2010-09-17 00:10:04 -04:00
Brad King 5d7c3c0a59 ccmake: Fix search with '/'
Commit 7a18dd8e (Add searching of variables, 2003-03-07) added method
cmCursesMainForm::JumpToCacheEntry to search for cache entries whose
names match a given search string.  The method also had a useless
argument "int idx" probably left from earlier development iterations and
hard-coded in all calls to the value '-1'.  The method compared this
argument to the "NumberOfVisibleEntries" member which at the time was of
type "int" also.

Commit ff1f8d0b (Fix or cast more integer conversions in cmake,
2010-06-29) changed the type of "NumberOfVisibleEntries" to size_t to
fix other integer conversion warnings.  An unsigned type makes sense
given the purpose of the member.  However, this caused the '-1' signed
value to be converted to a large unsigned value in the above-mentioned
comparison, leading to incorrect behavior.

Fix the problem by removing the useless argument and the comparison.
2010-09-16 17:45:27 -04:00
Brad King 2d9bb3325f Evaluate <OBJECT_DIR> rule variable for executables
Previously this placeholder was evaluated only for libraries.  Make it
work for executables too.
2010-09-16 15:07:41 -04:00
KWSys Robot 48a126717c KWSys Nightly Date Stamp 2010-09-16 00:10:04 -04:00
Bill Hoffman 390117435a Fix KWStyle line length issues. 2010-09-15 16:41:41 -04:00
KWSys Robot de7a090847 KWSys Nightly Date Stamp 2010-09-15 00:10:05 -04:00
Brad King 4c06e23307 Merge topic 'resolve/fix_target_name_with_dot_vs10/allow_upper_case_cpp_and_others'
eccc7d5 Merge branch 'allow_upper_case_cpp_and_others' into resolve/fix_target_name_with_dot_vs10/allow_upper_case_cpp_and_others
ed37fc3 VS2010: Set IntDir for utility and global targets.
e79e412 VS2010: Honor PROJECT_LABEL target property (#10611)
530ade6 Fix targets with . in the name for VS 10 IDE.
2010-09-14 15:07:23 -04:00
Brad King 6580f5de99 Merge topic 'improve-missing-source-file-error'
a6b5ead Report missing source files with context of target
2010-09-14 13:31:10 -04:00
Brad King f306a357b2 Merge topic 'style-line-length'
9d21281 Fix line-too-long style errors
86025d3 file(DOWNLOAD): Fix error message formatting
2010-09-14 13:19:53 -04:00
Brad King 5233d34c31 Merge topic 'preserve-timestamps-on-tar-extract'
666f328 Preserve timestamps on files on tar extract.
2010-09-14 13:11:06 -04:00
Brad King 5dfa48c8c5 Merge topic 'lazy-query-cdash'
ffda17d We shouldn't ask CDash for its version info until/unless we actually need it.
2010-09-14 13:09:58 -04:00
Brad King 1ae9832988 Merge topic 'multi-v-single-configuration'
b06fb16 No CMAKE_CONFIGURATION_TYPES in single-config generators (#10202)
2010-09-14 13:07:59 -04:00
KWSys Robot becc11f72f KWSys Nightly Date Stamp 2010-09-14 00:10:28 -04:00
Brad King a6b5ead62f Report missing source files with context of target
Previously we reported only the CMakeLists.txt file in the directory
that adds the target.
2010-09-13 16:17:20 -04:00
David Cole ed37fc3ea3 VS2010: Set IntDir for utility and global targets.
VS2010 uses IntDir as the location for writing log files for
what happens during custom build steps. With no IntDir settings,
all ExternalProject usage within the same CMakeLists.txt file
would result in multiple utility targets all trying to use the
same custom build log files.

With parallel builds, they would try to use them simultaneously
and result in file access errors, preventing the builds from
completing successfully.

Now each utility target has its own IntDir setting, and so, its
own custom build rule log files.
2010-09-13 15:22:15 -04:00
KWSys Robot f3bc219adb KWSys Nightly Date Stamp 2010-09-13 00:10:04 -04:00
KWSys Robot 3665e69bc6 KWSys Nightly Date Stamp 2010-09-12 00:10:03 -04:00
KWSys Robot c36f501a64 KWSys Nightly Date Stamp 2010-09-11 00:10:04 -04:00
David Cole 269a4b876a Enable calling commands with : in argv[1] (#9963)
The solution seems hackish, but it works: for
NMake only, prepend a no-op command before each
real command that begins with ".

This is really a work-around for an NMake problem.
When a command begins with ", nmake truncates the
first argument to the command after the first :
in that arg. It has a parsing problem.

Workaround..., hackish..., but it should solve
the issue for #9963 and its related friends.

Also, modify the CustomCommand test to replicate
the problem reported in issue #9963. Before the
NMake specific code change, the test failed.
Now, it passes. Ahhhhhh.
2010-09-10 17:55:45 -04:00
Brad King 9d21281b7d Fix line-too-long style errors 2010-09-10 14:42:09 -04:00
Brad King 86025d3a38 file(DOWNLOAD): Fix error message formatting
The SetError method automatically starts the message with the name of
the command.  Fix up calls to it so that we get "file DOWNLOAD..."
instead of "file FILE(DOWNLOAD ...".  Also reduce length of long lines
containing these calls.
2010-09-10 14:35:07 -04:00
Brad King 1a0c166a26 Store direct dependencies in solutions for VS >= 8
Since commit bc43b0f2 (Do not link library dependencies in VS solutions,
2009-10-20) CMake disables for VS >= 8 linking of a target to libraries
that happen to be listed as solution-level dependencies.  Therefore we
can list the direct dependencies of each target in the solution file and
let VS handle transitive dependencies automatically.
2010-09-10 09:12:03 -04:00
Brad King f2b4a46677 KWSys: Suppress -Wcast-align warning in MD5.c
The code does contain a cast that increases alignment but only in a
conditional that verifies the input is sufficiently aligned.
2010-09-10 09:00:02 -04:00
KWSys Robot de346204b8 KWSys Nightly Date Stamp 2010-09-10 00:10:08 -04:00
David Cole e79e412e70 VS2010: Honor PROJECT_LABEL target property (#10611) 2010-09-09 16:44:30 -04:00
David Cole 666f328858 Preserve timestamps on files on tar extract.
Conversion to libarchive changed the behavior of
cmake -E tar xzf. This commit fixes that oversight.
2010-09-09 12:57:14 -04:00
David Cole 2eab3b2cbb Revert commit: CMake: quote ':' in Windows NMake Makefiles (#9963) -- it was not the right fix and caused mucho other problemo 2010-09-09 12:40:04 -04:00
KWSys Robot 42dbb43294 KWSys Nightly Date Stamp 2010-09-09 00:10:04 -04:00
David Cole fcbdd3129e CMake: quote ':' in Windows NMake Makefiles (#9963) 2010-09-08 18:50:03 -04:00
Zach Mullen ffda17d9ef We shouldn't ask CDash for its version info until/unless we actually need it. 2010-09-08 15:14:42 -04:00
Brad King b06fb16684 No CMAKE_CONFIGURATION_TYPES in single-config generators (#10202)
Factor out reading of CMAKE_CONFIGURATION_TYPES and CMAKE_BUILD_TYPE
into cmMakefile::GetConfigurations.  Read the former only in
multi-config generators.
2010-09-08 14:54:49 -04:00
Brad King 28edb70a9e Merge topic 'vs-project-groups'
e6ac0aa Add FOLDER target property, for IDEs (#3796)
2010-09-08 11:08:05 -04:00
Brad King 4ea441eaf9 Merge topic 'ImproveFindPackageConfigMode'
5cdfc9c Improve wording of the error message of find_package() in config-mode
4969c3b Improve version notice in the generated message
e8ae504 Add option CONFIG_MODE to FPHSA()
b4b8f96 Don't create an empty element at the end of Foo_CONSIDERED_CONFIGS/VERSIONS
cc955a0 Small cleanup of FindPackageHandleStandardArgs.cmake
0367245 Replace the two vector<string,string> with one vector<struct{string,string}>
130b0e2 Improve error message in Config-mode when no appropriate version was found
dfe9c95 Record all considered Config files and their versions.
2010-09-08 11:07:55 -04:00
Brad King 81fa6bbcc7 Merge topic 'ctest-show-labels'
32242af Added CTest command --print-labels
2010-09-08 11:07:51 -04:00
Brad King c9b0e1da5c Merge topic 'CPack-PreserveSymlinksInInstalledDirs-v2'
013e003 CPack  handle symlinks in CPACK_INSTALLED_DIRECTORIES fix for bug5430
2010-09-08 11:07:38 -04:00
KWSys Robot 711c610314 KWSys Nightly Date Stamp 2010-09-08 00:10:41 -04:00
KWSys Robot 409c936ff4 KWSys Nightly Date Stamp 2010-09-07 00:10:05 -04:00
Bill Hoffman 530ade6677 Fix targets with . in the name for VS 10 IDE. 2010-09-06 12:06:43 -04:00
KWSys Robot 362ba97017 KWSys Nightly Date Stamp 2010-09-06 00:10:03 -04:00
KWSys Robot 20f15c4321 KWSys Nightly Date Stamp 2010-09-05 00:10:34 -04:00
KWSys Robot 8e0de9cc45 KWSys Nightly Date Stamp 2010-09-04 00:10:06 -04:00
David Cole e6ac0aacf6 Add FOLDER target property, for IDEs (#3796)
This work was started from a patch by Thomas Schiffer.
Thanks, Thomas!

See the newly added documentation of the FOLDER target
property for details.

Also added global properties, USE_FOLDERS and
PREDEFINED_TARGETS_FOLDER. See new docs here, too.

By default, the FOLDER target property is used to organize
targets into folders in IDEs that have support for such
organization.

This commit adds "solution folder" support to the Visual
Studio generators. Currently works with versions 7 through
10.

Also, use the new FOLDER property in the ExternalProject
test and in the CMake project itself.
2010-09-03 13:53:22 -04:00
KWSys Robot f68c08e1b4 KWSys Nightly Date Stamp 2010-09-03 00:10:03 -04:00
KWSys Robot f943601640 KWSys Nightly Date Stamp 2010-09-02 00:10:04 -04:00
KWSys Robot 4948536d61 KWSys Nightly Date Stamp 2010-09-01 00:10:30 -04:00
Alex Neundorf 5cdfc9c8ea Improve wording of the error message of find_package() in config-mode
As suggested by Brad, this improves the wording of the error message
in config-mode when config-files were found, but no suitable version.
The patch also contains the small loop-optimization suggested by Brad.

Alex
2010-08-31 21:10:00 +02:00
Brad King 28e073213f Merge topic 'MakeTargetLinkLibrariesComplainWhenNoTargetIsUsed'
6acc71c New CMP0016 for deciding whether an unknown target in TLL() is an error.
da033b1 Remove trailing whitespace
6aef6d8 Just warn in case of a bad target as only argument for t_l_l()
c786635 Make target_link_libraries() complain if bad target name is used
43f96ea Remove trailing whitespace
2010-08-31 14:48:26 -04:00
Brad King 6c155d9e9e Merge topic 'vs-utility-depends'
a99f620 Fix unused parameter warning in VS 7.1 generator
79a88c3 Refactor VS <= 7.1 utility-depends workaround
325bdb2 Factor out duplicate VS target dependency code
6bea843 Factor out global generator ComputeTargetDepends method
2010-08-31 14:38:18 -04:00
Brad King 3913bff986 Merge topic 'vs-platforms'
ef4394d VS: Add ArchitectureId to VS 8 and 9 generators
4fec681 VS: Map /ENTRY linker option to EntryPointSymbol
be49129 VS: Add more TargetMachine option values
807fca4 VS: Convert PlatformName member to a virtual method
2010-08-31 14:37:16 -04:00
Brad King 1976c45a3c Merge topic 'intra-component-dependencies'
adb58d5 Honor strong intra-component target dependencies
681cf01 Distinguish "strong" and "weak" target dependency edges
7be2617 Split notion of node lists and edge lists
2010-08-31 14:36:50 -04:00
Brad King d2a65b5f40 Merge topic 'target-dependencies-const'
95b3bb5 Restore GetTargetDirectDepends const return
2010-08-31 14:36:01 -04:00
Brad King 39da06e8fa Merge topic 'FindPackageLogVersion'
88e6447 Add macro ADD_FEATURE_INFO() and improve docs.
b353524 Improve wording of the documentation.
6fc88b2 Improve documentation.
3333878 Log the required package version and major improvement to FeatureSummary
2010-08-31 14:35:46 -04:00
Brad King 776a50e175 Merge topic 'partial-fix-10743'
9e62ac0 Improve documentation of OPTION command.
2010-08-31 14:26:12 -04:00
Brad King 65fa0f0235 Merge topic 'CPackArchiveGenerator-ComponentSupport'
a986daf CPack fix broken compilation for CygwinSource generator
873e99a CPackArchiveGenerator improve usability and robustness
654683a CPackArchiveGenerator  add component supports
36a550a CPackArchiveGenerator  use cmArchiveWrite wrapper
2010-08-31 14:24:32 -04:00
Brad King f95074ba70 Merge topic 'CPack-FixDESTDIR-Issue7000'
3178767 Merge 'CPack-FixDESTDIR-Issue7000' from github.com:TheErk/CMake
6a521f8 CPack   Enable better handling of absolute installed files
40dc97d CPack   Backward-compatibly enforce DESTDIR for DEB and RPM
2010-08-31 14:22:59 -04:00
Brad King f670c1c609 Merge topic 'install-export-docs'
63fbb2f Clarify install(TARGETS) docs for EXPORT option
2010-08-31 14:19:32 -04:00
Zach Mullen 32242affea Added CTest command --print-labels
This command allows a user to quickly see the list of all available
test labels.  The labels are also printed in verbose show only mode,
alongside their corresponding tests.
2010-08-31 10:41:23 -04:00
KWSys Robot 81a76fedd7 KWSys Nightly Date Stamp 2010-08-31 00:10:10 -04:00
KWSys Robot aac1680648 KWSys Nightly Date Stamp 2010-08-30 00:10:03 -04:00
Alex Neundorf b4b8f96391 Don't create an empty element at the end of Foo_CONSIDERED_CONFIGS/VERSIONS
Alex
2010-08-29 19:50:51 +02:00
Alex Neundorf 0367245f0c Replace the two vector<string,string> with one vector<struct{string,string}>
Before this patch there were two separate vectors, and the code made sure
they always had the same size.
With this patch the code doesn't have to ensure this anymore, there is only
one vector now.

Alex
2010-08-29 17:51:44 +02:00
Alex Neundorf 130b0e2195 Improve error message in Config-mode when no appropriate version was found
If in config-mode config files have been found by find_package(), but their
version didn't match the requested version, now all considered files
and their versions are printed (instead of saying "didn't find config file)

Alex
2010-08-29 17:43:45 +02:00
Alex Neundorf dfe9c95129 Record all considered Config files and their versions.
As suggested on cmake-devel, find_package in Config-mode now records
all considered config-files and their versions in
<package>_CONSIDERED_CONFIGS and <package>_CONSIDERED_VERSIONS respectively.

Alex
2010-08-29 17:07:39 +02:00
KWSys Robot fd141a0b70 KWSys Nightly Date Stamp 2010-08-29 00:10:37 -04:00
Eric NOULARD 013e0039ee CPack handle symlinks in CPACK_INSTALLED_DIRECTORIES fix for bug5430
The proposed solution is to avoid to CopyIfDifferent any links
found in CPACK_INSTALLED_DIRECTORIES but memorize them instead
then at the end of the processing for each dir do re-create the
link in the installed tree.
Current patch should work if the link are "local" to the directory.
2010-08-28 16:50:06 +02:00
Alex Neundorf 6acc71c09d New CMP0016 for deciding whether an unknown target in TLL() is an error.
When set to OLD, target_link_libraries() silently accepts if it is called
with only one argument and this one argument is not a target.
When set to NEW, this is an error. By default it is a warning now.

Alex
2010-08-28 16:06:45 +02:00
Alex Neundorf da033b10d2 Remove trailing whitespace
Alex
2010-08-28 16:01:49 +02:00
KWSys Robot 216aa24d92 KWSys Nightly Date Stamp 2010-08-28 00:10:03 -04:00
Brad King 735a8c26d7 KWSys: Use SplitPath in GetActualCaseForPath
Avoid using the old SplitString method in favor of the more robust
SplitPath method.
2010-08-27 10:50:02 -04:00
Brad King 3bf1869c93 KWSys: Improve SplitPath method documentation
Document explicitly that the first component always exists.  Fix the
documentation of SplitPathRootComponent to note that home directory
roots (~/ and ~u/) always have a trailing slash.
2010-08-27 10:20:02 -04:00
Brad King 4746365e03 KWSys: Avoid empty string dereference in SplitString 2010-08-27 10:10:02 -04:00
Brad King a99f620834 Fix unused parameter warning in VS 7.1 generator
The cmGlobalVisualStudio71Generator::WriteProjectDepends method no
longer uses its 'dspname' parameter.  Leave off the name to avoid the
unused parameter warning.  Later we should refactor the method to avoid
passing the argument altogether.
2010-08-27 09:56:00 -04:00
KWSys Robot d8ccd1760c KWSys Nightly Date Stamp 2010-08-27 00:10:03 -04:00
Patrick Gansterer ef4394defa VS: Add ArchitectureId to VS 8 and 9 generators
Avoid duplicate architecture string literals.
2010-08-26 16:39:01 -04:00
Patrick Gansterer 4fec681fa7 VS: Map /ENTRY linker option to EntryPointSymbol 2010-08-26 16:38:42 -04:00
Alex Neundorf 6aef6d84d7 Just warn in case of a bad target as only argument for t_l_l()
As discussed on cmake-devel, if target_link_libraries() is called with
only one argument, and this one argument is not a valid target, just
print a warning but don't fail, since otherwise probably some existing
code somewhere might stop building.

Alex
2010-08-26 21:54:43 +02:00
Alex Neundorf c786635149 Make target_link_libraries() complain if bad target name is used
target_link_libraries() did not complain if there was only one argument,
and this one (first) argument wasn't a valid target name, e.g.

add_executable(hello main.cpp)
target_link_libraries(-static-intel)

Here the target "hello" was forgotten in the tll() call, but cmake didn't
complain. With this commit it does.

Alex
2010-08-26 21:02:40 +02:00
Alex Neundorf 43f96eaf93 Remove trailing whitespace
Alex
2010-08-26 21:01:58 +02:00
KWSys Robot 737261785a KWSys Nightly Date Stamp 2010-08-26 00:10:20 -04:00
Brad King adb58d5e36 Honor strong intra-component target dependencies
Strong dependencies (created by add_dependencies) must be honored when
linearizing a strongly-connected component of the target dependency
graph.  The initial graph edges have strong/weak labels and can contain
cycles that do not consist exclusively of strong edges.  The final graph
never contains cycles so all edges can be strong.
2010-08-25 17:14:13 -04:00
Brad King 681cf011dd Distinguish "strong" and "weak" target dependency edges
Utility dependencies are "strong" because they must be enforced to
generate a working build.  Link dependencies are "weak" because they can
be broken in the case of a static library cycle.
2010-08-25 17:10:00 -04:00
Brad King 7be2617b5a Split notion of node lists and edge lists 2010-08-25 17:10:00 -04:00
Brad King 95b3bb5dbc Restore GetTargetDirectDepends const return
The returned set should never be modified.  Restore 'const' correctness
unnecessarily removed by commit 6903d2df (remove const, 2008-01-30).
2010-08-25 17:05:01 -04:00
David Cole 9e62ac0b40 Improve documentation of OPTION command.
Point via see also phrasing to the CMakeDependentOption module.
2010-08-25 15:23:18 -04:00
Eric NOULARD a986dafd7f CPack fix broken compilation for CygwinSource generator 2010-08-25 11:04:49 +02:00
KWSys Robot c4f7034efb KWSys Nightly Date Stamp 2010-08-25 00:10:25 -04:00
Brad King 79a88c35f8 Refactor VS <= 7.1 utility-depends workaround
Commit 438a7e2f (Fix utility dependencies for static libraries in VS
generators, 2007-04-04) implemented utility-only dependencies between
linkable targets by introducing an intermediate non-linkable target.
We convert a dependency of the form

  foo -> bar

to the form

  foo -> bar_UTILITY -> bar

to prevent foo from including bar on its link line.  Previously we added
the extra "_UTILITY" targets explicitly among the project targets before
dependency analysis was performed.  Now we generate them separately at
the last moment so that cmGlobalGenerator need not be aware of them.
2010-08-24 18:47:56 -04:00
Brad King 325bdb2a92 Factor out duplicate VS target dependency code
Compute VS target dependencies in cmGlobalVisualStudioGenerator when the
main global dependency analysis is done.  Use these results in each of
the VS generators instead of duplicating the analysis.
2010-08-24 18:39:36 -04:00
Brad King 6bea84353c Factor out global generator ComputeTargetDepends method
Put the global dependency analysis in its own method so individual
generators can hook into this point.
2010-08-24 18:12:44 -04:00
Patrick Gansterer be491298d4 VS: Add more TargetMachine option values 2010-08-24 17:38:00 -04:00
Patrick Gansterer 807fca4ce6 VS: Convert PlatformName member to a virtual method 2010-08-24 17:36:09 -04:00
Eric NOULARD 3178767d5f Merge 'CPack-FixDESTDIR-Issue7000' from github.com:TheErk/CMake 2010-08-24 21:59:13 +02:00
Eric NOULARD 873e99a27d CPackArchiveGenerator improve usability and robustness
Handle the "no group defined" case
Implement the idea from Rolf Eike Beer to have a single
var CPACK_COMPONENTS_GROUPING with several values
2010-08-24 21:42:54 +02:00
Eric NOULARD 654683adc7 CPackArchiveGenerator add component supports 2010-08-24 21:42:21 +02:00
Eric NOULARD 36a550ae7a CPackArchiveGenerator use cmArchiveWrite wrapper 2010-08-24 21:41:32 +02:00
Alex Neundorf 33338781db Log the required package version and major improvement to FeatureSummary
find_package() now also stores the required version automatically, so it
can be used by FeatureSummary.cmake.
This was one of the requested features for setting up nightly builds
for KDE, since with this functionality it will be possible to write
a file at the end of each project which lists all required packages
and their versions. This file could then be compared for equality
with an older one and if something has changed the build maintainer
can be emailed.

In FeatureSummary.cmake there is now a new function feature_summary(),
which also allows to print the log to a file or into a variable.
It also allows to specify whether to append to a file or to write a new
one, and what information to log.

Docs are still missing.

Alex
2010-08-24 21:24:54 +02:00
Brad King 70f3b06b7c Merge topic 'vs2010-dbginfo-default'
e234122 VS2010: Disable PDBs when there is no debug info
2010-08-24 14:42:31 -04:00
Brad King 63fbb2f67e Clarify install(TARGETS) docs for EXPORT option
Explicitly state that a call to install(EXPORT) is also needed.
2010-08-24 10:53:19 -04:00
KWSys Robot 888f61e6e3 KWSys Nightly Date Stamp 2010-08-24 00:10:03 -04:00
Eric NOULARD 6a521f8604 CPack Enable better handling of absolute installed files
The idea of the patch is to let the install generator define
CPACK_ABSOLUTE_INSTALL_FILES then when CMake is installing
project he will concatenate the list of files and give
it to specific CPack Generator by defining CPACK_ABSOLUTE_INSTALL_FILES
to be the list of ALL files that were installed using absolute destination.
An example of use has been applied to RPM generator which now
tries to automatically build a relocatable package.
2010-08-23 17:38:33 +02:00
Eric NOULARD 40dc97dc73 CPack Backward-compatibly enforce DESTDIR for DEB and RPM 2010-08-23 16:14:40 +02:00
KWSys Robot 9b82ecae42 KWSys Nightly Date Stamp 2010-08-23 00:10:27 -04:00
KWSys Robot b718597b8b KWSys Nightly Date Stamp 2010-08-22 00:10:03 -04:00
KWSys Robot e8fca4e247 KWSys Nightly Date Stamp 2010-08-21 00:10:23 -04:00
KWSys Robot e752cff8fd KWSys Nightly Date Stamp 2010-08-20 00:10:30 -04:00
Brad King c873a83b6c Merge topic 'remove-EscapeSpaces'
cb9ea26 Remove cmSystemTools::EscapeSpaces method
5383657 CTest: Avoid use of old EscapeSpaces method
2010-08-19 13:28:50 -04:00
Brad King 9b02aee86e Merge topic 'fix-cdash-version-uri'
7dbc1a2 Fix hard-coded CDash URI in version query
2010-08-19 13:28:08 -04:00
Robert Goulet e234122693 VS2010: Disable PDBs when there is no debug info
When none of the options /Z7, /Zi and /ZI are specified in the cmake
project settings, the project will open in the editor with "Program
Database" as the default debug information format, ending up always
generating PDBs regardless of project configuration.

Modify the output project file so that if the debug information format
is not specified in the cmake project settings it will default to no PDB
generated, just like all the previous other Visual Studio versions.
This problem comes from the fact that Microsoft changed the default
setting of the debug information format to be "Program Database" instead
of "Disabled".
2010-08-19 09:21:54 -04:00
KWSys Robot b29cd51147 KWSys Nightly Date Stamp 2010-08-19 00:10:04 -04:00
Brad King cb9ea2647f Remove cmSystemTools::EscapeSpaces method
The last remaining call to this method exists only for compatibility.
Remove the method and put its implementation inline in place of the last
call.
2010-08-18 10:26:05 -04:00
Brad King 5383657357 CTest: Avoid use of old EscapeSpaces method
Refactor how cmCTestMemCheckHandler computes the memory tester command
line options to avoid encoding them in a single string just to parse
them again.  The EscapeSpaces uses backslahes to escape spaces on UNIX
platforms, so replace other calls to it in CTest that are used to create
human-readable strings with simple double-quoting.
2010-08-18 10:14:09 -04:00
Zach Mullen 7dbc1a2ebd Fix hard-coded CDash URI in version query 2010-08-18 09:58:27 -04:00
KWSys Robot a3d796b906 KWSys Nightly Date Stamp 2010-08-18 00:10:05 -04:00
Brad King ab90916638 Merge topic 'libarchive-wrapper'
fb41da4 Add Compress compress support to libarchive-wrapper
1a3ad5c Add XZ compress support to libarchive-wrapper
b50c159 Add ZIP archive format and LZMA compress support to libarchive-wrapper
4663356 cmArchiveWrite: Fix signed/unsigned again
2010-08-17 15:20:32 -04:00
Brad King 465f4dd5a2 Merge topic 'tg/find-ignore-path'
1221581 Teach find_* commands to ignore some paths
2010-08-17 15:13:40 -04:00
Brad King cc2ba7f9c2 Merge topic 'CPack-APIredesign'
bd510fe CPack: Avoid member shadowing after API refactor (part2)
31a313d CPack: Avoid member shadowing after API refactor
cd7b8a0 CPack: Refactor API in order to handle multi-file packages
2010-08-17 15:12:42 -04:00
KWSys Robot f4ce315301 KWSys Nightly Date Stamp 2010-08-17 00:10:04 -04:00
Eric NOULARD fb41da4a6b Add Compress compress support to libarchive-wrapper 2010-08-16 20:45:05 +02:00
Brad King 0f5189d144 KWSys: Fix GetActualCaseForPath for UNC paths
See issue #11023.

Author: Clinton Stimpson <clinton@elemtech.com>
2010-08-16 10:00:02 -04:00
Brad King 0a21abd690 KWSys: Fix SplitPath for leading '\' on Windows
Windows paths may begin with a single backslash when the drive letter is
omitted.  Recognize this as a root path component.
2010-08-16 09:10:03 -04:00
KWSys Robot 78474d9f24 KWSys Nightly Date Stamp 2010-08-16 00:10:02 -04:00
KWSys Robot b0d03c9953 KWSys Nightly Date Stamp 2010-08-15 00:10:03 -04:00
KWSys Robot 16168ab0c3 KWSys Nightly Date Stamp 2010-08-14 00:10:02 -04:00
Todd Gamblin 1221581aa8 Teach find_* commands to ignore some paths
Add platform configuration variable CMAKE_SYSTEM_IGNORE_PATH and user
configuration variable CMAKE_IGNORE_PATH.  These specify a set of
directories that will be ignored by all the find commands.  Update
FindPackageTest so that several cases will fail without a functioning
CMAKE_IGNORE_PATH.
2010-08-13 11:53:28 -04:00
Eric NOULARD 1a3ad5c615 Add XZ compress support to libarchive-wrapper
This is not needed but it does not cost much to do it for all
potentially supported format in libarchive. XZ and LZMA are not
builtin libarchive and require external lib but if
CMAKE_USE_SYSTEM_LIBARCHIVE is ON then we may get it for free.
2010-08-13 17:51:27 +02:00
Eric NOULARD b50c15915a Add ZIP archive format and LZMA compress support to libarchive-wrapper
This will be needed to use cmArchiveWrire in cmCPackArchiveGenerator
with the same feature set as before. Note that adding zip
support to libarchive-wrapper would also makes it easy to add
a new -E zip command to cmake commands.
2010-08-13 17:49:47 +02:00
KWSys Robot 34f773ccfe KWSys Nightly Date Stamp 2010-08-13 00:10:15 -04:00
Eric NOULARD bd510fe4ea CPack: Avoid member shadowing after API refactor (part2)
After converting method arguments to members we need to avoid use of the
same names as local variables and other method arguments. One more fix.
2010-08-12 20:18:46 +02:00
KWSys Robot 7b632e5ac6 KWSys Nightly Date Stamp 2010-08-12 00:10:13 -04:00
Brad King 31a313d470 CPack: Avoid member shadowing after API refactor
After converting method arguments to members we need to avoid use of the
same names as local variables and other method arguments.
2010-08-11 16:17:09 -04:00
Eric NOULARD cd7b8a03f5 CPack: Refactor API in order to handle multi-file packages
The multi-argument CompressFiles(...) method has been replace by the
no-argument PackageFiles() method and 3 more member variables.  This
will enable implemention of multi-package generators.  Now each specific
generator (which overloads PackageFiles()) may decide to change the name
and/or the number of generated package files.
2010-08-11 14:09:52 -04:00
Brad King 4663356079 cmArchiveWrite: Fix signed/unsigned again
Some stream libraries return size_t from gcount() and some return
ssize_t.  Add an explicit cast to ios::streamsize for its return value.
Also refactor use of nnext to reduce the use of casts.
2010-08-11 09:47:04 -04:00
KWSys Robot 39886c405a KWSys Nightly Date Stamp 2010-08-11 00:10:22 -04:00
Brad King 6d85679551 Merge topic 'libarchive-wrapper'
aef6723 cmArchiveWrite: Fix signed/unsigned compare/convert
1b5b2ed Include entries for directories in tarballs (#11020)
c7c9009 Create class cmArchiveWrite to wrap libarchive (#11020)
ac26737 Merge branch 'system-libarchive-include' into libarchive-wrapper
3296e6a Include headers from chosen libarchive (#10923)
2010-08-10 14:35:41 -04:00
KWSys Robot 4308336552 KWSys Nightly Date Stamp 2010-08-10 00:10:03 -04:00
Brad King aef672311a cmArchiveWrite: Fix signed/unsigned compare/convert
The libarchive interface accepts size_t but returns ssize_t.  The std
streams interface wants streamsize, which is typically ssize_t.  Since
no one type for our variable matches without conversions, make the
conversions explicit to avoid -Wsign-conversion and -Wsign-compare
warnings.
2010-08-09 10:43:03 -04:00
KWSys Robot c9c4962896 KWSys Nightly Date Stamp 2010-08-09 00:10:02 -04:00
KWSys Robot 43e94787ce KWSys Nightly Date Stamp 2010-08-08 00:10:03 -04:00
KWSys Robot fd69b3310d KWSys Nightly Date Stamp 2010-08-07 00:10:07 -04:00
Brad King 1b5b2ed3b2 Include entries for directories in tarballs (#11020)
Use libarchive through class cmArchiveWrite to implement the method
cmSystemTools::CreateTar.  The class includes entries for directories by
automatically traversing the tree on disk.
2010-08-06 11:38:14 -04:00
Brad King c7c90095d4 Create class cmArchiveWrite to wrap libarchive (#11020) 2010-08-06 11:38:05 -04:00
KWSys Robot 7c20f7b244 KWSys Nightly Date Stamp 2010-08-06 00:10:03 -04:00
Brad King ac267371e6 Merge branch 'system-libarchive-include' into libarchive-wrapper 2010-08-05 17:12:42 -04:00
Brad King 3296e6ad90 Include headers from chosen libarchive (#10923)
When CMAKE_USE_SYSTEM_LIBARCHIVE is on we must include the system
libarchive headers to match the library that will be linked.
2010-08-05 17:06:10 -04:00
KWSys Robot 00893669e5 KWSys Nightly Date Stamp 2010-08-05 00:10:03 -04:00
KWSys Robot a42a44a5ac KWSys Nightly Date Stamp 2010-08-04 00:10:25 -04:00
Brad King 08c5e475ab Merge topic 'fix-cmake-self-references'
df1e00f Refer to self with CMake_(SOURCE|BINARY)_DIR (#10046)
2010-08-03 16:15:03 -04:00
Brad King 1820a05cb2 Merge topic 'CPackDEB-auto-dependency-support'
ded3a15 CPackDeb  optionally generates auto-dependency list part fix of bug 10292
2010-08-03 16:12:37 -04:00
Brad King d00d71e6cf Merge topic 'CPackDEB-wrong-install-size'
5495a6d CPackDEB:  merge wrong installed size patch. see bugs 10296 (and 10292)
2010-08-03 16:12:18 -04:00
Brad King e6067ca969 Merge topic 'ctest-git-flexibility'
a7319cf ctest_update: Run 'git submodule' at top level
7bf8dc1 ctest_update: Support ".git file" work trees
65cb72f ctest_update: Abort if Git FETCH_HEAD has no candidates
2010-08-03 16:07:31 -04:00
KWSys Robot 8342eacda7 KWSys Nightly Date Stamp 2010-08-03 00:10:03 -04:00
KWSys Robot de8cc71e13 KWSys Nightly Date Stamp 2010-08-02 00:10:13 -04:00