Skip to content

Commit 0d3b908

Browse files
committed
add --enable-pyc-build to the configure script
1 parent ee8e7c2 commit 0d3b908

File tree

4 files changed

+153
-27
lines changed

4 files changed

+153
-27
lines changed

Makefile.pre.in

Lines changed: 39 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1594,33 +1594,45 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
15941594
$(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
15951595
$(DESTDIR)$(LIBDEST)/distutils/tests ; \
15961596
fi
1597-
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1598-
$(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
1599-
-j0 -d $(LIBDEST) -f \
1600-
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
1601-
$(DESTDIR)$(LIBDEST)
1602-
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1603-
$(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \
1604-
-j0 -d $(LIBDEST) -f \
1605-
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
1606-
$(DESTDIR)$(LIBDEST)
1607-
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1608-
$(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
1609-
-j0 -d $(LIBDEST) -f \
1610-
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
1611-
$(DESTDIR)$(LIBDEST)
1612-
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1613-
$(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
1614-
-j0 -d $(LIBDEST)/site-packages -f \
1615-
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
1616-
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1617-
$(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \
1618-
-j0 -d $(LIBDEST)/site-packages -f \
1619-
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
1620-
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1621-
$(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
1622-
-j0 -d $(LIBDEST)/site-packages -f \
1623-
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
1597+
-if test "@OPT0_PYC_BUILD@" = yes; then \
1598+
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1599+
$(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
1600+
-j0 -d $(LIBDEST) -f \
1601+
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
1602+
$(DESTDIR)$(LIBDEST); \
1603+
fi
1604+
-if test "@OPT1_PYC_BUILD@" = yes; then \
1605+
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1606+
$(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \
1607+
-j0 -d $(LIBDEST) -f \
1608+
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
1609+
$(DESTDIR)$(LIBDEST); \
1610+
fi
1611+
-if test "@OPT2_PYC_BUILD@" = yes; then \
1612+
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1613+
$(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
1614+
-j0 -d $(LIBDEST) -f \
1615+
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
1616+
$(DESTDIR)$(LIBDEST); \
1617+
fi
1618+
-if test "@OPT0_PYC_BUILD@" = yes; then \
1619+
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1620+
$(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
1621+
-j0 -d $(LIBDEST)/site-packages -f \
1622+
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages; \
1623+
fi
1624+
-if test "@OPT1_PYC_BUILD@" = yes; then \
1625+
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1626+
$(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \
1627+
-j0 -d $(LIBDEST)/site-packages -f \
1628+
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages; \
1629+
fi
1630+
-if test "@OPT2_PYC_BUILD@" = yes; then \
1631+
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
1632+
$(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
1633+
-j0 -d $(LIBDEST)/site-packages -f \
1634+
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages; \
1635+
fi
16241636
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
16251637
$(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt
16261638
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Add option ``--enable-pyc-build`` to the ``configure`` script to choose
2+
what type of .pyc files to compile at installing libraries.

configure

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -623,6 +623,9 @@ ac_includes_default="\
623623
#endif"
624624

625625
ac_subst_vars='LTLIBOBJS
626+
OPT2_PYC_BUILD
627+
OPT1_PYC_BUILD
628+
OPT0_PYC_BUILD
626629
TEST_MODULES
627630
LIBRARY_DEPS
628631
STATIC_LIBPYTHON
@@ -862,6 +865,7 @@ with_builtin_hashlib_hashes
862865
with_experimental_isolated_subinterpreters
863866
with_static_libpython
864867
enable_test_modules
868+
enable_pyc_build
865869
'
866870
ac_precious_vars='build_alias
867871
host_alias
@@ -1522,6 +1526,9 @@ Optional Features:
15221526
use big digits (30 or 15 bits) for Python longs
15231527
(default is system-dependent)]
15241528
--disable-test-modules don't build nor install test modules
1529+
--enable-pyc-build[=all|none|O0[,O1[,O2]]]
1530+
choose what type of .pyc files to compile at
1531+
installing libraries (default is all)
15251532

15261533
Optional Packages:
15271534
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -17786,6 +17793,61 @@ $as_echo "no" >&6; }
1778617793
fi
1778717794

1778817795

17796+
# choose what type of .pyc files to compile at installing libraries
17797+
OPT0_PYC_BUILD=yes
17798+
OPT1_PYC_BUILD=yes
17799+
OPT2_PYC_BUILD=yes
17800+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --enable-pyc-build" >&5
17801+
$as_echo_n "checking for --enable-pyc-build... " >&6; }
17802+
# Check whether --enable-pyc-build was given.
17803+
if test "${enable_pyc_build+set}" = set; then :
17804+
enableval=$enable_pyc_build;
17805+
case $enableval in
17806+
yes|all)
17807+
;;
17808+
no|none)
17809+
OPT0_PYC_BUILD=no
17810+
OPT1_PYC_BUILD=no
17811+
OPT2_PYC_BUILD=no
17812+
;;
17813+
O[012]*)
17814+
OPT0_PYC_BUILD=no
17815+
OPT1_PYC_BUILD=no
17816+
OPT2_PYC_BUILD=no
17817+
for opt in `echo $enableval | sed 's/,/ /g'`; do
17818+
case $opt in
17819+
O0)
17820+
OPT0_PYC_BUILD=yes
17821+
;;
17822+
O1)
17823+
OPT1_PYC_BUILD=yes
17824+
;;
17825+
O2)
17826+
OPT2_PYC_BUILD=yes
17827+
;;
17828+
*)
17829+
as_fn_error $? "proper usage is --enable-pyc-build[=all|none|O0[,O1[,O2]]]" "$LINENO" 5
17830+
;;
17831+
esac
17832+
done
17833+
;;
17834+
*)
17835+
as_fn_error $? "proper usage is --enable-pyc-build[=all|none|O0[,O1[,O2]]]" "$LINENO" 5
17836+
;;
17837+
esac
17838+
17839+
else
17840+
17841+
enable_pyc_build=all
17842+
17843+
fi
17844+
17845+
17846+
17847+
17848+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_pyc_build" >&5
17849+
$as_echo "$enable_pyc_build" >&6; }
17850+
1778917851

1779017852
# generate output files
1779117853
ac_config_files="$ac_config_files Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh"

configure.ac

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5933,6 +5933,56 @@ else
59335933
fi
59345934
AC_SUBST(TEST_MODULES)
59355935

5936+
# choose what type of .pyc files to compile at installing libraries
5937+
OPT0_PYC_BUILD=yes
5938+
OPT1_PYC_BUILD=yes
5939+
OPT2_PYC_BUILD=yes
5940+
AC_MSG_CHECKING(for --enable-pyc-build)
5941+
AC_ARG_ENABLE(pyc-build,
5942+
AS_HELP_STRING([--enable-pyc-build@<:@=all|none|O0@<:@,O1@<:@,O2@:>@@:>@@:>@],
5943+
[choose what type of .pyc files to compile at installing libraries (default is all)]),
5944+
[
5945+
case $enableval in
5946+
yes|all)
5947+
;;
5948+
no|none)
5949+
OPT0_PYC_BUILD=no
5950+
OPT1_PYC_BUILD=no
5951+
OPT2_PYC_BUILD=no
5952+
;;
5953+
O@<:@012@:>@*)
5954+
OPT0_PYC_BUILD=no
5955+
OPT1_PYC_BUILD=no
5956+
OPT2_PYC_BUILD=no
5957+
for opt in `echo $enableval | sed 's/,/ /g'`; do
5958+
case $opt in
5959+
O0)
5960+
OPT0_PYC_BUILD=yes
5961+
;;
5962+
O1)
5963+
OPT1_PYC_BUILD=yes
5964+
;;
5965+
O2)
5966+
OPT2_PYC_BUILD=yes
5967+
;;
5968+
*)
5969+
AC_MSG_ERROR([proper usage is --enable-pyc-build@<:@=all|none|O0@<:@,O1@<:@,O2@:>@@:>@@:>@])
5970+
;;
5971+
esac
5972+
done
5973+
;;
5974+
*)
5975+
AC_MSG_ERROR([proper usage is --enable-pyc-build@<:@=all|none|O0@<:@,O1@<:@,O2@:>@@:>@@:>@])
5976+
;;
5977+
esac
5978+
],[
5979+
enable_pyc_build=all
5980+
])
5981+
AC_SUBST(OPT0_PYC_BUILD)
5982+
AC_SUBST(OPT1_PYC_BUILD)
5983+
AC_SUBST(OPT2_PYC_BUILD)
5984+
AC_MSG_RESULT($enable_pyc_build)
5985+
59365986

59375987
# generate output files
59385988
AC_CONFIG_FILES(Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh)

0 commit comments

Comments
 (0)