Commit Graph

26615 Commits

Author SHA1 Message Date
Gregor Jasny d54617d006 break: Add policy CMP0055 to check calls strictly
Reject break() without loop scope or any arguments.

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2014-11-25 14:14:20 -05:00
Gregor Jasny bae604d9a8 Track nested loop levels in CMake language with a stack of counters
It gets incremented while entering a loop block (e.g. foreach or while)
and gets decremented when leaving the block. Because scope borders for
example at function borders must be taken into account the counter is
put into a stack. With every new scope an empty counter is pushed on the
stack, when leaving the scope the original value is restored.

This will allow easy querying if the break command is properly nested
within a loop scope.

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2014-11-25 14:14:15 -05:00
Stephen Kelly beaea609a0 Remove note disallowing use of some string and vector API.
The compilers introducing these limitations are no longer supported
as host compilers.
2014-11-25 18:35:00 +01:00
Ådne Hovda 6b045c3ba8 ccmake: Add CMAKE_USE_SYSTEM_FORM option to use libform instead of cmForm 2014-11-25 11:29:58 -05:00
Brad King 66ba7ea831 Merge topic 'custom-command-byproducts'
1f4f2aab Help: Add notes for topic 'custom-command-byproducts'
2014-11-25 10:42:27 -05:00
Brad King d52cfd129c Merge topic 'doc-drop-borland-workaround'
c2af447d Remove disallowed feature which Borland did not accept.
2014-11-25 10:35:44 -05:00
Stephen Kelly c2af447d44 Remove disallowed feature which Borland did not accept. 2014-11-25 10:34:47 -05:00
Brad King c7b9fad117 Merge topic 'remove-ancient-msvc-workarounds'
12cb0b86 Help: Update developer manual with some C++ features now permitted.
ba74465f cmGeneratorTarget: Remove MSVC7 workaround
41363c0c VisualStudio: Remove MSVC6 compatibility macro.
4efcfe52 cmSystemTools: Remove MSVC6 compatibility define.
5f4695cd cmStandardIncludes: Remove MSVC6 condition for cmArrayBegin macro.
7a064337 cmFindCommon: Remove MSVC6 workaround for nested struct private access.
fdb73547 cmTarget: Remove std::min and std::max MSVC6 compatibility code.
2014-11-25 10:28:57 -05:00
Brad King a11dda1c48 Merge branch 'release' 2014-11-25 10:23:20 -05:00
Brad King 1f4f2aabc7 Help: Add notes for topic 'custom-command-byproducts' 2014-11-25 10:21:55 -05:00
Brad King e993c384d9 Merge topic 'GetPrerequisites-expansion'
d1903de8 GetPrerequisites: join if() clauses
c9e32b0b GetPrerequisites: remove needless variable dereferencing
2014-11-25 10:18:54 -05:00
Brad King 90cfed51f6 Merge topic 'improve-INTERFACE-property-docs'
bb1111ea Help: Warn that paths should not be used in INTERFACE_ build properties.
96691d12 Help: Fix typo in genex in documentation.
f8f02451 Help: Use a property-specific command instead of the generic one.
8609a884 Help: Make remaining build property docs consistent.
bcface39 Help: Link to target_link_libraries from target properies.
e12926e7 Help: Format the LINK_INTERFACE_LIBRARIES target properies.
c8540e94 Help: Unify the help text of INTERFACE_ build properties.
2014-11-25 10:18:52 -05:00
Brad King 4987b37165 Merge topic 'remove-c_str'
5eb4d759 Remove some unneeded c_str calls.
2014-11-25 10:18:49 -05:00
Brad King 623a06a6f3 Merge topic 'fix-WCDH-docs'
0db3db41 WCDH: Don't imply that MSVC is supported by the module.
2014-11-25 10:18:47 -05:00
Brad King 2fefe9e575 Merge topic 'fortran-linker-flags'
17b0fe03 Fix incremental linking setting for Fortran + VS
2014-11-25 10:18:45 -05:00
Brad King 47f1020b54 Merge topic 'fix-GNU-CXX-dialect-versions'
c03c184b Features: Record C++11 dialect switch only for GNU 4.7 and later.
2014-11-25 10:18:42 -05:00
Brad King cbec5c0445 Merge topic 'default-lang-dialect-for-master'
f327a9fd Merge branch 'default-lang-dialect' into step2
36bb100e Fix the test for running the CxxDialog unit test.
a3d0ae17 Features: Fix the default C dialect for Clang and GNU.
49e2b689 Features: Fix references to CXX compiler version in Clang-C.cmake.
7565ab2c Features: Test the CXX compiler only if it has features.
2014-11-25 10:18:37 -05:00
Brad King ce64e3607f Merge topic 'cmTarget-null_ptr-everywhere'
32a191ce cmTarget: Use null_ptr code path on all platforms
2014-11-25 10:18:35 -05:00
Brad King 0ff35425d7 Merge topic 'fix-openmp-fortran'
7d633ebf FindOpenMP: Use fixed form Fortran test program
2014-11-25 10:18:33 -05:00
Brad King 6a2c7e1e0d Merge topic 'file-GENERATE-rerun'
26e98c34 file(GENERATE): Re-run cmake when appropriate.
2014-11-25 10:18:29 -05:00
Brad King c8da86a094 Merge topic 'clean-autogen'
3bd59b60 QtAutogen: Use cmHasLiteral{Prefix,Suffix} where possible.
bf00f528 QtAutogen: Don't take a reference to temporary.
2014-11-25 10:18:23 -05:00
Brad King a5531950cc Merge topic 'ccmake-hpux'
7a687292 ccmake: Cleanup and simplify conditional blocks for HP-UX
44f02b42 ccmake: Use standard getmaxyx instead of non-standard getmax[xy]
ee3d06a4 ccmake: Remove incomplete support for cur_colr on old HP-UX
2014-11-25 10:18:21 -05:00
Brad King 61a987c229 Merge topic 'CPackRPM-cleanup-component-vars'
51a60973 CPackRPM: Unset temporary component variables before re-use
2014-11-25 10:18:19 -05:00
Brad King 0f19208076 Merge topic 'custom-command-byproducts'
557aef0b ExternalProject: Add options to specify BYPRODUCTS (#14963)
e15a7075 Add an option for explicit BYPRODUCTS of custom commands (#14963)
2014-11-25 10:18:16 -05:00
Rolf Eike Beer d1903de8c5 GetPrerequisites: join if() clauses
These all test the same variable for different values, so only one of them can
ever be true. This also allows to completely remove one variable that only
flagged if one of the conditions matched.
2014-11-25 10:13:20 -05:00
Rolf Eike Beer c9e32b0b12 GetPrerequisites: remove needless variable dereferencing 2014-11-25 10:13:20 -05:00
Brad King e002f0605d Merge branch 'fix-WCDH-docs' into release 2014-11-25 10:10:50 -05:00
Brad King c66f697a8b Merge branch 'fix-GNU-CXX-dialect-versions' into release 2014-11-25 10:10:46 -05:00
Brad King f8099e1c37 Merge branch 'default-lang-dialect' into release 2014-11-25 10:07:34 -05:00
Stephen Kelly bb1111eaa2 Help: Warn that paths should not be used in INTERFACE_ build properties. 2014-11-25 10:00:35 -05:00
Stephen Kelly d0af0faefb WCDH: Make the header -Wundef safe for the C language.
The __STDC_VERSION__ macro may be defined or not depending on the
implementation dialect of C.  Test that it is defined before testing
its value.

The CXX tests do not need such a change because they define __cplusplus
in all dialects.
2014-11-25 14:44:21 +01:00
Kitware Robot c5ac0fce5c CMake Nightly Date Stamp 2014-11-25 00:01:13 -05:00
Stephen Kelly 4cf5179c77 WCDH: Make it possible to generate multiple files.
Extend the write_compiler_detection_header interface to allow
specifying a location for supplementary files, and getting the
list of resulting files as a variable.
2014-11-24 21:54:41 +01:00
Kitware Robot 7e8fe68e9c CMake Nightly Date Stamp 2014-11-24 00:01:08 -05:00
Stephen Kelly 5eb4d7590e Remove some unneeded c_str calls. 2014-11-23 11:09:54 +01:00
Stephen Kelly 0db3db41d4 WCDH: Don't imply that MSVC is supported by the module.
Remove the mention of it from the docs.
2014-11-23 10:12:49 +01:00
Kitware Robot 2a0c654858 CMake Nightly Date Stamp 2014-11-23 00:01:08 -05:00
Stephen Kelly 96691d126b Help: Fix typo in genex in documentation. 2014-11-22 21:26:06 +01:00
Stephen Kelly f8f02451ad Help: Use a property-specific command instead of the generic one. 2014-11-22 12:58:58 +01:00
Stephen Kelly 8609a884a2 Help: Make remaining build property docs consistent.
These help entries are different enough that they can not use the
generic template.
2014-11-22 12:51:25 +01:00
Stephen Kelly bcface3932 Help: Link to target_link_libraries from target properies. 2014-11-22 12:46:13 +01:00
Stephen Kelly e12926e793 Help: Format the LINK_INTERFACE_LIBRARIES target properies. 2014-11-22 12:45:43 +01:00
Stephen Kelly c8540e9466 Help: Unify the help text of INTERFACE_ build properties. 2014-11-22 12:39:04 +01:00
Kitware Robot 2ed0088b2a CMake Nightly Date Stamp 2014-11-22 00:01:07 -05:00
Zack Galbreath 17b0fe0305 Fix incremental linking setting for Fortran + VS
This commit fixes a bug where it was impossible to specify
/INCREMENTAL to Fortran projects built with Visual Studio.

The problem was due to the fact that .vfproj files expect
the value of this flag to be "linkIncremental{No,Yes},
whereas .vcproj files expect this value to be 0, 1, or 2.

The implementation of this fix adds a new data structure for
Visual Studio linker flags specific to Fortran.  This can
easily be extended in the future if more such discrepencies
between C/C++ and Fortran linking are discovered.
2014-11-21 13:32:45 -05:00
Kitware Robot a075777ca1 CMake Nightly Date Stamp 2014-11-21 00:01:11 -05:00
Stephen Kelly 12cb0b868c Help: Update developer manual with some C++ features now permitted. 2014-11-20 23:11:38 +01:00
Stephen Kelly ba74465fbc cmGeneratorTarget: Remove MSVC7 workaround
Use partial specialization everywhere.
2014-11-20 23:07:22 +01:00
Stephen Kelly 41363c0c61 VisualStudio: Remove MSVC6 compatibility macro. 2014-11-20 22:25:44 +01:00
Stephen Kelly 4efcfe52f4 cmSystemTools: Remove MSVC6 compatibility define. 2014-11-20 22:24:27 +01:00