Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(131)

Unified Diff: BUILD.gn

Issue 2356853002: GN: add skia_enable_gpu (default true) (Closed)
Patch Set: rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | infra/bots/recipe_modules/flavor/gn_flavor.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: BUILD.gn
diff --git a/BUILD.gn b/BUILD.gn
index c94f3cf9dfb64d579ad8fef75afc191e1175484a..3c6ac0f462447cd4fbb40ce200843ca91c95bffc 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -6,8 +6,6 @@
import("gn/shared_sources.gni")
declare_args() {
- skia_enable_tools = !is_fuchsia && !is_component_build
-
skia_use_expat = true
skia_use_fontconfig = is_linux
skia_use_freetype = is_android || is_fuchsia || is_linux
@@ -20,8 +18,13 @@ declare_args() {
skia_use_zlib = true
skia_enable_android_framework_defines = false
+ skia_enable_gpu = true
+ skia_enable_tools = !is_fuchsia
}
+# Our tools require static linking (they use non-exported symbols) and GPU support (just lazy).
+skia_enable_tools = skia_enable_tools && skia_enable_gpu && !is_component_build
+
fontmgr_android_enabled = skia_use_expat && skia_use_freetype
skia_public_includes = [
@@ -52,6 +55,9 @@ config("skia_public") {
if (skia_enable_android_framework_defines) {
defines += skia_android_framework_defines
}
+ if (!skia_enable_gpu) {
+ defines += [ "SK_SUPPORT_GPU=0" ]
+ }
}
# Skia internal APIs, used by Skia itself and a few test tools.
@@ -294,6 +300,27 @@ optional("gif") {
]
}
+optional("gpu") {
+ enabled = skia_enable_gpu
+ sources = skia_gpu_sources + [ "src/gpu/gl/GrGLDefaultInterface_native.cpp" ]
+
+ # These paths need to be absolute to match the ones produced by shared_sources.gni.
+ sources -= get_path_info([
+ "src/gpu/gl/GrGLCreateNativeInterface_none.cpp",
+ "src/gpu/gl/GrGLDefaultInterface_none.cpp",
+ ],
+ "abspath")
+ if (is_android) {
+ sources += [ "src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp" ]
+ } else if (is_linux) {
+ sources += [ "src/gpu/gl/glx/GrGLCreateNativeInterface_glx.cpp" ]
+ } else if (is_mac) {
+ sources += [ "src/gpu/gl/mac/GrGLCreateNativeInterface_mac.cpp" ]
+ } else {
+ sources += [ "src/gpu/gl/GrGLCreateNativeInterface_none.cpp" ]
+ }
+}
+
optional("jpeg") {
enabled = skia_use_libjpeg_turbo
public_defines = [ "SK_HAS_JPEG_LIBRARY" ]
@@ -400,6 +427,7 @@ component("skia") {
":fontmgr_fontconfig",
":fontmgr_fuchsia",
":gif",
+ ":gpu",
":jpeg",
":none",
":pdf",
@@ -417,7 +445,6 @@ component("skia") {
sources = []
sources += skia_core_sources
sources += skia_effects_sources
- sources += skia_gpu_sources
sources += skia_sksl_sources
sources += skia_utils_sources
sources += [
@@ -436,7 +463,6 @@ component("skia") {
"src/codec/SkSampler.cpp",
"src/codec/SkSwizzler.cpp",
"src/codec/SkWbmpCodec.cpp",
- "src/gpu/gl/GrGLDefaultInterface_native.cpp",
"src/images/SkImageEncoder.cpp",
"src/images/SkImageEncoder_Factory.cpp",
"src/images/SkKTXImageEncoder.cpp",
@@ -454,15 +480,6 @@ component("skia") {
"third_party/ktx/ktx.cpp",
]
- # These paths need to be absolute to match the ones produced by
- # shared_sources.gni, but this file may be used from different directory
- # locations.
- sources -= get_path_info([
- "src/gpu/gl/GrGLCreateNativeInterface_none.cpp",
- "src/gpu/gl/GrGLDefaultInterface_none.cpp",
- ],
- "abspath")
-
libs = []
if (is_win) {
@@ -494,10 +511,7 @@ component("skia") {
"//third_party/cpu-features",
"//third_party/expat",
]
- sources += [
- "src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp",
- "src/ports/SkDebug_android.cpp",
- ]
+ sources += [ "src/ports/SkDebug_android.cpp" ]
libs += [
"EGL",
"GLESv2",
@@ -511,15 +525,11 @@ component("skia") {
"GLU",
"X11",
]
- sources += [
- "src/gpu/gl/glx/GrGLCreateNativeInterface_glx.cpp",
- "src/ports/SkDebug_stdio.cpp",
- ]
+ sources += [ "src/ports/SkDebug_stdio.cpp" ]
}
if (is_mac) {
sources += [
- "src/gpu/gl/mac/GrGLCreateNativeInterface_mac.cpp",
"src/ports/SkDebug_stdio.cpp",
"src/ports/SkFontHost_mac.cpp",
"src/ports/SkImageEncoder_CG.cpp",
@@ -532,10 +542,7 @@ component("skia") {
}
if (is_fuchsia) {
- sources += [
- "src/gpu/gl/GrGLCreateNativeInterface_none.cpp",
- "src/ports/SkDebug_stdio.cpp",
- ]
+ sources += [ "src/ports/SkDebug_stdio.cpp" ]
}
}
@@ -561,7 +568,7 @@ action("skia.h") {
]
}
-if (target_cpu == "x64") {
+if (skia_enable_gpu && target_cpu == "x64") {
# Our bots only have 64-bit libOSMesa installed.
# TODO: worth fixing?
executable("fiddle") {
« no previous file with comments | « no previous file | infra/bots/recipe_modules/flavor/gn_flavor.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698