BUILD.gn revision 0590fa549d09bd1b6f26c0d5e470f35efe430d65
1c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein# Copyright 2016 Google Inc. 2c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein# 3c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein# Use of this source code is governed by a BSD-style license that can be 4c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein# found in the LICENSE file. 5c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 6c04ff4788cb425db6d9bec0bde4edb14aec97f16mtkleindeclare_args() { 7c095df55e86e7126b0582856720bb9177b553ff1mtklein skia_enable_tools = !is_fuchsia && !is_component_build 8c095df55e86e7126b0582856720bb9177b553ff1mtklein 96321381d18f9d478598c0996c1380633003961ddmtklein skia_use_expat = true 103cc22180561ae17a64ff0e0f9ba173eac149009emtklein skia_use_fontconfig = is_linux 113cc22180561ae17a64ff0e0f9ba173eac149009emtklein skia_use_freetype = is_android || is_linux 12457b42a6398020c3791f62f8c8637653e0d39bccmtklein skia_use_giflib = !is_fuchsia 136321381d18f9d478598c0996c1380633003961ddmtklein skia_use_libjpeg_turbo = true 146321381d18f9d478598c0996c1380633003961ddmtklein skia_use_libpng = true 15eb3c425f1b33836e116e8ed4eeb40e0c6d8dffb6mtklein skia_use_libwebp = !is_fuchsia 166321381d18f9d478598c0996c1380633003961ddmtklein skia_use_sfntly = !is_fuchsia 176321381d18f9d478598c0996c1380633003961ddmtklein skia_use_zlib = true 18c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein} 19c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 20a45be61d6beeb923d1b3352776042d58d7b7280dmtkleinfontmgr_android_enabled = skia_use_expat && skia_use_freetype 21a45be61d6beeb923d1b3352776042d58d7b7280dmtklein 221211e0ca74fc4b58dd314c87e94692b4d61be9b7mtkleinskia_public_includes = [ 2325c81d4e651b43b8217c365c87d530036529a673mtklein "include/android", 24fa84d94bb0b226f81b7eaa411aabbbaec3d180cbmtklein "include/c", 251211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/codec", 261211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/config", 271211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/core", 281211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/effects", 291211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/gpu", 301211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/gpu/gl", 311211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/images", 321211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/pathops", 331211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/ports", 3425c81d4e651b43b8217c365c87d530036529a673mtklein "include/svg", 351211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/utils", 361211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "include/utils/mac", 3725c81d4e651b43b8217c365c87d530036529a673mtklein "include/xml", 381211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein] 391211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein 40c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein# Skia public API, generally provided by :skia. 41c04ff4788cb425db6d9bec0bde4edb14aec97f16mtkleinconfig("skia_public") { 421211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein include_dirs = skia_public_includes 43c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein defines = [ "SKIA_DLL" ] 445561e3ddbbf6c3e051075ada4a11ddc70760f03djcgregorio if (is_linux) { 455561e3ddbbf6c3e051075ada4a11ddc70760f03djcgregorio defines += [ "SK_SAMPLES_FOR_X" ] 465561e3ddbbf6c3e051075ada4a11ddc70760f03djcgregorio } 47c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein} 48c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 49c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein# Skia internal APIs, used by Skia itself and a few test tools. 50c04ff4788cb425db6d9bec0bde4edb14aec97f16mtkleinconfig("skia_private") { 51c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein visibility = [ ":*" ] 52c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 53c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein include_dirs = [ 54c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "include/private", 55c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/c", 561211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec", 57c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/config", 58c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/core", 59c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/effects", 6025c81d4e651b43b8217c365c87d530036529a673mtklein "src/effects/gradients", 6125c81d4e651b43b8217c365c87d530036529a673mtklein "src/fonts", 62c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/gpu", 63c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/image", 64c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/images", 65c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/lazy", 66c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/opts", 67c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/pathops", 682b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "src/pdf", 69c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports", 70c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/sfnt", 719e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein "src/sksl", 72c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/utils", 737a1f45f9e584fef625e764bd5d180a9c4943dcd5mtklein "src/utils/win", 74c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "third_party/etc1", 75c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "third_party/ktx", 76c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 77150d113db56dc55b5e78f32febfb1e3b7c350611mtklein 786321381d18f9d478598c0996c1380633003961ddmtklein defines = [ "SK_GAMMA_APPLY_TO_A8" ] 79c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein} 80c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 81c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein# Any code that's linked into Skia-the-library should use this config via += skia_library_configs. 82c04ff4788cb425db6d9bec0bde4edb14aec97f16mtkleinconfig("skia_library") { 83c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein visibility = [ ":*" ] 84c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein defines = [ "SKIA_IMPLEMENTATION=1" ] 85c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein} 86c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 87c04ff4788cb425db6d9bec0bde4edb14aec97f16mtkleinskia_library_configs = [ 88c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ":skia_public", 89c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ":skia_private", 90c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ":skia_library", 91c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein] 92c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 937fbfbbe8f435fde7233c78f4f2dd1efb4fdd324cmtkleincore_gypi = exec_script("gn/gypi_to_gn.py", 94c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ 95c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein rebase_path("gyp/core.gypi"), 96c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_include_path)=include", 97c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_src_path)=src", 98c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ], 99c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "scope", 100c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ "gyp/core.gypi" ]) 101c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 1027fbfbbe8f435fde7233c78f4f2dd1efb4fdd324cmtkleineffects_gypi = exec_script("gn/gypi_to_gn.py", 103c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ 104c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein rebase_path("gyp/effects.gypi"), 105c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_include_path)=include", 106c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_src_path)=src", 107c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ], 108c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "scope", 109c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ "gyp/effects.gypi" ]) 110c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 1117fbfbbe8f435fde7233c78f4f2dd1efb4fdd324cmtkleingpu_gypi = exec_script("gn/gypi_to_gn.py", 112c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ 113c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein rebase_path("gyp/gpu.gypi"), 114c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_include_path)=include", 115c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_src_path)=src", 116c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ], 117c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "scope", 118c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ "gyp/gpu.gypi" ]) 119c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 1207fbfbbe8f435fde7233c78f4f2dd1efb4fdd324cmtkleinopts_gypi = exec_script("gn/gypi_to_gn.py", 121c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ 122c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein rebase_path("gyp/opts.gypi"), 123c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_include_path)=include", 124c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_src_path)=src", 125c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ], 126c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "scope", 127c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ "gyp/opts.gypi" ]) 128c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 1297fbfbbe8f435fde7233c78f4f2dd1efb4fdd324cmtkleinpdf_gypi = exec_script("gn/gypi_to_gn.py", 130c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ 131c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein rebase_path("gyp/pdf.gypi"), 132c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_include_path)=include", 133c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_src_path)=src", 134c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ], 135c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "scope", 136c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ "gyp/pdf.gypi" ]) 137c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 1389e0d9ddc0ef39e239670b22e5439993c45f4ae42mtkleinsksl_gypi = exec_script("gn/gypi_to_gn.py", 1399e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein [ 1409e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein rebase_path("gyp/sksl.gypi"), 1419e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein "--replace=<(skia_include_path)=include", 1429e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein "--replace=<(skia_src_path)=src", 1439e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein ], 1449e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein "scope", 1459e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein [ "gyp/sksl.gypi" ]) 1469e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein 1477fbfbbe8f435fde7233c78f4f2dd1efb4fdd324cmtkleinutils_gypi = exec_script("gn/gypi_to_gn.py", 148c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ 149c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein rebase_path("gyp/utils.gypi"), 150c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_include_path)=include", 151c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "--replace=<(skia_src_path)=src", 152c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ], 153c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "scope", 154c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein [ "gyp/utils.gypi" ]) 155c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 1569b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein# Use for CPU-specific Skia code that needs particular compiler flags. 1579b8583dd1f18657c08eaab047d79288b9f2c61a7mtkleintemplate("opts") { 1589b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein if (invoker.enabled) { 1599b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein source_set(target_name) { 1609b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein forward_variables_from(invoker, "*") 1619b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein configs += skia_library_configs 1629b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein } 1639b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein } else { 1649b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein # If not enabled, a phony empty target that swallows all otherwise unused variables. 1659b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein source_set(target_name) { 1669b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein forward_variables_from(invoker, 1679b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein "*", 1689b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein [ 1699b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein "sources", 1709b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein "cflags", 1719b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein ]) 1729b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein } 1739b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein } 174a7eaf2e7e84ff10d1ed76b5d1e039c1a2d931392anmittal} 175a7eaf2e7e84ff10d1ed76b5d1e039c1a2d931392anmittal 176422310ddbe4db616200a949adcac2c560685030cmtkleinis_x86 = current_cpu == "x64" || current_cpu == "x86" 177c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 1787d6fb2c92d096ac3630e23d561a4077a974a815cmtkleinopts("none") { 1797d6fb2c92d096ac3630e23d561a4077a974a815cmtklein enabled = !is_x86 && current_cpu != "arm" && current_cpu != "arm64" 1807d6fb2c92d096ac3630e23d561a4077a974a815cmtklein sources = opts_gypi.none_sources 181b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal cflags = [] 182b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal} 183b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal 1847d6fb2c92d096ac3630e23d561a4077a974a815cmtkleinopts("armv7") { 185b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal enabled = current_cpu == "arm" 1867d6fb2c92d096ac3630e23d561a4077a974a815cmtklein sources = opts_gypi.armv7_sources + opts_gypi.neon_sources 1877d6fb2c92d096ac3630e23d561a4077a974a815cmtklein cflags = [] 188b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal} 189b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal 190b8b3f71c5589aaed8ae76727f3d62642a192b359anmittalopts("arm64") { 191b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal enabled = current_cpu == "arm64" 192b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal sources = opts_gypi.arm64_sources 193b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal cflags = [] 194b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal} 195b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal 196b8b3f71c5589aaed8ae76727f3d62642a192b359anmittalopts("crc32") { 197b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal enabled = current_cpu == "arm64" 198b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal sources = opts_gypi.crc32_sources 199b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal cflags = [ "-march=armv8-a+crc" ] 200b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal} 201b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal 2029b8583dd1f18657c08eaab047d79288b9f2c61a7mtkleinopts("sse2") { 2039b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein enabled = is_x86 2049b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein sources = opts_gypi.sse2_sources 2059b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein cflags = [ "-msse2" ] 2069b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein} 2074e97607d9a1cef66fac16f347c5ca813ec4f9515mtklein 2089b8583dd1f18657c08eaab047d79288b9f2c61a7mtkleinopts("ssse3") { 2099b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein enabled = is_x86 2109b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein sources = opts_gypi.ssse3_sources 2119b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein cflags = [ "-mssse3" ] 2129b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein} 2134e97607d9a1cef66fac16f347c5ca813ec4f9515mtklein 2149b8583dd1f18657c08eaab047d79288b9f2c61a7mtkleinopts("sse41") { 2159b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein enabled = is_x86 2169b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein sources = opts_gypi.sse41_sources 2179b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein cflags = [ "-msse4.1" ] 2189b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein} 219c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 2209b8583dd1f18657c08eaab047d79288b9f2c61a7mtkleinopts("sse42") { 2219b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein enabled = is_x86 2229b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein sources = opts_gypi.sse42_sources 2239b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein cflags = [ "-msse4.2" ] 2249b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein} 2259b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein 2269b8583dd1f18657c08eaab047d79288b9f2c61a7mtkleinopts("avx") { 2279b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein enabled = is_x86 2289b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein sources = opts_gypi.avx_sources 2299b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein cflags = [ "-mavx" ] 230c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein} 231c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 232349cecefe21e2b45acc201290cc4e4fa93b4ad76mtkleinopts("dsp") { 233349cecefe21e2b45acc201290cc4e4fa93b4ad76mtklein enabled = current_cpu == "mipsel" 234349cecefe21e2b45acc201290cc4e4fa93b4ad76mtklein sources = opts_gypi.mips_dsp_sources 235b6064ef5b822ebc14d62170bd4ffa2f7c9bfbe4dmtklein cflags = [] 236349cecefe21e2b45acc201290cc4e4fa93b4ad76mtklein} 237349cecefe21e2b45acc201290cc4e4fa93b4ad76mtklein 238c095df55e86e7126b0582856720bb9177b553ff1mtklein# Any feature of Skia that requires third-party code should be optional and use this template. 239457b42a6398020c3791f62f8c8637653e0d39bccmtkleintemplate("optional") { 240457b42a6398020c3791f62f8c8637653e0d39bccmtklein if (invoker.enabled) { 241457b42a6398020c3791f62f8c8637653e0d39bccmtklein config(target_name + "_public") { 242cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein if (defined(invoker.public_defines)) { 243cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein defines = invoker.public_defines 244cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein } 245457b42a6398020c3791f62f8c8637653e0d39bccmtklein } 246457b42a6398020c3791f62f8c8637653e0d39bccmtklein source_set(target_name) { 247cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein forward_variables_from(invoker, 248cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein "*", 249cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein [ 250cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein "public_defines", 251cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein "sources_when_disabled", 252cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein ]) 253457b42a6398020c3791f62f8c8637653e0d39bccmtklein all_dependent_configs = [ ":" + target_name + "_public" ] 2549b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein configs += skia_library_configs 255457b42a6398020c3791f62f8c8637653e0d39bccmtklein } 256457b42a6398020c3791f62f8c8637653e0d39bccmtklein } else { 257457b42a6398020c3791f62f8c8637653e0d39bccmtklein source_set(target_name) { 258457b42a6398020c3791f62f8c8637653e0d39bccmtklein forward_variables_from(invoker, 259457b42a6398020c3791f62f8c8637653e0d39bccmtklein "*", 260457b42a6398020c3791f62f8c8637653e0d39bccmtklein [ 261457b42a6398020c3791f62f8c8637653e0d39bccmtklein "public_defines", 262457b42a6398020c3791f62f8c8637653e0d39bccmtklein "deps", 263457b42a6398020c3791f62f8c8637653e0d39bccmtklein "sources", 264cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein "sources_when_disabled", 265457b42a6398020c3791f62f8c8637653e0d39bccmtklein ]) 266cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein if (defined(invoker.sources_when_disabled)) { 267cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein sources = invoker.sources_when_disabled 268cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein } 269cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein configs += skia_library_configs 270457b42a6398020c3791f62f8c8637653e0d39bccmtklein } 271eb3c425f1b33836e116e8ed4eeb40e0c6d8dffb6mtklein } 272eb3c425f1b33836e116e8ed4eeb40e0c6d8dffb6mtklein} 273457b42a6398020c3791f62f8c8637653e0d39bccmtklein 274a45be61d6beeb923d1b3352776042d58d7b7280dmtkleinoptional("fontmgr_android") { 275a45be61d6beeb923d1b3352776042d58d7b7280dmtklein enabled = fontmgr_android_enabled 276a45be61d6beeb923d1b3352776042d58d7b7280dmtklein 277a45be61d6beeb923d1b3352776042d58d7b7280dmtklein deps = [ 278a45be61d6beeb923d1b3352776042d58d7b7280dmtklein "//third_party/expat", 279a45be61d6beeb923d1b3352776042d58d7b7280dmtklein "//third_party/freetype2", 280a45be61d6beeb923d1b3352776042d58d7b7280dmtklein ] 281a45be61d6beeb923d1b3352776042d58d7b7280dmtklein sources = [ 282a45be61d6beeb923d1b3352776042d58d7b7280dmtklein "src/ports/SkFontMgr_android.cpp", 283a45be61d6beeb923d1b3352776042d58d7b7280dmtklein "src/ports/SkFontMgr_android_factory.cpp", 284a45be61d6beeb923d1b3352776042d58d7b7280dmtklein "src/ports/SkFontMgr_android_parser.cpp", 285a45be61d6beeb923d1b3352776042d58d7b7280dmtklein ] 286a45be61d6beeb923d1b3352776042d58d7b7280dmtklein} 287a45be61d6beeb923d1b3352776042d58d7b7280dmtklein 2883cc22180561ae17a64ff0e0f9ba173eac149009emtkleinoptional("fontmgr_fontconfig") { 2893cc22180561ae17a64ff0e0f9ba173eac149009emtklein enabled = skia_use_freetype && skia_use_fontconfig 2903cc22180561ae17a64ff0e0f9ba173eac149009emtklein 2913cc22180561ae17a64ff0e0f9ba173eac149009emtklein deps = [ 2923cc22180561ae17a64ff0e0f9ba173eac149009emtklein "//third_party:fontconfig", 2933cc22180561ae17a64ff0e0f9ba173eac149009emtklein "//third_party/freetype2", 2943cc22180561ae17a64ff0e0f9ba173eac149009emtklein ] 2953cc22180561ae17a64ff0e0f9ba173eac149009emtklein sources = [ 2963cc22180561ae17a64ff0e0f9ba173eac149009emtklein "src/ports/SkFontConfigInterface_direct.cpp", 2973cc22180561ae17a64ff0e0f9ba173eac149009emtklein "src/ports/SkFontConfigInterface_direct_factory.cpp", 2983cc22180561ae17a64ff0e0f9ba173eac149009emtklein "src/ports/SkFontMgr_FontConfigInterface.cpp", 2993cc22180561ae17a64ff0e0f9ba173eac149009emtklein "src/ports/SkFontMgr_fontconfig.cpp", 3003cc22180561ae17a64ff0e0f9ba173eac149009emtklein "src/ports/SkFontMgr_fontconfig_factory.cpp", 3013cc22180561ae17a64ff0e0f9ba173eac149009emtklein ] 3023cc22180561ae17a64ff0e0f9ba173eac149009emtklein} 3033cc22180561ae17a64ff0e0f9ba173eac149009emtklein 304457b42a6398020c3791f62f8c8637653e0d39bccmtkleinoptional("gif") { 305457b42a6398020c3791f62f8c8637653e0d39bccmtklein enabled = skia_use_giflib 306457b42a6398020c3791f62f8c8637653e0d39bccmtklein public_defines = [ "SK_HAS_GIF_LIBRARY" ] 307457b42a6398020c3791f62f8c8637653e0d39bccmtklein 308457b42a6398020c3791f62f8c8637653e0d39bccmtklein deps = [ 309457b42a6398020c3791f62f8c8637653e0d39bccmtklein "//third_party/giflib", 310457b42a6398020c3791f62f8c8637653e0d39bccmtklein ] 311457b42a6398020c3791f62f8c8637653e0d39bccmtklein sources = [ 312457b42a6398020c3791f62f8c8637653e0d39bccmtklein "src/codec/SkGifCodec.cpp", 313457b42a6398020c3791f62f8c8637653e0d39bccmtklein ] 314457b42a6398020c3791f62f8c8637653e0d39bccmtklein} 315457b42a6398020c3791f62f8c8637653e0d39bccmtklein 3166321381d18f9d478598c0996c1380633003961ddmtkleinoptional("jpeg") { 3176321381d18f9d478598c0996c1380633003961ddmtklein enabled = skia_use_libjpeg_turbo 3186321381d18f9d478598c0996c1380633003961ddmtklein public_defines = [ "SK_HAS_JPEG_LIBRARY" ] 3196321381d18f9d478598c0996c1380633003961ddmtklein 3206321381d18f9d478598c0996c1380633003961ddmtklein deps = [ 3216321381d18f9d478598c0996c1380633003961ddmtklein "//third_party/libjpeg-turbo:libjpeg", 3226321381d18f9d478598c0996c1380633003961ddmtklein ] 3236321381d18f9d478598c0996c1380633003961ddmtklein sources = [ 3246321381d18f9d478598c0996c1380633003961ddmtklein "src/codec/SkJpegCodec.cpp", 3256321381d18f9d478598c0996c1380633003961ddmtklein "src/codec/SkJpegDecoderMgr.cpp", 3266321381d18f9d478598c0996c1380633003961ddmtklein "src/codec/SkJpegUtility.cpp", 3276321381d18f9d478598c0996c1380633003961ddmtklein "src/images/SkJPEGImageEncoder.cpp", 3286321381d18f9d478598c0996c1380633003961ddmtklein "src/images/SkJPEGWriteUtility.cpp", 3296321381d18f9d478598c0996c1380633003961ddmtklein ] 3306321381d18f9d478598c0996c1380633003961ddmtklein} 3316321381d18f9d478598c0996c1380633003961ddmtklein 3326321381d18f9d478598c0996c1380633003961ddmtkleinoptional("pdf") { 3336321381d18f9d478598c0996c1380633003961ddmtklein enabled = skia_use_zlib 3346321381d18f9d478598c0996c1380633003961ddmtklein 3356321381d18f9d478598c0996c1380633003961ddmtklein deps = [ 3366321381d18f9d478598c0996c1380633003961ddmtklein "//third_party/zlib", 3376321381d18f9d478598c0996c1380633003961ddmtklein ] 3386321381d18f9d478598c0996c1380633003961ddmtklein sources = pdf_gypi.sources 339cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein sources_when_disabled = [ "src/pdf/SkDocument_PDF_None.cpp" ] 3406321381d18f9d478598c0996c1380633003961ddmtklein 3416321381d18f9d478598c0996c1380633003961ddmtklein if (skia_use_sfntly) { 3426321381d18f9d478598c0996c1380633003961ddmtklein deps += [ "//third_party/sfntly" ] 343cd01b03df8acefbe0e8a37fa10b97d8a6fc0b992mtklein public_defines = [ "SK_PDF_USE_SFNTLY" ] 3446321381d18f9d478598c0996c1380633003961ddmtklein } 3456321381d18f9d478598c0996c1380633003961ddmtklein} 3466321381d18f9d478598c0996c1380633003961ddmtklein 3476321381d18f9d478598c0996c1380633003961ddmtkleinoptional("png") { 3486321381d18f9d478598c0996c1380633003961ddmtklein enabled = skia_use_libpng 3496321381d18f9d478598c0996c1380633003961ddmtklein public_defines = [ "SK_HAS_PNG_LIBRARY" ] 3506321381d18f9d478598c0996c1380633003961ddmtklein 3516321381d18f9d478598c0996c1380633003961ddmtklein deps = [ 3526321381d18f9d478598c0996c1380633003961ddmtklein "//third_party/libpng", 3536321381d18f9d478598c0996c1380633003961ddmtklein ] 3546321381d18f9d478598c0996c1380633003961ddmtklein sources = [ 3556321381d18f9d478598c0996c1380633003961ddmtklein "src/codec/SkIcoCodec.cpp", 3566321381d18f9d478598c0996c1380633003961ddmtklein "src/codec/SkPngCodec.cpp", 3576321381d18f9d478598c0996c1380633003961ddmtklein "src/images/SkPNGImageEncoder.cpp", 3586321381d18f9d478598c0996c1380633003961ddmtklein ] 3596321381d18f9d478598c0996c1380633003961ddmtklein} 3606321381d18f9d478598c0996c1380633003961ddmtklein 3613cc22180561ae17a64ff0e0f9ba173eac149009emtkleinoptional("typeface_freetype") { 3623cc22180561ae17a64ff0e0f9ba173eac149009emtklein enabled = skia_use_freetype 3633cc22180561ae17a64ff0e0f9ba173eac149009emtklein 3643cc22180561ae17a64ff0e0f9ba173eac149009emtklein deps = [ 3653cc22180561ae17a64ff0e0f9ba173eac149009emtklein "//third_party/freetype2", 3663cc22180561ae17a64ff0e0f9ba173eac149009emtklein ] 3673cc22180561ae17a64ff0e0f9ba173eac149009emtklein sources = [ 3683cc22180561ae17a64ff0e0f9ba173eac149009emtklein "src/ports/SkFontHost_FreeType.cpp", 3693cc22180561ae17a64ff0e0f9ba173eac149009emtklein "src/ports/SkFontHost_FreeType_common.cpp", 3703cc22180561ae17a64ff0e0f9ba173eac149009emtklein ] 3713cc22180561ae17a64ff0e0f9ba173eac149009emtklein} 3723cc22180561ae17a64ff0e0f9ba173eac149009emtklein 373457b42a6398020c3791f62f8c8637653e0d39bccmtkleinoptional("webp") { 374457b42a6398020c3791f62f8c8637653e0d39bccmtklein enabled = skia_use_libwebp 375457b42a6398020c3791f62f8c8637653e0d39bccmtklein public_defines = [ "SK_HAS_WEBP_LIBRARY" ] 376457b42a6398020c3791f62f8c8637653e0d39bccmtklein 377457b42a6398020c3791f62f8c8637653e0d39bccmtklein deps = [ 378457b42a6398020c3791f62f8c8637653e0d39bccmtklein "//third_party/libwebp", 379457b42a6398020c3791f62f8c8637653e0d39bccmtklein ] 380457b42a6398020c3791f62f8c8637653e0d39bccmtklein sources = [ 381457b42a6398020c3791f62f8c8637653e0d39bccmtklein "src/codec/SkWebpAdapterCodec.cpp", 382457b42a6398020c3791f62f8c8637653e0d39bccmtklein "src/codec/SkWebpCodec.cpp", 383457b42a6398020c3791f62f8c8637653e0d39bccmtklein "src/images/SkWEBPImageEncoder.cpp", 384457b42a6398020c3791f62f8c8637653e0d39bccmtklein ] 385457b42a6398020c3791f62f8c8637653e0d39bccmtklein} 386eb3c425f1b33836e116e8ed4eeb40e0c6d8dffb6mtklein 3876321381d18f9d478598c0996c1380633003961ddmtkleinoptional("xml") { 3886321381d18f9d478598c0996c1380633003961ddmtklein enabled = skia_use_expat 3896321381d18f9d478598c0996c1380633003961ddmtklein 3906321381d18f9d478598c0996c1380633003961ddmtklein deps = [ 3916321381d18f9d478598c0996c1380633003961ddmtklein "//third_party/expat", 3926321381d18f9d478598c0996c1380633003961ddmtklein ] 3936321381d18f9d478598c0996c1380633003961ddmtklein sources = [ 3946321381d18f9d478598c0996c1380633003961ddmtklein "src/xml/SkDOM.cpp", 3956321381d18f9d478598c0996c1380633003961ddmtklein "src/xml/SkXMLParser.cpp", 3966321381d18f9d478598c0996c1380633003961ddmtklein "src/xml/SkXMLWriter.cpp", 3976321381d18f9d478598c0996c1380633003961ddmtklein ] 3986321381d18f9d478598c0996c1380633003961ddmtklein} 3996321381d18f9d478598c0996c1380633003961ddmtklein 400c04ff4788cb425db6d9bec0bde4edb14aec97f16mtkleincomponent("skia") { 401c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein public_configs = [ ":skia_public" ] 402c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein configs += skia_library_configs 403c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 404c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein deps = [ 405b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal ":arm64", 406b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal ":armv7", 4079b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein ":avx", 408b8b3f71c5589aaed8ae76727f3d62642a192b359anmittal ":crc32", 409349cecefe21e2b45acc201290cc4e4fa93b4ad76mtklein ":dsp", 410a45be61d6beeb923d1b3352776042d58d7b7280dmtklein ":fontmgr_android", 4113cc22180561ae17a64ff0e0f9ba173eac149009emtklein ":fontmgr_fontconfig", 412457b42a6398020c3791f62f8c8637653e0d39bccmtklein ":gif", 4136321381d18f9d478598c0996c1380633003961ddmtklein ":jpeg", 4149b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein ":none", 4156321381d18f9d478598c0996c1380633003961ddmtklein ":pdf", 4166321381d18f9d478598c0996c1380633003961ddmtklein ":png", 4179b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein ":sse2", 4189b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein ":sse41", 4199b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein ":sse42", 4209b8583dd1f18657c08eaab047d79288b9f2c61a7mtklein ":ssse3", 4213cc22180561ae17a64ff0e0f9ba173eac149009emtklein ":typeface_freetype", 422eb3c425f1b33836e116e8ed4eeb40e0c6d8dffb6mtklein ":webp", 4236321381d18f9d478598c0996c1380633003961ddmtklein ":xml", 424c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 425c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 426c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources = [] 427c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += core_gypi.sources 428c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += effects_gypi.sources 429c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += gpu_gypi.skgpu_sources 4309e0d9ddc0ef39e239670b22e5439993c45f4ae42mtklein sources += sksl_gypi.sources 431c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += utils_gypi.sources 432c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += [ 43325c81d4e651b43b8217c365c87d530036529a673mtklein "src/android/SkBitmapRegionCodec.cpp", 43425c81d4e651b43b8217c365c87d530036529a673mtklein "src/android/SkBitmapRegionDecoder.cpp", 43525c81d4e651b43b8217c365c87d530036529a673mtklein "src/codec/SkAndroidCodec.cpp", 4361211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkBmpCodec.cpp", 4371211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkBmpMaskCodec.cpp", 4381211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkBmpRLECodec.cpp", 4391211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkBmpStandardCodec.cpp", 4401211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkCodec.cpp", 4411211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkCodecImageGenerator.cpp", 4421211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkMaskSwizzler.cpp", 4431211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkMasks.cpp", 44425c81d4e651b43b8217c365c87d530036529a673mtklein "src/codec/SkSampledCodec.cpp", 4451211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkSampler.cpp", 4461211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkSwizzler.cpp", 4471211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/codec/SkWbmpCodec.cpp", 44809e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "src/gpu/gl/GrGLDefaultInterface_native.cpp", 449c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/images/SkImageEncoder.cpp", 450c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/images/SkImageEncoder_Factory.cpp", 4512b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "src/images/SkKTXImageEncoder.cpp", 452c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkDiscardableMemory_none.cpp", 453c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkGlobalInitialization_default.cpp", 4541211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "src/ports/SkImageGenerator_skia.cpp", 455c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkMemory_malloc.cpp", 456c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkOSFile_stdio.cpp", 457c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/sfnt/SkOTTable_name.cpp", 458c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/sfnt/SkOTUtils.cpp", 45925c81d4e651b43b8217c365c87d530036529a673mtklein "src/svg/SkSVGCanvas.cpp", 46025c81d4e651b43b8217c365c87d530036529a673mtklein "src/svg/SkSVGDevice.cpp", 461c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/utils/mac/SkStream_mac.cpp", 462c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "third_party/etc1/etc1.cpp", 463c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "third_party/ktx/ktx.cpp", 464c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 46509e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein sources -= [ 46609e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "src/gpu/gl/GrGLCreateNativeInterface_none.cpp", 46709e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "src/gpu/gl/GrGLDefaultInterface_none.cpp", 46809e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein ] 469c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 4707d6fb2c92d096ac3630e23d561a4077a974a815cmtklein libs = [] 4717d6fb2c92d096ac3630e23d561a4077a974a815cmtklein 472c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein if (is_win) { 473c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += [ 474c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkDebug_win.cpp", 475c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkFontHost_win.cpp", 476c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkFontMgr_win_dw.cpp", 477c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkFontMgr_win_dw_factory.cpp", 478c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkImageEncoder_WIC.cpp", 479c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkImageGeneratorWIC.cpp", 480c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkOSFile_win.cpp", 481c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkScalerContext_win_dw.cpp", 482c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkTLS_win.cpp", 483c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkTypeface_win_dw.cpp", 48425c81d4e651b43b8217c365c87d530036529a673mtklein "src/xps/SkDocument_XPS.cpp", 485c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 4867a1f45f9e584fef625e764bd5d180a9c4943dcd5mtklein sources -= [ "src/utils/SkThreadUtils_pthread.cpp" ] 487c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein } else { 488c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += [ 489c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkOSFile_posix.cpp", 490c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkTLS_pthread.cpp", 49125c81d4e651b43b8217c365c87d530036529a673mtklein "src/xps/SkDocument_XPS_None.cpp", 492c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 493c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein } 494c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 4957d6fb2c92d096ac3630e23d561a4077a974a815cmtklein if (is_android) { 4967d6fb2c92d096ac3630e23d561a4077a974a815cmtklein deps += [ 4977d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "//third_party/cpu-features", 4987d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "//third_party/expat", 4997d6fb2c92d096ac3630e23d561a4077a974a815cmtklein ] 5007d6fb2c92d096ac3630e23d561a4077a974a815cmtklein sources += [ 5017d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp", 5027d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "src/ports/SkDebug_android.cpp", 5037d6fb2c92d096ac3630e23d561a4077a974a815cmtklein ] 5047d6fb2c92d096ac3630e23d561a4077a974a815cmtklein libs += [ 5057d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "EGL", 5067d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "GLESv2", 5077d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "log", 5087d6fb2c92d096ac3630e23d561a4077a974a815cmtklein ] 5097d6fb2c92d096ac3630e23d561a4077a974a815cmtklein } 5107d6fb2c92d096ac3630e23d561a4077a974a815cmtklein 511c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein if (is_linux) { 51209e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein libs += [ 51309e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "GL", 51409e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "GLU", 51509e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "X11", 51609e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein ] 517c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += [ 51809e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "src/gpu/gl/glx/GrGLCreateNativeInterface_glx.cpp", 5197d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "src/ports/SkDebug_stdio.cpp", 520c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 521c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein } 522c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 523c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein if (is_mac) { 524c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources += [ 52509e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "src/gpu/gl/mac/GrGLCreateNativeInterface_mac.cpp", 5267d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "src/ports/SkDebug_stdio.cpp", 527c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkFontHost_mac.cpp", 528c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkImageEncoder_CG.cpp", 529c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein "src/ports/SkImageGeneratorCG.cpp", 530c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 53109e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein libs += [ 53209e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "ApplicationServices.framework", 53309e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein "OpenGL.framework", 53409e61f72334c6fc4840560b56ff44761d7bf0e5dmtklein ] 535c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein } 5366fc8ff024bd823f350400a86e7b9daa1c25f618eabarth 5376fc8ff024bd823f350400a86e7b9daa1c25f618eabarth if (is_fuchsia) { 5382ff47c2390814df165234ab16b83dbacf97f1c0fmtklein sources += [ 5392ff47c2390814df165234ab16b83dbacf97f1c0fmtklein "src/gpu/gl/GrGLCreateNativeInterface_none.cpp", 5407d6fb2c92d096ac3630e23d561a4077a974a815cmtklein "src/ports/SkDebug_stdio.cpp", 5412ff47c2390814df165234ab16b83dbacf97f1c0fmtklein "src/ports/SkFontMgr_empty_factory.cpp", 5422ff47c2390814df165234ab16b83dbacf97f1c0fmtklein ] 5436fc8ff024bd823f350400a86e7b9daa1c25f618eabarth } 544c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein} 545c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein 546ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtkleinskia_h_headers = exec_script("gyp/find.py", 547ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein [ "*.h" ] + rebase_path(skia_public_includes), 548ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein "list lines", 549ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein []) - 550ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein [ 551ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein rebase_path("include/gpu/gl/GrGLConfig_chrome.h"), 552ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein rebase_path("include/gpu/vk/GrVkBackendContext.h"), 553ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein rebase_path("include/gpu/vk/GrVkDefines.h"), 554ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein rebase_path("include/gpu/vk/GrVkInterface.h"), 555ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein rebase_path("include/gpu/vk/GrVkTypes.h"), 556ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein rebase_path("include/ports/SkFontMgr_fontconfig.h"), 557ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein ] 558ada5a44f3bdac10a8a0c53b34f5add7aea9fdbb0mtklein 5591211e0ca74fc4b58dd314c87e94692b4d61be9b7mtkleinaction("skia.h") { 5601211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein script = "gn/echo_headers.py" 5611211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein args = [ rebase_path("$target_gen_dir/skia.h", root_build_dir) ] + 562c095df55e86e7126b0582856720bb9177b553ff1mtklein rebase_path(skia_h_headers, target_gen_dir) 5631211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein outputs = [ 5641211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "$target_gen_dir/skia.h", 5651211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein ] 5661211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein} 5671211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein 5681211e0ca74fc4b58dd314c87e94692b4d61be9b7mtkleinexecutable("fiddle") { 5691211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein include_dirs = [ "$target_gen_dir" ] 5707d10b9f6e61ce8cb5387291580c1c0645f72b167mtklein libs = [] 5717d10b9f6e61ce8cb5387291580c1c0645f72b167mtklein if (is_linux) { 5727d10b9f6e61ce8cb5387291580c1c0645f72b167mtklein libs += [ "OSMesa" ] 5737d10b9f6e61ce8cb5387291580c1c0645f72b167mtklein } 5741211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein 575c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein sources = [ 576c095df55e86e7126b0582856720bb9177b553ff1mtklein "src/images/SkForceLinking.cpp", 5771211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "tools/fiddle/draw.cpp", 5781211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein "tools/fiddle/fiddle_main.cpp", 579c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 580c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein deps = [ 581c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ":skia", 5821211e0ca74fc4b58dd314c87e94692b4d61be9b7mtklein ":skia.h", 583c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein ] 584c04ff4788cb425db6d9bec0bde4edb14aec97f16mtklein} 58525c81d4e651b43b8217c365c87d530036529a673mtklein 586c095df55e86e7126b0582856720bb9177b553ff1mtklein# Targets guarded by skia_enable_tools may use //third_party freely. 587c095df55e86e7126b0582856720bb9177b553ff1mtkleinif (skia_enable_tools) { 588c095df55e86e7126b0582856720bb9177b553ff1mtklein template("test_lib") { 589c095df55e86e7126b0582856720bb9177b553ff1mtklein config(target_name + "_config") { 590c095df55e86e7126b0582856720bb9177b553ff1mtklein include_dirs = invoker.public_include_dirs 591c095df55e86e7126b0582856720bb9177b553ff1mtklein } 592c095df55e86e7126b0582856720bb9177b553ff1mtklein source_set(target_name) { 593c095df55e86e7126b0582856720bb9177b553ff1mtklein forward_variables_from(invoker, "*", [ "public_include_dirs" ]) 594c095df55e86e7126b0582856720bb9177b553ff1mtklein public_configs = [ 595c095df55e86e7126b0582856720bb9177b553ff1mtklein ":" + target_name + "_config", 596c095df55e86e7126b0582856720bb9177b553ff1mtklein ":skia_private", 597c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 598c095df55e86e7126b0582856720bb9177b553ff1mtklein 599c095df55e86e7126b0582856720bb9177b553ff1mtklein if (!defined(deps)) { 600c095df55e86e7126b0582856720bb9177b553ff1mtklein deps = [] 601c095df55e86e7126b0582856720bb9177b553ff1mtklein } 602c095df55e86e7126b0582856720bb9177b553ff1mtklein deps += [ ":skia" ] 603c095df55e86e7126b0582856720bb9177b553ff1mtklein testonly = true 604c095df55e86e7126b0582856720bb9177b553ff1mtklein } 60525c81d4e651b43b8217c365c87d530036529a673mtklein } 606c095df55e86e7126b0582856720bb9177b553ff1mtklein 607c095df55e86e7126b0582856720bb9177b553ff1mtklein test_lib("gpu_tool_utils") { 608c095df55e86e7126b0582856720bb9177b553ff1mtklein public_include_dirs = [ "tools/gpu" ] 609c095df55e86e7126b0582856720bb9177b553ff1mtklein sources = [ 610c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/GrContextFactory.cpp", 611c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/GrTest.cpp", 612c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/TestContext.cpp", 613c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/GLTestContext.cpp", 614c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/debug/DebugGLTestContext.cpp", 615c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/debug/GrBufferObj.cpp", 616c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/debug/GrFrameBufferObj.cpp", 617c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/debug/GrProgramObj.cpp", 618c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/debug/GrShaderObj.cpp", 619c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/debug/GrTextureObj.cpp", 620c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/debug/GrTextureUnitObj.cpp", 621c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/gpu/gl/null/NullGLTestContext.cpp", 62225c81d4e651b43b8217c365c87d530036529a673mtklein ] 623c095df55e86e7126b0582856720bb9177b553ff1mtklein libs = [] 62425c81d4e651b43b8217c365c87d530036529a673mtklein 6257d6fb2c92d096ac3630e23d561a4077a974a815cmtklein if (is_android) { 6267d6fb2c92d096ac3630e23d561a4077a974a815cmtklein sources += [ "tools/gpu/gl/egl/CreatePlatformGLTestContext_egl.cpp" ] 6277d6fb2c92d096ac3630e23d561a4077a974a815cmtklein } else if (is_linux) { 628c095df55e86e7126b0582856720bb9177b553ff1mtklein sources += [ "tools/gpu/gl/glx/CreatePlatformGLTestContext_glx.cpp" ] 629c095df55e86e7126b0582856720bb9177b553ff1mtklein } else if (is_mac) { 630c095df55e86e7126b0582856720bb9177b553ff1mtklein sources += [ "tools/gpu/gl/mac/CreatePlatformGLTestContext_mac.cpp" ] 63125c81d4e651b43b8217c365c87d530036529a673mtklein } 63225c81d4e651b43b8217c365c87d530036529a673mtklein } 63325c81d4e651b43b8217c365c87d530036529a673mtklein 634c095df55e86e7126b0582856720bb9177b553ff1mtklein test_lib("flags") { 635c095df55e86e7126b0582856720bb9177b553ff1mtklein public_include_dirs = [ "tools/flags" ] 636c095df55e86e7126b0582856720bb9177b553ff1mtklein sources = [ 637c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/flags/SkCommandLineFlags.cpp", 638c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/flags/SkCommonFlags.cpp", 639c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/flags/SkCommonFlagsConfig.cpp", 640c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 641c095df55e86e7126b0582856720bb9177b553ff1mtklein deps = [ 642c095df55e86e7126b0582856720bb9177b553ff1mtklein ":gpu_tool_utils", 643c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 64425c81d4e651b43b8217c365c87d530036529a673mtklein } 64525c81d4e651b43b8217c365c87d530036529a673mtklein 646c095df55e86e7126b0582856720bb9177b553ff1mtklein test_lib("tool_utils") { 647c095df55e86e7126b0582856720bb9177b553ff1mtklein public_include_dirs = [ 648c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools", 649c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/debugger", 650c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/timer", 651c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 652c095df55e86e7126b0582856720bb9177b553ff1mtklein sources = [ 653c095df55e86e7126b0582856720bb9177b553ff1mtklein "src/images/SkForceLinking.cpp", 654c095df55e86e7126b0582856720bb9177b553ff1mtklein "src/utils/SkMultiPictureDocumentReader.cpp", # TODO(halcanary): move to tools? 655c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/CrashHandler.cpp", 6560590fa549d09bd1b6f26c0d5e470f35efe430d65mtklein "tools/LsanSuppressions.cpp", 657c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/ProcStats.cpp", 658c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/Resources.cpp", 659c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/ThermalManager.cpp", 660c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/UrlDataManager.cpp", 661c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/debugger/SkDebugCanvas.cpp", 662c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/debugger/SkDrawCommand.cpp", 663c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/debugger/SkJsonWriteBuffer.cpp", 664c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/debugger/SkObjectParser.cpp", 665c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/debugger/SkOverdrawMode.cpp", 666c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/picture_utils.cpp", 667c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/random_parse_path.cpp", 668c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/sk_tool_utils.cpp", 669c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/sk_tool_utils_font.cpp", 670c095df55e86e7126b0582856720bb9177b553ff1mtklein "tools/timer/Timer.cpp", 671c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 672c095df55e86e7126b0582856720bb9177b553ff1mtklein deps = [ 673c095df55e86e7126b0582856720bb9177b553ff1mtklein ":flags", 674c095df55e86e7126b0582856720bb9177b553ff1mtklein "//third_party/libpng", 675c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 676c095df55e86e7126b0582856720bb9177b553ff1mtklein public_deps = [ 677c095df55e86e7126b0582856720bb9177b553ff1mtklein "//third_party/jsoncpp", 678c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 679c095df55e86e7126b0582856720bb9177b553ff1mtklein } 68025c81d4e651b43b8217c365c87d530036529a673mtklein 681c095df55e86e7126b0582856720bb9177b553ff1mtklein gm_sources = exec_script("gyp/find.py", 682c095df55e86e7126b0582856720bb9177b553ff1mtklein [ 683c095df55e86e7126b0582856720bb9177b553ff1mtklein "*.c*", 684c095df55e86e7126b0582856720bb9177b553ff1mtklein rebase_path("gm"), 685c095df55e86e7126b0582856720bb9177b553ff1mtklein ], 686c095df55e86e7126b0582856720bb9177b553ff1mtklein "list lines", 687c095df55e86e7126b0582856720bb9177b553ff1mtklein []) 688c095df55e86e7126b0582856720bb9177b553ff1mtklein test_lib("gm") { 689c095df55e86e7126b0582856720bb9177b553ff1mtklein public_include_dirs = [ "gm" ] 690c095df55e86e7126b0582856720bb9177b553ff1mtklein sources = gm_sources 691c095df55e86e7126b0582856720bb9177b553ff1mtklein deps = [ 692c095df55e86e7126b0582856720bb9177b553ff1mtklein ":gpu_tool_utils", 693c095df55e86e7126b0582856720bb9177b553ff1mtklein ":skia", 694c095df55e86e7126b0582856720bb9177b553ff1mtklein ":tool_utils", 695c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 696c095df55e86e7126b0582856720bb9177b553ff1mtklein } 69725c81d4e651b43b8217c365c87d530036529a673mtklein 698c095df55e86e7126b0582856720bb9177b553ff1mtklein tests_sources = exec_script("gyp/find.py", 699c095df55e86e7126b0582856720bb9177b553ff1mtklein [ 700c095df55e86e7126b0582856720bb9177b553ff1mtklein "*.c*", 701c095df55e86e7126b0582856720bb9177b553ff1mtklein rebase_path("tests"), 702c095df55e86e7126b0582856720bb9177b553ff1mtklein ], 703c095df55e86e7126b0582856720bb9177b553ff1mtklein "list lines", 704c095df55e86e7126b0582856720bb9177b553ff1mtklein []) 705c095df55e86e7126b0582856720bb9177b553ff1mtklein 706c095df55e86e7126b0582856720bb9177b553ff1mtklein test_lib("tests") { 707c095df55e86e7126b0582856720bb9177b553ff1mtklein public_include_dirs = [ "tests" ] 708a45be61d6beeb923d1b3352776042d58d7b7280dmtklein sources = tests_sources - [ 709a45be61d6beeb923d1b3352776042d58d7b7280dmtklein rebase_path("tests/PathOpsSkpClipTest.cpp"), # alternate main 710a45be61d6beeb923d1b3352776042d58d7b7280dmtklein rebase_path("tests/SkpSkGrTest.cpp"), # doesn't compile 711a45be61d6beeb923d1b3352776042d58d7b7280dmtklein rebase_path("tests/skia_test.cpp"), # alternate main 712a45be61d6beeb923d1b3352776042d58d7b7280dmtklein ] 713a45be61d6beeb923d1b3352776042d58d7b7280dmtklein if (!fontmgr_android_enabled) { 714a45be61d6beeb923d1b3352776042d58d7b7280dmtklein sources -= [ rebase_path("tests/FontMgrAndroidParserTest.cpp") ] 715a45be61d6beeb923d1b3352776042d58d7b7280dmtklein } 716c095df55e86e7126b0582856720bb9177b553ff1mtklein deps = [ 7176cf896d7ce03b87b3a5595bc66caf0a34c993755fmalita ":experimental_svg_model", 718c095df55e86e7126b0582856720bb9177b553ff1mtklein ":flags", 719c095df55e86e7126b0582856720bb9177b553ff1mtklein ":gpu_tool_utils", 720c095df55e86e7126b0582856720bb9177b553ff1mtklein ":skia", 721c095df55e86e7126b0582856720bb9177b553ff1mtklein ":tool_utils", 722c095df55e86e7126b0582856720bb9177b553ff1mtklein "//third_party/libpng", 723c095df55e86e7126b0582856720bb9177b553ff1mtklein "//third_party/zlib", 724c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 725c095df55e86e7126b0582856720bb9177b553ff1mtklein } 7262f3416d2befb9480b7faf461530fd9044f77e6cdmtklein 727c095df55e86e7126b0582856720bb9177b553ff1mtklein bench_sources = exec_script("gyp/find.py", 728c095df55e86e7126b0582856720bb9177b553ff1mtklein [ 729c095df55e86e7126b0582856720bb9177b553ff1mtklein "*.c*", 730c095df55e86e7126b0582856720bb9177b553ff1mtklein rebase_path("bench"), 731c095df55e86e7126b0582856720bb9177b553ff1mtklein ], 732c095df55e86e7126b0582856720bb9177b553ff1mtklein "list lines", 733c095df55e86e7126b0582856720bb9177b553ff1mtklein []) 734c095df55e86e7126b0582856720bb9177b553ff1mtklein 735c095df55e86e7126b0582856720bb9177b553ff1mtklein test_lib("bench") { 736c095df55e86e7126b0582856720bb9177b553ff1mtklein public_include_dirs = [ "bench" ] 737c095df55e86e7126b0582856720bb9177b553ff1mtklein sources = bench_sources 738c095df55e86e7126b0582856720bb9177b553ff1mtklein sources -= [ 739c095df55e86e7126b0582856720bb9177b553ff1mtklein rebase_path("bench/nanobench.cpp"), 740c095df55e86e7126b0582856720bb9177b553ff1mtklein rebase_path("bench/nanobenchAndroid.cpp"), 741c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 742c095df55e86e7126b0582856720bb9177b553ff1mtklein deps = [ 743c095df55e86e7126b0582856720bb9177b553ff1mtklein ":flags", 744c095df55e86e7126b0582856720bb9177b553ff1mtklein ":gm", 745c095df55e86e7126b0582856720bb9177b553ff1mtklein ":gpu_tool_utils", 746c095df55e86e7126b0582856720bb9177b553ff1mtklein ":skia", 747c095df55e86e7126b0582856720bb9177b553ff1mtklein ":tool_utils", 748c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 749c095df55e86e7126b0582856720bb9177b553ff1mtklein } 7502b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein 751c095df55e86e7126b0582856720bb9177b553ff1mtklein test_lib("experimental_svg_model") { 752c095df55e86e7126b0582856720bb9177b553ff1mtklein public_include_dirs = [ "experimental/svg/model" ] 753c095df55e86e7126b0582856720bb9177b553ff1mtklein sources = [ 754c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGAttribute.cpp", 755c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGAttributeParser.cpp", 756c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGCircle.cpp", 757c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGContainer.cpp", 758c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGDOM.cpp", 759c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGEllipse.cpp", 760c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGLine.cpp", 761c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGNode.cpp", 762c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGPath.cpp", 763c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGPoly.cpp", 764c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGRect.cpp", 765c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGRenderContext.cpp", 766c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGSVG.cpp", 767c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGShape.cpp", 768c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGTransformableNode.cpp", 769c095df55e86e7126b0582856720bb9177b553ff1mtklein "experimental/svg/model/SkSVGValue.cpp", 770c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 771c095df55e86e7126b0582856720bb9177b553ff1mtklein deps = [ 772c095df55e86e7126b0582856720bb9177b553ff1mtklein ":skia", 773c095df55e86e7126b0582856720bb9177b553ff1mtklein ] 774c095df55e86e7126b0582856720bb9177b553ff1mtklein } 775a2b9fdfe0b2dd3408064b7cfd1bf8677eaf06491fmalita 7762b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein executable("dm") { 7772b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein sources = [ 7782b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "dm/DM.cpp", 7792b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "dm/DMJsonWriter.cpp", 7802b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "dm/DMSrcSink.cpp", 7812b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ] 7822b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein include_dirs = [ "tests" ] 7832b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein deps = [ 784a2b9fdfe0b2dd3408064b7cfd1bf8677eaf06491fmalita ":experimental_svg_model", 7852b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":flags", 7862b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":gm", 7872b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":gpu_tool_utils", 7882b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":skia", 7892f3416d2befb9480b7faf461530fd9044f77e6cdmtklein ":tests", 7902b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":tool_utils", 7912b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "//third_party/jsoncpp", 7922b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "//third_party/libpng", 7932b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ] 7942b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein testonly = true 7952b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein } 7962b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein 7972b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein executable("monobench") { 7982b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein sources = [ 7992b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "tools/monobench.cpp", 8002b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ] 8012b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein deps = [ 8022b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":bench", 8032b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":skia", 8042b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ] 8052b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein testonly = true 8062b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein } 8072b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein 8082b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein executable("nanobench") { 8092b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein sources = [ 8102b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "bench/nanobench.cpp", 8112b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ] 8122b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein deps = [ 8132b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":bench", 8142b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":flags", 8152b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":gm", 8162b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":gpu_tool_utils", 8172b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":skia", 8182b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ":tool_utils", 8192b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein "//third_party/jsoncpp", 8202b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein ] 8212b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein testonly = true 8222b6870ccb21f0dbcfb17644e9badfb1d07009315mtklein } 82319a9720978700a24efed8dda7e0935ea2b7338c4halcanary 8246f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein if (current_cpu != "mipsel") { # Clang 3.8 crashes while compiling hb-icu.cc for mipsel. 8256f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein executable("sktexttopdf") { 8266f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein sources = [ 8276f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein "tools/SkShaper_harfbuzz.cpp", 8286f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein "tools/using_skia_and_harfbuzz.cpp", 8296f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein ] 8306f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein deps = [ 8316f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein ":skia", 8326f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein "//third_party/harfbuzz", 8336f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein ] 8346f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein testonly = true 8356f5df6acb7dec9788fe5d9c44f7892b896e21de3mtklein } 83619a9720978700a24efed8dda7e0935ea2b7338c4halcanary } 83725c81d4e651b43b8217c365c87d530036529a673mtklein} 838