Commit Graph

312 Commits

Author SHA1 Message Date
skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
e6a67f1487 Roll skia/third_party/skcms f1a2ba9..fe14a6a (1 commits)
https://skia.googlesource.com/skcms.git/+log/f1a2ba9..fe14a6a

2018-04-23 mtklein@chromium.org factor eval_13()/grad_13() for fewer multiplies


The AutoRoll server is located here: https://skcms-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



TBR=stani@google.com

Change-Id: Iea841211295323429db5941df6fc1e2a5df35bec
Reviewed-on: https://skia-review.googlesource.com/123065
Reviewed-by: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-04-23 18:00:30 +00:00
skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
381c953b82 Roll skia/third_party/skcms 17d4b82..f1a2ba9 (1 commits)
https://skia.googlesource.com/skcms.git/+log/17d4b82..f1a2ba9

2018-04-23 mtklein@chromium.org add SKCMS_PROFILE support for ARMv8


The AutoRoll server is located here: https://skcms-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



TBR=stani@google.com

Change-Id: Ie331159bbfaf98c86467a8877120ed2c8f8bf8d8
Reviewed-on: https://skia-review.googlesource.com/122991
Commit-Queue: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-04-23 16:37:10 +00:00
skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
eb17254754 Roll skia/third_party/skcms 71966da..17d4b82 (1 commits)
https://skia.googlesource.com/skcms.git/+log/71966da..17d4b82

2018-04-23 mtklein@chromium.org SKCMS_PROFILE support on ARMv7


The AutoRoll server is located here: https://skcms-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



TBR=stani@google.com

Change-Id: I342ffdfcbd1c4588f031f574d7fef939b51abd3b
Reviewed-on: https://skia-review.googlesource.com/122989
Reviewed-by: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-04-23 16:08:10 +00:00
skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
7230861301 Roll skia/third_party/skcms c4941e8..71966da (1 commits)
https://skia.googlesource.com/skcms.git/+log/c4941e8..71966da

2018-04-23 mtklein@chromium.org fail skcms_Parse() for useless profiles


The AutoRoll server is located here: https://skcms-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



TBR=stani@google.com

Change-Id: I8c36fb89675b9b1639a1d494641d8993d3723c93
Reviewed-on: https://skia-review.googlesource.com/122980
Commit-Queue: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-04-23 15:02:06 +00:00
skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
4ad8a179cb Roll skia/third_party/skcms e658346..c4941e8 (1 commits)
https://skia.googlesource.com/skcms.git/+log/e658346..c4941e8

2018-04-19 mtklein@chromium.org copy BUILD.gn into skcms repo


The AutoRoll server is located here: https://skcms-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



TBR=stani@google.com

Change-Id: Ia87cbb4641b91d1b8d24eeef4f720273936313c4
Reviewed-on: https://skia-review.googlesource.com/122929
Reviewed-by: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-04-23 13:16:53 +00:00
Mike Klein
78fb04e69e roll skcms to just before where we added BUILD.gn
The next roll should find it wants to copy in BUILD.gn, right?

