summaryrefslogtreecommitdiffstats
path: root/Source/cmVisualStudio10TargetGenerator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Genex: Allow COMPILE_LANGUAGE when processing compile definitions.Stephen Kelly2015-03-091-1/+2
| | | | Issue an error if this is encountered by an IDE generator.
* cmVisualStudio10TargetGenerator: Wrap long lineBrad King2015-02-241-1/+2
|
* VS: Specify absolute output directory for the Midl toolTim Blechmann2015-02-231-1/+1
| | | | | | | Generate the OutputDirectory element value as an absolute path to the same location as the existing relative path. Somehow this addresses an occasional failure in a large/complex build, and should not hurt basic use cases.
* VS: Set default language in generated Windows Phone and Store projectsRobert Goulet2015-01-291-0/+2
| | | | | | | Otherwise building such projects gives: warning APPX1901: The DefaultLanguage property is either missing from the project file or does not have a value
* VS: Add missing newlines to .vcxproj generationRobert Goulet2015-01-291-2/+2
|
* VS: Add source file property to set extra hlsl shader flagsRobert Goulet2015-01-281-0/+13
| | | | | Create a VS_SHADER_FLAGS source file property so that we can set all other Visual Studio .hlsl shader file compilation flags.
* Add 'ANDROID_API_MIN' target property to set Android Target MIN APIDmitry Polyanitsa2014-12-171-0/+6
| | | | | | Also add a 'CMAKE_ANDROID_API_MIN' variable to set the property default. Teach the VS generator to write the MIN API value into Nsight Tegra project files.
* VS: Inherit target-level "-wd" flags in source files (#15284)Brad King2014-12-041-0/+5
| | | | | | | If a source file COMPILE_FLAGS option adds "-wd", the .vcxproj file will have a DisableSpecificWarnings setting for the source file. Add to the setting a reference to %(DisableSpecificWarnings) to inherit any such flags set for the whole target.
* Merge topic 'vs-hlsl-typo'Brad King2014-12-041-1/+1
|\ | | | | | | | | 955fbf29 VS: Fix typo in VS_SHADER_MODEL lookup comment
| * VS: Fix typo in VS_SHADER_MODEL lookup commentBrad King2014-12-031-1/+1
| |
* | Merge topic 'vs-phone-store-deployment-location'Brad King2014-12-041-0/+15
|\ \ | | | | | | | | | | | | 352f246f VS: Add source file property to specify Windows App deployment location
| * | VS: Add source file property to specify Windows App deployment locationGilles Khouzam2014-12-031-0/+15
| |/ | | | | | | | | | | | | | | | | | | Add a VS_DEPLOYMENT_LOCATION source file property to specify where to put files that are part of the package. For example: set_property(SOURCE ${ASSET_FILES} PROPERTY VS_DEPLOYMENT_LOCATION "assets") Without this, sources marked with VS_DEPLOYMENT_CONTENT cannot be located properly.
* | Merge topic 'fix-wince-unicode-entry-point'Brad King2014-12-031-2/+16
|\ \ | | | | | | | | | | | | 681cda02 VS, WINCE: Fix entry point for Unicode builds
| * | VS, WINCE: Fix entry point for Unicode buildsPascal Bach2014-12-031-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | When _UNICODE is defined VS uses wmain instead of main as the entry function. To make this correctly work on WindowsCE EntryPointSymbol needs to be set to mainWCRTStartup instead of mainACRTStartup for console applications and to wWinMainCRTStartup instead of WinMainCRTStartup for GUI applications. Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
* | | Merge topic 'vs-hlsl-settings'Brad King2014-12-031-1/+26
|\ \ \ | | |/ | |/| | | | | | | 2a224b4c VS: Add source file properties to set the hlsl shader entry point and model
| * | VS: Add source file properties to set the hlsl shader entry point and modelCedric Perthuis2014-12-031-1/+26
| |/ | | | | | | | | | | Create properties VS_SHADER_ENTRYPOINT and VS_SHADER_MODEL. Without these many .hlsl source files may not be possible to use. Extend the VSWinStorePhone test project to cover them.
* | Merge topic 'vs-check-phone-store-tools'Brad King2014-11-181-1/+2
|\ \ | | | | | | | | | | | | | | | 689cd0d4 VS: Do not produce WinMD file for OBJECT libraries (#15228) b20a32ac VS: Improve error messages when compiler is not detected (#15228)
| * | VS: Do not produce WinMD file for OBJECT libraries (#15228)Gilles Khouzam2014-11-171-1/+2
| |/ | | | | | | | | They are implemented as static libraries for the IDE so treat them the same.
* | Merge topic 'fix-vs2015-warnings'Brad King2014-11-171-2/+2
|\ \ | | | | | | | | | | | | | | | b138be07 cmVisualStudio10TargetGenerator: fix a narrowing warning 8d379cd7 cmCallVisualStudioMacro: fix a shadowing warning
| * | cmVisualStudio10TargetGenerator: fix a narrowing warningBen Boeckel2014-11-131-2/+2
| |/ | | | | | | | | 0xAA literals are integers which doesn't fit into a char array. C++11 says this is an error and VS2015 now warns about it.
* | VS: Change Nsight Tegra 2.0 Project Revision Number from 8 to 9Dmitry Polyanitsa2014-11-131-2/+2
|/ | | | | A hotfix to Nsight Tegra 2.0 needed to increase the project number. Teach CMake to generate the newer number for this version.
* Merge topic 'vs-nsight-tegra-generator'Brad King2014-09-301-3/+152
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | df84281d Help: Add notes for topic 'vs-nsight-tegra-generator' 69e198dc VS: Generate Nsight Tegra project revision number 5365c9ac VS: Map Nsight Tegra file types in .vcxproj files 178f56a5 VS: Fix Tegra-Android platform linking of libraries by name 7115702f Tests: Add test for VS Nsight Tegra generator support a6289499 VS: Generate ANDROID_GUI executables as app packages c12e4699 Add 'ANDROID_API' target property to set Android Target API 9a4df52a Add 'ANDROID_GUI' target property to mark Android applications 16569abf cmTarget: Track internally whether platform is Android ef0fd4f0 VS: Teach vcxproj generation about the Tegra-Android platform d09b60f5 VS: Detect compiler id of Nsight Tegra-Android toolchains 2f071466 VS: Teach VS >= 10 to recognize CMAKE_SYSTEM_NAME 'Android'
| * VS: Generate Nsight Tegra project revision numberBrad King2014-09-301-3/+26
| | | | | | | | | | | | Nsight Tegra 2.0 will be revision '8'. Generate this revision number and add a NsightTegraUpgradeOnceWithoutPrompt element to tell newer versions not to prompt when upgrading the generated project file.
| * VS: Map Nsight Tegra file types in .vcxproj filesBrad King2014-09-301-1/+23
| | | | | | | | | | | | | | Map ".java" to JCompile, ".asm" and ".s" to ClCompile, and a few Android-specific source file names to AndroidBuild. This allows Nsight Tegra 1.6 and above to check up-to-dateness of such sources. Bump NsightTegraProjectRevisionNumber to 7 to allow these fields.
| * VS: Generate ANDROID_GUI executables as app packagesBrad King2014-09-301-1/+52
| | | | | | | | | | | | When an executable is marked with ANDROID_GUI, generate an AntBuild step in the .vcxproj file and point it at the directory found to contain AndroidManifest.xml. Assume it also contains build.xml.
| * Add 'ANDROID_API' target property to set Android Target APIBrad King2014-09-301-0/+6
| | | | | | | | Also add a 'CMAKE_ANDROID_API' variable to set the property default.
| * VS: Teach vcxproj generation about the Tegra-Android platformBrad King2014-09-291-3/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Complete the basic implementation of the VS Tegra-Android generators by replacing parts of vcxproj files that are specific to MS tools with settings defined for the NVIDIA Nsight Tegra tools. Current limitations include: * We have no "flag table" so flags will be passed in the additional options fields instead of mapped to the vcxproj elements defined by Nsight Tegra msbuild platform definition files. * We have no interface to set the AndroidArch, AndroidStlType, or AndroidTargetAPI fields so defaults will be used. * The Nsight Tegra msbuild platform definition files do not provide a working "Utility" target type so for add_custom_target we need to use a "StaticLibrary" target type and leave out ClCompile rules. * There is also no target type for plain command-line executables so for add_executable we need to use a "DynamicLibrary" target. Full application bundles will likely require new CMake target properties (like WIN32_EXECUTABLE for Windows GUI executables).
* | Merge topic 'vs-minor-cleanups'Brad King2014-09-291-1/+5
|\ \ | |/ | | | | | | | | | | c655f0c4 VS: Drop GenerateManifest from .vcxproj files for non-MS tools 227a3367 VS: Use case-insensitive check for hlsl,jpg,png,xml file extensions 4a24015a Tests: Always detect VS and SDK availability on Windows
| * VS: Drop GenerateManifest from .vcxproj files for non-MS toolsBrad King2014-09-291-0/+4
| | | | | | | | | | The .vcxproj file content generated by OutputLinkIncremental is specific to MS tools, so drop it when using other tools.
| * VS: Use case-insensitive check for hlsl,jpg,png,xml file extensionsBrad King2014-09-291-1/+1
| | | | | | | | | | These "extra" sources should map to the proper tool even when they are not in lower case.
* | VS, WINCE: Only set EntryPointSymbol for executablesPascal Bach2014-09-221-2/+8
| |
* | VS: Add Certificates to .vcxproj filesGilles Khouzam2014-09-191-0/+4
|/ | | | | | After certificates were moved into their own category in cmGeneratorTarget, that category was not added for output by the VS 10 generator. Add it now.
* VS: Teach VS >= 10 generator about Windows CEPascal Bach2014-09-151-2/+18
| | | | | | | | When CMAKE_SYSTEM_NAME is 'WindowsCE': * Set the Subsystem and EntryPointSymbol accordingly. * When CMAKE_SYSTEM_VERSION is 8.0 (Windows CE 2013), select the CE800 toolset by default.
* Merge topic 'vs-windows-apps'Brad King2014-09-021-11/+652
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * VS: Do not compile C sources as WinRT (#15100)Brad King2014-09-021-1/+14
| | | | | | | | | | | | | | | | 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.
| * VS: Mark Windows Phone and Store targets as App ContainersGilles Khouzam2014-09-021-3/+541
| | | | | | | | | | | | | | | | | | | | | | * Add AppContainerApplication to non-UTILITY targets * Generate app manifest and related files if project does not provide them. Place them in a per-target directory to avoid clashes. * Mark WinRT components with WinMDAssembly * Import Windows Phone 8.0 targets in .vcxproj files when necessary, and reference platform.winmd. Inspired-by: Paul Annetts <paul@lightunobscured.com>
| * VS: Always ignore ole32 on Windows Phone 8.0Gilles Khouzam2014-08-211-0/+7
| | | | | | | | Inspired-by: Paul Annetts <paul@lightunobscured.com>
| * VS: Generate Windows Metadata for WinRT componentsGilles Khouzam2014-08-211-0/+27
| | | | | | | | Inspired-by: Paul Annetts <paul@lightunobscured.com>
| * VS: Generate Windows Phone and Windows Store projects as UnicodeGilles Khouzam2014-08-211-0/+2
| |
| * VS: Add VS_WINRT_COMPONENT property to enable CompileAsWinRTGilles Khouzam2014-08-211-1/+26
| | | | | | | | | | | | | | | | 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>
| * VS: Handle .pfx files explicitly in generatorGilles Khouzam2014-08-211-0/+29
| | | | | | | | | | | | | | | | Teach cmGeneratorTarget to classify .pfx files as package certificate key files. Teach cmVisualStudio10TargetGenerator to write them as PackageCertificateKeyFile in .vcxproj files. Inspired-by: Minmin Gong <minmin.gong@gmail.com>
| * VS: Handle AppxManifest sources explicitly in generatorGilles Khouzam2014-08-211-5/+5
| | | | | | | | | | | | | | Teach cmGeneratorTarget to extract .appxmanifest sources separately. Teach cmVisualStudio10TargetGenerator to write them with the AppxManifest tool in .vcxproj files. This will allow us to detect whether the project provides an application manfiest explicitly.
| * VS: Set Window Phone/Store app type in CMake-generated targetsBrad King2014-08-211-1/+1
| | | | | | | | | | | | | | Generate the ApplicationType and ApplicationTypeRevision elements in .vcxproj files for CMake-generated targets like 'INSTALL' and 'RUN_TESTS'. This was accidentally left out of commit 709cebde (VS: Generate WindowsPhone and WindowsStore application types, 2014-07-31).
| * VS: Mark CMake-generated targets as Utility in .vcxproj filesBrad King2014-08-211-1/+1
| | | | | | | | | | | | Targets like 'INSTALL' and 'RUN_TESTS' are Utility targets. Fix the VS >= 10 generator to set this correctly. We already do so for VS < 10.
* | Merge topic 'vs-masm'Brad King2014-08-221-1/+93
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | VS: Populate MASM tool build settings in .vcxproj filesBrad King2014-08-131-0/+92
| | |
| * | VS: Fix ASM_MASM support in VS >= 10Brad King2014-08-131-1/+1
| | | | | | | | | | | | | | | Fix a typo introduced by commit ce511435 (stringapi: Use strings for the languages, 2014-02-03) to check the language name correctly.
* | | Merge topic 'vs-refactor-includes'Brad King2014-08-191-20/+24
|\ \ \ | |/ / | | / | |/ |/| | | | | | | 5fcb42ab VS: Refactor include directory generation in .vcxproj files 8e026aa7 VS: Refactor include directory slash conversion 9633d112 cmIDEOptions: Add HasFlag method to test if a flag is set 84100102 cmIDEOptions: Add an AppendFlag overload to append multiple values
| * VS: Refactor include directory generation in .vcxproj filesBrad King2014-08-131-18/+19
| | | | | | | | | | | | | | | | 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.
| * VS: Refactor include directory slash conversionBrad King2014-08-131-3/+6
| | | | | | | | | | Convert each include directory to windows slashes once instead of repeating it each time they are written out to the project file.