Commit Graph

33 Commits

Author SHA1 Message Date
Johann
6eec73a747 Remove asm offset dependencies
The obj_int_extract code is no longer worth maintaining. It creates
significant issues when adapting for different build systems and no
longer offers as significant of a performance benefit due to
improvements in intrinsics.

Source files will remain until the various third-party builds are updated.

The neon fast quantizer has been moved to intrinsics. The armv6 version
has been removed because so few remaining targets require it.

Compilers and processors have improved significantly since the
pack_tokens code was written. The assembly is no longer faster than the
C code.

pack_tokens were the only optimizations for the armv5te targets so the targets
will be removed after the test infrastructure has been updated.

BUG=710

Change-Id: Ic785b167cd9f95eeff31c7c76b7b736c07fb30eb
2014-11-06 16:00:01 -08:00
James Zern
c5795d8f05 gen_msvs_(vcx)proj.sh: set yasm format explicitly
use win32/win64 instead of $(PlatformName) (Win32/x64) for compatibility
with yasm 1.3.0. both format types were available since at least 0.8.0

BUG=843

Change-Id: I7917620490d0663b118ff08b96d1e5dbccba3703
2014-08-22 15:28:40 -07:00
James Zern
0a0492611c gen_msvs_proj: fix in tree configure under cygwin
strip trailing '/' from paths, this is later converted to '\' which
causes execution errors for obj_int_extract/yasm. vs10+ wasn't affected
by this issue, but make the same change for consistency.

gen_msvs_proj:
+ add missing '"' to obj_int_extract call
  unlike gen_msvs_vcproj, the block is duplicated
  missed in: 1e3d9b9 build/msvs: fix builds in source dirs with spaces

Change-Id: I76208e6cdc66dc5a0a7ffa8aa1edbefe31e4b130
2014-06-16 14:32:06 -07:00
James Zern
b9a569da41 Merge "gen_msvs_*proj.sh: speed up file generation" 2014-06-07 12:51:31 -07:00
James Zern
78d0968e09 gen_msvs_*proj.sh: speed up file generation
execute fix_path once on the source file list rather than once per entry

Change-Id: Ibc8226e391b3028c1b0bcfeab83c790387c9fe23
2014-06-07 12:13:43 -07:00
James Zern
e0f416ce23 gen_msvs_*proj.sh: strip SRC_PATH_BARE from obj names
reduces the risk of exceeding msbuild command line length limits

Change-Id: I0e4d807f42c090a709a3dc365a02b929a3071688
2014-06-02 17:09:25 -07:00
James Zern
1e3d9b9e5d build/msvs: fix builds in source dirs with spaces
...when configured below the path containing spaces. configuring outside
the path containing spaces still won't work due to issues with the
makefiles, e.g.,
/path with spaces/git
/path with spaces/build1
/build2
configure/make in build1 will work, build2 will not

Change-Id: Ie4a1f313596d7457cadd67476ac1dbd3273ad46e
2014-06-02 16:02:43 -07:00
James Zern
092a20f0a6 gen_msvs_*proj.sh: factorize some functions
-> msvs_common.sh

Change-Id: Id4878805183c0ec11e5d681e4bf820b598b085f9
2014-04-24 15:53:13 -07:00
James Zern
a757a99c8e gen_msvs_proj.sh: support cygwin style paths
Change-Id: I674337a775651d7d9c9aa9fee755deaed11c104e
2014-04-23 12:29:45 -07:00
James Zern
99615be98d gen_msvs_*proj.sh: add 'cpp' as a source extension
Change-Id: I21cdaeea33a56dd4c0e38c36d01f338b1ab04c74
2014-04-03 12:27:29 -07:00
James Zern
6859d0f0d0 fix vs9 build after obj_int_extract changes
broken since:
1d3ca08 obj_int_extract.bat: Pass obj_int_extract.exe path to obj_int_extract.bat.

Change-Id: Ic3de9f8c2b604e3aa9b905e1bc0b578963e01a4a
2014-02-23 16:08:00 -08:00
James Zern
95c34c9053 gen_msvs_proj: add trailing \ to IntDir
older versions of visual studio did not include the trailing \. this
moves the objects to their intended location: the project subdirectory

Change-Id: I244479cdebf6b3f03bed6dbfca82e7fb4542f0de
2014-02-04 20:42:03 -08:00
James Zern
9718e708f3 msvc: set a more useful debug format
pdb vs. c7; works better with test_libvpx

Change-Id: I67d18e328dd8e7734d3710f3912e9b179d368a62
2013-07-09 17:28:22 -07:00
James Zern
5677b25b28 vs9 build: avoid deprecated /Wp64 flag
quiets a warning on every file; the preference is to use a 64-bit
compiler, which is readily available at and above this version.

