skia2/third_party
msarett cf2a6a47e4 Reenable yasm for Android x86 and x86-64 on Linux host
It turns out that gyp (kind of) has support for cross
compiling with a different host and target.  We simply
need to specify CC_host and CC_target instead of CC.

Making this change allows us to compile yasm on a Linux
host for Android.

We run into problems on Mac because
the linker on a Mac host requires different command line
arguments than the linker on the Android target.  In
looking through the code for gyp itself and speaking to
Ben, it doesn't appear to me that gyp supports passing
different arguments to host and target linkers.

I would imagine that we would have similar problems on
Windows.

Below is a link to a CL that would fix this issue in gyp.
It looks like it has been dropped for a long time.
Thanks to Ben for this link!
https://chromiumcodereview.appspot.com/10795044/

Also I'm adding a link to the build instructions for Chrome
(thanks again Ben).  It looks like they only support
building for Android from Linux.
https://code.google.com/p/chromium/wiki/AndroidBuildInstructions

My next steps are:
1) Getting in touch with Torne or someone else with gyp to
see if people are aware of this issue or interested in
fixing it.
2) Deciding if skia should care about this issue.
3) Deciding if skia should work around this issue.

It'd be really great to hear your thoughts on (2) and (3).
My first thought is that we shouldn't care because, as
long as we always compile the production copy of skia for
Android on Linux, we will get the fast code.  Is this
a valid conclusion?  Is there a way to write Android apps
on Mac that accidentally use the slower code?

If we do care, there are workarounds:
For Mac, we can check in a yasm binary - it's a little
smaller than the one I am deleting in this CL :-/
For Windows, we *might* be able to use the yasm.exe binary
already in externals (we get this from DEPS because this is
how chromium uses yasm on Windows).
Are there other platforms that we care about?

Let me know what you think!

BUG=skia:4028
DOCS_PREVIEW= https://skia.org/?cl=1239333002

Review URL: https://codereview.chromium.org/1239333002
2015-07-21 12:01:48 -07:00
..
etc1 Add LICENSE & README.google files to third_party/etc1 2014-06-03 12:31:09 -07:00
freetype/include_overrides/freetype/config Update freetype to version 2.5.0.1 when building it from source. 2013-07-23 15:51:12 +00:00
giflib Creating a new wrapper for gif decoder 2015-04-01 06:58:48 -07:00
ktx Housekeeping to rename GrGL compressed texture formats to match GL specs 2015-03-27 12:22:10 -07:00
libpng Enable both static and dynamically linked libpng 2015-04-03 12:35:27 -07:00
libwebp/webp Use the upstream version of libwebp, v0.4.3. 2015-07-10 09:32:09 -07:00
lua add SkLuaCanvas 2013-05-15 19:34:20 +00:00
yasm Reenable yasm for Android x86 and x86-64 on Linux host 2015-07-21 12:01:48 -07:00
README Remove svn:externals and update the README. 2013-06-12 14:57:33 +00:00

This directory contains a set of dependencies that are needed to build various
components and tools within Skia.  Some of these dependencies reside within
the Skia repo, while others are pulled from other repositories and placed
in the third_party/externals directory. These external dependencies are defined
in a DEPS file and are kept up-to-date using 'gclient sync'.