summaryrefslogtreecommitdiff
path: root/libs.mk
AgeCommit message (Collapse)Author
2011-09-20Reduce grep match when generating offset files.Fritz Koenig
Search for the word EQU so that extraneous symbols are not matched. Change-Id: Ice6c9ca886211e2ca8a2f5174bdd4103db5c4989
2011-08-12Generate libvpx_srcs.txt from current configurationJohn Koleszar
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
2011-08-03Fix building of static libs on universal-darwinJohn Koleszar
The static libs should not be built from sources during the top level of a universal build. This regression was introduced in commit 495b241fa6b03345baf2b2f39aa8c06c735fccc2, which made the static libs selectable under CONFIG_STATIC. Change-Id: I585167e17459877e0fa7fa19e1046c3703d91c97
2011-08-03Fix asm offsets generation for universal-darwin buildsJohn Koleszar
Added BUILD_PFX to correct dependencies. Change-Id: Ia07602bd98ef2253242b1bd66ef05e3b1e64ba7d
2011-08-01include the arm header files in make distJohann
Change-Id: Ibcf5b4b14153f65ce1b53c3bfba87ad2feb17bbd
2011-07-29install asm_offsets.hJohn Koleszar
Ensure vpx_ports/asm_offsets.h is installed with make dist Change-Id: If9f32273fff975d60de1583b039dbbce8a7ccd27
2011-07-25configure: add --enable-static optionJames Zern
Fixes issue #62. Change-Id: I0567cf7897c0942666c19b3231c8c3b8e9c3e7cc
2011-06-22Fix parallel installAlexis Ballier
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
2011-06-14Update -linux-rvct targetsTero Rintaluoma
- 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
2011-06-10Fix make clean for asm offset filesTero Rintaluoma
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
2011-06-08use GCC inline magicJohann
Better fix for #326. ICC happens to support the inline magic Change-Id: Ic367eea608c88d89475cb7b05d73500d2a1bc42b
2011-06-08Revert "Use shared object files for ELF"Johann
Broke RVCT. New magic coming for ICC. Stay tuned! This reverts commit c73eb2ffff674e4e9fa7d5209d531aeec6ac5edd
2011-06-06Use shared object files for ELFJohann
Fixes #326 Change-Id: I5f2a4257430ef62f674190acefd43a0474821288
2011-03-30Generate a vpx.pc file for pkg-config.Ralph Giles
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
2011-03-24use asm_offsets with vp8_regular_quantize_b_sse2Johann
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
2011-03-10obj_int_extract for Visual StudioJohann
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
2011-02-22purge wince configurationJohann
this has been broken since the initial release Change-Id: If0d4deb2de9f7d0c4c05641e2bbf9cc1bf11e171
2011-02-08clarify *_offsets.asm differencesJohann
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
2011-02-07move one of the offset filesJohann
common/arm/vpx_asm_offsets moves up a level. prepare for muxing with encoder/arm/vpx_vp8_enc_asm_offsets Change-Id: I89a04a5235447e66571995c9d9b4b6edcb038e24
2010-10-25Add runtime CPU detection support for ARM.Timothy B. Terriberry
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
2010-10-13Add processor dectection for x86.Fritz Koenig
Use cpuid to check the vendor string against known architectures. Change-Id: I3fbd7f73638d71857a0c4a44a6275eb295fb4cef
2010-09-09Use WebM in copyright notice for consistencyJohn Koleszar
Changes 'The VP8 project' to 'The WebM project', for consistency with other webmproject.org repositories. Fixes issue #97. Change-Id: I37c13ed5fbdb9d334ceef71c6350e9febed9bbba
2010-07-22msvs: fix install of codec sourcesJohn Koleszar
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
2010-06-29ARM WinCE VS8 build updateJames Zern
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
2010-06-18cosmetics: trim trailing whitespaceJohn Koleszar
When the license headers were updated, they accidentally contained trailing whitespace, so unfortunately we have to touch all the files again. Change-Id: I236c05fade06589e417179c0444cb39b09e4200d
2010-06-14VisualStudio projects: asm tool updatesJames Zern
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
2010-06-06Make shared object use extralibsLuca Barbato
this way -lm doesn't get ignored if additional LDFLAGS get passed from env Change-Id: Ie630369ae6ed2780377c35aa2726e759d527bb50
2010-06-05shared library support (.so)John Koleszar
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
2010-06-04LICENSE: update with latest textJohn Koleszar
Change-Id: Ieebea089095d9073b3a94932791099f614ce120c
2010-05-27configure: support --prefix, --libdirJohn Koleszar
Support --prefix, --libdir as a conventional way of specifying the default installation directories. libdir is required to be a subdirectory of prefix at this time. Change-Id: If45d9e3129efcde83c05b7766accc9017988e715
2010-05-24install includes in DIST_DIR/include/vpx, move vpx_codec/ to vpx/John Koleszar
This renames the vpx_codec/ directory to vpx/, to allow applications to more consistently reference these includes with the vpx/ prefix. This allows the includes to be installed in /usr/local/include/vpx rather than polluting the system includes directory with an excessive number of includes. Change-Id: I7b0652a20543d93f38f421c60b0bbccde4d61b4f
2010-05-21configure: remove HAVE_CONFIG_HJohn Koleszar
This doesn't play well with autotools, and the preprocessor magic is confusing and unhelpful in the vp8-only context. Change-Id: I2fcb57e6eb7876ecb58509da608dc21f26077ff1
2010-05-18Initial WebM releaseJohn Koleszar