def is_manylinux2014_compatible()

in tools/ci_build/github/linux/docker/manylinux2014_build_scripts/manylinux-check.py [0:0]


def is_manylinux2014_compatible():
    # Only Linux, and only supported architectures
    from distutils.util import get_platform
    if get_platform() not in [
        "linux-x86_64",
        "linux-i686",
        "linux-aarch64",
        "linux-armv7l",
        "linux-ppc64",
        "linux-ppc64le",
        "linux-s390x",
    ]:
        return False

    # Check for presence of _manylinux module
    try:
        import _manylinux
        return bool(_manylinux.manylinux2014_compatible)
    except (ImportError, AttributeError):
        # Fall through to heuristic check below
        pass

    # Check glibc version. CentOS 7 uses glibc 2.17.
    # PEP 513 contains an implementation of this function.
    return have_compatible_glibc(2, 17)