Fix Linux/X11 build on ARMs.

(cherry picked from commit ce64c2a32e)
This commit is contained in:
bruvzg 2018-05-11 17:34:43 +03:00 committed by Hein-Pieter van Braam
parent c2a8eb2081
commit db76c54117
2 changed files with 3 additions and 4 deletions

View File

@ -235,7 +235,7 @@ OS::TimeZoneInfo OS_Unix::get_time_zone_info() const {
void OS_Unix::delay_usec(uint32_t p_usec) const { void OS_Unix::delay_usec(uint32_t p_usec) const {
struct timespec rem = { p_usec / 1000000, (p_usec % 1000000) * 1000 }; struct timespec rem = { static_cast<time_t>(p_usec / 1000000), static_cast<long>((p_usec % 1000000) * 1000) };
while (nanosleep(&rem, &rem) == EINTR) { while (nanosleep(&rem, &rem) == EINTR) {
} }
} }

View File

@ -264,7 +264,7 @@ if env["platform"] == 'uwp':
webm_cpu_x86 = True webm_cpu_x86 = True
else: else:
import platform import platform
is_x11_or_server_arm = ((env["platform"] == 'x11' or env["platform"] == 'server') and platform.machine().startswith('arm')) is_x11_or_server_arm = ((env["platform"] == 'x11' or env["platform"] == 'server') and (platform.machine().startswith('arm') or platform.machine().startswith('aarch')))
is_ios_x86 = (env["platform"] == 'iphone' and env["ios_sim"]) is_ios_x86 = (env["platform"] == 'iphone' and env["ios_sim"])
is_android_x86 = (env["platform"] == 'android' and env["android_arch"] == 'x86') is_android_x86 = (env["platform"] == 'android' and env["android_arch"] == 'x86')
if is_android_x86: if is_android_x86:
@ -347,7 +347,6 @@ if webm_cpu_arm:
if webm_simd_optimizations == False: 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_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)
@ -389,5 +388,5 @@ elif webm_cpu_arm:
env_libvpx.add_source_files(env.modules_sources, libvpx_sources_arm_neon_armasm_ms) env_libvpx.add_source_files(env.modules_sources, libvpx_sources_arm_neon_armasm_ms)
elif env["platform"] == 'iphone': elif env["platform"] == 'iphone':
env_libvpx.add_source_files(env.modules_sources, libvpx_sources_arm_neon_gas_apple) env_libvpx.add_source_files(env.modules_sources, libvpx_sources_arm_neon_gas_apple)
elif not env["android_arch"] == 'arm64v8': elif (is_x11_or_server_arm and cpu_bits == '32') or (env["platform"] == 'android' and not env["android_arch"] == 'arm64v8'):
env_libvpx.add_source_files(env.modules_sources, libvpx_sources_arm_neon_gas) env_libvpx.add_source_files(env.modules_sources, libvpx_sources_arm_neon_gas)