Repository navigation
Configure EXEEXT hacks are interfering with AX_C_FLOAT_WORDS_BIGENDIAN #125698
Description
Activity
- addedtype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or errorbuildThe build process and cross-buildThe build process and cross-build
on Oct 18, 2024 cc. @damelang, author of
AX_C_FLOAT_WORDS_BIGENDIAN.Another workaround, could be to move the float checks to before our
EXEEXThacks, but who knows what will break next time.- added a commit that references this issue
on Oct 18, 2024 cc. @hroncok
I am not entirely sure what's my input here supposed to be.
- added a commit that references this issue
on Oct 20, 2024 - added a commit that references this issue
on Oct 20, 2024 I am not entirely sure what's my input here supposed to be.
I just suspected a third-party consumer of our build system would like to receive a heads-up when I proposed a rename of one of the configure/Make variables.
Anyway, as I feared, the renaming broke CI, so I'm reverting it. I suggest instead to amend Dan Amelang's patch to use
ac_exeextiso.EXEEXT.Reacted by Miro HrončokI amended Dan's patch to use
ac_exeextin Codespaces, and can confirm that that approach works for WASI.See python/cpython-devcontainers#30 for a proposed patch.
I amended Dan's patch to use
ac_exeextin Codespaces, and can confirm that that approach works for WASI.OTOH, most of the macros in autoconf-archive does actually use
EXEEXT, and notac_exeext, implying that if we should land python/cpython-devcontainers#30, we'd possibly run into a similar issue with another macro at a later point1. Perhaps we should just work around this inconfigure.acby making sureac_exeextis set to the same asEXEEXT.Footnotes
-
yet another reason to switch to a more modern build system ↩
-
Landed on the following solution:
Automerge enabled for the backports. Closing this as completed.
Bug report
Bug description:
We mess up
EXEEXTinconfigure.ac:cpython/configure.ac
Lines 1323 to 1340 in cda0ec8
This creates problems1, since
AX_C_FLOAT_WORDS_BIGENDIANexpectsEXEEXTandac_exeextto be the same.EXEEXTandac_exeextare set up byAC_PROG_CC:cpython/configure.ac
Line 1026 in cda0ec8
We can mitigate this by:
ac_exeext=$EXEEXTafter L1340 inconfigure.acEXEEXT; for exampleEXE_SUFFIXMy gut feel regarding these is that I'd really not like to add more
EXEEXThacks, so I'd like to avoid 1). 2) should be ok, given that no-one else are depending onEXEEXT(cc. @hroncok).CPython versions tested on:
CPython main branch
Operating systems tested on:
Linux, macOS, Other
Linked PRs
Footnotes
https://github.com/python/cpython/pull/125571#issuecomment-2422385731, https://github.com/python/cpython/pull/125571#issuecomment-2422414137 ↩