blob: f69e9b63c1fa9b11d3447c8f81ccf2b863e20ba5 [file] [log] [blame]
benjaminwagner787ca872015-08-17 12:58:10 -07001# Description:
2# Skia graphics library.
3#
4# Definitions for Google BUILD file.
5
6exports_files(["BUILD.public"])
7
8# Platform-independent SRCS
9SRCS = glob(
10 [
11 "google/*.cpp",
12 "src/c/*.cpp",
13 "src/core/*.cpp",
14 "src/device/*.cpp",
15 "src/doc/*.cpp",
16 "src/effects/*.cpp",
17 "src/effects/gradients/*.cpp",
18 "src/image/*.cpp",
19 "src/images/*.cpp",
20 "src/lazy/*.cpp",
21 "src/pathops/*.cpp",
22 "src/pdf/*.cpp",
23 "src/pipe/*.cpp",
24 "src/sfnt/*.cpp",
25 "src/utils/*.cpp",
26 "src/gpu/*.cpp",
27 "src/gpu/effects/*.cpp",
28 "src/gpu/gl/*.cpp",
29 "src/gpu/gl/builders/*.cpp",
30 "src/gpu/gl/debug/*.cpp",
31 "src/gpu/gl/glx/*.cpp",
32 "src/opts/opts_check_x86.cpp",
33 "src/opts/*SSE2*.cpp",
34 "src/opts/SkTextureCompression_opts_none.cpp",
35
36 # TODO(mtklein): might be more maintainable with a blacklist instead?
37 "src/ports/SkBarriers_x86.cpp",
38 "src/ports/SkDebug_stdio.cpp",
39 "src/ports/SkDiscardableMemory_none.cpp",
40 "src/ports/SkFontHost_linux.cpp",
41 "src/ports/SkFontHost_FreeType.cpp",
42 "src/ports/SkFontHost_FreeType_common.cpp",
43 "src/ports/SkGlobalInitialization_default.cpp",
44 "src/ports/SkImageGenerator_skia.cpp",
45 "src/ports/SkMemory_malloc.cpp",
46 "src/ports/SkMutex_pthread.h",
47 "src/ports/SkOSFile_posix.cpp",
48 "src/ports/SkOSFile_stdio.cpp",
49 "src/ports/SkTLS_pthread.cpp",
50 "src/ports/SkTime_Unix.cpp",
51
52 # Third Party
53 "third_party/etc1/*.cpp",
54 "third_party/ktx/*.cpp",
55 ],
56 exclude = [
57 "src/pdf/SkPDFFont.cpp", # Wrapped by google/SkPDFFont_sfntly.cpp
58 "src/gpu/gl/GrGLDefaultInterface_none.cpp",
59 "src/gpu/gl/GrGLCreateNativeInterface_none.cpp",
60 # TODO(mtklein): files below here probably want upstream fixes
61 "src/utils/SkThreadUtils_pthread_mach.cpp", # Mac-only. Move to ports?
62 # Non-Mac-non-Linux. Move to ports?
63 "src/utils/SkThreadUtils_pthread_other.cpp",
64 "src/utils/SkThreadUtils_win.cpp", # Windows-only. Move to ports?
65 "src/doc/*_XPS.cpp",
66
67 # TODO(melanielc): These don't compile. Maybe remove them?
68 "src/pathops/SkConicLineIntersection.cpp",
69 "src/pathops/SkPathOpsPostSect.cpp",
70 ],
71)
72
73HDRS = glob(
74 [
75 "include/**/*.h",
76 ],
77)
78
79# Includes needed by Skia implementation. Not public includes.
80INCLUDES = [
81 "include/animator",
82 "include/c",
83 "include/codec",
84 "include/config",
85 "include/core",
86 "include/device",
87 "include/effects",
88 "include/gpu",
89 "include/images",
90 "include/pathops",
91 "include/pdf",
92 "include/pipe",
93 "include/ports",
94 "include/private",
95 "include/utils",
96 "include/views",
97 "include/xml",
98 "src/core",
99 "src/doc",
100 "src/gpu",
101 "src/image",
102 "src/lazy",
103 "src/opts",
104 "src/pdf",
105 "src/ports",
106 "src/sfnt",
107 "src/utils",
108 "third_party/etc1",
109 "third_party/ktx",
110]
111
112COPTS = [
113 "-Wno-deprecated-declarations", # Internal use of deprecated methods. :(
114 "-Wno-implicit-fallthrough", # Some intentional fallthrough.
115]
116
117DEFINES = [
118 # It'd be nice for fastbuild, dbg -> SK_DEBUG, opt -> SK_RELEASE.
119 "SK_RELEASE",
120 # Chrome DEFINES.
121 "SK_USE_FLOATBITS",
122 "SK_USE_FREETYPE_EMBOLDEN",
123 # Turn on a few Google3-specific build fixes.
124 "GOOGLE3",
125 "SK_BUILD_FOR_UNIX",
126 "SK_SAMPLES_FOR_X",
127]
128
129LINKOPTS = ["-ldl"]