Change-Id: Idf9ab7891906a0a7df9b6ba99f95b556771b5797
Reviewed-on: https://skia-review.googlesource.com/122661
Auto-Submit: Mike Klein <mtklein@chromium.org>
Reviewed-by: Eric Boren <borenet@google.com>
2018-04-23 12:47:33 +00:00
Eric Boren
cd01a020b5 [skcms] Add version.sha1
Bug: skia:7628
Change-Id: I3ac25a6d5a3fe49ed8d558a947cc0ff8a0b370e8
Reviewed-on: https://skia-review.googlesource.com/122440
Commit-Queue: Eric Boren <borenet@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2018-04-19 16:53:41 +00:00
Mike Klein
1ccaa6e056 skcms→b4e167a stricter TF13 matching
Change-Id: If731fa84b20857f8795ba6f5dec3c6dd677dedc1
Reviewed-on: https://skia-review.googlesource.com/122040
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-18 17:34:44 +00:00
Mike Klein
bef83531c7 skcms→589b15b add skcms_EnsureUsableAsDestination
Change-Id: I6f5896299fec1a5fd6e593e3a831e080b30e6e21
Reviewed-on: https://skia-review.googlesource.com/122022
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-18 17:09:13 +00:00
Mike Klein
3101f65d6b skcms→3be11ac refactor a bit
Change-Id: Ifcaa7804426f4706aebd01afac198e0e4ce1e9a5
Reviewed-on: https://skia-review.googlesource.com/121798
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-04-17 16:05:04 +00:00
Mike Klein
00c9e4676c skcms→38f22d2 name types in skcms.h
Change-Id: Ibfac2c0f56eb8a05e1efd14fdd1a1846b715f362
Reviewed-on: https://skia-review.googlesource.com/121789
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-04-17 14:03:33 +00:00
Mike Klein
c830e2a9ea skcms→2667f0a Add skcms_BestSingleCurve utility
Change-Id: Ibfca9738770c6599826c6bcc18d7a117abd9a1eb
Reviewed-on: https://skia-review.googlesource.com/121660
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Auto-Submit: Mike Klein <mtklein@chromium.org>
2018-04-16 19:29:40 +00:00
Mike Klein
ef52250df9 skcms→019d877 add a basic profiling mode to src/Transform.c
Change-Id: I136064f8b772f1aa5ecfedac4b0f9ebb92da9d73
Reviewed-on: https://skia-review.googlesource.com/121486
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-16 15:45:06 +00:00
Mike Klein
7b67b4af1f skcms→1654786 concat gamut transform matrices together
No-Tree-Checks: true

Change-Id: Ibfbbfe35caf9e2ed8a80aa9add2c4cae50585120
Reviewed-on: https://skia-review.googlesource.com/120997
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-12 14:07:02 +00:00
Mike Klein
ac78c7f415 skcms→9334796 reject non-XYZ/Lab PCS profiles
Change-Id: I6dd917c1f090a18e6508b0391f119f8f91929162
Reviewed-on: https://skia-review.googlesource.com/120502
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-11 18:45:47 +00:00
Mike Klein
3462eb0346 skcms→56f2a09 add sRGB profile and ApproximatelyEqualProfiles()
Change-Id: Ic6408fdc8819342da175ec8b99b5838669b1b2ae
Reviewed-on: https://skia-review.googlesource.com/120501
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-11 18:33:37 +00:00
Mike Klein
29e81529ba roll to particular targets
Change-Id: Iafbcab2fd406a81766f534d70b36f38b1c369506
Reviewed-on: https://skia-review.googlesource.com/120500
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-04-11 18:04:45 +00:00
Mike Klein
73297197b2 skcms→91a8958 Detect and canonicalize identity tables
Change-Id: I36957b8d7d96ac262b509c218779775c90864314
Reviewed-on: https://skia-review.googlesource.com/120420
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-11 15:01:37 +00:00
Mike Klein
06a610c159 skcms→307ec0f remove a layer of nesting in skcms_Curve
Change-Id: I0b0959063c22b2066b2103a4e93e396c10eb388e
Reviewed-on: https://skia-review.googlesource.com/120382
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-11 14:26:56 +00:00
Brian Osman
07b3bebcf2 skcms→e753c6d disable -Wdouble-promotion
Change-Id: I8cfebed0a6617a625dd91e31af4b581aaeae86fe
Reviewed-on: https://skia-review.googlesource.com/120122
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-04-11 11:20:01 +00:00
Mike Klein
1b49a05a60 skcms→dff16bc express ApproximateCurve error in input units
Change-Id: I8f567c475e8941ddb5d122dbb42c17413727021c
Reviewed-on: https://skia-review.googlesource.com/120184
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-10 17:33:22 +00:00
Mike Klein
b40a95152d allow rolling from anywhere
Change-Id: I27e4190aeeb48474effa05cd306bde22a3ed8493
Reviewed-on: https://skia-review.googlesource.com/120183
Reviewed-by: Brian Osman <brianosman@google.com>
2018-04-10 17:00:48 +00:00
Mike Klein
3cdd7e22dd skcms→9ff49a5 use GaussNewton for 7-parameter approx
Change-Id: I04894e17378cfbc982a11854a48217b63a2534ca
Reviewed-on: https://skia-review.googlesource.com/120161
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-10 16:13:31 +00:00
Mike Klein
2e9f0575e8 give skcms rolls a helpful commit msg
Change-Id: I5acec2526eb85fe0947421bdb2cc2cb8cd2db269
Reviewed-on: https://skia-review.googlesource.com/120180
Reviewed-by: Brian Osman <brianosman@google.com>
2018-04-10 15:30:37 +00:00
Mike Klein
ded7a5586a hard-roll skcms into Skia
Adding roll.sh to make it easy.

