Merge "Fix building for arm with Visual Studio 2013"
This commit is contained in:
commit
3899315f05
@ -859,6 +859,13 @@ EOF
|
|||||||
msvs_arch_dir=arm-msvs
|
msvs_arch_dir=arm-msvs
|
||||||
disable_feature multithread
|
disable_feature multithread
|
||||||
disable_feature unit_tests
|
disable_feature unit_tests
|
||||||
|
vs_version=${tgt_cc##vs}
|
||||||
|
if [ $vs_version -ge 12 ]; then
|
||||||
|
# MSVC 2013 doesn't allow doing plain .exe projects for ARM,
|
||||||
|
# only "AppContainerApplication" which requires an AppxManifest.
|
||||||
|
# Therefore disable the examples, just build the library.
|
||||||
|
disable_feature examples
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
rvct)
|
rvct)
|
||||||
CC=armcc
|
CC=armcc
|
||||||
|
@ -292,6 +292,18 @@ generate_vcxproj() {
|
|||||||
tag_content ProjectGuid "{${guid}}"
|
tag_content ProjectGuid "{${guid}}"
|
||||||
tag_content RootNamespace ${name}
|
tag_content RootNamespace ${name}
|
||||||
tag_content Keyword ManagedCProj
|
tag_content Keyword ManagedCProj
|
||||||
|
if [ $vs_ver -ge 12 ] && [ "${platforms[0]}" = "ARM" ]; then
|
||||||
|
tag_content AppContainerApplication true
|
||||||
|
# The application type can be one of "Windows Store",
|
||||||
|
# "Windows Phone" or "Windows Phone Silverlight". The
|
||||||
|
# actual value doesn't matter from the libvpx point of view,
|
||||||
|
# since a static library built for one works on the others.
|
||||||
|
# The PlatformToolset field needs to be set in sync with this;
|
||||||
|
# for Windows Store and Windows Phone Silverlight it should be
|
||||||
|
# v120 while it should be v120_wp81 if the type is Windows Phone.
|
||||||
|
tag_content ApplicationType "Windows Store"
|
||||||
|
tag_content ApplicationTypeRevision 8.1
|
||||||
|
fi
|
||||||
close_tag PropertyGroup
|
close_tag PropertyGroup
|
||||||
|
|
||||||
tag Import \
|
tag Import \
|
||||||
@ -324,18 +336,10 @@ generate_vcxproj() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ "$vs_ver" = "12" ]; then
|
if [ "$vs_ver" = "12" ]; then
|
||||||
if [ "$plat" = "ARM" ]; then
|
# Setting a PlatformToolset indicating windows phone isn't
|
||||||
# Setting the wp80 toolchain automatically sets the
|
# enough to build code for arm with MSVC 2013, one strictly
|
||||||
# WINAPI_FAMILY define, which is required for building
|
# has to enable AppContainerApplication as well.
|
||||||
# code for arm with the windows headers. Alternatively,
|
tag_content PlatformToolset v120
|
||||||
# one could add AppContainerApplication=true in the Globals
|
|
||||||
# section and add PrecompiledHeader=NotUsing and
|
|
||||||
# CompileAsWinRT=false in ClCompile and SubSystem=Console
|
|
||||||
# in Link.
|
|
||||||
tag_content PlatformToolset v120_wp80
|
|
||||||
else
|
|
||||||
tag_content PlatformToolset v120
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
tag_content CharacterSet Unicode
|
tag_content CharacterSet Unicode
|
||||||
if [ "$config" = "Release" ]; then
|
if [ "$config" = "Release" ]; then
|
||||||
@ -427,15 +431,25 @@ generate_vcxproj() {
|
|||||||
if ${werror:-false}; then
|
if ${werror:-false}; then
|
||||||
tag_content TreatWarningAsError true
|
tag_content TreatWarningAsError true
|
||||||
fi
|
fi
|
||||||
|
if [ $vs_ver -ge 11 ]; then
|
||||||
|
# We need to override the defaults for these settings
|
||||||
|
# if AppContainerApplication is set.
|
||||||
|
tag_content CompileAsWinRT false
|
||||||
|
tag_content PrecompiledHeader NotUsing
|
||||||
|
tag_content SDLCheck false
|
||||||
|
fi
|
||||||
close_tag ClCompile
|
close_tag ClCompile
|
||||||
case "$proj_kind" in
|
case "$proj_kind" in
|
||||||
exe)
|
exe)
|
||||||
open_tag Link
|
open_tag Link
|
||||||
if [ "$name" != "obj_int_extract" ]; then
|
if [ "$name" != "obj_int_extract" ]; then
|
||||||
tag_content AdditionalDependencies "$curlibs"
|
tag_content AdditionalDependencies "$curlibs;%(AdditionalDependencies)"
|
||||||
tag_content AdditionalLibraryDirectories "$libdirs;%(AdditionalLibraryDirectories)"
|
tag_content AdditionalLibraryDirectories "$libdirs;%(AdditionalLibraryDirectories)"
|
||||||
fi
|
fi
|
||||||
tag_content GenerateDebugInformation true
|
tag_content GenerateDebugInformation true
|
||||||
|
# Console is the default normally, but if
|
||||||
|
# AppContainerApplication is set, we need to override it.
|
||||||
|
tag_content SubSystem Console
|
||||||
close_tag Link
|
close_tag Link
|
||||||
;;
|
;;
|
||||||
dll)
|
dll)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user