diff options
Diffstat (limited to 'third_party/aom/build')
40 files changed, 0 insertions, 3747 deletions
diff --git a/third_party/aom/build/cmake/aom_config.c.template b/third_party/aom/build/cmake/aom_config.c.template deleted file mode 100644 index 62f0a10ab..000000000 --- a/third_party/aom/build/cmake/aom_config.c.template +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright (c) 2016, Alliance for Open Media. All rights reserved - * - * This source code is subject to the terms of the BSD 2 Clause License and - * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License - * was not distributed with this source code in the LICENSE file, you can - * obtain it at www.aomedia.org/license/software. If the Alliance for Open - * Media Patent License 1.0 was not distributed with this source code in the - * PATENTS file, you can obtain it at www.aomedia.org/license/patent. - */ -#include "aom/aom_codec.h" -static const char* const cfg = "${AOM_CMAKE_CONFIG}"; -const char *aom_codec_build_config(void) {return cfg;} diff --git a/third_party/aom/build/cmake/aom_config_defaults.cmake b/third_party/aom/build/cmake/aom_config_defaults.cmake deleted file mode 100644 index a07438cfe..000000000 --- a/third_party/aom/build/cmake/aom_config_defaults.cmake +++ /dev/null @@ -1,196 +0,0 @@ -# -# Copyright (c) 2016, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. - -include("${AOM_ROOT}/build/cmake/util.cmake") - -# This file sets default values for libaom configuration variables. All libaom -# config variables are added to the CMake variable cache via the macros provided -# in util.cmake. - -# -# The variables in this section of the file are detected at configuration time, -# but can be overridden via the use of CONFIG_* and ENABLE_* values also defined -# in this file. -# - -set_aom_detect_var(INLINE "" STRING "Sets INLINE value for current target.") - -# CPUs. -set_aom_detect_var(ARCH_ARM 0 NUMBER "Enables ARM architecture.") -set_aom_detect_var(ARCH_MIPS 0 NUMBER "Enables MIPS architecture.") -set_aom_detect_var(ARCH_PPC 0 NUMBER "Enables PPC architecture.") -set_aom_detect_var(ARCH_X86 0 NUMBER "Enables X86 architecture.") -set_aom_detect_var(ARCH_X86_64 0 NUMBER "Enables X86_64 architecture.") - -# ARM feature flags. -set_aom_detect_var(HAVE_NEON 0 NUMBER "Enables NEON intrinsics optimizations.") - -# MIPS feature flags. -set_aom_detect_var(HAVE_DSPR2 0 NUMBER "Enables DSPR2 optimizations.") -set_aom_detect_var(HAVE_MIPS32 0 NUMBER "Enables MIPS32 optimizations.") -set_aom_detect_var(HAVE_MIPS64 0 NUMBER "Enables MIPS64 optimizations. ") -set_aom_detect_var(HAVE_MSA 0 NUMBER "Enables MSA optimizations.") - -# PPC feature flags. -set_aom_detect_var(HAVE_VSX 0 NUMBER "Enables VSX optimizations.") - -# x86/x86_64 feature flags. -set_aom_detect_var(HAVE_AVX 0 NUMBER "Enables AVX optimizations.") -set_aom_detect_var(HAVE_AVX2 0 NUMBER "Enables AVX2 optimizations.") -set_aom_detect_var(HAVE_MMX 0 NUMBER "Enables MMX optimizations. ") -set_aom_detect_var(HAVE_SSE 0 NUMBER "Enables SSE optimizations.") -set_aom_detect_var(HAVE_SSE2 0 NUMBER "Enables SSE2 optimizations.") -set_aom_detect_var(HAVE_SSE3 0 NUMBER "Enables SSE3 optimizations.") -set_aom_detect_var(HAVE_SSE4_1 0 NUMBER "Enables SSE 4.1 optimizations.") -set_aom_detect_var(HAVE_SSE4_2 0 NUMBER "Enables SSE 4.2 optimizations.") -set_aom_detect_var(HAVE_SSSE3 0 NUMBER "Enables SSSE3 optimizations.") - -# Flags describing the build environment. -set_aom_detect_var(HAVE_FEXCEPT 0 NUMBER - "Internal flag, GNU fenv.h present for target.") -set_aom_detect_var(HAVE_PTHREAD_H 0 NUMBER - "Internal flag, target pthread support.") -set_aom_detect_var(HAVE_UNISTD_H 0 NUMBER - "Internal flag, unistd.h present for target.") -set_aom_detect_var(HAVE_WXWIDGETS 0 NUMBER "WxWidgets present.") - -# -# Variables in this section can be set from the CMake command line or from -# within the CMake GUI. The variables control libaom features. -# - -# Build configuration flags. -set_aom_config_var(AOM_RTCD_FLAGS "" STRING - "Arguments to pass to rtcd.pl. Separate with ';'") -set_aom_config_var(CONFIG_AV1_DECODER 1 NUMBER "Enable AV1 decoder.") -set_aom_config_var(CONFIG_AV1_ENCODER 1 NUMBER "Enable AV1 encoder.") -set_aom_config_var(CONFIG_BIG_ENDIAN 0 NUMBER "Internal flag.") -set_aom_config_var(CONFIG_GCC 0 NUMBER "Building with GCC (detect).") -set_aom_config_var(CONFIG_GCOV 0 NUMBER "Enable gcov support.") -set_aom_config_var(CONFIG_GPROF 0 NUMBER "Enable gprof support.") -set_aom_config_var(CONFIG_LIBYUV 1 NUMBER - "Enables libyuv scaling/conversion support.") - -set_aom_config_var(CONFIG_MULTITHREAD 1 NUMBER "Multithread support.") -set_aom_config_var(CONFIG_OS_SUPPORT 0 NUMBER "Internal flag.") -set_aom_config_var(CONFIG_PIC 0 NUMBER "Build with PIC enabled.") -set_aom_config_var(CONFIG_RUNTIME_CPU_DETECT 1 NUMBER - "Runtime CPU detection support.") -set_aom_config_var(CONFIG_SHARED 0 NUMBER "Build shared libs.") -set_aom_config_var(CONFIG_STATIC 1 NUMBER "Build static libs.") -set_aom_config_var(CONFIG_WEBM_IO 1 NUMBER "Enables WebM support.") - -# Debugging flags. -set_aom_config_var(CONFIG_BITSTREAM_DEBUG 0 NUMBER "Bitstream debugging flag.") -set_aom_config_var(CONFIG_DEBUG 0 NUMBER "Debug build flag.") -set_aom_config_var(CONFIG_MISMATCH_DEBUG 0 NUMBER "Mismatch debugging flag.") - -# AV1 feature flags. -set_aom_config_var(CONFIG_ACCOUNTING 0 NUMBER "Enables bit accounting.") -set_aom_config_var(CONFIG_ANALYZER 0 NUMBER "Enables bit stream analyzer.") -set_aom_config_var(CONFIG_COEFFICIENT_RANGE_CHECKING 0 NUMBER - "Coefficient range check.") -set_aom_config_var(CONFIG_DENOISE 1 NUMBER - "Denoise/noise modeling support in encoder.") -set_aom_config_var(CONFIG_FILEOPTIONS 1 NUMBER - "Enables encoder config file support.") -set_aom_config_var(CONFIG_FIX_GF_LENGTH 1 NUMBER - "Fix the GF length if possible") -set_aom_config_var(CONFIG_INSPECTION 0 NUMBER "Enables bitstream inspection.") -set_aom_config_var(CONFIG_INTERNAL_STATS 0 NUMBER - "Enables internal encoder stats.") -set_aom_config_var(CONFIG_LOWBITDEPTH 0 NUMBER - "Enables 8-bit optimized pipeline.") -set_aom_config_var(CONFIG_MAX_DECODE_PROFILE 2 NUMBER - "Max profile to support decoding.") -set_aom_config_var(CONFIG_NORMAL_TILE_MODE 0 NUMBER - "Only enables normal tile mode.") -set_aom_config_var( - CONFIG_REDUCED_ENCODER_BORDER 0 NUMBER - "Enable reduced border extention for encoder. \ - Disables superres and resize support." - ) -set_aom_config_var(CONFIG_SIZE_LIMIT 0 NUMBER "Limit max decode width/height.") -set_aom_config_var(CONFIG_SPATIAL_RESAMPLING 1 NUMBER "Spatial resampling.") -set_aom_config_var(DECODE_HEIGHT_LIMIT 0 NUMBER "Set limit for decode height.") -set_aom_config_var(DECODE_WIDTH_LIMIT 0 NUMBER "Set limit for decode width.") -set_aom_config_var(CONFIG_GLOBAL_MOTION_SEARCH 1 NUMBER - "Global motion search flag.") - -# AV1 experiment flags. -set_aom_config_var(CONFIG_COLLECT_INTER_MODE_RD_STATS 1 NUMBER - "AV1 experiment flag.") -set_aom_config_var(CONFIG_COLLECT_RD_STATS 0 NUMBER "AV1 experiment flag.") -set_aom_config_var(CONFIG_DIST_8X8 0 NUMBER "AV1 experiment flag.") -set_aom_config_var(CONFIG_ENTROPY_STATS 0 NUMBER "AV1 experiment flag.") -set_aom_config_var(CONFIG_FP_MB_STATS 0 NUMBER "AV1 experiment flag.") -set_aom_config_var(CONFIG_INTER_STATS_ONLY 0 NUMBER "AV1 experiment flag.") -set_aom_config_var(CONFIG_RD_DEBUG 0 NUMBER "AV1 experiment flag.") -set_aom_config_var(CONFIG_2PASS_PARTITION_SEARCH_LVL 1 NUMBER - "AV1 experiment flag.") -set_aom_config_var(CONFIG_SHARP_SETTINGS 0 NUMBER - "Use sharper encoding settings") - -# -# Variables in this section control optional features of the build system. -# -set_aom_option_var(ENABLE_CCACHE "Enable ccache support." OFF) -set_aom_option_var(ENABLE_DECODE_PERF_TESTS "Enables decoder performance tests" - OFF) -set_aom_option_var(ENABLE_DISTCC "Enable distcc support." OFF) -set_aom_option_var(ENABLE_DOCS - "Enable documentation generation (doxygen required)." ON) -set_aom_option_var(ENABLE_ENCODE_PERF_TESTS "Enables encoder performance tests" - OFF) -set_aom_option_var(ENABLE_EXAMPLES "Enables build of example code." ON) -set_aom_option_var(ENABLE_GOMA "Enable goma support." OFF) -set_aom_option_var( - ENABLE_IDE_TEST_HOSTING - "Enables running tests within IDEs like Visual Studio and Xcode." OFF) -set_aom_option_var(ENABLE_NASM "Use nasm instead of yasm for x86 assembly." OFF) -set_aom_option_var(ENABLE_TESTDATA "Enables unit test data download targets." - ON) -set_aom_option_var(ENABLE_TESTS "Enables unit tests." ON) -set_aom_option_var(ENABLE_TOOLS "Enable applications in tools sub directory." - ON) -set_aom_option_var(ENABLE_WERROR "Converts warnings to errors at compile time." - OFF) - -# ARM assembly/intrinsics flags. -set_aom_option_var(ENABLE_NEON "Enables NEON optimizations on ARM targets." ON) - -# MIPS assembly/intrinsics flags. -set_aom_option_var(ENABLE_DSPR2 "Enables DSPR2 optimizations on MIPS targets." - OFF) -set_aom_option_var(ENABLE_MSA "Enables MSA optimizations on MIPS targets." OFF) - -# VSX intrinsics flags. -set_aom_option_var(ENABLE_VSX "Enables VSX optimizations on PowerPC targets." - ON) - -# x86/x86_64 assembly/intrinsics flags. -set_aom_option_var(ENABLE_MMX - "Enables MMX optimizations on x86/x86_64 targets." ON) -set_aom_option_var(ENABLE_SSE - "Enables SSE optimizations on x86/x86_64 targets." ON) -set_aom_option_var(ENABLE_SSE2 - "Enables SSE2 optimizations on x86/x86_64 targets." ON) -set_aom_option_var(ENABLE_SSE3 - "Enables SSE3 optimizations on x86/x86_64 targets." ON) -set_aom_option_var(ENABLE_SSSE3 - "Enables SSSE3 optimizations on x86/x86_64 targets." ON) -set_aom_option_var(ENABLE_SSE4_1 - "Enables SSE4_1 optimizations on x86/x86_64 targets." ON) -set_aom_option_var(ENABLE_SSE4_2 - "Enables SSE4_2 optimizations on x86/x86_64 targets." ON) -set_aom_option_var(ENABLE_AVX - "Enables AVX optimizations on x86/x86_64 targets." ON) -set_aom_option_var(ENABLE_AVX2 - "Enables AVX2 optimizations on x86/x86_64 targets." ON) diff --git a/third_party/aom/build/cmake/aom_configure.cmake b/third_party/aom/build/cmake/aom_configure.cmake deleted file mode 100644 index c0c7381e8..000000000 --- a/third_party/aom/build/cmake/aom_configure.cmake +++ /dev/null @@ -1,377 +0,0 @@ -# -# Copyright (c) 2016, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_AOM_CONFIGURE_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_AOM_CONFIGURE_CMAKE_ -set(AOM_BUILD_CMAKE_AOM_CONFIGURE_CMAKE_ 1) - -include(FindGit) -include(FindPerl) -include(FindThreads) - -set(AOM_SUPPORTED_CPU_TARGETS - "arm64 armv7 armv7s generic mips32 mips64 ppc x86 x86_64") - -include("${AOM_ROOT}/build/cmake/aom_config_defaults.cmake") -include("${AOM_ROOT}/build/cmake/aom_experiment_deps.cmake") -include("${AOM_ROOT}/build/cmake/aom_optimization.cmake") -include("${AOM_ROOT}/build/cmake/compiler_flags.cmake") -include("${AOM_ROOT}/build/cmake/compiler_tests.cmake") -include("${AOM_ROOT}/build/cmake/util.cmake") - -# Generate the user config settings. -list(APPEND aom_build_vars ${AOM_CONFIG_VARS} ${AOM_OPTION_VARS}) -foreach(cache_var ${aom_build_vars}) - get_property(cache_var_helpstring CACHE ${cache_var} PROPERTY HELPSTRING) - if("${cache_var_helpstring}" STREQUAL "${cmake_cmdline_helpstring}") - set(AOM_CMAKE_CONFIG "${AOM_CMAKE_CONFIG} -D${cache_var}=${${cache_var}}") - endif() -endforeach() -string(STRIP "${AOM_CMAKE_CONFIG}" AOM_CMAKE_CONFIG) - -# Detect target CPU. -if(NOT AOM_TARGET_CPU) - if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "AMD64" OR - "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") - if(${CMAKE_SIZEOF_VOID_P} EQUAL 4) - set(AOM_TARGET_CPU "x86") - elseif(${CMAKE_SIZEOF_VOID_P} EQUAL 8) - set(AOM_TARGET_CPU "x86_64") - else() - message(FATAL_ERROR - "--- Unexpected pointer size (${CMAKE_SIZEOF_VOID_P}) for\n" - " CMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}\n" - " CMAKE_SYSTEM_PROCESSOR=${CMAKE_SYSTEM_PROCESSOR}\n" - " CMAKE_GENERATOR=${CMAKE_GENERATOR}\n") - endif() - elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "i386" OR - "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86") - set(AOM_TARGET_CPU "x86") - elseif("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "^arm" OR - "${CMAKE_SYSTEM_PROCESSOR}" MATCHES "^mips") - set(AOM_TARGET_CPU "${CMAKE_SYSTEM_PROCESSOR}") - elseif("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "aarch64") - set(AOM_TARGET_CPU "arm64") - elseif("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "^ppc") - set(AOM_TARGET_CPU "ppc") - else() - message(WARNING "The architecture ${CMAKE_SYSTEM_PROCESSOR} is not " - "supported, falling back to the generic target") - set(AOM_TARGET_CPU "generic") - endif() -endif() - -if(CMAKE_TOOLCHAIN_FILE) # Add toolchain file to config string. - file(RELATIVE_PATH toolchain_path "${AOM_CONFIG_DIR}" - "${CMAKE_TOOLCHAIN_FILE}") - set(toolchain_string "-DCMAKE_TOOLCHAIN_FILE=\\\"${toolchain_path}\\\"") - set(AOM_CMAKE_CONFIG "${toolchain_string} ${AOM_CMAKE_CONFIG}") -else() - - # Add detected CPU to the config string. - set(AOM_CMAKE_CONFIG "-DAOM_TARGET_CPU=${AOM_TARGET_CPU} ${AOM_CMAKE_CONFIG}") -endif() -set(AOM_CMAKE_CONFIG "-G \\\"${CMAKE_GENERATOR}\\\" ${AOM_CMAKE_CONFIG}") -file(RELATIVE_PATH source_path "${AOM_CONFIG_DIR}" "${AOM_ROOT}") -set(AOM_CMAKE_CONFIG "cmake ${source_path} ${AOM_CMAKE_CONFIG}") -string(STRIP "${AOM_CMAKE_CONFIG}" AOM_CMAKE_CONFIG) - -message("--- aom_configure: Detected CPU: ${AOM_TARGET_CPU}") -set(AOM_TARGET_SYSTEM ${CMAKE_SYSTEM_NAME}) - -if("${CMAKE_BUILD_TYPE}" MATCHES "Deb") - set(CONFIG_DEBUG 1) -endif() - -if(BUILD_SHARED_LIBS) - set(CONFIG_PIC 1) - set(CONFIG_SHARED 1) - set(CONFIG_STATIC 0) -endif() - -if(NOT MSVC) - if(CONFIG_PIC) - - # TODO(tomfinegan): clang needs -pie in CMAKE_EXE_LINKER_FLAGS for this to - # work. - set(CMAKE_POSITION_INDEPENDENT_CODE ON) - if("${AOM_TARGET_SYSTEM}" STREQUAL "Linux" AND "${AOM_TARGET_CPU}" MATCHES - "^armv7") - set(AOM_AS_FLAGS ${AOM_AS_FLAGS} --defsym PIC=1) - else() - set(AOM_AS_FLAGS ${AOM_AS_FLAGS} -DPIC) - endif() - endif() -endif() - -if(NOT "${AOM_SUPPORTED_CPU_TARGETS}" MATCHES "${AOM_TARGET_CPU}") - message(FATAL_ERROR - "No RTCD support for ${AOM_TARGET_CPU}. Create it, or " - "add -DAOM_TARGET_CPU=generic to your cmake command line for a " - "generic build of libaom and tools.") -endif() - -if("${AOM_TARGET_CPU}" STREQUAL "x86" OR "${AOM_TARGET_CPU}" STREQUAL "x86_64") - find_program(AS_EXECUTABLE yasm $ENV{YASM_PATH}) - if(NOT AS_EXECUTABLE OR ENABLE_NASM) - unset(AS_EXECUTABLE CACHE) - find_program(AS_EXECUTABLE nasm $ENV{NASM_PATH}) - if(AS_EXECUTABLE) - test_nasm() - endif() - endif() - - if(NOT AS_EXECUTABLE) - message(FATAL_ERROR - "Unable to find assembler. Install 'yasm' or 'nasm.' " - "To build without optimizations, add -DAOM_TARGET_CPU=generic to " - "your cmake command line.") - endif() - get_asm_obj_format("objformat") - set(AOM_AS_FLAGS -f ${objformat} ${AOM_AS_FLAGS}) - string(STRIP "${AOM_AS_FLAGS}" AOM_AS_FLAGS) -elseif("${AOM_TARGET_CPU}" MATCHES "arm") - if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - set(AS_EXECUTABLE as) - set(AOM_AS_FLAGS -arch ${AOM_TARGET_CPU} -isysroot ${CMAKE_OSX_SYSROOT}) - elseif("${AOM_TARGET_SYSTEM}" STREQUAL "Linux") - if(NOT AS_EXECUTABLE) - set(AS_EXECUTABLE as) - endif() - elseif("${AOM_TARGET_SYSTEM}" STREQUAL "Windows") - if(NOT AS_EXECUTABLE) - set(AS_EXECUTABLE ${CMAKE_C_COMPILER} -c -mimplicit-it=always) - endif() - endif() - if(NOT AS_EXECUTABLE) - message(FATAL_ERROR - "Unknown assembler for: ${AOM_TARGET_CPU}-${AOM_TARGET_SYSTEM}") - endif() - - string(STRIP "${AOM_AS_FLAGS}" AOM_AS_FLAGS) -endif() - -if(CONFIG_ANALYZER) - include(FindwxWidgets) - find_package(wxWidgets REQUIRED adv base core) - include(${wxWidgets_USE_FILE}) -endif() - -if(NOT MSVC AND CMAKE_C_COMPILER_ID MATCHES "GNU\|Clang") - set(CONFIG_GCC 1) -endif() - -if(CONFIG_GCOV) - message("--- Testing for CONFIG_GCOV support.") - require_linker_flag("-fprofile-arcs -ftest-coverage") - require_compiler_flag("-fprofile-arcs -ftest-coverage" YES) -endif() - -if(CONFIG_GPROF) - message("--- Testing for CONFIG_GPROF support.") - require_compiler_flag("-pg" YES) -endif() - -if("${AOM_TARGET_SYSTEM}" MATCHES "Darwin\|Linux\|Windows") - set(CONFIG_OS_SUPPORT 1) -endif() - -# -# Fix CONFIG_* dependencies. This must be done before including cpu.cmake to -# ensure RTCD_CONFIG_* are properly set. -fix_experiment_configs() - -# Test compiler support. -aom_get_inline("INLINE") - -# Don't just check for pthread.h, but use the result of the full pthreads -# including a linking check in FindThreads above. -set(HAVE_PTHREAD_H ${CMAKE_USE_PTHREADS_INIT}) -aom_check_source_compiles("unistd_check" "#include <unistd.h>" HAVE_UNISTD_H) - -if(NOT MSVC) - aom_push_var(CMAKE_REQUIRED_LIBRARIES "m") - aom_check_c_compiles( - "fenv_check" - "#define _GNU_SOURCE - #include <fenv.h> - void unused(void) { - (void)unused; - (void)feenableexcept(FE_DIVBYZERO | FE_INVALID); - }" - HAVE_FEXCEPT) - aom_pop_var(CMAKE_REQUIRED_LIBRARIES) -endif() - -include("${AOM_ROOT}/build/cmake/cpu.cmake") - -if(ENABLE_CCACHE) - set_compiler_launcher(ENABLE_CCACHE ccache) -endif() - -if(ENABLE_DISTCC) - set_compiler_launcher(ENABLE_DISTCC distcc) -endif() - -if(ENABLE_GOMA) - set_compiler_launcher(ENABLE_GOMA gomacc) -endif() - -if(NOT CONFIG_AV1_DECODER AND NOT CONFIG_AV1_ENCODER) - message(FATAL_ERROR "Decoder and encoder disabled, nothing to build.") -endif() - -if(DECODE_HEIGHT_LIMIT OR DECODE_WIDTH_LIMIT) - change_config_and_warn(CONFIG_SIZE_LIMIT 1 - "DECODE_HEIGHT_LIMIT and DECODE_WIDTH_LIMIT") -endif() - -if(CONFIG_SIZE_LIMIT) - if(NOT DECODE_HEIGHT_LIMIT OR NOT DECODE_WIDTH_LIMIT) - message(FATAL_ERROR "When setting CONFIG_SIZE_LIMIT, DECODE_HEIGHT_LIMIT " - "and DECODE_WIDTH_LIMIT must be set.") - endif() -endif() - -# Test compiler flags. -if(MSVC) - add_compiler_flag_if_supported("/W3") - - # Disable MSVC warnings that suggest making code non-portable. - add_compiler_flag_if_supported("/wd4996") - if(ENABLE_WERROR) - add_compiler_flag_if_supported("/WX") - endif() -else() - require_c_flag("-std=c99" YES) - add_compiler_flag_if_supported("-Wall") - add_compiler_flag_if_supported("-Wdisabled-optimization") - add_compiler_flag_if_supported("-Wextra") - add_compiler_flag_if_supported("-Wfloat-conversion") - add_compiler_flag_if_supported("-Wimplicit-function-declaration") - add_compiler_flag_if_supported("-Wlogical-op") - add_compiler_flag_if_supported("-Wpointer-arith") - add_compiler_flag_if_supported("-Wsign-compare") - add_compiler_flag_if_supported("-Wstring-conversion") - add_compiler_flag_if_supported("-Wtype-limits") - add_compiler_flag_if_supported("-Wuninitialized") - add_compiler_flag_if_supported("-Wunused") - add_compiler_flag_if_supported("-Wvla") - - add_c_flag_if_supported("-Wstack-usage=100000") - add_cxx_flag_if_supported("-Wstack-usage=360000") - - # TODO(jzern): this could be added as a cxx flags for test/*.cc only, avoiding - # third_party. - add_c_flag_if_supported("-Wshorten-64-to-32") - - # Add -Wshadow only for C files to avoid massive gtest warning spam. - add_c_flag_if_supported("-Wshadow") - - # Add -Wundef only for C files to avoid massive gtest warning spam. - add_c_flag_if_supported("-Wundef") - - # Quiet gcc 6 vs 7 abi warnings: - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77728 - if("${AOM_TARGET_CPU}" MATCHES "arm") - add_cxx_flag_if_supported("-Wno-psabi") - endif() - - if(ENABLE_WERROR) - add_compiler_flag_if_supported("-Werror") - endif() - - if("${CMAKE_BUILD_TYPE}" MATCHES "Rel") - add_compiler_flag_if_supported("-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0") - endif() - add_compiler_flag_if_supported("-D_LARGEFILE_SOURCE") - add_compiler_flag_if_supported("-D_FILE_OFFSET_BITS=64") -endif() - -set(AOM_LIB_LINK_TYPE PUBLIC) -if(EMSCRIPTEN) - - # Avoid CMake generation time errors resulting from collisions with the form - # of target_link_libraries() used by Emscripten.cmake. - unset(AOM_LIB_LINK_TYPE) -endif() - -# Generate aom_config templates. -set(aom_config_asm_template "${AOM_CONFIG_DIR}/config/aom_config.asm.cmake") -set(aom_config_h_template "${AOM_CONFIG_DIR}/config/aom_config.h.cmake") -execute_process(COMMAND - ${CMAKE_COMMAND} -DAOM_CONFIG_DIR=${AOM_CONFIG_DIR} - -DAOM_ROOT=${AOM_ROOT} -P - "${AOM_ROOT}/build/cmake/generate_aom_config_templates.cmake") - -# Generate aom_config.{asm,h}. -configure_file("${aom_config_asm_template}" - "${AOM_CONFIG_DIR}/config/aom_config.asm") -configure_file("${aom_config_h_template}" - "${AOM_CONFIG_DIR}/config/aom_config.h") - -# Read the current git hash. -find_package(Git) -if(NOT GIT_FOUND) - message("--- Git missing, version will be read from CHANGELOG.") -endif() - -configure_file("${AOM_ROOT}/build/cmake/aom_config.c.template" - "${AOM_CONFIG_DIR}/config/aom_config.c") - -# Find Perl and generate the RTCD sources. -find_package(Perl) -if(NOT PERL_FOUND) - message(FATAL_ERROR "Perl is required to build libaom.") -endif() - -set(AOM_RTCD_CONFIG_FILE_LIST "${AOM_ROOT}/aom_dsp/aom_dsp_rtcd_defs.pl" - "${AOM_ROOT}/aom_scale/aom_scale_rtcd.pl" - "${AOM_ROOT}/av1/common/av1_rtcd_defs.pl") -set(AOM_RTCD_HEADER_FILE_LIST "${AOM_CONFIG_DIR}/config/aom_dsp_rtcd.h" - "${AOM_CONFIG_DIR}/config/aom_scale_rtcd.h" - "${AOM_CONFIG_DIR}/config/av1_rtcd.h") -set(AOM_RTCD_SOURCE_FILE_LIST "${AOM_ROOT}/aom_dsp/aom_dsp_rtcd.c" - "${AOM_ROOT}/aom_scale/aom_scale_rtcd.c" - "${AOM_ROOT}/av1/common/av1_rtcd.c") -set(AOM_RTCD_SYMBOL_LIST aom_dsp_rtcd aom_scale_rtcd av1_rtcd) -list(LENGTH AOM_RTCD_SYMBOL_LIST AOM_RTCD_CUSTOM_COMMAND_COUNT) -math(EXPR AOM_RTCD_CUSTOM_COMMAND_COUNT "${AOM_RTCD_CUSTOM_COMMAND_COUNT} - 1") - -foreach(NUM RANGE ${AOM_RTCD_CUSTOM_COMMAND_COUNT}) - list(GET AOM_RTCD_CONFIG_FILE_LIST ${NUM} AOM_RTCD_CONFIG_FILE) - list(GET AOM_RTCD_HEADER_FILE_LIST ${NUM} AOM_RTCD_HEADER_FILE) - list(GET AOM_RTCD_SOURCE_FILE_LIST ${NUM} AOM_RTCD_SOURCE_FILE) - list(GET AOM_RTCD_SYMBOL_LIST ${NUM} AOM_RTCD_SYMBOL) - execute_process(COMMAND ${PERL_EXECUTABLE} "${AOM_ROOT}/build/cmake/rtcd.pl" - --arch=${AOM_TARGET_CPU} - --sym=${AOM_RTCD_SYMBOL} ${AOM_RTCD_FLAGS} - --config=${AOM_CONFIG_DIR}/config/aom_config.h - ${AOM_RTCD_CONFIG_FILE} - OUTPUT_FILE ${AOM_RTCD_HEADER_FILE}) -endforeach() - -# Generate aom_version.h. -execute_process(COMMAND ${CMAKE_COMMAND} -DAOM_CONFIG_DIR=${AOM_CONFIG_DIR} - -DAOM_ROOT=${AOM_ROOT} - -DGIT_EXECUTABLE=${GIT_EXECUTABLE} - -DPERL_EXECUTABLE=${PERL_EXECUTABLE} -P - "${AOM_ROOT}/build/cmake/version.cmake") - -if(NOT MSVC) # Generate aom.pc (pkg-config file). - execute_process(COMMAND ${CMAKE_COMMAND} -DAOM_CONFIG_DIR=${AOM_CONFIG_DIR} - -DAOM_ROOT=${AOM_ROOT} - -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} - -DCMAKE_PROJECT_NAME=${CMAKE_PROJECT_NAME} - -DCONFIG_MULTITHREAD=${CONFIG_MULTITHREAD} - -DHAVE_PTHREAD_H=${HAVE_PTHREAD_H} -P - "${AOM_ROOT}/build/cmake/pkg_config.cmake") -endif() diff --git a/third_party/aom/build/cmake/aom_experiment_deps.cmake b/third_party/aom/build/cmake/aom_experiment_deps.cmake deleted file mode 100644 index 0688704e5..000000000 --- a/third_party/aom/build/cmake/aom_experiment_deps.cmake +++ /dev/null @@ -1,32 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_AOM_EXPERIMENT_DEPS_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_AOM_EXPERIMENT_DEPS_CMAKE_ -set(AOM_BUILD_CMAKE_AOM_EXPERIMENT_DEPS_CMAKE_ 1) - -# Adjusts CONFIG_* CMake variables to address conflicts between active AV1 -# experiments. -macro(fix_experiment_configs) - - if(CONFIG_ANALYZER) - change_config_and_warn(CONFIG_INSPECTION 1 CONFIG_ANALYZER) - endif() - - if(CONFIG_RD_DEBUG) - change_config_and_warn(CONFIG_RD_DEBUG 0 CONFIG_JNT_COMP) - endif() - - if(CONFIG_DIST_8X8 AND CONFIG_MULTITHREAD) - change_config_and_warn(CONFIG_DIST_8X8 0 CONFIG_MULTITHREAD) - endif() - -endmacro() diff --git a/third_party/aom/build/cmake/aom_optimization.cmake b/third_party/aom/build/cmake/aom_optimization.cmake deleted file mode 100644 index be32a3212..000000000 --- a/third_party/aom/build/cmake/aom_optimization.cmake +++ /dev/null @@ -1,212 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_AOM_OPTIMIZATION_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_AOM_OPTIMIZATION_CMAKE_ -set(AOM_BUILD_CMAKE_AOM_OPTIMIZATION_CMAKE_ 1) - -include("${AOM_ROOT}/build/cmake/util.cmake") - -# Translate $flag to one which MSVC understands, and write the new flag to the -# variable named by $translated_flag (or unset it, when MSVC needs no flag). -function(get_msvc_intrinsic_flag flag translated_flag) - if("${flag}" STREQUAL "-mavx") - set(${translated_flag} "/arch:AVX" PARENT_SCOPE) - elseif("${flag}" STREQUAL "-mavx2") - set(${translated_flag} "/arch:AVX2" PARENT_SCOPE) - else() - - # MSVC does not need flags for intrinsics flavors other than AVX/AVX2. - unset(${translated_flag} PARENT_SCOPE) - endif() -endfunction() - -# Adds an object library target. Terminates generation if $flag is not supported -# by the current compiler. $flag is the intrinsics flag required by the current -# compiler, and is added to the compile flags for all sources in $sources. -# $opt_name is used to name the target. $target_to_update is made dependent upon -# the created target. -# -# Note: the libaom target is always updated because OBJECT libraries have rules -# that disallow the direct addition of .o files to them as dependencies. Static -# libraries do not have this limitation. -function(add_intrinsics_object_library flag opt_name target_to_update sources - dependent_target) - if("${${sources}}" STREQUAL "") - return() - endif() - set(target_name ${target_to_update}_${opt_name}_intrinsics) - add_library(${target_name} OBJECT ${${sources}}) - - if(MSVC) - get_msvc_intrinsic_flag(${flag} "flag") - endif() - - if(flag) - separate_arguments(flag) - target_compile_options(${target_name} PUBLIC ${flag}) - endif() - - target_sources(${dependent_target} PRIVATE $<TARGET_OBJECTS:${target_name}>) - - # Add the new lib target to the global list of aom library targets. - list(APPEND AOM_LIB_TARGETS ${target_name}) - set(AOM_LIB_TARGETS ${AOM_LIB_TARGETS} PARENT_SCOPE) -endfunction() - -# Adds sources in list named by $sources to $target and adds $flag to the -# compile flags for each source file. -function(add_intrinsics_source_to_target flag target sources) - target_sources(${target} PRIVATE ${${sources}}) - if(MSVC) - get_msvc_intrinsic_flag(${flag} "flag") - endif() - if(flag) - foreach(source ${${sources}}) - set_property(SOURCE ${source} APPEND PROPERTY COMPILE_FLAGS ${flag}) - endforeach() - endif() -endfunction() - -# Writes object format for the current target to the var named by $out_format, -# or terminates the build when the object format for the current target is -# unknown. -function(get_asm_obj_format out_format) - if("${AOM_TARGET_CPU}" STREQUAL "x86_64") - if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - set(objformat "macho64") - elseif("${AOM_TARGET_SYSTEM}" STREQUAL "Linux") - set(objformat "elf64") - elseif("${AOM_TARGET_SYSTEM}" STREQUAL "MSYS" OR "${AOM_TARGET_SYSTEM}" - STREQUAL "Windows") - set(objformat "win64") - else() - message(FATAL_ERROR "Unknown obj format: ${AOM_TARGET_SYSTEM}") - endif() - elseif("${AOM_TARGET_CPU}" STREQUAL "x86") - if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - set(objformat "macho32") - elseif("${AOM_TARGET_SYSTEM}" STREQUAL "Linux") - set(objformat "elf32") - elseif("${AOM_TARGET_SYSTEM}" STREQUAL "MSYS" OR "${AOM_TARGET_SYSTEM}" - STREQUAL "Windows") - set(objformat "win32") - else() - message(FATAL_ERROR "Unknown obj format: ${AOM_TARGET_SYSTEM}") - endif() - else() - message(FATAL_ERROR - "Unknown obj format: ${AOM_TARGET_CPU}-${AOM_TARGET_SYSTEM}") - endif() - - set(${out_format} ${objformat} PARENT_SCOPE) -endfunction() - -# Adds library target named $lib_name for ASM files in variable named by -# $asm_sources. Builds an output directory path from $lib_name. Links $lib_name -# into $dependent_target. Generates a dummy C file with a dummy function to -# ensure that all cmake generators can determine the linker language, and that -# build tools don't complain that an object exposes no symbols. -function(add_asm_library lib_name asm_sources dependent_target) - if("${${asm_sources}}" STREQUAL "") - return() - endif() - set(asm_lib_obj_dir "${AOM_CONFIG_DIR}/asm_objects/${lib_name}") - if(NOT EXISTS "${asm_lib_obj_dir}") - file(MAKE_DIRECTORY "${asm_lib_obj_dir}") - endif() - - # TODO(tomfinegan): If cmake ever allows addition of .o files to OBJECT lib - # targets, make this OBJECT instead of STATIC to hide the target from - # consumers of the AOM cmake build. - add_library(${lib_name} STATIC ${${asm_sources}}) - - foreach(asm_source ${${asm_sources}}) - get_filename_component(asm_source_name "${asm_source}" NAME) - set(asm_object "${asm_lib_obj_dir}/${asm_source_name}.o") - add_custom_command(OUTPUT "${asm_object}" - COMMAND ${AS_EXECUTABLE} ARGS ${AOM_AS_FLAGS} - -I${AOM_ROOT}/ -I${AOM_CONFIG_DIR}/ -o - "${asm_object}" "${asm_source}" - DEPENDS "${asm_source}" - COMMENT "Building ASM object ${asm_object}" - WORKING_DIRECTORY "${AOM_CONFIG_DIR}" VERBATIM) - target_sources(aom PRIVATE "${asm_object}") - endforeach() - - # The above created a target containing only ASM sources. Cmake needs help - # here to determine the linker language. Add a dummy C file to force the - # linker language to C. We don't bother with setting the LINKER_LANGUAGE - # property on the library target because not all generators obey it (looking - # at you, xcode generator). - add_dummy_source_file_to_target("${lib_name}" "c") - - # Add the new lib target to the global list of aom library targets. - list(APPEND AOM_LIB_TARGETS ${lib_name}) - set(AOM_LIB_TARGETS ${AOM_LIB_TARGETS} PARENT_SCOPE) -endfunction() - -# Terminates generation if nasm found in PATH does not meet requirements. -# Currently checks only for presence of required object formats and support for -# the -Ox argument (multipass optimization). -function(test_nasm) - execute_process(COMMAND ${AS_EXECUTABLE} -hf OUTPUT_VARIABLE nasm_helptext) - - if(NOT "${nasm_helptext}" MATCHES "-Ox") - message(FATAL_ERROR - "Unsupported nasm: multipass optimization not supported.") - endif() - - if("${AOM_TARGET_CPU}" STREQUAL "x86") - if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - if(NOT "${nasm_helptext}" MATCHES "macho32") - message(FATAL_ERROR - "Unsupported nasm: macho32 object format not supported.") - endif() - elseif("${AOM_TARGET_SYSTEM}" STREQUAL "Linux") - if(NOT "${nasm_helptext}" MATCHES "elf32") - message(FATAL_ERROR - "Unsupported nasm: elf32 object format not supported.") - endif() - endif() - else() - if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - if(NOT "${nasm_helptext}" MATCHES "macho64") - message(FATAL_ERROR - "Unsupported nasm: macho64 object format not supported.") - endif() - elseif("${AOM_TARGET_SYSTEM}" STREQUAL "Linux") - if(NOT "${nasm_helptext}" MATCHES "elf64") - message(FATAL_ERROR - "Unsupported nasm: elf64 object format not supported.") - endif() - endif() - endif() -endfunction() - -# Adds build command for generation of rtcd C source files using -# build/cmake/rtcd.pl. $config is the input perl file, $output is the output C -# include file, $source is the C source file, and $symbol is used for the symbol -# argument passed to rtcd.pl. -function(add_rtcd_build_step config output source symbol) - add_custom_command(OUTPUT ${output} - COMMAND ${PERL_EXECUTABLE} ARGS - "${AOM_ROOT}/build/cmake/rtcd.pl" - --arch=${AOM_TARGET_CPU} - --sym=${symbol} ${AOM_RTCD_FLAGS} - --config=${AOM_CONFIG_DIR}/config/aom_config.h - ${config} > ${output} - DEPENDS ${config} - COMMENT "Generating ${output}" - WORKING_DIRECTORY ${AOM_CONFIG_DIR} VERBATIM) - set_property(SOURCE ${source} PROPERTY OBJECT_DEPENDS ${output}) - set_property(SOURCE ${output} PROPERTY GENERATED) -endfunction() diff --git a/third_party/aom/build/cmake/compiler_flags.cmake b/third_party/aom/build/cmake/compiler_flags.cmake deleted file mode 100644 index 79192c1fa..000000000 --- a/third_party/aom/build/cmake/compiler_flags.cmake +++ /dev/null @@ -1,373 +0,0 @@ -# -# Copyright (c) 2016, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_COMPILER_FLAGS_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_COMPILER_FLAGS_CMAKE_ -set(AOM_BUILD_CMAKE_COMPILER_FLAGS_CMAKE_ 1) - -include(CheckCCompilerFlag) -include(CheckCXXCompilerFlag) -include("${AOM_ROOT}/build/cmake/compiler_tests.cmake") - -# Strings used to cache flags. -set(AOM_C_FLAGS) -set(AOM_CXX_FLAGS) -set(AOM_EXE_LINKER_FLAGS) -set(AOM_FAILED_C_FLAGS) -set(AOM_FAILED_CXX_FLAGS) - -# Sets variable named by $out_is_present to YES in the caller's scope when $flag -# is found in the string variable named by $flag_cache. Sets the var to NO -# otherwise. -function(is_flag_present flag_cache flag out_is_present) - string(FIND "${${flag_cache}}" "${flag}" flag_pos) - if(${flag_pos} EQUAL -1) - set(${out_is_present} NO PARENT_SCOPE) - else() - set(${out_is_present} YES PARENT_SCOPE) - endif() -endfunction() - -# Appends $flag to $flags. Ignores scope via use of FORCE with set() call. -function(append_flag flags flag) - string(FIND "${${flags}}" "${flag}" found) - if(${found} EQUAL -1) - set(${flags} "${${flags}} ${flag}" CACHE STRING "" FORCE) - endif() -endfunction() - -# Checks C compiler for support of $c_flag. Adds $c_flag to all -# $CMAKE_C_FLAGS_<CONFIG>s stored in AOM_C_CONFIGS when the compile test passes. -# Caches $c_flag in $AOM_C_FLAGS or $AOM_FAILED_C_FLAGS depending on test -# outcome. -function(add_c_flag_if_supported c_flag) - if(DEBUG_CMAKE_DISABLE_COMPILER_TESTS) - return() - endif() - - is_flag_present(AOM_C_FLAGS "${c_flag}" flag_ok) - is_flag_present(AOM_FAILED_C_FLAGS "${c_flag}" flag_failed) - if(${flag_ok} OR ${flag_failed}) - return() - endif() - - unset(C_FLAG_SUPPORTED CACHE) - message("Checking C compiler flag support for: " ${c_flag}) - check_c_compiler_flag("${c_flag}" C_FLAG_SUPPORTED) - - if(${C_FLAG_SUPPORTED}) - append_flag(AOM_C_FLAGS "${c_flag}") - foreach(config ${AOM_C_CONFIGS}) - unset(C_FLAG_FOUND) - append_flag("${config}" "${c_flag}") - endforeach() - else() - append_flag(AOM_FAILED_C_FLAGS "${c_flag}") - endif() -endfunction() - -# Checks C++ compiler for support of $cxx_flag. Adds $cxx_flag to all -# $CMAKE_CXX_FLAGS_<CONFIG>s stored in AOM_CXX_CONFIGS when the compile test -# passes. Caches $cxx_flag in $AOM_CXX_FLAGS or $AOM_FAILED_CXX_FLAGS depending -# on test outcome. -function(add_cxx_flag_if_supported cxx_flag) - if(DEBUG_CMAKE_DISABLE_COMPILER_TESTS) - return() - endif() - - is_flag_present(AOM_CXX_FLAGS "${cxx_flag}" flag_ok) - is_flag_present(AOM_FAILED_CXX_FLAGS "${cxx_flag}" flag_failed) - if(${flag_ok} OR ${flag_failed}) - return() - endif() - - unset(CXX_FLAG_SUPPORTED CACHE) - message("Checking C++ compiler flag support for: " ${cxx_flag}) - check_cxx_compiler_flag("${cxx_flag}" CXX_FLAG_SUPPORTED) - - if(${CXX_FLAG_SUPPORTED}) - append_flag(AOM_CXX_FLAGS "${cxx_flag}") - foreach(config ${AOM_CXX_CONFIGS}) - unset(CXX_FLAG_FOUND) - append_flag("${config}" "${cxx_flag}") - endforeach() - else() - append_flag(AOM_FAILED_CXX_FLAGS "${cxx_flag}") - endif() -endfunction() - -# Convenience method for adding a flag to both the C and C++ compiler command -# lines. -function(add_compiler_flag_if_supported flag) - add_c_flag_if_supported(${flag}) - add_cxx_flag_if_supported(${flag}) -endfunction() - -# Checks C compiler for support of $c_flag and terminates generation when -# support is not present. -function(require_c_flag c_flag update_c_flags) - if(DEBUG_CMAKE_DISABLE_COMPILER_TESTS) - return() - endif() - - is_flag_present(AOM_C_FLAGS "${c_flag}" flag_ok) - if(${flag_ok}) - return() - endif() - - if(NOT "${AOM_EXE_LINKER_FLAGS}" STREQUAL "") - aom_push_var(CMAKE_EXE_LINKER_FLAGS "${AOM_EXE_LINKER_FLAGS}") - endif() - - unset(HAVE_C_FLAG CACHE) - message("Checking C compiler flag support for: " ${c_flag}) - check_c_compiler_flag("${c_flag}" HAVE_C_FLAG) - if(NOT HAVE_C_FLAG) - message(FATAL_ERROR - "${PROJECT_NAME} requires support for C flag: ${c_flag}.") - endif() - - if(NOT "${AOM_EXE_LINKER_FLAGS}" STREQUAL "") - aom_pop_var(CMAKE_EXE_LINKER_FLAGS) - endif() - - append_flag(AOM_C_FLAGS "${c_flag}") - if(update_c_flags) - foreach(config ${AOM_C_CONFIGS}) - set(${config} "${${config}} ${c_flag}" CACHE STRING "" FORCE) - endforeach() - endif() -endfunction() - -# Checks CXX compiler for support of $cxx_flag and terminates generation when -# support is not present. -function(require_cxx_flag cxx_flag update_cxx_flags) - if(DEBUG_CMAKE_DISABLE_COMPILER_TESTS) - return() - endif() - - is_flag_present(AOM_CXX_FLAGS "${cxx_flag}" flag_ok) - if(${flag_ok}) - return() - endif() - - if(NOT "${AOM_EXE_LINKER_FLAGS}" STREQUAL "") - aom_push_var(CMAKE_EXE_LINKER_FLAGS "${AOM_EXE_LINKER_FLAGS}") - endif() - - unset(HAVE_CXX_FLAG CACHE) - message("Checking C compiler flag support for: " ${cxx_flag}) - check_cxx_compiler_flag("${cxx_flag}" HAVE_CXX_FLAG) - if(NOT HAVE_CXX_FLAG) - message(FATAL_ERROR - "${PROJECT_NAME} requires support for C flag: ${cxx_flag}.") - endif() - - if(NOT "${AOM_EXE_LINKER_FLAGS}" STREQUAL "") - aom_pop_var(CMAKE_EXE_LINKER_FLAGS) - endif() - - append_flag(AOM_CXX_FLAGS "${cxx_flag}") - if(update_cxx_flags) - foreach(config ${AOM_CXX_CONFIGS}) - set(${config} "${${config}} ${cxx_flag}" CACHE STRING "" FORCE) - endforeach() - endif() -endfunction() - -# Checks for support of $flag by both the C and CXX compilers. Terminates -# generation when support is not present in both compilers. -function(require_compiler_flag flag update_cmake_flags) - require_c_flag(${flag} ${update_cmake_flags}) - require_cxx_flag(${flag} ${update_cmake_flags}) -endfunction() - -# Checks only non-MSVC targets for support of $c_flag and terminates generation -# when support is not present. -function(require_c_flag_nomsvc c_flag update_c_flags) - if(NOT MSVC) - require_c_flag(${c_flag} ${update_c_flags}) - endif() -endfunction() - -# Checks only non-MSVC targets for support of $cxx_flag and terminates -# generation when support is not present. -function(require_cxx_flag_nomsvc cxx_flag update_cxx_flags) - if(NOT MSVC) - require_cxx_flag(${cxx_flag} ${update_cxx_flags}) - endif() -endfunction() - -# Checks only non-MSVC targets for support of $flag by both the C and CXX -# compilers. Terminates generation when support is not present in both -# compilers. -function(require_compiler_flag_nomsvc flag update_cmake_flags) - require_c_flag_nomsvc(${flag} ${update_cmake_flags}) - require_cxx_flag_nomsvc(${flag} ${update_cmake_flags}) -endfunction() - -# Adds $preproc_def to C compiler command line (as -D$preproc_def) if not -# already present. -function(add_c_preproc_definition preproc_def) - set(preproc_def "-D${preproc_def}") - is_flag_present(AOM_C_FLAGS "${preproc_def}" flag_cached) - if(${flag_cached}) - return() - endif() - - foreach(config ${AOM_C_CONFIGS}) - set(${config} "${${config}} ${preproc_def}" CACHE STRING "" FORCE) - endforeach() -endfunction() - -# Adds $preproc_def to CXX compiler command line (as -D$preproc_def) if not -# already present. -function(add_cxx_preproc_definition preproc_def) - set(preproc_def "-D${preproc_def}") - is_flag_present(AOM_CXX_FLAGS "${preproc_def}" flag_cached) - if(${flag_cached}) - return() - endif() - - foreach(config ${AOM_CXX_CONFIGS}) - set(${config} "${${config}} ${preproc_def}" CACHE STRING "" FORCE) - endforeach() -endfunction() - -# Adds $preproc_def to C and CXX compiler command line (as -D$preproc_def) if -# not already present. -function(add_preproc_definition preproc_def) - add_c_preproc_definition(${preproc_def}) - add_cxx_preproc_definition(${preproc_def}) -endfunction() - -# Adds $flag to assembler command line. -function(append_as_flag flag) - is_flag_present(AOM_AS_FLAGS "${flag}" flag_cached) - if(${flag_cached}) - return() - endif() - append_flag(AOM_AS_FLAGS "${flag}") -endfunction() - -# Adds $flag to the C compiler command line. -function(append_c_flag flag) - is_flag_present(AOM_C_FLAGS "${flag}" flag_cached) - if(${flag_cached}) - return() - endif() - - foreach(config ${AOM_C_CONFIGS}) - append_flag(${config} "${flag}") - endforeach() -endfunction() - -# Adds $flag to the CXX compiler command line. -function(append_cxx_flag flag) - is_flag_present(AOM_CXX_FLAGS "${flag}" flag_cached) - if(${flag_cached}) - return() - endif() - - foreach(config ${AOM_CXX_CONFIGS}) - append_flag(${config} "${flag}") - endforeach() -endfunction() - -# Adds $flag to the C and CXX compiler command lines. -function(append_compiler_flag flag) - append_c_flag(${flag}) - append_cxx_flag(${flag}) -endfunction() - -# Adds $flag to the executable linker command line when not present. -function(append_exe_linker_flag flag) - is_flag_present(AOM_EXE_LINKER_FLAGS "${flag}" flag_cached) - if(${flag_cached}) - return() - endif() - - append_flag(AOM_EXE_LINKER_FLAGS "${flag}") - foreach(config ${AOM_EXE_LINKER_CONFIGS}) - append_flag(${config} "${flag}") - endforeach() -endfunction() - -# Adds $flag to the link flags for $target. -function(append_link_flag_to_target target flag) - unset(target_link_flags) - get_target_property(target_link_flags ${target} LINK_FLAGS) - - if(target_link_flags) - is_flag_present(target_link_flags "${flag}" flag_found) - if(${flag_found}) - return() - endif() - set(target_link_flags "${target_link_flags} ${flag}") - else() - set(target_link_flags "${flag}") - endif() - - set_target_properties(${target} PROPERTIES LINK_FLAGS ${target_link_flags}) -endfunction() - -# Adds $flag to executable linker flags, and makes sure C/CXX builds still work. -function(require_linker_flag flag) - if(DEBUG_CMAKE_DISABLE_COMPILER_TESTS) - return() - endif() - - append_exe_linker_flag(${flag}) - - unset(c_passed) - aom_check_c_compiles("LINKER_FLAG_C_TEST(${flag})" "" c_passed) - unset(cxx_passed) - aom_check_cxx_compiles("LINKER_FLAG_CXX_TEST(${flag})" "" cxx_passed) - - if(NOT c_passed OR NOT cxx_passed) - message(FATAL_ERROR "Linker flag test for ${flag} failed.") - endif() -endfunction() - -# Appends flags in $AOM_EXTRA_<TYPE>_FLAGS variables to the flags used at build -# time. -function(set_user_flags) - - # Linker flags are handled first because some C/CXX flags require that a - # linker flag is present at link time. - if(AOM_EXTRA_EXE_LINKER_FLAGS) - is_flag_present(AOM_EXE_LINKER_FLAGS "${AOM_EXTRA_EXE_LINKER_FLAGS}" - extra_present) - if(NOT ${extra_present}) - require_linker_flag("${AOM_EXTRA_EXE_LINKER_FLAGS}") - endif() - endif() - if(AOM_EXTRA_AS_FLAGS) - - # TODO(tomfinegan): assembler flag testing would be a good thing to have. - is_flag_present(AOM_AS_FLAGS "${AOM_EXTRA_AS_FLAGS}" extra_present) - if(NOT ${extra_present}) - append_flag(AOM_AS_FLAGS "${AOM_EXTRA_AS_FLAGS}") - endif() - endif() - if(AOM_EXTRA_C_FLAGS) - is_flag_present(AOM_C_FLAGS "${AOM_EXTRA_C_FLAGS}" extra_present) - if(NOT ${extra_present}) - require_c_flag("${AOM_EXTRA_C_FLAGS}" YES) - endif() - endif() - if(AOM_EXTRA_CXX_FLAGS) - is_flag_present(AOM_CXX_FLAGS "${AOM_EXTRA_CXX_FLAGS}" extra_present) - if(NOT ${extra_present}) - require_cxx_flag("${AOM_EXTRA_CXX_FLAGS}" YES) - endif() - endif() -endfunction() diff --git a/third_party/aom/build/cmake/compiler_tests.cmake b/third_party/aom/build/cmake/compiler_tests.cmake deleted file mode 100644 index f115610ba..000000000 --- a/third_party/aom/build/cmake/compiler_tests.cmake +++ /dev/null @@ -1,175 +0,0 @@ -# -# Copyright (c) 2016, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_COMPILER_TESTS_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_COMPILER_TESTS_CMAKE_ -set(AOM_BUILD_CMAKE_COMPILER_TESTS_CMAKE_ 1) - -include(CheckCSourceCompiles) -include(CheckCXXSourceCompiles) - -# CMake passes command line flags like this: -# -# * $compiler $lang_flags $lang_flags_config ... -# -# To ensure the flags tested here and elsewhere are obeyed a list of active -# build configuration types is built, and flags are applied to the flag strings -# for each configuration currently active for C and CXX builds as determined by -# reading $CMAKE_CONFIGURATION_TYPES and $CMAKE_BUILD_TYPE. When -# $CMAKE_CONFIGURATION_TYPES is non-empty a multi- configuration generator is in -# use: currently this includes MSVC and Xcode. For other generators -# $CMAKE_BUILD_TYPE is used. For both cases AOM_<LANG>_CONFIGS is populated with -# CMake string variable names that contain flags for the currently available -# configuration(s). -unset(AOM_C_CONFIGS) -unset(AOM_CXX_CONFIGS) -list(LENGTH CMAKE_CONFIGURATION_TYPES num_configs) -if(${num_configs} GREATER 0) - foreach(config ${CMAKE_CONFIGURATION_TYPES}) - string(TOUPPER ${config} config) - list(APPEND AOM_C_CONFIGS "CMAKE_C_FLAGS_${config}") - list(APPEND AOM_CXX_CONFIGS "CMAKE_CXX_FLAGS_${config}") - list(APPEND AOM_EXE_LINKER_CONFIGS "CMAKE_EXE_LINKER_FLAGS_${config}") - endforeach() -else() - string(TOUPPER ${CMAKE_BUILD_TYPE} config) - set(AOM_C_CONFIGS "CMAKE_C_FLAGS_${config}") - set(AOM_CXX_CONFIGS "CMAKE_CXX_FLAGS_${config}") - set(AOM_EXE_LINKER_CONFIGS "CMAKE_EXE_LINKER_FLAGS_${config}") -endif() - -# The basic main() function used in all compile tests. -set(AOM_C_MAIN "\nint main(void) { return 0; }") -set(AOM_CXX_MAIN "\nint main() { return 0; }") - -# Strings containing the names of passed and failed tests. -set(AOM_C_PASSED_TESTS) -set(AOM_C_FAILED_TESTS) -set(AOM_CXX_PASSED_TESTS) -set(AOM_CXX_FAILED_TESTS) - -function(aom_push_var var new_value) - set(SAVED_${var} ${${var}} PARENT_SCOPE) - set(${var} "${${var}} ${new_value}" PARENT_SCOPE) -endfunction() - -function(aom_pop_var var) - set(var ${SAVED_${var}} PARENT_SCOPE) - unset(SAVED_${var} PARENT_SCOPE) -endfunction() - -# Confirms $test_source compiles and stores $test_name in one of -# $AOM_C_PASSED_TESTS or $AOM_C_FAILED_TESTS depending on out come. When the -# test passes $result_var is set to 1. When it fails $result_var is unset. The -# test is not run if the test name is found in either of the passed or failed -# test variables. -function(aom_check_c_compiles test_name test_source result_var) - if(DEBUG_CMAKE_DISABLE_COMPILER_TESTS) - return() - endif() - - unset(C_TEST_PASSED CACHE) - unset(C_TEST_FAILED CACHE) - string(FIND "${AOM_C_PASSED_TESTS}" "${test_name}" C_TEST_PASSED) - string(FIND "${AOM_C_FAILED_TESTS}" "${test_name}" C_TEST_FAILED) - if(${C_TEST_PASSED} EQUAL -1 AND ${C_TEST_FAILED} EQUAL -1) - unset(C_TEST_COMPILED CACHE) - message("Running C compiler test: ${test_name}") - check_c_source_compiles("${test_source} ${AOM_C_MAIN}" C_TEST_COMPILED) - set(${result_var} ${C_TEST_COMPILED} PARENT_SCOPE) - - if(C_TEST_COMPILED) - set(AOM_C_PASSED_TESTS "${AOM_C_PASSED_TESTS} ${test_name}" - CACHE STRING "" FORCE) - else() - set(AOM_C_FAILED_TESTS "${AOM_C_FAILED_TESTS} ${test_name}" - CACHE STRING "" FORCE) - message("C Compiler test ${test_name} failed.") - endif() - elseif(NOT ${C_TEST_PASSED} EQUAL -1) - set(${result_var} 1 PARENT_SCOPE) - else() # ${C_TEST_FAILED} NOT EQUAL -1 - unset(${result_var} PARENT_SCOPE) - endif() -endfunction() - -# Confirms $test_source compiles and stores $test_name in one of -# $AOM_CXX_PASSED_TESTS or $AOM_CXX_FAILED_TESTS depending on out come. When the -# test passes $result_var is set to 1. When it fails $result_var is unset. The -# test is not run if the test name is found in either of the passed or failed -# test variables. -function(aom_check_cxx_compiles test_name test_source result_var) - if(DEBUG_CMAKE_DISABLE_COMPILER_TESTS) - return() - endif() - - unset(CXX_TEST_PASSED CACHE) - unset(CXX_TEST_FAILED CACHE) - string(FIND "${AOM_CXX_PASSED_TESTS}" "${test_name}" CXX_TEST_PASSED) - string(FIND "${AOM_CXX_FAILED_TESTS}" "${test_name}" CXX_TEST_FAILED) - if(${CXX_TEST_PASSED} EQUAL -1 AND ${CXX_TEST_FAILED} EQUAL -1) - unset(CXX_TEST_COMPILED CACHE) - message("Running CXX compiler test: ${test_name}") - check_cxx_source_compiles("${test_source} ${AOM_CXX_MAIN}" - CXX_TEST_COMPILED) - set(${result_var} ${CXX_TEST_COMPILED} PARENT_SCOPE) - - if(CXX_TEST_COMPILED) - set(AOM_CXX_PASSED_TESTS "${AOM_CXX_PASSED_TESTS} ${test_name}" - CACHE STRING "" FORCE) - else() - set(AOM_CXX_FAILED_TESTS "${AOM_CXX_FAILED_TESTS} ${test_name}" - CACHE STRING "" FORCE) - message("CXX Compiler test ${test_name} failed.") - endif() - elseif(NOT ${CXX_TEST_PASSED} EQUAL -1) - set(${result_var} 1 PARENT_SCOPE) - else() # ${CXX_TEST_FAILED} NOT EQUAL -1 - unset(${result_var} PARENT_SCOPE) - endif() -endfunction() - -# Convenience function that confirms $test_source compiles as C and C++. -# $result_var is set to 1 when both tests are successful, and 0 when one or both -# tests fail. Note: This function is intended to be used to write to result -# variables that are expanded via configure_file(). $result_var is set to 1 or 0 -# to allow direct usage of the value in generated source files. -function(aom_check_source_compiles test_name test_source result_var) - unset(C_PASSED) - unset(CXX_PASSED) - aom_check_c_compiles(${test_name} ${test_source} C_PASSED) - aom_check_cxx_compiles(${test_name} ${test_source} CXX_PASSED) - if(C_PASSED AND CXX_PASSED) - set(${result_var} 1 PARENT_SCOPE) - else() - set(${result_var} 0 PARENT_SCOPE) - endif() -endfunction() - -# When inline support is detected for the current compiler the supported -# inlining keyword is written to $result in caller scope. -function(aom_get_inline result) - aom_check_source_compiles("inline_check_1" - "static inline void function(void) {}" - HAVE_INLINE_1) - if(HAVE_INLINE_1 EQUAL 1) - set(${result} "inline" PARENT_SCOPE) - return() - endif() - - # Check __inline. - aom_check_source_compiles("inline_check_2" - "static __inline void function(void) {}" - HAVE_INLINE_2) - if(HAVE_INLINE_2 EQUAL 1) - set(${result} "__inline" PARENT_SCOPE) - endif() -endfunction() diff --git a/third_party/aom/build/cmake/cpu.cmake b/third_party/aom/build/cmake/cpu.cmake deleted file mode 100644 index 6e8089e63..000000000 --- a/third_party/aom/build/cmake/cpu.cmake +++ /dev/null @@ -1,93 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# - -if("${AOM_TARGET_CPU}" STREQUAL "arm64") - set(ARCH_ARM 1) - set(RTCD_ARCH_ARM "yes") - - if(ENABLE_NEON) - set(HAVE_NEON 1) - set(RTCD_HAVE_NEON "yes") - else() - set(HAVE_NEON 0) - set(AOM_RTCD_FLAGS ${AOM_RTCD_FLAGS} --disable-neon) - endif() -elseif("${AOM_TARGET_CPU}" MATCHES "^armv7") - set(ARCH_ARM 1) - set(RTCD_ARCH_ARM "yes") - - if(ENABLE_NEON) - set(HAVE_NEON 1) - set(RTCD_HAVE_NEON "yes") - else() - set(HAVE_NEON 0) - set(AOM_RTCD_FLAGS ${AOM_RTCD_FLAGS} --disable-neon) - endif() -elseif("${AOM_TARGET_CPU}" MATCHES "^mips") - set(ARCH_MIPS 1) - set(RTCD_ARCH_MIPS "yes") - - if("${AOM_TARGET_CPU}" STREQUAL "mips32") - set(HAVE_MIPS32 1) - set(RTCD_HAVE_MIPS32 "yes") - elseif("${AOM_TARGET_CPU}" STREQUAL "mips64") - set(HAVE_MIPS64 1) - set(RTCD_HAVE_MIPS64 "yes") - endif() - - # HAVE_DSPR2 is set by mips toolchain files. - if(ENABLE_DSPR2 AND HAVE_DSPR2) - set(RTCD_HAVE_DSPR2 "yes") - else() - set(HAVE_DSPR2 0) - set(AOM_RTCD_FLAGS ${AOM_RTCD_FLAGS} --disable-dspr2) - endif() - - # HAVE_MSA is set by mips toolchain files. - if(ENABLE_MSA AND HAVE_MSA) - set(RTCD_HAVE_MSA "yes") - else() - set(HAVE_MSA 0) - set(AOM_RTCD_FLAGS ${AOM_RTCD_FLAGS} --disable-msa) - endif() -elseif("${AOM_TARGET_CPU}" MATCHES "ppc") - set(ARCH_PPC 1) - set(RTCD_ARCH_PPC "yes") - - if(ENABLE_VSX) - set(HAVE_VSX 1) - set(RTCD_HAVE_VSX "yes") - else() - set(HAVE_VSX 0) - set(AOM_RTCD_FLAGS ${AOM_RTCD_FLAGS} --disable-vsx) - endif() -elseif("${AOM_TARGET_CPU}" MATCHES "^x86") - if("${AOM_TARGET_CPU}" STREQUAL "x86") - set(ARCH_X86 1) - set(RTCD_ARCH_X86 "yes") - elseif("${AOM_TARGET_CPU}" STREQUAL "x86_64") - set(ARCH_X86_64 1) - set(RTCD_ARCH_X86_64 "yes") - endif() - - set(X86_FLAVORS "MMX;SSE;SSE2;SSE3;SSSE3;SSE4_1;SSE4_2;AVX;AVX2") - foreach(flavor ${X86_FLAVORS}) - if(ENABLE_${flavor} AND NOT disable_remaining_flavors) - set(HAVE_${flavor} 1) - set(RTCD_HAVE_${flavor} "yes") - else() - set(disable_remaining_flavors 1) - set(HAVE_${flavor} 0) - string(TOLOWER ${flavor} flavor) - set(AOM_RTCD_FLAGS ${AOM_RTCD_FLAGS} --disable-${flavor}) - endif() - endforeach() -endif() diff --git a/third_party/aom/build/cmake/dist.cmake b/third_party/aom/build/cmake/dist.cmake deleted file mode 100644 index 6f81736f0..000000000 --- a/third_party/aom/build/cmake/dist.cmake +++ /dev/null @@ -1,64 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -cmake_minimum_required(VERSION 3.5) - -# Converts spaces in $in_string to semicolons and writes the output to -# $out_string. In CMake's eyes this converts the input string to a list. -function(listify_string in_string out_string) - string(REPLACE " " ";" ${out_string} ${in_string}) - set(${out_string} "${${out_string}}" PARENT_SCOPE) -endfunction() - -set(REQUIRED_ARGS "AOM_ROOT" "AOM_CONFIG_DIR" "AOM_DIST_DIR" - "AOM_DIST_INCLUDES" "AOM_DIST_LIBS" "ENABLE_DOCS") - -foreach(arg ${REQUIRED_ARGS}) - if("${${arg}}" STREQUAL "") - message(FATAL_ERROR "${arg} must not be empty.") - endif() -endforeach() - -if(ENABLE_DOCS) - file(INSTALL "${AOM_CONFIG_DIR}/docs" DESTINATION "${AOM_DIST_DIR}") -endif() - -if(AOM_DIST_EXAMPLES) - listify_string("${AOM_DIST_EXAMPLES}" "AOM_DIST_EXAMPLES") - foreach(example ${AOM_DIST_EXAMPLES}) - if(NOT "${example}" MATCHES "aomdec\|aomenc") - file(INSTALL "${example}" DESTINATION "${AOM_DIST_DIR}/bin/examples") - endif() - endforeach() -endif() - -if(AOM_DIST_TOOLS) - listify_string("${AOM_DIST_TOOLS}" "AOM_DIST_TOOLS") - foreach(tool ${AOM_DIST_TOOLS}) - file(INSTALL "${tool}" DESTINATION "${AOM_DIST_DIR}/bin/tools") - endforeach() -endif() - -if(AOM_DIST_APPS) - listify_string("${AOM_DIST_APPS}" "AOM_DIST_APPS") - foreach(app ${AOM_DIST_APPS}) - file(INSTALL "${app}" DESTINATION "${AOM_DIST_DIR}/bin") - endforeach() -endif() - -listify_string("${AOM_DIST_INCLUDES}" "AOM_DIST_INCLUDES") -foreach(inc ${AOM_DIST_INCLUDES}) - file(INSTALL "${inc}" DESTINATION "${AOM_DIST_DIR}/include/aom") -endforeach() - -listify_string("${AOM_DIST_LIBS}" "AOM_DIST_LIBS") -foreach(lib ${AOM_DIST_LIBS}) - file(INSTALL "${lib}" DESTINATION "${AOM_DIST_DIR}/lib") -endforeach() diff --git a/third_party/aom/build/cmake/exports.cmake b/third_party/aom/build/cmake/exports.cmake deleted file mode 100644 index e0813dc0f..000000000 --- a/third_party/aom/build/cmake/exports.cmake +++ /dev/null @@ -1,65 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_EXPORTS_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_EXPORTS_CMAKE_ -set(AOM_BUILD_CMAKE_EXPORTS_CMAKE_ 1) - -include("${AOM_ROOT}/build/cmake/exports_sources.cmake") - -# Creates the custom target which handles generation of the symbol export lists. -function(setup_exports_target) - if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - set(symbol_file_ext "syms") - elseif("${AOM_TARGET_SYSTEM}" MATCHES "Windows\|MSYS" AND MSVC) - set(symbol_file_ext "def") - else() - set(symbol_file_ext "ver") - endif() - - set(aom_sym_file "${AOM_CONFIG_DIR}/libaom.${symbol_file_ext}") - - add_custom_target(generate_exports - COMMAND ${CMAKE_COMMAND} -DAOM_ROOT="${AOM_ROOT}" - -DAOM_CONFIG_DIR="${AOM_CONFIG_DIR}" - -DAOM_TARGET_SYSTEM=${AOM_TARGET_SYSTEM} - -DAOM_SYM_FILE="${aom_sym_file}" -DAOM_MSVC=${MSVC} - -DAOM_XCODE=${XCODE} -DCONFIG_NAME=$<CONFIG> - -DCONFIG_AV1_DECODER=${CONFIG_AV1_DECODER} - -DCONFIG_AV1_ENCODER=${CONFIG_AV1_ENCODER} - -DENABLE_TESTS=${ENABLE_TESTS} -P - "${AOM_ROOT}/build/cmake/generate_exports.cmake" - SOURCES ${AOM_EXPORTS_SOURCES} - DEPENDS ${AOM_EXPORTS_SOURCES}) - - # Make libaom depend on the exports file, and set flags to pick it up when - # creating the dylib. - add_dependencies(aom generate_exports) - - if(APPLE) - set_property(TARGET aom APPEND_STRING - PROPERTY LINK_FLAGS "-exported_symbols_list ${aom_sym_file}") - elseif(WIN32) - if(NOT MSVC) - set_property(TARGET aom APPEND_STRING - PROPERTY LINK_FLAGS "-Wl,--version-script ${aom_sym_file}") - else() - set_property(TARGET aom APPEND_STRING - PROPERTY LINK_FLAGS "/DEF:${aom_sym_file}") - endif() - - # TODO(tomfinegan): Sort out the import lib situation and flags for MSVC. - - else() - set_property(TARGET aom APPEND_STRING - PROPERTY LINK_FLAGS "-Wl,--version-script,${aom_sym_file}") - endif() -endfunction() diff --git a/third_party/aom/build/cmake/exports_sources.cmake b/third_party/aom/build/cmake/exports_sources.cmake deleted file mode 100644 index 576920e36..000000000 --- a/third_party/aom/build/cmake/exports_sources.cmake +++ /dev/null @@ -1,32 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_EXPORTS_SOURCES_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_EXPORTS_SOURCES_CMAKE_ -set(AOM_BUILD_CMAKE_EXPORTS_SOURCES_CMAKE_ 1) - -list(APPEND AOM_EXPORTS_SOURCES "${AOM_ROOT}/aom/exports_com" - "${AOM_ROOT}/av1/exports_com") - -if(CONFIG_AV1_DECODER) - list(APPEND AOM_EXPORTS_SOURCES "${AOM_ROOT}/aom/exports_dec" - "${AOM_ROOT}/av1/exports_dec") -endif() - -if(CONFIG_AV1_ENCODER) - list(APPEND AOM_EXPORTS_SOURCES "${AOM_ROOT}/aom/exports_enc" - "${AOM_ROOT}/av1/exports_enc") -endif() - -if(ENABLE_TESTS) - list(APPEND AOM_EXPORTS_SOURCES "${AOM_ROOT}/aom/exports_test" - "${AOM_ROOT}/av1/exports_test") -endif() diff --git a/third_party/aom/build/cmake/generate_aom_config_templates.cmake b/third_party/aom/build/cmake/generate_aom_config_templates.cmake deleted file mode 100644 index b91c036de..000000000 --- a/third_party/aom/build/cmake/generate_aom_config_templates.cmake +++ /dev/null @@ -1,101 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -cmake_minimum_required(VERSION 3.5) - -string(TIMESTAMP year "%Y") -set( - asm_file_header_block - "\; -\; Copyright (c) ${year}, Alliance for Open Media. All rights reserved -\; -\; This source code is subject to the terms of the BSD 2 Clause License and -\; the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License -\; was not distributed with this source code in the LICENSE file, you can -\; obtain it at www.aomedia.org/license/software. If the Alliance for Open -\; Media Patent License 1.0 was not distributed with this source code in the -\; PATENTS file, you can obtain it at www.aomedia.org/license/patent. -\; -" - ) -set( - h_file_header_block - "/* - * Copyright (c) ${year}, Alliance for Open Media. All rights reserved - * - * This source code is subject to the terms of the BSD 2 Clause License and - * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License - * was not distributed with this source code in the LICENSE file, you can - * obtain it at www.aomedia.org/license/software. If the Alliance for Open - * Media Patent License 1.0 was not distributed with this source code in the - * PATENTS file, you can obtain it at www.aomedia.org/license/patent. - */ -\#ifndef AOM_CONFIG_H_ -\#define AOM_CONFIG_H_ -" - ) -set( - cmake_file_header_block - "## -## Copyright (c) ${year}, Alliance for Open Media. All rights reserved -## -## This source code is subject to the terms of the BSD 2 Clause License and -## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License -## was not distributed with this source code in the LICENSE file, you can -## obtain it at www.aomedia.org/license/software. If the Alliance for Open -## Media Patent License 1.0 was not distributed with this source code in the -## PATENTS file, you can obtain it at www.aomedia.org/license/patent. -## -" - ) - -# Terminates cmake execution when $var_name is an empty string, or the variable -# name it contains does not expand to an existing directory. -function(check_directory_var var_name) - if("${var_name}" STREQUAL "") - message(FATAL_ERROR "The CMake variable ${var_name} must be defined.") - endif() - - if(NOT EXISTS "${${var_name}}") - message(FATAL_ERROR "${${var_name}} (${var_name}) missing.") - endif() -endfunction() - -check_directory_var(AOM_CONFIG_DIR) -check_directory_var(AOM_ROOT) - -set(AOM_DEFAULTS "${AOM_ROOT}/build/cmake/aom_config_defaults.cmake") -if(NOT EXISTS "${AOM_DEFAULTS}") - message(FATAL_ERROR - "Configuration default values file (${AOM_DEFAULTS}) missing.") -endif() - -include("${AOM_ROOT}/build/cmake/aom_config_defaults.cmake") -list(APPEND aom_build_vars ${AOM_DETECT_VARS} ${AOM_CONFIG_VARS}) -list(SORT aom_build_vars) - -set(aom_config_h_template "${AOM_CONFIG_DIR}/config/aom_config.h.cmake") -file(WRITE "${aom_config_h_template}" ${h_file_header_block}) -foreach(aom_var ${aom_build_vars}) - if(NOT "${aom_var}" STREQUAL "AOM_RTCD_FLAGS") - file(APPEND "${aom_config_h_template}" - "\#define ${aom_var} \${${aom_var}}\n") - endif() -endforeach() -file(APPEND "${aom_config_h_template}" "\#endif // AOM_CONFIG_H_") - -set(aom_asm_config_template "${AOM_CONFIG_DIR}/config/aom_config.asm.cmake") -file(WRITE "${aom_asm_config_template}" ${asm_file_header_block}) -foreach(aom_var ${aom_build_vars}) - if(NOT "${aom_var}" STREQUAL "INLINE" AND NOT "${aom_var}" STREQUAL - "AOM_RTCD_FLAGS") - file(APPEND "${aom_asm_config_template}" "${aom_var} equ \${${aom_var}}\n") - endif() -endforeach() diff --git a/third_party/aom/build/cmake/generate_exports.cmake b/third_party/aom/build/cmake/generate_exports.cmake deleted file mode 100644 index 7ab5aaef8..000000000 --- a/third_party/aom/build/cmake/generate_exports.cmake +++ /dev/null @@ -1,66 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -cmake_minimum_required(VERSION 3.5) - -set(REQUIRED_ARGS "AOM_ROOT" "AOM_CONFIG_DIR" "AOM_TARGET_SYSTEM" - "AOM_SYM_FILE" "CONFIG_AV1_DECODER" "CONFIG_AV1_ENCODER") - -foreach(arg ${REQUIRED_ARGS}) - if("${${arg}}" STREQUAL "") - message(FATAL_ERROR "${arg} must not be empty.") - endif() -endforeach() - -include("${AOM_ROOT}/build/cmake/exports_sources.cmake") - -if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - set(symbol_prefix "_") -elseif("${AOM_TARGET_SYSTEM}" MATCHES "Windows\|MSYS" AND AOM_MSVC) - file(WRITE "${AOM_SYM_FILE}" "LIBRARY aom\n" "EXPORTS\n") -else() - set(symbol_suffix ";") -endif() - -set(aom_sym_file "${AOM_SYM_FILE}") - -if("${AOM_TARGET_SYSTEM}" STREQUAL "Darwin") - file(REMOVE "${aom_sym_file}") -elseif("${AOM_TARGET_SYSTEM}" MATCHES "Windows\|MSYS" AND AOM_MSVC) - file(WRITE "${aom_sym_file}" "LIBRARY aom\n" "EXPORTS\n") -else() - file(WRITE "${aom_sym_file}" "{\nglobal:\n") -endif() - -foreach(export_file ${AOM_EXPORTS_SOURCES}) - file(STRINGS "${export_file}" exported_file_data) - set(exported_symbols "${exported_symbols} ${exported_file_data};") - string(STRIP "${exported_symbols}" exported_symbols) -endforeach() - -foreach(exported_symbol ${exported_symbols}) - string(STRIP "${exported_symbol}" exported_symbol) - if("${AOM_TARGET_SYSTEM}" MATCHES "Windows\|MSYS" AND AOM_MSVC) - string(SUBSTRING ${exported_symbol} 0 4 export_type) - string(COMPARE EQUAL "${export_type}" "data" is_data) - if(is_data) - set(symbol_suffix " DATA") - else() - set(symbol_suffix "") - endif() - endif() - string(REGEX REPLACE "text \|data " "" "exported_symbol" "${exported_symbol}") - set(exported_symbol " ${symbol_prefix}${exported_symbol}${symbol_suffix}") - file(APPEND "${aom_sym_file}" "${exported_symbol}\n") -endforeach() - -if("${aom_sym_file}" MATCHES "ver$") - file(APPEND "${aom_sym_file}" " \nlocal:\n *;\n};") -endif() diff --git a/third_party/aom/build/cmake/ios-Info.plist b/third_party/aom/build/cmake/ios-Info.plist deleted file mode 100644 index 300e3e310..000000000 --- a/third_party/aom/build/cmake/ios-Info.plist +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -<plist version="1.0"> -<dict> - <key>CFBundleDevelopmentRegion</key> - <string>en</string> - <key>CFBundleExecutable</key> - <string>AOM</string> - <key>CFBundleIdentifier</key> - <string>org.webmproject.AOM</string> - <key>CFBundleInfoDictionaryVersion</key> - <string>6.0</string> - <key>CFBundleName</key> - <string>AOM</string> - <key>CFBundlePackageType</key> - <string>FMWK</string> - <key>CFBundleShortVersionString</key> - <string>${VERSION}</string> - <key>CFBundleSignature</key> - <string>????</string> - <key>CFBundleSupportedPlatforms</key> - <array> - <string>iPhoneOS</string> - </array> - <key>CFBundleVersion</key> - <string>${VERSION}</string> - <key>MinimumOSVersion</key> - <string>${IOS_VERSION_MIN}</string> - <key>UIDeviceFamily</key> - <array> - <integer>1</integer> - <integer>2</integer> - </array> - <key>AOMFullVersion</key> - <string>${FULLVERSION}</string> -</dict> -</plist> diff --git a/third_party/aom/build/cmake/iosbuild.sh b/third_party/aom/build/cmake/iosbuild.sh deleted file mode 100755 index 167ece200..000000000 --- a/third_party/aom/build/cmake/iosbuild.sh +++ /dev/null @@ -1,384 +0,0 @@ -#!/bin/sh -## Copyright (c) 2016, Alliance for Open Media. All rights reserved -## -## This source code is subject to the terms of the BSD 2 Clause License and -## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License -## was not distributed with this source code in the LICENSE file, you can -## obtain it at www.aomedia.org/license/software. If the Alliance for Open -## Media Patent License 1.0 was not distributed with this source code in the -## PATENTS file, you can obtain it at www.aomedia.org/license/patent. -## -## This script generates 'AOM.framework'. An iOS app can encode and decode AVx -## video by including 'AOM.framework'. -## -## Run iosbuild.sh to create 'AOM.framework' in the current directory. -## -set -e -devnull='> /dev/null 2>&1' - -BUILD_ROOT="_iosbuild" -CONFIGURE_ARGS="--disable-docs - --disable-examples - --disable-libyuv - --disable-unit-tests" -DIST_DIR="_dist" -FRAMEWORK_DIR="AOM.framework" -FRAMEWORK_LIB="AOM.framework/AOM" -HEADER_DIR="${FRAMEWORK_DIR}/Headers/aom" -SCRIPT_DIR=$(dirname "$0") -LIBAOM_SOURCE_DIR=$(cd ${SCRIPT_DIR}/../..; pwd) -LIPO=$(xcrun -sdk iphoneos${SDK} -find lipo) -ORIG_PWD="$(pwd)" -ARM_TARGETS="arm64-darwin-gcc - armv7-darwin-gcc - armv7s-darwin-gcc" -SIM_TARGETS="x86-iphonesimulator-gcc - x86_64-iphonesimulator-gcc" -OSX_TARGETS="x86-darwin16-gcc - x86_64-darwin16-gcc" -TARGETS="${ARM_TARGETS} ${SIM_TARGETS}" - -# Configures for the target specified by $1, and invokes make with the dist -# target using $ as the distribution output directory. -build_target() { - local target="$1" - local old_pwd="$(pwd)" - local target_specific_flags="" - - vlog "***Building target: ${target}***" - - case "${target}" in - x86-*) - target_specific_flags="--enable-pic" - vlog "Enabled PIC for ${target}" - ;; - esac - - mkdir "${target}" - cd "${target}" - # TODO(tomfinegan@google.com): switch to cmake. - eval "${LIBAOM_SOURCE_DIR}/configure" --target="${target}" \ - ${CONFIGURE_ARGS} ${EXTRA_CONFIGURE_ARGS} ${target_specific_flags} \ - ${devnull} - export DIST_DIR - eval make dist ${devnull} - cd "${old_pwd}" - - vlog "***Done building target: ${target}***" -} - -# Returns the preprocessor symbol for the target specified by $1. -target_to_preproc_symbol() { - target="$1" - case "${target}" in - arm64-*) - echo "__aarch64__" - ;; - armv7-*) - echo "__ARM_ARCH_7A__" - ;; - armv7s-*) - echo "__ARM_ARCH_7S__" - ;; - x86-*) - echo "__i386__" - ;; - x86_64-*) - echo "__x86_64__" - ;; - *) - echo "#error ${target} unknown/unsupported" - return 1 - ;; - esac -} - -# Create a aom_config.h shim that, based on preprocessor settings for the -# current target CPU, includes the real aom_config.h for the current target. -# $1 is the list of targets. -create_aom_framework_config_shim() { - local targets="$1" - local config_file="${HEADER_DIR}/aom_config.h" - local preproc_symbol="" - local target="" - local include_guard="AOM_FRAMEWORK_HEADERS_AOM_AOM_CONFIG_H_" - - local file_header="/* - * Copyright (c) $(date +%Y), Alliance for Open Media. All rights reserved. - * - * This source code is subject to the terms of the BSD 2 Clause License and - * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License - * was not distributed with this source code in the LICENSE file, you can - * obtain it at www.aomedia.org/license/software. If the Alliance for Open - * Media Patent License 1.0 was not distributed with this source code in the - * PATENTS file, you can obtain it at www.aomedia.org/license/patent. - */ - -/* GENERATED FILE: DO NOT EDIT! */ - -#ifndef ${include_guard} -#define ${include_guard} - -#if defined" - - printf "%s" "${file_header}" > "${config_file}" - for target in ${targets}; do - preproc_symbol=$(target_to_preproc_symbol "${target}") - printf " ${preproc_symbol}\n" >> "${config_file}" - printf "#define AOM_FRAMEWORK_TARGET \"${target}\"\n" >> "${config_file}" - printf "#include \"AOM/aom/${target}/aom_config.h\"\n" >> "${config_file}" - printf "#elif defined" >> "${config_file}" - mkdir "${HEADER_DIR}/${target}" - cp -p "${BUILD_ROOT}/${target}/aom_config.h" "${HEADER_DIR}/${target}" - done - - # Consume the last line of output from the loop: We don't want it. - sed -i '' -e '$d' "${config_file}" - - printf "#endif\n\n" >> "${config_file}" - printf "#endif // ${include_guard}" >> "${config_file}" -} - -# Verifies that $FRAMEWORK_LIB fat library contains requested builds. -verify_framework_targets() { - local requested_cpus="" - local cpu="" - - # Extract CPU from full target name. - for target; do - cpu="${target%%-*}" - if [ "${cpu}" = "x86" ]; then - # lipo -info outputs i386 for libaom x86 targets. - cpu="i386" - fi - requested_cpus="${requested_cpus}${cpu} " - done - - # Get target CPUs present in framework library. - local targets_built=$(${LIPO} -info ${FRAMEWORK_LIB}) - - # $LIPO -info outputs a string like the following: - # Architectures in the fat file: $FRAMEWORK_LIB <architectures> - # Capture only the architecture strings. - targets_built=${targets_built##*: } - - # Sort CPU strings to make the next step a simple string compare. - local actual=$(echo ${targets_built} | tr " " "\n" | sort | tr "\n" " ") - local requested=$(echo ${requested_cpus} | tr " " "\n" | sort | tr "\n" " ") - - vlog "Requested ${FRAMEWORK_LIB} CPUs: ${requested}" - vlog "Actual ${FRAMEWORK_LIB} CPUs: ${actual}" - - if [ "${requested}" != "${actual}" ]; then - elog "Actual ${FRAMEWORK_LIB} targets do not match requested target list." - elog " Requested target CPUs: ${requested}" - elog " Actual target CPUs: ${actual}" - return 1 - fi -} - -# Configures and builds each target specified by $1, and then builds -# AOM.framework. -build_framework() { - local lib_list="" - local targets="$1" - local target="" - local target_dist_dir="" - - # Clean up from previous build(s). - rm -rf "${BUILD_ROOT}" "${FRAMEWORK_DIR}" - - # Create output dirs. - mkdir -p "${BUILD_ROOT}" - mkdir -p "${HEADER_DIR}" - - cd "${BUILD_ROOT}" - - for target in ${targets}; do - build_target "${target}" - target_dist_dir="${BUILD_ROOT}/${target}/${DIST_DIR}" - if [ "${ENABLE_SHARED}" = "yes" ]; then - local suffix="dylib" - else - local suffix="a" - fi - lib_list="${lib_list} ${target_dist_dir}/lib/libaom.${suffix}" - done - - cd "${ORIG_PWD}" - - # The basic libaom API includes are all the same; just grab the most recent - # set. - cp -p "${target_dist_dir}"/include/aom/* "${HEADER_DIR}" - - # Build the fat library. - ${LIPO} -create ${lib_list} -output ${FRAMEWORK_DIR}/AOM - - # Create the aom_config.h shim that allows usage of aom_config.h from - # within AOM.framework. - create_aom_framework_config_shim "${targets}" - - # Copy in aom_version.h. - cp -p "${BUILD_ROOT}/${target}/aom_version.h" "${HEADER_DIR}" - - if [ "${ENABLE_SHARED}" = "yes" ]; then - # Adjust the dylib's name so dynamic linking in apps works as expected. - install_name_tool -id '@rpath/AOM.framework/AOM' ${FRAMEWORK_DIR}/AOM - - # Copy in Info.plist. - cat "${SCRIPT_DIR}/ios-Info.plist" \ - | sed "s/\${FULLVERSION}/${FULLVERSION}/g" \ - | sed "s/\${VERSION}/${VERSION}/g" \ - | sed "s/\${IOS_VERSION_MIN}/${IOS_VERSION_MIN}/g" \ - > "${FRAMEWORK_DIR}/Info.plist" - fi - - # Confirm AOM.framework/AOM contains the targets requested. - verify_framework_targets ${targets} - - vlog "Created fat library ${FRAMEWORK_LIB} containing:" - for lib in ${lib_list}; do - vlog " $(echo ${lib} | awk -F / '{print $2, $NF}')" - done -} - -# Trap function. Cleans up the subtree used to build all targets contained in -# $TARGETS. -cleanup() { - local res=$? - cd "${ORIG_PWD}" - - if [ $res -ne 0 ]; then - elog "build exited with error ($res)" - fi - - if [ "${PRESERVE_BUILD_OUTPUT}" != "yes" ]; then - rm -rf "${BUILD_ROOT}" - fi -} - -print_list() { - local indent="$1" - shift - local list="$@" - for entry in ${list}; do - echo "${indent}${entry}" - done -} - -iosbuild_usage() { -cat << EOF - Usage: ${0##*/} [arguments] - --help: Display this message and exit. - --enable-shared: Build a dynamic framework for use on iOS 8 or later. - --extra-configure-args <args>: Extra args to pass when configuring libaom. - --macosx: Uses darwin16 targets instead of iphonesimulator targets for x86 - and x86_64. Allows linking to framework when builds target MacOSX - instead of iOS. - --preserve-build-output: Do not delete the build directory. - --show-build-output: Show output from each library build. - --targets <targets>: Override default target list. Defaults: -$(print_list " " ${TARGETS}) - --test-link: Confirms all targets can be linked. Functionally identical to - passing --enable-examples via --extra-configure-args. - --verbose: Output information about the environment and each stage of the - build. -EOF -} - -elog() { - echo "${0##*/} failed because: $@" 1>&2 -} - -vlog() { - if [ "${VERBOSE}" = "yes" ]; then - echo "$@" - fi -} - -trap cleanup EXIT - -# Parse the command line. -while [ -n "$1" ]; do - case "$1" in - --extra-configure-args) - EXTRA_CONFIGURE_ARGS="$2" - shift - ;; - --help) - iosbuild_usage - exit - ;; - --enable-shared) - ENABLE_SHARED=yes - ;; - --preserve-build-output) - PRESERVE_BUILD_OUTPUT=yes - ;; - --show-build-output) - devnull= - ;; - --test-link) - EXTRA_CONFIGURE_ARGS="${EXTRA_CONFIGURE_ARGS} --enable-examples" - ;; - --targets) - TARGETS="$2" - shift - ;; - --macosx) - TARGETS="${ARM_TARGETS} ${OSX_TARGETS}" - ;; - --verbose) - VERBOSE=yes - ;; - *) - iosbuild_usage - exit 1 - ;; - esac - shift -done - -if [ "${ENABLE_SHARED}" = "yes" ]; then - CONFIGURE_ARGS="--enable-shared ${CONFIGURE_ARGS}" -fi - -FULLVERSION=$("${SCRIPT_DIR}"/version.sh --bare "${LIBAOM_SOURCE_DIR}") -VERSION=$(echo "${FULLVERSION}" | sed -E 's/^v([0-9]+\.[0-9]+\.[0-9]+).*$/\1/') - -if [ "$ENABLE_SHARED" = "yes" ]; then - IOS_VERSION_OPTIONS="--enable-shared" - IOS_VERSION_MIN="8.0" -else - IOS_VERSION_OPTIONS="" - IOS_VERSION_MIN="6.0" -fi - -if [ "${VERBOSE}" = "yes" ]; then -cat << EOF - BUILD_ROOT=${BUILD_ROOT} - DIST_DIR=${DIST_DIR} - CONFIGURE_ARGS=${CONFIGURE_ARGS} - EXTRA_CONFIGURE_ARGS=${EXTRA_CONFIGURE_ARGS} - FRAMEWORK_DIR=${FRAMEWORK_DIR} - FRAMEWORK_LIB=${FRAMEWORK_LIB} - HEADER_DIR=${HEADER_DIR} - LIBAOM_SOURCE_DIR=${LIBAOM_SOURCE_DIR} - LIPO=${LIPO} - MAKEFLAGS=${MAKEFLAGS} - ORIG_PWD=${ORIG_PWD} - PRESERVE_BUILD_OUTPUT=${PRESERVE_BUILD_OUTPUT} - TARGETS="$(print_list "" ${TARGETS})" - ENABLE_SHARED=${ENABLE_SHARED} - OSX_TARGETS="${OSX_TARGETS}" - SIM_TARGETS="${SIM_TARGETS}" - SCRIPT_DIR="${SCRIPT_DIR}" - FULLVERSION="${FULLVERSION}" - VERSION="${VERSION}" - IOS_VERSION_MIN="${IOS_VERSION_MIN}" -EOF -fi - -build_framework "${TARGETS}" -echo "Successfully built '${FRAMEWORK_DIR}' for:" -print_list "" ${TARGETS} diff --git a/third_party/aom/build/cmake/msvc_runtime.cmake b/third_party/aom/build/cmake/msvc_runtime.cmake deleted file mode 100644 index 9e4cbea43..000000000 --- a/third_party/aom/build/cmake/msvc_runtime.cmake +++ /dev/null @@ -1,37 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_MSVC_RUNTIME_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_MSVC_RUNTIME_CMAKE_ -set(AOM_BUILD_CMAKE_MSVC_RUNTIME_CMAKE_ 1) - -if(MSVC) - - # CMake defaults to producing code linked to the DLL MSVC runtime. That will - # not work with googletest, and isn't what we want anyway. - if(NOT "${MSVC_RUNTIME}" STREQUAL "dll") - foreach(flag_var - CMAKE_C_FLAGS - CMAKE_C_FLAGS_DEBUG - CMAKE_C_FLAGS_RELEASE - CMAKE_C_FLAGS_MINSIZEREL - CMAKE_C_FLAGS_RELWITHDEBINFO - CMAKE_CXX_FLAGS - CMAKE_CXX_FLAGS_DEBUG - CMAKE_CXX_FLAGS_RELEASE - CMAKE_CXX_FLAGS_MINSIZEREL - CMAKE_CXX_FLAGS_RELWITHDEBINFO) - if(${flag_var} MATCHES "/MD") - string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") - endif(${flag_var} MATCHES "/MD") - endforeach(flag_var) - endif() -endif() diff --git a/third_party/aom/build/cmake/pkg_config.cmake b/third_party/aom/build/cmake/pkg_config.cmake deleted file mode 100644 index 64e20214e..000000000 --- a/third_party/aom/build/cmake/pkg_config.cmake +++ /dev/null @@ -1,58 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -cmake_minimum_required(VERSION 3.5) - -set(REQUIRED_ARGS "AOM_ROOT" "AOM_CONFIG_DIR" "CMAKE_INSTALL_PREFIX" - "CMAKE_PROJECT_NAME" "CONFIG_MULTITHREAD" "HAVE_PTHREAD_H") - -foreach(arg ${REQUIRED_ARGS}) - if("${${arg}}" STREQUAL "") - message(FATAL_ERROR "${arg} must not be empty.") - endif() -endforeach() - -include("${AOM_ROOT}/build/cmake/util.cmake") - -extract_version_string("${AOM_CONFIG_DIR}/config/aom_version.h" aom_version) - -# Create a version string suitable for comparison using the RPM version compare -# algorithm: strip out everything after the number. -string(FIND "${aom_version}" "-" dash_pos) -if(${dash_pos} EQUAL -1) - set(package_version "${aom_version}") -else() - string(SUBSTRING "${aom_version}" 0 ${dash_pos} package_version) -endif() - -# Write pkg-config info. -set(prefix "${CMAKE_INSTALL_PREFIX}") -set(pkgconfig_file "${AOM_CONFIG_DIR}/aom.pc") -string(TOLOWER ${CMAKE_PROJECT_NAME} pkg_name) -file(WRITE "${pkgconfig_file}" "# libaom pkg-config.\n") -file(APPEND "${pkgconfig_file}" "prefix=${prefix}\n") -file(APPEND "${pkgconfig_file}" "exec_prefix=\${prefix}/bin\n") -file(APPEND "${pkgconfig_file}" "libdir=\${prefix}/lib\n") -file(APPEND "${pkgconfig_file}" "includedir=\${prefix}/include\n\n") -file(APPEND "${pkgconfig_file}" "Name: ${pkg_name}\n") -file(APPEND "${pkgconfig_file}" - "Description: AV1 codec library v${aom_version}.\n") -file(APPEND "${pkgconfig_file}" "Version: ${package_version}\n") -file(APPEND "${pkgconfig_file}" "Requires:\n") -file(APPEND "${pkgconfig_file}" "Conflicts:\n") -if(CONFIG_MULTITHREAD AND HAVE_PTHREAD_H) - file(APPEND "${pkgconfig_file}" - "Libs: -L\${prefix}/lib -l${pkg_name} -lm -lpthread\n") - file(APPEND "${pkgconfig_file}" "Libs.private: -lm -lpthread\n") -else() - file(APPEND "${pkgconfig_file}" "Libs: -L\${prefix}/lib -l${pkg_name} -lm\n") - file(APPEND "${pkgconfig_file}" "Libs.private: -lm\n") -endif() -file(APPEND "${pkgconfig_file}" "Cflags: -I\${prefix}/include\n") diff --git a/third_party/aom/build/cmake/rtcd.pl b/third_party/aom/build/cmake/rtcd.pl deleted file mode 100755 index 46e06907c..000000000 --- a/third_party/aom/build/cmake/rtcd.pl +++ /dev/null @@ -1,467 +0,0 @@ -#!/usr/bin/env perl -## -## Copyright (c) 2017, Alliance for Open Media. All rights reserved -## -## This source code is subject to the terms of the BSD 2 Clause License and -## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License -## was not distributed with this source code in the LICENSE file, you can -## obtain it at www.aomedia.org/license/software. If the Alliance for Open -## Media Patent License 1.0 was not distributed with this source code in the -## PATENTS file, you can obtain it at www.aomedia.org/license/patent. -## -no strict 'refs'; -use warnings; -use Getopt::Long; -Getopt::Long::Configure("auto_help") if $Getopt::Long::VERSION > 2.32; - -my %ALL_FUNCS = (); -my @ALL_ARCHS; -my @ALL_FORWARD_DECLS; -my @REQUIRES; - -my %opts = (); -my %disabled = (); -my %required = (); - -my @argv; -foreach (@ARGV) { - $disabled{$1} = 1, next if /--disable-(.*)/; - $required{$1} = 1, next if /--require-(.*)/; - push @argv, $_; -} - -# NB: use GetOptions() instead of GetOptionsFromArray() for compatibility. -@ARGV = @argv; -GetOptions( - \%opts, - 'arch=s', - 'sym=s', - 'config=s', -); - -foreach my $opt (qw/arch config/) { - if (!defined($opts{$opt})) { - warn "--$opt is required!\n"; - Getopt::Long::HelpMessage('-exit' => 1); - } -} - -foreach my $defs_file (@ARGV) { - if (!-f $defs_file) { - warn "$defs_file: $!\n"; - Getopt::Long::HelpMessage('-exit' => 1); - } -} - -open CONFIG_FILE, $opts{config} or - die "Error opening config file '$opts{config}': $!\n"; - -my %config = (); -while (<CONFIG_FILE>) { - next if !/^#define\s+(?:CONFIG_|HAVE_)/; - chomp; - my @line_components = split /\s/; - scalar @line_components > 2 or - die "Invalid input passed to rtcd.pl via $opts{config}."; - # $line_components[0] = #define - # $line_components[1] = flag name (CONFIG_SOMETHING or HAVE_SOMETHING) - # $line_components[2] = flag value (0 or 1) - $config{$line_components[1]} = "$line_components[2]" eq "1" ? "yes" : ""; -} -close CONFIG_FILE; - -# -# Routines for the RTCD DSL to call -# -sub aom_config($) { - return (defined $config{$_[0]}) ? $config{$_[0]} : ""; -} - -sub specialize { - if (@_ <= 1) { - die "'specialize' must be called with a function name and at least one ", - "architecture ('C' is implied): \n@_\n"; - } - my $fn=$_[0]; - shift; - foreach my $opt (@_) { - eval "\$${fn}_${opt}=${fn}_${opt}"; - } -} - -sub add_proto { - my $fn = splice(@_, -2, 1); - $ALL_FUNCS{$fn} = \@_; - specialize $fn, "c"; -} - -sub require { - foreach my $fn (keys %ALL_FUNCS) { - foreach my $opt (@_) { - my $ofn = eval "\$${fn}_${opt}"; - next if !$ofn; - - # if we already have a default, then we can disable it, as we know - # we can do better. - my $best = eval "\$${fn}_default"; - if ($best) { - my $best_ofn = eval "\$${best}"; - if ($best_ofn && "$best_ofn" ne "$ofn") { - eval "\$${best}_link = 'false'"; - } - } - eval "\$${fn}_default=${fn}_${opt}"; - eval "\$${fn}_${opt}_link='true'"; - } - } -} - -sub forward_decls { - push @ALL_FORWARD_DECLS, @_; -} - -# -# Include the user's directives -# -foreach my $f (@ARGV) { - open FILE, "<", $f or die "cannot open $f: $!\n"; - my $contents = join('', <FILE>); - close FILE; - eval $contents or warn "eval failed: $@\n"; -} - -# -# Process the directives according to the command line -# -sub process_forward_decls() { - foreach (@ALL_FORWARD_DECLS) { - $_->(); - } -} - -sub determine_indirection { - aom_config("CONFIG_RUNTIME_CPU_DETECT") eq "yes" or &require(@ALL_ARCHS); - foreach my $fn (keys %ALL_FUNCS) { - my $n = ""; - my @val = @{$ALL_FUNCS{$fn}}; - my $args = pop @val; - my $rtyp = "@val"; - my $dfn = eval "\$${fn}_default"; - $dfn = eval "\$${dfn}"; - foreach my $opt (@_) { - my $ofn = eval "\$${fn}_${opt}"; - next if !$ofn; - my $link = eval "\$${fn}_${opt}_link"; - next if $link && $link eq "false"; - $n .= "x"; - } - if ($n eq "x") { - eval "\$${fn}_indirect = 'false'"; - } else { - eval "\$${fn}_indirect = 'true'"; - } - } -} - -sub declare_function_pointers { - foreach my $fn (sort keys %ALL_FUNCS) { - my @val = @{$ALL_FUNCS{$fn}}; - my $args = pop @val; - my $rtyp = "@val"; - my $dfn = eval "\$${fn}_default"; - $dfn = eval "\$${dfn}"; - foreach my $opt (@_) { - my $ofn = eval "\$${fn}_${opt}"; - next if !$ofn; - print "$rtyp ${ofn}($args);\n"; - } - if (eval "\$${fn}_indirect" eq "false") { - print "#define ${fn} ${dfn}\n"; - } else { - print "RTCD_EXTERN $rtyp (*${fn})($args);\n"; - } - print "\n"; - } -} - -sub set_function_pointers { - foreach my $fn (sort keys %ALL_FUNCS) { - my @val = @{$ALL_FUNCS{$fn}}; - my $args = pop @val; - my $rtyp = "@val"; - my $dfn = eval "\$${fn}_default"; - $dfn = eval "\$${dfn}"; - if (eval "\$${fn}_indirect" eq "true") { - print " $fn = $dfn;\n"; - foreach my $opt (@_) { - my $ofn = eval "\$${fn}_${opt}"; - next if !$ofn; - next if "$ofn" eq "$dfn"; - my $link = eval "\$${fn}_${opt}_link"; - next if $link && $link eq "false"; - my $cond = eval "\$have_${opt}"; - print " if (${cond}) $fn = $ofn;\n" - } - } - } -} - -sub filter { - my @filtered; - foreach (@_) { push @filtered, $_ unless $disabled{$_}; } - return @filtered; -} - -# -# Helper functions for generating the arch specific RTCD files -# -sub common_top() { - my $include_guard = uc($opts{sym})."_H_"; - print <<EOF; -// This file is generated. Do not edit. -#ifndef ${include_guard} -#define ${include_guard} - -#ifdef RTCD_C -#define RTCD_EXTERN -#else -#define RTCD_EXTERN extern -#endif - -EOF - -process_forward_decls(); -print <<EOF; - -#ifdef __cplusplus -extern "C" { -#endif - -EOF -declare_function_pointers("c", @ALL_ARCHS); - -print <<EOF; -void $opts{sym}(void); - -EOF -} - -sub common_bottom() { - print <<EOF; - -#ifdef __cplusplus -} // extern "C" -#endif - -#endif -EOF -} - -sub x86() { - determine_indirection("c", @ALL_ARCHS); - - # Assign the helper variable for each enabled extension - foreach my $opt (@ALL_ARCHS) { - my $opt_uc = uc $opt; - eval "\$have_${opt}=\"flags & HAS_${opt_uc}\""; - } - - common_top; - print <<EOF; -#ifdef RTCD_C -#include "aom_ports/x86.h" -static void setup_rtcd_internal(void) -{ - int flags = x86_simd_caps(); - - (void)flags; - -EOF - - set_function_pointers("c", @ALL_ARCHS); - - print <<EOF; -} -#endif -EOF - common_bottom; -} - -sub arm() { - determine_indirection("c", @ALL_ARCHS); - - # Assign the helper variable for each enabled extension - foreach my $opt (@ALL_ARCHS) { - my $opt_uc = uc $opt; - eval "\$have_${opt}=\"flags & HAS_${opt_uc}\""; - } - - common_top; - print <<EOF; -#include "config/aom_config.h" - -#ifdef RTCD_C -#include "aom_ports/arm.h" -static void setup_rtcd_internal(void) -{ - int flags = aom_arm_cpu_caps(); - - (void)flags; - -EOF - - set_function_pointers("c", @ALL_ARCHS); - - print <<EOF; -} -#endif -EOF - common_bottom; -} - -sub mips() { - determine_indirection("c", @ALL_ARCHS); - - # Assign the helper variable for each enabled extension - foreach my $opt (@ALL_ARCHS) { - my $opt_uc = uc $opt; - eval "\$have_${opt}=\"flags & HAS_${opt_uc}\""; - } - - common_top; - - print <<EOF; -#include "config/aom_config.h" - -#ifdef RTCD_C -static void setup_rtcd_internal(void) -{ -EOF - - set_function_pointers("c", @ALL_ARCHS); - - print <<EOF; -#if HAVE_DSPR2 -void aom_dsputil_static_init(); -aom_dsputil_static_init(); -#endif -} -#endif -EOF - common_bottom; -} - -sub ppc() { - determine_indirection("c", @ALL_ARCHS); - - # Assign the helper variable for each enabled extension - foreach my $opt (@ALL_ARCHS) { - my $opt_uc = uc $opt; - eval "\$have_${opt}=\"flags & HAS_${opt_uc}\""; - } - - common_top; - - print <<EOF; -#include "config/aom_config.h" - -#ifdef RTCD_C -#include "aom_ports/ppc.h" -static void setup_rtcd_internal(void) -{ - int flags = ppc_simd_caps(); - - (void)flags; - -EOF - - set_function_pointers("c", @ALL_ARCHS); - - print <<EOF; -} -#endif -EOF - common_bottom; -} - -sub unoptimized() { - determine_indirection "c"; - common_top; - print <<EOF; -#include "config/aom_config.h" - -#ifdef RTCD_C -static void setup_rtcd_internal(void) -{ -EOF - - set_function_pointers "c"; - - print <<EOF; -} -#endif -EOF - common_bottom; -} - -# -# Main Driver -# - -&require("c"); -&require(keys %required); -if ($opts{arch} eq 'x86') { - @ALL_ARCHS = filter(qw/mmx sse sse2 sse3 ssse3 sse4_1 sse4_2 avx avx2/); - x86; -} elsif ($opts{arch} eq 'x86_64') { - @ALL_ARCHS = filter(qw/mmx sse sse2 sse3 ssse3 sse4_1 sse4_2 avx avx2/); - @REQUIRES = filter(qw/mmx sse sse2/); - &require(@REQUIRES); - x86; -} elsif ($opts{arch} eq 'mips32' || $opts{arch} eq 'mips64') { - @ALL_ARCHS = filter("$opts{arch}"); - if (aom_config("HAVE_DSPR2") eq "yes") { - @ALL_ARCHS = filter("$opts{arch}", qw/dspr2/); - } elsif (aom_config("HAVE_MSA") eq "yes") { - @ALL_ARCHS = filter("$opts{arch}", qw/msa/); - } - mips; -} elsif ($opts{arch} =~ /armv7\w?/) { - @ALL_ARCHS = filter(qw/neon/); - arm; -} elsif ($opts{arch} eq 'armv8' || $opts{arch} eq 'arm64' ) { - @ALL_ARCHS = filter(qw/neon/); - &require("neon"); - arm; -} elsif ($opts{arch} eq 'ppc') { - @ALL_ARCHS = filter(qw/vsx/); - ppc; -} else { - unoptimized; -} - -__END__ - -=head1 NAME - -rtcd - - -=head1 SYNOPSIS - -Usage: rtcd.pl [options] FILE - -See 'perldoc rtcd.pl' for more details. - -=head1 DESCRIPTION - -Reads the Run Time CPU Detections definitions from FILE and generates a -C header file on stdout. - -=head1 OPTIONS - -Options: - --arch=ARCH Architecture to generate defs for (required) - --disable-EXT Disable support for EXT extensions - --require-EXT Require support for EXT extensions - --sym=SYMBOL Unique symbol to use for RTCD initialization function - --config=FILE Path to file containing C preprocessor directives to parse diff --git a/third_party/aom/build/cmake/sanitizers.cmake b/third_party/aom/build/cmake/sanitizers.cmake deleted file mode 100644 index 77708e101..000000000 --- a/third_party/aom/build/cmake/sanitizers.cmake +++ /dev/null @@ -1,38 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_SANITIZERS_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_SANITIZERS_CMAKE_ -set(AOM_BUILD_CMAKE_SANITIZERS_CMAKE_ 1) - -if(MSVC OR NOT SANITIZE) - return() -endif() - -include("${AOM_ROOT}/build/cmake/compiler_flags.cmake") - -string(TOLOWER ${SANITIZE} SANITIZE) - -# Require the sanitizer requested. -require_linker_flag("-fsanitize=${SANITIZE}") -require_compiler_flag("-fsanitize=${SANITIZE}" YES) - -# Make callstacks accurate. -require_compiler_flag("-fno-omit-frame-pointer -fno-optimize-sibling-calls" YES) - -# Fix link errors due to missing rt compiler lib in 32-bit builds. -# http://llvm.org/bugs/show_bug.cgi?id=17693 -if(CMAKE_C_COMPILER_ID MATCHES "Clang") - if(${CMAKE_SIZEOF_VOID_P} EQUAL 4 AND "${SANITIZE}" MATCHES - "integer|undefined") - require_linker_flag("--rtlib=compiler-rt -lgcc_s") - endif() -endif() diff --git a/third_party/aom/build/cmake/toolchains/arm-ios-common.cmake b/third_party/aom/build/cmake/toolchains/arm-ios-common.cmake deleted file mode 100644 index 8f4095145..000000000 --- a/third_party/aom/build/cmake/toolchains/arm-ios-common.cmake +++ /dev/null @@ -1,26 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_ARM_IOS_COMMON_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARM_IOS_COMMON_CMAKE_ -set(AOM_BUILD_CMAKE_ARM_IOS_COMMON_CMAKE_ 1) - -set(CMAKE_SYSTEM_NAME "Darwin") -set(CMAKE_OSX_SYSROOT iphoneos) -set(CMAKE_C_COMPILER clang) -set(CMAKE_C_COMPILER_ARG1 "-arch ${CMAKE_SYSTEM_PROCESSOR}") -set(CMAKE_CXX_COMPILER clang++) -set(CMAKE_CXX_COMPILER_ARG1 "-arch ${CMAKE_SYSTEM_PROCESSOR}") - -# No runtime cpu detect for arm*-ios targets. -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "") - -# TODO(tomfinegan): Handle bit code embedding. diff --git a/third_party/aom/build/cmake/toolchains/arm64-ios.cmake b/third_party/aom/build/cmake/toolchains/arm64-ios.cmake deleted file mode 100644 index 6feb1090f..000000000 --- a/third_party/aom/build/cmake/toolchains/arm64-ios.cmake +++ /dev/null @@ -1,23 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_IOS_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_IOS_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_IOS_CMAKE_ 1) - -if(XCODE) # TODO(tomfinegan): Handle arm builds in Xcode. - message(FATAL_ERROR "This toolchain does not support Xcode.") -endif() - -set(CMAKE_SYSTEM_PROCESSOR "arm64") -set(CMAKE_OSX_ARCHITECTURES "arm64") - -include("${CMAKE_CURRENT_LIST_DIR}/arm-ios-common.cmake") diff --git a/third_party/aom/build/cmake/toolchains/arm64-linux-gcc.cmake b/third_party/aom/build/cmake/toolchains/arm64-linux-gcc.cmake deleted file mode 100644 index 590a97a8e..000000000 --- a/third_party/aom/build/cmake/toolchains/arm64-linux-gcc.cmake +++ /dev/null @@ -1,36 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_LINUX_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_LINUX_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_LINUX_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_NAME "Linux") - -if("${CROSS}" STREQUAL "") - - # Default the cross compiler prefix to something known to work. - set(CROSS aarch64-linux-gnu-) -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(AS_EXECUTABLE ${CROSS}as) -set(CMAKE_C_COMPILER_ARG1 "-march=armv8-a") -set(CMAKE_CXX_COMPILER_ARG1 "-march=armv8-a") -set(AOM_AS_FLAGS "-march=armv8-a") -set(CMAKE_SYSTEM_PROCESSOR "arm64") - -# No intrinsics flag required for arm64-linux-gcc. -set(AOM_NEON_INTRIN_FLAG "") - -# No runtime cpu detect for arm64-linux-gcc. -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "") diff --git a/third_party/aom/build/cmake/toolchains/arm64-mingw-gcc.cmake b/third_party/aom/build/cmake/toolchains/arm64-mingw-gcc.cmake deleted file mode 100644 index b5b2ff1cd..000000000 --- a/third_party/aom/build/cmake/toolchains/arm64-mingw-gcc.cmake +++ /dev/null @@ -1,32 +0,0 @@ -# -# Copyright (c) 2018, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_MINGW_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_MINGW_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_ARM64_MINGW_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_PROCESSOR "arm64") -set(CMAKE_SYSTEM_NAME "Windows") - -if("${CROSS}" STREQUAL "") - set(CROSS aarch64-w64-mingw32-) -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(CMAKE_AR ${CROSS}ar CACHE FILEPATH Archiver) -set(CMAKE_RANLIB ${CROSS}ranlib CACHE FILEPATH Indexer) - -# No runtime cpu detect for arm64-mingw-gcc. -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "") - -# Disable the use of the gtest's CMake support. -set(AOM_DISABLE_GTEST_CMAKE 1) diff --git a/third_party/aom/build/cmake/toolchains/armv7-ios.cmake b/third_party/aom/build/cmake/toolchains/armv7-ios.cmake deleted file mode 100644 index 32a1b534a..000000000 --- a/third_party/aom/build/cmake/toolchains/armv7-ios.cmake +++ /dev/null @@ -1,31 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_IOS_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_IOS_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_IOS_CMAKE_ 1) - -if(XCODE) - - # TODO(tomfinegan): Handle arm builds in Xcode. - message(FATAL_ERROR "This toolchain does not support Xcode.") -endif() - -set(CMAKE_SYSTEM_PROCESSOR "armv7") -set(CMAKE_OSX_ARCHITECTURES "armv7") - -include("${CMAKE_CURRENT_LIST_DIR}/arm-ios-common.cmake") - -# No intrinsics flag required for armv7s-ios. -set(AOM_NEON_INTRIN_FLAG "") - -# No runtime cpu detect for armv7s-ios. -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "") diff --git a/third_party/aom/build/cmake/toolchains/armv7-linux-gcc.cmake b/third_party/aom/build/cmake/toolchains/armv7-linux-gcc.cmake deleted file mode 100644 index 7d3d63085..000000000 --- a/third_party/aom/build/cmake/toolchains/armv7-linux-gcc.cmake +++ /dev/null @@ -1,43 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_LINUX_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_LINUX_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_LINUX_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_NAME "Linux") - -if("${CROSS}" STREQUAL "") - - # Default the cross compiler prefix to something known to work. - set(CROSS arm-linux-gnueabihf-) -endif() - -if(NOT ${CROSS} MATCHES hf-$) - set(AOM_EXTRA_TOOLCHAIN_FLAGS "-mfloat-abi=softfp") -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(AS_EXECUTABLE ${CROSS}as) -set(CMAKE_C_COMPILER_ARG1 - "-march=armv7-a -mfpu=neon ${AOM_EXTRA_TOOLCHAIN_FLAGS}") -set(CMAKE_CXX_COMPILER_ARG1 - "-march=armv7-a -mfpu=neon ${AOM_EXTRA_TOOLCHAIN_FLAGS}") -set(AOM_AS_FLAGS --defsym ARCHITECTURE=7 -march=armv7-a -mfpu=neon - ${AOM_EXTRA_TOOLCHAIN_FLAGS}) -set(CMAKE_SYSTEM_PROCESSOR "armv7") - -# No intrinsics flag required for armv7-linux-gcc. -set(AOM_NEON_INTRIN_FLAG "") - -# No runtime cpu detect for armv7-linux-gcc. -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "") diff --git a/third_party/aom/build/cmake/toolchains/armv7-mingw-gcc.cmake b/third_party/aom/build/cmake/toolchains/armv7-mingw-gcc.cmake deleted file mode 100644 index cf06a11b3..000000000 --- a/third_party/aom/build/cmake/toolchains/armv7-mingw-gcc.cmake +++ /dev/null @@ -1,32 +0,0 @@ -# -# Copyright (c) 2018, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_MINGW_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_MINGW_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7_MINGW_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_PROCESSOR "armv7") -set(CMAKE_SYSTEM_NAME "Windows") - -if("${CROSS}" STREQUAL "") - set(CROSS armv7-w64-mingw32-) -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(CMAKE_AR ${CROSS}ar CACHE FILEPATH Archiver) -set(CMAKE_RANLIB ${CROSS}ranlib CACHE FILEPATH Indexer) - -# No runtime cpu detect for armv7-mingw-gcc. -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "") - -# Disable the use of the gtest's CMake support. -set(AOM_DISABLE_GTEST_CMAKE 1) diff --git a/third_party/aom/build/cmake/toolchains/armv7s-ios.cmake b/third_party/aom/build/cmake/toolchains/armv7s-ios.cmake deleted file mode 100644 index 0940a6ee8..000000000 --- a/third_party/aom/build/cmake/toolchains/armv7s-ios.cmake +++ /dev/null @@ -1,31 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7S_IOS_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7S_IOS_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_ARMV7S_IOS_CMAKE_ 1) - -if(XCODE) - - # TODO(tomfinegan): Handle arm builds in Xcode. - message(FATAL_ERROR "This toolchain does not support Xcode.") -endif() - -set(CMAKE_SYSTEM_PROCESSOR "armv7s") -set(CMAKE_OSX_ARCHITECTURES "armv7s") - -include("${CMAKE_CURRENT_LIST_DIR}/arm-ios-common.cmake") - -# No intrinsics flag required for armv7s-ios. -set(AOM_NEON_INTRIN_FLAG "") - -# No runtime cpu detect for armv7s-ios. -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "") diff --git a/third_party/aom/build/cmake/toolchains/ios-simulator-common.cmake b/third_party/aom/build/cmake/toolchains/ios-simulator-common.cmake deleted file mode 100644 index 76e0bd140..000000000 --- a/third_party/aom/build/cmake/toolchains/ios-simulator-common.cmake +++ /dev/null @@ -1,23 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_IOS_SIMULATOR_COMMON_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_IOS_SIMULATOR_COMMON_CMAKE_ -set(AOM_BUILD_CMAKE_IOS_SIMULATOR_COMMON_CMAKE_ 1) - -set(CMAKE_SYSTEM_NAME "Darwin") -set(CMAKE_OSX_SYSROOT iphonesimulator) -set(CMAKE_C_COMPILER clang) -set(CMAKE_C_COMPILER_ARG1 "-arch ${CMAKE_SYSTEM_PROCESSOR}") -set(CMAKE_CXX_COMPILER clang++) -set(CMAKE_CXX_COMPILER_ARG1 "-arch ${CMAKE_SYSTEM_PROCESSOR}") - -# TODO(tomfinegan): Handle bit code embedding. diff --git a/third_party/aom/build/cmake/toolchains/mips32-linux-gcc.cmake b/third_party/aom/build/cmake/toolchains/mips32-linux-gcc.cmake deleted file mode 100644 index 0f93490b1..000000000 --- a/third_party/aom/build/cmake/toolchains/mips32-linux-gcc.cmake +++ /dev/null @@ -1,77 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_MIPS32_LINUX_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_MIPS32_LINUX_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_MIPS32_LINUX_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_NAME "Linux") - -if(ENABLE_DSPR2 AND ENABLE_MSA) - message(FATAL_ERROR "ENABLE_DSPR2 and ENABLE_MSA cannot be combined.") -endif() - -if(ENABLE_DSPR2) - set(HAVE_DSPR2 1 CACHE BOOL "" FORCE) - - if("${CROSS}" STREQUAL "") - - # Default the cross compiler prefix to something known to work. - set(CROSS mips-linux-gnu-) - endif() - - set(MIPS_CFLAGS "-mdspr2") - set(MIPS_CXXFLAGS "-mdspr2") -elseif(ENABLE_MSA) - set(HAVE_MSA 1 CACHE BOOL "" FORCE) - - if("${CROSS}" STREQUAL "") - - # Default the cross compiler prefix to something known to work. - set(CROSS mips-mti-linux-gnu-) - endif() - - set(MIPS_CFLAGS "-mmsa") - set(MIPS_CXXFLAGS "-mmsa") -endif() - -if("${CROSS}" STREQUAL "") - - # TODO(tomfinegan): Make it possible to turn this off. The $CROSS prefix won't - # be desired on a mips host. Default cross compiler prefix to something that - # might work for an unoptimized build. - set(CROSS mips-linux-gnu-) -endif() - -if("${MIPS_CPU}" STREQUAL "") - set(MIPS_CFLAGS "${MIPS_CFLAGS} -mips32r2") - set(MIPS_CXXFLAGS "${MIPS_CXXFLAGS} -mips32r2") -elseif("${MIPS_CPU}" STREQUAL "p5600") - set(P56_FLAGS - "-mips32r5 -mload-store-pairs -msched-weight -mhard-float -mfp64") - set(MIPS_CFLAGS "${MIPS_CFLAGS} ${P56_FLAGS}") - set(MIPS_CXXFLAGS "${MIPS_CXXFLAGS} ${P56_FLAGS}") - set(CMAKE_EXE_LINKER_FLAGS "-mfp64 ${CMAKE_EXE_LINKER_FLAGS}") -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(AS_EXECUTABLE ${CROSS}as) -set(CMAKE_C_COMPILER_ARG1 "-EL ${MIPS_CFLAGS}") -set(CMAKE_CXX_COMPILER_ARG1 "-EL ${MIPS_CXXFLAGS}") -set(CMAKE_SYSTEM_PROCESSOR "mips32") - -# No runtime cpu detect for mips32-linux-gcc. -if(CONFIG_RUNTIME_CPU_DETECT) - message("--- CONFIG_RUNTIME_CPU_DETECT not supported for mips32 targets.") -endif() - -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "" FORCE) diff --git a/third_party/aom/build/cmake/toolchains/mips64-linux-gcc.cmake b/third_party/aom/build/cmake/toolchains/mips64-linux-gcc.cmake deleted file mode 100644 index ad9aab09d..000000000 --- a/third_party/aom/build/cmake/toolchains/mips64-linux-gcc.cmake +++ /dev/null @@ -1,54 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_MIPS64_LINUX_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_MIPS64_LINUX_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_MIPS64_LINUX_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_NAME "Linux") - -if("${CROSS}" STREQUAL "") - - # TODO(tomfinegan): Make it possible to turn this off. The $CROSS prefix won't - # be desired on a mips host. - # - # Default the cross compiler prefix to something known to work. - set(CROSS mips-img-linux-gnu-) -endif() - -if(ENABLE_MSA) - set(HAVE_MSA 1 CACHE BOOL "" FORCE) - set(MIPS_CFLAGS "-mmsa") - set(MIPS_CXXFLAGS "-mmsa") -endif() - -if("${MIPS_CPU}" STREQUAL "i6400" OR "${MIPS_CPU}" STREQUAL "p6600") - set(MIPS_CPU_FLAGS "-mips64r6 -mabi=64 -mload-store-pairs -msched-weight") - set(MIPS_CPU_FLAGS "${MIPS_CPU_FLAGS} -mhard-float -mfp64") - set(MIPS_CFLAGS "${MIPS_CFLAGS} ${MIPS_CPU_FLAGS}") - set(MIPS_CXXFLAGS "${MIPS_CXXFLAGS} ${MIPS_CPU_FLAGS}") - set(CMAKE_EXE_LINKER_FLAGS - "-mips64r6 -mabi64 -mfp64 ${CMAKE_EXE_LINKER_FLAGS}") -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(AS_EXECUTABLE ${CROSS}as) -set(CMAKE_C_COMPILER_ARG1 "-EL ${MIPS_CFLAGS}") -set(CMAKE_CXX_COMPILER_ARG1 "-EL ${MIPS_CXXFLAGS}") -set(CMAKE_SYSTEM_PROCESSOR "mips64") - -# No runtime cpu detect for mips64-linux-gcc. -if(CONFIG_RUNTIME_CPU_DETECT) - message("--- CONFIG_RUNTIME_CPU_DETECT not supported for mips64 targets.") -endif() - -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "" FORCE) diff --git a/third_party/aom/build/cmake/toolchains/ppc-linux-gcc.cmake b/third_party/aom/build/cmake/toolchains/ppc-linux-gcc.cmake deleted file mode 100644 index c86cc27e3..000000000 --- a/third_party/aom/build/cmake/toolchains/ppc-linux-gcc.cmake +++ /dev/null @@ -1,29 +0,0 @@ -# -# Copyright (c) 2018, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_PPC_LINUX_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_PPC_LINUX_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_PPC_LINUX_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_NAME "Linux") - -if("${CROSS}" STREQUAL "") - - # Default the cross compiler prefix to something known to work. - set(CROSS powerpc64le-unknown-linux-gnu-) -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(AS_EXECUTABLE ${CROSS}as) -set(CMAKE_SYSTEM_PROCESSOR "ppc") - -set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE NUMBER "") diff --git a/third_party/aom/build/cmake/toolchains/x86-ios-simulator.cmake b/third_party/aom/build/cmake/toolchains/x86-ios-simulator.cmake deleted file mode 100644 index 6b6f52cac..000000000 --- a/third_party/aom/build/cmake/toolchains/x86-ios-simulator.cmake +++ /dev/null @@ -1,28 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_X86_IOS_SIMULATOR_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_X86_IOS_SIMULATOR_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_X86_IOS_SIMULATOR_CMAKE_ 1) - -if(XCODE) - - # TODO(tomfinegan): Handle ios sim builds in Xcode. - message(FATAL_ERROR "This toolchain does not support Xcode.") -endif() - -set(CMAKE_SYSTEM_PROCESSOR "i386") -set(CMAKE_OSX_ARCHITECTURES "i386") - -# Avoid noisy PIC/PIE warnings. -set(CONFIG_PIC 1 CACHE NUMBER "") - -include("${CMAKE_CURRENT_LIST_DIR}/ios-simulator-common.cmake") diff --git a/third_party/aom/build/cmake/toolchains/x86-linux.cmake b/third_party/aom/build/cmake/toolchains/x86-linux.cmake deleted file mode 100644 index c2a700bfe..000000000 --- a/third_party/aom/build/cmake/toolchains/x86-linux.cmake +++ /dev/null @@ -1,19 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_X86_LINUX_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_X86_LINUX_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_X86_LINUX_CMAKE_ 1) - -set(CMAKE_SYSTEM_PROCESSOR "x86") -set(CMAKE_SYSTEM_NAME "Linux") -set(CMAKE_C_COMPILER_ARG1 "-m32") -set(CMAKE_CXX_COMPILER_ARG1 "-m32") diff --git a/third_party/aom/build/cmake/toolchains/x86-macos.cmake b/third_party/aom/build/cmake/toolchains/x86-macos.cmake deleted file mode 100644 index 7a46e06a9..000000000 --- a/third_party/aom/build/cmake/toolchains/x86-macos.cmake +++ /dev/null @@ -1,18 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -set(CMAKE_SYSTEM_PROCESSOR "x86") -set(CMAKE_SYSTEM_NAME "Darwin") -set(CMAKE_OSX_ARCHITECTURES "i386") -set(CMAKE_C_COMPILER_ARG1 "-arch i386") -set(CMAKE_CXX_COMPILER_ARG1 "-arch i386") - -# Apple tools always complain in 32 bit mode without PIC. -set(CONFIG_PIC 1 CACHE NUMBER "") diff --git a/third_party/aom/build/cmake/toolchains/x86-mingw-gcc.cmake b/third_party/aom/build/cmake/toolchains/x86-mingw-gcc.cmake deleted file mode 100644 index c986c4ee3..000000000 --- a/third_party/aom/build/cmake/toolchains/x86-mingw-gcc.cmake +++ /dev/null @@ -1,31 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_X86_MINGW_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_X86_MINGW_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_X86_MINGW_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_PROCESSOR "x86") -set(CMAKE_SYSTEM_NAME "Windows") -set(CMAKE_C_COMPILER_ARG1 "-m32") -set(CMAKE_CXX_COMPILER_ARG1 "-m32") - -if("${CROSS}" STREQUAL "") - set(CROSS i686-w64-mingw32-) -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(CMAKE_AR ${CROSS}ar CACHE FILEPATH Archiver) -set(CMAKE_RANLIB ${CROSS}ranlib CACHE FILEPATH Indexer) - -# Disable the use of the gtest's CMake support. -set(AOM_DISABLE_GTEST_CMAKE 1) diff --git a/third_party/aom/build/cmake/toolchains/x86_64-ios-simulator.cmake b/third_party/aom/build/cmake/toolchains/x86_64-ios-simulator.cmake deleted file mode 100644 index d4b40ed09..000000000 --- a/third_party/aom/build/cmake/toolchains/x86_64-ios-simulator.cmake +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_X86_64_IOS_SIMULATOR_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_X86_64_IOS_SIMULATOR_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_X86_64_IOS_SIMULATOR_CMAKE_ 1) - -if(XCODE) - - # TODO(tomfinegan): Handle ios sim builds in Xcode. - message(FATAL_ERROR "This toolchain does not support Xcode.") -endif() - -set(CMAKE_SYSTEM_PROCESSOR "x86_64") -set(CMAKE_OSX_ARCHITECTURES "x86_64") - -include("${CMAKE_CURRENT_LIST_DIR}/ios-simulator-common.cmake") diff --git a/third_party/aom/build/cmake/toolchains/x86_64-mingw-gcc.cmake b/third_party/aom/build/cmake/toolchains/x86_64-mingw-gcc.cmake deleted file mode 100644 index 00d94d5f1..000000000 --- a/third_party/aom/build/cmake/toolchains/x86_64-mingw-gcc.cmake +++ /dev/null @@ -1,29 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_TOOLCHAINS_X86_64_MINGW_GCC_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_TOOLCHAINS_X86_64_MINGW_GCC_CMAKE_ -set(AOM_BUILD_CMAKE_TOOLCHAINS_X86_64_MINGW_GCC_CMAKE_ 1) - -set(CMAKE_SYSTEM_PROCESSOR "x86_64") -set(CMAKE_SYSTEM_NAME "Windows") - -if("${CROSS}" STREQUAL "") - set(CROSS x86_64-w64-mingw32-) -endif() - -set(CMAKE_C_COMPILER ${CROSS}gcc) -set(CMAKE_CXX_COMPILER ${CROSS}g++) -set(CMAKE_AR ${CROSS}ar CACHE FILEPATH Archiver) -set(CMAKE_RANLIB ${CROSS}ranlib CACHE FILEPATH Indexer) - -# Disable the use of the gtest's CMake support. -set(AOM_DISABLE_GTEST_CMAKE 1) diff --git a/third_party/aom/build/cmake/util.cmake b/third_party/aom/build/cmake/util.cmake deleted file mode 100644 index b70ec4013..000000000 --- a/third_party/aom/build/cmake/util.cmake +++ /dev/null @@ -1,171 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -if(AOM_BUILD_CMAKE_UTIL_CMAKE_) - return() -endif() # AOM_BUILD_CMAKE_UTIL_CMAKE_ -set(AOM_BUILD_CMAKE_UTIL_CMAKE_ 1) - -# Directory where generated sources will be written. -set(AOM_GEN_SRC_DIR "${AOM_CONFIG_DIR}/gen_src") - -# Creates dummy source file in $AOM_CONFIG_DIR named $basename.$extension and -# returns the full path to the dummy source file via the $out_file_path -# parameter. -macro(create_dummy_source_file basename extension out_file_path) - set(dummy_source_file "${AOM_GEN_SRC_DIR}/${basename}_dummy.${extension}") - file( - WRITE - "${dummy_source_file}" "// Generated file. DO NOT EDIT!\n" - "// ${target_name} needs a ${extension} file to force link language, \n" - "// or to silence a harmless CMake warning: Ignore me.\n" - "void ${target_name}_dummy_function(void) {}\n") -endmacro() - -# Convenience function for adding a dummy source file to $target_name using -# $extension as the file extension. Wraps create_dummy_source_file(). -function(add_dummy_source_file_to_target target_name extension) - create_dummy_source_file("${target_name}" "${extension}" "dummy_source_file") - target_sources(${target_name} PRIVATE ${dummy_source_file}) -endfunction() - -# Sets the value of the variable referenced by $feature to $value, and reports -# the change to the user via call to message(WARNING ...). $cause is expected to -# be a configuration variable that conflicts with $feature in some way. This -# function is a noop if $feature is already set to $value. -function(change_config_and_warn feature value cause) - if(${feature} EQUAL ${value}) - return() - endif() - set(${feature} ${value} PARENT_SCOPE) - if(${value} EQUAL 1) - set(verb "Enabled") - set(reason "required for") - else() - set(verb "Disabled") - set(reason "incompatible with") - endif() - set(warning_message "${verb} ${feature}, ${reason} ${cause}.") - message(WARNING "--- ${warning_message}") -endfunction() - -# Extracts the version string from $version_file and returns it to the user via -# $version_string_out_var. To achieve this VERSION_STRING_NOSP is located in -# $version_file and then everything but the string literal assigned to the -# variable is removed. Quotes and the leading 'v' are stripped from the returned -# string. -function(extract_version_string version_file version_string_out_var) - file(STRINGS "${version_file}" aom_version REGEX "VERSION_STRING_NOSP") - string(REPLACE "#define VERSION_STRING_NOSP " "" aom_version "${aom_version}") - string(REPLACE "\"" "" aom_version "${aom_version}") - string(REPLACE " " "" aom_version "${aom_version}") - string(FIND "${aom_version}" "v" v_pos) - if(${v_pos} EQUAL 0) - string(SUBSTRING "${aom_version}" 1 -1 aom_version) - endif() - set("${version_string_out_var}" "${aom_version}" PARENT_SCOPE) -endfunction() - -# Sets CMake compiler launcher to $launcher_name when $launcher_name is found in -# $PATH. Warns user about ignoring build flag $launcher_flag when $launcher_name -# is not found in $PATH. -function(set_compiler_launcher launcher_flag launcher_name) - find_program(launcher_path "${launcher_name}") - if(launcher_path) - set(CMAKE_C_COMPILER_LAUNCHER "${launcher_path}" PARENT_SCOPE) - set(CMAKE_CXX_COMPILER_LAUNCHER "${launcher_path}" PARENT_SCOPE) - message("--- Using ${launcher_name} as compiler launcher.") - else() - message(WARNING - "--- Cannot find ${launcher_name}, ${launcher_flag} ignored.") - endif() -endfunction() - -# Sentinel value used to detect when a variable has been set via the -D argument -# passed to CMake on the command line. -set(cmake_cmdline_helpstring "No help, variable specified on the command line.") - -# Wrapper macro for set() that does some book keeping to help with storage of -# build configuration information. -# -# Sets the default value for variable $name when the value of $name has not -# already been set via the CMake command line. -# -# The names of variables defaulted through this macro are added to -# $AOM_CONFIG_VARS to facilitate build logging and diagnostics. -macro(set_aom_detect_var name value type helpstring) - unset(list_index) - list(FIND AOM_DETECT_VARS ${name} list_index) - if(${list_index} EQUAL -1) - list(APPEND AOM_DETECT_VARS ${name}) - endif() - - # Update the variable only when it does not carry the CMake assigned help - # string for variables specified via the command line. - unset(cache_helpstring) - get_property(cache_helpstring CACHE ${name} PROPERTY HELPSTRING) - if(NOT "${cache_helpstring}" STREQUAL "${cmake_cmdline_helpstring}") - set(${name} ${value} CACHE ${type} "${helpstring}") - mark_as_advanced(${name}) - else() - message( - WARNING - "${name} has been set by CMake, but it may be overridden by the build " - "system during environment detection") - endif() -endmacro() - -# Wrapper macro for set() that does some book keeping to help with storage of -# build configuration information. -# -# Sets the default value for variable $name when the value of $name has not -# already been set via the CMake command line. -# -# The names of variables defaulted through this macro are added to -# $AOM_CONFIG_VARS to facilitate build logging and diagnostics. -macro(set_aom_config_var name value type helpstring) - unset(list_index) - list(FIND AOM_CONFIG_VARS ${name} list_index) - if(${list_index} EQUAL -1) - list(APPEND AOM_CONFIG_VARS ${name}) - endif() - - # Update the variable only when it does not carry the CMake assigned help - # string for variables specified via the command line. - unset(cache_helpstring) - get_property(cache_helpstring CACHE ${name} PROPERTY HELPSTRING) - if(NOT "${cache_helpstring}" STREQUAL "${cmake_cmdline_helpstring}") - set(${name} ${value} CACHE ${type} "${helpstring}") - endif() -endmacro() - -# Wrapper macro for option() that does some book keeping to help with storage of -# build configuration information. -# -# Sets the default value for variable $name when the value of $name has not -# already been set via the CMake command line. -# -# The names of variables defaulted through this macro are added to -# $AOM_OPTION_VARS to facilitate build logging and diagnostics. -macro(set_aom_option_var name helpstring value) - unset(list_index) - list(FIND AOM_OPTION_VARS ${name} list_index) - if(${list_index} EQUAL -1) - list(APPEND AOM_OPTION_VARS ${name}) - endif() - - # Update the variable only when it does not carry the CMake assigned help - # string for variables specified via the command line. - unset(cache_helpstring) - get_property(cache_helpstring CACHE ${name} PROPERTY HELPSTRING) - if(NOT "${cache_helpstring}" STREQUAL "${cmake_cmdline_helpstring}") - option(${name} "${helpstring}" ${value}) - endif() -endmacro() diff --git a/third_party/aom/build/cmake/version.cmake b/third_party/aom/build/cmake/version.cmake deleted file mode 100644 index d169b12ac..000000000 --- a/third_party/aom/build/cmake/version.cmake +++ /dev/null @@ -1,57 +0,0 @@ -# -# Copyright (c) 2017, Alliance for Open Media. All rights reserved -# -# This source code is subject to the terms of the BSD 2 Clause License and the -# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was -# not distributed with this source code in the LICENSE file, you can obtain it -# at www.aomedia.org/license/software. If the Alliance for Open Media Patent -# License 1.0 was not distributed with this source code in the PATENTS file, you -# can obtain it at www.aomedia.org/license/patent. -# -cmake_minimum_required(VERSION 3.5) - -set(REQUIRED_ARGS "AOM_ROOT" "AOM_CONFIG_DIR" "GIT_EXECUTABLE" - "PERL_EXECUTABLE") - -foreach(arg ${REQUIRED_ARGS}) - if("${${arg}}" STREQUAL "") - message(FATAL_ERROR "${arg} must not be empty.") - endif() -endforeach() - -include("${AOM_ROOT}/build/cmake/util.cmake") - -# Generate the version string for this run. -unset(aom_version) -if(EXISTS "${GIT_EXECUTABLE}") - execute_process(COMMAND ${GIT_EXECUTABLE} --git-dir=${AOM_ROOT}/.git describe - OUTPUT_VARIABLE aom_version ERROR_QUIET) - string(STRIP "${aom_version}" aom_version) - - # Remove the leading 'v' from the version string. - string(FIND "${aom_version}" "v" v_pos) - if(${v_pos} EQUAL 0) - string(SUBSTRING "${aom_version}" 1 -1 aom_version) - endif() -endif() - -if("${aom_version}" STREQUAL "") - set(aom_version "${AOM_ROOT}/CHANGELOG") -endif() - -unset(last_aom_version) -if(EXISTS "${AOM_CONFIG_DIR}/config/aom_version.h") - extract_version_string("${AOM_CONFIG_DIR}/config/aom_version.h" - last_aom_version) -endif() - -if(NOT "${aom_version}" STREQUAL "${last_aom_version}") - - # TODO(tomfinegan): Perl dependency is unnecessary. CMake can do everything - # that is done by version.pl on its own (if a bit more verbose...). - execute_process(COMMAND - ${PERL_EXECUTABLE} "${AOM_ROOT}/build/cmake/version.pl" - --version_data=${aom_version} - --version_filename=${AOM_CONFIG_DIR}/config/aom_version.h - VERBATIM) -endif() diff --git a/third_party/aom/build/cmake/version.pl b/third_party/aom/build/cmake/version.pl deleted file mode 100755 index 7d23f2b27..000000000 --- a/third_party/aom/build/cmake/version.pl +++ /dev/null @@ -1,112 +0,0 @@ -#!/usr/bin/env perl -## -## Copyright (c) 2016, Alliance for Open Media. All rights reserved -## -## This source code is subject to the terms of the BSD 2 Clause License and -## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License -## was not distributed with this source code in the LICENSE file, you can -## obtain it at www.aomedia.org/license/software. If the Alliance for Open -## Media Patent License 1.0 was not distributed with this source code in the -## PATENTS file, you can obtain it at www.aomedia.org/license/patent. -## -use strict; -use warnings; -use 5.010; -use Getopt::Long; - -my $git_desc = ''; -my $version_data; -my $version_filename; -GetOptions('version_data=s' => \$version_data, - 'version_filename=s' => \$version_filename) or - die("Invalid arg(s): $!"); - -if (!defined $version_data || length($version_data) == 0 || - !defined $version_filename || length($version_filename) == 0) { - die("--version_data and --version_filename are required."); -} - -# Determine if $version_data is a filename or a git tag/description. -my $version_string; -chomp($version_data); -if (-r $version_data) { - # $version_data is the path to the CHANGELOG. Parse the most recent version. - my $changelog_filename = $version_data; - open(my $changelog_file, '<', $changelog_filename) or - die("Unable to open CHANGELOG @ $changelog_filename: $!."); - - while (my $line = <$changelog_file>) { - my @split_line = split(" ", $line, 3); - next if @split_line < 2; - $version_string = $split_line[1]; - last if substr($version_string, 0, 1) eq "v"; - } - close($changelog_file); -} else { - # $version_data is either a tag name or a full git description, one of: - # tagName OR tagName-commitsSinceTag-shortCommitHash - # In either case we want the first element of the array returned by split. - $version_string = (split("-", $version_data))[0]; - $git_desc = $version_data; -} - -if (substr($version_string, 0, 1) eq "v") { - $version_string = substr($version_string, 1); -} - -my @version_components = split('\.', $version_string, 4); -my $version_major = $version_components[0]; -my $version_minor = $version_components[1]; -my $version_patch = $version_components[2]; - -my $version_extra = ""; -if (length($git_desc) > 0) { - my @git_desc_components = split('-', $git_desc, 2); - $version_extra = $git_desc_components[1]; -} - -open(my $version_file, '>', $version_filename) or - die("Cannot open $version_filename: $!"); - -my $version_packed = "((VERSION_MAJOR << 16) | (VERSION_MINOR << 8) | (VERSION_PATCH))"; -my $year = (localtime)[5] + 1900; -my $lic_block = << "EOF"; -/* - * Copyright (c) $year, Alliance for Open Media. All rights reserved - * - * This source code is subject to the terms of the BSD 2 Clause License and - * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License - * was not distributed with this source code in the LICENSE file, you can - * obtain it at www.aomedia.org/license/software. If the Alliance for Open - * Media Patent License 1.0 was not distributed with this source code in the - * PATENTS file, you can obtain it at www.aomedia.org/license/patent. - */ -EOF - -select $version_file; -if (length($git_desc)) { - print << "EOF"; -$lic_block -#define VERSION_MAJOR $version_major -#define VERSION_MINOR $version_minor -#define VERSION_PATCH $version_patch -#define VERSION_EXTRA \"$version_extra\" -#define VERSION_PACKED \\ - $version_packed -#define VERSION_STRING_NOSP \"$git_desc\" -#define VERSION_STRING \" $git_desc\" -EOF -} else { - print << "EOF"; -$lic_block -#define VERSION_MAJOR $version_major -#define VERSION_MINOR $version_minor -#define VERSION_PATCH $version_patch -#define VERSION_EXTRA \"$version_extra\" -#define VERSION_PACKED \\ - $version_packed -#define VERSION_STRING_NOSP \"v$version_string\" -#define VERSION_STRING \" v$version_string\" -EOF -} -close($version_file); |