Dropping AC_C_CHAR_UNSIGNED from configure.ac?
Hello Pythonistas. In (development branch of) Fedora, we have juts upgraded to GCC 12. It seems that the presence of AC_C_CHAR_UNSIGNED in Python's autotools files (configure.ac?) is causing the __CHAR_UNSIGNED__ symbol to be defined in pyconfig.h and that breaks some other packages with GCC 12. The GCC maintainers told us it is a reserved symbol, see https://bugzilla.redhat.com/2043555 for details. It seems that using AC_C_CHAR_UNSIGNED is not recommended and also not required, but I must confess that I am pretty much horrified by autotools and I don't really know if we can get rid of AC_C_CHAR_UNSIGNED or not. I can test this in Fedora and I am quite sure it'll work, but I don't know the impact on all the other environments where CPython can be compiled. Is there anybody on this list who knows a reason we need to keep AC_C_CHAR_UNSIGNED around in 2022? Or is it safe to get rid of it? Thanks, -- Miro Hrončok -- Phone: +420777974800 IRC: mhroncok
On 24/01/2022 14.34, Miro Hrončok wrote:
Hello Pythonistas.
In (development branch of) Fedora, we have juts upgraded to GCC 12.
It seems that the presence of AC_C_CHAR_UNSIGNED in Python's autotools files (configure.ac?) is causing the __CHAR_UNSIGNED__ symbol to be defined in pyconfig.h and that breaks some other packages with GCC 12.
The GCC maintainers told us it is a reserved symbol, see https://bugzilla.redhat.com/2043555 for details.
It seems that using AC_C_CHAR_UNSIGNED is not recommended and also not required, but I must confess that I am pretty much horrified by autotools and I don't really know if we can get rid of AC_C_CHAR_UNSIGNED or not. I can test this in Fedora and I am quite sure it'll work, but I don't know the impact on all the other environments where CPython can be compiled.
Is there anybody on this list who knows a reason we need to keep AC_C_CHAR_UNSIGNED around in 2022? Or is it safe to get rid of it?
Let's find out! I have created draft PR https://github.com/python/cpython/pull/30851 and scheduled the PR on our buildbot fleet.
On 24. 01. 22 14:52, Christian Heimes wrote:
On 24/01/2022 14.34, Miro Hrončok wrote:
Hello Pythonistas.
In (development branch of) Fedora, we have juts upgraded to GCC 12.
It seems that the presence of AC_C_CHAR_UNSIGNED in Python's autotools files (configure.ac?) is causing the __CHAR_UNSIGNED__ symbol to be defined in pyconfig.h and that breaks some other packages with GCC 12.
The GCC maintainers told us it is a reserved symbol, see https://bugzilla.redhat.com/2043555 for details.
It seems that using AC_C_CHAR_UNSIGNED is not recommended and also not required, but I must confess that I am pretty much horrified by autotools and I don't really know if we can get rid of AC_C_CHAR_UNSIGNED or not. I can test this in Fedora and I am quite sure it'll work, but I don't know the impact on all the other environments where CPython can be compiled.
Is there anybody on this list who knows a reason we need to keep AC_C_CHAR_UNSIGNED around in 2022? Or is it safe to get rid of it?
Let's find out!
I have created draft PR https://github.com/python/cpython/pull/30851 and scheduled the PR on our buildbot fleet.
It worked. I've opened https://bugs.python.org/issue46513 so we can actually ship it. -- Miro Hrončok -- Phone: +420777974800 IRC: mhroncok
participants (2)
-
Christian Heimes -
Miro Hrončok