1/* Module configuration */ 2 3/* This file contains the table of built-in modules. 4 See create_builtin() in import.c. */ 5 6#include "Python.h" 7 8extern PyObject* PyInit__abc(void); 9extern PyObject* PyInit_array(void); 10extern PyObject* PyInit_audioop(void); 11extern PyObject* PyInit_binascii(void); 12extern PyObject* PyInit_cmath(void); 13extern PyObject* PyInit_errno(void); 14extern PyObject* PyInit_faulthandler(void); 15extern PyObject* PyInit__tracemalloc(void); 16extern PyObject* PyInit_gc(void); 17extern PyObject* PyInit_math(void); 18extern PyObject* PyInit__md5(void); 19extern PyObject* PyInit_nt(void); 20extern PyObject* PyInit__operator(void); 21extern PyObject* PyInit__signal(void); 22extern PyObject* PyInit__sha1(void); 23extern PyObject* PyInit__sha256(void); 24extern PyObject* PyInit__sha512(void); 25extern PyObject* PyInit__sha3(void); 26extern PyObject* PyInit__statistics(void); 27extern PyObject* PyInit__typing(void); 28extern PyObject* PyInit__blake2(void); 29extern PyObject* PyInit_time(void); 30extern PyObject* PyInit__thread(void); 31#ifdef WIN32 32extern PyObject* PyInit_msvcrt(void); 33extern PyObject* PyInit__locale(void); 34#endif 35extern PyObject* PyInit__codecs(void); 36extern PyObject* PyInit__weakref(void); 37/* XXX: These two should really be extracted to standalone extensions. */ 38extern PyObject* PyInit_xxsubtype(void); 39extern PyObject* PyInit__xxsubinterpreters(void); 40extern PyObject* PyInit__random(void); 41extern PyObject* PyInit_itertools(void); 42extern PyObject* PyInit__collections(void); 43extern PyObject* PyInit__heapq(void); 44extern PyObject* PyInit__bisect(void); 45extern PyObject* PyInit__symtable(void); 46extern PyObject* PyInit_mmap(void); 47extern PyObject* PyInit__csv(void); 48extern PyObject* PyInit__sre(void); 49extern PyObject* PyInit_winreg(void); 50extern PyObject* PyInit__struct(void); 51extern PyObject* PyInit__datetime(void); 52extern PyObject* PyInit__functools(void); 53extern PyObject* PyInit__json(void); 54#ifdef _Py_HAVE_ZLIB 55extern PyObject* PyInit_zlib(void); 56#endif 57 58extern PyObject* PyInit__multibytecodec(void); 59extern PyObject* PyInit__codecs_cn(void); 60extern PyObject* PyInit__codecs_hk(void); 61extern PyObject* PyInit__codecs_iso2022(void); 62extern PyObject* PyInit__codecs_jp(void); 63extern PyObject* PyInit__codecs_kr(void); 64extern PyObject* PyInit__codecs_tw(void); 65extern PyObject* PyInit__winapi(void); 66extern PyObject* PyInit__lsprof(void); 67extern PyObject* PyInit__ast(void); 68extern PyObject* PyInit__io(void); 69extern PyObject* PyInit__pickle(void); 70extern PyObject* PyInit_atexit(void); 71extern PyObject* _PyWarnings_Init(void); 72extern PyObject* PyInit__string(void); 73extern PyObject* PyInit__stat(void); 74extern PyObject* PyInit__opcode(void); 75extern PyObject* PyInit__contextvars(void); 76extern PyObject* PyInit__tokenize(void); 77 78/* tools/freeze/makeconfig.py marker for additional "extern" */ 79/* -- ADDMODULE MARKER 1 -- */ 80 81extern PyObject* PyMarshal_Init(void); 82extern PyObject* PyInit__imp(void); 83 84struct _inittab _PyImport_Inittab[] = { 85 {"_abc", PyInit__abc}, 86 {"array", PyInit_array}, 87 {"_ast", PyInit__ast}, 88 {"audioop", PyInit_audioop}, 89 {"binascii", PyInit_binascii}, 90 {"cmath", PyInit_cmath}, 91 {"errno", PyInit_errno}, 92 {"faulthandler", PyInit_faulthandler}, 93 {"gc", PyInit_gc}, 94 {"math", PyInit_math}, 95 {"nt", PyInit_nt}, /* Use the NT os functions, not posix */ 96 {"_operator", PyInit__operator}, 97 {"_signal", PyInit__signal}, 98 {"_md5", PyInit__md5}, 99 {"_sha1", PyInit__sha1}, 100 {"_sha256", PyInit__sha256}, 101 {"_sha512", PyInit__sha512}, 102 {"_sha3", PyInit__sha3}, 103 {"_blake2", PyInit__blake2}, 104 {"time", PyInit_time}, 105 {"_thread", PyInit__thread}, 106 {"_tokenize", PyInit__tokenize}, 107 {"_typing", PyInit__typing}, 108 {"_statistics", PyInit__statistics}, 109#ifdef WIN32 110 {"msvcrt", PyInit_msvcrt}, 111 {"_locale", PyInit__locale}, 112#endif 113 {"_tracemalloc", PyInit__tracemalloc}, 114 /* XXX Should _winapi go in a WIN32 block? not WIN64? */ 115 {"_winapi", PyInit__winapi}, 116 117 {"_codecs", PyInit__codecs}, 118 {"_weakref", PyInit__weakref}, 119 {"_random", PyInit__random}, 120 {"_bisect", PyInit__bisect}, 121 {"_heapq", PyInit__heapq}, 122 {"_lsprof", PyInit__lsprof}, 123 {"itertools", PyInit_itertools}, 124 {"_collections", PyInit__collections}, 125 {"_symtable", PyInit__symtable}, 126 {"mmap", PyInit_mmap}, 127 {"_csv", PyInit__csv}, 128 {"_sre", PyInit__sre}, 129 {"winreg", PyInit_winreg}, 130 {"_struct", PyInit__struct}, 131 {"_datetime", PyInit__datetime}, 132 {"_functools", PyInit__functools}, 133 {"_json", PyInit__json}, 134 135 {"xxsubtype", PyInit_xxsubtype}, 136 {"_xxsubinterpreters", PyInit__xxsubinterpreters}, 137#ifdef _Py_HAVE_ZLIB 138 {"zlib", PyInit_zlib}, 139#endif 140 141 /* CJK codecs */ 142 {"_multibytecodec", PyInit__multibytecodec}, 143 {"_codecs_cn", PyInit__codecs_cn}, 144 {"_codecs_hk", PyInit__codecs_hk}, 145 {"_codecs_iso2022", PyInit__codecs_iso2022}, 146 {"_codecs_jp", PyInit__codecs_jp}, 147 {"_codecs_kr", PyInit__codecs_kr}, 148 {"_codecs_tw", PyInit__codecs_tw}, 149 150/* tools/freeze/makeconfig.py marker for additional "_inittab" entries */ 151/* -- ADDMODULE MARKER 2 -- */ 152 153 /* This module "lives in" with marshal.c */ 154 {"marshal", PyMarshal_Init}, 155 156 /* This lives it with import.c */ 157 {"_imp", PyInit__imp}, 158 159 /* These entries are here for sys.builtin_module_names */ 160 {"builtins", NULL}, 161 {"sys", NULL}, 162 {"_warnings", _PyWarnings_Init}, 163 {"_string", PyInit__string}, 164 165 {"_io", PyInit__io}, 166 {"_pickle", PyInit__pickle}, 167 {"atexit", PyInit_atexit}, 168 {"_stat", PyInit__stat}, 169 {"_opcode", PyInit__opcode}, 170 171 {"_contextvars", PyInit__contextvars}, 172 173 /* Sentinel */ 174 {0, 0} 175}; 176