// Copyright 2017 Google Inc. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS.  PLEASE
//     CONSULT THE OWNERS AND opensource-licensing@google.com BEFORE
//     DEPENDING ON IT IN YOUR PROJECT. ***
package {
    default_applicable_licenses: ["external_python_cpython2_license"],
}

// Added automatically by a large-scale-change that took the approach of
// 'apply every license found to every target'. While this makes sure we respect
// every license restriction, it may not be entirely correct.
//
// e.g. GPL in an MIT project might only apply to the contrib/ directory.
//
// Please consider splitting the single license below into multiple licenses,
// taking care not to lose any license_kind information, and overriding the
// default license using the 'licenses: [...]' property on targets as needed.
//
// For unused files, consider creating a 'fileGroup' with "//visibility:private"
// to attach the license to, and including a comment whether the files may be
// used in the current project.
// See: http://go/android-license-faq
license {
    name: "external_python_cpython2_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-0BSD",
        "SPDX-license-identifier-Apache-2.0",
        "SPDX-license-identifier-BSD",
        "SPDX-license-identifier-CC0-1.0",
        "SPDX-license-identifier-GPL",
        "SPDX-license-identifier-GPL-2.0",
        "SPDX-license-identifier-GPL-3.0",
        "SPDX-license-identifier-LGPL-2.1",
        "SPDX-license-identifier-MIT",
        "SPDX-license-identifier-MPL",
        "SPDX-license-identifier-PSF-2.0",
        "SPDX-license-identifier-Zlib",
        "legacy_by_exception_only", // by exception only
        "legacy_notice",
        "legacy_unencumbered",
    ],
    license_text: [
        "LICENSE",
    ],
}

subdirs = [
    "Lib",
]

cc_defaults {
    name: "py2-interp-defaults",
    cflags: [
        "-fwrapv",
        "-O3",
        "-Wall",
        "-Wstrict-prototypes",
        "-DPy_BUILD_CORE",
        "-Werror",
        "-Wno-invalid-source-encoding",
        "-Wno-int-conversion",
        "-Wno-missing-field-initializers",
        "-Wno-null-pointer-arithmetic",
        "-Wno-register",
        "-Wno-shift-count-overflow",
        "-Wno-sign-compare",
        "-Wno-strict-prototypes",
        "-Wno-tautological-compare",
        "-Wno-tautological-constant-out-of-range-compare",
        "-Wno-unused-parameter",
        "-Wno-unused-result",
    ],
    local_include_dirs: ["Include"],
    target: {
        android_arm: {
            local_include_dirs: ["android_arm/pyconfig"],
        },
        android_arm64: {
            local_include_dirs: ["android_arm64/pyconfig"],
        },
        android_x86: {
            local_include_dirs: ["android_x86/pyconfig"],
        },
        linux_bionic: {
            // NB linux_bionic is a 'host' architecture but it uses the bionic libc like 'android'
            // targets so use the android pyconfig.
            local_include_dirs: ["android_x86_64/pyconfig"],
        },
        android_x86_64: {
            local_include_dirs: ["android_x86_64/pyconfig"],
        },
        // Regenerate include dirs with android_regen.sh
        darwin_x86_64: {
            local_include_dirs: ["darwin_x86_64/pyconfig"],
            cflags: [
                "-Wno-deprecated-declarations",
                "-Wno-pointer-arith",
            ],
        },
        linux_glibc_x86: {
            enabled: false,
        },
        linux_glibc_x86_64: {
            local_include_dirs: ["linux_x86_64/pyconfig"],
            cflags: ["-Werror"],
        },
        windows: {
            enabled: false,
        },
    },
    host_supported: true,
    compile_multilib: "both",
    multilib: {
        lib32: {
            suffix: "32",
        },
        lib64: {
            suffix: "64",
        },
    },
}

cc_library_static {
    name: "py2-interp-parser",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Parser/acceler.c",
        "Parser/bitset.c",
        "Parser/firstsets.c",
        "Parser/grammar.c",
        "Parser/grammar1.c",
        "Parser/listnode.c",
        "Parser/metagrammar.c",
        "Parser/myreadline.c",
        "Parser/node.c",
        "Parser/parser.c",
        "Parser/parsetok.c",
        "Parser/pgen.c",
        "Parser/tokenizer.c",
    ],
}

