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 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 ${toggle_onthefly_bitpacking} enable on-the-fly bitpacking in real-time enco
ding | 45 ${toggle_onthefly_bitpacking} enable on-the-fly bitpacking in real-time enco
ding |
46 ${toggle_error_concealment} enable this option to get a decoder which is a
ble to conceal losses | 46 ${toggle_error_concealment} enable this option to get a decoder which is a
ble to conceal losses |
47 ${toggle_runtime_cpu_detect} runtime cpu detection | 47 ${toggle_runtime_cpu_detect} runtime cpu detection |
48 ${toggle_shared} shared library support | 48 ${toggle_shared} shared library support |
49 ${toggle_static} static library support | 49 ${toggle_static} static library support |
50 ${toggle_small} favor smaller size over speed | 50 ${toggle_small} favor smaller size over speed |
51 ${toggle_postproc_visualizer} macro block / block level visualizers | 51 ${toggle_postproc_visualizer} macro block / block level visualizers |
52 ${toggle_multi_res_encoding} enable multiple-resolution encoding | 52 ${toggle_multi_res_encoding} enable multiple-resolution encoding |
53 ${toggle_temporal_denoising} enable temporal denoising and disable the spat
ial denoiser | 53 ${toggle_temporal_denoising} enable temporal denoising and disable the spat
ial denoiser |
54 ${toggle_webm_io} enable input from and output to WebM container | 54 ${toggle_webm_io} enable input from and output to WebM container |
| 55 ${toggle_libyuv} enable libyuv |
55 | 56 |
56 Codecs: | 57 Codecs: |
57 Codecs can be selectively enabled or disabled individually, or by family: | 58 Codecs can be selectively enabled or disabled individually, or by family: |
58 --disable-<codec> | 59 --disable-<codec> |
59 is equivalent to: | 60 is equivalent to: |
60 --disable-<codec>-encoder | 61 --disable-<codec>-encoder |
61 --disable-<codec>-decoder | 62 --disable-<codec>-decoder |
62 | 63 |
63 Codecs available in this distribution: | 64 Codecs available in this distribution: |
64 EOF | 65 EOF |
(...skipping 30 matching lines...) Expand all Loading... |
95 all_platforms="${all_platforms} armv6-linux-rvct" | 96 all_platforms="${all_platforms} armv6-linux-rvct" |
96 all_platforms="${all_platforms} armv6-linux-gcc" | 97 all_platforms="${all_platforms} armv6-linux-gcc" |
97 all_platforms="${all_platforms} armv6-none-rvct" | 98 all_platforms="${all_platforms} armv6-none-rvct" |
98 all_platforms="${all_platforms} armv7-android-gcc" #neon Cortex-A8 | 99 all_platforms="${all_platforms} armv7-android-gcc" #neon Cortex-A8 |
99 all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8 | 100 all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8 |
100 all_platforms="${all_platforms} armv7-linux-rvct" #neon Cortex-A8 | 101 all_platforms="${all_platforms} armv7-linux-rvct" #neon Cortex-A8 |
101 all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8 | 102 all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8 |
102 all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8 | 103 all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8 |
103 all_platforms="${all_platforms} armv7-win32-vs11" | 104 all_platforms="${all_platforms} armv7-win32-vs11" |
104 all_platforms="${all_platforms} armv7-win32-vs12" | 105 all_platforms="${all_platforms} armv7-win32-vs12" |
| 106 all_platforms="${all_platforms} armv7s-darwin-gcc" |
105 all_platforms="${all_platforms} mips32-linux-gcc" | 107 all_platforms="${all_platforms} mips32-linux-gcc" |
106 all_platforms="${all_platforms} ppc32-darwin8-gcc" | 108 all_platforms="${all_platforms} ppc32-darwin8-gcc" |
107 all_platforms="${all_platforms} ppc32-darwin9-gcc" | 109 all_platforms="${all_platforms} ppc32-darwin9-gcc" |
108 all_platforms="${all_platforms} ppc32-linux-gcc" | 110 all_platforms="${all_platforms} ppc32-linux-gcc" |
109 all_platforms="${all_platforms} ppc64-darwin8-gcc" | 111 all_platforms="${all_platforms} ppc64-darwin8-gcc" |
110 all_platforms="${all_platforms} ppc64-darwin9-gcc" | 112 all_platforms="${all_platforms} ppc64-darwin9-gcc" |
111 all_platforms="${all_platforms} ppc64-linux-gcc" | 113 all_platforms="${all_platforms} ppc64-linux-gcc" |
112 all_platforms="${all_platforms} sparc-solaris-gcc" | 114 all_platforms="${all_platforms} sparc-solaris-gcc" |
113 all_platforms="${all_platforms} x86-android-gcc" | 115 all_platforms="${all_platforms} x86-android-gcc" |
114 all_platforms="${all_platforms} x86-darwin8-gcc" | 116 all_platforms="${all_platforms} x86-darwin8-gcc" |
115 all_platforms="${all_platforms} x86-darwin8-icc" | 117 all_platforms="${all_platforms} x86-darwin8-icc" |
116 all_platforms="${all_platforms} x86-darwin9-gcc" | 118 all_platforms="${all_platforms} x86-darwin9-gcc" |
117 all_platforms="${all_platforms} x86-darwin9-icc" | 119 all_platforms="${all_platforms} x86-darwin9-icc" |
118 all_platforms="${all_platforms} x86-darwin10-gcc" | 120 all_platforms="${all_platforms} x86-darwin10-gcc" |
119 all_platforms="${all_platforms} x86-darwin11-gcc" | 121 all_platforms="${all_platforms} x86-darwin11-gcc" |
120 all_platforms="${all_platforms} x86-darwin12-gcc" | 122 all_platforms="${all_platforms} x86-darwin12-gcc" |
121 all_platforms="${all_platforms} x86-darwin13-gcc" | 123 all_platforms="${all_platforms} x86-darwin13-gcc" |
| 124 all_platforms="${all_platforms} x86-iphonesimulator-gcc" |
122 all_platforms="${all_platforms} x86-linux-gcc" | 125 all_platforms="${all_platforms} x86-linux-gcc" |
123 all_platforms="${all_platforms} x86-linux-icc" | 126 all_platforms="${all_platforms} x86-linux-icc" |
124 all_platforms="${all_platforms} x86-os2-gcc" | 127 all_platforms="${all_platforms} x86-os2-gcc" |
125 all_platforms="${all_platforms} x86-solaris-gcc" | 128 all_platforms="${all_platforms} x86-solaris-gcc" |
126 all_platforms="${all_platforms} x86-win32-gcc" | 129 all_platforms="${all_platforms} x86-win32-gcc" |
127 all_platforms="${all_platforms} x86-win32-vs7" | 130 all_platforms="${all_platforms} x86-win32-vs7" |
128 all_platforms="${all_platforms} x86-win32-vs8" | 131 all_platforms="${all_platforms} x86-win32-vs8" |
129 all_platforms="${all_platforms} x86-win32-vs9" | 132 all_platforms="${all_platforms} x86-win32-vs9" |
130 all_platforms="${all_platforms} x86-win32-vs10" | 133 all_platforms="${all_platforms} x86-win32-vs10" |
131 all_platforms="${all_platforms} x86-win32-vs11" | 134 all_platforms="${all_platforms} x86-win32-vs11" |
132 all_platforms="${all_platforms} x86-win32-vs12" | 135 all_platforms="${all_platforms} x86-win32-vs12" |
133 all_platforms="${all_platforms} x86_64-darwin9-gcc" | 136 all_platforms="${all_platforms} x86_64-darwin9-gcc" |
134 all_platforms="${all_platforms} x86_64-darwin10-gcc" | 137 all_platforms="${all_platforms} x86_64-darwin10-gcc" |
135 all_platforms="${all_platforms} x86_64-darwin11-gcc" | 138 all_platforms="${all_platforms} x86_64-darwin11-gcc" |
136 all_platforms="${all_platforms} x86_64-darwin12-gcc" | 139 all_platforms="${all_platforms} x86_64-darwin12-gcc" |
137 all_platforms="${all_platforms} x86_64-darwin13-gcc" | 140 all_platforms="${all_platforms} x86_64-darwin13-gcc" |
| 141 all_platforms="${all_platforms} x86_64-iphonesimulator-gcc" |
138 all_platforms="${all_platforms} x86_64-linux-gcc" | 142 all_platforms="${all_platforms} x86_64-linux-gcc" |
139 all_platforms="${all_platforms} x86_64-linux-icc" | 143 all_platforms="${all_platforms} x86_64-linux-icc" |
140 all_platforms="${all_platforms} x86_64-solaris-gcc" | 144 all_platforms="${all_platforms} x86_64-solaris-gcc" |
141 all_platforms="${all_platforms} x86_64-win64-gcc" | 145 all_platforms="${all_platforms} x86_64-win64-gcc" |
142 all_platforms="${all_platforms} x86_64-win64-vs8" | 146 all_platforms="${all_platforms} x86_64-win64-vs8" |
143 all_platforms="${all_platforms} x86_64-win64-vs9" | 147 all_platforms="${all_platforms} x86_64-win64-vs9" |
144 all_platforms="${all_platforms} x86_64-win64-vs10" | 148 all_platforms="${all_platforms} x86_64-win64-vs10" |
145 all_platforms="${all_platforms} x86_64-win64-vs11" | 149 all_platforms="${all_platforms} x86_64-win64-vs11" |
146 all_platforms="${all_platforms} x86_64-win64-vs12" | 150 all_platforms="${all_platforms} x86_64-win64-vs12" |
147 all_platforms="${all_platforms} universal-darwin8-gcc" | 151 all_platforms="${all_platforms} universal-darwin8-gcc" |
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
258 HAVE_LIST=" | 262 HAVE_LIST=" |
259 ${ARCH_EXT_LIST} | 263 ${ARCH_EXT_LIST} |
260 vpx_ports | 264 vpx_ports |
261 stdint_h | 265 stdint_h |
262 alt_tree_layout | 266 alt_tree_layout |
263 pthread_h | 267 pthread_h |
264 sys_mman_h | 268 sys_mman_h |
265 unistd_h | 269 unistd_h |
266 " | 270 " |
267 EXPERIMENT_LIST=" | 271 EXPERIMENT_LIST=" |
| 272 alpha |
268 multiple_arf | 273 multiple_arf |
269 alpha | 274 spatial_svc |
| 275 denoising |
270 " | 276 " |
271 CONFIG_LIST=" | 277 CONFIG_LIST=" |
272 external_build | 278 external_build |
273 install_docs | 279 install_docs |
274 install_bins | 280 install_bins |
275 install_libs | 281 install_libs |
276 install_srcs | 282 install_srcs |
277 use_x86inc | 283 use_x86inc |
278 debug | 284 debug |
279 gprof | 285 gprof |
(...skipping 27 matching lines...) Expand all Loading... |
307 realtime_only | 313 realtime_only |
308 onthefly_bitpacking | 314 onthefly_bitpacking |
309 error_concealment | 315 error_concealment |
310 shared | 316 shared |
311 static | 317 static |
312 small | 318 small |
313 postproc_visualizer | 319 postproc_visualizer |
314 os_support | 320 os_support |
315 unit_tests | 321 unit_tests |
316 webm_io | 322 webm_io |
| 323 libyuv |
317 decode_perf_tests | 324 decode_perf_tests |
318 multi_res_encoding | 325 multi_res_encoding |
319 temporal_denoising | 326 temporal_denoising |
320 experimental | 327 experimental |
321 ${EXPERIMENT_LIST} | 328 ${EXPERIMENT_LIST} |
322 " | 329 " |
323 CMDLINE_SELECT=" | 330 CMDLINE_SELECT=" |
324 external_build | 331 external_build |
325 extra_warnings | 332 extra_warnings |
326 werror | 333 werror |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
360 spatial_resampling | 367 spatial_resampling |
361 realtime_only | 368 realtime_only |
362 onthefly_bitpacking | 369 onthefly_bitpacking |
363 error_concealment | 370 error_concealment |
364 shared | 371 shared |
365 static | 372 static |
366 small | 373 small |
367 postproc_visualizer | 374 postproc_visualizer |
368 unit_tests | 375 unit_tests |
369 webm_io | 376 webm_io |
| 377 libyuv |
370 decode_perf_tests | 378 decode_perf_tests |
371 multi_res_encoding | 379 multi_res_encoding |
372 temporal_denoising | 380 temporal_denoising |
373 experimental | 381 experimental |
374 " | 382 " |
375 | 383 |
376 process_cmdline() { | 384 process_cmdline() { |
377 for opt do | 385 for opt do |
378 optval="${opt#*=}" | 386 optval="${opt#*=}" |
379 case "$opt" in | 387 case "$opt" in |
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
701 | 709 |
702 if enabled postproc_visualizer; then | 710 if enabled postproc_visualizer; then |
703 enabled postproc || die "postproc_visualizer requires postproc to be ena
bled" | 711 enabled postproc || die "postproc_visualizer requires postproc to be ena
bled" |
704 fi | 712 fi |
705 | 713 |
706 # Enable unit tests by default if we have a working C++ compiler. | 714 # Enable unit tests by default if we have a working C++ compiler. |
707 case "$toolchain" in | 715 case "$toolchain" in |
708 *-vs*) | 716 *-vs*) |
709 soft_enable unit_tests | 717 soft_enable unit_tests |
710 soft_enable webm_io | 718 soft_enable webm_io |
| 719 soft_enable libyuv |
711 ;; | 720 ;; |
712 *-android-*) | 721 *-android-*) |
713 soft_enable webm_io | 722 soft_enable webm_io |
| 723 soft_enable libyuv |
714 # GTestLog must be modified to use Android logging utilities. | 724 # GTestLog must be modified to use Android logging utilities. |
715 ;; | 725 ;; |
716 *-darwin-*) | 726 *-darwin-*) |
717 # iOS/ARM builds do not work with gtest. This does not match | 727 # iOS/ARM builds do not work with gtest. This does not match |
718 # x86 targets. | 728 # x86 targets. |
719 ;; | 729 ;; |
| 730 *-iphonesimulator-*) |
| 731 soft_enable webm_io |
| 732 soft_enable libyuv |
| 733 ;; |
720 *-win*) | 734 *-win*) |
721 # Some mingw toolchains don't have pthread available by default. | 735 # Some mingw toolchains don't have pthread available by default. |
722 # Treat these more like visual studio where threading in gtest | 736 # Treat these more like visual studio where threading in gtest |
723 # would be disabled for the same reason. | 737 # would be disabled for the same reason. |
724 check_cxx "$@" <<EOF && soft_enable unit_tests | 738 check_cxx "$@" <<EOF && soft_enable unit_tests |
725 int z; | 739 int z; |
726 EOF | 740 EOF |
727 check_cxx "$@" <<EOF && soft_enable webm_io | 741 check_cxx "$@" <<EOF && soft_enable webm_io |
728 int z; | 742 int z; |
729 EOF | 743 EOF |
| 744 check_cxx "$@" <<EOF && soft_enable libyuv |
| 745 int z; |
| 746 EOF |
730 ;; | 747 ;; |
731 *) | 748 *) |
732 enabled pthread_h && check_cxx "$@" <<EOF && soft_enable unit_tests | 749 enabled pthread_h && check_cxx "$@" <<EOF && soft_enable unit_tests |
733 int z; | 750 int z; |
734 EOF | 751 EOF |
735 check_cxx "$@" <<EOF && soft_enable webm_io | 752 check_cxx "$@" <<EOF && soft_enable webm_io |
736 int z; | 753 int z; |
737 EOF | 754 EOF |
| 755 check_cxx "$@" <<EOF && soft_enable libyuv |
| 756 int z; |
| 757 EOF |
738 ;; | 758 ;; |
739 esac | 759 esac |
740 # libwebm needs to be linked with C++ standard library | 760 # libwebm needs to be linked with C++ standard library |
741 enabled webm_io && LD=${CXX} | 761 enabled webm_io && LD=${CXX} |
742 } | 762 } |
743 | 763 |
744 | 764 |
745 ## | 765 ## |
746 ## END APPLICATION SPECIFIC CONFIGURATION | 766 ## END APPLICATION SPECIFIC CONFIGURATION |
747 ## | 767 ## |
748 CONFIGURE_ARGS="$@" | 768 CONFIGURE_ARGS="$@" |
749 process "$@" | 769 process "$@" |
750 print_webm_license ${BUILD_PFX}vpx_config.c "/*" " */" | 770 print_webm_license ${BUILD_PFX}vpx_config.c "/*" " */" |
751 cat <<EOF >> ${BUILD_PFX}vpx_config.c | 771 cat <<EOF >> ${BUILD_PFX}vpx_config.c |
752 static const char* const cfg = "$CONFIGURE_ARGS"; | 772 static const char* const cfg = "$CONFIGURE_ARGS"; |
753 const char *vpx_codec_build_config(void) {return cfg;} | 773 const char *vpx_codec_build_config(void) {return cfg;} |
754 EOF | 774 EOF |
OLD | NEW |