blob: b76c2df34a50dce49fe38a2780d52aaf9b0f44d5 [file] [log] [blame]
mtklein7d6fb2c2016-08-25 14:50:44 -07001# Copyright 2016 Google Inc.
2#
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
6declare_args() {
Mike Kleine459afd2017-03-03 09:21:30 -05007 # TODO: build from source all the time for testing?
8 skia_use_system_freetype2 =
9 is_official_build || !(is_android || sanitize == "MSAN")
mtklein7d6fb2c2016-08-25 14:50:44 -070010}
11
12import("../third_party.gni")
13
Mike Klein10d665d2016-11-01 11:46:10 -040014if (skia_use_system_freetype2) {
15 system("freetype2") {
16 include_dirs = [ "/usr/include/freetype2" ]
17 libs = [ "freetype" ]
18 }
19} else {
mtklein7d6fb2c2016-08-25 14:50:44 -070020 third_party("freetype2") {
Ben Wagnerfc497342017-02-24 11:15:26 -050021 public_defines = [ "SK_FREETYPE_MINIMUM_RUNTIME_VERSION=(((FREETYPE_MAJOR) << 24) | ((FREETYPE_MINOR) << 16) | ((FREETYPE_PATCH) << 8))" ]
mtklein7d6fb2c2016-08-25 14:50:44 -070022 public_include_dirs = [ "../externals/freetype/include" ]
23
24 deps = [
25 "//third_party/libpng",
26 ]
27
Ben Wagner3aa8bfe2018-03-27 11:56:35 -040028 include_dirs = [ "." ]
mtklein7d6fb2c2016-08-25 14:50:44 -070029 defines = [
30 "FT2_BUILD_LIBRARY",
31 "FT_CONFIG_MODULES_H=<include/freetype-android/ftmodule.h>",
32 "FT_CONFIG_OPTIONS_H=<include/freetype-android/ftoption.h>",
33 ]
34
35 sources = [
36 "../externals/freetype/src/autofit/autofit.c",
37 "../externals/freetype/src/base/ftbase.c",
38 "../externals/freetype/src/base/ftbbox.c",
39 "../externals/freetype/src/base/ftbitmap.c",
40 "../externals/freetype/src/base/ftdebug.c",
mtklein7d6fb2c2016-08-25 14:50:44 -070041 "../externals/freetype/src/base/ftfstype.c",
42 "../externals/freetype/src/base/ftgasp.c",
43 "../externals/freetype/src/base/ftglyph.c",
44 "../externals/freetype/src/base/ftinit.c",
mtklein7d6fb2c2016-08-25 14:50:44 -070045 "../externals/freetype/src/base/ftmm.c",
46 "../externals/freetype/src/base/ftpatent.c",
47 "../externals/freetype/src/base/ftstroke.c",
48 "../externals/freetype/src/base/ftsynth.c",
49 "../externals/freetype/src/base/ftsystem.c",
50 "../externals/freetype/src/base/fttype1.c",
51 "../externals/freetype/src/base/ftwinfnt.c",
52 "../externals/freetype/src/cff/cff.c",
Ben Wagner3aa8bfe2018-03-27 11:56:35 -040053 "../externals/freetype/src/cid/type1cid.c",
mtklein7d6fb2c2016-08-25 14:50:44 -070054 "../externals/freetype/src/gzip/ftgzip.c",
Ben Wagner3aa8bfe2018-03-27 11:56:35 -040055 "../externals/freetype/src/psaux/psaux.c",
mtklein7d6fb2c2016-08-25 14:50:44 -070056 "../externals/freetype/src/pshinter/pshinter.c",
57 "../externals/freetype/src/psnames/psnames.c",
58 "../externals/freetype/src/raster/raster.c",
59 "../externals/freetype/src/sfnt/sfnt.c",
60 "../externals/freetype/src/smooth/smooth.c",
61 "../externals/freetype/src/truetype/truetype.c",
Ben Wagner3aa8bfe2018-03-27 11:56:35 -040062 "../externals/freetype/src/type1/type1.c",
mtklein7d6fb2c2016-08-25 14:50:44 -070063 ]
64 }
mtklein7d6fb2c2016-08-25 14:50:44 -070065}