Change-Id: I7887c5f9a41c5b68a5dec89ebc8ac86a1707fef6
Reviewed-on: https://skia-review.googlesource.com/120120
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-04-10 15:03:31 +00:00
Ben Wagner
3aa8bfe0d5 Roll FreeType.
Change-Id: I3fe4e27e70270f4dc31610f98741c63b3574cf96
Reviewed-on: https://skia-review.googlesource.com/116628
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2018-03-28 16:06:34 +00:00
Ben Wagner
1f6526b335 Add a png.imp for include-what-you-use.
The png.h header provides some macros and declarations from subincludes.
By default include-what-you-use will suggest using these subincludes
directly, but this was not the intent of png.h. This adds a mapping file
so that include-what-you-use knows that these subincludes are actually
private and png.h should be used instead.

Change-Id: Ibf9df6dbdbde0e657f6e548ed0e8f2310f44cfea
Reviewed-on: https://skia-review.googlesource.com/114481
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-03-14 21:43:25 +00:00
Leon Scroggins III
9e8a594905 Support pngs with incorrect CMF bytes
Bug: chromium:807324

Though these pngs are technically incorrect, many such PNGs exist, and
they are supported in Chromium. Ensure that users of SkCodec (e.g.
Android, Flutter) display them as well.

Change-Id: I2f1e573b4b7039cea81f96397cc0aa4cbc9461c3
Reviewed-on: https://skia-review.googlesource.com/111082
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2018-02-28 21:46:03 +00:00
Mike Klein
5279cdf190 Revert -isystem related CLs.
Revert "use -isystem for headers from third_party"
    This reverts commit 138bd155ed.

    Revert "write -isystem paths relative to the build root"
    This reverts commit 085bc52363.

I suspect the first breaks building on systems with an old libpng
or zlib installed, and the second definitely breaks GN -> CMake.

Change-Id: I5b29669b21b1444daeec8fb784337422ee17311a
Reviewed-on: https://skia-review.googlesource.com/110183
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-02-26 15:33:17 +00:00
Mike Klein
085bc52363 write -isystem paths relative to the build root
The default makes these system-absolute paths,
which confuses fiddle's overlay builds.

Now we should see things like,

  -isystem ../third_party/externals/jsoncpp/include

where we previously had,

  -isystem /Users/mtklein/skia/third_party/externals/jsoncpp/include

Change-Id: I7b161a550fdb95b06e17c372cd5bec3015e3c8b7
Reviewed-on: https://skia-review.googlesource.com/109382
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-02-22 16:06:32 +00:00
Derek Sollenberger
2bafb796e5 Fix Angle autoroller by adding missing platform specific files.
Change-Id: Ib1b3c760b8769fb0e342b69ec7954e2a30d74599
Reviewed-on: https://skia-review.googlesource.com/109200
Commit-Queue: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2018-02-21 22:18:07 +00:00
Mike Klein
138bd155ed use -isystem for headers from third_party
This supresses warnings from code in those headers,
e.g. warnings about switch case fallthrough in SDL_memset4(),
defined inline in SDL_stdinc.h.

