blob: f4e6144d325fbc0b5de90f946b8c8ae19e9055bd [file] [log] [blame]
Nan Zhangc3939142017-05-25 23:21:27 -07001// Copyright 2017 Google Inc. All rights reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
Nan Zhangced27512017-06-19 18:01:34 -070015subdirs = [
16 "Lib",
17]
18
Nan Zhangc3939142017-05-25 23:21:27 -070019cc_defaults {
20 name: "py2-interp-defaults",
21 cflags: [
22 "-fwrapv",
23 "-O3",
24 "-Wall",
25 "-Wstrict-prototypes",
26 "-DPy_BUILD_CORE",
Nan Zhang33bb4bb2017-12-01 20:00:54 +000027 "-Werror",
Dan Willemsen04e39102019-02-14 21:00:06 -080028 "-Wno-invalid-source-encoding",
Tri Vo0b5cc4f2017-12-11 13:29:15 -080029 "-Wno-int-conversion",
Nan Zhangc3939142017-05-25 23:21:27 -070030 "-Wno-missing-field-initializers",
Yi Kong892b1a82018-12-12 11:58:51 -080031 "-Wno-null-pointer-arithmetic",
Elliott Hughese42a5962018-10-26 13:18:00 -070032 "-Wno-register",
Nan Zhangc3939142017-05-25 23:21:27 -070033 "-Wno-shift-count-overflow",
34 "-Wno-sign-compare",
Stephen Hinescec02392020-07-15 17:42:06 -070035 "-Wno-strict-prototypes",
Nan Zhangc3939142017-05-25 23:21:27 -070036 "-Wno-tautological-compare",
37 "-Wno-tautological-constant-out-of-range-compare",
38 "-Wno-unused-parameter",
39 "-Wno-unused-result",
40 ],
41 local_include_dirs: ["Include"],
42 target: {
Nan Zhang33bb4bb2017-12-01 20:00:54 +000043 android_arm: {
44 local_include_dirs: ["android_arm/pyconfig"],
45 },
46 android_arm64: {
47 local_include_dirs: ["android_arm64/pyconfig"],
48 },
49 android_x86: {
50 local_include_dirs: ["android_x86/pyconfig"],
51 },
Alex Light6f3263d2019-02-27 14:37:14 -080052 linux_bionic: {
53 // NB linux_bionic is a 'host' architecture but it uses the bionic libc like 'android'
54 // targets so use the android pyconfig.
55 local_include_dirs: ["android_x86_64/pyconfig"],
56 },
Nan Zhang33bb4bb2017-12-01 20:00:54 +000057 android_x86_64: {
58 local_include_dirs: ["android_x86_64/pyconfig"],
59 },
Dan Willemsenc88c0802017-09-25 14:33:27 -070060 // Regenerate include dirs with android_regen.sh
61 darwin_x86_64: {
62 local_include_dirs: ["darwin_x86_64/pyconfig"],
Stephen Hinesb788eb52017-11-20 17:31:30 -080063 cflags: [
64 "-Wno-deprecated-declarations",
65 "-Wno-pointer-arith",
66 ],
Dan Willemsenc88c0802017-09-25 14:33:27 -070067 },
Nan Zhang33bb4bb2017-12-01 20:00:54 +000068 linux_glibc_x86: {
69 enabled: false,
70 },
Dan Willemsene41d4ce2017-10-02 10:41:09 -070071 linux_glibc_x86_64: {
Dan Willemsenc88c0802017-09-25 14:33:27 -070072 local_include_dirs: ["linux_x86_64/pyconfig"],
Chih-Hung Hsieh6eebfa02017-10-13 14:40:05 -070073 cflags: ["-Werror"],
Dan Willemsenc88c0802017-09-25 14:33:27 -070074 },
75 windows: {
76 enabled: false,
77 },
Nan Zhangc3939142017-05-25 23:21:27 -070078 },
79 host_supported: true,
Nan Zhang33bb4bb2017-12-01 20:00:54 +000080 compile_multilib: "both",
81 multilib: {
82 lib32: {
83 suffix: "32",
84 },
85 lib64: {
86 suffix: "64",
87 },
88 },
Nan Zhangc3939142017-05-25 23:21:27 -070089}
90
91cc_library_static {
92 name: "py2-interp-parser",
93 defaults: ["py2-interp-defaults"],
94 srcs: [
95 "Parser/acceler.c",
96 "Parser/bitset.c",
97 "Parser/firstsets.c",
98 "Parser/grammar.c",
99 "Parser/grammar1.c",
100 "Parser/listnode.c",
101 "Parser/metagrammar.c",
102 "Parser/myreadline.c",
103 "Parser/node.c",
104 "Parser/parser.c",
105 "Parser/parsetok.c",
106 "Parser/pgen.c",
107 "Parser/tokenizer.c",
108 ],
109}
110
111cc_library_static {
112 name: "py2-interp-object",
113 defaults: ["py2-interp-defaults"],
114 srcs: [
115 "Objects/abstract.c",
116 "Objects/boolobject.c",
117 "Objects/bufferobject.c",
118 "Objects/bytes_methods.c",
119 "Objects/bytearrayobject.c",
120 "Objects/capsule.c",
121 "Objects/cellobject.c",
122 "Objects/classobject.c",
123 "Objects/cobject.c",
124 "Objects/codeobject.c",
125 "Objects/complexobject.c",
126 "Objects/descrobject.c",
127 "Objects/enumobject.c",
128 "Objects/exceptions.c",
129 "Objects/genobject.c",
130 "Objects/fileobject.c",
131 "Objects/floatobject.c",
132 "Objects/frameobject.c",
133 "Objects/funcobject.c",
134 "Objects/intobject.c",
135 "Objects/iterobject.c",
136 "Objects/listobject.c",
137 "Objects/longobject.c",
138 "Objects/dictobject.c",
139 "Objects/memoryobject.c",
140 "Objects/methodobject.c",
141 "Objects/moduleobject.c",
142 "Objects/object.c",
143 "Objects/obmalloc.c",
144 "Objects/rangeobject.c",
145 "Objects/setobject.c",
146 "Objects/sliceobject.c",
147 "Objects/stringobject.c",
148 "Objects/structseq.c",
149 "Objects/tupleobject.c",
150 "Objects/typeobject.c",
151 "Objects/weakrefobject.c",
152 "Objects/unicodeobject.c",
153 "Objects/unicodectype.c",
154 ],
155}
156
157cc_library_static {
158 name: "py2-interp-python",
159 defaults: ["py2-interp-defaults"],
Nan Zhang04b6dca2017-12-05 13:34:52 -0800160 target: {
161 linux: {
162 cflags: [
163 "-DPLATFORM=\"linux2\"",
164 ],
165 },
166 darwin_x86_64: {
167 cflags: [
168 "-DPLATFORM=\"darwin\"",
169 ],
170 },
171 },
Nan Zhangc3939142017-05-25 23:21:27 -0700172 srcs: [
173 "Python/_warnings.c",
174 "Python/Python-ast.c",
175 "Python/asdl.c",
176 "Python/ast.c",
177 "Python/bltinmodule.c",
178 "Python/ceval.c",
179 "Python/compile.c",
180 "Python/codecs.c",
181 "Python/errors.c",
182 "Python/frozen.c",
183 "Python/frozenmain.c",
184 "Python/future.c",
185 "Python/getargs.c",
186 "Python/getcompiler.c",
187 "Python/getcopyright.c",
188 "Python/getplatform.c",
189 "Python/getversion.c",
190 "Python/graminit.c",
191 "Python/import.c",
192 "Python/importdl.c",
193 "Python/marshal.c",
194 "Python/modsupport.c",
195 "Python/mystrtoul.c",
196 "Python/mysnprintf.c",
197 "Python/peephole.c",
198 "Python/pyarena.c",
199 "Python/pyctype.c",
200 "Python/pyfpe.c",
201 "Python/pymath.c",
202 "Python/pystate.c",
203 "Python/pythonrun.c",
204 "Python/random.c",
205 "Python/structmember.c",
206 "Python/symtable.c",
207 "Python/sysmodule.c",
208 "Python/traceback.c",
209 "Python/getopt.c",
210 "Python/pystrcmp.c",
211 "Python/pystrtod.c",
212 "Python/dtoa.c",
213 "Python/formatter_unicode.c",
214 "Python/formatter_string.c",
215 "Python/dynload_shlib.c",
216 "Python/thread.c",
217 ],
218}
219
Dan Willemsencd282852019-02-14 21:41:18 -0800220cc_defaults {
221 name: "py2-launcher-defaults",
Nan Zhangc3939142017-05-25 23:21:27 -0700222 defaults: ["py2-interp-defaults"],
Nan Zhangc3939142017-05-25 23:21:27 -0700223 cflags: [
Nan Zhangc3939142017-05-25 23:21:27 -0700224 "-DVERSION=\"2.7\"",
Nan Zhangced27512017-06-19 18:01:34 -0700225 "-DVPATH=\"\"",
226 "-DPREFIX=\"\"",
227 "-DEXEC_PREFIX=\"\"",
Dan Willemsen99f27542019-02-14 21:21:48 -0800228 "-DPYTHONPATH=\"..:\"",
229 "-DANDROID_SKIP_ZIP_PATH",
230 "-DANDROID_SKIP_EXEC_PREFIX_PATH",
231 "-DANDROID_LIB_PYTHON_PATH=\"internal/stdlib\"",
Igor Murashkinec37d4a2018-08-01 14:30:55 -0700232 "-DDATE=\"Dec 31 1969\"",
233 "-DTIME=\"23:59:59\"",
Nan Zhangc3939142017-05-25 23:21:27 -0700234 ],
Dan Willemsencd282852019-02-14 21:41:18 -0800235 static_libs: [
236 "libbase",
Colin Crossf67325c2019-09-18 11:05:54 -0700237 "libcrypto_static",
Dan Willemsencd282852019-02-14 21:41:18 -0800238 "libexpat",
Tom Cherry96459322020-01-08 14:11:54 -0800239 "liblog",
Dan Willemsencd282852019-02-14 21:41:18 -0800240 "libssl",
241 "libz",
242 ],
243 target: {
244 linux_glibc_x86_64: {
245 host_ldlibs: ["-lutil"],
246 },
Dan Willemsena7c6b232019-02-20 10:43:11 -0800247 darwin: {
248 host_ldlibs: [
249 "-framework SystemConfiguration",
250 "-framework CoreFoundation",
251 ],
252 },
Dan Willemsencd282852019-02-14 21:41:18 -0800253 host: {
254 static_libs: ["libsqlite"],
255 },
256 // Use shared libsqlite for device side, otherwise
257 // the executable size will be really huge.
258 android: {
259 shared_libs: ["libsqlite"],
260 },
261 },
262}
263
264cc_library_static {
265 name: "py2-launcher-lib",
266 defaults: ["py2-launcher-defaults"],
Nan Zhangc3939142017-05-25 23:21:27 -0700267 srcs: [
Nan Zhangc3939142017-05-25 23:21:27 -0700268 "Modules/gcmodule.c",
269 "Modules/getpath.c",
270 "Modules/config.c",
271 "Modules/getbuildinfo.c",
Nan Zhangced27512017-06-19 18:01:34 -0700272 // Default built-in extension py2-c-modules.
Nan Zhangc3939142017-05-25 23:21:27 -0700273 "Modules/threadmodule.c",
274 "Modules/signalmodule.c",
275 "Modules/posixmodule.c",
276 "Modules/errnomodule.c",
277 "Modules/pwdmodule.c",
278 "Modules/_sre.c",
279 "Modules/_codecsmodule.c",
280 "Modules/_weakref.c",
281 "Modules/zipimport.c",
282 "Modules/symtablemodule.c",
Dan Willemseneba50a52018-11-16 17:27:26 -0800283 "Modules/main.c",
Nan Zhangced27512017-06-19 18:01:34 -0700284 ],
285 // NOTE: Please update Modules/config.c if new lib get added in the static_libs.
Dan Willemsencd282852019-02-14 21:41:18 -0800286 whole_static_libs: [
Nan Zhangced27512017-06-19 18:01:34 -0700287 // Be careful the order of these three static libraries below due to
288 // missing symbols issues.
Nan Zhangc3939142017-05-25 23:21:27 -0700289 "py2-interp-object",
290 "py2-interp-python",
Nan Zhangced27512017-06-19 18:01:34 -0700291 "py2-interp-parser",
292 "py2-c-module-array",
293 "py2-c-module-cmath",
294 "py2-c-module-math",
295 "py2-c-module-_struct",
296 "py2-c-module-time",
297 "py2-c-module-operator",
298 "py2-c-module-_testcapi",
299 "py2-c-module-_random",
300 "py2-c-module-_collections",
301 "py2-c-module-_heapq",
302 "py2-c-module-itertools",
303 "py2-c-module-strop",
304 "py2-c-module-_functools",
305 "py2-c-module-datetime",
306 "py2-c-module-_bisect",
307 "py2-c-module-unicodedata",
308 "py2-c-module-_io",
309 "py2-c-module-fcntl",
310 "py2-c-module-select",
311 "py2-c-module-mmap",
312 "py2-c-module-_csv",
313 "py2-c-module-_socket",
314 "py2-c-module-termios",
Dan Willemsendbcebe02019-01-07 18:07:24 -0800315 "py2-c-module-_ssl",
Nan Zhangced27512017-06-19 18:01:34 -0700316 "py2-c-module-_md5",
317 "py2-c-module-_sha",
318 "py2-c-module-_sha256",
319 "py2-c-module-_sha512",
320 "py2-c-module-binascii",
321 "py2-c-module-parser",
322 "py2-c-module-cStringIO",
323 "py2-c-module-cPickle",
324 "py2-c-module-xxsubtype",
325 "py2-c-module-future_builtins",
326 "py2-c-module-_json",
327 "py2-c-module-_hotshot",
328 "py2-c-module-_lsprof",
329 "py2-c-module-grp",
330 "py2-c-module-syslog",
331 "py2-c-module-audioop",
332 "py2-c-module-resource",
333 "py2-c-module-_multibytecodec",
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700334 "py2-c-module-_codecs_kr",
335 "py2-c-module-_codecs_jp",
336 "py2-c-module-_codecs_cn",
337 "py2-c-module-_codecs_tw",
338 "py2-c-module-_codecs_hk",
339 "py2-c-module-_codecs_iso2022",
Nan Zhangced27512017-06-19 18:01:34 -0700340 "py2-c-module-_multiprocessing",
341 "py2-c-module-zlib",
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700342 "py2-c-module-pyexpat",
343 "py2-c-module-_sqlite3",
344 "py2-c-module-_ctypes_test",
345 "py2-c-module-_ctypes",
Nan Zhangc3939142017-05-25 23:21:27 -0700346 ],
Dan Willemsena7c6b232019-02-20 10:43:11 -0800347 target: {
348 darwin: {
349 whole_static_libs: ["py2-c-module-_scproxy"],
350 },
351 },
Dan Willemsencd282852019-02-14 21:41:18 -0800352}
353
354cc_binary {
355 name: "py2-launcher",
356 defaults: ["py2-launcher-defaults"],
357 srcs: ["Launcher/launcher_main.cpp"],
358 static_libs: ["py2-launcher-lib"],
359}
360
361cc_binary {
362 name: "py2-launcher-autorun",
363 defaults: ["py2-launcher-defaults"],
364 srcs: ["Launcher/launcher_main.cpp"],
365 static_libs: ["py2-launcher-lib"],
366 cflags: ["-DANDROID_AUTORUN"],
367}
368
369python_binary_host {
370 name: "py2-cmd",
371 autorun: false,
372 version: {
373 py2: {
374 enabled: true,
375 embedded_launcher: true,
Nan Zhang33bb4bb2017-12-01 20:00:54 +0000376 },
Dan Willemsencd282852019-02-14 21:41:18 -0800377 py3: {
378 enabled: false,
Dan Willemsenc88c0802017-09-25 14:33:27 -0700379 },
380 },
Nan Zhangc3939142017-05-25 23:21:27 -0700381}
382
Nan Zhangced27512017-06-19 18:01:34 -0700383// Enabled extension py2-c-modules.
Nan Zhangc3939142017-05-25 23:21:27 -0700384
385cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700386 name: "py2-c-module-array",
Nan Zhangc3939142017-05-25 23:21:27 -0700387 defaults: ["py2-interp-defaults"],
388 srcs: [
389 "Modules/arraymodule.c",
390 ],
391}
392
393cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700394 name: "py2-c-module-cmath",
Nan Zhangc3939142017-05-25 23:21:27 -0700395 defaults: ["py2-interp-defaults"],
396 srcs: [
397 "Modules/cmathmodule.c",
398 "Modules/_math.c",
399 ],
400}
401
402cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700403 name: "py2-c-module-math",
Nan Zhangc3939142017-05-25 23:21:27 -0700404 defaults: ["py2-interp-defaults"],
405 srcs: [
406 "Modules/mathmodule.c",
407 "Modules/_math.c",
408 ],
409}
410
411cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700412 name: "py2-c-module-_struct",
Nan Zhangc3939142017-05-25 23:21:27 -0700413 defaults: ["py2-interp-defaults"],
414 srcs: [
415 "Modules/_struct.c",
416 ],
417}
418
419cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700420 name: "py2-c-module-time",
Nan Zhangc3939142017-05-25 23:21:27 -0700421 defaults: ["py2-interp-defaults"],
422 srcs: [
423 "Modules/timemodule.c",
424 ],
425}
426
427cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700428 name: "py2-c-module-operator",
Nan Zhangc3939142017-05-25 23:21:27 -0700429 defaults: ["py2-interp-defaults"],
430 srcs: [
431 "Modules/operator.c",
432 ],
433}
434
435cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700436 name: "py2-c-module-_testcapi",
Nan Zhangc3939142017-05-25 23:21:27 -0700437 defaults: ["py2-interp-defaults"],
438 srcs: [
439 "Modules/_testcapimodule.c",
440 ],
441}
442
443cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700444 name: "py2-c-module-_random",
Nan Zhangc3939142017-05-25 23:21:27 -0700445 defaults: ["py2-interp-defaults"],
446 srcs: [
447 "Modules/_randommodule.c",
448 ],
449}
450
451cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700452 name: "py2-c-module-_collections",
Nan Zhangc3939142017-05-25 23:21:27 -0700453 defaults: ["py2-interp-defaults"],
454 srcs: [
455 "Modules/_collectionsmodule.c",
456 ],
457}
458
459cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700460 name: "py2-c-module-_heapq",
Nan Zhangc3939142017-05-25 23:21:27 -0700461 defaults: ["py2-interp-defaults"],
462 srcs: [
463 "Modules/_heapqmodule.c",
464 ],
465}
466
467cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700468 name: "py2-c-module-itertools",
Nan Zhangc3939142017-05-25 23:21:27 -0700469 defaults: ["py2-interp-defaults"],
470 srcs: [
471 "Modules/itertoolsmodule.c",
472 ],
473}
474
475cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700476 name: "py2-c-module-strop",
Nan Zhangc3939142017-05-25 23:21:27 -0700477 defaults: ["py2-interp-defaults"],
478 srcs: [
479 "Modules/stropmodule.c",
480 ],
481}
482
483cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700484 name: "py2-c-module-_functools",
Nan Zhangc3939142017-05-25 23:21:27 -0700485 defaults: ["py2-interp-defaults"],
486 srcs: [
487 "Modules/_functoolsmodule.c",
488 ],
489}
490
491cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700492 name: "py2-c-module-datetime",
Nan Zhangc3939142017-05-25 23:21:27 -0700493 defaults: ["py2-interp-defaults"],
494 srcs: [
495 "Modules/datetimemodule.c",
496 ],
497}
498
499cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700500 name: "py2-c-module-_bisect",
Nan Zhangc3939142017-05-25 23:21:27 -0700501 defaults: ["py2-interp-defaults"],
502 srcs: [
503 "Modules/_bisectmodule.c",
504 ],
505}
506
507cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700508 name: "py2-c-module-unicodedata",
Nan Zhangc3939142017-05-25 23:21:27 -0700509 defaults: ["py2-interp-defaults"],
510 srcs: [
511 "Modules/unicodedata.c",
512 ],
513}
514
515cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700516 name: "py2-c-module-_io",
Nan Zhangc3939142017-05-25 23:21:27 -0700517 defaults: ["py2-interp-defaults"],
518 srcs: [
519 "Modules/_io/bufferedio.c",
520 "Modules/_io/bytesio.c",
521 "Modules/_io/fileio.c",
522 "Modules/_io/iobase.c",
523 "Modules/_io/_iomodule.c",
524 "Modules/_io/stringio.c",
525 "Modules/_io/textio.c",
526 ],
527 local_include_dirs: [
528 "Modules/_io",
529 ],
530}
531
532cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700533 name: "py2-c-module-fcntl",
Nan Zhangc3939142017-05-25 23:21:27 -0700534 defaults: ["py2-interp-defaults"],
535 srcs: [
536 "Modules/fcntlmodule.c",
537 ],
538}
539
540cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700541 name: "py2-c-module-select",
Nan Zhangc3939142017-05-25 23:21:27 -0700542 defaults: ["py2-interp-defaults"],
543 srcs: [
544 "Modules/selectmodule.c",
545 ],
546}
547
548cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700549 name: "py2-c-module-mmap",
Nan Zhangc3939142017-05-25 23:21:27 -0700550 defaults: ["py2-interp-defaults"],
551 srcs: [
552 "Modules/mmapmodule.c",
553 ],
554}
555
556cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700557 name: "py2-c-module-_csv",
Nan Zhangc3939142017-05-25 23:21:27 -0700558 defaults: ["py2-interp-defaults"],
559 srcs: [
560 "Modules/_csv.c",
561 ],
562}
563
564cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700565 name: "py2-c-module-_socket",
Nan Zhangc3939142017-05-25 23:21:27 -0700566 defaults: ["py2-interp-defaults"],
567 srcs: [
568 "Modules/socketmodule.c",
569 "Modules/timemodule.c",
570 ],
571}
572
573cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700574 name: "py2-c-module-termios",
Nan Zhangc3939142017-05-25 23:21:27 -0700575 defaults: ["py2-interp-defaults"],
576 srcs: [
577 "Modules/termios.c",
578 ],
579}
580
581cc_library_static {
Dan Willemsendbcebe02019-01-07 18:07:24 -0800582 name: "py2-c-module-_ssl",
583 defaults: ["py2-interp-defaults"],
584 srcs: ["Modules/_ssl.c"],
585 cflags: ["-Wno-incompatible-pointer-types-discards-qualifiers"],
586 static_libs: [
587 "libssl",
Colin Crossf67325c2019-09-18 11:05:54 -0700588 "libcrypto_static",
Dan Willemsendbcebe02019-01-07 18:07:24 -0800589 ],
590}
591
592cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700593 name: "py2-c-module-_md5",
Nan Zhangc3939142017-05-25 23:21:27 -0700594 defaults: ["py2-interp-defaults"],
595 srcs: [
596 "Modules/md5module.c",
597 "Modules/md5.c",
598 ],
599}
600
601cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700602 name: "py2-c-module-_sha",
Nan Zhangc3939142017-05-25 23:21:27 -0700603 defaults: ["py2-interp-defaults"],
604 srcs: [
605 "Modules/shamodule.c",
606 ],
607}
608
609cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700610 name: "py2-c-module-_sha256",
Nan Zhangc3939142017-05-25 23:21:27 -0700611 defaults: ["py2-interp-defaults"],
612 srcs: [
613 "Modules/sha256module.c",
614 ],
615}
616
617cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700618 name: "py2-c-module-_sha512",
Nan Zhangc3939142017-05-25 23:21:27 -0700619 defaults: ["py2-interp-defaults"],
620 srcs: [
621 "Modules/sha512module.c",
622 ],
623}
624
625cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700626 name: "py2-c-module-binascii",
Nan Zhangc3939142017-05-25 23:21:27 -0700627 defaults: ["py2-interp-defaults"],
628 srcs: [
629 "Modules/binascii.c",
630 ],
631}
632
633cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700634 name: "py2-c-module-parser",
Nan Zhangc3939142017-05-25 23:21:27 -0700635 defaults: ["py2-interp-defaults"],
636 srcs: [
637 "Modules/parsermodule.c",
638 ],
639}
640
641cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700642 name: "py2-c-module-cStringIO",
Nan Zhangc3939142017-05-25 23:21:27 -0700643 defaults: ["py2-interp-defaults"],
644 srcs: [
645 "Modules/cStringIO.c",
646 ],
647}
648
649cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700650 name: "py2-c-module-cPickle",
Nan Zhangc3939142017-05-25 23:21:27 -0700651 defaults: ["py2-interp-defaults"],
652 srcs: [
653 "Modules/cPickle.c",
654 ],
655}
656
657cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700658 name: "py2-c-module-xxsubtype",
Nan Zhangc3939142017-05-25 23:21:27 -0700659 defaults: ["py2-interp-defaults"],
660 srcs: [
661 "Modules/xxsubtype.c",
662 ],
663}
664
665cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700666 name: "py2-c-module-future_builtins",
Nan Zhangc3939142017-05-25 23:21:27 -0700667 defaults: ["py2-interp-defaults"],
668 srcs: [
669 "Modules/future_builtins.c",
670 ],
671}
672
673cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700674 name: "py2-c-module-_json",
Nan Zhangc3939142017-05-25 23:21:27 -0700675 defaults: ["py2-interp-defaults"],
676 srcs: [
677 "Modules/_json.c",
678 ],
679}
680
681cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700682 name: "py2-c-module-_hotshot",
Nan Zhangc3939142017-05-25 23:21:27 -0700683 defaults: ["py2-interp-defaults"],
684 srcs: [
685 "Modules/_hotshot.c",
686 ],
687}
688
689cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700690 name: "py2-c-module-_lsprof",
Nan Zhangc3939142017-05-25 23:21:27 -0700691 defaults: ["py2-interp-defaults"],
692 srcs: [
693 "Modules/_lsprof.c",
694 "Modules/rotatingtree.c",
695 ],
696}
697
698cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700699 name: "py2-c-module-grp",
Nan Zhangc3939142017-05-25 23:21:27 -0700700 defaults: ["py2-interp-defaults"],
701 srcs: [
702 "Modules/grpmodule.c",
703 "Modules/rotatingtree.c",
704 ],
705}
706
707cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700708 name: "py2-c-module-syslog",
Nan Zhangc3939142017-05-25 23:21:27 -0700709 defaults: ["py2-interp-defaults"],
710 srcs: [
711 "Modules/syslogmodule.c",
712 ],
713}
714
715cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700716 name: "py2-c-module-audioop",
Nan Zhangc3939142017-05-25 23:21:27 -0700717 defaults: ["py2-interp-defaults"],
718 srcs: [
719 "Modules/audioop.c",
720 ],
721}
722
723cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700724 name: "py2-c-module-resource",
Nan Zhangc3939142017-05-25 23:21:27 -0700725 defaults: ["py2-interp-defaults"],
726 srcs: [
727 "Modules/resource.c",
728 ],
729}
730
731cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700732 name: "py2-c-module-_multibytecodec",
Nan Zhangc3939142017-05-25 23:21:27 -0700733 defaults: ["py2-interp-defaults"],
734 srcs: [
735 "Modules/cjkcodecs/multibytecodec.c",
736 ],
737}
738
739cc_library_static {
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700740 name: "py2-c-module-_codecs_kr",
741 defaults: ["py2-interp-defaults"],
742 srcs: ["Modules/cjkcodecs/_codecs_kr.c"],
743}
744
745cc_library_static {
746 name: "py2-c-module-_codecs_jp",
747 defaults: ["py2-interp-defaults"],
748 srcs: ["Modules/cjkcodecs/_codecs_jp.c"],
749}
750
751cc_library_static {
752 name: "py2-c-module-_codecs_cn",
753 defaults: ["py2-interp-defaults"],
754 srcs: ["Modules/cjkcodecs/_codecs_cn.c"],
755}
756
757cc_library_static {
758 name: "py2-c-module-_codecs_tw",
759 defaults: ["py2-interp-defaults"],
760 srcs: ["Modules/cjkcodecs/_codecs_tw.c"],
761}
762
763cc_library_static {
764 name: "py2-c-module-_codecs_hk",
765 defaults: ["py2-interp-defaults"],
766 srcs: ["Modules/cjkcodecs/_codecs_hk.c"],
767}
768
769cc_library_static {
770 name: "py2-c-module-_codecs_iso2022",
771 defaults: ["py2-interp-defaults"],
772 srcs: ["Modules/cjkcodecs/_codecs_iso2022.c"],
773}
774
775cc_library_static {
Nan Zhangced27512017-06-19 18:01:34 -0700776 name: "py2-c-module-_multiprocessing",
Nan Zhangc3939142017-05-25 23:21:27 -0700777 defaults: ["py2-interp-defaults"],
778 srcs: [
779 "Modules/_multiprocessing/multiprocessing.c",
780 "Modules/_multiprocessing/semaphore.c",
781 "Modules/_multiprocessing/socket_connection.c",
782 ],
783}
Nan Zhangced27512017-06-19 18:01:34 -0700784
785cc_library_static {
786 name: "py2-c-module-zlib",
787 defaults: [
788 "py2-interp-defaults",
789 ],
790 cflags: [
791 "-DUSE_ZLIB_CRC32",
792 ],
793 srcs: [
794 "Modules/zlibmodule.c",
795 ],
796 static_libs: [
797 "libz",
798 ],
799}
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700800
801cc_library_static {
802 name: "py2-c-module-pyexpat",
803 defaults: [
804 "py2-interp-defaults",
805 ],
806 cflags: [
807 "-DUSE_PYEXPAT_CAPI",
808 ],
809 srcs: [
810 "Modules/pyexpat.c",
811 ],
812 static_libs: [
813 "libexpat",
814 ],
815}
816
817cc_library_static {
818 name: "py2-c-module-_sqlite3",
819 defaults: [
820 "py2-interp-defaults",
821 ],
822 cflags: [
823 "-DMODULE_NAME=\"sqlite3\"",
824 "-DSQLITE_OMIT_LOAD_EXTENSION",
825 "-Wno-format-security",
826 "-Wno-type-limits",
827 "-Wno-char-subscripts",
828 ],
829 local_include_dirs: [
830 "Modules/_sqlite",
831 ],
832 srcs: [
833 "Modules/_sqlite/cache.c",
834 "Modules/_sqlite/connection.c",
835 "Modules/_sqlite/cursor.c",
836 "Modules/_sqlite/microprotocols.c",
837 "Modules/_sqlite/module.c",
838 "Modules/_sqlite/prepare_protocol.c",
839 "Modules/_sqlite/row.c",
840 "Modules/_sqlite/statement.c",
841 "Modules/_sqlite/util.c",
842 ],
Nan Zhang33bb4bb2017-12-01 20:00:54 +0000843 target: {
Alex Light6f3263d2019-02-27 14:37:14 -0800844 host: {
Nan Zhang33bb4bb2017-12-01 20:00:54 +0000845 static_libs: [
846 "libsqlite",
847 ],
848 },
849 android: {
850 shared_libs: [
851 "libsqlite",
Dan Willemsen04e39102019-02-14 21:00:06 -0800852 ],
Nan Zhang33bb4bb2017-12-01 20:00:54 +0000853 },
854 },
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700855}
856
857cc_library_static {
858 name: "py2-c-module-_ctypes_test",
859 defaults: ["py2-interp-defaults"],
860 srcs: ["Modules/_ctypes/_ctypes_test.c"],
861}
862
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700863cc_library_static {
864 name: "py2-c-module-_ctypes",
865 defaults: [
866 "py2-interp-defaults",
867 ],
868 local_include_dirs: [
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700869 "Modules/_ctypes/libffi/include",
870 ],
871 srcs: [
872 "Modules/_ctypes/_ctypes.c",
873 "Modules/_ctypes/callbacks.c",
874 "Modules/_ctypes/callproc.c",
875 "Modules/_ctypes/stgdict.c",
876 "Modules/_ctypes/cfield.c",
877 "Modules/_ctypes/libffi/src/prep_cif.c",
878 "Modules/_ctypes/libffi/src/closures.c",
879 ],
880 arch: {
881 x86_64: {
882 local_include_dirs: [
883 "Modules/_ctypes/libffi/src/x86",
884 ],
885 srcs: [
886 "Modules/_ctypes/libffi/src/x86/ffi64.c",
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700887 "Modules/_ctypes/libffi/src/x86/ffi.c",
888 "Modules/_ctypes/libffi/src/x86/sysv.S",
889 ],
890 },
Nan Zhang33bb4bb2017-12-01 20:00:54 +0000891 x86: {
892 local_include_dirs: [
893 "Modules/_ctypes/libffi/src/x86",
894 ],
895 srcs: [
896 "Modules/_ctypes/libffi/src/x86/ffi.c",
897 "Modules/_ctypes/libffi/src/x86/sysv.S",
898 ],
899 },
900 arm: {
901 local_include_dirs: [
902 "android_arm/libffi",
903 "Modules/_ctypes/libffi/src/arm",
904 ],
905 srcs: [
906 "Modules/_ctypes/libffi/src/arm/ffi.c",
907 "Modules/_ctypes/libffi/src/arm/sysv.S",
908 "Modules/_ctypes/libffi/src/arm/trampoline.S",
Dan Willemsen04e39102019-02-14 21:00:06 -0800909 ],
Nan Zhang33bb4bb2017-12-01 20:00:54 +0000910 },
911 arm64: {
912 // arithmetic on a pointer in _ctypes/libffi/src/aarch64/ffi.c
913 cflags: ["-Wno-pointer-arith"],
914 local_include_dirs: [
915 "android_arm64/libffi",
916 "Modules/_ctypes/libffi/src/aarch64",
917 ],
918 srcs: [
919 "Modules/_ctypes/libffi/src/aarch64/ffi.c",
920 "Modules/_ctypes/libffi/src/aarch64/sysv.S",
Dan Willemsen04e39102019-02-14 21:00:06 -0800921 ],
Nan Zhang33bb4bb2017-12-01 20:00:54 +0000922 },
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700923 },
Dan Willemsenc88c0802017-09-25 14:33:27 -0700924 target: {
925 // Regenerate include dirs with android_regen.sh
926 darwin_x86_64: {
927 local_include_dirs: ["darwin_x86_64/libffi"],
928 srcs: [
929 "Modules/_ctypes/libffi/src/x86/darwin.S",
930 "Modules/_ctypes/libffi/src/x86/darwin64.S",
931 ],
932 },
Alex Light6f3263d2019-02-27 14:37:14 -0800933 linux_bionic: {
934 local_include_dirs: ["linux_x86_64/libffi"],
935 srcs: [
936 "Modules/_ctypes/libffi/src/x86/unix64.S",
937 ],
938 },
Dan Willemsene41d4ce2017-10-02 10:41:09 -0700939 linux_glibc_x86_64: {
Dan Willemsenc88c0802017-09-25 14:33:27 -0700940 local_include_dirs: ["linux_x86_64/libffi"],
941 srcs: [
942 "Modules/_ctypes/libffi/src/x86/unix64.S",
943 ],
944 },
Nan Zhang33bb4bb2017-12-01 20:00:54 +0000945 android_x86: {
946 local_include_dirs: ["android_x86/libffi"],
947 srcs: [
948 "Modules/_ctypes/libffi/src/x86/win32.S",
949 ],
950 },
951 android_x86_64: {
952 local_include_dirs: ["android_x86_64/libffi"],
953 srcs: [
954 "Modules/_ctypes/libffi/src/x86/unix64.S",
955 ],
956 },
Dan Willemsenc88c0802017-09-25 14:33:27 -0700957 },
Nan Zhangd5c4d4a2017-07-19 16:22:00 -0700958}
Dan Willemsena7c6b232019-02-20 10:43:11 -0800959
960cc_library_host_static {
961 name: "py2-c-module-_scproxy",
962 defaults: ["py2-interp-defaults"],
963 srcs: ["Mac/Modules/_scproxy.c"],
964 target: {
965 linux: {
966 enabled: false,
967 },
968 },
969}