Fix WebM module for HTML5 platform

(cherry picked from commit 92b259ccf1)
This commit is contained in:
Leon Krause 2018-08-27 04:08:04 +02:00 committed by Rémi Verschelde
parent 6604638d82
commit ad8f85f8b7
2 changed files with 17 additions and 2 deletions

View File

@ -38,7 +38,6 @@ libvpx_sources = [
"vp8/decoder/decodemv.c", "vp8/decoder/decodemv.c",
"vp8/decoder/detokenize.c", "vp8/decoder/detokenize.c",
"vp8/decoder/onyxd_if.c", "vp8/decoder/onyxd_if.c",
"vp8/decoder/threading.c",
"vp9/vp9_dx_iface.c", "vp9/vp9_dx_iface.c",
@ -102,6 +101,10 @@ libvpx_sources = [
"vpx_util/vpx_thread.c" "vpx_util/vpx_thread.c"
] ]
libvpx_sources_mt = [
"vp8/decoder/threading.c",
]
libvpx_sources_intrin_x86 = [ libvpx_sources_intrin_x86 = [
"vp8/common/x86/filter_x86.c", "vp8/common/x86/filter_x86.c",
"vp8/common/x86/loopfilter_x86.c", "vp8/common/x86/loopfilter_x86.c",
@ -231,6 +234,7 @@ libvpx_sources_arm_neon_gas_apple = [
] ]
libvpx_sources = [libvpx_dir + file for file in libvpx_sources] libvpx_sources = [libvpx_dir + file for file in libvpx_sources]
libvpx_sources_mt = [libvpx_dir + file for file in libvpx_sources_mt]
libvpx_sources_intrin_x86 = [libvpx_dir + file for file in libvpx_sources_intrin_x86] libvpx_sources_intrin_x86 = [libvpx_dir + file for file in libvpx_sources_intrin_x86]
libvpx_sources_intrin_x86_mmx = [libvpx_dir + file for file in libvpx_sources_intrin_x86_mmx] libvpx_sources_intrin_x86_mmx = [libvpx_dir + file for file in libvpx_sources_intrin_x86_mmx]
libvpx_sources_intrin_x86_sse2 = [libvpx_dir + file for file in libvpx_sources_intrin_x86_sse2] libvpx_sources_intrin_x86_sse2 = [libvpx_dir + file for file in libvpx_sources_intrin_x86_sse2]
@ -253,6 +257,8 @@ env_webm.Append(CPPPATH=[libvpx_dir])
env_libvpx = env.Clone() env_libvpx = env.Clone()
env_libvpx.Append(CPPPATH=[libvpx_dir]) env_libvpx.Append(CPPPATH=[libvpx_dir])
webm_multithread = env["platform"] != 'javascript'
cpu_bits = env["bits"] cpu_bits = env["bits"]
osx_fat = (env["platform"] == 'osx' and cpu_bits == 'fat') osx_fat = (env["platform"] == 'osx' and cpu_bits == 'fat')
webm_cpu_x86 = False webm_cpu_x86 = False
@ -348,6 +354,10 @@ if webm_simd_optimizations == False:
print("WebM SIMD optimizations are disabled. Check if your CPU architecture, CPU bits or platform are supported!") print("WebM SIMD optimizations are disabled. Check if your CPU architecture, CPU bits or platform are supported!")
env_libvpx.add_source_files(env.modules_sources, libvpx_sources) env_libvpx.add_source_files(env.modules_sources, libvpx_sources)
if webm_multithread:
env_libvpx.add_source_files(env.modules_sources, libvpx_sources_mt)
if webm_cpu_x86: if webm_cpu_x86:
is_clang_or_gcc = ('gcc' in env["CC"]) or ('clang' in env["CC"]) or ("OSXCROSS_ROOT" in os.environ) is_clang_or_gcc = ('gcc' in env["CC"]) or ('clang' in env["CC"]) or ("OSXCROSS_ROOT" in os.environ)

View File

@ -67,6 +67,12 @@
#define CONFIG_BIG_ENDIAN 0 //TODO: Autodetect #define CONFIG_BIG_ENDIAN 0 //TODO: Autodetect
#ifdef __EMSCRIPTEN__
#define CONFIG_MULTITHREAD 0
#else
#define CONFIG_MULTITHREAD 1
#endif
#ifdef _WIN32 #ifdef _WIN32
#define HAVE_PTHREAD_H 0 #define HAVE_PTHREAD_H 0
#define HAVE_UNISTD_H 0 #define HAVE_UNISTD_H 0
@ -95,7 +101,6 @@
#define CONFIG_RUNTIME_CPU_DETECT 1 #define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_POSTPROC 0 #define CONFIG_POSTPROC 0
#define CONFIG_VP9_POSTPROC 0 #define CONFIG_VP9_POSTPROC 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_INTERNAL_STATS 0 #define CONFIG_INTERNAL_STATS 0
#define CONFIG_VP8_ENCODER 0 #define CONFIG_VP8_ENCODER 0
#define CONFIG_VP8_DECODER 1 #define CONFIG_VP8_DECODER 1