xref: /OK3568_Linux_fs/buildroot/package/python3/0012-Add-an-option-to-disable-pydoc.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom a65e5d3caf8e076d531191164c23c6240461f675 Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
3*4882a593SmuzhiyunDate: Wed, 22 Feb 2017 17:07:56 -0800
4*4882a593SmuzhiyunSubject: [PATCH] Add an option to disable pydoc
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunIt removes 0.5 MB of data from the target plus the pydoc script
7*4882a593Smuzhiyunitself.
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunSigned-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
10*4882a593SmuzhiyunSigned-off-by: Samuel Martin <s.martin49@gmail.com>
11*4882a593Smuzhiyun[ Andrey Smirnov: ported to Python 3.6 ]
12*4882a593SmuzhiyunSigned-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
13*4882a593Smuzhiyun[ Adam Duskett: ported to Python 3.10.0 ]
14*4882a593SmuzhiyunSigned-off-by: Adam Duskett <aduskett@gmail.com>
15*4882a593Smuzhiyun---
16*4882a593Smuzhiyun Makefile.pre.in | 7 ++++++-
17*4882a593Smuzhiyun configure.ac    | 6 ++++++
18*4882a593Smuzhiyun setup.py        | 9 +++++++--
19*4882a593Smuzhiyun 3 files changed, 19 insertions(+), 3 deletions(-)
20*4882a593Smuzhiyun
21*4882a593Smuzhiyundiff --git a/Makefile.pre.in b/Makefile.pre.in
22*4882a593Smuzhiyunindex c0d5511..32b3df7 100644
23*4882a593Smuzhiyun--- a/Makefile.pre.in
24*4882a593Smuzhiyun+++ b/Makefile.pre.in
25*4882a593Smuzhiyun@@ -1391,7 +1391,9 @@ bininstall: altbininstall
26*4882a593Smuzhiyun 	-rm -f $(DESTDIR)$(BINDIR)/idle3
27*4882a593Smuzhiyun 	(cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3)
28*4882a593Smuzhiyun 	-rm -f $(DESTDIR)$(BINDIR)/pydoc3
29*4882a593Smuzhiyun+ifeq (@PYDOC@,yes)
30*4882a593Smuzhiyun 	(cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
31*4882a593Smuzhiyun+endif
32*4882a593Smuzhiyun 	-rm -f $(DESTDIR)$(BINDIR)/2to3
33*4882a593Smuzhiyun 	(cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3)
34*4882a593Smuzhiyun 	if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \
35*4882a593Smuzhiyun@@ -1442,7 +1444,6 @@ LIBSUBDIRS=	asyncio \
36*4882a593Smuzhiyun 		lib2to3 lib2to3/fixes lib2to3/pgen2 \
37*4882a593Smuzhiyun 		logging \
38*4882a593Smuzhiyun 		multiprocessing multiprocessing/dummy \
39*4882a593Smuzhiyun-		pydoc_data \
40*4882a593Smuzhiyun 		site-packages \
41*4882a593Smuzhiyun 		sqlite3 \
42*4882a593Smuzhiyun 		tkinter \
43*4882a593Smuzhiyun@@ -1530,6 +1531,10 @@ TESTSUBDIRS=	ctypes/test \
44*4882a593Smuzhiyun 		tkinter/test/test_ttk \
45*4882a593Smuzhiyun 		unittest/test unittest/test/testmock
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun+ifeq (@PYDOC@,yes)
48*4882a593Smuzhiyun+LIBSUBDIRS += pydoc_data
49*4882a593Smuzhiyun+endif
50*4882a593Smuzhiyun+
51*4882a593Smuzhiyun TEST_MODULES=@TEST_MODULES@
52*4882a593Smuzhiyun libinstall:	build_all $(srcdir)/Modules/xxmodule.c
53*4882a593Smuzhiyun 	@for i in $(SCRIPTDIR) $(LIBDEST); \
54*4882a593Smuzhiyundiff --git a/configure.ac b/configure.ac
55*4882a593Smuzhiyunindex 083a12d..9079531 100644
56*4882a593Smuzhiyun--- a/configure.ac
57*4882a593Smuzhiyun+++ b/configure.ac
58*4882a593Smuzhiyun@@ -3373,6 +3373,12 @@ if test "$posix_threads" = "yes"; then
59*4882a593Smuzhiyun       AC_CHECK_FUNCS(pthread_getcpuclockid)
60*4882a593Smuzhiyun fi
61*4882a593Smuzhiyun
62*4882a593Smuzhiyun+AC_SUBST(PYDOC)
63*4882a593Smuzhiyun+
64*4882a593Smuzhiyun+AC_ARG_ENABLE(pydoc,
65*4882a593Smuzhiyun+	AS_HELP_STRING([--disable-pydoc], [disable pydoc]),
66*4882a593Smuzhiyun+	[ PYDOC="${enableval}" ], [ PYDOC=yes ])
67*4882a593Smuzhiyun+
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun # Check for enable-ipv6
70*4882a593Smuzhiyun AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified])
71*4882a593Smuzhiyundiff --git a/setup.py b/setup.py
72*4882a593Smuzhiyunindex d00d389..d23f148 100644
73*4882a593Smuzhiyun--- a/setup.py
74*4882a593Smuzhiyun+++ b/setup.py
75*4882a593Smuzhiyun@@ -2721,6 +2721,12 @@ def main():
76*4882a593Smuzhiyun     # turn off warnings when deprecated modules are imported
77*4882a593Smuzhiyun     import warnings
78*4882a593Smuzhiyun     warnings.filterwarnings("ignore",category=DeprecationWarning)
79*4882a593Smuzhiyun+
80*4882a593Smuzhiyun+    scripts = ['Tools/scripts/idle3', 'Tools/scripts/2to3',
81*4882a593Smuzhiyun+               'Lib/smtpd.py']
82*4882a593Smuzhiyun+    if not '--disable-pydoc' in sysconfig.get_config_var("CONFIG_ARGS"):
83*4882a593Smuzhiyun+        scripts += [ 'Tools/scripts/pydoc3' ]
84*4882a593Smuzhiyun+
85*4882a593Smuzhiyun     setup(# PyPI Metadata (PEP 301)
86*4882a593Smuzhiyun           name = "Python",
87*4882a593Smuzhiyun           version = sys.version.split()[0],
88*4882a593Smuzhiyun@@ -2746,8 +2752,7 @@ def main():
89*4882a593Smuzhiyun           # If you change the scripts installed here, you also need to
90*4882a593Smuzhiyun           # check the PyBuildScripts command above, and change the links
91*4882a593Smuzhiyun           # created by the bininstall target in Makefile.pre.in
92*4882a593Smuzhiyun-          scripts = ["Tools/scripts/pydoc3", "Tools/scripts/idle3",
93*4882a593Smuzhiyun-                     "Tools/scripts/2to3"]
94*4882a593Smuzhiyun+          scripts = scripts
95*4882a593Smuzhiyun         )
96*4882a593Smuzhiyun
97*4882a593Smuzhiyun # --install-platlib
98*4882a593Smuzhiyun--
99*4882a593Smuzhiyun2.30.2
100*4882a593Smuzhiyun
101