cc_library_static {
    name: "py2-interp-object",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Objects/abstract.c",
        "Objects/boolobject.c",
        "Objects/bufferobject.c",
        "Objects/bytes_methods.c",
        "Objects/bytearrayobject.c",
        "Objects/capsule.c",
        "Objects/cellobject.c",
        "Objects/classobject.c",
        "Objects/cobject.c",
        "Objects/codeobject.c",
        "Objects/complexobject.c",
        "Objects/descrobject.c",
        "Objects/enumobject.c",
        "Objects/exceptions.c",
        "Objects/genobject.c",
        "Objects/fileobject.c",
        "Objects/floatobject.c",
        "Objects/frameobject.c",
        "Objects/funcobject.c",
        "Objects/intobject.c",
        "Objects/iterobject.c",
        "Objects/listobject.c",
        "Objects/longobject.c",
        "Objects/dictobject.c",
        "Objects/memoryobject.c",
        "Objects/methodobject.c",
        "Objects/moduleobject.c",
        "Objects/object.c",
        "Objects/obmalloc.c",
        "Objects/rangeobject.c",
        "Objects/setobject.c",
        "Objects/sliceobject.c",
        "Objects/stringobject.c",
        "Objects/structseq.c",
        "Objects/tupleobject.c",
        "Objects/typeobject.c",
        "Objects/weakrefobject.c",
        "Objects/unicodeobject.c",
        "Objects/unicodectype.c",
    ],
}

cc_library_static {
    name: "py2-interp-python",
    defaults: ["py2-interp-defaults"],
    target: {
        linux: {
            cflags: [
                "-DPLATFORM=\"linux2\"",
            ],
        },
        darwin_x86_64: {
            cflags: [
                "-DPLATFORM=\"darwin\"",
            ],
        },
    },
    srcs: [
        "Python/_warnings.c",
        "Python/Python-ast.c",
        "Python/asdl.c",
        "Python/ast.c",
        "Python/bltinmodule.c",
        "Python/ceval.c",
        "Python/compile.c",
        "Python/codecs.c",
        "Python/errors.c",
        "Python/frozen.c",
        "Python/frozenmain.c",
        "Python/future.c",
        "Python/getargs.c",
        "Python/getcompiler.c",
        "Python/getcopyright.c",
        "Python/getplatform.c",
        "Python/getversion.c",
        "Python/graminit.c",
        "Python/import.c",
        "Python/importdl.c",
        "Python/marshal.c",
        "Python/modsupport.c",
        "Python/mystrtoul.c",
        "Python/mysnprintf.c",
        "Python/peephole.c",
        "Python/pyarena.c",
        "Python/pyctype.c",
        "Python/pyfpe.c",
        "Python/pymath.c",
        "Python/pystate.c",
        "Python/pythonrun.c",
        "Python/random.c",
        "Python/structmember.c",
        "Python/symtable.c",
        "Python/sysmodule.c",
        "Python/traceback.c",
        "Python/getopt.c",
        "Python/pystrcmp.c",
        "Python/pystrtod.c",
        "Python/dtoa.c",
        "Python/formatter_unicode.c",
        "Python/formatter_string.c",
        "Python/dynload_shlib.c",
        "Python/thread.c",
    ],
}

cc_defaults {
    name: "py2-launcher-defaults",
    defaults: ["py2-interp-defaults"],
    cflags: [
        "-DVERSION=\"2.7\"",
        "-DVPATH=\"\"",
        "-DPREFIX=\"\"",
        "-DEXEC_PREFIX=\"\"",
        "-DPYTHONPATH=\"..:\"",
        "-DANDROID_SKIP_ZIP_PATH",
        "-DANDROID_SKIP_EXEC_PREFIX_PATH",
        "-DANDROID_LIB_PYTHON_PATH=\"internal/stdlib\"",
        "-DDATE=\"Dec 31 1969\"",
        "-DTIME=\"23:59:59\"",
    ],
    static_libs: [
        "libbase",
        "libcrypto_static",
        "libexpat",
        "liblog",
        "libssl",
        "libz",
    ],
    target: {
        linux_glibc_x86_64: {
            host_ldlibs: ["-lutil"],
        },
        darwin: {
            host_ldlibs: [
                "-framework SystemConfiguration",
                "-framework CoreFoundation",
            ],
        },
        host: {
            static_libs: ["libsqlite"],
        },
        // Use shared libsqlite for device side, otherwise
        // the executable size will be really huge.
        android: {
            shared_libs: ["libsqlite"],
        },
    },
}