Change-Id: I5341a67d4949b28ec5ffa6b7ae433748406e99db
Reviewed-on: https://skia-review.googlesource.com/109140
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-02-21 20:40:36 +00:00
Mike Klein
5ab827c50b Reland "remove third_party/etc1"
This is a reland of 9d7a73527a.

Original change's description:
> remove third_party/etc1
> 
> Nothing seems to reference it.
> 
> Change-Id: Ib009a7dc33d31439b11588758015a07485f56eaa
> Reviewed-on: https://skia-review.googlesource.com/99861
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Mike Klein <mtklein@chromium.org>

Change-Id: I3a6428074896c7b3c80cb23db61f70d7cb0c785f
Reviewed-on: https://skia-review.googlesource.com/108460
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-02-20 16:52:43 +00:00
Kevin Lubick
0be01ccecb Roll libwebp to 0.6.1
Bug: oss-fuzz:6299
Change-Id: I2e87368e04ff37db7e431fd1960f0bf91440037f
Reviewed-on: https://skia-review.googlesource.com/107281
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-02-14 19:00:27 +00:00
Hal Canary
8bb40837da Build ICU on iOS
Change-Id: Idc6d5ed987540bc41d64ceab87af103591dc1911
Reviewed-on: https://skia-review.googlesource.com/105800
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-02-12 15:51:01 +00:00
Hal Canary
0e07ad7fe7 ICU on windows
Change-Id: Ib1a2f017d96c5157c60d512332fddfef77c5ae8e
Reviewed-on: https://skia-review.googlesource.com/103001
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-02-08 19:36:49 +00:00
Mike Klein
bec7ec6497 avoid using tmpnam() in Lua
Change-Id: I9e3d82445bb26b98ff6a60dff28f9655cc9ea1fb
Reviewed-on: https://skia-review.googlesource.com/102624
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-02-01 22:39:59 +00:00
Mike Klein
5bcef359b2 Revert "remove third_party/etc1"
This reverts commit 9d7a73527a.

Reason for revert: still used by Fiber in Google3

Original change's description:
> remove third_party/etc1
> 
> Nothing seems to reference it.
> 
> Change-Id: Ib009a7dc33d31439b11588758015a07485f56eaa
> Reviewed-on: https://skia-review.googlesource.com/99861
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Mike Klein <mtklein@chromium.org>

TBR=mtklein@chromium.org,robertphillips@google.com

Change-Id: I12b950931f0680576faefd1907a26afe22cf680f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/100460
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-01-26 22:41:35 +00:00
Mike Klein
9d7a73527a remove third_party/etc1
Nothing seems to reference it.

Change-Id: Ib009a7dc33d31439b11588758015a07485f56eaa
Reviewed-on: https://skia-review.googlesource.com/99861
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-01-26 20:15:50 +00:00
Mike Klein
fb33355c36 add basic skia -> skcms dependency
This rolls skcms into skia and builds it in dev configurations.
We don't use it in any way yet, but if nothing else this gives
us roundabout Windows skcms build bots.

Bug: skia:7493

Change-Id: Idd945ccd5c7a543841d76ab600cc117f2ee074dc
Reviewed-on: https://skia-review.googlesource.com/99880
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-01-26 02:07:37 +00:00
Mike Klein
ca96da7ad8 remove third_party/libwebp/webp/config.h
This doesn't appear to have any effect.
It's not mentioned in our build configuration anywhere,
nor is third_party/libwebp/webp on any include path.

Bug: skia:4037

Change-Id: I41710fe5e82bb97946e64d5f975c09c8ba21dc0d
Reviewed-on: https://skia-review.googlesource.com/99860
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-01-25 18:59:46 +00:00
Leon Scroggins III
868a68061e Remove unused field/methods
These have been replaced by duration on the base class.

