| OLD | NEW |
| 1 #!/bin/sh | 1 #!/bin/sh |
| 2 ## | 2 ## |
| 3 ## configure.sh | 3 ## configure.sh |
| 4 ## | 4 ## |
| 5 ## This script is sourced by the main configure script and contains | 5 ## This script is sourced by the main configure script and contains |
| 6 ## utility functions and other common bits that aren't strictly libvpx | 6 ## utility functions and other common bits that aren't strictly libvpx |
| 7 ## related. | 7 ## related. |
| 8 ## | 8 ## |
| 9 ## This build system is based in part on the FFmpeg configure script. | 9 ## This build system is based in part on the FFmpeg configure script. |
| 10 ## | 10 ## |
| (...skipping 622 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 633 armv7*) | 633 armv7*) |
| 634 tgt_isa=armv7 | 634 tgt_isa=armv7 |
| 635 float_abi=softfp | 635 float_abi=softfp |
| 636 ;; | 636 ;; |
| 637 *x86_64*|*amd64*) | 637 *x86_64*|*amd64*) |
| 638 tgt_isa=x86_64 | 638 tgt_isa=x86_64 |
| 639 ;; | 639 ;; |
| 640 *i[3456]86*) | 640 *i[3456]86*) |
| 641 tgt_isa=x86 | 641 tgt_isa=x86 |
| 642 ;; | 642 ;; |
| 643 *powerpc64*) | |
| 644 tgt_isa=ppc64 | |
| 645 ;; | |
| 646 *powerpc*) | |
| 647 tgt_isa=ppc32 | |
| 648 ;; | |
| 649 *sparc*) | 643 *sparc*) |
| 650 tgt_isa=sparc | 644 tgt_isa=sparc |
| 651 ;; | 645 ;; |
| 652 esac | 646 esac |
| 653 | 647 |
| 654 # detect tgt_os | 648 # detect tgt_os |
| 655 case "$gcctarget" in | 649 case "$gcctarget" in |
| 656 *darwin8*) | 650 *darwin8*) |
| 657 tgt_isa=universal | 651 tgt_isa=universal |
| 658 tgt_os=darwin8 | 652 tgt_os=darwin8 |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 788 add_cflags "-isysroot ${iossim_sdk_dir}" | 782 add_cflags "-isysroot ${iossim_sdk_dir}" |
| 789 add_ldflags "-isysroot ${iossim_sdk_dir}" | 783 add_ldflags "-isysroot ${iossim_sdk_dir}" |
| 790 fi | 784 fi |
| 791 ;; | 785 ;; |
| 792 esac | 786 esac |
| 793 | 787 |
| 794 # Handle Solaris variants. Solaris 10 needs -lposix4 | 788 # Handle Solaris variants. Solaris 10 needs -lposix4 |
| 795 case ${toolchain} in | 789 case ${toolchain} in |
| 796 sparc-solaris-*) | 790 sparc-solaris-*) |
| 797 add_extralibs -lposix4 | 791 add_extralibs -lposix4 |
| 798 disable_feature fast_unaligned | |
| 799 ;; | 792 ;; |
| 800 *-solaris-*) | 793 *-solaris-*) |
| 801 add_extralibs -lposix4 | 794 add_extralibs -lposix4 |
| 802 ;; | 795 ;; |
| 803 esac | 796 esac |
| 804 | 797 |
| 805 # Process ARM architecture variants | 798 # Process ARM architecture variants |
| 806 case ${toolchain} in | 799 case ${toolchain} in |
| 807 arm*) | 800 arm*) |
| 808 # on arm, isa versions are supersets | 801 # on arm, isa versions are supersets |
| 809 case ${tgt_isa} in | 802 case ${tgt_isa} in |
| 810 arm64|armv8) | 803 arm64|armv8) |
| 811 soft_enable neon | 804 soft_enable neon |
| 812 ;; | 805 ;; |
| 813 armv7|armv7s) | 806 armv7|armv7s) |
| 814 soft_enable neon | 807 soft_enable neon |
| 815 # Only enable neon_asm when neon is also enabled. | 808 # Only enable neon_asm when neon is also enabled. |
| 816 enabled neon && soft_enable neon_asm | 809 enabled neon && soft_enable neon_asm |
| 817 # If someone tries to force it through, die. | 810 # If someone tries to force it through, die. |
| 818 if disabled neon && enabled neon_asm; then | 811 if disabled neon && enabled neon_asm; then |
| 819 die "Disabling neon while keeping neon-asm is not supported" | 812 die "Disabling neon while keeping neon-asm is not supported" |
| 820 fi | 813 fi |
| 821 soft_enable media | 814 soft_enable media |
| 822 soft_enable fast_unaligned | |
| 823 ;; | 815 ;; |
| 824 armv6) | 816 armv6) |
| 825 soft_enable media | 817 soft_enable media |
| 826 soft_enable fast_unaligned | |
| 827 ;; | 818 ;; |
| 828 esac | 819 esac |
| 829 | 820 |
| 830 asm_conversion_cmd="cat" | 821 asm_conversion_cmd="cat" |
| 831 | 822 |
| 832 case ${tgt_cc} in | 823 case ${tgt_cc} in |
| 833 gcc) | 824 gcc) |
| 834 CROSS=${CROSS:-arm-none-linux-gnueabi-} | 825 CROSS=${CROSS:-arm-none-linux-gnueabi-} |
| 835 link_with_cc=gcc | 826 link_with_cc=gcc |
| 836 setup_gnu_toolchain | 827 setup_gnu_toolchain |
| (...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1032 fi | 1023 fi |
| 1033 ;; | 1024 ;; |
| 1034 esac | 1025 esac |
| 1035 ;; | 1026 ;; |
| 1036 mips*) | 1027 mips*) |
| 1037 link_with_cc=gcc | 1028 link_with_cc=gcc |
| 1038 setup_gnu_toolchain | 1029 setup_gnu_toolchain |
| 1039 tune_cflags="-mtune=" | 1030 tune_cflags="-mtune=" |
| 1040 if enabled dspr2; then | 1031 if enabled dspr2; then |
| 1041 check_add_cflags -mips32r2 -mdspr2 | 1032 check_add_cflags -mips32r2 -mdspr2 |
| 1042 disable_feature fast_unaligned | |
| 1043 fi | 1033 fi |
| 1034 |
| 1035 if enabled runtime_cpu_detect; then |
| 1036 disable_feature runtime_cpu_detect |
| 1037 fi |
| 1038 |
| 1039 if [ -n "${tune_cpu}" ]; then |
| 1040 case ${tune_cpu} in |
| 1041 p5600) |
| 1042 check_add_cflags -mips32r5 -funroll-loops -mload-store-pairs |
| 1043 check_add_cflags -msched-weight -mhard-float -mfp64 |
| 1044 check_add_asflags -mips32r5 -mhard-float -mfp64 |
| 1045 check_add_ldflags -mfp64 |
| 1046 ;; |
| 1047 i6400) |
| 1048 check_add_cflags -mips64r6 -mabi=64 -funroll-loops -msched-weight |
| 1049 check_add_cflags -mload-store-pairs -mhard-float -mfp64 |
| 1050 check_add_asflags -mips64r6 -mabi=64 -mhard-float -mfp64 |
| 1051 check_add_ldflags -mips64r6 -mabi=64 -mfp64 |
| 1052 ;; |
| 1053 esac |
| 1054 |
| 1055 if enabled msa; then |
| 1056 add_cflags -mmsa |
| 1057 add_asflags -mmsa |
| 1058 add_ldflags -mmsa |
| 1059 fi |
| 1060 fi |
| 1061 |
| 1044 check_add_cflags -march=${tgt_isa} | 1062 check_add_cflags -march=${tgt_isa} |
| 1045 check_add_asflags -march=${tgt_isa} | 1063 check_add_asflags -march=${tgt_isa} |
| 1046 check_add_asflags -KPIC | 1064 check_add_asflags -KPIC |
| 1047 ;; | 1065 ;; |
| 1048 ppc*) | |
| 1049 enable_feature ppc | |
| 1050 bits=${tgt_isa##ppc} | |
| 1051 link_with_cc=gcc | |
| 1052 setup_gnu_toolchain | |
| 1053 add_asflags -force_cpusubtype_ALL -I"\$(dir \$<)darwin" | |
| 1054 soft_enable altivec | |
| 1055 enabled altivec && add_cflags -maltivec | |
| 1056 | |
| 1057 case "$tgt_os" in | |
| 1058 linux*) | |
| 1059 add_asflags -maltivec -mregnames -I"\$(dir \$<)linux" | |
| 1060 ;; | |
| 1061 darwin*) | |
| 1062 darwin_arch="-arch ppc" | |
| 1063 enabled ppc64 && darwin_arch="${darwin_arch}64" | |
| 1064 add_cflags ${darwin_arch} -m${bits} -fasm-blocks | |
| 1065 add_asflags ${darwin_arch} -force_cpusubtype_ALL -I"\$(dir \$<)darwin" | |
| 1066 add_ldflags ${darwin_arch} -m${bits} | |
| 1067 enabled altivec && add_cflags -faltivec | |
| 1068 ;; | |
| 1069 esac | |
| 1070 ;; | |
| 1071 x86*) | 1066 x86*) |
| 1072 case ${tgt_os} in | 1067 case ${tgt_os} in |
| 1073 win*) | 1068 win*) |
| 1074 enabled gcc && add_cflags -fno-common | 1069 enabled gcc && add_cflags -fno-common |
| 1075 ;; | 1070 ;; |
| 1076 solaris*) | 1071 solaris*) |
| 1077 CC=${CC:-${CROSS}gcc} | 1072 CC=${CC:-${CROSS}gcc} |
| 1078 CXX=${CXX:-${CROSS}g++} | 1073 CXX=${CXX:-${CROSS}g++} |
| 1079 LD=${LD:-${CROSS}gcc} | 1074 LD=${LD:-${CROSS}gcc} |
| 1080 CROSS=${CROSS:-g} | 1075 CROSS=${CROSS:-g} |
| (...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1297 ;; | 1292 ;; |
| 1298 *) | 1293 *) |
| 1299 check_header pthread.h && add_extralibs -lpthread | 1294 check_header pthread.h && add_extralibs -lpthread |
| 1300 ;; | 1295 ;; |
| 1301 esac | 1296 esac |
| 1302 fi | 1297 fi |
| 1303 | 1298 |
| 1304 # only for MIPS platforms | 1299 # only for MIPS platforms |
| 1305 case ${toolchain} in | 1300 case ${toolchain} in |
| 1306 mips*) | 1301 mips*) |
| 1307 if enabled dspr2; then | 1302 if enabled big_endian; then |
| 1308 if enabled big_endian; then | 1303 if enabled dspr2; then |
| 1309 echo "dspr2 optimizations are available only for little endian platfor
ms" | 1304 echo "dspr2 optimizations are available only for little endian platfor
ms" |
| 1310 disable_feature dspr2 | 1305 disable_feature dspr2 |
| 1311 fi | 1306 fi |
| 1307 if enabled msa; then |
| 1308 echo "msa optimizations are available only for little endian platforms
" |
| 1309 disable_feature msa |
| 1310 fi |
| 1312 fi | 1311 fi |
| 1313 ;; | 1312 ;; |
| 1314 esac | 1313 esac |
| 1315 | 1314 |
| 1316 # glibc needs these | 1315 # glibc needs these |
| 1317 if enabled linux; then | 1316 if enabled linux; then |
| 1318 add_cflags -D_LARGEFILE_SOURCE | 1317 add_cflags -D_LARGEFILE_SOURCE |
| 1319 add_cflags -D_FILE_OFFSET_BITS=64 | 1318 add_cflags -D_FILE_OFFSET_BITS=64 |
| 1320 fi | 1319 fi |
| 1321 | 1320 |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1418 # Prepare the PWD for building. | 1417 # Prepare the PWD for building. |
| 1419 for f in ${OOT_INSTALLS}; do | 1418 for f in ${OOT_INSTALLS}; do |
| 1420 install -D "${source_path}/$f" "$f" | 1419 install -D "${source_path}/$f" "$f" |
| 1421 done | 1420 done |
| 1422 fi | 1421 fi |
| 1423 cp "${source_path}/build/make/Makefile" . | 1422 cp "${source_path}/build/make/Makefile" . |
| 1424 | 1423 |
| 1425 clean_temp_files | 1424 clean_temp_files |
| 1426 true | 1425 true |
| 1427 } | 1426 } |
| OLD | NEW |