diff options
author | Michał Górny <mgorny@gentoo.org> | 2021-12-09 15:58:30 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2021-12-09 16:24:50 +0100 |
commit | a89025246b7b10f055fd740cbca77cd1f7895d4b (patch) | |
tree | 0f57c3d5485b6e8197e39b74ec0443838d479e88 | |
parent | ssl: Hard-disable SSLv3 to avoid automagic deps (diff) | |
download | cpython-a89025246b7b10f055fd740cbca77cd1f7895d4b.tar.gz cpython-a89025246b7b10f055fd740cbca77cd1f7895d4b.tar.bz2 cpython-a89025246b7b10f055fd740cbca77cd1f7895d4b.zip |
Temporary hack: handle all extensions via .addext()gentoo-3.11.0a3
Use .addext() for all modules in order to enable Makefile control
over building them.
-rw-r--r-- | configure.ac | 7 | ||||
-rw-r--r-- | setup.py | 26 |
2 files changed, 20 insertions, 13 deletions
diff --git a/configure.ac b/configure.ac index 31544dde03f..9bff59dd0bf 100644 --- a/configure.ac +++ b/configure.ac @@ -6422,6 +6422,13 @@ PY_STDLIB_MOD_SIMPLE([_codecs_tw]) PY_STDLIB_MOD_SIMPLE([_multibytecodec]) PY_STDLIB_MOD_SIMPLE([unicodedata]) +dnl Gentoo hack +PY_STDLIB_MOD_SIMPLE([_curses]) +PY_STDLIB_MOD_SIMPLE([_curses_panel]) +PY_STDLIB_MOD_SIMPLE([_dbm]) +PY_STDLIB_MOD_SIMPLE([readline]) +PY_STDLIB_MOD_SIMPLE([_tkinter]) + dnl By default we always compile these even when OpenSSL is available dnl (issue #14693). The modules are small. PY_STDLIB_MOD([_md5], [test "$with_builtin_md5" = yes]) @@ -1177,11 +1177,11 @@ class PyBuildExt(build_ext): ['/usr/lib/termcap'], 'termcap'): readline_libs.append('termcap') - self.add(Extension('readline', ['readline.c'], + self.addext(Extension('readline', ['readline.c'], library_dirs=['/usr/lib/termcap'], libraries=readline_libs)) else: - self.missing.append('readline') + self.addext(Extension('readline', ['readline.c'])) # Curses support, requiring the System V version of curses, often # provided by the ncurses library. @@ -1211,7 +1211,7 @@ class PyBuildExt(build_ext): curses_enabled = True if curses_library.startswith('ncurses'): curses_libs = [curses_library] - self.add(Extension('_curses', ['_cursesmodule.c'], + self.addext(Extension('_curses', ['_cursesmodule.c'], include_dirs=curses_includes, define_macros=curses_defines, libraries=curses_libs)) @@ -1225,24 +1225,24 @@ class PyBuildExt(build_ext): else: curses_libs = ['curses'] - self.add(Extension('_curses', ['_cursesmodule.c'], + self.addext(Extension('_curses', ['_cursesmodule.c'], define_macros=curses_defines, libraries=curses_libs)) else: curses_enabled = False - self.missing.append('_curses') + self.addext(Extension('_curses', ['_cursesmodule.c'])) # If the curses module is enabled, check for the panel module # _curses_panel needs some form of ncurses skip_curses_panel = True if AIX else False if (curses_enabled and not skip_curses_panel and self.compiler.find_library_file(self.lib_dirs, panel_library)): - self.add(Extension('_curses_panel', ['_curses_panel.c'], + self.addext(Extension('_curses_panel', ['_curses_panel.c'], include_dirs=curses_includes, define_macros=curses_defines, libraries=[panel_library, *curses_libs])) elif not skip_curses_panel: - self.missing.append('_curses_panel') + self.addext(Extension('_curses_panel', ['_curses_panel.c'])) def detect_crypt(self): self.addext(Extension('_crypt', ['_cryptmodule.c'])) @@ -1315,9 +1315,9 @@ class PyBuildExt(build_ext): ) break if dbmext is not None: - self.add(dbmext) + self.addext(dbmext) else: - self.missing.append('_dbm') + self.addext(Extension('_dbm', ['_dbmmodule.c'])) # Anthony Baxter's gdbm module. GNU dbm(3) will require -lgdbm: self.addext(Extension('_gdbm', ['_gdbmmodule.c'])) @@ -1427,7 +1427,7 @@ class PyBuildExt(build_ext): self.detect_ctypes() self.detect_multiprocessing() if not self.detect_tkinter(): - self.missing.append('_tkinter') + self.addext(Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'])) self.detect_uuid() # Uncomment the next line if you want to play with xxmodule.c @@ -1479,7 +1479,7 @@ class PyBuildExt(build_ext): extra_compile_args = tcltk_includes.split() extra_link_args = tcltk_libs.split() - self.add(Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], + self.addext(Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], define_macros=[('WITH_APPINIT', 1)], extra_compile_args = extra_compile_args, extra_link_args = extra_link_args)) @@ -1609,7 +1609,7 @@ class PyBuildExt(build_ext): if '-Wstrict-prototypes' in cflags.split(): compile_args.append('-Wno-strict-prototypes') - self.add(Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], + self.addext(Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], define_macros=[('WITH_APPINIT', 1)], include_dirs=include_dirs, libraries=[], @@ -1733,7 +1733,7 @@ class PyBuildExt(build_ext): # *** Uncomment these for TOGL extension only: # -lGL -lGLU -lXext -lXmu \ - self.add(Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], + self.addext(Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], define_macros=[('WITH_APPINIT', 1)] + defs, include_dirs=include_dirs, libraries=libs, |