From ad6b66b34f71ff6b60b3be5f6fd3e781cdeecd59 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 22 Feb 2017 17:23:42 -0800
Subject: [PATCH] Add an option to disable the tk module

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
[ Andrey Smirnov: ported to Python 3.6 ]
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
[ Adam Duskett: ported to Python 3.10.0 ]
Signed-off-by: Adam Duskett <aduskett@gmail.com>
---
 Makefile.pre.in | 10 +++++++---
 configure.ac    |  9 +++++++++
 2 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/Makefile.pre.in b/Makefile.pre.in
index 5628860..c968113 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -1446,7 +1446,6 @@ LIBSUBDIRS=	asyncio \
 		logging \
 		multiprocessing multiprocessing/dummy \
 		site-packages \
-		tkinter \
 		turtledemo \
 		unittest \
 		urllib \
@@ -1522,8 +1521,6 @@ TESTSUBDIRS=	ctypes/test \
 		test/tracedmodules \
 		test/xmltestdata test/xmltestdata/c14n-20 \
 		test/ziptestdata \
-		tkinter/test tkinter/test/test_tkinter \
-		tkinter/test/test_ttk \
 		unittest/test unittest/test/testmock
 
 ifeq (@PYDOC@,yes)
@@ -1543,6 +1540,13 @@ LIBSUBDIRS += sqlite3
 TESTSUBDIRS += sqlite3/test
 endif
 
+ifeq (@TK@,yes)
+LIBSUBDIRS += tkinter
+TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
+	tkinter/test/test_ttk
+endif
+
+
 TEST_MODULES=@TEST_MODULES@
 libinstall:	build_all $(srcdir)/Modules/xxmodule.c
 	@for i in $(SCRIPTDIR) $(LIBDEST); \
diff --git a/configure.ac b/configure.ac
index dfee472..dc76dff 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3382,6 +3382,15 @@ if test "$SQLITE3" = "no" ; then
    DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
 fi
 
+AC_SUBST(TK)
+AC_ARG_ENABLE(tk,
+	AS_HELP_STRING([--disable-tk], [disable tk]),
+	[ TK="${enableval}" ], [ TK=yes ])
+
+if test "$TK" = "no"; then
+   DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _tkinter"
+fi
+
 AC_SUBST(PYDOC)
 
 AC_ARG_ENABLE(pydoc,
-- 
2.30.2