cc_library_static {
    name: "py2-launcher-lib",
    defaults: ["py2-launcher-defaults"],
    srcs: [
        "Modules/gcmodule.c",
        "Modules/getpath.c",
        "Modules/config.c",
        "Modules/getbuildinfo.c",
        // Default built-in extension py2-c-modules.
        "Modules/threadmodule.c",
        "Modules/signalmodule.c",
        "Modules/posixmodule.c",
        "Modules/errnomodule.c",
        "Modules/pwdmodule.c",
        "Modules/_sre.c",
        "Modules/_codecsmodule.c",
        "Modules/_weakref.c",
        "Modules/zipimport.c",
        "Modules/symtablemodule.c",
        "Modules/main.c",
    ],
    // NOTE: Please update Modules/config.c if new lib get added in the static_libs.
    whole_static_libs: [
        // Be careful the order of these three static libraries below due to
        // missing symbols issues.
        "py2-interp-object",
        "py2-interp-python",
        "py2-interp-parser",
        "py2-c-module-array",
        "py2-c-module-cmath",
        "py2-c-module-math",
        "py2-c-module-_struct",
        "py2-c-module-time",
        "py2-c-module-operator",
        "py2-c-module-_testcapi",
        "py2-c-module-_random",
        "py2-c-module-_collections",
        "py2-c-module-_heapq",
        "py2-c-module-itertools",
        "py2-c-module-strop",
        "py2-c-module-_functools",
        "py2-c-module-datetime",
        "py2-c-module-_bisect",
        "py2-c-module-unicodedata",
        "py2-c-module-_io",
        "py2-c-module-fcntl",
        "py2-c-module-select",
        "py2-c-module-mmap",
        "py2-c-module-_csv",
        "py2-c-module-_socket",
        "py2-c-module-termios",
        "py2-c-module-_ssl",
        "py2-c-module-_md5",
        "py2-c-module-_sha",
        "py2-c-module-_sha256",
        "py2-c-module-_sha512",
        "py2-c-module-binascii",
        "py2-c-module-parser",
        "py2-c-module-cStringIO",
        "py2-c-module-cPickle",
        "py2-c-module-xxsubtype",
        "py2-c-module-future_builtins",
        "py2-c-module-_json",
        "py2-c-module-_hotshot",
        "py2-c-module-_lsprof",
        "py2-c-module-grp",
        "py2-c-module-syslog",
        "py2-c-module-audioop",
        "py2-c-module-resource",
        "py2-c-module-_multibytecodec",
        "py2-c-module-_codecs_kr",
        "py2-c-module-_codecs_jp",
        "py2-c-module-_codecs_cn",
        "py2-c-module-_codecs_tw",
        "py2-c-module-_codecs_hk",
        "py2-c-module-_codecs_iso2022",
        "py2-c-module-_multiprocessing",
        "py2-c-module-zlib",
        "py2-c-module-pyexpat",
        "py2-c-module-_sqlite3",
        "py2-c-module-_ctypes_test",
        "py2-c-module-_ctypes",
    ],
    target: {
        darwin: {
            whole_static_libs: ["py2-c-module-_scproxy"],
        },
    },
}

cc_binary {
    name: "py2-launcher",
    defaults: ["py2-launcher-defaults"],
    srcs: ["Launcher/launcher_main.cpp"],
    static_libs: ["py2-launcher-lib"],
}

cc_binary {
    name: "py2-launcher-autorun",
    defaults: ["py2-launcher-defaults"],
    srcs: ["Launcher/launcher_main.cpp"],
    static_libs: ["py2-launcher-lib"],
    cflags: ["-DANDROID_AUTORUN"],
}

python_binary_host {
    name: "py2-cmd",
    autorun: false,
    version: {
        py2: {
            enabled: true,
            embedded_launcher: true,
        },
        py3: {
            enabled: false,
        },
    },
}

// Enabled extension py2-c-modules.

cc_library_static {
    name: "py2-c-module-array",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/arraymodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-cmath",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/cmathmodule.c",
        "Modules/_math.c",
    ],
}

cc_library_static {
    name: "py2-c-module-math",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/mathmodule.c",
        "Modules/_math.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_struct",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_struct.c",
    ],
}

cc_library_static {
    name: "py2-c-module-time",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/timemodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-operator",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/operator.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_testcapi",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_testcapimodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_random",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_randommodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_collections",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_collectionsmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_heapq",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_heapqmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-itertools",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/itertoolsmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-strop",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/stropmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_functools",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_functoolsmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-datetime",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/datetimemodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_bisect",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_bisectmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-unicodedata",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/unicodedata.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_io",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_io/bufferedio.c",
        "Modules/_io/bytesio.c",
        "Modules/_io/fileio.c",
        "Modules/_io/iobase.c",
        "Modules/_io/_iomodule.c",
        "Modules/_io/stringio.c",
        "Modules/_io/textio.c",
    ],
    local_include_dirs: [
        "Modules/_io",
    ],
}

