[Python-checkins] gh-93744: Remove configure --with-cxx-main option (#95651)
vstinner
webhook-mailer at python.org
Fri Aug 5 07:27:06 EDT 2022
https://github.com/python/cpython/commit/398ed84dc40abc58e16f5014d44c08f20cb4b5f6
commit: 398ed84dc40abc58e16f5014d44c08f20cb4b5f6
branch: main
author: Victor Stinner <vstinner at python.org>
committer: vstinner <vstinner at python.org>
date: 2022-08-05T13:26:58+02:00
summary:
gh-93744: Remove configure --with-cxx-main option (#95651)
Remove the "configure --with-cxx-main" build option: it didn't work
for many years. Remove the MAINCC variable from configure and
Makefile.
The MAINCC variable was added by the issue gh-42471: commit
0f48d98b740110a672b62d467af192ec160e56ba. Previously, --with-cxx-main
was named --with-cxx.
Keep CXX and LDCXXSHARED variables, even if they are no longer used
by Python build system.
files:
A Misc/NEWS.d/next/Build/2022-08-04-15-29-35.gh-issue-93744.svRuqm.rst
M Doc/using/configure.rst
M Makefile.pre.in
M configure
M configure.ac
diff --git a/Doc/using/configure.rst b/Doc/using/configure.rst
index 580cbd814f7..4e50e73a11b 100644
--- a/Doc/using/configure.rst
+++ b/Doc/using/configure.rst
@@ -41,12 +41,6 @@ General Options
See :data:`sys.int_info.bits_per_digit <sys.int_info>`.
-.. cmdoption:: --with-cxx-main
-.. cmdoption:: --with-cxx-main=COMPILER
-
- Compile the Python ``main()`` function and link Python executable with C++
- compiler: ``$CXX``, or *COMPILER* if specified.
-
.. cmdoption:: --with-suffix=SUFFIX
Set the Python executable suffix to *SUFFIX*.
@@ -721,22 +715,10 @@ Compiler flags
Example: ``gcc -pthread``.
-.. envvar:: MAINCC
-
- C compiler command used to build the ``main()`` function of programs like
- ``python``.
-
- Variable set by the :option:`--with-cxx-main` option of the configure
- script.
-
- Default: ``$(CC)``.
-
.. envvar:: CXX
C++ compiler command.
- Used if the :option:`--with-cxx-main` option is used.
-
Example: ``g++ -pthread``.
.. envvar:: CFLAGS
@@ -854,7 +836,7 @@ Linker flags
Linker command used to build programs like ``python`` and ``_testembed``.
- Default: ``$(PURIFY) $(MAINCC)``.
+ Default: ``$(PURIFY) $(CC)``.
.. envvar:: CONFIGURE_LDFLAGS
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 746ff4226e6..79616160e49 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -36,7 +36,6 @@ abs_builddir= @abs_builddir@
CC= @CC@
CXX= @CXX@
-MAINCC= @MAINCC@
LINKCC= @LINKCC@
AR= @AR@
READELF= @READELF@
@@ -1222,10 +1221,10 @@ Modules/getpath.o: $(srcdir)/Modules/getpath.c Python/frozen_modules/getpath.h M
-o $@ $(srcdir)/Modules/getpath.c
Programs/python.o: $(srcdir)/Programs/python.c
- $(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Programs/python.c
+ $(CC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Programs/python.c
Programs/_testembed.o: $(srcdir)/Programs/_testembed.c Programs/test_frozenmain.h
- $(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Programs/_testembed.c
+ $(CC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Programs/_testembed.c
Modules/_sre/sre.o: $(srcdir)/Modules/_sre/sre.c $(srcdir)/Modules/_sre/sre.h $(srcdir)/Modules/_sre/sre_constants.h $(srcdir)/Modules/_sre/sre_lib.h
diff --git a/Misc/NEWS.d/next/Build/2022-08-04-15-29-35.gh-issue-93744.svRuqm.rst b/Misc/NEWS.d/next/Build/2022-08-04-15-29-35.gh-issue-93744.svRuqm.rst
new file mode 100644
index 00000000000..fa9ade25718
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2022-08-04-15-29-35.gh-issue-93744.svRuqm.rst
@@ -0,0 +1,3 @@
+Remove the ``configure --with-cxx-main`` build option: it didn't work for
+many years. Remove the ``MAINCC`` variable from ``configure`` and
+``Makefile``. Patch by Victor Stinner.
diff --git a/configure b/configure
index 5df9f83290d..3f25d43dde6 100755
--- a/configure
+++ b/configure
@@ -927,7 +927,6 @@ MULTIARCH_CPPFLAGS
PLATFORM_TRIPLET
MULTIARCH
ac_ct_CXX
-MAINCC
CXX
EGREP
SED
@@ -1036,7 +1035,6 @@ enable_universalsdk
with_universal_archs
with_framework_name
enable_framework
-with_cxx_main
with_emscripten_target
enable_wasm_dynamic_linking
enable_wasm_pthreads
@@ -1805,9 +1803,6 @@ Optional Packages:
specify the name for the python framework on macOS
only valid when --enable-framework is set. see
Mac/README.rst (default is 'Python')
- --with-cxx-main[=COMPILER]
- compile main() and link Python executable with C++
- compiler specified in COMPILER (default is $CXX)
--with-emscripten-target=[browser|node]
Emscripten platform
--with-suffix=SUFFIX set executable suffix to SUFFIX (default is empty,
@@ -5550,35 +5545,6 @@ $as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-cxx-main=<compiler>" >&5
-$as_echo_n "checking for --with-cxx-main=<compiler>... " >&6; }
-
-# Check whether --with-cxx_main was given.
-if test "${with_cxx_main+set}" = set; then :
- withval=$with_cxx_main;
-
- case $withval in
- no) with_cxx_main=no
- MAINCC='$(CC)';;
- yes) with_cxx_main=yes
- MAINCC='$(CXX)';;
- *) with_cxx_main=yes
- MAINCC=$withval
- if test -z "$CXX"
- then
- CXX=$withval
- fi;;
- esac
-else
-
- with_cxx_main=no
- MAINCC='$(CC)'
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_cxx_main" >&5
-$as_echo "$with_cxx_main" >&6; }
-
preset_cxx="$CXX"
if test -z "$CXX"
then
@@ -6661,7 +6627,7 @@ LDVERSION="$VERSION"
$as_echo_n "checking LINKCC... " >&6; }
if test -z "$LINKCC"
then
- LINKCC='$(PURIFY) $(MAINCC)'
+ LINKCC='$(PURIFY) $(CC)'
case $ac_sys_system in
QNX*)
# qcc must be used because the other compilers do not
diff --git a/configure.ac b/configure.ac
index 38880fcc8cc..8decd9ebae8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -865,29 +865,6 @@ rm -f conftest.c conftest.out
AC_USE_SYSTEM_EXTENSIONS
AC_SUBST(CXX)
-AC_SUBST(MAINCC)
-AC_MSG_CHECKING(for --with-cxx-main=<compiler>)
-AC_ARG_WITH(cxx_main,
- AS_HELP_STRING([--with-cxx-main@<:@=COMPILER@:>@],
- [compile main() and link Python executable with C++ compiler specified in COMPILER (default is $CXX)]),
-[
-
- case $withval in
- no) with_cxx_main=no
- MAINCC='$(CC)';;
- yes) with_cxx_main=yes
- MAINCC='$(CXX)';;
- *) with_cxx_main=yes
- MAINCC=$withval
- if test -z "$CXX"
- then
- CXX=$withval
- fi;;
- esac], [
- with_cxx_main=no
- MAINCC='$(CC)'
-])
-AC_MSG_RESULT($with_cxx_main)
preset_cxx="$CXX"
if test -z "$CXX"
@@ -1358,7 +1335,7 @@ AC_SUBST(LINKCC)
AC_MSG_CHECKING(LINKCC)
if test -z "$LINKCC"
then
- LINKCC='$(PURIFY) $(MAINCC)'
+ LINKCC='$(PURIFY) $(CC)'
case $ac_sys_system in
QNX*)
# qcc must be used because the other compilers do not
More information about the Python-checkins
mailing list