11091 Commits

Author SHA1 Message Date
Brad King
2031b6a9f3 Merge topic 'vs2010_header_only_fix'
f578381 Fix vs2010 project generation error when HEADER_FILE_ONLY is set.
2010-12-21 14:01:38 -05:00
Brad King
12e7bdea50 Merge topic 'vs10-sln-msbuild-workaround'
e1442ac Avoid msbuild ".\" idiosyncrasy that builds multiple configs (#11594)
42a2e9d Revert "Avoid msbuild idiosyncrasy that builds multiple configs" (#11633)
2c2eee6 Revert "Remove unused parameter "root" in some VS generator methods"
2010-12-21 14:01:25 -05:00
Brad King
f94c4a35be Merge topic 'always_enable_generate'
3f158c6 cmake-gui: always enable generate button.
2010-12-21 14:01:08 -05:00
Brad King
c85b8189cf Merge topic 'fix-11487-multiple-test-calls'
744366f CTest: multiple ctest_test calls w/LABEL regexs (#11487)
2010-12-21 14:00:56 -05:00
Brad King
b482ba3e38 Merge topic 'fix-10587-avoid-try-compile-warnings'
984acc8 VS10: avoid warning, no nologo when verbose (#10587)
2010-12-21 14:00:27 -05:00
Brad King
17025ebda1 Merge topic 'fix-8210-find-makensis-in-path'
cd9aa73 CPack: look for makensis in the PATH (#8210)
2010-12-21 13:59:58 -05:00
Brad King
1f401294d4 Merge topic 'fix-11533-vs10-custom-build-err'
66e7917 VS10: stop build on custom command error (#11533)
2010-12-21 13:59:35 -05:00
Brad King
27b86ece8f Merge topic 'xcode-version-3.2'
f7d525e Xcode: Generate native 3.2 projects
2010-12-21 13:59:28 -05:00
Brad King
ccc790f160 Merge topic 'remove-GetMaximumFilePathLength-call'
b97760f Remove call to SystemTools::GetMaximumFilePathLength
2010-12-21 13:59:21 -05:00
Brad King
b005910812 Merge topic 'file-GLOB-use-case-warning'
26cc29a Warn in find(GLOB) docs about bad use case (#11617)
2010-12-21 13:59:13 -05:00
Brad King
7a7a2cbd31 Merge topic 'ctest-depend-cycle'
1f7133c CTest: Fix line-too-long style in DEPEND cycle error
f48d3bc CTest: Fix test DEPEND cycle detection
2010-12-21 13:58:21 -05:00
Brad King
4c88a8622d KWSys: Avoid buffer overflow in SystemInformation (#11018)
Use std::string instead of fixed-size char arrays.

Author: Ben Boeckel <ben.boeckel@kitware.com>
2010-12-21 08:25:33 -05:00
KWSys Robot
112ada2eb6 KWSys Nightly Date Stamp 2010-12-21 00:10:48 -05:00
Bill Hoffman
f578381e66 Fix vs2010 project generation error when HEADER_FILE_ONLY is set.
In vs2010 a bad project file could be generated if a .c or .cxx file
was marked with HEADER_FILE_ONLY, if it was in a library that contained
both c and c++ code.  This fixes the error in the code, and adds a test
for this case.
2010-12-20 15:25:16 -05:00
Brad King
e1442ac9c1 Avoid msbuild ".\" idiosyncrasy that builds multiple configs (#11594)
If a .sln file refers to a project file with a leading ".\", as in
".\foo.vcxproj" instead of just "foo.vcxproj" or a full path then
msbuild behaves strangely.  Whenever target foo is built as a dependency
of another target, msbuild brings multiple configurations up to date
instead of just the requested configuration!

Avoid a leading ".\" in project file references to avoid this behavior.
This alternative fix to that attempted by commit 57e71533 (Avoid msbuild
idiosyncrasy that builds multiple configs, 2010-12-10) avoids use of
full path project file references which vcbuild does not support.
2010-12-20 11:56:18 -05:00
Brad King
42a2e9d91a Revert "Avoid msbuild idiosyncrasy that builds multiple configs" (#11633)
This reverts commit 57e71533f45601275afd7787d763664f9e6b9536.

While "msbuild" can handle full paths to project files in solutions,
the old "vcbuild" used for VS < 10 cannot.  We will need another
way to fix issue #11594.
2010-12-20 11:32:14 -05:00
Brad King
2c2eee61c1 Revert "Remove unused parameter "root" in some VS generator methods"
This reverts commit 10f01ae962feb68177f7bd698b01bbc18668920c.
2010-12-20 11:15:55 -05:00
KWSys Robot
34a2dee75d KWSys Nightly Date Stamp 2010-12-20 00:10:56 -05:00
KWSys Robot
b8c8fe49da KWSys Nightly Date Stamp 2010-12-19 00:10:08 -05:00
KWSys Robot
5ae9ccd2c6 KWSys Nightly Date Stamp 2010-12-18 00:10:03 -05:00
Clinton Stimpson
3f158c6dfa cmake-gui: always enable generate button. 2010-12-17 19:04:57 -07:00
Clinton Stimpson
744366fc0b CTest: multiple ctest_test calls w/LABEL regexs (#11487)
The Initialize method was not re-initializing everything
that it should have been. This commit fixes that.
2010-12-17 17:30:13 -05:00
David Cole
984acc884b VS10: avoid warning, no nologo when verbose (#10587)
For prior versions of Visual Studio we would intentionally pass
"/nologo-" for "verbose makefiles" (CMAKE_VERBOSE_MAKEFILE ON)
when the caller did not already explicitly specify either /nologo
or /nologo-. And we still do. For the prior versions.

This had the side effect of always passing /nologo- for try_compile
operations because try_compile generates projects that have verbose
makefiles on.

However, starting with Visual Studio 10, the compiler emits
"cl ... warning D9035: option 'nologo-' has been deprecated"
when passed "/nologo-".

Therefore, this commit removes setting "/nologo-" for verbose
makefiles in the Visual Studio 10 case to avoid emitting a
warning for every single invocation of the compiler in a given
build.

With Visual Studio 10, we do not set this flag either way
and therefore, the generated project has no value for this
setting and gets Visual Studio's default value, which is
of course "/nologo", which does not produce a warning.

With Visual Studio 10, a caller can still force "/nologo-"
if desired by adding it explicitly to CMAKE_C_FLAGS or
CMAKE_CXX_FLAGS.
2010-12-17 16:01:19 -05:00
David Cole
cd9aa73f3a CPack: look for makensis in the PATH (#8210)
Previously, we would search in the Windows registry for the path
to makensis, and fail immediately if we could not read the registry
value, assuming that it was simply not installed.

This change looks for makensis in the PATH even if the registry value
is not there, enabling the scenario where makensis is installed without
admin privileges and never even touches HKEY_LOCAL_MACHINE during the
non-admin install.
2010-12-17 13:29:10 -05:00
David Cole
66e7917532 VS10: stop build on custom command error (#11533)
In VS9 and previous versions, :VCReportError is the goto label
to jump to after a failed custom command. It stops the build
before it tries to go any further.

In VS10, :VCEnd is the correct label to use.

Create a method in the VS generators to provide the correct
line of script to use for each version of Visual Studio.

For more internal details, search for VCEnd in the
C:\Program Files\MSBuild directory.
2010-12-17 11:11:55 -05:00
Brad King
f7d525e3a6 Xcode: Generate native 3.2 projects
Set objectVersion = 46; compatibilityVersion = "Xcode 3.2" when
Xcode 3.2 is detected.
2010-12-17 08:41:32 -05:00
KWSys Robot
d11c70295b KWSys Nightly Date Stamp 2010-12-17 00:10:43 -05:00
Brad King
b97760fa52 Remove call to SystemTools::GetMaximumFilePathLength
The KWSys SystemTools::GetMaximumFilePathLength method is poorly
conceived and should not be used.  The cmDepends code honors its own
MaxPath buffer size.  Just hard-code it.
2010-12-16 17:41:27 -05:00
Brad King
26cc29a8e2 Warn in find(GLOB) docs about bad use case (#11617)
The first instinct of a lot of users is to use file(GLOB) to assemble
lists of sources.  Add a warning to the help text stating that it should
not be used for this purpose and briefly explain why.

Suggested-By: Ryan Pavlik
2010-12-16 15:49:32 -05:00
Brad King
72ebd4ee12 Merge topic 'try_compile-RemoveFile'
097294e Fix try_compile RemoveFile anti-virus loop (#11503)
2010-12-16 14:00:28 -05:00
Brad King
6b61c04330 Merge topic 'try-compile-min-version'
2afb820 Write full version into try_compile CMakeLists
2010-12-16 14:00:24 -05:00
Brad King
ed9979f931 Merge topic 'link-depend-def-file'
3e27997 Make link rule depend on ".def" file (#11014)
2010-12-16 14:00:17 -05:00
Brad King
419302e2d6 Merge topic 'doc-target_link_libraries-scope'
999ce0a Document target_link_libraries target scope (#11058)
2010-12-16 14:00:11 -05:00
Brad King
92199485c0 Merge topic 'custom-command-slashes'
a75a0a1 Normalize add_custom_command OUTPUT names (#10485)
2010-12-16 14:00:00 -05:00
Brad King
4f769d18d1 Merge topic 'cray-compiler'
ab9ebb0 Fix Fortran .mod timestamps with Cray compiler
2010-12-16 13:59:57 -05:00
Brad King
ceae8b1062 Merge topic 'CPack-MoreComponentControls'
6d94ea3 CPack  use IsOn when it's better than IsSet
2010-12-16 13:59:45 -05:00
Brad King
83b836f61e Merge topic 'CPack-DynMONOLITHIC_INSTALL'
17b05e6 CPack Honor CPACK_MONOLITHIC_INSTALL at CPack time too
2010-12-16 13:59:40 -05:00
Brad King
1f7133cd61 CTest: Fix line-too-long style in DEPEND cycle error 2010-12-16 08:07:43 -05:00
KWSys Robot
aadee46c60 KWSys Nightly Date Stamp 2010-12-16 00:10:05 -05:00
Brad King
f48d3bc5ba CTest: Fix test DEPEND cycle detection
A cycle exists when the DFS returns to the root node, not just when
multiple paths lead to the same node.

Inspired-By: Alexander Esilevich <aesilevich@pathscale.com>
2010-12-15 16:49:34 -05:00
Brad King
999ce0aa9c Document target_link_libraries target scope (#11058)
The target_link_libraries command requires its first argument to be a
target in the current directory.  Document this and update the error
message to be more specific.  While at it, format the error message with
a call stack.
2010-12-15 12:18:59 -05:00
Brad King
3e279971fb Make link rule depend on ".def" file (#11014)
When the link command line references a ".def" file the rule should
depend on it.

Inspired-By: Eric Huhtala
2010-12-15 11:30:57 -05:00
Brad King
a75a0a1448 Normalize add_custom_command OUTPUT names (#10485)
Previously the OUTPUT arguments of add_custom_command were not
slash-normalized but those of add_library and add_executable were.
This caused the example

  add_custom_command(OUTPUT a//b.c ...)
  add_library(... a//b.c ...)

to fail at build time with "no rule to make a/b.c".  Fix this and modify
the CustomCommand test to try it.
2010-12-15 08:44:57 -05:00
KWSys Robot
a14a8562ea KWSys Nightly Date Stamp 2010-12-15 00:10:03 -05:00
Brad King
3a14b6e556 KWSys: Do not mangle UNC paths in ConvertToUnixOutputPath (#10206)
This method replaces '//' with '/' to make the paths look nicer.
Originally it correctly skipped a leading '//' in a UNC path as the
comment says.  However, commit "Removed extra variable initializations"
(2005-04-15) accidentally removed the "pos=1" initializer.  It was then
incorrectly restored by commit "Added missing variable initialization"
(2005-04-15) as just "pos=0".  Restore the proper initializer.

The test for this added by commit "better coverage" (2006-07-31)
included incorrect output for a sample UNC-like path.  Fix it.
2010-12-14 18:13:03 -05:00
Brad King
2afb820352 Write full version into try_compile CMakeLists
Pass the full version to cmake_minimum_required(VERSION) in generated
CMake files for try_compile projects.  This tells CMake not to use any
backward compatibility behavior while processing code it generates.
2010-12-14 16:36:55 -05:00
Brad King
2d1aa4ad06 Merge topic 'dev/support-substring-negative-indices'
36cb701 allow STRING(SUBSTRING) work with length -1 as "rest of the string"
2010-12-14 14:39:10 -05:00
Brad King
03c4623fb4 Merge topic 'ParallelEclipseMakefiles2'
27ee50a Add ECLIPSE_CDT4_GENERATE_SOURCE_PROJECT as a ADVANCED cache variable (#9631)
50d21d4 Add cache var CMAKE_ECLIPSE_MAKE_ARGUMENTS when using the Eclipse generator
2010-12-14 14:38:55 -05:00
Brad King
f7036a1603 Merge topic 'custom-command-depend'
ced1d5e Skip file-level dependencies on custom targets (#11332)
e30a775 Improve signature of cmLocalGenerator::GetRealDependency
2010-12-14 14:38:48 -05:00
Brad King
5161f85ef2 Merge topic 'vs10-sln-msbuild-workaround'
10f01ae Remove unused parameter "root" in some VS generator methods
57e7153 Avoid msbuild idiosyncrasy that builds multiple configs (#11594)
7728172 Remove unused variable "rootdir" in VS generators
2010-12-14 14:38:30 -05:00