force this to be created before any other .S files. this change
additionally removes the file from the source list as it doesn't need to
be compiled on its own.
Change-Id: I6b4cd56ef6059d08f75f06fb749cddf76e0e165e
fixes reloc errors like:
R_X86_64_PC32
vpx_dsp/x86/deblock_sse2.o:
requires dynamic R_X86_64_PC32 reloc against 'vpx_rv' which may overflow
at runtime
Change-Id: I218fc0e7c8258197f890d395f335e5a4fe82dccb
use 'android/cpufeatures' rather than 'cpufeatures'; this matches the
documentation, fixes compilation with r12b/r13 and still works with
older ndks.
Change-Id: I2f34233c164e6d4d46428f8905d5502cea4288a2
The matching on ads2gas_apple.pl is too liberal and catches
CONFIG_EXTERNAL_BUILD and CONFIG_INTERNAL_STATS because they have RN in
the names.
The RN renaming feature is not used in any existing assembly files. It
was used in some armv6 files but they were removed.
Change-Id: Ib65abf1947d3e89f0d1584e2a5de399d24008f95
vpx_config.asm and idct_neon.asm.S are required since:
3ae2597 idct,NEON: add a tran_low_t->s16 load adapter
Change-Id: If5959a25edb370dd7dcdca71c96e9a5aad0840ce
The flag was added because Apple clang and Chromium clang disagreed
for certain versions of instructions.
qsubaddx, qaddsubx, ldrneb and ldrneh were used in armv6 assembly
which was removed in d55724fae9
vqshrun was used in some neon assembly but superseded by
dcbfacbb98
.include was used for obj_int_extract/asm_offsets and removed in
6eec73a747
Change-Id: I32f4c9b536d0318482101c0b8e91e42b8f545f18
allows 'make test_libvpx', etc. some reworking of the makefiles would be
needed to avoid hard coding targets here.
Change-Id: I18982dbf691e7d36ab8bcf5934bab9340687b061
Force enable x86inc.asm when building for x86. Previously there were
compatibility issues so a flag was added to simplify disabling this
code.
The known issues have been resolved and x86inc.asm is the preferred
abstraction layer (over x86_abi_support.asm).
BUG=b:29583530
Change-Id: Ib935e97b37ffb22d7af72ba0f04564ae6280f1fd
Use quotes whenever possible and {} always for variables.
Replace multiple set_all calls with *able_feature().
Change-Id: If579d3f718bd4133cf1592b4554a8ed00cf9f2d3
Allows building simple targets with sane default flags.
For example, using the Android arm64 toolchain from the NDK:
https://developer.android.com/ndk/guides/standalone_toolchain.html
./build/tools/make-standalone-toolchain.sh --arch=arm64 \
--platform=android-24 --install-dir=/tmp/arm64
CROSS=/tmp/arm64/bin/aarch64-linux-android- \
~/libvpx/configure --target=arm64-linux-gcc --disable-multithread
BUG=webm:1143
Change-Id: I06f5a7564f5382cf1a4bad41aef4308566c53adf
development has moved to the nextgenv2 branch and a snapshot from here
was used to seed aomedia
BUG=b/29457125
Change-Id: Iedaca11ec7870fb3a4e50b2c9ea0c2b056a0d3c0
Each time a codec is enabled or disabled with the umbrella
--enable-vpN flag, set the encoder and decoder configurations as well.
This was done as a post-processing step but doing that lost the order of
the arguments.
BUG=webm:1205
Change-Id: Ic629bfdd06acc04bc5a7227309f36bba54dad8b1
The logic can be incorporated into configure.sh
Removes a dependency on ios-version.sh which was not part of DIST-SRCS
and removes a warning from 'make dist' sub builds:
../src/build/make/configure.sh: line 787:
../src/build/make/ios-version.sh: No such file or directory
Change-Id: Ic38314708eb278dd9d2a9769a670da32f6126637
Apple's version format specification is strictly checked on app
store submission, even for embedded frameworks:
http://apple.co/1WgelY1
The build version number should be a string comprised of
three non-negative, period-separated integers with the
first integer being greater than zero. The string should
only contain numeric (0-9) and period (.) characters.
So that's room for "1.5.0" but not for "1.5.0-906-g656f9c4".
The full version returned from 'version.sh --bare' is now
embedded under a 'VPXFullVersion' custom key in the Info.plist,
so it can still be extracted from the resulting framework.
Change-Id: If34a58d02e407379d1f1859fda533ef7f983170b
Many codes require -mstackrealign flags. Although -mstackrealign has
been already added to CFLAGS of some modules, SIGSEGV occurs in other
modules than those modules.
The best way may be to find causes and to fix them. However, we
cannot know those causes until SIGSEGV occur really. In addition, if
SIGSEGV occurs in other programs, it will be fatal.
So adding -mstackrealign flags to CFLAGS unconditionally is
reasonable.
Change-Id: I999ef597a6afe97f5e7cc7bffaa866537c3eedd2
Also allows use of --enable-shared when configuring for Mac OS X,
producing a bare .dylib.
Enabling the shared framework bumps the iOS deployment target to 8.0,
the minimum required to support dynamic framework deployment in apps.
When not using --enable-shared, a static library for iOS 6.0+ will still
be built.
Minimum version settings have been moved into ios-version.sh so they
can be updated in a single place.
As with the static build, unless header search paths are manually
tweaked, users must add a VPX prefix on includes, such as:
#include <VPX/vpx/vpx_decoder.h>
A module map for headers is not yet included as inttypes.h is not
modular; this means that VPX cannot be used directly in Swift code,
but can still be pulled in through an Objective-C wrapper.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1092
Change-Id: I28fb06ce65e48ed167a88c14a7bfb2861989317e
When using git submodules, .git may be a file instead of a directory.
The -d test was failing in that case; switched to -e.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1215
Change-Id: Iedf0e92bfeb003b28a415945dc729e6ce58c4fe4
- iOS SDKs no longer ship with armv6 support.
- Our minimum iOS version means all target devices have neon.
- Remove armv6 darwin LD workaround.
- This removes a TODO.
Change-Id: I2fcb5b82c96213364275475be021c7dd8459d5c0
arm-none-linux-gnueabi- is an anachronism and makes building on native
arm platforms more difficult. further, many distros include alternative
cross compilers, e.g., arm-linux-gnueabihf-, so the choice is best left
up to the user.
Change-Id: Id8aaf820ed112b85db2b8518d0e9d8abee1ad85c
avoids picking up defaults if CROSS is forcibly set empty as in:
$ CROSS= ./configure ...
BUG=1121
Change-Id: I6af91959288dede01efe3e5945698ab249eb6ec3