Separate agg-authored code from fx-authored code.
[pdfium.git] / third_party / BUILD.gn
1 # Copyright 2014 PDFium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 group("third_party") {
6   deps = [
7     ":bigint",
8     ":freetype",
9     ":pdfium_base",
10   ]
11 }
12
13 source_set("bigint") {
14   configs -= [ "//build/config/compiler:chromium_code" ]
15   configs += [
16     "//third_party/pdfium:pdfium_config",
17     "//build/config/compiler:no_chromium_code",
18   ]
19   sources = [
20     "bigint/BigInteger.cc",
21     "bigint/BigInteger.hh",
22     "bigint/BigIntegerLibrary.hh",
23     "bigint/BigIntegerUtils.cc",
24     "bigint/BigIntegerUtils.hh",
25     "bigint/BigUnsigned.cc",
26     "bigint/BigUnsigned.hh",
27     "bigint/BigUnsignedInABase.cc",
28     "bigint/BigUnsignedInABase.hh",
29     "bigint/NumberlikeArray.hh",
30   ]
31 }
32
33 source_set("fx_agg") {
34   configs -= [ "//build/config/compiler:chromium_code" ]
35   configs += [
36     "//build/config/compiler:no_chromium_code",
37     "//third_party/pdfium:pdfium_config",
38   ]
39   sources = [
40     "agg23/agg_basics.h",
41     "agg23/agg_clip_liang_barsky.h",
42     "agg23/agg_conv_dash.h",
43     "agg23/agg_conv_stroke.h",
44     "agg23/agg_curves.cpp",
45     "agg23/agg_curves.h",
46     "agg23/agg_path_storage.cpp",
47     "agg23/agg_path_storage.h",
48     "agg23/agg_rasterizer_scanline_aa.cpp",
49     "agg23/agg_rasterizer_scanline_aa.h",
50     "agg23/agg_renderer_scanline.h",
51     "agg23/agg_rendering_buffer.h",
52     "agg23/agg_scanline_u.h",
53     "agg23/agg_vcgen_dash.cpp",
54     "agg23/agg_vcgen_stroke.cpp",
55   ]
56 }
57
58 source_set("freetype") {
59   configs -= [ "//build/config/compiler:chromium_code" ]
60   configs += [
61     "//third_party/pdfium:pdfium_config",
62     "//build/config/compiler:no_chromium_code",
63   ]
64   defines = [ "FT2_BUILD_LIBRARY" ]
65   sources = [
66     "freetype/include/freetype.h",
67     "freetype/include/ft2build.h",
68     "freetype/include/ftmm.h",
69     "freetype/include/ftotval.h",
70     "freetype/include/ftoutln.h",
71     "freetype/include/internal/ftobjs.h",
72     "freetype/include/internal/ftstream.h",
73     "freetype/include/internal/tttypes.h",
74     "freetype/include/tttables.h",
75     "freetype/src/base/ftbase.c",
76     "freetype/src/base/ftbitmap.c",
77     "freetype/src/base/ftglyph.c",
78     "freetype/src/base/ftinit.c",
79     "freetype/src/base/ftlcdfil.c",
80     "freetype/src/base/ftmm.c",
81     "freetype/src/base/ftsystem.c",
82     "freetype/src/cff/cff.c",
83     "freetype/src/cff/cffobjs.h",
84     "freetype/src/cff/cfftypes.h",
85     "freetype/src/cid/type1cid.c",
86     "freetype/src/psaux/psaux.c",
87     "freetype/src/pshinter/pshinter.c",
88     "freetype/src/psnames/psmodule.c",
89     "freetype/src/raster/raster.c",
90     "freetype/src/sfnt/sfnt.c",
91     "freetype/src/smooth/smooth.c",
92     "freetype/src/truetype/truetype.c",
93     "freetype/src/type1/type1.c",
94   ]
95 }
96
97 source_set("pdfium_base") {
98   configs -= [ "//build/config/compiler:chromium_code" ]
99   configs += [
100     "//third_party/pdfium:pdfium_config",
101     "//build/config/compiler:no_chromium_code",
102   ]
103   sources = [
104     "base/logging.h",
105     "base/macros.h",
106     "base/nonstd_unique_ptr.h",
107     "base/numerics/safe_conversions.h",
108     "base/numerics/safe_conversions_impl.h",
109     "base/numerics/safe_math.h",
110     "base/numerics/safe_math_impl.h",
111     "base/template_util.h",
112   ]
113 }