OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("//build/config/features.gni") | 5 import("//build/config/features.gni") |
6 | 6 |
7 # May need to make this a build arg. | 7 # May need to make this a build arg, keep the name for now to match gyp |
8 cld2_table_size = 2 | 8 cld2_table_size = 2 |
9 | 9 |
10 static_library("cld_2") { | 10 core_files = [ |
11 sources = [ | 11 "src/internal/cld2tablesummary.h", |
12 "src/internal/cld2tablesummary.h", | 12 "src/internal/cldutil.cc", |
13 "src/internal/cldutil.cc", | 13 "src/internal/cldutil.h", |
14 "src/internal/cldutil.h", | 14 "src/internal/cldutil_shared.cc", |
15 "src/internal/cldutil_shared.cc", | 15 "src/internal/cldutil_shared.h", |
16 "src/internal/cldutil_shared.h", | 16 "src/internal/compact_lang_det.cc", |
17 "src/internal/compact_lang_det.cc", | 17 "src/internal/compact_lang_det_hint_code.cc", |
18 "src/internal/compact_lang_det_hint_code.cc", | 18 "src/internal/compact_lang_det_hint_code.h", |
19 "src/internal/compact_lang_det_hint_code.h", | 19 "src/internal/compact_lang_det_impl.cc", |
20 "src/internal/compact_lang_det_impl.cc", | 20 "src/internal/compact_lang_det_impl.h", |
21 "src/internal/compact_lang_det_impl.h", | 21 "src/internal/debug.h", |
22 "src/internal/debug.h", | 22 "src/internal/debug_empty.cc", |
23 "src/internal/debug_empty.cc", | 23 "src/internal/fixunicodevalue.cc", |
24 "src/internal/fixunicodevalue.cc", | 24 "src/internal/fixunicodevalue.h", |
25 "src/internal/fixunicodevalue.h", | 25 "src/internal/generated_distinct_bi_0.cc", |
26 "src/internal/generated_distinct_bi_0.cc", | 26 "src/internal/generated_entities.cc", |
27 "src/internal/generated_entities.cc", | 27 "src/internal/generated_language.cc", |
28 "src/internal/generated_language.cc", | 28 "src/internal/generated_language.h", |
29 "src/internal/generated_language.h", | 29 "src/internal/generated_ulscript.cc", |
30 "src/internal/generated_ulscript.cc", | 30 "src/internal/generated_ulscript.h", |
31 "src/internal/generated_ulscript.h", | 31 "src/internal/getonescriptspan.cc", |
32 "src/internal/getonescriptspan.cc", | 32 "src/internal/getonescriptspan.h", |
33 "src/internal/getonescriptspan.h", | 33 "src/internal/integral_types.h", |
34 "src/internal/integral_types.h", | 34 "src/internal/lang_script.cc", |
35 "src/internal/lang_script.cc", | 35 "src/internal/lang_script.h", |
36 "src/internal/lang_script.h", | 36 "src/internal/langspan.h", |
37 "src/internal/langspan.h", | 37 "src/internal/offsetmap.cc", |
38 "src/internal/offsetmap.cc", | 38 "src/internal/offsetmap.h", |
39 "src/internal/offsetmap.h", | 39 "src/internal/port.h", |
40 "src/internal/port.h", | 40 "src/internal/scoreonescriptspan.cc", |
41 "src/internal/scoreonescriptspan.cc", | 41 "src/internal/scoreonescriptspan.h", |
42 "src/internal/scoreonescriptspan.h", | 42 "src/internal/stringpiece.h", |
43 "src/internal/stringpiece.h", | 43 "src/internal/tote.cc", |
44 "src/internal/tote.cc", | 44 "src/internal/tote.h", |
45 "src/internal/tote.h", | 45 "src/internal/utf8prop_lettermarkscriptnum.h", |
46 "src/internal/utf8prop_lettermarkscriptnum.h", | 46 "src/internal/utf8repl_lettermarklower.h", |
47 "src/internal/utf8repl_lettermarklower.h", | 47 "src/internal/utf8scannot_lettermarkspecial.h", |
48 "src/internal/utf8scannot_lettermarkspecial.h", | 48 "src/internal/utf8statetable.cc", |
49 "src/internal/utf8statetable.cc", | 49 "src/internal/utf8statetable.h", |
50 "src/internal/utf8statetable.h", | 50 "src/public/compact_lang_det.h", |
51 "src/public/compact_lang_det.h", | 51 "src/public/encodings.h", |
52 "src/public/encodings.h", | 52 ] |
53 ] | |
54 | 53 |
| 54 data_files = [ |
| 55 "src/internal/cld2_generated_cjk_compatible.cc", |
| 56 "src/internal/cld2_generated_deltaoctachrome0122.cc", |
| 57 "src/internal/cld2_generated_distinctoctachrome0122.cc", |
| 58 "src/internal/cld_generated_cjk_delta_bi_4.cc", |
| 59 "src/internal/cld_generated_cjk_uni_prop_80.cc", |
| 60 "src/internal/cld_generated_score_quad_octa_0122_2.cc", |
| 61 "src/internal/generated_distinct_bi_0.cc", |
| 62 ] |
| 63 |
| 64 if (cld2_table_size == 0) { |
| 65 data_files += [ "src/internal/cld2_generated_quadchrome0122_16.cc" ] |
| 66 } else if (cld2_table_size == 1) { |
| 67 data_files += [ "src/internal/cld2_generated_quadchrome0122_19.cc" ] |
| 68 } else if (cld2_table_size == 2) { |
| 69 data_files += [ "src/internal/cld2_generated_quadchrome0122_2.cc" ] |
| 70 } |
| 71 |
| 72 data_loader_files = [ |
| 73 "src/internal/cld2_dynamic_data.h", |
| 74 "src/internal/cld2_dynamic_data.cc", |
| 75 "src/internal/cld2_dynamic_data_loader.h", |
| 76 "src/internal/cld2_dynamic_data_loader.cc", |
| 77 ] |
| 78 |
| 79 source_set("cld2_data") { |
| 80 sources = data_files |
55 include_dirs = [ | 81 include_dirs = [ |
56 "src/internal", | 82 "src/internal", |
57 "src/public", | 83 "src/public", |
58 ] | 84 ] |
59 | 85 |
60 configs -= [ "//build/config/compiler:chromium_code" ] | 86 configs -= [ "//build/config/compiler:chromium_code" ] |
61 configs += [ "//build/config/compiler:no_chromium_code" ] | 87 configs += [ "//build/config/compiler:no_chromium_code" ] |
62 | 88 |
63 if (is_win) { | 89 if (is_win) { |
64 cflags = [ "/wd4267" ] # size_t -> int conversion. | 90 cflags = [ "/wd4267" ] # size_t -> int conversion. |
65 } | 91 } |
66 if (cld2_data_source != "static") { | 92 } |
67 assert(false, "Non-static mode isn't implemented, implement me") | 93 |
| 94 static_library("cld2_static") { |
| 95 sources = core_files |
| 96 include_dirs = [ |
| 97 "src/internal", |
| 98 "src/public", |
| 99 ] |
| 100 |
| 101 deps = [ ":cld2_data" ] |
| 102 configs -= [ "//build/config/compiler:chromium_code" ] |
| 103 configs += [ "//build/config/compiler:no_chromium_code" ] |
| 104 |
| 105 if (is_win) { |
| 106 cflags = [ "/wd4267" ] # size_t -> int conversion. |
| 107 } |
| 108 } |
| 109 |
| 110 # Meta-target for convenience; dependents don't need to know if this if CLD2 |
| 111 # is in dynamic or static configuration. |
| 112 group("cld_2") { |
| 113 if (cld2_data_source == "static") { |
| 114 deps = [ ":cld2_static" ] |
| 115 } else { |
| 116 deps = [ ":cld2_dynamic" ] |
| 117 } |
| 118 } |
| 119 |
| 120 config("cld2_dynamic_mode_config") { |
| 121 defines = [ "CLD2_DYNAMIC_MODE" ] |
| 122 } |
| 123 |
| 124 static_library("cld2_dynamic") { |
| 125 sources = core_files + data_loader_files |
| 126 all_dependent_configs = [ ":cld2_dynamic_mode_config" ] |
| 127 include_dirs = [ |
| 128 "src/internal", |
| 129 "src/public", |
| 130 ] |
| 131 |
| 132 configs -= [ "//build/config/compiler:chromium_code" ] |
| 133 configs += [ "//build/config/compiler:no_chromium_code" ] |
| 134 |
| 135 if (is_win) { |
| 136 cflags = [ "/wd4267" ] # size_t -> int conversion. |
68 } | 137 } |
69 } | 138 } |
70 | 139 |
71 executable("cld_2_dynamic_data_tool") { | 140 executable("cld_2_dynamic_data_tool") { |
72 sources = [ | 141 sources = [ |
73 "src/internal/cld2_dynamic_data.h", | |
74 "src/internal/cld2_dynamic_data.cc", | |
75 "src/internal/cld2_dynamic_data_extractor.h", | 142 "src/internal/cld2_dynamic_data_extractor.h", |
76 "src/internal/cld2_dynamic_data_extractor.cc", | 143 "src/internal/cld2_dynamic_data_extractor.cc", |
77 "src/internal/cld2_dynamic_data_loader.h", | |
78 "src/internal/cld2_dynamic_data_loader.cc", | |
79 "src/internal/cld2_dynamic_data_tool.cc", | 144 "src/internal/cld2_dynamic_data_tool.cc", |
80 "src/internal/cld2_generated_cjk_compatible.cc", | |
81 "src/internal/cld2_generated_deltaoctachrome0122.cc", | |
82 "src/internal/cld2_generated_distinctoctachrome0122.cc", | |
83 "src/internal/cld2tablesummary.h", | |
84 "src/internal/cld_generated_cjk_delta_bi_4.cc", | |
85 "src/internal/cld_generated_cjk_uni_prop_80.cc", | |
86 "src/internal/cld_generated_score_quad_octa_0122_2.cc", | |
87 "src/internal/cldutil.cc", | |
88 "src/internal/cldutil.h", | |
89 "src/internal/cldutil_shared.cc", | |
90 "src/internal/cldutil_shared.h", | |
91 "src/internal/compact_lang_det.cc", | |
92 "src/internal/compact_lang_det_hint_code.cc", | |
93 "src/internal/compact_lang_det_hint_code.h", | |
94 "src/internal/compact_lang_det_impl.cc", | |
95 "src/internal/compact_lang_det_impl.h", | |
96 "src/internal/debug.h", | |
97 "src/internal/debug_empty.cc", | |
98 "src/internal/fixunicodevalue.cc", | |
99 "src/internal/fixunicodevalue.h", | |
100 "src/internal/generated_distinct_bi_0.cc", | |
101 "src/internal/generated_entities.cc", | |
102 "src/internal/generated_language.cc", | |
103 "src/internal/generated_language.h", | |
104 "src/internal/generated_ulscript.cc", | |
105 "src/internal/generated_ulscript.h", | |
106 "src/internal/getonescriptspan.cc", | |
107 "src/internal/getonescriptspan.h", | |
108 "src/internal/integral_types.h", | |
109 "src/internal/lang_script.cc", | |
110 "src/internal/lang_script.h", | |
111 "src/internal/langspan.h", | |
112 "src/internal/offsetmap.cc", | |
113 "src/internal/offsetmap.h", | |
114 "src/internal/port.h", | |
115 "src/internal/scoreonescriptspan.cc", | |
116 "src/internal/scoreonescriptspan.h", | |
117 "src/internal/stringpiece.h", | |
118 "src/internal/tote.cc", | |
119 "src/internal/tote.h", | |
120 "src/internal/utf8prop_lettermarkscriptnum.h", | |
121 "src/internal/utf8repl_lettermarklower.h", | |
122 "src/internal/utf8scannot_lettermarkspecial.h", | |
123 "src/internal/utf8statetable.cc", | |
124 "src/internal/utf8statetable.h", | |
125 "src/public/compact_lang_det.h", | |
126 "src/public/encodings.h", | |
127 ] | 145 ] |
128 | 146 |
129 include_dirs = [ | 147 include_dirs = [ |
130 "src/internal", | 148 "src/internal", |
131 "src/public", | 149 "src/public", |
132 ] | 150 ] |
133 | 151 |
| 152 deps = [ ":cld2_data", ":cld2_dynamic" ] |
| 153 |
134 configs -= [ "//build/config/compiler:chromium_code" ] | 154 configs -= [ "//build/config/compiler:chromium_code" ] |
135 configs += [ "//build/config/compiler:no_chromium_code" ] | 155 configs += [ "//build/config/compiler:no_chromium_code" ] |
136 | 156 |
137 if (is_win) { | 157 if (is_win) { |
138 cflags = [ "/wd4267" ] # size_t -> int conversion. | 158 cflags = [ "/wd4267" ] # size_t -> int conversion. |
139 } | 159 } |
140 if (cld2_table_size == 0) { | |
141 sources += [ "src/internal/cld2_generated_quadchrome0122_16.cc" ] | |
142 } else if (cld2_table_size == 1) { | |
143 sources += [ "src/internal/cld2_generated_quadchrome0122_19.cc" ] | |
144 } else if (cld2_table_size == 2) { | |
145 sources += [ "src/internal/cld2_generated_quadchrome0122_2.cc" ] | |
146 } | |
147 } | 160 } |
OLD | NEW |