Change-Id: Id87ecf09f4da6840280e3f5657453915a8d3c81b
Reviewed-on: https://skia-review.googlesource.com/99245
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2018-01-25 01:04:13 +00:00
Geoff Lang
03362c35f9 Update ANGLE's BUILD.gn to include definitions for GL_API.
Bug: skia:
Change-Id: I57a16af6c57166ead768ad73a8124690f1fa58e4
Reviewed-on: https://skia-review.googlesource.com/98302
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-01-23 00:03:10 +00:00
Mike Klein
b19737d78a make lua a rollable dep, roll it
This rolls from 5.2.1 (2013) to 5.3.4 (2017).

I was looking at why the GomaNoFallback bot was failing,
and noticed that we had a static copy of Lua here instead
of a DEPS entry.  This doesn't do anything to change the
GomaNoFallback situation.

Change-Id: Ia3cdca85551fe680b60b38cb8c5a8fb5349e177f
Reviewed-on: https://skia-review.googlesource.com/93120
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-01-10 17:54:00 +00:00
Brian Osman
e562f413ea Update Windows clang asset
For reference, the version number is pulled from:

  chromium/src/third_party/llvm-build/cr_build_revision

This version of clang includes fixes for bugs in the latest
Windows 10 SDK headers.

Bug: skia:
Change-Id: Ieee6eb2dff2f98a2340a8433135b6c3f916c0577
Reviewed-on: https://skia-review.googlesource.com/82721
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-12-08 16:55:10 +00:00
Leon Scroggins III
4f498fc6f0 Update to the latest version of libjpeg-turbo
Bug: b/70203010

From https://github.com/libjpeg-turbo/libjpeg-turbo/commit/c308d434.
This commit fixes a bug in BitmapRegionDecoder, and is the tip of tree.

Rather than using our mirror, just pull in upstream directly. Move our
config files into third_party/libjpeg-turbo, so we can just DEPS to
upstream. These files are unchanged, except jconfig.h, where I added a
comment regarding arithmetic coding.

Add a test image which demonstrates the bug.

Change-Id: I00f8f961f69e407dc31ca6d15c66518aa0acbafd
Reviewed-on: https://skia-review.googlesource.com/81442
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-12-07 13:15:20 +00:00
Leon Scroggins III
c8037dc5ed Reland "Hide SkEncodedInfo"
This partially reverts commit
1793e7bb46.

Hide SkEncodedInfo

Bug: skia:7353
Bug: skia:6839

This contains information that is not necessary for clients to know. The
Color enum tells the number of components in the input, but this is only
interesting internally (to the SkSwizzler).

Similarly, the Alpha enum differs from SkAlphaType in that it has
kBinary instead of kPremul. This is useful information only internally
for determining whether the SkColorSpaceXform needs to premultiply.

The bitsPerComponent is potentially useful for a client; Android (in
SkAndroidCodec) uses it to determine the SkColorType. Rather than
exposing bitsPerComponent, make SkAndroidCodec a friend so it can
access the SkEncodedInfo. A future change will change SkCodec to
recommend F16 for bitsPerComponent > 8, but that will be more involved;
it was the reason for the revert of this CL.

Switch conversionSupported to use an SkColorType, which is enough info.

Replace the SkEncodedInfo::Alpha field on SkCodec::FrameInfo with an
SkAlphaType.

SkCodec still needs an SkEncodedInfo, so move its header (which is
already not SK_API) to include/private.

TBR=mtklein@chromium.org,reed@google.com
Change-Id: I928b1f55317602cb37d29da63b53026c8d139cee
Reviewed-on: https://skia-review.googlesource.com/80860
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-12-05 19:28:08 +00:00
Mike Klein
f32b27d2e4 remove mips support and bots
The NDK has deprecated mips and mips64:
https://developer.android.com/ndk/guides/abis.html

Might as well clean this up now while I remember.

Change-Id: Ie4b2334c75208082067cc16fe355d0349c7e0904
Reviewed-on: https://skia-review.googlesource.com/80560
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2017-12-05 17:19:45 +00:00
Leon Scroggins
1793e7bb46 Revert "Hide SkEncodedInfo"
This reverts commit c6f7a4ffa9.

