Skip to content

Target libc based suffix (-musl/-gnu) in PLATFORM_TRIPLET is chosen based on build machine configuration instead of configuration of the target #95855

Closed
@autobakterie

Description

@autobakterie

That, as an example, leads to cpython 3.9.13 build failing1 when cross-compiling on AMD64 Linux with glibc for mpc8548 Linux (OpenWrt) with musl.

As already described and confirmed as a bug in #24502 (comment) :

If I'm not mistaken, PLATFORM_TRIPLET should refer to the target platform on which cpython will run. If that is the case, the musl libc vs. glibc decision should be based on $host_os rather than $build_os as the former is based on autoconf's AC_CANONICAL_HOST macro2 which refers to the target platform that might differ from the build platform in case of cross-compilation.

I'm creating this as a separate issue concerning a particular problem, but I think this also contributes to existing discussion in #87278 .

Linked PRs

Footnotes

  1. "internal configure error for the platform triplet, please file a bug report"

  2. https://www.gnu.org/software/autoconf/manual/autoconf-2.68/html_node/Canonicalizing.html

Metadata

Metadata

Assignees

No one assigned

    Labels

    type-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions