cmake: Add all aom_config variables to the cache. Adding the variables to the cache allows the user running cmake to control configuration variable values using the -D parameter passed to cmake. Variables set by the user are used directly unless, for example, a failing compiler flag or feature test overrides the user's specified value. Variables not set by the user pick up the cached default value. BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=76 Change-Id: Ie8a80968345998c1869011d8a2c5eff01af678a3
diff --git a/build/cmake/aom_config_defaults.cmake b/build/cmake/aom_config_defaults.cmake index 70432a2..36b288c 100644 --- a/build/cmake/aom_config_defaults.cmake +++ b/build/cmake/aom_config_defaults.cmake
@@ -9,127 +9,130 @@ ## PATENTS file, you can obtain it at www.aomedia.org/license/patent. ## -# Defaults for every libaom configuration variable. -set(RESTRICT) -set(INLINE) -set(ARCH_ARM 0) -set(ARCH_MIPS 0) -set(ARCH_X86 0) -set(ARCH_X86_64 0) -set(HAVE_EDSP 0) -set(HAVE_MEDIA 0) -set(HAVE_NEON 0) -set(HAVE_NEON_ASM 0) -set(HAVE_MIPS32 0) -set(HAVE_DSPR2 0) -set(HAVE_MSA 0) -set(HAVE_MIPS64 0) -set(HAVE_MMX 0) -set(HAVE_SSE 0) -set(HAVE_SSE2 0) -set(HAVE_SSE3 0) -set(HAVE_SSSE3 0) -set(HAVE_SSE4_1 0) -set(HAVE_AVX 0) -set(HAVE_AVX2 0) -set(HAVE_AOM_PORTS 0) -set(HAVE_PTHREAD_H 0) -set(HAVE_UNISTD_H 0) -set(CONFIG_DEPENDENCY_TRACKING 1) -set(CONFIG_EXTERNAL_BUILD 0) -set(CONFIG_INSTALL_DOCS 0) -set(CONFIG_INSTALL_BINS 0) -set(CONFIG_INSTALL_LIBS 0) -set(CONFIG_INSTALL_SRCS 0) -set(CONFIG_DEBUG 0) -set(CONFIG_GPROF 0) -set(CONFIG_GCOV 0) -set(CONFIG_RVCT 0) -set(CONFIG_GCC 0) -set(CONFIG_MSVS 0) -set(CONFIG_PIC 0) -set(CONFIG_BIG_ENDIAN 0) -set(CONFIG_CODEC_SRCS 0) -set(CONFIG_DEBUG_LIBS 0) -set(CONFIG_DEQUANT_TOKENS 0) -set(CONFIG_DC_RECON 0) -set(CONFIG_RUNTIME_CPU_DETECT 0) -set(CONFIG_POSTPROC 0) -set(CONFIG_AV1_POSTPROC 0) -set(CONFIG_MULTITHREAD 0) -set(CONFIG_INTERNAL_STATS 0) -set(CONFIG_AV1_ENCODER 1) -set(CONFIG_AV1_DECODER 1) -set(CONFIG_AV1 1) -set(CONFIG_ENCODERS 1) -set(CONFIG_DECODERS 1) -set(CONFIG_STATIC_MSVCRT 0) -set(CONFIG_SPATIAL_RESAMPLING 1) -set(CONFIG_REALTIME_ONLY 0) -set(CONFIG_ONTHEFLY_BITPACKING 0) -set(CONFIG_ERROR_CONCEALMENT 0) -set(CONFIG_SHARED 0) -set(CONFIG_STATIC 1) -set(CONFIG_SMALL 0) -set(CONFIG_POSTPROC_VISUALIZER 0) -set(CONFIG_OS_SUPPORT 0) -set(CONFIG_UNIT_TESTS 0) -set(CONFIG_WEBM_IO 1) -set(CONFIG_LIBYUV 1) -set(CONFIG_ACCOUNTING 0) -set(CONFIG_DECODE_PERF_TESTS 0) -set(CONFIG_ENCODE_PERF_TESTS 0) -set(CONFIG_MULTI_RES_ENCODING 0) -set(CONFIG_TEMPORAL_DENOISING 1) -set(CONFIG_AV1_TEMPORAL_DENOISING 0) -set(CONFIG_COEFFICIENT_RANGE_CHECKING 0) -set(CONFIG_AOM_HIGHBITDEPTH 0) -set(CONFIG_BETTER_HW_COMPATIBILITY 0) -set(CONFIG_EXPERIMENTAL 0) -set(CONFIG_SIZE_LIMIT 0) -set(CONFIG_AOM_QM 0) -set(CONFIG_FP_MB_STATS 0) -set(CONFIG_EMULATE_HARDWARE 0) -set(CONFIG_CLPF 0) -set(CONFIG_DERING 0) -set(CONFIG_VAR_TX 0) -set(CONFIG_RECT_TX 0) -set(CONFIG_REF_MV 0) -set(CONFIG_DUAL_FILTER 0) -set(CONFIG_EXT_TX 0) -set(CONFIG_TX64X64 0) -set(CONFIG_SUB8X8_MC 0) -set(CONFIG_EXT_INTRA 0) -set(CONFIG_FILTER_INTRA 0) -set(CONFIG_EXT_INTER 0) -set(CONFIG_EXT_INTERP 0) -set(CONFIG_EXT_REFS 0) -set(CONFIG_GLOBAL_MOTION 0) -set(CONFIG_NEW_QUANT 0) -set(CONFIG_SUPERTX 0) -set(CONFIG_ANS 0) -set(CONFIG_EC_MULTISYMBOL 1) -set(CONFIG_LOOP_RESTORATION 0) -set(CONFIG_EXT_PARTITION 0) -set(CONFIG_EXT_PARTITION_TYPES 0) -set(CONFIG_EXT_TILE 0) -set(CONFIG_MOTION_VAR 0) -set(CONFIG_WARPED_MOTION 0) -set(CONFIG_ENTROPY 0) -set(CONFIG_BIDIR_PRED 0) -set(CONFIG_BITSTREAM_DEBUG 0) -set(CONFIG_ALT_INTRA 0) -set(CONFIG_PALETTE 0) -set(CONFIG_DAALA_EC 1) -set(CONFIG_PVQ 0) -set(CONFIG_CB4X4 0) -set(CONFIG_FRAME_SIZE 0) -set(CONFIG_DELTA_Q 0) -set(CONFIG_ADAPT_SCAN 0) -set(CONFIG_FILTER_7BIT 0) -set(CONFIG_PARALLEL_DEBLOCKING 0) -set(CONFIG_TILE_GROUPS 0) -set(CONFIG_EC_ADAPT 0) -set(CONFIG_SIMP_MV_PRED 0) -set(CONFIG_RD_DEBUG 0) -set(CONFIG_REFERENCE_BUFFER 0) +# Defaults for every libaom configuration variable. Here we add all libaom +# config variables to the cmake variable cache, but omit the FORCE parameter to +# allow users to specify values when executing cmake to generate build files. +# Values here are used only if not set by the user. +set(RESTRICT "" CACHE STRING "Sets RESTRICT value for current target.") +set(INLINE "" CACHE STRING "Sets INLINE value for current target.") +set(ARCH_ARM 0 CACHE BOOL "Enables ARM architecture.") +set(ARCH_MIPS 0 CACHE BOOL "Enables MIPS architecture.") +set(ARCH_X86 0 CACHE BOOL "Enables X86 architecture.") +set(ARCH_X86_64 0 CACHE BOOL "Enables X86_64 architecture.") +set(HAVE_EDSP 0 CACHE BOOL "Enables EDSP optimizations.") +set(HAVE_MEDIA 0 CACHE BOOL "Enables MEDIA optimizations.") +set(HAVE_NEON 0 CACHE BOOL "Enables NEON intrinsics optimizations.") +set(HAVE_NEON_ASM 0 CACHE BOOL "Enables NEON assembly optimizations.") +set(HAVE_MIPS32 0 CACHE BOOL "Enables MIPS32 optimizations.") +set(HAVE_DSPR2 0 CACHE BOOL "Enables DSPR2 optimizations.") +set(HAVE_MSA 0 CACHE BOOL "Enables MSA optimizations.") +set(HAVE_MIPS64 0 CACHE BOOL "Enables MIPS64 optimizations. ") +set(HAVE_MMX 0 CACHE BOOL "Enables MMX optimizations. ") +set(HAVE_SSE 0 CACHE BOOL "Enables SSE optimizations.") +set(HAVE_SSE2 0 CACHE BOOL "Enables SSE2 optimizations.") +set(HAVE_SSE3 0 CACHE BOOL "Enables SSE3 optimizations.") +set(HAVE_SSSE3 0 CACHE BOOL "Enables SSSE3 optimizations.") +set(HAVE_SSE4_1 0 CACHE BOOL "Enables SSE 4.1 optimizations.") +set(HAVE_AVX 0 CACHE BOOL "Enables AVX optimizations.") +set(HAVE_AVX2 0 CACHE BOOL "Enables AVX2 optimizations.") +set(HAVE_AOM_PORTS 0 CACHE BOOL "Internal flag, deprecated.") +set(HAVE_PTHREAD_H 0 CACHE BOOL "Internal flag, target pthread support.") +set(HAVE_UNISTD_H 0 CACHE BOOL "Internal flag, unistd.h present for target.") +set(CONFIG_DEPENDENCY_TRACKING 1 CACHE BOOL "Internal flag.") +set(CONFIG_EXTERNAL_BUILD 0 CACHE BOOL "Internal flag.") +set(CONFIG_INSTALL_DOCS 0 CACHE BOOL "Internal flag.") +set(CONFIG_INSTALL_BINS 0 CACHE BOOL "Internal flag.") +set(CONFIG_INSTALL_LIBS 0 CACHE BOOL "Internal flag.") +set(CONFIG_INSTALL_SRCS 0 CACHE BOOL "Internal flag.") +set(CONFIG_DEBUG 0 CACHE BOOL "Internal flag.") +set(CONFIG_GPROF 0 CACHE BOOL "Internal flag.") +set(CONFIG_GCOV 0 CACHE BOOL "Internal flag.") +set(CONFIG_RVCT 0 CACHE BOOL "Internal flag.") +set(CONFIG_GCC 0 CACHE BOOL "Internal flag.") +set(CONFIG_MSVS 0 CACHE BOOL "Internal flag.") +set(CONFIG_PIC 0 CACHE BOOL "Internal flag.") +set(CONFIG_BIG_ENDIAN 0 CACHE BOOL "Internal flag.") +set(CONFIG_CODEC_SRCS 0 CACHE BOOL "Internal flag.") +set(CONFIG_DEBUG_LIBS 0 CACHE BOOL "Internal flag.") +set(CONFIG_DEQUANT_TOKENS 0 CACHE BOOL "Internal flag.") +set(CONFIG_DC_RECON 0 CACHE BOOL "Internal flag.") +set(CONFIG_RUNTIME_CPU_DETECT 0 CACHE BOOL "Internal flag.") +set(CONFIG_POSTPROC 0 CACHE BOOL "Internal flag.") +set(CONFIG_AV1_POSTPROC 0 CACHE BOOL "Internal flag.") +set(CONFIG_MULTITHREAD 0 CACHE BOOL "Internal flag.") +set(CONFIG_INTERNAL_STATS 0 CACHE BOOL "Internal flag.") +set(CONFIG_AV1_ENCODER 1 CACHE BOOL "Internal flag.") +set(CONFIG_AV1_DECODER 1 CACHE BOOL "Internal flag.") +set(CONFIG_AV1 1 CACHE BOOL "Internal flag.") +set(CONFIG_ENCODERS 1 CACHE BOOL "Internal flag.") +set(CONFIG_DECODERS 1 CACHE BOOL "Internal flag.") +set(CONFIG_STATIC_MSVCRT 0 CACHE BOOL "Internal flag.") +set(CONFIG_SPATIAL_RESAMPLING 1 CACHE BOOL "Internal flag.") +set(CONFIG_REALTIME_ONLY 0 CACHE BOOL "Internal flag.") +set(CONFIG_ONTHEFLY_BITPACKING 0 CACHE BOOL "Internal flag.") +set(CONFIG_ERROR_CONCEALMENT 0 CACHE BOOL "Internal flag.") +set(CONFIG_SHARED 0 CACHE BOOL "Internal flag.") +set(CONFIG_STATIC 1 CACHE BOOL "Internal flag.") +set(CONFIG_SMALL 0 CACHE BOOL "Internal flag.") +set(CONFIG_POSTPROC_VISUALIZER 0 CACHE BOOL "Internal flag.") +set(CONFIG_OS_SUPPORT 0 CACHE BOOL "Internal flag.") +set(CONFIG_UNIT_TESTS 0 CACHE BOOL "Internal flag.") +set(CONFIG_WEBM_IO 1 CACHE BOOL "Enables WebM support.") +set(CONFIG_LIBYUV 1 CACHE BOOL "Enables libyuv scaling and conversion support.") +set(CONFIG_ACCOUNTING 0 CACHE BOOL "Internal flag.") +set(CONFIG_DECODE_PERF_TESTS 0 CACHE BOOL "Internal flag.") +set(CONFIG_ENCODE_PERF_TESTS 0 CACHE BOOL "Internal flag.") +set(CONFIG_MULTI_RES_ENCODING 0 CACHE BOOL "Internal flag.") +set(CONFIG_TEMPORAL_DENOISING 1 CACHE BOOL "Internal flag.") +set(CONFIG_AV1_TEMPORAL_DENOISING 0 CACHE BOOL "Internal flag.") +set(CONFIG_COEFFICIENT_RANGE_CHECKING 0 CACHE BOOL "Internal flag.") +set(CONFIG_AOM_HIGHBITDEPTH 0 CACHE BOOL "Internal flag.") +set(CONFIG_BETTER_HW_COMPATIBILITY 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXPERIMENTAL 0 CACHE BOOL "Internal flag.") +set(CONFIG_SIZE_LIMIT 0 CACHE BOOL "Internal flag.") +set(CONFIG_AOM_QM 0 CACHE BOOL "Internal flag.") +set(CONFIG_FP_MB_STATS 0 CACHE BOOL "Internal flag.") +set(CONFIG_EMULATE_HARDWARE 0 CACHE BOOL "Internal flag.") +set(CONFIG_CLPF 0 CACHE BOOL "Internal flag.") +set(CONFIG_DERING 0 CACHE BOOL "Internal flag.") +set(CONFIG_VAR_TX 0 CACHE BOOL "Internal flag.") +set(CONFIG_RECT_TX 0 CACHE BOOL "Internal flag.") +set(CONFIG_REF_MV 0 CACHE BOOL "Internal flag.") +set(CONFIG_DUAL_FILTER 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXT_TX 0 CACHE BOOL "Internal flag.") +set(CONFIG_TX64X64 0 CACHE BOOL "Internal flag.") +set(CONFIG_SUB8X8_MC 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXT_INTRA 0 CACHE BOOL "Internal flag.") +set(CONFIG_FILTER_INTRA 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXT_INTER 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXT_INTERP 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXT_REFS 0 CACHE BOOL "Internal flag.") +set(CONFIG_GLOBAL_MOTION 0 CACHE BOOL "Internal flag.") +set(CONFIG_NEW_QUANT 0 CACHE BOOL "Internal flag.") +set(CONFIG_SUPERTX 0 CACHE BOOL "Internal flag.") +set(CONFIG_ANS 0 CACHE BOOL "Internal flag.") +set(CONFIG_EC_MULTISYMBOL 1 CACHE BOOL "Internal flag.") +set(CONFIG_LOOP_RESTORATION 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXT_PARTITION 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXT_PARTITION_TYPES 0 CACHE BOOL "Internal flag.") +set(CONFIG_EXT_TILE 0 CACHE BOOL "Internal flag.") +set(CONFIG_MOTION_VAR 0 CACHE BOOL "Internal flag.") +set(CONFIG_WARPED_MOTION 0 CACHE BOOL "Internal flag.") +set(CONFIG_ENTROPY 0 CACHE BOOL "Internal flag.") +set(CONFIG_BIDIR_PRED 0 CACHE BOOL "Internal flag.") +set(CONFIG_BITSTREAM_DEBUG 0 CACHE BOOL "Internal flag.") +set(CONFIG_ALT_INTRA 0 CACHE BOOL "Internal flag.") +set(CONFIG_PALETTE 0 CACHE BOOL "Internal flag.") +set(CONFIG_DAALA_EC 1 CACHE BOOL "Internal flag.") +set(CONFIG_PVQ 0 CACHE BOOL "Internal flag.") +set(CONFIG_CB4X4 0 CACHE BOOL "Internal flag.") +set(CONFIG_FRAME_SIZE 0 CACHE BOOL "Internal flag.") +set(CONFIG_DELTA_Q 0 CACHE BOOL "Internal flag.") +set(CONFIG_ADAPT_SCAN 0 CACHE BOOL "Internal flag.") +set(CONFIG_FILTER_7BIT 0 CACHE BOOL "Internal flag.") +set(CONFIG_PARALLEL_DEBLOCKING 0 CACHE BOOL "Internal flag.") +set(CONFIG_TILE_GROUPS 0 CACHE BOOL "Internal flag.") +set(CONFIG_EC_ADAPT 0 CACHE BOOL "Internal flag.") +set(CONFIG_SIMP_MV_PRED 0 CACHE BOOL "Internal flag.") +set(CONFIG_RD_DEBUG 0 CACHE BOOL "Internal flag.") +set(CONFIG_REFERENCE_BUFFER 0 CACHE BOOL "Internal flag.")