cc_library_static {
    name: "py2-c-module-fcntl",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/fcntlmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-select",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/selectmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-mmap",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/mmapmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_csv",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_csv.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_socket",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/socketmodule.c",
        "Modules/timemodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-termios",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/termios.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_ssl",
    defaults: ["py2-interp-defaults"],
    srcs: ["Modules/_ssl.c"],
    cflags: ["-Wno-incompatible-pointer-types-discards-qualifiers"],
    static_libs: [
        "libssl",
        "libcrypto_static",
    ],
}

cc_library_static {
    name: "py2-c-module-_md5",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/md5module.c",
        "Modules/md5.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_sha",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/shamodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_sha256",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/sha256module.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_sha512",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/sha512module.c",
    ],
}

cc_library_static {
    name: "py2-c-module-binascii",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/binascii.c",
    ],
}

cc_library_static {
    name: "py2-c-module-parser",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/parsermodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-cStringIO",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/cStringIO.c",
    ],
}

cc_library_static {
    name: "py2-c-module-cPickle",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/cPickle.c",
    ],
}

cc_library_static {
    name: "py2-c-module-xxsubtype",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/xxsubtype.c",
    ],
}

cc_library_static {
    name: "py2-c-module-future_builtins",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/future_builtins.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_json",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_json.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_hotshot",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_hotshot.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_lsprof",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_lsprof.c",
        "Modules/rotatingtree.c",
    ],
}

cc_library_static {
    name: "py2-c-module-grp",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/grpmodule.c",
        "Modules/rotatingtree.c",
    ],
}

cc_library_static {
    name: "py2-c-module-syslog",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/syslogmodule.c",
    ],
}

cc_library_static {
    name: "py2-c-module-audioop",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/audioop.c",
    ],
}

cc_library_static {
    name: "py2-c-module-resource",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/resource.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_multibytecodec",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/cjkcodecs/multibytecodec.c",
    ],
}

cc_library_static {
    name: "py2-c-module-_codecs_kr",
    defaults: ["py2-interp-defaults"],
    srcs: ["Modules/cjkcodecs/_codecs_kr.c"],
}

cc_library_static {
    name: "py2-c-module-_codecs_jp",
    defaults: ["py2-interp-defaults"],
    srcs: ["Modules/cjkcodecs/_codecs_jp.c"],
}

cc_library_static {
    name: "py2-c-module-_codecs_cn",
    defaults: ["py2-interp-defaults"],
    srcs: ["Modules/cjkcodecs/_codecs_cn.c"],
}

cc_library_static {
    name: "py2-c-module-_codecs_tw",
    defaults: ["py2-interp-defaults"],
    srcs: ["Modules/cjkcodecs/_codecs_tw.c"],
}

cc_library_static {
    name: "py2-c-module-_codecs_hk",
    defaults: ["py2-interp-defaults"],
    srcs: ["Modules/cjkcodecs/_codecs_hk.c"],
}

cc_library_static {
    name: "py2-c-module-_codecs_iso2022",
    defaults: ["py2-interp-defaults"],
    srcs: ["Modules/cjkcodecs/_codecs_iso2022.c"],
}

cc_library_static {
    name: "py2-c-module-_multiprocessing",
    defaults: ["py2-interp-defaults"],
    srcs: [
        "Modules/_multiprocessing/multiprocessing.c",
        "Modules/_multiprocessing/semaphore.c",
        "Modules/_multiprocessing/socket_connection.c",
    ],
}

cc_library_static {
    name: "py2-c-module-zlib",
    defaults: [
        "py2-interp-defaults",
    ],
    cflags: [
        "-DUSE_ZLIB_CRC32",
    ],
    srcs: [
        "Modules/zlibmodule.c",
    ],
    static_libs: [
        "libz",
    ],
}

cc_library_static {
    name: "py2-c-module-pyexpat",
    defaults: [
        "py2-interp-defaults",
    ],
    cflags: [
        "-DUSE_PYEXPAT_CAPI",
    ],
    srcs: [
        "Modules/pyexpat.c",
    ],
    static_libs: [
        "libexpat",
    ],
}

