[Buildroot] [PATCH/next v2 00/16] Update infrastructure to disable the build of certain extensions

Bernd Kuhls bernd at kuhls.net
Wed Aug 9 17:33:18 UTC 2023


Hi,

python 3.12, currently at rc1, will remove toplevel setup.py
https://github.com/python/cpython/commit/81dca70d704d0834d8c30580e648a973250b2973
so our patches using DISABLED_EXTENSIONS need to be adjusted.

Fortunately the build system of python 3.11 already contains a mechanism
to en-/disable most modules so we can update the current package which
will make the bump to 3.12 easier. In order remove our own code we need
to backport three new patches from the 3.12 branch.

Regards, Bernd

v2: - fixed bug in pyexpat patch, patched .checkpackageignore as well

Bernd Kuhls (16):
  package/berkeleydb: add option for historic dbm interface
  package/python3: berkeleydb support needs the dbm interface
  package/python3: use upstream build system to disable berkeleydb
    module
  package/python3: use upstream build system to disable uuid module
  package/python3: use upstream build system to disable bzip2/zlib/xz
    modules
  package/python3: use upstream build system to disable curses/readline
    modules
  package/python3: use upstream build system to disable ssl module
  package/python3: use upstream build system to disable ossaudiodev
    module
  package/python3: use upstream build system to disable unicodedata
    module
  package/python3: use upstream build system to disable nis module
  package/python3: use upstream build system to disable decimal module
  package/python3: use upstream build system to disable CJK codecs
  package/python3: use upstream build system to disable pyexpat module
  package/python3: use upstream build system to disable tk module
  package/python3: use upstream build system to disable sqlite3 module
  package/python3: Remove infrastructure to disable the build of certain
    extensions

 .checkpackageignore                           |  43 +-
 package/berkeleydb/Config.in                  |   5 +
 package/berkeleydb/berkeleydb.mk              |   1 +
 ...re-to-disable-the-build-of-certain-e.patch | 108 ---
 ...-header-paths-for-cross-compilation.patch} |   0
 ...ok-in-usr-lib-termcap-for-libraries.patch} |   0
 ...h => 0005-Don-t-add-multiarch-paths.patch} |   0
 ...> 0006-Abort-on-failed-module-build.patch} |   0
 ...tch => 0007-Serial-ioctl-workaround.patch} |   0
 ...-shebang-of-Python-scripts-for-cros.patch} |   0
 ...g.sh.in-ensure-sed-invocations-only.patch} |   0
 ...0010-Add-an-option-to-disable-pydoc.patch} |   0
 ...11-Add-an-option-to-disable-lib2to3.patch} |   0
 ... 0012-Add-an-option-to-disable-IDLE.patch} |   0
 ...option-to-disable-the-sqlite3-module.patch |  62 --
 ...hon-config.sh-don-t-reassign-prefix.patch} |   0
 ...d-an-option-to-disable-the-tk-module.patch |  77 --
 ...fix-building-on-older-distributions.patch} |   0
 ...-option-to-disable-the-curses-module.patch |  61 --
 ...p-CC-print-multiarch-output-for-mus.patch} |   0
 .../0016-Add-an-option-to-disable-expat.patch |  82 --
 ...ng-doesn-t-set-errno-when-encryptio.patch} |   0
 ...-Add-an-option-to-disable-CJK-codecs.patch |  30 -
 ...17-Port-_dbm-module-to-PY_STDLIB_MOD.patch | 293 +++++++
 .../0018-Add-an-option-to-disable-NIS.patch   |  33 -
 .../0018-Port-_ctypes-to-PY_STDLIB_MOD.patch  | 441 +++++++++++
 ...Add-an-option-to-disable-unicodedata.patch |  30 -
 ...readline-and-curses-to-PY_STDLIB_MOD.patch | 718 ++++++++++++++++++
 ...021-Add-an-option-to-disable-decimal.patch |  54 --
 ...on-to-disable-the-ossaudiodev-module.patch |  30 -
 ...an-option-to-disable-openssl-support.patch |  30 -
 ...ption-to-disable-the-readline-module.patch |  30 -
 ...to-disable-zlib-bzip2-and-xz-modules.patch |  42 -
 ...Add-an-option-to-disable-uuid-module.patch |  33 -
 ...ion-to-disable-the-berkeleydb-module.patch |  30 -
 package/python3/Config.in                     |   1 +
 package/python3/python3.mk                    |  79 +-
 37 files changed, 1521 insertions(+), 792 deletions(-)
 delete mode 100644 package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch
 rename package/python3/{0004-Adjust-library-header-paths-for-cross-compilation.patch => 0003-Adjust-library-header-paths-for-cross-compilation.patch} (100%)
 rename package/python3/{0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch => 0004-Don-t-look-in-usr-lib-termcap-for-libraries.patch} (100%)
 rename package/python3/{0006-Don-t-add-multiarch-paths.patch => 0005-Don-t-add-multiarch-paths.patch} (100%)
 rename package/python3/{0007-Abort-on-failed-module-build.patch => 0006-Abort-on-failed-module-build.patch} (100%)
 rename package/python3/{0008-Serial-ioctl-workaround.patch => 0007-Serial-ioctl-workaround.patch} (100%)
 rename package/python3/{0009-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch => 0008-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch} (100%)
 rename package/python3/{0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch => 0009-Misc-python-config.sh.in-ensure-sed-invocations-only.patch} (100%)
 rename package/python3/{0011-Add-an-option-to-disable-pydoc.patch => 0010-Add-an-option-to-disable-pydoc.patch} (100%)
 rename package/python3/{0012-Add-an-option-to-disable-lib2to3.patch => 0011-Add-an-option-to-disable-lib2to3.patch} (100%)
 rename package/python3/{0020-Add-an-option-to-disable-IDLE.patch => 0012-Add-an-option-to-disable-IDLE.patch} (100%)
 delete mode 100644 package/python3/0013-Add-option-to-disable-the-sqlite3-module.patch
 rename package/python3/{0026-python-config.sh-don-t-reassign-prefix.patch => 0013-python-config.sh-don-t-reassign-prefix.patch} (100%)
 delete mode 100644 package/python3/0014-Add-an-option-to-disable-the-tk-module.patch
 rename package/python3/{0028-fix-building-on-older-distributions.patch => 0014-fix-building-on-older-distributions.patch} (100%)
 delete mode 100644 package/python3/0015-Add-an-option-to-disable-the-curses-module.patch
 rename package/python3/{0029-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch => 0015-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch} (100%)
 delete mode 100644 package/python3/0016-Add-an-option-to-disable-expat.patch
 rename package/python3/{0031-lib-crypt-uClibc-ng-doesn-t-set-errno-when-encryptio.patch => 0016-lib-crypt-uClibc-ng-doesn-t-set-errno-when-encryptio.patch} (100%)
 delete mode 100644 package/python3/0017-Add-an-option-to-disable-CJK-codecs.patch
 create mode 100644 package/python3/0017-Port-_dbm-module-to-PY_STDLIB_MOD.patch
 delete mode 100644 package/python3/0018-Add-an-option-to-disable-NIS.patch
 create mode 100644 package/python3/0018-Port-_ctypes-to-PY_STDLIB_MOD.patch
 delete mode 100644 package/python3/0019-Add-an-option-to-disable-unicodedata.patch
 create mode 100644 package/python3/0019-Port-readline-and-curses-to-PY_STDLIB_MOD.patch
 delete mode 100644 package/python3/0021-Add-an-option-to-disable-decimal.patch
 delete mode 100644 package/python3/0022-Add-an-option-to-disable-the-ossaudiodev-module.patch
 delete mode 100644 package/python3/0023-Add-an-option-to-disable-openssl-support.patch
 delete mode 100644 package/python3/0024-Add-an-option-to-disable-the-readline-module.patch
 delete mode 100644 package/python3/0025-Add-options-to-disable-zlib-bzip2-and-xz-modules.patch
 delete mode 100644 package/python3/0027-Add-an-option-to-disable-uuid-module.patch
 delete mode 100644 package/python3/0030-Add-an-option-to-disable-the-berkeleydb-module.patch

-- 
2.39.2




More information about the buildroot mailing list