diff options
author | halcanary <halcanary@google.com> | 2015-09-21 09:42:23 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-09-21 09:42:23 -0700 |
commit | 4ae26258ef1705faa303eb9eb6b779695b9143f8 (patch) | |
tree | 9501dd8d1ec32b1b312e6bfbbbc67dbfb3adc903 /cmake | |
parent | 0fc1dbe59271d507e1435a5d06bbfc2ec5bb4816 (diff) |
CMake: Compile in OSMesa on Linux, if found.
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Mac10.9-Clang-x86_64-Release-CMake-Trybot,Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot
Review URL: https://codereview.chromium.org/1353383003
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/CMakeLists.txt | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index 36a6d1ecf3..4f9ced2f5f 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -100,7 +100,6 @@ remove_srcs( ../src/gpu/gl/command_buffer/* ../src/gpu/gl/egl/* ../src/gpu/gl/iOS/* - ../src/gpu/gl/mesa/* ../src/opts/SkBitmapProcState_opts_none.cpp ../src/opts/SkBlitMask_opts_none.cpp ../src/opts/SkBlitRow_opts_none.cpp @@ -125,6 +124,8 @@ find_package (ZLIB) # No find_package for libwebp as far as I can tell, so simulate it here. find_path (WEBP_INCLUDE_DIRS "webp/decode.h") find_library (WEBP_LIBRARIES webp) +find_path (OSMESA_INCLUDE_DIRS "GL/osmesa.h") +find_library(OSMESA_LIBRARIES "OSMesa") if (UNIX AND NOT APPLE) find_package (Freetype) @@ -196,6 +197,16 @@ if (APPLE) list (APPEND libs ${APPLICATION_SERVICES_FRAMEWORK}) endif() +if (OSMESA_LIBRARIES AND OSMESA_INCLUDE_DIRS) + list (APPEND libs ${OSMESA_LIBRARIES}) + list (APPEND private_includes ${OSMESA_INCLUDE_DIRS}) + list (APPEND public_defines "-DSK_MESA=1") + message("-- Found OSMesa: " ${OSMESA_LIBRARIES}) +else() + remove_srcs(../src/gpu/gl/mesa/*) + message("-- Could NOT find OSMesa") +endif() + find_package(OpenGL REQUIRED) list (APPEND libs ${OPENGL_LIBRARIES}) @@ -204,9 +215,11 @@ list (APPEND libs ${OPENGL_LIBRARIES}) # not so much that we think Skia is a good candidate to ship as a shared library. add_library (skia SHARED ${srcs}) +list (APPEND private_defines "-DSKIA_DLL") + target_compile_definitions(skia - PUBLIC - PRIVATE -DSKIA_DLL) + PUBLIC ${public_defines} + PRIVATE ${private_defines}) target_include_directories(skia PUBLIC ${public_includes} |