OLD | NEW |
1 #!/bin/sh | 1 #!/bin/sh |
2 ## | 2 ## |
3 ## configure | 3 ## configure |
4 ## | 4 ## |
5 ## This script is the front-end to the build system. It provides a similar | 5 ## This script is the front-end to the build system. It provides a similar |
6 ## interface to standard configure scripts with some extra bits for dealing | 6 ## interface to standard configure scripts with some extra bits for dealing |
7 ## with toolchains that differ from the standard POSIX interface and | 7 ## with toolchains that differ from the standard POSIX interface and |
8 ## for extracting subsets of the source tree. In theory, reusable parts | 8 ## for extracting subsets of the source tree. In theory, reusable parts |
9 ## of this script were intended to live in build/make/configure.sh, | 9 ## of this script were intended to live in build/make/configure.sh, |
10 ## but in practice, the line is pretty blurry. | 10 ## but in practice, the line is pretty blurry. |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 ${toggle_coefficient_range_checking} | 49 ${toggle_coefficient_range_checking} |
50 enable decoder to check if intermediate | 50 enable decoder to check if intermediate |
51 transform coefficients are in valid range | 51 transform coefficients are in valid range |
52 ${toggle_runtime_cpu_detect} runtime cpu detection | 52 ${toggle_runtime_cpu_detect} runtime cpu detection |
53 ${toggle_shared} shared library support | 53 ${toggle_shared} shared library support |
54 ${toggle_static} static library support | 54 ${toggle_static} static library support |
55 ${toggle_small} favor smaller size over speed | 55 ${toggle_small} favor smaller size over speed |
56 ${toggle_postproc_visualizer} macro block / block level visualizers | 56 ${toggle_postproc_visualizer} macro block / block level visualizers |
57 ${toggle_multi_res_encoding} enable multiple-resolution encoding | 57 ${toggle_multi_res_encoding} enable multiple-resolution encoding |
58 ${toggle_temporal_denoising} enable temporal denoising and disable the spat
ial denoiser | 58 ${toggle_temporal_denoising} enable temporal denoising and disable the spat
ial denoiser |
| 59 ${toggle_vp9_temporal_denoising} |
| 60 enable vp9 temporal denoising |
59 ${toggle_webm_io} enable input from and output to WebM container | 61 ${toggle_webm_io} enable input from and output to WebM container |
60 ${toggle_libyuv} enable libyuv | 62 ${toggle_libyuv} enable libyuv |
61 | 63 |
62 Codecs: | 64 Codecs: |
63 Codecs can be selectively enabled or disabled individually, or by family: | 65 Codecs can be selectively enabled or disabled individually, or by family: |
64 --disable-<codec> | 66 --disable-<codec> |
65 is equivalent to: | 67 is equivalent to: |
66 --disable-<codec>-encoder | 68 --disable-<codec>-encoder |
67 --disable-<codec>-decoder | 69 --disable-<codec>-decoder |
68 | 70 |
(...skipping 17 matching lines...) Expand all Loading... |
86 echo "${str}" | 88 echo "${str}" |
87 show_help_post | 89 show_help_post |
88 } | 90 } |
89 | 91 |
90 ## | 92 ## |
91 ## BEGIN APPLICATION SPECIFIC CONFIGURATION | 93 ## BEGIN APPLICATION SPECIFIC CONFIGURATION |
92 ## | 94 ## |
93 | 95 |
94 # all_platforms is a list of all supported target platforms. Maintain | 96 # all_platforms is a list of all supported target platforms. Maintain |
95 # alphabetically by architecture, generic-gnu last. | 97 # alphabetically by architecture, generic-gnu last. |
96 all_platforms="${all_platforms} armv5te-android-gcc" | |
97 all_platforms="${all_platforms} armv5te-linux-rvct" | |
98 all_platforms="${all_platforms} armv5te-linux-gcc" | |
99 all_platforms="${all_platforms} armv5te-none-rvct" | |
100 all_platforms="${all_platforms} armv6-darwin-gcc" | 98 all_platforms="${all_platforms} armv6-darwin-gcc" |
101 all_platforms="${all_platforms} armv6-linux-rvct" | 99 all_platforms="${all_platforms} armv6-linux-rvct" |
102 all_platforms="${all_platforms} armv6-linux-gcc" | 100 all_platforms="${all_platforms} armv6-linux-gcc" |
103 all_platforms="${all_platforms} armv6-none-rvct" | 101 all_platforms="${all_platforms} armv6-none-rvct" |
104 all_platforms="${all_platforms} arm64-darwin-gcc" | 102 all_platforms="${all_platforms} arm64-darwin-gcc" |
105 all_platforms="${all_platforms} armv7-android-gcc" #neon Cortex-A8 | 103 all_platforms="${all_platforms} armv7-android-gcc" #neon Cortex-A8 |
106 all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8 | 104 all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8 |
107 all_platforms="${all_platforms} armv7-linux-rvct" #neon Cortex-A8 | 105 all_platforms="${all_platforms} armv7-linux-rvct" #neon Cortex-A8 |
108 all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8 | 106 all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8 |
109 all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8 | 107 all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8 |
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
272 ${ARCH_EXT_LIST} | 270 ${ARCH_EXT_LIST} |
273 vpx_ports | 271 vpx_ports |
274 stdint_h | 272 stdint_h |
275 alt_tree_layout | 273 alt_tree_layout |
276 pthread_h | 274 pthread_h |
277 sys_mman_h | 275 sys_mman_h |
278 unistd_h | 276 unistd_h |
279 " | 277 " |
280 EXPERIMENT_LIST=" | 278 EXPERIMENT_LIST=" |
281 spatial_svc | 279 spatial_svc |
282 vp9_temporal_denoising | |
283 fp_mb_stats | 280 fp_mb_stats |
284 emulate_hardware | 281 emulate_hardware |
285 " | 282 " |
286 CONFIG_LIST=" | 283 CONFIG_LIST=" |
287 external_build | 284 external_build |
288 install_docs | 285 install_docs |
289 install_bins | 286 install_bins |
290 install_libs | 287 install_libs |
291 install_srcs | 288 install_srcs |
292 use_x86inc | 289 use_x86inc |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
327 small | 324 small |
328 postproc_visualizer | 325 postproc_visualizer |
329 os_support | 326 os_support |
330 unit_tests | 327 unit_tests |
331 webm_io | 328 webm_io |
332 libyuv | 329 libyuv |
333 decode_perf_tests | 330 decode_perf_tests |
334 encode_perf_tests | 331 encode_perf_tests |
335 multi_res_encoding | 332 multi_res_encoding |
336 temporal_denoising | 333 temporal_denoising |
| 334 vp9_temporal_denoising |
337 coefficient_range_checking | 335 coefficient_range_checking |
338 vp9_highbitdepth | 336 vp9_highbitdepth |
339 experimental | 337 experimental |
340 size_limit | 338 size_limit |
341 ${EXPERIMENT_LIST} | 339 ${EXPERIMENT_LIST} |
342 " | 340 " |
343 CMDLINE_SELECT=" | 341 CMDLINE_SELECT=" |
344 external_build | 342 external_build |
345 extra_warnings | 343 extra_warnings |
346 werror | 344 werror |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
386 static | 384 static |
387 small | 385 small |
388 postproc_visualizer | 386 postproc_visualizer |
389 unit_tests | 387 unit_tests |
390 webm_io | 388 webm_io |
391 libyuv | 389 libyuv |
392 decode_perf_tests | 390 decode_perf_tests |
393 encode_perf_tests | 391 encode_perf_tests |
394 multi_res_encoding | 392 multi_res_encoding |
395 temporal_denoising | 393 temporal_denoising |
| 394 vp9_temporal_denoising |
396 coefficient_range_checking | 395 coefficient_range_checking |
397 vp9_highbitdepth | 396 vp9_highbitdepth |
398 experimental | 397 experimental |
399 " | 398 " |
400 | 399 |
401 process_cmdline() { | 400 process_cmdline() { |
402 for opt do | 401 for opt do |
403 optval="${opt#*=}" | 402 optval="${opt#*=}" |
404 case "$opt" in | 403 case "$opt" in |
405 --disable-codecs) for c in ${CODECS}; do disable_feature $c; done ;; | 404 --disable-codecs) for c in ${CODECS}; do disable_feature $c; done ;; |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
444 for c in ${CODECS}; do | 443 for c in ${CODECS}; do |
445 enabled ${c} && enable_feature ${c##*_}s | 444 enabled ${c} && enable_feature ${c##*_}s |
446 done | 445 done |
447 } | 446 } |
448 | 447 |
449 | 448 |
450 process_targets() { | 449 process_targets() { |
451 enabled child || write_common_config_banner | 450 enabled child || write_common_config_banner |
452 enabled universal || write_common_target_config_h ${BUILD_PFX}vpx_config.h | 451 enabled universal || write_common_target_config_h ${BUILD_PFX}vpx_config.h |
453 | 452 |
454 # TODO: add host tools target (obj_int_extract, etc) | |
455 | |
456 # For fat binaries, call configure recursively to configure for each | 453 # For fat binaries, call configure recursively to configure for each |
457 # binary architecture to be included. | 454 # binary architecture to be included. |
458 if enabled universal; then | 455 if enabled universal; then |
459 # Call configure (ourselves) for each subarchitecture | 456 # Call configure (ourselves) for each subarchitecture |
460 for arch in $fat_bin_archs; do | 457 for arch in $fat_bin_archs; do |
461 BUILD_PFX=${arch}/ toolchain=${arch} $self --child $cmdline_args ||
exit $? | 458 BUILD_PFX=${arch}/ toolchain=${arch} $self --child $cmdline_args ||
exit $? |
462 done | 459 done |
463 fi | 460 fi |
464 | 461 |
465 # The write_common_config (config.mk) logic is deferred until after the | 462 # The write_common_config (config.mk) logic is deferred until after the |
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
782 ## | 779 ## |
783 ## END APPLICATION SPECIFIC CONFIGURATION | 780 ## END APPLICATION SPECIFIC CONFIGURATION |
784 ## | 781 ## |
785 CONFIGURE_ARGS="$@" | 782 CONFIGURE_ARGS="$@" |
786 process "$@" | 783 process "$@" |
787 print_webm_license ${BUILD_PFX}vpx_config.c "/*" " */" | 784 print_webm_license ${BUILD_PFX}vpx_config.c "/*" " */" |
788 cat <<EOF >> ${BUILD_PFX}vpx_config.c | 785 cat <<EOF >> ${BUILD_PFX}vpx_config.c |
789 static const char* const cfg = "$CONFIGURE_ARGS"; | 786 static const char* const cfg = "$CONFIGURE_ARGS"; |
790 const char *vpx_codec_build_config(void) {return cfg;} | 787 const char *vpx_codec_build_config(void) {return cfg;} |
791 EOF | 788 EOF |
OLD | NEW |