skia2/cmake
Mike Klein 78d5a3bac5 Add an SkOpts target for Haswell+ Intel chips.
Haswell brought a whole slew of handy new instructions for us (AVX2, FMA, BMI1+BMI2) and also feature F16C, which came one generation earlier on Ivybridge.  We work with integers often enough that we really want to target AVX2 instead of AVX, and this means it's pretty practical to ask for all those other goodies along with it.

Chrome's GN files and Google3's BUILD file will need an update, before or after this CL.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2840
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: I826daf77b5104664c5d31ddaabee347e287b87a2
Reviewed-on: https://skia-review.googlesource.com/2840
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
2016-09-30 15:10:48 +00:00
..
.gitignore CMake: generate skia.h and skia_{compile|link}_arguments.txt 2015-11-30 12:42:58 -08:00
cmake_build CMake: control static/shared the normal CMake way. 2016-05-24 09:44:05 -07:00
CMakeLists.txt Add an SkOpts target for Haswell+ Intel chips. 2016-09-30 15:10:48 +00:00
example.cpp cmake: fixes for windows 2016-05-12 11:25:01 -07:00
README.md CMake: skia_link_arguments.txt repects BUILD_SHARED_LIBS 2016-05-24 11:23:23 -07:00
SkUserConfig.h.in [CMake fixes] Linux X11 pixel format and Windows compilation fix 2016-03-25 09:01:26 -07:00

CMake build for Skia

This directory contains experiemental CMake build files for Skia. They are primarily targeted at building Skia as it would be shipped, not at day-to-day Skia development.

Quickstart

git clone https://skia.googlesource.com/skia.git
cd skia/cmake
cmake . -G Ninja     # Other CMake generators should work fine.
ninja
ls -l libskia.* example
./example
open example.png || xdg-open example.png

If that works, you should see "Hello World!" with a green-to-purple gradient.

Currently supported platforms

(None. This is still super experimental.)

Currently maybe-kinda-working platforms

  • x86-64 Mac OS X
  • x86-64 Ubuntu 15.04
  • x86-64 Windows 10, with extra caveats:
    • Compiles against DirectWrite, not GDI, for fonts
    • Configure with cmake . -G "Visual Studio 14 2015" .
    • Compile with cmake --build . --config Release .
    • Still has too many warnings.
    • Poorly tested as yet.