@@ -3980,16 +3980,21 @@ AC_ARG_WITH(
3980
3980
[with_system_libmpdec="yes"])
3981
3981
AC_MSG_RESULT([$with_system_libmpdec])
3982
3982
3983
+ AC_DEFUN([USE_BUNDLED_LIBMPDEC],
3984
+ [LIBMPDEC_CFLAGS="-I\$(srcdir)/Modules/_decimal/libmpdec"
3985
+ LIBMPDEC_LIBS="-lm \$(LIBMPDEC_A)"
3986
+ LIBMPDEC_INTERNAL="\$(LIBMPDEC_HEADERS) \$(LIBMPDEC_A)"
3987
+ have_mpdec=yes
3988
+ with_system_libmpdec=no])
3989
+
3983
3990
AS_VAR_IF(
3984
3991
[with_system_libmpdec], [yes],
3985
3992
[PKG_CHECK_MODULES(
3986
3993
[LIBMPDEC], [libmpdec >= 2.5.0], [],
3987
3994
[LIBMPDEC_CFLAGS=${LIBMPDEC_CFLAGS-""}
3988
3995
LIBMPDEC_LIBS=${LIBMPDEC_LIBS-"-lmpdec -lm"}
3989
3996
LIBMPDEC_INTERNAL=])],
3990
- [LIBMPDEC_CFLAGS="-I\$(srcdir)/Modules/_decimal/libmpdec"
3991
- LIBMPDEC_LIBS="-lm \$(LIBMPDEC_A)"
3992
- LIBMPDEC_INTERNAL="\$(LIBMPDEC_HEADERS) \$(LIBMPDEC_A)"])
3997
+ [USE_BUNDLED_LIBMPDEC()])
3993
3998
3994
3999
AS_VAR_IF([with_system_libmpdec], [yes],
3995
4000
[WITH_SAVE_ENV([
@@ -4006,13 +4011,15 @@ AS_VAR_IF([with_system_libmpdec], [yes],
4006
4011
[have_mpdec=yes],
4007
4012
[have_mpdec=no])
4008
4013
])],
4009
- [AS_VAR_SET([have_mpdec], [yes])
4010
- AC_MSG_WARN([m4_normalize([
4014
+ [AC_MSG_WARN([m4_normalize([
4011
4015
the bundled copy of libmpdecimal is scheduled for removal in Python 3.15;
4012
4016
consider using a system installed mpdecimal library.])])])
4013
4017
4014
4018
AS_IF([test "$with_system_libmpdec" = "yes" && test "$have_mpdec" = "no"],
4015
- [AC_MSG_WARN([no system libmpdecimal found; unable to build _decimal])])
4019
+ [AC_MSG_WARN([m4_normalize([
4020
+ no system libmpdecimal found; falling back to bundled libmpdecimal
4021
+ (deprecated and scheduled for removal in Python 3.15)])])
4022
+ USE_BUNDLED_LIBMPDEC()])
4016
4023
4017
4024
# Disable forced inlining in debug builds, see GH-94847
4018
4025
AS_VAR_IF(
0 commit comments