summaryrefslogtreecommitdiff
path: root/configure
AgeCommit message (Collapse)Author
2023-07-10enable rvvWang Chen
Test: CROSS=riscv64-unknown-linux-gnu- ../libvpx/configure --target=riscv64-linux-gcc Check console output: ...... enabling rvv ...... Check mk files' content: $ less libs-riscv64-linux-gcc.mk | grep RVV HAVE_RVV=yes Signed-off-by: Wang Chen <wangchen20@iscas.ac.cn> Co-authored-by: sun min <sunmin89@outlook.com>
2023-07-08libvpx[riscv]: Add riscv64 support.sun min
With this change, we can run configure with "--target=riscv64-linux-gcc". No other chagnes so it equals to "--target=generic-gnu" actually. Signed-off-by: sun min <sunmin89@outlook.com>
2023-05-09configure: add -WshadowJames Zern
libraries under third_party/ are out of scope for this change. Bug: webm:1793 Change-Id: I562065a3c0ea9fdfc9615d1a6b1ae47da79b8ce0
2023-05-08configure: add clang-cl vs1[67] arm64 targetsJames Zern
x86 and armv7 are skipped for now as the intrinsics will need different flags than cl.exe (/arch:... -> -m...). Bug: webm:1788 Change-Id: I8ca8660a8644cdd84c51cb1f75005e371ba8207d
2023-05-02configure: add aarch64 to ARCH_LISTJames Zern
This will allow identifying Windows Visual Studio targets as aarch64; the Microsoft compiler does not define __aarch64__. An alternative would be to define this in the code, checking for _M_ARM64 or _M_ARM64EC. For now we'll use the existing VPX_ARCH_* system. For compatibility VPX_ARCH_ARM will continue to be defined to 1 in this case. Bug: webm:1788 Bug: b/277255076 Change-Id: I12e25710891e86f0c7339ba96884c18ed90ba16f
2023-02-10Remove CONFIG_CONSISTENT_RECODE flagchiyotsai
Currently, libvpx does not properly clear and re-initialize the memories when it re-encodes a frame. As a result, out-of-date values are used in the encoding process, and re-encoding a frame with the same parameter will give different outputs. This commit enables the code under CONFIG_CONSISTENT_RECODE to correct this behavior. This change has minor effect on the coding performance, but it ensures valid values are used in the encoding process. Furthermore, the flag is removed as it is now always turned on. Performance: | SPD_SET | TESTSET | AVG_PSNR | OVR_PSNR | SSIM | ENC_T | |---------|---------|----------|----------|---------|-------| | 0 | hdres2 | -0.012% | -0.021% | -0.030% | +0.1% | | 0 | lowres2 | +0.029% | +0.019% | +0.047% | +0.1% | | 0 | midres2 | -0.004% | +0.009% | +0.026% | +0.1% | |---------|---------|----------|----------|---------|-------| | 1 | hdres2 | +0.032% | +0.032% | -0.000% | -0.0% | | 1 | lowres2 | -0.005% | -0.011% | -0.014% | +0.0% | | 1 | midres2 | +0.004% | +0.020% | +0.027% | +0.2% | |---------|---------|----------|----------|---------|-------| | 2 | hdres2 | +0.048% | +0.056% | +0.057% | +0.1% | | 2 | lowres2 | +0.007% | +0.002% | -0.016% | -0.0% | | 2 | midres2 | -0.015% | -0.008% | -0.002% | +0.1% | |---------|---------|----------|----------|---------|-------| | 3 | hdres2 | +0.010% | +0.014% | +0.004% | -0.0% | | 3 | lowres2 | +0.000% | -0.021% | -0.001% | +0.0% | | 3 | midres2 | +0.007% | -0.038% | +0.012% | -0.2% | |---------|---------|----------|----------|---------|-------| | 4 | hdres2 | +0.107% | +0.136% | +0.124% | -0.0% | | 4 | lowres2 | -0.012% | -0.024% | -0.020% | -0.0% | | 4 | midres2 | +0.055% | -0.004% | +0.048% | -0.1% | |---------|---------|----------|----------|---------|-------| | 5 | hdres2 | +0.026% | +0.027% | +0.020% | -0.0% | | 5 | lowres2 | +0.009% | -0.008% | +0.028% | +0.1% | | 5 | midres2 | -0.025% | +0.021% | -0.020% | -0.1% | STATS_CHANGED Change-Id: I3967aee8c8e4d0608a492e07f99ab8de9744ba57
2023-01-27Add encoder component timing informationYunqing Wang
Change-Id: Iaa5b73a9593ecfd74b6426ed47d2b529ec7ae2b5
2022-12-13Add additional ARM targets for Visual Studio.Anton Venema
configure: Add an armv7-win32-vs16 target configure: Add an armv7-win32-vs17 target configure: Add an arm64-win64-vs16 target configure: Add an arm64-win64-vs17 target Change-Id: I11d6cd6e51f7703939d6fd3fc6a7469591e3b09d
2022-10-27MacOS 13 is darwin22Johann
Bug: webm:1783 Change-Id: I97d94ab8c8aebe13aedb58e280dc37474814ad5d
2022-08-16configure: add -Wno-pass-failed for libyuvJames Zern
with certain optimization flags or sanitizers enabled some code may fail to vectorize: third_party/libyuv/source/row_common.cc:3178:7: warning: loop not vectorized: the optimizer was unable to perform the requested transformation; the transformation might be disabled or specified as part of an unsupported transformation ordering [-Wpass-failed=transform-warning] this was observed with integer/undefined sanitizers using clang 11/13 Bug: b/229626362 Change-Id: I01595c641763c4cd4242e02f2cc5cbabfe69d03e
2022-08-12configure: add -Wc++{14,17,20}-extensionsJames Zern
the snapshot of googletest and the test files themselves are targeting c++11 currently; these warnings are supported by recent versions of clang Change-Id: I5d36b3bd4058ba1610f0c8b27cad27aadee85939
2022-02-10support visual studio 2022 (vs17)Gregor Jasny
Change-Id: I8380283d09b0c90183f224399f953dcc527181c5
2022-01-28libvpx[loongarch]: Add loongarch support.Jin Bo
LSX and LASX are enabled by default if compiler supports them. Bug: webm:1754 Change-Id: Ic36b113bc4313c50e9d2bbab91199b3aa46d00dc
2021-12-02clear -Wextra-semi/-Wextra-semi-stmt warningsJames Zern
Bug: chromium:1257449 Change-Id: Ia9aafccc09b611521d4a7aedfe3723393a840c62
2021-11-17MacOS 12 is darwin21Johann
Remove -mmacosx-version-min. The library does not use any calls which are affected by the platform version. There is also no version 10.16 as it went from 10.15 to 11 and now to 12. At some point it may be good to clarify that the bare -darwin- target is for iOS and the -darwinN- targets are for macOS. Change-Id: I2fd5f7cae2637905acf3ab77bfddfbe367abbb68
2021-11-02tools_common.h: add VPX_TOOLS_FORMAT_PRINTFJames Zern
and use it to set the format attribute for printf like functions. this allows the examples to be built with -Wformat-nonliteral without producing warnings. Bug: webm:1744 Change-Id: I26b4c41c9a42790053b1ae0e4a678af8f2cd1d82 Fixed: webm:1744
2021-03-04Use -std=gnu++11 instead of -std=c++11Jerome Jiang
Cygwin and msys2 have stricter compliance requirement over standard c headers. Bug: webm:1708 Change-Id: I676b1227b9dd304149e50016468df0f057c6a78f
2020-09-25configure: add darwin20 supportJames Zern
this release will have arm64 and x86_64 support. in the future it might be useful to move to mac/iphone targets to help disambiguate arm64-darwin-gcc and arm64-darwin20-gcc. Change-Id: I1f8b145303204af316955822f5e8bab51c47f353
2020-05-08Fix mac build with vp9 ratectrl interfaceJerome Jiang
Add -std=c++11 for darwin build. Change-Id: I760d4f7096bc33520c02b2cd7000fed9ac6cdd90
2020-03-31auto-detect darwin19Johann
Change-Id: I3912c79d0f0f7a65fc753ae29bb10cdcac76878a
2020-03-13vpx_codec_enc_config_default: rm unnecessary loopJames Zern
quiets -Wunreachable-code-loop-increment, present since: e57f388bc vpx_codec_enc_config_default: disable 'usage' as g_usage was never supported for vp8/9 this was always a single iteration. if additional usages are added in the future similar to av1 this can be restored. Bug: b/150166387 Change-Id: Ic6f0985829e87694de8b5e0340cffa6c451ed1c2
2019-11-06Merge changes I341bd674,Ia9a0d71d,I71c1f906,I2e36e07c,I94ee2e85, ...Angie Chiang
* changes: Refactor check_initial_width Move noise_sensitivity to set_encoder_config Remove extra function calls in check_initial_width Move init_ref_frame_bufs to vp9_create_compressor Remove bits_left update in encoder_encode() Add vp9_get_encoder_config / vp9_get_frame_info vp9_get_coding_frame_num() Make [min/max]_gf_interval static under rate_ctrl Add rate_ctrl flag
2019-10-29Add rate_ctrl flagangiebird
BDRate Changes (negative means improvement) lowres: 0.565% midres: 0.361% lowres: 0.233% ugc360: -0.242% Make gop size independent from coding results Change-Id: I1f54c48b12dc45ee5162ca2527a877c1610528bd
2019-10-29support visual studio 2019 (vs16)Johann
Fixed: 1633 Change-Id: I7dd2b4873aeb548c7f9ebf7025baf15a8e65c68f
2019-10-23add darwin18 targetJohann
Fix autodetection on MacOS 10.14. Without this it defaults to generic-gnu Change-Id: I19cd4a9f2fb106dff16ab5e38821a5f374add59c
2019-06-04configure: test -Wno-* flags used with libyuvJames Zern
with g++ this avoids: command line option ‘-Wno-missing-prototypes’ is valid for C/ObjC but not for C++ the flag is necessary with clang. BUG=webm:1584 Change-Id: I250c76483302d913999e5f9e0d09ee6449b052df
2019-06-03configure: enable -Wmissing-declarations for more filesJames Zern
avoid using it with third_party/libyuv as that still requires some work. BUG=webm:1584 Change-Id: Ib73136b22c89d927b112364e19d725c51768bbb7
2019-05-06Add mismatch_debug toolAngie Chiang
Change-Id: I045b4cf625d428109688303ced5433d824df2790
2019-05-06android: do not attempt standalone buildsJohann
arm builds require too many tweaks to keep up with changes to the ndk. Recommend ndk-build instead. Update documentation and drop --sdk-path references. If --enable-external-build is used instead we do not need the compiler path. BUG=webm:1622 Change-Id: Id024345afd7af988321f8f97ebab19c425cb0493
2019-04-26Add bistream_debug toolAngie Chiang
Change-Id: I339899cff65c7ef563f9411f2d7af9a32a08a705
2019-03-04add -Wmissing-prototypesJohann
clang treats -Wmissing-declarations differently than gcc. This provides similar coverage for clang. Fix vpx_clear_system_state() warning on 32bit builds: note: this declaration is not a prototype; add 'void' to make it a prototype for a zero-parameter function Change-Id: I5a424bc38d47c0a3dc751d65c1efea5733907785
2019-02-19Disable encoder builds when checking coeff rangesYaowu Xu
BUG=webm:1031 Change-Id: I28f4e8cdec170393b2d22cd8cb0b73a32204e09c
2019-02-11vp9: ML var partition as speed feature & cleanup.Jerome Jiang
Remove it from runtime flag. Add new struct for rd ml partition. BUG=webm:1599 Change-Id: I883edbba83c65b7e557b8832419e212cffc85997
2019-02-05enforce some c89 restrictionsJohann
Block "for (int i;;)" style declarations. Use --std=gnu89 to avoid enforcing c89-style comments. Change-Id: Ia7d1405eac647d04e92513c047773695e8d7dc6e
2019-01-24add -Wmissing-declarationsJohann
This is useful for catching functions which should be static and instances where the relevant rtcd file was not included. BUG=webm:1584 Change-Id: Ied395847a664eedce59e8ed5180bd16d059ab0ac
2018-12-07apply -Wextra to third_party/Johann
googletest builds cleanly with -Wextra Remove comments about webm:1069. The vp8 issue is tracked in webm:1246. Change-Id: I8bbb01d34503cc9c342f5c3aa78e9476f72b94c2
2018-12-06Merge "configure: test -std=c++11 before enabling unit tests"James Zern
2018-12-05remove old visual studio supportJohann
Change-Id: I86682ef1aac1991e1ef6965e7aa298f6619bee13
2018-12-04configure: test -std=c++11 before enabling unit testsJames Zern
since: 77fa51003 Replace deprecated scoped_ptr with unique_ptr the unit tests require a c++11 capable compiler; future versions of googletest (1.9.x) will as well, so this change was inevitable if we wanted to keep the snapshot up to date. Change-Id: Id5c646bd10fae09e7b705b7d5fad1344f2216282
2018-11-16Work around ARM64 Windows SDK arm_neon.h quirkJon Kunkee
Since the Windows SDK has an ARM32-only arm_neon.h, files including it during ARM64 Windows builds need to be redirected to arm64_neon.h. Instead of editing many files to include ARM64-Windows-specific ifdef logic, this commit introduces an ARM64-Windows-specific version of arm_neon.h that performs the needed redirection and lands earlier in the header search path than the ARM32-only arm_neon.h. Change-Id: Idc63947a238ca1bd0c479d8f4ad68950487947c6
2018-11-15Add ARM64 Windows to configure scriptsJon Kunkee
In order to correctly configure for Windows 10 on ARM, this change adds a --target value arm64-win64-vs15 to ./configure and adds feature enable/disable logic for the new platform. This is merely sufficient for Chromium targeting ARM64 Windows. Bug: 893460 Change-Id: I46194286f63104bdf6ac57d719fdf1e5d5fa72c8
2018-09-28Add ml_var_partition experimentHui Su
Make partition decisions using machine learning models. The goal is to achieve better coding quality than the variance-based parititioning without much encoding speed loss. To enable this experiment, use --enable-ml-var-partition for config. When eanbled, the variance-based partitioning is replaced by this ML based partitioing for speed 6 and above in real time mode(except low resolution or high bit-depth). Current coding gains(average PSNR): speed 6 speed 7 speed 8 rtc 2.04% 2.65% 3.90% ytlivehr 3.11% 4.53% 11.57% hdres(rtc mode) 5.10% Further testing and tuning is needed to see if the speed and quality tradeoff is reasonable. Change-Id: I0da5a2fbc22c3261832b32920ee36d9b19d417af
2018-09-05Add non-greedy-mv experimental flagAngie Chiang
The experiment aims at making non-greedy mv search decision Change-Id: I3d77048ce106771fe003f250d07b7ddf0112536f
2018-08-30silence c++ abi warningJohann
Linking c++ libraries built with gcc 6 and gcc 7 on arm generates some warnings because of incompatibilities between those compilers: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77728 libvpx does not generate a c++ library. C++ is only used for examples and tests. Change-Id: I3d5d5ef3fb66743bff26a833d6641898975e9f71
2018-05-21Add Solaris to supported platformsNiveditha Rau
Change-Id: Ib49e1d79ba4c1c5d5147ab437f744a31429a059c
2018-05-19configure,ios: add missing c++11 checksJames Zern
+ bump ios minimum to 7.0; 6.0 does not have full c++11 support Change-Id: If838b036e7327fda514cd2e8156eeda122cf6c73
2018-05-18Revert "Revert "update libwebm""Johann
This reverts commit d32a55ffc40bba75ed8b770b282836a9d248d6a9. Use the correct 'check_add_cxxflags' invocation. Change-Id: I97d8062c9218b81a24268ec5998e847b1a0efeda
2018-05-15Merge "Revert "update libwebm""Johann Koenig
2018-05-15Revert "update libwebm"Johann Koenig
This reverts commit 595edb9669e27927726523c3f463d0eb6ea73f30. Incorrect check_add_cxxflags invocation prevented libwebm from building. Correcting it causes build failures on jenkins and mac. Original change's description: > update libwebm > > Clears "auto_ptr deprecated" warnings when building with > clang v6.0.0 > > Requires C++11 support. > > Change-Id: I5ea2744e73deeaa4e7b2599bacf0b6c9cf355a54 TBR=jzern@google.com,johannkoenig@google.com,builds@webmproject.org Change-Id: I7340d912a121de035997cbd8ad77a150ee38189a No-Presubmit: true No-Tree-Checks: true No-Try: true
2018-05-14Make a config time flagYaowu Xu
This commit replace a hard coded macro with a macro defined by a configure command. Change-Id: Ib31354d61865314ed43e2c429c72b4ef2c8fa2a7