Commit Graph

573 Commits

Author SHA1 Message Date
Brad King eb7d815649 cmake: Add -A option to specify a generator platform
Define the 'cmake -A' option to set CMAKE_GENERATOR_PLATFORM
without having to spell out the whole variable name.  We choose
the name '-A' for "platform" because '-P' is already taken, and
in the common use case the "platform" is actually an architecture
(e.g. x64).

Teach the RunCMake test infrastructure to use -A to pass the generator
platform.  Extend the RunCMake.GeneratorPlatform test with a case to
verify that the -A option cannot be repeated.
2014-09-15 10:26:59 -04:00
Brad King 8d33209170 CTest: Add options to set generator platform
The ctest_configure command already reads the CTEST_CMAKE_GENERATOR
variable to get the value for the cmake -G option.  Read new variable
CTEST_CMAKE_GENERATOR_PLATFORM to pass on as CMAKE_GENERATOR_PLATFORM.

The "ctest --build-and-test" mode already has "--build-generator" to
specify the -G option to CMake.  Add a "--build-generator-platform" option
to specify a value to pass on as CMAKE_GENERATOR_PLATFORM.
2014-09-05 15:18:21 -04:00
Brad King b97736a23d VS: Implement CMAKE_GENERATOR_PLATFORM for VS >= 8
For VS generator names that do not specify the platform name, read
CMAKE_GENERATOR_PLATFORM to get it.

Extend the RunCMake.GeneratorPlatform test with a case covering
use of the x64 platform when the test generator is a Visual Studio
generator whose name does not specify a platform.
2014-09-05 15:03:56 -04:00
Brad King 0f1f1271e6 CMake: Add CMAKE_GENERATOR_PLATFORM option
Reject the option by default.  It will be implemented on a per-generator
basis.  Pass the setting into try_compile project generation.  Add cache
entry CMAKE_GENERATOR_PLATFORM and associated variable documentation to
hold the value persistently.