Change-Id: I56e7eb569022e7148249d93fe386ad5ea0eee3fc
2013-06-14 19:54:12 -07:00
Yaowu Xu
9152f4851d remove yasm.rules
As we changed the scripts to compile asm files using customized command
for each file.

Change-Id: I975713f3d0cce2238de3ee3fe44e3227385f0c64
2012-11-16 11:09:26 -08:00
Yaowu Xu
a3384f00a3 changed asm obj output filenames in MSVC build
this commit changed the asm file compiling in MSVC to use individually
customized build command line with object filename specified for each
input file. This allows object filenames prefixed with path name, and
avoid name collision in link time

Change-Id: I996098643dcadc393af57035a04bef3877f45424
2012-11-15 10:46:38 -08:00
John Koleszar
a9c7597adc support building vp8 and vp9 into a single lib
Change-Id: Ib8f8a66c9fd31e508cdc9caa662192f38433aa3d
2012-11-15 10:46:17 -08:00
Jim Bankoski
1b16e74813 Dll build of libvpx
Change-Id: I74e50b4dfbe73eb98e1dce1695a9973f637220c0
2012-07-23 14:51:21 -07:00
James Berry
a0769f70f5 add unit test support via google test
adds unit testing via google test

Change-Id: I144b50a976d79251fc5135186a4e0a5051ed0e8c
2012-05-11 06:19:52 -07:00
James Zern
91b167202d gen_msvs_proj: write boolean for Debug attribute
Replace =1 with =true for yasm tool element. This aids in upgrading
e.g., vs9 project files to vs10.
build/x86-msvs/yasm.xml generated during conversion will require the
Separator attribute to be removed for the build to complete
successfully.

Change-Id: If75c4f9a925529740048882003e9d766c5ac4f0c
2011-06-15 14:56:16 -07:00
Yaowu Xu
ddb6edd831 make two compiler options explicit for Visual Studio projects
This patch changes the release configuration of MS VS projects to
explicitly use two compiler options "Maximize Speed (/O2)" and
"Favor fast code(/Ot)".

Change-Id: I0bf8343d9ca195851332b91ec69c69ee4e31ce2a
2011-04-21 13:27:42 -07:00
Johann
128d2c23b3 obj_int_extract for Visual Studio
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-03-10 18:49:54 -05:00
Johann
a1cfcb413d clean up msvs project generation
add visual studio 9 to --help

remove cpp, cxx, hpp, hxx files from filter

add the ability to target project names. this will be necessary to
enable obj_int_extract

Change-Id: I407583320d8b67a0df40c07221838c42678792f7
2011-03-02 09:34:34 -05:00
Johann
418f4219fa purge wince configuration
this has been broken since the initial release

Change-Id: If0d4deb2de9f7d0c4c05641e2bbf9cc1bf11e171
2011-02-22 14:42:00 -05:00
John Koleszar
c2140b8af1 Use WebM in copyright notice for consistency
Changes 'The VP8 project' to 'The WebM project', for consistency
with other webmproject.org repositories.

Fixes issue #97.

Change-Id: I37c13ed5fbdb9d334ceef71c6350e9febed9bbba
2010-09-09 10:01:21 -04:00
Tom Finegan
72d4ba92f0 Add vs9 targets.
Add targets x86-win32-vs9 and x86_64-win64-vs9 for support of Visual
Studio 2008-- this removes the need to convert the vs8 projects before
using them within the IDE.

Change-Id: Idb83e2ae701e07d98db1be71638280a493d770a2
2010-07-22 13:44:16 -04:00
John Koleszar
fd0d7ff4c1 msvs: disable CRT deprecation warnings
Disables the warnings produced for so-called insecure standard C
functions.

Change-Id: I0e6f448e27f899a0eaefc1151185945fbe15718e
2010-07-07 19:59:11 -04:00
James Zern
a23ec527af ARM WinCE VS8 build update
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-29 12:02:19 -04:00
John Koleszar
94c52e4da8 cosmetics: trim trailing whitespace
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-18 13:06:11 -04:00
James Zern
ec1871554b VisualStudio projects: asm tool updates
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-14 17:29:14 -04:00
John Koleszar
09202d8071 LICENSE: update with latest text
Change-Id: Ieebea089095d9073b3a94932791099f614ce120c
2010-06-04 16:19:40 -04:00
John Koleszar
1df0314e7b configure: remove HAVE_CONFIG_H
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-21 05:53:48 -04:00
John Koleszar
0ea50ce9cb Initial WebM release 2010-05-18 11:58:33 -04:00