Commit Graph

12690 Commits

Author SHA1 Message Date
Brad King 45c2f93240 Simplify cmMakefileTargetGenerator using cmGeneratorTarget
Replace the classification of source files in this generator
using that computed by cmGeneratorTarget.
2012-03-09 15:16:02 -05:00
Brad King 4b24558091 Create a cmGeneratorTarget for each cmTarget during generation
Construct the instances after the final set of targets is known but
before computing inter-target dependencies.  This order will allow
initialization of cmGeneratorTarget instances to adjust and finalize
declared inter-target dependencies.
2012-03-09 15:16:02 -05:00
Brad King 11d9b21126 Add cmGeneratorTarget to represent a target during generation
Some per-target information and logic is common to all generators.
Some of that information is currently stored in cmTarget but that
should be reserved for the configure step.  Create a class to hold
per-target information for generators.  On construction classify
sources from the target and store them in separate members.  This
classification is already implemented separately in each generator.
2012-03-09 15:16:02 -05:00
Brad King 51b67366ed Merge branch 'cleanup-object-file-names' into object-library 2012-03-09 15:15:37 -05:00
Bill Hoffman d40eebd89d Ninja: Add a cache option CMAKE_ENABLE_NINJA to enable the ninja generator.
Make the option default to on, for platforms where CMake passes
all tests with the ninja generator.  This is currently only Linux.
2012-03-09 14:28:21 -05:00
David Cole 05a76d53c0 CPack: Fix retry logic when calls to hdiutil fail
The long-standing sporadic failures of CPack tests on the Mac dashboards
are caused by an occasional problem running hdiutil. To compensate for
this, a retry loop was added in the code in a previous commit: a9fa71a4
... but the logic for breaking out of the retry loop was flawed, breaking
out of the loop (and not retrying) when the hdiutil command returns an
error instead of when it returns success.

This commit fixes the flawed logic, bumps up the number of retries from
4 to 10, and adds a half-second delay in between retries.

The delay is specifically added in case a virus checker or spotlight indexer
is temporarily causing the hdiutil failure by hanging onto a newly created
file longer than hdiutil expects it to.

