Commit Graph

102 Commits

Author SHA1 Message Date
msarett
8715d47e24 Make SkPicture/SkImageGenerator default to SkCodec
Remove reference to SkImageDecoder from SkPicture. Make the default
InstallPixelRefProc passed to CreateFromStream use
SkImageGenerator::NewFromEncoded instead.

Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator.
Remove the old version that used SkImageDecoder.

Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default
now behaves lazily.

Update all clients to use the default.

Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly.

This is a rebased version of:
https://codereview.chromium.org/1671193002/

TBR=reed@google.com

BUG=skia:4691
BUG=skia:4290
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1699183004

Review URL: https://codereview.chromium.org/1699183004
2016-02-17 10:02:29 -08:00
msarett
829caa2f6b Delete SkDecodingImageGenerator
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1692053002

Review URL: https://codereview.chromium.org/1692053002
2016-02-11 14:17:17 -08:00
kjlubick
1de415f2c3 Revert of Make SkPicture/SkImageGenerator default to SkCodec (patchset #7 id:120001 of https://codereview.chromium.org/1671193002/ )
Reason for revert:
Breaks Ubuntu and Mac CMAKE

Original issue's description:
> Make SkPicture/SkImageGenerator default to SkCodec
>
> Remove reference to SkImageDecoder from SkPicture. Make the default
> InstallPixelRefProc passed to CreateFromStream use
> SkImageGenerator::NewFromEncoded instead.
>
> Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator.
> Remove the old version that used SkImageDecoder.
>
> Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default
> now behaves lazily.
>
> Update all clients to use the default.
>
> Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly.
>
> BUG=skia:4691
> BUG=skia:4290
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1671193002
>
> Committed: https://skia.googlesource.com/skia/+/026388a01864c74208ad57d1ba4f711602d101c6

TBR=msarett@google.com,reed@google.com,scroggo@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4691

Review URL: https://codereview.chromium.org/1685963004
2016-02-10 11:25:07 -08:00
scroggo
026388a018 Make SkPicture/SkImageGenerator default to SkCodec
Remove reference to SkImageDecoder from SkPicture. Make the default
InstallPixelRefProc passed to CreateFromStream use
SkImageGenerator::NewFromEncoded instead.

Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator.
Remove the old version that used SkImageDecoder.

Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default
now behaves lazily.

Update all clients to use the default.

Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly.

BUG=skia:4691
BUG=skia:4290
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1671193002

Review URL: https://codereview.chromium.org/1671193002
2016-02-10 11:15:21 -08:00
msarett
7d2e2fadbd Remove flag needed by outdated libpng
BUG=skia:

Review URL: https://codereview.chromium.org/1514873003
2015-12-10 14:45:03 -08:00
msarett
b747b90501 Remove dependencies on Android's forked decoder libraries
Disable SkImageDecoder's code which relies on Android's customized
libpng and libjpeg. Build standard versions of libpng and libjpeg-turbo
everywhere. The SkImageDecoder code has been replaced with SkCodec, which
can decode subsets using standard library APIs

BUG=skia:

Review URL: https://codereview.chromium.org/1406153015
2015-11-06 11:15:49 -08:00
msarett
f724b99435 Reenable warnings in src/codec
BUG=skia:

Review URL: https://codereview.chromium.org/1400343005
2015-10-15 06:41:06 -07:00
mtklein
cd1f2daf44 add -Iinclude/private anywhere we have -Isrc/core
I'll be moving headers from src/core to include/private, so this guarantees
that anyone who was finding them via -Isrc/core can now find them via
-Iinclude/private.

This is purely mechanical, mostly to preserve my sanity, so it's likely
(harmless) overkill.

Chromium's GYP and GN builds already set -Iinclude/private for Skia builds.

BUG=skia:4126

Review URL: https://codereview.chromium.org/1265443002
2015-07-28 08:55:14 -07:00
scroggo
27631bd593 Revert "Remove ambiguity of SkJpegUtility name."
TBR=mtklein

This reverts commit 93858b49a9.

This revert should fix the Android framework build.

NOTREECHECKS=True
NOTRY=True

Review URL: https://codereview.chromium.org/1187463005
2015-06-15 09:10:03 -07:00
mtklein
93858b49a9 Remove ambiguity of SkJpegUtility name.
We have two, one in images/, the other in codec/.  As codec's the new hotness,
I left it's name vanilla and suffixed the old one.

BUG=skia:

Review URL: https://codereview.chromium.org/1185733002
2015-06-12 08:43:30 -07:00
borenet
4808757d7a Remove all code related to NaCl
BUG=skia:3600
DOCS_PREVIEW= https://skia.org/?cl=1036283002

Review URL: https://codereview.chromium.org/1036283002
2015-04-02 12:16:36 -07:00
msarett
6d0e7b2031 WIP: Added support for giflib, updated jpeg and png
BUG=skia:3257

Committed: https://skia.googlesource.com/skia/+/255dcd11992ebe74eb54202c48cf5394d33a8ce6

Review URL: https://codereview.chromium.org/1038863003
2015-03-30 07:52:52 -07:00
borenet
00c95098c3 Revert of WIP: Added support for giflib, updated jpeg and png (patchset #8 id:260001 of https://codereview.chromium.org/1038863003/)
Reason for revert:
Trying out revert to see if it fixes Android bots.

Original issue's description:
> WIP: Added support for giflib, updated jpeg and png
>
> BUG=skia:3257
>
> Committed: https://skia.googlesource.com/skia/+/255dcd11992ebe74eb54202c48cf5394d33a8ce6

TBR=djsollen@google.com,scroggo@google.com,msarett@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3257

Review URL: https://codereview.chromium.org/1048713003
2015-03-30 05:51:49 -07:00
msarett
255dcd1199 WIP: Added support for giflib, updated jpeg and png
BUG=skia:3257

Review URL: https://codereview.chromium.org/1038863003
2015-03-27 12:17:00 -07:00
scroggo
3e5622764a Add copyright headers to remaining gyp files.
Prevents some PRESUBMIT errors.

TBR=mtklein@google.com

Review URL: https://codereview.chromium.org/1035523003
2015-03-25 10:22:41 -07:00
reed
5965c8ae4e add ImageGenerator::NewFromData to porting layer
BUG=skia:3275

Review URL: https://codereview.chromium.org/834633006
2015-01-07 18:04:45 -08:00
djsollen
38e44b06b2 Disable bitmap decoders for GPU specific formats on Android framework
R=reed@google.com, robertphillips@google.com, scroggo@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/510913003
2014-08-28 05:41:21 -07:00
krajcevski
95b1b3d82d Add astcbitmap to gm slides.
Add additional ASTC formats.
Add astc image decoder files.

R=reed@google.com, robertphillips@google.com, halcanary@google.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/444093002
2014-08-07 12:58:38 -07:00
krajcevski
7b62448065 Revert of - Add astcbitmap to gm slides (https://codereview.chromium.org/444093002/)
Reason for revert:
Breaking DM

Original issue's description:
> - Add astcbitmap to gm slides
> - Add additional ASTC formats
> - Add astc image decoder files
>
> Committed: https://skia.googlesource.com/skia/+/2fc05823fed4b9649338f3029cd1ba05ef49a02f

R=reed@google.com, robertphillips@google.com, halcanary@google.com
TBR=halcanary@google.com, reed@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/447343002
2014-08-07 11:33:59 -07:00
krajcevski
2fc05823fe - Add astcbitmap to gm slides
- Add additional ASTC formats
- Add astc image decoder files

R=reed@google.com, robertphillips@google.com, halcanary@google.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/444093002
2014-08-07 11:18:09 -07:00
halcanary
67ec1f8eec Switch SkPDFStream's internal storage from SkStream to SkData
Motivation: This makes SkPDFStream thread-safe for two threads
serializing it at once, since a SkStream has an internal position.

Updated SkPDFFont, SkPDFGraphicState, and SkPDFPage's use of
SkPDFStream to use the SkData constructor rather than the SkStream
constructor (saving a memcpy).

BUG=skia:2683

Committed: https://skia.googlesource.com/skia/+/c1dfa14b645ae274780f026dd86c9b633fbdad06

R=mtklein@google.com, djsollen@google.com, rmistry@google.com, robertphillips@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/340783013
2014-06-27 11:36:20 -07:00
halcanary
5ec3d21714 remove ashmem from skia
R=scroggo@google.com, djsollen@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/319533004
2014-06-05 08:16:34 -07:00
Hal Canary
479bb60622 Remove SkImageRef and related functionality.
From here on out, use SkDecodingImageGenerator+SkDiscardablePixelRef.

R=scroggo@google.com

Review URL: https://codereview.chromium.org/100183002
2014-06-04 14:38:48 -04:00
krajcevski
99ffe24200 Initial KTX file decoder
R=bsalomon@google.com, robertphillips@google.com, halcanary@google.com, reed@google.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/302333002
2014-06-03 13:04:35 -07:00
reed@google.com
5744bbee6f move SkImageGenerator.cpp from src/images to src/core
git-svn-id: http://skia.googlecode.com/svn/trunk@14973 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-29 18:47:06 +00:00
commit-bot@chromium.org
00f8d6c75d Revert "Revert of add colortable support to imagegenerator (https://codereview.chromium.org/304443003/)"
Fix is to add colortable param to installPixels()

This reverts commit 924205aaf2.

BUG=skia:
R=scroggo@google.com, reed@chromium.org

Author: reed@google.com

Review URL: https://codereview.chromium.org/300263005

git-svn-id: http://skia.googlecode.com/svn/trunk@14958 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-29 15:57:20 +00:00
commit-bot@chromium.org
924205aaf2 Revert of add colortable support to imagegenerator (https://codereview.chromium.org/304443003/)
Reason for revert:
failing tests

Original issue's description:
> add colortable support to imagegenerator
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14916

R=halcanary@google.com, scroggo@google.com
TBR=halcanary@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: reed@google.com

Review URL: https://codereview.chromium.org/300873007

git-svn-id: http://skia.googlecode.com/svn/trunk@14917 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-28 16:16:08 +00:00
commit-bot@chromium.org
b263985850 add colortable support to imagegenerator
BUG=skia:
R=halcanary@google.com, scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/304443003

git-svn-id: http://skia.googlecode.com/svn/trunk@14916 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-28 16:01:55 +00:00
commit-bot@chromium.org
29239a0f4b Move SkDecodingImageGenerator.h to include/
This will allow Android to access it and remove SkImageRef.

Depends on https://codereview.chromium.org/293283002/

BUG=skia:2389
R=reed@google.com, djsollen@google.com, halcanary@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/228613003

git-svn-id: http://skia.googlecode.com/svn/trunk@14891 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-27 14:59:47 +00:00
robertphillips@google.com
8cf81e0f4f Simple PKM image decoder.
https://codereview.chromium.org/292663011/



git-svn-id: http://skia.googlecode.com/svn/trunk@14852 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-22 18:40:29 +00:00
commit-bot@chromium.org
2ea14c68c3 Fix ChromeOS build broken in f84722e477
NOTREECHECKS=true
NOTRY=true
R=scroggo@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/178413003

git-svn-id: http://skia.googlecode.com/svn/trunk@13571 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 21:39:01 +00:00
commit-bot@chromium.org
f84722e477 Build Skia for a bare-bones embedded Linux system.
Motivation:

    I have downloaded a barebones Linux system built for 64-bit ARM
    from linaro.org and a ARMv8 Foundation Model from arm.com to run
    it on.  This will let us build and test Skia on ARM64 before we
    aquire hardware to allow that.  This CL introduces the changes to
    the build files necessary to build Skia on a barebones embedded
    Linux system.  I tested it with the aarch64 GCC compiler provided
    by linaro.org.

Changes:

    Add a "barelinux" target_os for the DEPS file.  Add an optional
    git download of zlib.

    Changes to gyp files: these changes abstract out libpng, libz, and
    giflib so that images.gyp doesn't know whether they are static or
    dynamically linked.  I also add the variables skia_giflib_static,
    skia_libpng_static, skia_zlib_static, and skia_freetype_static,
    all of which default to false but when set to true will override
    the behavior of the giflib, libpng, zlib, and freetype build
    targets to require them to build statically.  Also, the
    skia_no_fontconfig variable turns off use of the fontconfig service.

	Scripts in platform_tools/barelinux/bin:

    arm64_download - this script downloads the Linaro's ARMv8 Aarch64
	toolchain and minimal embedded Linux system as well as ARM's
	foundation model.  The required files are mirrored on Google
	Cloud.  The script then starts a emulated Arm64 Linux system in
	the background.  After the boot is complete, you can SSH into the
	system at port 8022 via user@localhost.  The SSH key will be
	downloaded into the working directery as well.

	download_deps - Uses gclient to download Skia's dependencies for a
    bare Linux system (the normal dependecies plus giflib, libpng, and
    zlib.)

	barelinux_make - this script builds a version of skia that does
    not depend on external libraries, perfect for putting in an
    embedded system running Linux.  Assumes you have run download_deps
    first.

To test:
    To build a barelinux target, use the barelinux_make script.

    To build for a armv8 system: skia_arch_type=arm arm_neon=0 armv7=1
    armv8=1 arm_thumb=0 skia_arch_width=64 and set the CC and CXX
    variables to point at the cross-compiler downloaded by
    arm64_download.

R=djsollen@google.com, scroggo@google.com, borenet@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/152513007

git-svn-id: http://skia.googlecode.com/svn/trunk@13570 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 20:22:34 +00:00
scroggo@google.com
d4adfa37fb Reland "Gyp file changes for the android framework."
Relands https://codereview.chromium.org/153093003/, which was reverted
with https://skia.googlesource.com/skia.git/+/eb6295044b97db05ec40625dcebc2459b2a38a98

This reverts commit 6b32be1402eb6c549d5ba1db71860e24f9de2991.

BUG=skia:1975
R=djsollen@google.com

Review URL: https://codereview.chromium.org/154053002

git-svn-id: http://skia.googlecode.com/svn/trunk@13321 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-05 16:35:12 +00:00
scroggo@google.com
eb6295044b Gyp file changes for the android framework.
Split off from https://codereview.chromium.org/140503007/.

The eventual goal is to create our Android.mk from gyp. This patch
adds an option for skia_android_framework with the right settings.
The follow-up (https://codereview.chromium.org/140503007/) will
use scripts to create the final makefile.

gyp/android_deps.gyp:
Use different dependencies for the framework than for building Skia
normally.

gyp/android_framework_lib.gyp:
Like skia_lib, specifies the minimum needed for building Skia, in this
case for the framework.

gyp/common_conditions.gypi:
Add settings specific to skia_android_framework. In some cases this
means turning off flags and defines.

gyp/common.gypi
Turn off SK_DEBUG and SK_DEVELOPER when building for the framework.
This allows the framework to create a single makefile which can be
modified to add SK_DEBUG and SK_DEVELOPER as desired.

gyp/common_variables.gypi:
Add skia_android_framework.

gyp/core.gyp:
Don't depend on cpufeatures, and add the cutils library for
skia_android_framework.

gyp/freetype.gyp:
skia_android_framework-specific options:
Don't include freetype_static as a dependency.
Include the proper folders.
Include the android library.

gyp/images.gyp:
Don't export libjpeg as a dependency for targets that include images
for the framework.
Also reorder image decoders to match the Android order, leaving our
most commonly used ones last (and therefore first in the chain for
trying them).

gyp/libwebp.gyp:
Use the system webp when building for the Android framework. Specify
the correct settings for the framework.

gyp/opts.gyp:
Specify a default set of files to compile when there are no possible
optimizations.

gyp/pdf.gyp:
Add dependencies for Android framework.

gyp/zlib.gyp:
Include the zlib folder, and undefine SK_ZLIB_INCLUDE.

BUG=skia:1975
R=djsollen@google.com

Committed: https://code.google.com/p/skia/source/detail?r=13298

Review URL: https://codereview.chromium.org/153093003

git-svn-id: http://skia.googlecode.com/svn/trunk@13304 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 16:08:48 +00:00
scroggo@google.com
1c9bd55ea3 Gyp file changes for the android framework.
Split off from https://codereview.chromium.org/140503007/.

The eventual goal is to create our Android.mk from gyp. This patch
adds an option for skia_android_framework with the right settings.
The follow-up (https://codereview.chromium.org/140503007/) will
use scripts to create the final makefile.

gyp/android_deps.gyp:
Use different dependencies for the framework than for building Skia
normally.

gyp/android_framework_lib.gyp:
Like skia_lib, specifies the minimum needed for building Skia, in this
case for the framework.

gyp/common_conditions.gypi:
Add settings specific to skia_android_framework. In some cases this
means turning off flags and defines.

gyp/common.gypi
Turn off SK_DEBUG and SK_DEVELOPER when building for the framework.
This allows the framework to create a single makefile which can be
modified to add SK_DEBUG and SK_DEVELOPER as desired.

gyp/common_variables.gypi:
Add skia_android_framework.

gyp/core.gyp:
Don't depend on cpufeatures, and add the cutils library for
skia_android_framework.

gyp/freetype.gyp:
skia_android_framework-specific options:
Don't include freetype_static as a dependency.
Include the proper folders.
Include the android library.

gyp/images.gyp:
Don't export libjpeg as a dependency for targets that include images
for the framework.
Also reorder image decoders to match the Android order, leaving our
most commonly used ones last (and therefore first in the chain for
trying them).

gyp/libwebp.gyp:
Use the system webp when building for the Android framework. Specify
the correct settings for the framework.

gyp/opts.gyp:
Specify a default set of files to compile when there are no possible
optimizations.

gyp/pdf.gyp:
Add dependencies for Android framework.

gyp/zlib.gyp:
Include the zlib folder, and undefine SK_ZLIB_INCLUDE.

BUG=skia:1975
R=djsollen@google.com

Review URL: https://codereview.chromium.org/153093003

git-svn-id: http://skia.googlecode.com/svn/trunk@13298 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-04 14:50:20 +00:00
commit-bot@chromium.org
09647969cf Remove extraneous folders from includes.
R=reed@google.com, bsalomon@google.com, mtklein@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/145203003

git-svn-id: http://skia.googlecode.com/svn/trunk@13148 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-23 14:30:21 +00:00
halcanary@google.com
2c7c7ee47d Big Cleanup: SkBitmapFactory, SkLazyPixelRef, SkImageCache
Removed SkBitmapFactory since no clients were using it.  New cache
selection mechanism can simply pass a SkDiscardableMemory::Factory
into the SkDiscardablePixelRef if non-default SkDiscardableMemory
should be used.  Removed BitmapFactoryTest.

SkDiscardableMemory::Factory interface.  Android will need this
functionality in the future inside their BitmapFactory.

Removed SkLazyPixelRef, since it's functionality is now subsumed into
SkDiscardablePixelRef.  Removed LazyPixelRef test.

Modified SkDiscardablePixelRef to optionally allow it to use a
SkDiscardableMemory::Factory.  This tiny change makes it a replacement
for SkLazyPixelRef.  This functioanlity is also necessary for moving
Android over to SkDiscardablePixelRef from SkImageRef in a later CL.
Added a test for this.

SkDecodingImageGenerator::Install can optionally pass a factory in to
SkDiscardablePixelRef.

Removed SkImageCache, SkLruImageCache, and SkPurgeableImageCache.
This functionality can be handled much more cleanly by
SkDiscardableMemory.

New SkDiscardableMemoryPool class to replace SkLruImageCache.  In a
later CL, we will replace SkImageRef_GlobalPool (used by android) as
well.  This is a concrete implementation of
SkDiscardableMemory::Factory.  Added a test for this.

modified gm/factory.cpp to remove dependnce on SkBitmapFactory +
SkLruImageCache.  Now uses SkDecodingImageGenerator +
SkDiscardablePixelRef + SkDiscardableMemoryPool.

SkImageDecoder::Target replaces SkBitmapFactory::Target.  The
DecodeMemoryToTarget function may disappear in the future.

Moved SkLazyCachingPixelRef::DecodeProc replaces
SkBitmapFactory::DecodeProc.  This is a short term change, since
another CL changes SkLazyCachingPixelRef to use SkImageGenerator
instead of DecodeProc.

Modified DrawBitmapRectTest to use SkDiscardablePixelRef instead of
SkLazyPixelRef.

tools/LazyDecodeBitmap.cpp now uses SkDecodingImageGenerator +
SkDiscardablePixelRef instead of a SkBitmapFactory.

bench_pictures uses the Global SkDiscardableMemoryPool instead of a
global gLruImageCache.

R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/103033002

git-svn-id: http://skia.googlecode.com/svn/trunk@12515 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-05 18:31:42 +00:00
commit-bot@chromium.org
611fde182a Remove the comments settings for vim tab width and expansion variables.
These add unnecessary bloat for everyone to carry around, so we just
remove them now.

The same change was made in chromium by Tony in
http://codereview.chromium.org/7310019 - crrev.com/92046

BUG=None
TEST=./gyp_skia
R=mtklein@google.com

Author: tfarina@chromium.org

Review URL: https://codereview.chromium.org/92673003

git-svn-id: http://skia.googlecode.com/svn/trunk@12443 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-02 22:23:03 +00:00
bungeman@google.com
24339aa211 Libraries without '-l' treated as relative paths.
The following have the same effect on Windows:
'msvs_settings': { 'VCLinkerTool': { 'AdditionalDependencies': [ 'windowscodecs.lib', ],},},
'link_settings': {'libraries': ['-lwindowscodecs.lib',],},

But this one is different:
'link_settings': {'libraries': ['windowscodecs.lib',],},

since this last one will attempt to find the library at
third_party\skia\gyp\windowscodecs.lib
or a place like this, instead of looking in the library paths.

This also fixes capitalization of the affected libraries.

R=bsalomon@google.com

Review URL: https://codereview.chromium.org/99463002

git-svn-id: http://skia.googlecode.com/svn/trunk@12434 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-02 19:54:33 +00:00
halcanary@google.com
ad04eb49f5 Add SkImageGenerator Interface
-   Add SkDiscardablePixelRef class that uses SkDiscardableMemory and
    a SkImageGenerator.

-   Add SkDecodingImageGenerator class as an example of a
    SkImageGenerator.

-   Add DecodingImageGenerator unit test.

-   Add SkBasicDiscardableMemory implmentation for unit tests only.

R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/74793011

git-svn-id: http://skia.googlecode.com/svn/trunk@12341 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-21 15:32:08 +00:00
scroggo@google.com
1a2e71d9a8 Don't require getLength on Mac.
For consistency with our other image decoders, do not depend on getLength
in Mac specific decoder.

BUG=skia:1570
R=djsollen@google.com

Review URL: https://codereview.chromium.org/23004008

git-svn-id: http://skia.googlecode.com/svn/trunk@10990 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-28 19:13:13 +00:00
scroggo@google.com
dbf9f884c3 Avoid getLength in ico decoder.
Only call getLength() if hasLength() returned true. Otherwise, copy the
stream into an SkDynamicMemoryWStream and copy it into alloc'ed space.

Share common code between bmp and ico.

BUG=https://b.corp.google.com/issue?id=8432093
R=djsollen@google.com

Review URL: https://codereview.chromium.org/23330002

git-svn-id: http://skia.googlecode.com/svn/trunk@10850 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-21 15:01:48 +00:00
scroggo@google.com
d4c3565aac Fixes for JPEG subset decoding.
Ensure that the stream passed to JPEG for subset decoding is
neither deleted before it is no longer needed nor deleted an
extra time.

src/images/SkJpegUtility.h:
src/images/SkJpegUtility.cpp:
Always ref and unref the stream provided to skjpeg_source_mgr.
Add some comments explaining how skjpeg_source_mgr's members
handle ownership.
Fix a warning comparing signed and unsigned numbers, converting
to size_t which is more appropriate for measuring bytes.
Remove dead code referring to fMemoryBase and fMemoryBaseSize,
which are never used.

src/images/SkImageDecoder_libjpeg.cpp:
Call the new constructor for skjpeg_source_mgr, which no longer
takes a boolean to determine ownership.

include/images/SkBitmapRegionDecoder.h
src/images/SkBitmapRegionDecoder.cpp:
This small shim has been removed, since it is not needed to use
Skia's image decoders. Its functionality will be folded into
Android.

Required for the merge to Android.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/21561002

git-svn-id: http://skia.googlecode.com/svn/trunk@10483 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-08-01 15:03:42 +00:00
djsollen@google.com
bcc6d7d390 Update freetype to version 2.5.0.1 when building it from source.
R=bungeman@google.com

Review URL: https://codereview.chromium.org/19625006

git-svn-id: http://skia.googlecode.com/svn/trunk@10273 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-23 15:51:12 +00:00
bungeman@google.com
b8f3655d49 Update obvious deps.
This is a step toward targets declaring their deps in a sane fashion.
This change resolves cycles by forcing core to the root, then everything
in skia_lib pointing toward core as best possible, then everything
outside skia_lib depending on skia_lib for things in skia_lib. This
prevents double definitions where a symbol is provided by both the
skia_lib shared object and and a statically linked component of skia_lib.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/19823003

git-svn-id: http://skia.googlecode.com/svn/trunk@10231 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-22 14:39:45 +00:00
bungeman@google.com
899f1d854a Revert deps changes in r10220 and r10217.
Need to avoid linking in .a things which are already provided by .so things.


git-svn-id: http://skia.googlecode.com/svn/trunk@10222 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-20 00:24:35 +00:00
bungeman@google.com
2b0ab9e13a Update obvious deps.
This is a step toward targets declaring their deps in a sane fashion.
This change resolves cycles by forcing core to the root,
then opts, ports, and utils depending on core, then everything else.
We will need some other change to resolve the fact that
core, opts, ports, and utils depend on each other and other targets which
depend on them. Outside of these targets, things look ok.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/19823003

git-svn-id: http://skia.googlecode.com/svn/trunk@10217 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-19 22:31:23 +00:00
commit-bot@chromium.org
c41295d122 remove double including of libpng decoder
R=bungeman@google.com

Author: zachr@google.com

Review URL: https://chromiumcodereview.appspot.com/17408002

git-svn-id: http://skia.googlecode.com/svn/trunk@9666 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-18 20:06:36 +00:00
borenet@google.com
05d550ed36 GYP Changes and Scripts for Compiling Skia for ChromeOS
For now, this requires having a complete ChromeOS checkout.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/16099011

git-svn-id: http://skia.googlecode.com/svn/trunk@9505 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-06-11 15:52:19 +00:00
scroggo@google.com
7def5e1630 Separate core and images project.
SkImage calls functions on SkImageDecoder and SkImageEncoder. This
is desired behavior, and it is also desired to include SkImage as
a part of core. In order to keep core from depending on images,
update SkImageDecoder_empty.cpp to implement all of SkImageDecoder
and SkImageEncoder. This file will be built by chrome (in
https://codereview.chromium.org/15960015).

Move force_linking from SkImageDecoder.cpp to its own file. It must
be called to force linking with the image decoders if desired. Call
the function in tools that need it:
sk_image
render_pictures
render_pdfs
sk_hello
filter
bench_pictures
debugger

SkImageDecoder:
Derive from SkNoncopyable, instead of duplicating its
hiding of constructors.

skhello:
Return rather than trying to write a null SkData to the stream.

Revert "Hamfistedly removed core dependence on images"
(commit 0f05f682a90bc125323677abf3476e1027d174f5) and
"Move SkImage::encode to SkImage_Codec.cpp."
(commit 83e47a954d0bf65439f3d9c0c93213063dd70da3.)
These two commits were temporary fixes that this change
cleans up.

SkSnapshot.cpp:
Check for a NULL encoder returned by SkImageEncoder::Create.

BUG=https://code.google.com/p/skia/issues/detail?id=1275
R=djsollen@google.com, robertphillips@google.com

Review URL: https://codereview.chromium.org/15806010

git-svn-id: http://skia.googlecode.com/svn/trunk@9364 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-05-31 14:00:10 +00:00