Commit Graph

16805 Commits

Author SHA1 Message Date
Brad King e7dda7b9b7 Merge topic 'ctest_update_status_only'
653529ce CTest: Allow / to be in the build name, and be consistent with the build name
39b5df2f ctest_update: Add CTEST_UPDATE_VERSION_ONLY option to only note the version
2014-08-18 11:21:55 -04:00
Bill Hoffman 653529ce55 CTest: Allow / to be in the build name, and be consistent with the build name
Prior to this change / was not allowed in the build name. This was tested
with a CDash server and worked. In addition the safe build name was not
used everywhere. This caused mismatched build names to be in the xml
files going to CDash which caused different rows to be created for the
same build.
2014-08-18 11:22:18 -04:00
Brad King de547ca5c3 Merge topic 'cmake-gui-system-version'
1412960e cmake-gui: Pass CMAKE_SYSTEM_VERSION from cross-compile configuration
2014-08-18 11:21:52 -04:00
Brad King 654c8c0872 Merge topic 'cpack-ifw-generator'
e6496b60 CPackIFW: Revise this generator
2014-08-18 11:21:47 -04:00
Brad King 3353657919 Merge topic 'makefile-assign-escape-octothorpe'
fbf7a929 Makefile: Handle '#' in COMPILE_OPTIONS (#15070)
2014-08-18 11:21:45 -04:00
Bill Hoffman 39b5df2f37 ctest_update: Add CTEST_UPDATE_VERSION_ONLY option to only note the version
This allows ctest_update to get the current version without actually
changing the repository.  This is useful when using Jenkins or an
external project to update the source to a specific version, but you
still want the current version to show up in CDash.
2014-08-18 11:21:36 -04:00
Brad King 02b3cba9df cmListFileLexer: Fix lexing of single '[' character (#15092)
The lexer changes in commit v3.0.0-rc1~495^2 (Add Lua-style long
brackets and long comments to CMake language, 2013-08-06) accidentally
left out matching '[' as a single character in an unquoted argument.
Add a lexer rule to match it and extend the RunCMake.Syntax test to
cover this case.
2014-08-18 10:18:20 -04:00
Kitware Robot 25c07e61a3 CMake Nightly Date Stamp 2014-08-18 00:01:06 -04:00
Kitware Robot bbd1763d0f CMake Nightly Date Stamp 2014-08-17 00:01:06 -04:00
Kitware Robot 3bbdb2304b CMake Nightly Date Stamp 2014-08-16 00:01:06 -04:00
Joseph Snyder 6d66e396a1 CTEST: Fix MUMPS file parser and update test
The current file parser for a MUMPS routine uses a period "." as the
one of the signals that a line of MUMPS code is executable.  This is not
a correct assumption.  Add the period to the list of characters that CTest
will not consider the start of a line of code.

Update the test routine to have an entry point with code to match the scenario
mentioned above.
2014-08-15 10:50:36 -04:00
Kitware Robot 5fc8e666fb CMake Nightly Date Stamp 2014-08-15 00:01:06 -04:00
Kitware Robot eb3b5501c0 CMake Nightly Date Stamp 2014-08-14 00:01:14 -04:00
Brad King e872744990 VS: Populate MASM tool build settings in .vcxproj files 2014-08-13 14:48:03 -04:00
Brad King 0271a5f9ba VS: Manually fix MASM flag table entries
Drop '"[value]"' placeholders.
2014-08-13 14:48:01 -04:00
Brad King 1d662e4806 VS: Generate MASM flag tables from MSBuild tool files
Run cmparseMSBuildXML.py on masm.xml to generate our flag tables:

 python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/BuildCustomizations/masm.xml" > cmVS10MASMFlagTable.h
 python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V110/BuildCustomizations/masm.xml" > cmVS11MASMFlagTable.h
 python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V120/BuildCustomizations/masm.xml" > cmVS12MASMFlagTable.h
 python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V140/BuildCustomizations/masm.xml" > cmVS14MASMFlagTable.h

Fix up the declaration names at the top of each file.
2014-08-13 14:47:58 -04:00
Brad King 4f6940df8c VS: Fix ASM_MASM support in VS >= 10
Fix a typo introduced by commit ce511435 (stringapi: Use strings for the
languages, 2014-02-03) to check the language name correctly.
2014-08-13 14:47:56 -04:00
Brad King 5b0a46e1c9 ASM_MASM: Do not require compiler to be a full path
The compiler detection modules for this language do not yet know how
to find the full path to 'ml' or 'ml64', so do not require it.
2014-08-13 14:47:49 -04:00
Brad King 802dbe5239 cmLocalVisualStudio7Generator: Rename local 'lang' var
In the WriteGroup method, rename the 'lang' var to 'ppLang' since
it is specifically for the preprocessor definitions language selection.
2014-08-13 14:12:48 -04:00
Brad King 5fcb42ab69 VS: Refactor include directory generation in .vcxproj files
Use the cmVisualStudioGeneratorOptions flag map to add the
AdditionalIncludeDirectories element to the project file.
Move appending of %(AdditionalIncludeDirectories) to the
locations that populate the flag vectors instead of where
they are written out.
2014-08-13 14:09:24 -04:00
Brad King 8e026aa7f2 VS: Refactor include directory slash conversion
Convert each include directory to windows slashes once instead of
repeating it each time they are written out to the project file.
2014-08-13 14:08:42 -04:00
Brad King 9633d11279 cmIDEOptions: Add HasFlag method to test if a flag is set 2014-08-13 14:08:39 -04:00
Brad King 841001028a cmIDEOptions: Add an AppendFlag overload to append multiple values 2014-08-13 13:42:49 -04:00
Gilles Khouzam 1412960e89 cmake-gui: Pass CMAKE_SYSTEM_VERSION from cross-compile configuration
Although this value can be configured in the dialog, it was simply not
passed to the project as CMAKE_SYSTEM_VERSION.  Fix that.
2014-08-13 10:17:31 -04:00
Kitware Robot 5891b36640 CMake Nightly Date Stamp 2014-08-13 00:01:10 -04:00
Konstantin Podsvirov e6496b6023 CPackIFW: Revise this generator
CPack IFW generator updates:
- Group now can have script;
- Root package (for monolithic or one package installers) can be
  configured from group.

CMake updates:
- Native installation (no Unspecified component).
2014-08-12 15:20:59 -04:00
Brad King fbf7a92975 Makefile: Handle '#' in COMPILE_OPTIONS (#15070)
Teach the Makefile generators to escape '#' characters on the right hand
side of variable assignments in flags.make.  This is needed for flags
like '-Wno-error=#warnings'.  Otherwise the make tool treats them as
comments and leaves them out of the _FLAGS variable value.

Add a case to the CompileOptions test covering '#' in a COMPILE_OPTIONS
value, at least on compilers where it is known to be supported.
2014-08-12 13:56:21 -04:00
Brad King 1f8cfc3b5f Merge topic 'vs-windows-sdk-desktop-arm'
2b20110f MSVC: Select default standard libraries for ARM platform
2dfcf0ed VS: Fix generation of desktop applications for ARM
dbb5a7ee CMakeDetermineCompilerId: Fix detection for VS ARM platform
2014-08-12 10:17:22 -04:00
Brad King 6fe770e163 VS: Add a source file property to set the hlsl shader type
Create a VS_SHADER_TYPE source file property.

Inspired-by: Gilles Khouzam <gillesk@microsoft.com>
2014-08-12 10:08:49 -04:00
Brad King 9b4dc2ad4a VS: Add a source file property to mark content for Windows App deployment
Create a VS_DEPLOYMENT_CONTENT source file property, supporting
generator expressions, to compute whether a source file should be marked
as DeploymentContent or ExcludedFromBuild in Windows Phone and Windows
Store projects.

Inspired-by: Minmin Gong <minmin.gong@gmail.com>
2014-08-12 10:08:47 -04:00
Brad King f063a914c6 VS: Re-arrange WriteExtraSource to support tool configuration
Add a code path to write the tool open and close elements separately
so that we can add content in between to configure it.
2014-08-12 10:08:44 -04:00
Gilles Khouzam 2dfcf0ed07 VS: Fix generation of desktop applications for ARM
Add WindowsSDKDesktopARMSupport to the .vcxproj to avoid 'error MSB8022:
Compiling Desktop applications for the ARM platform is not supported.'
from VS.
2014-08-12 10:08:40 -04:00
Brad King 7365a9fe92 Merge topic 'vs-windows-phone-and-store'
5d3d9a22 Help: Add notes for topic 'vs-windows-phone-and-store'
401a00d9 VS: Set WindowsPhone and WindowsStore min VS version required
709cebde VS: Generate WindowsPhone and WindowsStore application types
72395ab2 VS: Add .sln "Deploy" mark for WindowsPhone and WindowsStore binaries
2074f581 MSVC: Add system libs for WindowsPhone and WindowsStore
c72f0887 MSVC: Add default WindowsPhone and WindowsStore compile flags
1c94558a MSVC: Disable incremental linking for WindowsPhone and WindowsStore
592098e2 Define 'WINDOWS_PHONE' and 'WINDOWS_STORE' variables
aa42a78f Add WindowsPhone and WindowsStore platform information modules
b94ddf6c CMakeDetermineCompilerId: Recognize WindowsPhone and WindowsStore
d7938bff VS: Select WindowsPhone and WindowsStore default toolsets
3abd150c VS: Save WindowsPhone and WindowsStore system internally
2014-08-12 10:03:03 -04:00
Brad King 354c792c9d Merge topic 'update-kwsys'
6c32d43c Merge branch 'upstream-kwsys' into update-kwsys
137a0251 KWSys 2014-08-11 (32023afd)
51c82c3a Merge branch 'upstream-kwsys' into update-kwsys
fe587db4 KWSys 2014-08-07 (4d526097)
2014-08-12 09:48:30 -04:00
Kitware Robot 9c103ae80a CMake Nightly Date Stamp 2014-08-12 00:01:14 -04:00
Brad King 401d82b3db Merge topic 'wix-acl'
975dc871 Help: Add notes for topic 'wix-acl'
12418f5c CPackWIX: Implement CPACK_WIX_ACL (Access Control List) property
2014-08-11 09:54:19 -04:00
Brad King 348999a125 Merge topic 'fix-CMP0047-IS_GNU-vars'
70796ef0 CMP0047: Fix CMAKE_COMPILER_IS_GNU(CC|CXX) in OLD behavior
2014-08-11 09:54:12 -04:00
Brad King 2fdd5d88a1 Merge topic 'cpack-ifw-generator'
ebe8d51b CPackIFW: Refactor and revise this generator
82382479 Doxygen: Add STRIP_FROM_PATH variable to doxyfile.in
3040ab8f Doxygen: Add CPack/IFW subdir to doxyfile.in INPUT section
2014-08-11 09:54:10 -04:00
Konstantin Podsvirov ebe8d51b11 CPackIFW: Refactor and revise this generator
Split the monolithic cmCPackIFWGenerator source into three parts:
cmCPackIFWGenerator, cmCPackIFWInstaller, and cmCPackIFWPackage
to isolate the implementations somewhat.

Add a COMMON option to the cpack_ifw_configure_component command to make
the data component common to its parent group.

Change the default packaging method to ONE_PACKAGE_PER_COMPONENT.
This is not incompatible because the CPack IFW generator has not
yet been in a release.
2014-08-11 09:40:28 -04:00
Brad King 6c32d43ce2 Merge branch 'upstream-kwsys' into update-kwsys 2014-08-11 09:31:29 -04:00
Brad King 51c82c3a66 Merge branch 'upstream-kwsys' into update-kwsys 2014-08-11 09:30:22 -04:00
Kitware Robot 3b0d634f70 CMake Nightly Date Stamp 2014-08-11 00:01:07 -04:00
Kitware Robot 58aca7be56 CMake Nightly Date Stamp 2014-08-10 00:01:08 -04:00
Nils Gladitz 12418f5c26 CPackWIX: Implement CPACK_WIX_ACL (Access Control List) property 2014-08-09 15:30:21 +02:00
Kitware Robot 35a8355b61 CMake Nightly Date Stamp 2014-08-09 00:01:12 -04:00
Kitware Robot a99b42a410 CMake Nightly Date Stamp 2014-08-08 00:01:12 -04:00
Brad King 70796ef026 CMP0047: Fix CMAKE_COMPILER_IS_GNU(CC|CXX) in OLD behavior
The implementation of CMP0047 detects the QNX compiler id internally,
then changes it to GNU after the language is fully enabled.  This is too
late to correctly set the old IS_GNU variables, so set them as part of
the policy OLD behavior.

Reported-by: Mike Lattanzio <mlattanzio@blackberry.com>
2014-08-07 11:24:57 -04:00
Brad King 6f0d1a38c8 Merge topic 'genex-build-property-no-head'
3f476bea Genex: Do not consider 'head' when evaluating build properties
2014-08-07 10:07:51 -04:00
Brad King df08d8575b Merge topic 'genex-context-makefile-non-null'
c6acbc90 Genex: Remove unnecessary check of context->Makefile
2014-08-07 10:07:49 -04:00
Kitware Robot 029edcdf3e CMake Nightly Date Stamp 2014-08-07 00:01:10 -04:00
Brad King 3f476beaf7 Genex: Do not consider 'head' when evaluating build properties
When $<TARGET_PROPERTY> names a build property like COMPILE_DEFINITIONS
but not the usage requirement (INTERFACE_) version of it, the value
should be that used to build the target.  It should not be influenced by
a dependent 'head' target like usage requirements are.

Extend the CompileDefinitions test with a case covering the corrected
behavior.

Reviewed-by: Stephen Kelly <steveire@gmail.com>
2014-08-06 10:13:04 -04:00
Brad King e56db93a7b Merge topic 'fix_value_not_used'
2cac483e Fix used value warning.
2014-08-06 09:26:34 -04:00
Brad King 78efe8d4fd Merge topic 'file-strings-encoding'
5b30ec28 file: Add ENCODING option to file(STRINGS) command (#10519)
ffa373e7 file: Refactor internal implementation of file(STRINGS)
2014-08-06 09:26:28 -04:00
Clinton Stimpson 5b30ec28f9 file: Add ENCODING option to file(STRINGS) command (#10519)
Support extraction of UTF-8 strings.
2014-08-06 09:23:47 -04:00
Clinton Stimpson ffa373e711 file: Refactor internal implementation of file(STRINGS)
Make room for encoding support.
2014-08-06 09:23:15 -04:00
Brad King c6acbc9063 Genex: Remove unnecessary check of context->Makefile
The context->Makefile is never NULL, but our checks for it convince
Clang scan-build that it might be NULL.  Then it warns about later
unchecked uses.  Drop the unnecessary checks.
2014-08-06 09:11:41 -04:00
Kitware Robot 4ec6ff8f9f CMake Nightly Date Stamp 2014-08-06 00:01:14 -04:00
Brad King 662daff0b2 Merge topic 'vs-default-ignore-libs'
c1580a92 VS: Always add IgnoreSpecificDefaultLibraries to .vcxproj files
29410df2 cmIDEOptions: Add an AppendFlag method to update multi-valued options
2014-08-05 10:53:27 -04:00
Bill Hoffman 2cac483e64 Fix used value warning.
packageFileName no longer has only one value in this function.  Move the
declaration into the loop and remove its initial and unused asignment.
2014-08-05 10:22:36 -04:00
Brad King 6548e171e3 Merge topic 'fix_truncation_logic_valgrind_output'
b35a7730 Fix truncation of valgrind output logic.
2014-08-05 09:22:35 -04:00
Brad King 99f6eab851 Merge topic 'fix_value_not_used'
aea40fcb Fix scan-build warning parsed is never read after being set.
2014-08-05 09:22:33 -04:00
Brad King 8fef9dd271 Merge topic 'pass_output_by_reference'
7762fffa Change output to be a reference and not a pointer.
2014-08-05 09:22:31 -04:00
Brad King e76b72fa83 Merge topic 'update-kwsys'
60c78367 Merge branch 'upstream-kwsys' into update-kwsys
158c6d1c KWSys 2014-08-04 (e787837a)
2014-08-05 09:22:30 -04:00
Kitware Robot a6c1d58a09 CMake Nightly Date Stamp 2014-08-05 00:01:08 -04:00
Bill Hoffman aea40fcb43 Fix scan-build warning parsed is never read after being set. 2014-08-04 15:38:56 -04:00
Bill Hoffman b35a7730ce Fix truncation of valgrind output logic.
This showed up because scan-build noticed outputFull was basically
a constant. Logic should be output all valgrind output.  Then output
regular test output until output limit is reached.
2014-08-04 15:28:48 -04:00
Bill Hoffman 7762fffa23 Change output to be a reference and not a pointer.
This avoids having to check the pointer value at each use which
was not being done.
2014-08-04 15:16:40 -04:00
Brad King 60c783676c Merge branch 'upstream-kwsys' into update-kwsys 2014-08-04 10:16:34 -04:00
Brad King ba60ff99ed Merge topic 'cmGlobalGenerator-Build-output-ref'
30983ebe cmGlobalGenerator: Take Build output argument by reference
2014-08-04 10:02:28 -04:00
Brad King ba62b3495b Merge topic 'vs-internal-system-apis'
0a5fe279 VS: Add internal API to get system name and version
2014-08-04 10:02:27 -04:00
Brad King 7338d4c211 Merge topic 'vs-refactor-sln-deploy'
fe161dc3 VS: Refactor logic deciding to add "Deploy" to the .sln file
2014-08-04 10:02:25 -04:00
Brad King 4e22fcf215 Merge topic 'vs-vcxproj-missing-newline'
66edd065 VS: Add missing newline after .vcxproj user prop import line
2014-08-04 10:02:23 -04:00
Brad King 628f02ba35 Merge topic 'link-line-dedup'
ccec6df8 Help: Add notes for topic 'link-line-dedup'
9f7e27fc De-duplicate shared library targets in generated link lines
2014-08-04 10:02:16 -04:00
Kitware Robot 1238b3656a CMake Nightly Date Stamp 2014-08-04 00:01:06 -04:00
Kitware Robot 6e1c35f25c CMake Nightly Date Stamp 2014-08-03 00:01:13 -04:00
Kitware Robot ed4b52b025 CMake Nightly Date Stamp 2014-08-02 00:01:09 -04:00
Kitware Robot b0f6d3eb99 CMake Nightly Date Stamp 2014-08-01 00:01:08 -04:00
Gilles Khouzam 401a00d9f9 VS: Set WindowsPhone and WindowsStore min VS version required
Generate the MinimumVisualStudioVersion element in the .vcxproj file
based on the version of WindowsPhone or WindowsStore to be targeted.
2014-07-31 14:09:05 -04:00
Gilles Khouzam 709cebde66 VS: Generate WindowsPhone and WindowsStore application types
Generate the ApplicationType and ApplicationTypeRevision elements in
.vcxproj files.
2014-07-31 14:09:03 -04:00
Gilles Khouzam 72395ab23e VS: Add .sln "Deploy" mark for WindowsPhone and WindowsStore binaries 2014-07-31 14:09:01 -04:00
Brad King d7938bff37 VS: Select WindowsPhone and WindowsStore default toolsets
Teach the VS >= 10 generators to recognize these system names and select
the appropriate default toolset for the system version.  Report an error
when the version is not known to be supported by VS.

Inspired-by: Gilles Khouzam <gillesk@microsoft.com>
2014-07-31 14:08:46 -04:00
Brad King 3abd150ce9 VS: Save WindowsPhone and WindowsStore system internally
Add boolean members to the VS >= 10 global generator to save
whether CMAKE_SYSTEM_NAME is WindowsPhone or WindowsStore
without having to repeat a string comparison.

Inspired-by: Gilles Khouzam <gillesk@microsoft.com>
2014-07-31 14:08:43 -04:00
Brad King c1580a9217 VS: Always add IgnoreSpecificDefaultLibraries to .vcxproj files
Append %(IgnoreSpecificDefaultLibraries) to any user-specified
libraries so that the system-default list of libraries to ignore
is honored even when the user specifies more.
2014-07-31 14:08:41 -04:00
Brad King 29410df23d cmIDEOptions: Add an AppendFlag method to update multi-valued options 2014-07-31 14:08:39 -04:00
Brad King 30983ebec1 cmGlobalGenerator: Take Build output argument by reference
No call sites pass NULL to the output argument, so take it by
reference to avoid the if(output) conditions.  Propagate the
change through the TryCompile APIs that call it.
2014-07-31 12:49:51 -04:00
Brad King 0a5fe2793a VS: Add internal API to get system name and version
Add cmGlobalVisualStudio10Generator::GetSystemName and GetSystemVersion
methods to access the corresponding members publicly.
2014-07-31 10:47:22 -04:00
Gilles Khouzam fe161dc30d VS: Refactor logic deciding to add "Deploy" to the .sln file
Move the condition to a "NeedsDeploy" virtual method that can be
overridden by more recent VS generators.
2014-07-31 10:46:00 -04:00
Gilles Khouzam 66edd06587 VS: Add missing newline after .vcxproj user prop import line 2014-07-31 10:39:21 -04:00
Brad King bd642272b9 Merge topic 'fix-CMP0049-extra-error'
b2282631 cmTarget: Do not mistake a preceding error for a CMP0049 failure
2014-07-31 09:17:41 -04:00
Brad King c1560296db Merge topic 'update_jacoco_search_paths'
9fd04f87 CTEST: Update Jacoco Coverage search paths
2014-07-31 09:17:39 -04:00
Brad King 2ba18f6284 Merge topic 'cpack-ifw-generator'
e7511b7f CPackIFW: Add package configuration variables
b2340001 CPackIFW: Document cpack_ifw_configure_component DEPENDS option
2014-07-31 09:17:37 -04:00
Brad King 9f575a26fd Merge topic 'pdb-genex'
f86850ef Genex: Implement generator expressions for target PDB files.
028ad318 Genex: Simplify filesytem artifact code
2014-07-31 09:17:35 -04:00
Nils Gladitz f86850ef60 Genex: Implement generator expressions for target PDB files. 2014-07-31 09:17:53 -04:00
Kitware Robot 202b7d12eb CMake Nightly Date Stamp 2014-07-31 00:01:24 -04:00
Brad King b2282631f6 cmTarget: Do not mistake a preceding error for a CMP0049 failure
After calls to ProcessSourceItemCMP0049, check for an empty return
string to detect a failure instead of trusting GetErrorOccuredFlag.
The latter could have been left from a preceding non-fatal error.

Extend the RunCMake.Configure test to cover a case that exposed this
problem.
2014-07-30 13:48:33 -04:00
Joseph Snyder 9fd04f874c CTEST: Update Jacoco Coverage search paths
Add a new additional entry to the FilePaths array when a
"package" tag has been found. This path should consist of the package
information found appended to the projects source directory.

This change will allow code held in a /src/main/java/* directory off of the
projects source directory to be found, unlike now which assumes a subdirectory
contains the code.
2014-07-30 11:22:55 -04:00
Brad King 9f7e27fc3a De-duplicate shared library targets in generated link lines
The linker will bring in shared libraries as a whole and use them even
for symbols that are needed by entries later in the link line.
Therefore we do not need to repeat them.  De-duplicate link entries that
we know are shared libraries because we have a cmTarget associated with
them.

Tested-by: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
2014-07-30 11:14:17 -04:00
Brad King 128a0c36ec Merge topic 'remove-link-remnants'
250ad08a Ninja: Remove _COMPILER_LINKER_OPTION_FLAG_ remnants
2014-07-30 09:31:50 -04:00
Brad King 82a1b4fe51 Merge topic 'vs-refactor-source-tools'
0ac28adc VS: Map .jpg and .png sources to Image tool
58bb14d4 VS: Map .xml to XML tool
972cf1d7 VS: Map .appxmanifest sources to AppxManifest tool
15fb1022 VS: Refactor handling of resx headers
c2ef6d23 VS: Refactor handling of "header" sources in VS >= 10
2df38911 VS: Refactor handling of "extra" sources in VS >= 10
143b4005 VS: Convert 'WriteSource' tool argument to std::string
2014-07-30 09:31:49 -04:00
Brad King 2d4312a160 Merge topic 'cpack-add-lzma'
f931a18c CPack: add generators for .7z and .tar.xz (#13072, #14519)
2014-07-30 09:31:45 -04:00