As with all sporadically occurring issues, we'll never know if this is
really fixed all the way. But I'll be happy even if we can only get it to
happen just a bit less often.
2012-03-09 11:39:01 -05:00
Alexandru Ciobanu ea4416cf7b CTest: Match valgrind errors with "points to" (#12922)
Teach CTest to match valgrind errors of the format
"Syscall param ... points to uninitialised byte(s)".
2012-03-09 09:32:28 -05:00
Alexandru Ciobanu c7da50da52 CTest: Detect Xcode error "Command ... failed with exit code" 2012-03-09 07:59:56 -05:00
KWSys Robot c7bdef5b48 KWSys Nightly Date Stamp 2012-03-09 00:05:04 -05:00
David Cole 4693cf8492 Xcode: Detect new default locations of Xcode 4.3 bits and pieces (#12621)
Xcode 4.3 installs into "/Applications" by default, from the Mac App Store.

Also, the paths to the available SDKs changed: they are now within the
Xcode.app bundle.

PackageMaker is installed as a separate program, and may be installed
anywhere. It is not installed with Xcode 4.3 by default anymore.
Download the "Auxiliary Tools for Xcode" to get PackageMaker.
Put PackageMaker inside the Xcode.app bundle, in its nested Applications
folder, or put it alongside Xcode in "/Applications" and CMake will find
it.

Update references to "find" paths: add new possible locations for finding
Xcode.app and PackageMaker.app. Prefer the most recent version's locations
first, but keep the old locations as fallback search paths, too.

Thanks to all the contributors who provided and tested out various patches
for fixing this issue. Especially, but by no means limited to:
Francisco Requena Espí, Jamie Kirkpatrick and drfrogsplat.
2012-03-08 22:43:19 -05:00
David Cole fa0f065426 Merge topic 'find_package_fatal_error_if_required_and_config_not_found'
c5ae733 find_package: Test that REQUIRED aborts processing correctly
c91a54d find_package: error out if REQUIRED Config has not been found
2012-03-08 15:14:23 -05:00
David Cole da43d8fa8d Merge topic 'MakingConfigFilesEasier_ConfigureMacro'
6973e2d wrap write_basic_config_version_file as write_basic_package_version_file()
204f5d4 add CMakePackageConfigHelpers: configure_package_config_file()
2012-03-08 15:14:12 -05:00
David Cole f55119e63b Merge topic 'fix-12189-support-SBCS-in-VS'
b28e7fa VS6: Avoid SBCS test on VS6 (#12189)
df19b9c VS6: Avoid _MBCS define when _SBCS is defined (#12189)
ba89e92 Visual Studio: Allow setting Single Byte Character Set (#12189)
2012-03-08 15:14:03 -05:00
David Cole 9cdd989667 Merge topic 'fixCPackDocTypo'
b0cb29b Fix some typos in CPACK_SET_DESTDIR doc
2012-03-08 15:13:39 -05:00
David Cole 580171185b Merge topic 'target-include-directories'
d662dff Fix shadowed variable warning on dashboard results
f66e735 Fix compiler warning reported on older Borland dashboard.
d90eed4 Fix compiler error reported on older Borland dashboard.
8233636 Update the documentation regarding INCLUDE_DIRECTORIES.
d899eb7 Call ExpandVariablesInString for each target's INCLUDE_DIRECTORIES
c21db87 Make search paths ordered and unique
22021f0 Remove cmMakefile::GetIncludeDirectories
9106b56 Extract and use the INCLUDE_DIRECTORIES target properties.
840509b Keep the INCLUDE_DIRECTORIES target property up to date.
a4d5f7b Add API to get the ordered includes for a target.
8adaee2 CMake: Eliminate cmMakefile::IncludeDirectories
7620932 Remove include flags memoization.
97a5faa Make it safe to call this method without creating duplicates.
edd5303 Refactor GetIncludeFlags to take includes instead of fetching them
2012-03-08 15:13:15 -05:00
Brad King 0996f2a228 Hide Makefile local object info inside local generator
Make cmLocalUnixMakefileGenerator3::LocalObjectInfo private and add
cmLocalUnixMakefileGenerator3::AddLocalObjectFile to create entries.
2012-03-08 07:58:52 -05:00
KWSys Robot 3a36fa9971 KWSys Nightly Date Stamp 2012-03-08 00:05:06 -05:00
David Cole 8c634330db Ninja: Add friend struct so it can access the private ConvertToNinjaPath.
The HP aCC compiler is apparently more strict than all our other
dashboard compilers with respect to complaining about this.
2012-03-07 16:24:34 -05:00
Peter Kuemmel dbe3dce546 Ninja: add .def file support 2012-03-07 16:24:34 -05:00
Peter Kuemmel f1bb08f55b Ninja: ensure the output dir exists at compile time 2012-03-07 16:24:33 -05:00
Alex Neundorf 6973e2d5a8 wrap write_basic_config_version_file as write_basic_package_version_file()
So the name fits better with configure_package_config_file(), as
discussed on the mailing list. Adapt the documentation accordingly.

Alex
2012-03-07 11:23:18 -05:00
KWSys Robot 285f0db9f4 KWSys Nightly Date Stamp 2012-03-07 00:05:05 -05:00
David Cole 50f9db9b00 Merge topic 'skip-install-rpath'
635bf50 Add an option to skip RPATH during installation.
2012-03-06 15:27:54 -05:00
David Cole e872b0d2b8 Merge topic 'win32_executable-and-macosx_bundle-initializers'
761c146 Add default initializers for WIN32_EXECUTABLE and MACOSX_BUNDLE
2012-03-06 15:27:44 -05:00
David Cole 7fbd323f80 Merge topic 'remove-unused-members'
aef248a Remove cmExprParserHelper::SetLineFile()
e266571 Remove UnionsAvailable member from 2 classes
2012-03-06 15:27:08 -05:00
David Cole 480ba64343 Merge topic 'rename-used-commands'
89403bf Rename UsedCommands to FinalPassCommands
2012-03-06 15:24:40 -05:00
Eric NOULARD b0cb29bb06 Fix some typos in CPACK_SET_DESTDIR doc 2012-03-06 21:23:11 +01:00
Alex Neundorf c91a54db37 find_package: error out if REQUIRED Config has not been found
If in Config mode a configuration file could not be found, cmake printed
an error, but did not actually stop processing. With SetFatalErrorOccured
it does.

Alex
2012-03-06 21:16:24 +01:00
Brad King 67734be8cf VS: Simplify object name computation
Simplify cmLocalVisualStudioGenerator::ComputeObjectNameRequirements to
loop over the original vector of source files instead of recursively
traversing source groups just to find the same files.  Drop from
cmVisualStudio10TargetGenerator::ComputeObjectNames temporary source
group calculation now that it is not needed for computing object names.
2012-03-06 13:30:19 -05:00
Brad King 4ae7f3656b Remove unused partial OBJECT_FILES property implementation
Remove partial implementation added by commit ca0230a3 (check in initial
conv library stuff, 2007-02-16) since it was never finished.  It does
not make sense for multi-configuration generators since no specific
build configuration is processed at CMake time.
2012-03-06 13:20:17 -05:00
KWSys Robot ec50093be7 KWSys Nightly Date Stamp 2012-03-06 00:05:18 -05:00
Stephen Kelly 635bf50c27 Add an option to skip RPATH during installation. 2012-03-05 22:24:57 +01:00
Stephen Kelly 761c146a4c Add default initializers for WIN32_EXECUTABLE and MACOSX_BUNDLE
This allows downstreams to use

set(CMAKE_WIN32_EXECUTABLE ON)
set(CMAKE_MACOSX_BUNDLE ON)

to create executables with the WIN32_EXECUTABLE and MACOSX_BUNDLE
properties set on by default.
2012-03-05 15:50:55 +01:00
KWSys Robot 17a099dd13 KWSys Nightly Date Stamp 2012-03-05 00:05:06 -05:00
KWSys Robot 76bff60292 KWSys Nightly Date Stamp 2012-03-04 00:05:09 -05:00
Konstantin Tokarev a90d47890f [OSX] Fixed undefined symbol when linking CMakeLib into shared library 2012-03-03 19:33:35 +04:00
Yury G. Kudryashov aef248a4ff Remove cmExprParserHelper::SetLineFile() 2012-03-03 15:11:09 +04:00
Yury G. Kudryashov e26657103f Remove UnionsAvailable member from 2 classes
These classes were copied from cmDependsJavaParserHelper that really needs this
member.
2012-03-03 15:11:08 +04:00
KWSys Robot ac2979e4b3 KWSys Nightly Date Stamp 2012-03-03 00:05:08 -05:00
David Cole 5012787c3c Merge topic 'while-testing'
944b90b add testcases for while()/endwhile() errors
f605b92 improve error message on a stray "endwhile()"
2012-03-02 11:50:54 -05:00
David Cole 5d9c535f31 Merge topic 'doxygen-fixes'
09ff226 Merge branch 'add-const-qualifiers' into doxygen-fixes
31ab25c doxygen: MathCommand is not about string operators
486033a doxygen: review cmake.h
937bb4b doxygen: remove a few comments
4774590 doxygen: fix some comments in cmPolicies.h
4a48be3 doxygen: Small fixes in cmake.h apidocs
1e5b971 doxygen: Use proper syntax to document enum
54ab11c doxygen: Improve API docs of GetRealDependency
80072d4 doxygen: cmPropertyDefinition
2012-03-02 11:50:26 -05:00
David Cole e4382180fc Merge topic 'add-const-qualifiers'
737c49a Add 'const' qualifier to some cmCommand members
261491f cmPropertyDefinition::IsChained is const
2012-03-02 11:50:07 -05:00
David Cole 1073d50508 Merge topic 'inject_code_via_variable'
2557a08 Fix typo in error message, and remove redundent test.
9090572 Add ability to include a file in a project via a cache variable.
2012-03-02 11:49:35 -05:00
David Cole 20446079ee Merge topic 'run-vim-spellcheck'
43d6011 Run vim spellcheck on some files
2012-03-02 11:49:23 -05:00
David Cole af87e8abb0 Merge topic 'dragndrop-sla'
5663e43 DragNDrop: Fix problem with relocated files in Xcode 4.3
2012-03-02 11:48:55 -05:00
David Cole 0ee7b8ea03 Merge topic 'find_package-improve-messages'
eeaaffc find_package: Test error and warning messages in failure cases
52dffb9 Merge branch 'test-CMakeCommands' into find_package-improve-messages
d365104 find_package: Optionally warn when implicitly using Config mode
31ead5f find_package: Reject mixed use of MODULE- and CONFIG-only options
6d83083 find_package: mention requested version number in error message
9c39bbd find_package: add CONFIG mode keyword alias for NO_MODULE
f310f67 find_package: add MODULE mode to use only Find-modules
7d67dcf find_package: improve error message when no Find module is present
978d89b find_package: rename NoModule to UseFindModules
2012-03-02 11:48:38 -05:00
David Cole 2fb1df42a2 Merge topic 'find_package-report-CONFIGS-error'
b3f9fe4 find_package: print error if an invalid CONFIGS name is used
2012-03-02 11:48:09 -05:00
David Cole 881dc35579 Merge topic 'factor-install-type'
573fa3b Factor cmInstallType out of cmTarget::TargetType
2012-03-02 11:47:42 -05:00
David Cole 6ed36e7b88 Merge topic 'simplify-GetRealDependency'
4f6fd96 Drop if(...) check because condition is always true
2012-03-02 11:47:21 -05:00
David Cole e8aa0401c8 Merge topic 'fix-BORLAND-doc-typo'
a5edfc4 Fix typo in documentation
2012-03-02 11:46:51 -05:00
David Cole c79a57b0ac Merge topic 'CPack-updateCommonDoc'
6ad0f04 Update CPackConfig template.
94a2693 Review and update CPack variable documentation.
2012-03-02 11:46:23 -05:00
David Cole aba1c1aa3b Merge topic 'fix-macos-findprogramm-crash'
0d2f5c8 Fix crash if app bundle executeable couldn't be found
2012-03-02 11:45:48 -05:00
KWSys Robot 65dfe9e5be KWSys Nightly Date Stamp 2012-03-02 00:05:05 -05:00
Rolf Eike Beer f605b92dec improve error message on a stray "endwhile()" 2012-03-01 21:20:48 +01:00
Brad King 09ff226e4c Merge branch 'add-const-qualifiers' into doxygen-fixes
Conflicts:
	Source/cmPropertyDefinition.h
2012-03-01 10:40:21 -05:00
KWSys Robot 3d8028841d KWSys Nightly Date Stamp 2012-03-01 00:05:06 -05:00
Bill Hoffman 2557a08054 Fix typo in error message, and remove redundent test. 2012-02-29 22:28:06 -05:00
Yury G. Kudryashov 31ab25c0c9 doxygen: MathCommand is not about string operators 2012-03-01 02:33:13 +04:00
Yury G. Kudryashov 486033aef3 doxygen: review cmake.h
* Move top-level comment to class apidocs
* Remove misleading comment
2012-03-01 02:33:13 +04:00
Yury G. Kudryashov 937bb4bebf doxygen: remove a few comments
These comments were either wrong or non-informative.
Replace some of them by brief comments
2012-03-01 02:33:13 +04:00
Yury G. Kudryashov 477459010f doxygen: fix some comments in cmPolicies.h 2012-03-01 02:33:12 +04:00
Yury G. Kudryashov 43d60114a5 Run vim spellcheck on some files 2012-02-29 14:07:50 -05:00
Yury G. Kudryashov 737c49a357 Add 'const' qualifier to some cmCommand members
Use const_cast for the special case in cmFindBase where
GetFullDocumentation calls GenerateDocumentation.
2012-02-29 13:27:04 -05:00
Clinton Stimpson 5663e436ab DragNDrop: Fix problem with relocated files in Xcode 4.3
Remove dependency on /Developer/Headers/FlatCarbon when creating SLAs for DMG images.
Instead, of adding those .r files on the command line, include the necessary .r files
from the generated .r file.
2012-02-29 08:29:46 -07:00
Yury G. Kudryashov 89403bf87f Rename UsedCommands to FinalPassCommands
When I read 'UsedCommands' I thought that it holds all commands used in the
file, not only those that have FinalPass().
2012-02-29 11:49:42 +04:00
KWSys Robot 4fd479816d KWSys Nightly Date Stamp 2012-02-29 00:05:04 -05:00
Yury G. Kudryashov 4a48be323b doxygen: Small fixes in cmake.h apidocs 2012-02-29 00:18:22 +04:00
Yury G. Kudryashov 1e5b971ed0 doxygen: Use proper syntax to document enum 2012-02-29 00:18:11 +04:00
Yury G. Kudryashov 54ab11c0d2 doxygen: Improve API docs of GetRealDependency
Use list instead of sequence of sentences in one paragraph.
2012-02-29 00:17:48 +04:00
Yury G. Kudryashov 80072d4ebf doxygen: cmPropertyDefinition 2012-02-29 00:17:37 +04:00
Brad King d3651041e9 find_package: Optionally warn when implicitly using Config mode
Define variable CMAKE_FIND_PACKAGE_WARN_NO_MODULE for use by a project
that wants to use an explicit mode in every call to find_package in
order to generate more specific failure messages.  Word the warning
using the new CONFIG and MODULE mode keywords when the minimum required
version of CMake is new enough to have them.  Otherwise word the warning
using the old NO_MODULE mode keyword.

Inspired-by: Alex Neundorf <neundorf@kde.org>
2012-02-28 10:01:44 -05:00
Brad King 31ead5f695 find_package: Reject mixed use of MODULE- and CONFIG-only options
Many options imply exclusive Config mode.  The new MODULE option
implies exclusive Module mode.  Do not allow mixed combinations.
2012-02-28 09:58:31 -05:00
Alex Neundorf 6d8308314a find_package: mention requested version number in error message
When neither a Find-module or a config file can be found print the
required version so the user knows which version of the package to
install.
2012-02-28 09:58:31 -05:00
Alex Neundorf 9c39bbd474 find_package: add CONFIG mode keyword alias for NO_MODULE 2012-02-28 09:58:31 -05:00
Alex Neundorf f310f67291 find_package: add MODULE mode to use only Find-modules
The new mode differ from default mode in that that it doesn't fallback
to config mode.  The default mode stays unchanged.
2012-02-28 09:58:01 -05:00
Alex Neundorf 7d67dcf52b find_package: improve error message when no Find module is present
Explain exactly why CMake is looking for a package configuration file
and who is expected to provide what:

 CMake Error at CMakeLists.txt:7 (find_package):
  By not providing "Find<pkg>.cmake" in CMAKE_MODULE_PATH the caller
  has asked CMake to find a package configuration file provided by
  "<pkg>", but CMake did not find one.

  Could not find a package configuration file provided by "<pkg>"
  with any of the names:

    <pkg>Config.cmake
    <pkg>-config.cmake

  Add the installation prefix of "<pkg>" to CMAKE_PREFIX_PATH or
  set "<pkg>_DIR" to a directory containing one of the above files.
  If "<pkg>" provides separate development package or SDK be sure
  it has been installed.

The first paragraph explains how CMake is interpreting the intention of
the caller.  This puts the blame or credit at the call site in the
project code where it belongs both when it is a bug and when it is
intentional.  It can be dropped in NO_MODULE mode.

Suggested-by: Brad King <brad.king@kitware.com>
2012-02-28 09:56:49 -05:00
KWSys Robot 26519d591e KWSys Nightly Date Stamp 2012-02-28 00:05:06 -05:00
Peter Collingbourne 7a6b5f4651 Ninja: Remove an unnecessary variable 2012-02-28 02:55:32 +00:00
Alex Neundorf 978d89b99d find_package: rename NoModule to UseFindModules
...positive logic is easier to handle

Alex
2012-02-27 16:36:29 -05:00
Alex Neundorf b3f9fe42f9 find_package: print error if an invalid CONFIGS name is used
In commit 41c2895b (Added version support to Config mode of find_package
command, 2008-01-28) the error message was computed but was not
reported.  Add the SetError call to report it.
2012-02-27 16:09:34 -05:00
Brad King 573fa3bf13 Factor cmInstallType out of cmTarget::TargetType
The purpose of the TargetType enumeration was overloaded for install
type because install rules were once recorded as targets.  Factor the
install types out into their own enumeration.
2012-02-27 13:19:57 -05:00
Yury G. Kudryashov 4f6fd961da Drop if(...) check because condition is always true
GetLocation returns std::string::c_str() which is never NULL
2012-02-27 11:59:15 -05:00
Yury G. Kudryashov a5edfc4fb7 Fix typo in documentation 2012-02-27 08:26:05 -05:00
KWSys Robot 00daeff02b KWSys Nightly Date Stamp 2012-02-27 00:05:06 -05:00
Peter Collingbourne 80ff2102a4 Ninja: Use cmSystemTools::ExpandListArgument to split compile/link commands 2012-02-27 04:05:38 +00:00
Peter Collingbourne d2731a376c Ninja: Add a missed license header 2012-02-27 02:41:00 +00:00
KWSys Robot 08ff8727af KWSys Nightly Date Stamp 2012-02-26 00:05:05 -05:00
Eric NOULARD 94a269304e Review and update CPack variable documentation.
This concerns all variables common to all CPack generators.
Variables mainly used and/or set in CPack.cmake are documented
therein. C++ built-in variables are documented in
cmCPackDocumentVariables.cxx.
2012-02-25 23:07:07 +01:00
Bjoern Ricks 0d2f5c8d6a Fix crash if app bundle executeable couldn't be found
Fix a crash on Mac OS X if a programm can't be found as an
application bundle. CFRelease MUST NOT be called on a
NULL value.

See https://developer.apple.com/library/mac/documentation/CoreFOundation/Reference/CFTypeRef/Reference/reference.html#//apple_ref/doc/c_ref/CFRelease
2012-02-25 18:20:36 +01:00
KWSys Robot f3fe73da54 KWSys Nightly Date Stamp 2012-02-25 00:05:05 -05:00
Yury G. Kudryashov 261491fe17 cmPropertyDefinition::IsChained is const 2012-02-24 23:37:02 +04:00
KWSys Robot 2437b40933 KWSys Nightly Date Stamp 2012-02-24 00:05:06 -05:00
David Cole d662dff769 Fix shadowed variable warning on dashboard results 2012-02-23 08:11:09 -05:00
KWSys Robot e8e964f675 KWSys Nightly Date Stamp 2012-02-23 00:05:06 -05:00
David Cole f66e735de3 Fix compiler warning reported on older Borland dashboard.
Avoid assignment inside the if.
2012-02-22 17:12:11 -05:00
David Cole d90eed445f Fix compiler error reported on older Borland dashboard.
Declare variable only once at a scope appropriate for both uses.
2012-02-22 16:40:30 -05:00
David Cole eabc9b0bc5 Ninja: CMake: Adapt Ninja generator for per-target include dirs
The confluence of the ninja-generator and target-include-directories
branches conspired to produce a nice little compiler error when
they were both merged into 'next'...

Yay for Continuous dashboards!
2012-02-22 16:31:00 -05:00
David Cole bada88e8e4 Merge branch 'target-include-directories' into ninja-generator 2012-02-22 16:21:48 -05:00
David Cole 8233636dbe Update the documentation regarding INCLUDE_DIRECTORIES.
It is now a target property and is affected by the use
of the include_directories command.
2012-02-22 15:22:03 -05:00
David Cole d899eb71b5 Call ExpandVariablesInString for each target's INCLUDE_DIRECTORIES
For strict backwards compatibility only. This should be unnecessary at
this point, but introducing a policy to deprecate it properly is a
whole different topic branch...
2012-02-22 07:29:32 -05:00
David Cole c21db870a5 Make search paths ordered and unique
Avoid duplicates. Same as before the introduction of the INCLUDE_DIRECTORIES
target property.
2012-02-22 07:29:32 -05:00
David Cole 22021f07f8 Remove cmMakefile::GetIncludeDirectories
After making the changes to use the new target level INCLUDE_DIRECTORIES
property, there are no more callers of this method.
2012-02-22 07:29:32 -05:00
Stephen Kelly 9106b564ae Extract and use the INCLUDE_DIRECTORIES target properties.
Eliminate callers of cmMakefile::GetIncludeDirectories.

All callers of GetIncludeDirectories should go through the local generator
object.

Only the local generator calls cmTarget::GetIncludeDirectories directly.
2012-02-22 06:31:50 -05:00
Stephen Kelly 840509babb Keep the INCLUDE_DIRECTORIES target property up to date.
The directory level property changes need to be added to it.
2012-02-22 06:31:50 -05:00
Stephen Kelly a4d5f7b9b2 Add API to get the ordered includes for a target. 2012-02-22 06:31:49 -05:00
David Cole 8adaee2b0b CMake: Eliminate cmMakefile::IncludeDirectories
Instead, re-implement it in terms of the directory property INCLUDE_DIRECTORIES.
2012-02-22 06:31:49 -05:00
Stephen Kelly 7620932d82 Remove include flags memoization. 2012-02-22 06:31:49 -05:00
Stephen Kelly 97a5faa858 Make it safe to call this method without creating duplicates. 2012-02-22 06:31:49 -05:00
Stephen Kelly edd5303949 Refactor GetIncludeFlags to take includes instead of fetching them 2012-02-22 06:31:49 -05:00
KWSys Robot 6a1c5a3569 KWSys Nightly Date Stamp 2012-02-22 00:05:07 -05:00
David Cole 8ef15df700 Merge topic 'HandleTargetsInCMakeRequiredLibraries'
35c48e1 Check*.cmake: Expand imported targets in CMAKE_REQUIRED_LIBRARIES
61cb4ea bootstrap: move while() and endwhile() into the bootstrap build
c9f2886 -don't pull in CheckTypeSize.cmake from the cmake which is being built
628f365 -remove trailing whitespace
2012-02-21 15:58:27 -05:00
David Cole 7d02020d68 Merge topic 'CPack-dynamicDocSection'
9a8103e Try to fix compile error on Win32-vs70
4da2223 Fix typo in end markup
cfac874 More documentation concerning CPack Components
dee0a38 Put CPack DMG and PackageMaker doc in separate files
b4abcfe Correct copy/paste section name mistake
9717727 Suppress unecessary (now empty) doc sections
7a8f44a Add structure documentation for CPack Bundle generator
b8a274c Add structured documentation for NSIS
a6bce55 Dynamically add documentation section specified in documented script.
2012-02-21 15:57:17 -05:00
David Cole 8a665fa363 Merge topic 'findlibrary-versioned-libraries'
70f3623 Find_library(): allow searching for versioned shared objects
2012-02-21 15:56:26 -05:00
David Cole 751e492840 Merge topic 'fix-typos-12975'
7ec2ebd fix the same typos as found by Debian in other places, too
d36d29f various typo and formatting fixes in manual pages (#12975)
2012-02-21 15:56:13 -05:00
David Cole 7bcd282981 Merge topic 'try-compile-random-name'
4fbdce2 try_compile: Use random executable file name (#12957)
2012-02-21 15:54:51 -05:00
David Cole cee42a73e8 Merge topic 'honor-gcov-empty-coverage'
58d75e2 CTest: mark all gcov covered files as covered
2012-02-21 15:54:09 -05:00
David Cole e1a6c9b9a1 Merge topic 'link-OpenBSD-shared-libs-issue-12954'
afc75bb Recognize OpenBSD versioned .so names (#12954)
2012-02-21 15:53:41 -05:00
Alex Neundorf 61cb4ea72e bootstrap: move while() and endwhile() into the bootstrap build
Alex
2012-02-21 15:33:40 -05:00
Alex Neundorf 628f365140 -remove trailing whitespace
Alex
2012-02-21 15:33:31 -05:00
Peter Kuemmel 54bd175eea Ninja: windows msvc: create for each target a .pdb file 2012-02-21 21:18:05 +01:00
David Cole df19b9cadb VS6: Avoid _MBCS define when _SBCS is defined (#12189)
Should fix the failing SBCS test on the VS6 dashboard.
2012-02-21 11:29:06 -05:00
KWSys Robot cffebe643c KWSys Nightly Date Stamp 2012-02-21 00:05:05 -05:00
KWSys Robot dc4c24ac79 KWSys Nightly Date Stamp 2012-02-20 00:05:06 -05:00
Peter Collingbourne a1a30340a2 Ninja: Import library support for Windows 2012-02-19 23:20:03 +00:00
Peter Kuemmel 21997cea4d Ninja: mark the Windows specific hacks with a comment only 2012-02-19 19:21:05 +01:00
Peter Kuemmel 3b84741515 Ninja: disable unfinished Windows ninja support
This way the branch is ready-to-merge, even when the generator is broken on Windows.
2012-02-19 19:15:57 +01:00
Peter Kuemmel adb54f3dbf Ninja: add some hacks for Windows 2012-02-19 11:30:07 +01:00
Peter Kuemmel 895914881b Ninja: also build ninja support on Windows 2012-02-19 11:10:18 +01:00
Peter Collingbourne 70c39c845f Ninja: Shell encode the command used in custom commands 2012-02-19 05:57:22 +00:00
Peter Collingbourne 0643fee2fe Ninja: Shell encode various CMake invocations 2012-02-19 05:57:22 +00:00
Peter Collingbourne 43b1d8bad0 Ninja: Shell encode paths used in "cd" commands 2012-02-19 05:43:47 +00:00
KWSys Robot e316cbbbc3 KWSys Nightly Date Stamp 2012-02-19 00:05:09 -05:00
Peter Collingbourne cea03e632b Ninja: Backslash rules for Windows
Generally these are only required in build statements, as Ninja wants
to be able to chop paths up.  But it doesn't hurt to also try to use
them in command line arguments.
2012-02-19 04:00:02 +00:00
Eric NOULARD 9a8103e929 Try to fix compile error on Win32-vs70 2012-02-19 00:01:39 +01:00
Eric NOULARD 9717727d5f Suppress unecessary (now empty) doc sections 2012-02-18 22:30:57 +01:00
Eric NOULARD a6bce55aef Dynamically add documentation section specified in documented script.
Modify CPackDeb and CPackRPM as an example
2012-02-18 22:07:39 +01:00
Peter Collingbourne 9362440a0b Ninja: Identifier encoding rules for ' ' and ':' 2012-02-18 20:33:39 +00:00
Peter Collingbourne 99856d537c Ninja: Partially revert "win fixes: escape back slash/colon, use cd. as cmd.exe nop"
It introduced encoding rules in the wrong place, and broke the
CustomCommand test case.

This reverts commit 7fb2bb3e8b.
2012-02-18 20:33:33 +00:00
Rolf Eike Beer 70f362305f Find_library(): allow searching for versioned shared objects
This did not work because find_library() did only treat the given name as
complete filename if is matched "PREFIX.*SUFFIX":

find_library(MYLIB libfoo.so.2)

Now it is also taken as a whole if the name matches "PREFIX.*SUFFIX\..*".
2012-02-18 16:19:29 +01:00
Modestas Vainius d36d29f1f0 various typo and formatting fixes in manual pages (#12975)
The patch fixes the following lintian warnings:

W: cmake-data: manpage-has-errors-from-man usr/share/man/man1/cmakemodules.1.gz 2728: warning: macro `..' not defined
I: cmake-data: spelling-error-in-manpage usr/share/man/man1/cmakemodules.1.gz overriden overridden
I: cmake-data: spelling-error-in-manpage usr/share/man/man1/cmakemodules.1.gz overriden overridden
I: cmake-data: spelling-error-in-manpage usr/share/man/man1/cmakemodules.1.gz explicitely explicitly
I: cmake-data: spelling-error-in-manpage usr/share/man/man1/cmakemodules.1.gz jave java
W: cmake-data: manpage-has-errors-from-man usr/share/man/man1/cmakeprops.1.gz 1040: warning [p 25, 3.7i]: can't break line
W: cmake: manpage-has-errors-from-man usr/share/man/man1/cmake.1.gz 4233: warning [p 85, 1.3i]: can't break line
I: cmake: spelling-error-in-manpage usr/share/man/man1/cmake.1.gz overriden overridden
I: cmake: spelling-error-in-manpage usr/share/man/man1/cmake.1.gz overriden overridden
I: cmake: spelling-error-in-manpage usr/share/man/man1/cmake.1.gz explicitely explicitly
I: cmake: spelling-error-in-manpage usr/share/man/man1/cmake.1.gz jave java
2012-02-18 16:12:45 +01:00
Peter Kuemmel 7fb2bb3e8b Ninja: win fixes: escape back slash/colon, use cd. as cmd.exe nop 2012-02-18 08:15:23 +01:00
KWSys Robot bfbb575086 KWSys Nightly Date Stamp 2012-02-18 00:05:12 -05:00
Bill Hoffman 9090572f5c Add ability to include a file in a project via a cache variable.
If a variable exists called CMAKE_PROJECT_<projectName>_INCLUDE,
the file pointed to by that variable will be included as the last step
of the project command.
2012-02-17 12:41:39 -05:00
Aaron C. Meadows ba89e92ba6 Visual Studio: Allow setting Single Byte Character Set (#12189)
For Visual Studio using the Preprocessor Define _SBCS. This behavior
is similar to the way that _UNICODE and _MBCS work already.

Added tests to confirm this behavior.
2012-02-17 11:30:23 -05:00
KWSys Robot d03606a19c KWSys Nightly Date Stamp 2012-02-17 00:05:08 -05:00
Brad King 4fbdce2b79 try_compile: Use random executable file name (#12957)
Append a random number to the "cmTryCompileExec" file name to avoid
rapid creation and deletion of the same executable file name.  Some
filesystems lock executable files when they are created and cause
subsequent try-compile tests to fail arbitrarily.  Use a different
name each time to avoid conflict.
2012-02-16 10:13:50 -05:00
KWSys Robot e2042b68d3 KWSys Nightly Date Stamp 2012-02-16 00:05:07 -05:00
Rolf Eike Beer 58d75e22ae CTest: mark all gcov covered files as covered
Even if there are no lines covered in the file the gcov coverage report still
contains valueable information, the amount of uncovered lines and which exactly
they are. Set 'Covered="true"' for files we have a gcov report for even if they
have no lines covered. Otherwise CDash will neither show the uncovered line
count nor the detailed coverage report for this file.

When CTEST_EXTRA_COVERAGE_GLOB was used to collect otherwise uncovered files
'Covered="true"' was unconditionally set, so this can't be worse here.
2012-02-15 21:45:30 +01:00
KWSys Robot a8b5714935 KWSys Nightly Date Stamp 2012-02-15 00:05:04 -05:00
David Cole 4fd13c0f15 Merge topic 'FixFeatureSummaryForREQUIREDPackages'
e6c5b94 fix FeatureSummary for REQUIRED packages, they were reported as OPTIONAL
2012-02-14 16:17:07 -05:00
David Cole 4f9c114dfa Merge topic 'ImproveCPackDoc-reloaded'
d4b77eb Avoid discovering system infos for documentation. Adding some path is enough.
9002f73 Fix non existent std::string::clear on VS6
02ccb32 Create getDocumentedModulesListInDir which may be used in other context.
24fbc28 Add missing section markup for CPackComponent
bafd8a9 Example of builtin variable documentation (i.e. only used in C++ source code).
543f1ad Make the load of script documentation more efficient and dynamic.
cdbd1a9 Fix another compiler warning due to a typo
52c53de Really avoid compiler warning about unused vars
37f90ed Calm down compiler warning about unused var
7c82b7f Fix potential bad memory access, thanks to Eike
62b589b Suppress unused var, beautify code, avoid 1 extra newline.
751713f Update bash completion file in order to handle new CPack doc options.
1629615 CPack Documentation extraction from CMake script begins to work
83e34dd Implement simple CMake script comment markup language.
c6a0169 CPack begin the implementation of --help-command* and --help-variables*
2012-02-14 16:14:56 -05:00
David Cole 4f81c709d1 Merge topic 'CPackNSIS-fixIgnore-INCLUDE_TOPLEVEL'
6a74eb1 CPackNSIS fix #0012935 switch from LOG_WARNING to avoid final error.
2012-02-14 16:14:45 -05:00
David Cole e65f39a59e Merge topic 'interrupt-bug-12649'
131eed6 cmake-gui: Improve interrupt granularity to fix bug 12649.
2012-02-14 16:14:35 -05:00
Eric NOULARD d4b77eba17 Avoid discovering system infos for documentation. Adding some path is enough. 2012-02-14 16:05:24 -05:00
Eric NOULARD 9002f73f31 Fix non existent std::string::clear on VS6 2012-02-14 16:05:24 -05:00
Eric NOULARD 02ccb3291b Create getDocumentedModulesListInDir which may be used in other context.
This should makes it easier to use the same "documented module"
techniques for CTest, CMake or user module.
2012-02-14 16:05:23 -05:00
Eric NOULARD bafd8a9e79 Example of builtin variable documentation (i.e. only used in C++ source code). 2012-02-14 16:05:23 -05:00
Eric NOULARD 543f1adfa4 Make the load of script documentation more efficient and dynamic.
CPack help will be searched in any CPack*.cmake file located
near to CPack.cmake file. The script files is parsed iff
the first line begin with ##section. Moreover the documentation
section name is specified on the remaining part of the line
minus the space immediately following ##section.
2012-02-14 16:05:23 -05:00
Eric NOULARD cdbd1a9e39 Fix another compiler warning due to a typo 2012-02-14 16:05:23 -05:00
Eric NOULARD 52c53deb1b Really avoid compiler warning about unused vars 2012-02-14 16:05:23 -05:00
KWSys Robot 5b016a23d0 KWSys Nightly Date Stamp 2012-02-14 00:05:06 -05:00
Brad King afc75bb7f5 Recognize OpenBSD versioned .so names (#12954)
OpenBSD shared library names end in a ".#.#" version number suffix.
Teach cmComputeLinkInformation to tolerate the extra suffix after
the normal library name suffixes when parsing library names.
2012-02-13 10:34:41 -05:00
KWSys Robot f17d3f58d6 KWSys Nightly Date Stamp 2012-02-13 00:05:08 -05:00
KWSys Robot 62952bc9b4 KWSys Nightly Date Stamp 2012-02-12 00:05:07 -05:00
Alex Neundorf e6c5b9452a fix FeatureSummary for REQUIRED packages, they were reported as OPTIONAL
Alex
2012-02-11 18:04:26 +01:00
KWSys Robot 677047dda0 KWSys Nightly Date Stamp 2012-02-11 00:05:07 -05:00
KWSys Robot 0fcf69d72f KWSys Nightly Date Stamp 2012-02-10 00:05:05 -05:00
KWSys Robot 16b1a6e4e0 KWSys Nightly Date Stamp 2012-02-09 00:05:06 -05:00
KWSys Robot 59ecc2c8ac KWSys Nightly Date Stamp 2012-02-08 00:05:06 -05:00
David Cole 3f359596a0 Merge topic 'fix-ccmake-clear'
415ffda ccmake: Extend clear line.
1dd43c4 ccmake: Factor clear line.
2012-02-07 15:35:58 -05:00
David Cole 2619d76556 Merge topic 'warn-funny-path-names'
c8ef643 Allow directory names containing '=' and warn if necessary (#12934)
2012-02-07 15:35:32 -05:00
David Cole 43b463cdfc Merge topic 'VS11-WinRT-project-issue-12930'
a03447b VS: Simplify ;-separated attribute value parsing
9e01aef VS: Add support for WinRT project properties (#12930)
2012-02-07 15:35:00 -05:00
David Cole a3e7913897 Merge topic 'AddTopLevelForComponent'
5d18851 CPackArchive restore default behavior and provide new variable.
3cab24a CPack  Add top level directory in component install for Archive Generators
2012-02-07 15:34:39 -05:00
David Cole 941d533cc3 Merge topic 'find-vcexpress'
de28946 Find VC Express during default generator selection (#12917)
2012-02-07 15:33:23 -05:00
KWSys Robot 45bba99538 KWSys Nightly Date Stamp 2012-02-07 00:05:07 -05:00
Nicolas Despres 415ffda7a8 ccmake: Extend clear line.
When configuring or generating the 'ng' of the end of the second line
is not cleared.  This patch fixes this.

The problem was introduced by commit fd632195 (ccmake: Align 'g' and 'q'
key instructions, 2011-01-07) which adjusted the length of lines that
need clearing.
2012-02-06 10:23:50 -05:00
Brad King c8ef6430e0 Allow directory names containing '=' and warn if necessary (#12934)
The approach taken by commit 8704525f (Reject directory names containing
'=', 2011-01-14) was perhaps too heavy-handed for avoiding the obscure
cases when '=' in the path fails due to limitations of Make syntax.
Only two CMake tests:

  LinkDirectory
  OutOfSource

fail when the path contains '=' and they cover obscure cases.  Instead
of rejecting such paths outright just warn when the problem may occur.
2012-02-06 09:40:42 -05:00
KWSys Robot e130d3ece4 KWSys Nightly Date Stamp 2012-02-06 00:05:09 -05:00
Nicolas Despres 1dd43c4c9d ccmake: Factor clear line. 2012-02-05 15:09:37 +01:00
Eric NOULARD 6a74eb1d36 CPackNSIS fix #0012935 switch from LOG_WARNING to avoid final error. 2012-02-05 13:13:48 +01:00
KWSys Robot 34cc537132 KWSys Nightly Date Stamp 2012-02-05 00:05:09 -05:00
Peter Collingbourne 5d19e8aa6a Ninja: Appease various compilers 2012-02-05 01:48:08 +00:00
Peter Collingbourne bfe56f6802 Ninja: Remove some default arguments 2012-02-05 01:48:01 +00:00
Peter Collingbourne 69984906ef Ninja: Fix a 79-col violation 2012-02-05 00:57:22 +00:00
KWSys Robot a1979dc0e9 KWSys Nightly Date Stamp 2012-02-04 00:05:06 -05:00
Brad King a03447b3df VS: Simplify ;-separated attribute value parsing
An implementation ;-separated list parsing was added by commit a1f976ce
(VS: Add support for three new project properties, 2011-11-23) and again
by commit 9e01aefd (VS: Add support for WinRT project properties,
2012-02-03).  Refactor both instances to use ExpandListArgument.
2012-02-03 14:35:35 -05:00
Eugene Golushkov 9e01aefd24 VS: Add support for WinRT project properties (#12930)
VS_WINRT_EXTENSIONS: Boolean property that correspond to "Enable
Tailored Features" in Visual Studio 11 IDE.

VS_WINRT_REFERENCES: Semicolon-delimited list of *.winmd references to
add to the project, which creates a new <ItemGroup>.
2012-02-03 09:26:24 -05:00
KWSys Robot 46a734cdbd KWSys Nightly Date Stamp 2012-02-03 00:05:06 -05:00
Peter Collingbourne 6dd410c2b9 Ninja: Add the Ninja generator 2012-02-02 23:40:21 +00:00
Peter Collingbourne 4468edf12b Add executable with exports flag support to cmLocalGenerator::GetTargetFlags 2012-02-02 23:36:42 +00:00
Peter Collingbourne 2cd36550b0 Add cmSystemTools::TrimWhitespace function 2012-02-02 23:04:38 +00:00
KWSys Robot e858440185 KWSys Nightly Date Stamp 2012-02-02 00:05:06 -05:00
Eric NOULARD 5d18851b25 CPackArchive restore default behavior and provide new variable.
CPACK_COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY should be set by the user
in order to get the toplevel directory included in the archive
whenever a componentized archive is requested. This solves bug #12129
and keeps fully backward compatible behavior.
2012-02-01 23:32:50 +01:00
David Cole 46c7b7d85a Merge topic 'rpath-docs-whitespace'
33eee2c Add whitespace after '.' in CMAKE_SKIP_RPATH docs.
2012-02-01 14:51:47 -05:00
David Cole 3e0eeb9fc8 Merge topic 'imported-target-visibility'
f9c1c62 Add test covering imported target scope rules
ca39c5c Optionally allow IMPORTED targets to be globally visible
2012-02-01 14:49:10 -05:00
David Cole a7c5a6896e Merge topic 'doc-IMPORTED-properties'
7d20619 Clarify IMPORTED_ target property documentation
2012-02-01 14:46:36 -05:00
Peter Kuemmel de289462ef Find VC Express during default generator selection (#12917)
CMake doesn't find Visual C++ Express and uses "NMake Makefiles"
generator by default when one calls cmake WITHOUT using the -G options.
Teach CMake to find VC Express to use it as the default generator just
like the commercial versions.
2012-02-01 09:04:27 -05:00
KWSys Robot b2215bdb26 KWSys Nightly Date Stamp 2012-02-01 00:05:08 -05:00
Eric NOULARD 37f90ed576 Calm down compiler warning about unused var 2012-01-31 22:45:07 +01:00
Eric NOULARD 7c82b7f51a Fix potential bad memory access, thanks to Eike 2012-01-31 22:44:58 +01:00