diff --git a/README b/README index 3adc55148eef9ae96dd41e6978396f59ae024075..979440eb70b5651758d99d72659eea83f550f0ba 100644 --- a/README +++ b/README @@ -59,6 +59,7 @@ COMPILING THE APPLICATIONS/LIBRARIES: armv7-none-rvct armv7-win32-vs11 armv7-win32-vs12 + armv7-win32-vs14 armv7s-darwin-gcc mips32-linux-gcc mips64-linux-gcc @@ -85,6 +86,7 @@ COMPILING THE APPLICATIONS/LIBRARIES: x86-win32-vs10 x86-win32-vs11 x86-win32-vs12 + x86-win32-vs14 x86_64-android-gcc x86_64-darwin9-gcc x86_64-darwin10-gcc @@ -102,6 +104,7 @@ COMPILING THE APPLICATIONS/LIBRARIES: x86_64-win64-vs10 x86_64-win64-vs11 x86_64-win64-vs12 + x86_64-win64-vs14 generic-gnu The generic-gnu target, in conjunction with the CROSS environment variable, diff --git a/build/make/gen_msvs_sln.sh b/build/make/gen_msvs_sln.sh index ffa370666cb0aeb6b738303974a71e0d98264c19..664b404c9133e47340082f24fd5d912120a7b3a6 100755 --- a/build/make/gen_msvs_sln.sh +++ b/build/make/gen_msvs_sln.sh @@ -19,13 +19,13 @@ show_help() { cat <<EOF Usage: ${self_basename} [options] file1 [file2 ...] -This script generates a Visual Studio 2005 solution file from a list of project +This script generates a Visual Studio solution file from a list of project files. Options: --help Print this message --out=outfile Redirect output to a file - --ver=version Version (7,8,9,10,11) of visual studio to generate for + --ver=version Version (7,8,9,10,11,12,14) of visual studio to generate for --target=isa-os-cc Target specifier EOF exit 1 @@ -255,7 +255,7 @@ for opt in "$@"; do ;; --ver=*) vs_ver="$optval" case $optval in - [789]|10|11|12) + [789]|10|11|12|14) ;; *) die Unrecognized Visual Studio Version in $opt ;; @@ -300,12 +300,15 @@ case "${vs_ver:-8}" in 12) sln_vers="12.00" sln_vers_str="Visual Studio 2013" ;; + 14) sln_vers="14.00" + sln_vers_str="Visual Studio 2015" + ;; esac case "${vs_ver:-8}" in [789]) sfx=vcproj ;; - 10|11|12) + 10|11|12|14) sfx=vcxproj ;; esac diff --git a/build/make/gen_msvs_vcxproj.sh b/build/make/gen_msvs_vcxproj.sh index b653651030e41f6f48b5c30958aa37f3291b2401..182ea28fa775aac7bf3b08caa66ba75da156feda 100755 --- a/build/make/gen_msvs_vcxproj.sh +++ b/build/make/gen_msvs_vcxproj.sh @@ -34,7 +34,7 @@ Options: --name=project_name Name of the project (required) --proj-guid=GUID GUID to use for the project --module-def=filename File containing export definitions (for DLLs) - --ver=version Version (10,11,12) of visual studio to generate for + --ver=version Version (10,11,12,14) of visual studio to generate for --src-path-bare=dir Path to root of source tree -Ipath/to/include Additional include directories -DFLAG[=value] Preprocessor macros to define @@ -168,7 +168,7 @@ for opt in "$@"; do --ver=*) vs_ver="$optval" case "$optval" in - 10|11|12) + 10|11|12|14) ;; *) die Unrecognized Visual Studio Version in $opt ;; @@ -218,7 +218,7 @@ guid=${guid:-`generate_uuid`} asm_use_custom_step=false uses_asm=${uses_asm:-false} case "${vs_ver:-11}" in - 10|11|12) + 10|11|12|14) asm_use_custom_step=$uses_asm ;; esac @@ -344,6 +344,9 @@ generate_vcxproj() { # has to enable AppContainerApplication as well. tag_content PlatformToolset v120 fi + if [ "$vs_ver" = "14" ]; then + tag_content PlatformToolset v140 + fi tag_content CharacterSet Unicode if [ "$config" = "Release" ]; then tag_content WholeProgramOptimization true diff --git a/configure b/configure index fcab145812ca1747a0594f8898399b6ec2de1155..cd1b0bf21ad0a76412e6f6e1ed29a4b4c98a142a 100755 --- a/configure +++ b/configure @@ -106,6 +106,7 @@ all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8 all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8 all_platforms="${all_platforms} armv7-win32-vs11" all_platforms="${all_platforms} armv7-win32-vs12" +all_platforms="${all_platforms} armv7-win32-vs14" all_platforms="${all_platforms} armv7s-darwin-gcc" all_platforms="${all_platforms} mips32-linux-gcc" all_platforms="${all_platforms} mips64-linux-gcc" @@ -132,6 +133,7 @@ all_platforms="${all_platforms} x86-win32-vs9" all_platforms="${all_platforms} x86-win32-vs10" all_platforms="${all_platforms} x86-win32-vs11" all_platforms="${all_platforms} x86-win32-vs12" +all_platforms="${all_platforms} x86-win32-vs14" all_platforms="${all_platforms} x86_64-android-gcc" all_platforms="${all_platforms} x86_64-darwin9-gcc" all_platforms="${all_platforms} x86_64-darwin10-gcc" @@ -149,6 +151,7 @@ all_platforms="${all_platforms} x86_64-win64-vs9" all_platforms="${all_platforms} x86_64-win64-vs10" all_platforms="${all_platforms} x86_64-win64-vs11" all_platforms="${all_platforms} x86_64-win64-vs12" +all_platforms="${all_platforms} x86_64-win64-vs14" all_platforms="${all_platforms} generic-gnu" # all_targets is a list of all targets that can be configured @@ -639,7 +642,7 @@ process_toolchain() { VCPROJ_SFX=vcproj gen_vcproj_cmd=${source_path}/build/make/gen_msvs_proj.sh ;; - 10|11|12) + 10|11|12|14) VCPROJ_SFX=vcxproj gen_vcproj_cmd=${source_path}/build/make/gen_msvs_vcxproj.sh enabled werror && gen_vcproj_cmd="${gen_vcproj_cmd} --enable-werror" diff --git a/vp8/common/generic/systemdependent.c b/vp8/common/generic/systemdependent.c index 4393ced48c80a3bb1648ede08916817908ff4d2d..28dc262ae5a2c1c935a213c3f2977de80b679892 100644 --- a/vp8/common/generic/systemdependent.c +++ b/vp8/common/generic/systemdependent.c @@ -45,6 +45,10 @@ static int get_cpu_count() #endif #elif defined(_WIN32) { +#if _WIN32_WINNT >= 0x0501 + SYSTEM_INFO sysinfo; + GetNativeSystemInfo(&sysinfo); +#else PGNSI pGNSI; SYSTEM_INFO sysinfo; @@ -57,6 +61,7 @@ static int get_cpu_count() pGNSI(&sysinfo); else GetSystemInfo(&sysinfo); +#endif core_count = sysinfo.dwNumberOfProcessors; } diff --git a/vpx_ports/x86.h b/vpx_ports/x86.h index 7d93710c4b0381ae0199172d2c57fa4e6232ce71..0fef6a525e5960d2c95b80044784cee51d7b1928 100644 --- a/vpx_ports/x86.h +++ b/vpx_ports/x86.h @@ -136,6 +136,13 @@ static INLINE uint64_t xgetbv(void) { #define xgetbv() 0U // no AVX for older x64 or unrecognized toolchains. #endif +#if defined(_MSC_VER) +#include <windows.h> +#if WINAPI_FAMILY_PARTITION(WINAPI_FAMILY_APP) +#define getenv(x) NULL +#endif +#endif + #define HAS_MMX 0x01 #define HAS_SSE 0x02 #define HAS_SSE2 0x04