cc_library_static {
    name: "py2-c-module-_sqlite3",
    defaults: [
        "py2-interp-defaults",
    ],
    cflags: [
        "-DMODULE_NAME=\"sqlite3\"",
        "-DSQLITE_OMIT_LOAD_EXTENSION",
        "-Wno-format-security",
        "-Wno-type-limits",
        "-Wno-char-subscripts",
    ],
    local_include_dirs: [
        "Modules/_sqlite",
    ],
    srcs: [
        "Modules/_sqlite/cache.c",
        "Modules/_sqlite/connection.c",
        "Modules/_sqlite/cursor.c",
        "Modules/_sqlite/microprotocols.c",
        "Modules/_sqlite/module.c",
        "Modules/_sqlite/prepare_protocol.c",
        "Modules/_sqlite/row.c",
        "Modules/_sqlite/statement.c",
        "Modules/_sqlite/util.c",
    ],
    target: {
        host: {
            static_libs: [
                "libsqlite",
            ],
        },
        android: {
            shared_libs: [
                "libsqlite",
            ],
        },
    },
}

cc_library_static {
    name: "py2-c-module-_ctypes_test",
    defaults: ["py2-interp-defaults"],
    srcs: ["Modules/_ctypes/_ctypes_test.c"],
}

cc_library_static {
    name: "py2-c-module-_ctypes",
    defaults: [
        "py2-interp-defaults",
    ],
    local_include_dirs: [
        "Modules/_ctypes/libffi/include",
    ],
    srcs: [
        "Modules/_ctypes/_ctypes.c",
        "Modules/_ctypes/callbacks.c",
        "Modules/_ctypes/callproc.c",
        "Modules/_ctypes/stgdict.c",
        "Modules/_ctypes/cfield.c",
        "Modules/_ctypes/libffi/src/prep_cif.c",
        "Modules/_ctypes/libffi/src/closures.c",
    ],
    arch: {
        x86_64: {
            local_include_dirs: [
                "Modules/_ctypes/libffi/src/x86",
            ],
            srcs: [
                "Modules/_ctypes/libffi/src/x86/ffi64.c",
                "Modules/_ctypes/libffi/src/x86/ffi.c",
                "Modules/_ctypes/libffi/src/x86/sysv.S",
            ],
        },
        x86: {
            local_include_dirs: [
                "Modules/_ctypes/libffi/src/x86",
            ],
            srcs: [
                "Modules/_ctypes/libffi/src/x86/ffi.c",
                "Modules/_ctypes/libffi/src/x86/sysv.S",
            ],
        },
        arm: {
            local_include_dirs: [
                "android_arm/libffi",
                "Modules/_ctypes/libffi/src/arm",
            ],
            srcs: [
                "Modules/_ctypes/libffi/src/arm/ffi.c",
                "Modules/_ctypes/libffi/src/arm/sysv.S",
                "Modules/_ctypes/libffi/src/arm/trampoline.S",
            ],
        },
        arm64: {
            // arithmetic on a pointer in _ctypes/libffi/src/aarch64/ffi.c
            cflags: ["-Wno-pointer-arith"],
            local_include_dirs: [
                "android_arm64/libffi",
                "Modules/_ctypes/libffi/src/aarch64",
            ],
            srcs: [
                "Modules/_ctypes/libffi/src/aarch64/ffi.c",
                "Modules/_ctypes/libffi/src/aarch64/sysv.S",
            ],
        },
    },
    target: {
        // Regenerate include dirs with android_regen.sh
        darwin_x86_64: {
            local_include_dirs: ["darwin_x86_64/libffi"],
            srcs: [
                "Modules/_ctypes/libffi/src/x86/darwin.S",
                "Modules/_ctypes/libffi/src/x86/darwin64.S",
            ],
        },
        linux_bionic: {
            local_include_dirs: ["linux_x86_64/libffi"],
            srcs: [
                "Modules/_ctypes/libffi/src/x86/unix64.S",
            ],
        },
        linux_glibc_x86_64: {
            local_include_dirs: ["linux_x86_64/libffi"],
            srcs: [
                "Modules/_ctypes/libffi/src/x86/unix64.S",
            ],
        },
        android_x86: {
            local_include_dirs: ["android_x86/libffi"],
            srcs: [
                "Modules/_ctypes/libffi/src/x86/win32.S",
            ],
        },
        android_x86_64: {
            local_include_dirs: ["android_x86_64/libffi"],
            srcs: [
                "Modules/_ctypes/libffi/src/x86/unix64.S",
            ],
        },
    },
}

cc_library_host_static {
    name: "py2-c-module-_scproxy",
    defaults: ["py2-interp-defaults"],
    srcs: ["Mac/Modules/_scproxy.c"],
    target: {
        linux: {
            enabled: false,
        },
    },
}