Add a RunCMake.GeneratorPlatform test to cover basic use cases for the
option.  Verify that CMAKE_GENERATOR_PLATFORM is empty by default, and
that it is rejected when the generator does not support a user setting.
2014-09-05 14:38:05 -04:00
Brad King 4f7d0c421a Help: Document CMAKE_VS_PLATFORM_NAME variable 2014-09-05 14:23:35 -04:00
Brad King ecf43f0dc7 Merge topic 'doc-add_custom_command-multiple-commands'
412926d0 Help: Clarify add_custom_command multiple command behavior (#15112)
2014-09-04 09:48:32 -04:00
Brad King 0ad4f28fc0 Merge topic 'doc-try_compile-debug-advice'
abbe91c5 Help: Clarify --debug-trycompile usage with try_compile
2014-09-04 09:48:30 -04:00
Brad King 9651cb70ae Merge topic 'InstallRequiredSystemLibraries-vs-openmp'
d538c55e Help: Add notes for topic 'InstallRequiredSystemLibraries-vs-openmp'
bdb5007b InstallRequiredSystemLibraries: Install OpenMP runtime libs (#15117)
2014-09-04 09:48:17 -04:00
Brad King d538c55ea4 Help: Add notes for topic 'InstallRequiredSystemLibraries-vs-openmp' 2014-09-04 09:44:49 -04:00
Alan W. Irwin abbe91c58c Help: Clarify --debug-trycompile usage with try_compile
Explain that try_compile calls need to be protected with conditions to
avoid running more than once so that it is easy to isolate a single
try_compile to perform with --debug-trycompile.
2014-09-03 11:19:52 -04:00
Brad King 412926d03a Help: Clarify add_custom_command multiple command behavior (#15112)
Explicitly say that the commands are not composed into a stateful
script.
2014-09-02 15:13:50 -04:00
Brad King 3db5e31ec1 Merge topic 'string-uuid'
87e476e8 Help: Add notes for topic 'string-uuid'
328e8694 StringUuid: Implement new string(UUID) sub-command.
2014-09-02 10:43:16 -04:00
Brad King 87e476e8e4 Help: Add notes for topic 'string-uuid' 2014-09-02 10:33:39 -04:00
Brad King bfc81c5934 Merge topic 'vs-windows-apps'
39fefde2 VS: Add test case for Windows Phone and Windows Store
89da8465 MSVC: Define 'WIN32' for Windows Store and Windows Phone
ed7f085f Help: Add notes for topic 'vs-windows-apps'
dd11ae8f VS: Do not compile C sources as WinRT (#15100)
b8e40538 VS: Mark Windows Phone and Store targets as App Containers
0432f062 VS: Always ignore ole32 on Windows Phone 8.0
e6ff2f8b VS: Generate Windows Metadata for WinRT components
ee48f4c7 VS: Generate Windows Phone and Windows Store projects as Unicode
cb1aceed VS: Add VS_WINRT_COMPONENT property to enable CompileAsWinRT
401269e4 VS: Handle .pfx files explicitly in generator
23782171 VS: Handle AppxManifest sources explicitly in generator
bc373c6d VS: Set Window Phone/Store app type in CMake-generated targets
d89b2889 VS: Mark CMake-generated targets as Utility in .vcxproj files
03ad8f28 CMakeDetermineCompilerABI: Link with standard libraries on MSVC
2014-09-02 10:16:37 -04:00
Brad King ed7f085f96 Help: Add notes for topic 'vs-windows-apps' 2014-09-02 10:17:03 -04:00
Brad King dd11ae8f0f VS: Do not compile C sources as WinRT (#15100)
The MSVC /ZW flag is valid only for C++ sources.  Whenever we enable
CompileAsWinRT for the whole target, disable it for all C sources.
Update the documentation of VS_WINRT_COMPONENT to drop the statement
about undefined behavior for non-C++ sources, because it is now
defined as expected.
2014-09-02 10:17:02 -04:00
Nils Gladitz 328e869433 StringUuid: Implement new string(UUID) sub-command. 2014-08-28 15:13:54 +02:00
Brad King 8c30014982 Merge topic 'vs-masm'
cbd1d42b Help: Add notes for topic 'vs-masm'
0f8522a6 VS: Add MASM support to VS 8 and 9 (#8170, #14984)
a43f4400 VS: Move internal MasmEnabled member up to VS 7 generator
df3b007d VS: Add test for MASM support
e8727449 VS: Populate MASM tool build settings in .vcxproj files
0271a5f9 VS: Manually fix MASM flag table entries
1d662e48 VS: Generate MASM flag tables from MSBuild tool files
4f6940df VS: Fix ASM_MASM support in VS >= 10
d7866c52 ASM_MASM: Fix selection of ml64
0374abdb ASM_MASM: Add preprocessor definitions to compile lines
5b0a46e1 ASM_MASM: Do not require compiler to be a full path
802dbe52 cmLocalVisualStudio7Generator: Rename local 'lang' var
2014-08-22 10:37:55 -04:00
Brad King b4d3e7a7b0 Merge topic 'FindXerces'
20407006 FindXerces: New module to find Apache Xerces-C++
2014-08-22 10:37:53 -04:00
Gilles Khouzam cb1aceed8c VS: Add VS_WINRT_COMPONENT property to enable CompileAsWinRT
Deprecate VS_WINRT_EXTENSIONS and document VS_WINRT_COMPONENT as for VS
generators only.  Also define _WINRT_DLL in SHARED libraries in order to
get a .lib produced.

Inspired-by: Paul Annetts <paul@lightunobscured.com>
2014-08-21 09:28:20 -04:00
Roger Leigh 050caef3aa FindIce: New module to find ZeroC Ice
- autodetects Ice on all major platforms
- allows building with all supported Visual Studio versions on Windows
- autodetects the slice path on most platforms
- separately detects the Ice programs, headers, slice files and
  libraries so that any Ice configuration or installation errors can
  be accurately reported, making diagnosis of Ice problems simpler
2014-08-21 14:45:01 +02:00
Roger Leigh 204070068d FindXerces: New module to find Apache Xerces-C++ 2014-08-21 14:30:30 +02:00
Brad King cbd1d42b34 Help: Add notes for topic 'vs-masm' 2014-08-20 14:58:47 -04:00
Brad King c91a65f812 Merge topic 'FindOpenMP-add-Fortran-support'
d0678408 FindOpenMP: Add support for Fortran (#14656)
2014-08-19 09:48:41 -04:00
Brad King f7ab238379 Merge topic 'vs-special-source-file-properties'
aa21001b Help: Add notes for topic 'vs-special-source-file-properties'
6fe770e1 VS: Add a source file property to set the hlsl shader type
9b4dc2ad VS: Add a source file property to mark content for Windows App deployment
f063a914 VS: Re-arrange WriteExtraSource to support tool configuration
2014-08-18 13:31:41 -04:00
Nicolas Bock d067840854 FindOpenMP: Add support for Fortran (#14656) 2014-08-18 11:25:21 -04:00
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
Brad King fc8a888d2c Merge topic 'add-CheckFortranSourceCompiles'
7386d0d6 Add CheckFortranSourceCompiles module (#14656)
2014-08-18 11:21:50 -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 7386d0d6df Add CheckFortranSourceCompiles module (#14656)
Copy the CheckCSourceCompiles module and port it to Fortran.
Extend the FortranOnly test to try using the new module.

Suggested-by: Nicolas Bock <nicolasbock@gmail.com>
2014-08-18 11:18:48 -04:00
Brad King e619964052 Merge topic 'doc-CMP0022-compat-version-typo'
91857e04 CMP0022: Fix version documented to support LINK_PUBLIC/LINK_PRIVATE
2014-08-13 11:10:54 -04:00
Brad King 91857e0423 CMP0022: Fix version documented to support LINK_PUBLIC/LINK_PRIVATE
These have been available since 2.8.7, not 2.8.9 as the docs said.
2014-08-13 10:59:30 -04:00
Brad King aa21001bd3 Help: Add notes for topic 'vs-special-source-file-properties' 2014-08-12 10:09:20 -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 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 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 52584050c2 Merge topic 'CMakePackageConfigHelpers-INSTALL_PREFIX'
704830ae Help: Add notes for topic 'CMakePackageConfigHelpers-INSTALL_PREFIX'
e3007c92 CMakePackageConfigHelpers: Add unit tests for INSTALL_PREFIX option
d057bf85 CMakePackageConfigHelpers: Add INSTALL_PREFIX option
f3dd116c CMakePackageConfigHelpers: restructure documentation and document commands
64eca30d CMakePackageConfigHelpers: Remove unused variable
2014-08-11 09:54:08 -04:00
Brad King 704830ae1f Help: Add notes for topic 'CMakePackageConfigHelpers-INSTALL_PREFIX' 2014-08-11 09:49:14 -04:00
Brad King 975dc87174 Help: Add notes for topic 'wix-acl' 2014-08-11 09:47:09 -04:00
Nils Gladitz 12418f5c26 CPackWIX: Implement CPACK_WIX_ACL (Access Control List) property 2014-08-09 15:30:21 +02:00
Brad King a16a344b4b Merge topic 'doc-add_custom_command'
5bf1c5cc Help: Document add_custom_command PRE_BUILD/PRE_LINK for exe/lib only (#15059)
2a58c872 Help: Revise and format 'add_custom_command' docs
cb88742d Help: Remove stray content from 'add_custom_command' docs
2014-08-06 09:26:32 -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
Brad King 5d3d9a22b2 Help: Add notes for topic 'vs-windows-phone-and-store' 2014-08-05 10:49:09 -04:00
Brad King 5bf1c5cce1 Help: Document add_custom_command PRE_BUILD/PRE_LINK for exe/lib only (#15059)
State explicitly that the PRE_LINK mode is not for targets created by
the add_custom_target command.  The existing wording for PRE_BUILD being
treated as PRE_LINK by non-VS generators will now imply this restriction
for PRE_BUILD too.
2014-08-05 10:14:35 -04:00
Brad King 2a58c872d7 Help: Revise and format 'add_custom_command' docs
Format the reStructuredText markup manually.  Organize the command
options into a definition list.  Use inline markup to cross-reference
related documents.
2014-08-05 10:12:59 -04:00
Brad King cb88742da4 Help: Remove stray content from 'add_custom_command' docs
Remove leftover generator expression documentation that is now in
the cmake-generator-expressions(7) manual.
2014-08-05 09:59:10 -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
Gilles Khouzam 592098e2d5 Define 'WINDOWS_PHONE' and 'WINDOWS_STORE' variables
Set one of these when CMAKE_SYSTEM_NAME is "WindowsPhone" or
"WindowsStore", respectively.
2014-07-31 14:08:52 -04:00