- 22 May, 2012 - 1 commit
-
-
John Koleszar authored
Use CXX rather than assuming g++ to invoke the compiler. Also introduce separate CXXFLAGS, as certain CFLAGS we enable by default cause warnings with g++. Change-Id: Ia2f40ef27c93e45c971d070cc58bdcde9da2ac7c
-
- 04 May, 2012 - 1 commit
-
-
John Koleszar authored
Remove a bunch of compatibility code dating back to before the initial libvpx release. Change-Id: Ie50b81e7d665955bec3d692cd6521c9583e85ca3
-
- 02 May, 2012 - 1 commit
-
-
James Berry authored
update unit tests to support --enable-static-msvcrt Change-Id: I7e6e9ef2a0a8e2054076c8debe35ee317e9ab2e3
-
- 20 Apr, 2012 - 1 commit
-
-
Takanori MATSUURA authored
Change-Id: Ibba635696e8c23086e5d3c0e8452ab97c460d7d7
-
- 16 Mar, 2012 - 1 commit
-
-
Johann authored
Universal builds create subdirectories for each target. Without BUILD_PFX we only generated one vpx_rtcd.h instead of one for each. Change-Id: I1caed4e018c8865ffc8da15e434cae2b96154fb4
-
- 14 Mar, 2012 - 1 commit
-
-
Priit Laes authored
Change-Id: Ifb536403ef302b597864eae1d05aa9e2bb15d4c7
-
- 06 Mar, 2012 - 1 commit
-
-
Johann authored
build/make/version.sh requires CHANGELOG to generate vpx_version.h The file is already included when building the documentation. However, documentation is not build if doxygen/php are not present. This is necessary when using '--enable-install-srcs --enable-codec-srcs' and 'make dist' Change-Id: Icada883a056a4713d24934ea44e0f6969b68f9c2
-
- 17 Feb, 2012 - 1 commit
-
-
Johann authored
When compiling with -ggdb3 the output includes an extraneous EQU from vpx_ports/asm_offsets.h https://trac.macports.org/ticket/33285 Change-Id: Iba93ddafec414c152b87001a7542e7a894781231
-
- 15 Feb, 2012 - 1 commit
-
-
Fritz Koenig authored
Add a dependency so ndk-build will generate the needed vpx_rtcd.h file. Change-Id: I92c82e0996943dd0403c9956e1ba60e92e2837a9
-
- 30 Jan, 2012 - 1 commit
-
-
John Koleszar authored
This is a proof of concept RTCD implementation to replace the current system of nested includes, prototypes, INVOKE macros, etc. Currently only the decoder specific functions are implemented in the new system. Additional functions will be added in subsequent commits. Overview: RTCD "functions" are implemented as either a global function pointer or a macro (when only one eligible specialization available). Functions which have RTCD specializations are listed using a simple DSL identifying the function's base name, its prototype, and the architecture extensions that specializations are available for. Advantages over the old system: - No INVOKE macros. A call to an RTCD function looks like an ordinary function call. - No need to pass vtables around. - If there is only one eligible function to call, the function is called directly, rather than indirecting through a function pointer. - Supports the notion of "required" extensions, so in combination with the above, on x86_64 if the best function available is sse2 or lower it will be called directly, since all x86_64 platforms implement sse2. - Elides all references to functions which will never be called, which could reduce binary size. For example if sse2 is required and there are both mmx and sse2 implementations of a certain function, the code will have no link time references to the mmx code. - Significantly easier to add a new function, just one file to edit. Disadvantages: - Requires global writable data (though this is not a new requirement) - 1 new generated source file. Change-Id: Iae6edab65315f79c168485c96872641c5aa09d55
-
- 05 Nov, 2011 - 1 commit
-
-
James Zern authored
all of googletest import (0ab00a22) was marked executable Change-Id: Id7b7ee03efc21ab998bb03349bd91644e8af25da
-
- 04 Nov, 2011 - 1 commit
-
-
James Berry authored
Change-Id: I0ab00a22fbea1f38c96ef92ef7eaeda782c0c8d3
-
- 20 Sep, 2011 - 1 commit
-
-
Fritz Koenig authored
Search for the word EQU so that extraneous symbols are not matched. Change-Id: Ice6c9ca886211e2ca8a2f5174bdd4103db5c4989
-
- 12 Aug, 2011 - 1 commit
-
-
John Koleszar authored
To get a list of files that the libvpx library depends on in the current configuration, run: $ make target=libs libvpx_srcs.txt Change-Id: I68a69648ecf212f0fe29c325297728ac2a9393d9
-
- 03 Aug, 2011 - 2 commits
-
-
John Koleszar authored
The static libs should not be built from sources during the top level of a universal build. This regression was introduced in commit 495b241f, which made the static libs selectable under CONFIG_STATIC. Change-Id: I585167e17459877e0fa7fa19e1046c3703d91c97
-
John Koleszar authored
Added BUILD_PFX to correct dependencies. Change-Id: Ia07602bd98ef2253242b1bd66ef05e3b1e64ba7d
-
- 01 Aug, 2011 - 1 commit
-
-
Johann authored
Change-Id: Ibcf5b4b14153f65ce1b53c3bfba87ad2feb17bbd
-
- 29 Jul, 2011 - 1 commit
-
-
John Koleszar authored
Ensure vpx_ports/asm_offsets.h is installed with make dist Change-Id: If9f32273fff975d60de1583b039dbbce8a7ccd27
-
- 25 Jul, 2011 - 1 commit
-
-
James Zern authored
Fixes issue #62. Change-Id: I0567cf7897c0942666c19b3231c8c3b8e9c3e7cc
-
- 22 Jun, 2011 - 1 commit
-
-
Alexis Ballier authored
Require the destination to be present before trying to create the symlink. See: http://bugs.gentoo.org/show_bug.cgi?id=323805 Change-Id: I14ed4a9792dedc289885a9a43bc5a86cb792206d
-
- 14 Jun, 2011 - 1 commit
-
-
Tero Rintaluoma authored
- Updated -linux-rvct targets to support RVDS 4.0 and later. - Changed optimization flag to -Otime because -O3 ruined performance for RVCT linux targets. - Added support for --enable-small for RVCT - RVCT created library should be able to link with GCC - Supports building shared linux libraries Change-Id: Ic62589950d86c3420fd4d908b8efb870806d1233
-
- 10 Jun, 2011 - 1 commit
-
-
Tero Rintaluoma authored
Automatically created assembly offset files added to CLEAN-OBJS list for proper cleanup. This will fix following build error: 1) Build for the workstation ./conigure make make clean 2) Build for ARM platform ./configure --target=armv7-linux-gcc make ==> this will fail because it uses old asm_*_offset.asm files Change-Id: Id5275c470390ca81b8db086a15ad75af39b80703
-
- 08 Jun, 2011 - 2 commits
-
-
Johann authored
Better fix for #326. ICC happens to support the inline magic Change-Id: Ic367eea608c88d89475cb7b05d73500d2a1bc42b
-
- 06 Jun, 2011 - 1 commit
-
-
Johann authored
Fixes #326 Change-Id: I5f2a4257430ef62f674190acefd43a0474821288
-
- 31 Mar, 2011 - 1 commit
-
-
Ralph Giles authored
Rules are added to libs.mk to generate a vpx.pc, which is installed as pkgconfig/vpx.pc under the target library directory. This also requires the install path prefix be exported directly in config.mk. Some systems use a tool called pkg-config to query information about intalled libraries or other resources, based on database files provided by the packages themselves at install time. Providing such a file for libvpx simplifies integration with other build systems, and provides an easy avenue for developers to test against their own builds of the library. Change-Id: I4e32a8fbb53fc331aa95eb207c63dd70a76d18ed
-
- 24 Mar, 2011 - 1 commit
-
-
Johann authored
remove helper function and avoid shadowing all the arguments to the stack on 64bit systems when running with --good --cpu-used=0: ~2% on linux x86 and x86_64 ~2% on win32 x86 msys and visual studio more on darwin10 x86_64 significantly more on x86_64-win64-vs9 Change-Id: Ib7be12edf511fbf2922f191afd5b33b19a0c4ae6
-
- 10 Mar, 2011 - 1 commit
-
-
Johann authored
Enable extraction of assembly offsets from compiled examples in MSVS. This will allow us to remove some stub functions from x86 assembly since we will be able to reliably determine structure offsets at compile time. see ARM code for examples: vp8/encoder/arm/armv5te/ vpx_scale/arm/neon/ Change-Id: I1852dc6b56ede0bf1dddb5552196222a7c6a902f
-
- 22 Feb, 2011 - 1 commit
-
-
Johann authored
this has been broken since the initial release Change-Id: If0d4deb2de9f7d0c4c05641e2bbf9cc1bf11e171
-
- 08 Feb, 2011 - 1 commit
-
-
Johann authored
it's difficult to mux the *_offsets.c files because of header conflicts. make three instead, name them consistently and partititon the contents to allow building them as required. Change-Id: I8f9768c09279f934f44b6c5b0ec363f7943bb796
-
- 07 Feb, 2011 - 1 commit
-
-
Johann authored
common/arm/vpx_asm_offsets moves up a level. prepare for muxing with encoder/arm/vpx_vp8_enc_asm_offsets Change-Id: I89a04a5235447e66571995c9d9b4b6edcb038e24
-
- 25 Oct, 2010 - 1 commit
-
-
Timothy B. Terriberry authored
The primary goal is to allow a binary to be built which supports NEON, but can fall back to non-NEON routines, since some Android devices do not have NEON, even if they are otherwise ARMv7 (e.g., Tegra). The configure-generated flags HAVE_ARMV7, etc., are used to decide which versions of each function to build, and when CONFIG_RUNTIME_CPU_DETECT is enabled, the correct version is chosen at run time. In order for this to work, the CFLAGS must be set to something appropriate (e.g., without -mfpu=neon for ARMv7, and with appropriate -march and -mcpu for even earlier configurations), or the native C code will not be able to run. The ASFLAGS must remain set for the most advanced instruction set required at build time, since the ARM assembler will refuse to emit them otherwise. I have not attempted to make any changes to configure to do this automatically. Doing so will probably require the addition of new configure options. Many of the hooks for RTCD on ARM were already there, but a lot of the code had bit-rotted, and a good deal of the ARM-specific code is not integrated into the RTCD structs at all. I did not try to resolve the latter, merely to add the minimal amount of protection around them to allow RTCD to work. Those functions that were called based on an ifdef at the calling site were expanded to check the RTCD flags at that site, but they should be added to an RTCD struct somewhere in the future. The functions invoked with global function pointers still are, but these should be moved into an RTCD struct for thread safety (I believe every platform currently supported has atomic pointer stores, but this is not guaranteed). The encoder's boolhuff functions did not even have _c and armv7 suffixes, and the correct version was resolved at link time. The token packing functions did have appropriate suffixes, but the version was selected with a define, with no associated RTCD struct. However, for both of these, the only armv7 instruction they actually used was rbit, and this was completely superfluous, so I reworked them to avoid it. The only non-ARMv4 instruction remaining in them is clz, which is ARMv5 (not even ARMv5TE is required). Considering that there are no ARM-specific configs which are not at least ARMv5TE, I did not try to detect these at runtime, and simply enable them for ARMv5 and above. Finally, the NEON register saving code was completely non-reentrant, since it saved the registers to a global, static variable. I moved the storage for this onto the stack. A single binary built with this code was tested on an ARM11 (ARMv6) and a Cortex A8 (ARMv7 w/NEON), for both the encoder and decoder, and produced identical output, while using the correct accelerated functions on each. I did not test on any earlier processors. Change-Id: I45cbd63a614f4554c3b325c45d46c0806f009eaa
-
- 13 Oct, 2010 - 1 commit
-
-
Fritz Koenig authored
Use cpuid to check the vendor string against known architectures. Change-Id: I3fbd7f73638d71857a0c4a44a6275eb295fb4cef
-
- 09 Sep, 2010 - 1 commit
-
-
John Koleszar authored
Changes 'The VP8 project' to 'The WebM project', for consistency with other webmproject.org repositories. Fixes issue #97. Change-Id: I37c13ed5fbdb9d334ceef71c6350e9febed9bbba
-
- 22 Jul, 2010 - 1 commit
-
-
John Koleszar authored
The libs.mk file must be installed for the vpx.vcproj file to be generated. It was being installed, but not in the src/ directory as expected. Also missed include files yasm.rules, quantize_x86.h Change-Id: Ic1a6f836e953bfc954d6e42a18c102a0114821eb
-
- 29 Jun, 2010 - 1 commit
-
-
James Zern authored
The generated project is vpx.vcproj, change vpx_decoder references to match. Remove .rules file dependency as it will be pulled from the source tree. Change-Id: I679db2748b37adae3bafd764dba8575fc3abde72
-
- 18 Jun, 2010 - 1 commit
-
-
John Koleszar authored
When the license headers were updated, they accidentally contained trailing whitespace, so unfortunately we have to touch all the files again. Change-Id: I236c05fade06589e417179c0444cb39b09e4200d
-
- 14 Jun, 2010 - 1 commit
-
-
James Zern authored
vs8 - pull yasm.rules [1] into the source tree to avoid need to install file into VC/VCProjectDefaults - reference same w/ToolFile & RelativePath - update arm branch to match vs7: - quote source file paths passed to yasm [1]: http://www.tortall.net/svn/yasm/trunk/yasm/Mkfiles/vc9/yasm.rules@2271 Change-Id: I52b801496340cd7b1d0023d12afbc04624ecefc3
-
- 06 Jun, 2010 - 1 commit
-
-
Luca Barbato authored
this way -lm doesn't get ignored if additional LDFLAGS get passed from env Change-Id: Ie630369ae6ed2780377c35aa2726e759d527bb50
-
- 05 Jun, 2010 - 1 commit
-
-
John Koleszar authored
This patch adds support for building shared libraries when configured with the --enable-shared switch. Building DLLs would require more invasive changes to the sample utilities than I want to make in this patch, since on Windows you can't use the address of an imported symbol in a static initializer. The best way to work around this is proably to build the codec interface mapping table with an init() function, but dll support is of questionable value anyway, since most windows users will probably use a media framework lib like webmdshow, which links this library in staticly. Change-Id: Iafb48900549b0c6b67f4a05d3b790b2643d026f4
-