Reason for revert: Causing differences in Gold, stemming from the fact that this changes the recommended SkImageInfo for 16 bits-per-component PNG from N32 to F16.
- an F16 bitmap already png-encodes to a 16 bits-per-component PNG, but it does not encode a linear colorspace (possibly a bug?). when we decode this PNG using getInfo(), it fails because it has an F16 color type and non-linear colorspace. (In the encode-srgb-png gm, this results in blank results for F16.) We could correct this on the encoder side, but it seems possible that a 16 bits-per-component PNG could be encoded with a different color space. In that case, we'd want SkCodec to recommend F16/SRGBLinear, but I think we'd want the SkCodec to store the encoded SkColorSpace so that we can Xform between the two. Currently SkCodec only stores one color space, so that will require a refactor.
- When decoding 16-bits-per-component PNGs, we are now decoding them to F16. This shows differences in Gold. The srgb/gpu results now look more like F16. I think this is fine.

Original change's description:
> Hide SkEncodedInfo
> 
> Bug: skia:7353
> Bug: skia:6839
> 
> This contains information that is not necessary for clients to know. The
> Color enum tells the number of components in the input, but this is only
> interesting internally (to the SkSwizzler).
> 
> Similarly, the Alpha enum differs from SkAlphaType in that it has
> kBinary instead of kPremul. This is useful information only internally
> for determining whether the SkColorSpaceXform needs to premultiply.
> 
> The bitsPerComponent is potentially useful for a client; Android (in
> SkAndroidCodec) uses it to determine the SkColorType. Rather than
> exposing bitsPerComponent, use it to make the same decision that Android
> would have made - 16 bits per component means to set the info to F16. Add
> a test that computeOutputColorType behaves as expected.
> 
> Switch conversionSupported to use an SkColorType, which is enough info.
> 
> Replace the SkEncodedInfo::Alpha field on SkCodec::FrameInfo with an
> SkAlphaType.
> 
> SkCodec still needs an SkEncodedInfo, so move its header (which is
> already not SK_API) to include/private.
> 
> Change-Id: Ie2cf11339bf999ebfd4390c0f448f7edd6feabda
> Reviewed-on: https://skia-review.googlesource.com/79260
> Reviewed-by: Mike Reed <reed@google.com>
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Leon Scroggins <scroggo@google.com>

TBR=mtklein@chromium.org,scroggo@google.com,reed@google.com

Change-Id: I0c5dd1461e1b70d1e55349a8e7ee6b029c3f556e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7353, skia:6839
Reviewed-on: https://skia-review.googlesource.com/80660
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-12-05 15:38:22 +00:00
Leon Scroggins III
c6f7a4ffa9 Hide SkEncodedInfo
Bug: skia:7353
Bug: skia:6839

This contains information that is not necessary for clients to know. The
Color enum tells the number of components in the input, but this is only
interesting internally (to the SkSwizzler).

Similarly, the Alpha enum differs from SkAlphaType in that it has
kBinary instead of kPremul. This is useful information only internally
for determining whether the SkColorSpaceXform needs to premultiply.

The bitsPerComponent is potentially useful for a client; Android (in
SkAndroidCodec) uses it to determine the SkColorType. Rather than
exposing bitsPerComponent, use it to make the same decision that Android
would have made - 16 bits per component means to set the info to F16. Add
a test that computeOutputColorType behaves as expected.

Switch conversionSupported to use an SkColorType, which is enough info.

Replace the SkEncodedInfo::Alpha field on SkCodec::FrameInfo with an
SkAlphaType.

SkCodec still needs an SkEncodedInfo, so move its header (which is
already not SK_API) to include/private.

Change-Id: Ie2cf11339bf999ebfd4390c0f448f7edd6feabda
Reviewed-on: https://skia-review.googlesource.com/79260
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-12-05 00:52:42 +00:00