summaryrefslogtreecommitdiff
path: root/build
AgeCommit message (Collapse)Author
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-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-10-09Android.mk: import LICENSE indicators from AOSPJames Zern
https://android-review.googlesource.com/c/platform/external/libvpx/+/1588942 https://android.googlesource.com/platform/external/libvpx/+/099828b5c770ef8630741721be4b6c25a8394204 Change-Id: Ieca1c882f82bcbc7546944b43af7fab358f925d2
2021-03-17Msvc builds convert to windows path w/msys envAdam B. Goode
Bug: webm:1720 Change-Id: I56689ad408f8086c511e1711dfa9c8d404727b2e
2021-03-03override assembler with --as option on msvsJerome Jiang
Bug: webm:1709 Change-Id: I962a64c00042fe95cc1cd845b187f71ad6cfd1b7
2020-12-11configure: add darwin20 cross-compile supportGregor Jasny
Change-Id: I91c0e832a6e76172397e97413329fd43edc81c78
2020-09-29configure.sh: fix arm64-darwin-gcc matchJames Zern
after: 979e27c97 configure: add darwin20 support make the condition more specific by including the trailing -gcc (-*) Change-Id: I78f481b6c5ad9137e6b6973198e8671e806ee82c
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-08-19Escape number sign in MakefilesDaniel Sommermann
Number signs are handled differently in Makefile variable parsing as compared to bash variable parsing. See this demo: ``` $ cat Makefile A=foo#bar B='foo#bar' C="foo#bar" D=foo\#bar E='foo\#bar' F="foo\#bar" $(info $(A)) $(info $(B)) $(info $(C)) $(info $(D)) $(info $(E)) $(info $(F)) $ make foo 'foo "foo foo#bar 'foo#bar' "foo#bar" make: *** No targets. Stop. $ make -v GNU Make 4.2.1 ``` In other words, the `#` character is evaluated first when parsing Makefiles, causing the rest of the line to become a comment. The effect of this is that paths that contain embedded `#` symbols are not handled properly in the vpx build system. To test this change, clone vpx to a directory containing a `#` symbol and attempt a build. With this change, it worked for me on Fedora 31, however without the change the build failed. Change-Id: Iaee6383e2435049b680484cc5cefdea9f2d9df46
2020-08-19Refine MMI & MSA detection for mipsjinbo
1.Add compile check to probe the native ability of toolchain to decide whether a feature can be enabled. 2.Add runtime check to probe cpu supported features. MSA will be prefered if MSA and MMI are both supported. 3.You can configure and build as following commands: ./configure --cpu=loongson3a && make -j4 Change-Id: I057553216dbc79cfaba9c691d5f4cdab144e1123
2020-03-31auto-detect darwin19Johann
Change-Id: I3912c79d0f0f7a65fc753ae29bb10cdcac76878a
2019-12-06configure.sh,darwin: fix asm conv w/external buildJames Zern
always set asm_conversion_cmd as e.g., vpx_config.asm may still be generated with make when using --enable-external-build BUG=webm:1535 Change-Id: I120452d4e06580b67119aee8d0a710998ac87a7a
2019-10-31configure.sh,darwin: fix external_build checkJames Zern
disabled external_build will return an incorrect result for a value not explicitly set on the command line; use ! enabled instead. fixes ios build Change-Id: I48dda3a06731bc9809c2266880797e1779e4c01c
2019-10-30darwin: disable compiler checksJohann
When configuring with --enable-external-build the .mk files are not expected to work. This avoids some spurious warnings when configuring for darwin targets on other platforms. Fixed: webm:1535 Change-Id: Idac2b397db1b595ba7ea9231c4eb835b6013abdc
2019-10-29support visual studio 2019 (vs16)Johann
Fixed: 1633 Change-Id: I7dd2b4873aeb548c7f9ebf7025baf15a8e65c68f
2019-10-29remove old visual studio remnantsJohann
The oldest supported Visual Studio version has been vs14 since 539dc7649f67ec10097b3c8eb2c0073f0d0571ce. Clean up scripts and remove dead code. Change-Id: I6db5b053a55d7656275d3d48e35d672c8ce22067
2019-10-23simplify darwin autodetectionJohann
Use sed to extract tgt_os Change-Id: I2f7cd290102a2b591c6ae6e40766918b55abff10
2019-10-23add darwin18 targetJohann
Fix autodetection on MacOS 10.14. Without this it defaults to generic-gnu Change-Id: I19cd4a9f2fb106dff16ab5e38821a5f374add59c
2019-09-30namespace ARCH_* definesJames Zern
this prevents redefinition warnings if a toolchain sets one BUG=b/117240165 Change-Id: Ib5d8c303cd05b4dbcc8d42c71ecfcba8f6d7b90c
2019-06-20vsx: disable on all buildsJohann
The previous change to disable some vsx functions did not clear the test failures. Disable vsx by default until it is investigated and fixed. BUG=webm:1522 Change-Id: I8ba2e7261ea3eee5022832da7e4a22bf8daa0996
2019-06-10ppc: disable vsx optimizations with hbdJohann
vsx optimizations do not support 32 bit tran_low_t values. BUG=webm:1563 Change-Id: I9e6348078f6e4855acfd381133eb840a435b7f81
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-05-08Merge "android: clarify RTCD usage"Johann Koenig
2019-05-06android: clarify RTCD usageJohann
Note that when using --disable-runtime-cpu-detect the developer must keep in mind what devices the library will be run on. BUG=webm:1623 Change-Id: I0359e226bb678f8e5145bb30cd1cefc7e30c6c79
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-23remove WIDE_REFERENCE definitionJohann
The last usage was removed in 2011: https://chromium.googlesource.com/webm/libvpx/+/cbf923b12cec2fe7ceea0b94091d64953e56b1fe%5E%21/#F33 Change-Id: I6e837e6f1e55eeea6bbeb3159ce6ddf861bcbd72
2019-04-23remove ARCHITECTURE definitionJohann
In the distant past this was used to distinguish between armv5/6/7 targets when building the assembly files. The project has not supported armv5/6 for a long time. BUG=webm:1623 Change-Id: Ibec70e6624b651df0fa6f882ab6f201dc73e92e2
2019-01-23Fix Windows SDK and VS version checksJon Kunkee
If WindowsTargetPlatformVersion is not set, the Visual Studio 15 (2017) toolchain assumes that Windows 8.1 is being targeted. Since ARM64 support is only present and unlocked in Windows SDKs >= Windows 10 1809, set that SDK as required in the vcxproj files. Note that this will not be an issue in Visual Studio 16 or greater, hence the -eq major version check. https://developercommunity.visualstudio.com/content/problem/128836/windowstargetplatformversion-to-use-the-latest-ava.html Bug: chromium:893460 Change-Id: Ib069501ad384d91349b1f635722dedd31a4edd97
2019-01-17ads2gas: remove DO1STROUNDINGJohann
Change-Id: Iacd1ad5673c71d350cad235e504da0e066dfc4a0
2018-12-05remove old visual studio supportJohann
Change-Id: I86682ef1aac1991e1ef6965e7aa298f6619bee13
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 support to VS project generationJon Kunkee
Windows builds can use msbuild.exe to build libvpx through a set of generated Visual Studio project files. This commit adds awareness of ARM64 Windows to this process by adding ARM64 configurations and setting msbuild properties to consume the right SDK version. Change-Id: I1bbc01cbe7be3d53c4e1af6cd96c6e4170aa4915
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-08-29rtcd: fix --required flagJohann
Always parse --required options. Previously they were only parsed for x86_64. Make entries passed in additive if there are existing required flags. Mark 'neon' as required for armv8/aarch64. BUG=chromium:876548 Change-Id: I55c6aad4536a9d8423e223e5616f3aa26d6b2941
2018-07-28arm: Consistently use unified syntax for asmMartin Storsjo
The ".syntax unified" directives in a few source files aren't valid ADS assembly directives, and they break compilation for windows, since ads2armasm_ms.pl doesn't handle them. Explicity add them via ads2gas.pl and ads2gas_apple.pl instead, and tweak one instruction to be valid unified syntax. Change-Id: I37f1709f163d11474597161fe02eb433859cb9b8
2018-07-11shell tests: Drop incorrect uses of readonly.Tom Finegan
Change-Id: I0a01e1a7c04bbc026a1db0ba90d516548a1eaaed
2018-06-27Support Power8/Power9 tuningLuca Barbato
Change-Id: I50b32f37f77224ebf0470545152c83ae2ed3cfa3
2018-06-21third_party/libyuv: update to a37e7bfeJohann
Fix mingw builds for x86_32 by updating past: https://chromium.googlesource.com/libyuv/libyuv/+/8fa02df3c0591754958a50 Pick up upstream fixes for clang 5 builds with --disable-optimizations. Disable libyuv by default when building for msa. We have not been able to update libyuv because of build issues with mips. This can be revisited when we update the mips compiler used in Jenkins. BUG=webm:1509,libyuv:793,webm:1514,webm:1518 Change-Id: Id0b9947cb5e0aa74f2f74746524ab6ff2d48796f
2018-06-15Clean up avx512 compiler support test.Tom Finegan
Moves the check into a function, check_gcc_avx512_compiles, that behaves somewhat similarly to check_gcc_machine_options. Change-Id: I2bef3ddd98e636eef12d9d5e548c43282fac7826
2018-06-13Fix avx512 related MSVC build failure.Tom Finegan
Check GCC specific AVX512 flags only when GCC is enabled. Change-Id: I15dc2a0dbf8bce37f4364fedfd34a0a34882104b
2018-06-07Add avx512 compile test.Tom Finegan
Some compiler releases allow the -mavx512f arg without actually implementing support. Test for this situation, and disable avx512 when it is detected by configure. BUG=webm:1536 Change-Id: I63952153bb4b24aa9f25267ed47a0fe845d61f8b
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-18iosbuild.sh: portable sed usageJohann
There is no convenient way to have both gnu and bsd sed do in-place processing. Change-Id: I95f2a378d5c1bd95debb446317cc18ad79835e49
2018-05-11Remove ppc64 (big endian) from configureLuc Trudeau
Remove big endian PowerPC 64 from configure, as this build is problematic and not supported. PowerPC 64 will be limited to little endian (ppc64le). BUG=webm:1525 BUG=webm:1508 Change-Id: Id6a86d5913192549e03ac8f77879ba7526b752c8
2018-05-04configure: Disable pthread_h if linking failedMartin Storsjo
When doing both check_header and check_lib, the check_header call will already enable pthread_h if the header was found. This was overlooked when the pthread linking check was amended into a header check and a separate linking check in 9b7d4cce635e. This brings back the same result as the original check in 38dc27cc6. Change-Id: I0efb38f5780f7c79e2eb2b14290d6094096ea222
2018-04-19configure: Use both check_header and check_lib for pthreadsMartin Storsjo
check_lib can be a stub that always returns true - make sure to still use check_headers as before 38dc27cc6. Change-Id: I5d471de56b16c015a0b686fa6c6caefa35bb89b4
2018-04-18Merge "configure: Test linking pthreads before using it"Martin Storsjö
2018-04-14configure: Test linking pthreads before using itMartin Storsjo
This avoids enabling pthreads if only pthreads-w32 is available. pthreads-w32 provides pthread.h but has a link library with a different name (libpthreadGC2.a). Generally, always using win32 threads when on windows would be sensible. However, libstdc++ can be configured to use pthreads (winpthreads), and in these cases, standard C++ headers can pollute the namespace with pthreads declarations, which break the win32 threads headers that declare similar symbols - leading us to prefer pthreads on windows whenever available (see d167a1ae and bug 1132). Change-Id: Icd668ccdaf3aeabb7fa4e713e040ef3d67546f00
2018-04-04ios configure: quiet shell warningJohann
Generating file lists on a non-mac with: --target=x86-iphonsimulator-gcc --enable-external-build the lack of xcrun would cause a warning to print: libvpx/build/make/configure.sh: line 1397: [: : integer expression expected Change-Id: I4623b6c5b65296bc71986cd042823f4be9427b42