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 
8 extern PyObject* PyInit__abc(void);
9 extern PyObject* PyInit_array(void);
10 extern PyObject* PyInit_audioop(void);
11 extern PyObject* PyInit_binascii(void);
12 extern PyObject* PyInit_cmath(void);
13 extern PyObject* PyInit_errno(void);
14 extern PyObject* PyInit_faulthandler(void);
15 extern PyObject* PyInit__tracemalloc(void);
16 extern PyObject* PyInit_gc(void);
17 extern PyObject* PyInit_math(void);
18 extern PyObject* PyInit__md5(void);
19 extern PyObject* PyInit_nt(void);
20 extern PyObject* PyInit__operator(void);
21 extern PyObject* PyInit__signal(void);
22 extern PyObject* PyInit__sha1(void);
23 extern PyObject* PyInit__sha256(void);
24 extern PyObject* PyInit__sha512(void);
25 extern PyObject* PyInit__sha3(void);
26 extern PyObject* PyInit__blake2(void);
27 extern PyObject* PyInit_time(void);
28 extern PyObject* PyInit__thread(void);
29 #ifdef WIN32
30 extern PyObject* PyInit_msvcrt(void);
31 extern PyObject* PyInit__locale(void);
32 #endif
33 extern PyObject* PyInit__codecs(void);
34 extern PyObject* PyInit__weakref(void);
35 /* XXX: This one should really be extracted to standalone extension. */
36 extern PyObject* PyInit_xxsubtype(void);
37 extern PyObject* PyInit_zipimport(void);
38 extern PyObject* PyInit__random(void);
39 extern PyObject* PyInit_itertools(void);
40 extern PyObject* PyInit__collections(void);
41 extern PyObject* PyInit__heapq(void);
42 extern PyObject* PyInit__bisect(void);
43 extern PyObject* PyInit__symtable(void);
44 extern PyObject* PyInit_mmap(void);
45 extern PyObject* PyInit__csv(void);
46 extern PyObject* PyInit__sre(void);
47 extern PyObject* PyInit_parser(void);
48 extern PyObject* PyInit_winreg(void);
49 extern PyObject* PyInit__struct(void);
50 extern PyObject* PyInit__datetime(void);
51 extern PyObject* PyInit__functools(void);
52 extern PyObject* PyInit__json(void);
53 #ifdef _Py_HAVE_ZLIB
54 extern PyObject* PyInit_zlib(void);
55 #endif
56 
57 extern PyObject* PyInit__multibytecodec(void);
58 extern PyObject* PyInit__codecs_cn(void);
59 extern PyObject* PyInit__codecs_hk(void);
60 extern PyObject* PyInit__codecs_iso2022(void);
61 extern PyObject* PyInit__codecs_jp(void);
62 extern PyObject* PyInit__codecs_kr(void);
63 extern PyObject* PyInit__codecs_tw(void);
64 extern PyObject* PyInit__winapi(void);
65 extern PyObject* PyInit__lsprof(void);
66 extern PyObject* PyInit__ast(void);
67 extern PyObject* PyInit__io(void);
68 extern PyObject* PyInit__pickle(void);
69 extern PyObject* PyInit_atexit(void);
70 extern PyObject* _PyWarnings_Init(void);
71 extern PyObject* PyInit__string(void);
72 extern PyObject* PyInit__stat(void);
73 extern PyObject* PyInit__opcode(void);
74 
75 extern PyObject* PyInit__contextvars(void);
76 
77 /* tools/freeze/makeconfig.py marker for additional "extern" */
78 /* -- ADDMODULE MARKER 1 -- */
79 
80 extern PyObject* PyMarshal_Init(void);
81 extern PyObject* PyInit__imp(void);
82 
83 struct _inittab _PyImport_Inittab[] = {
84 
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 #ifdef WIN32
107     {"msvcrt", PyInit_msvcrt},
108     {"_locale", PyInit__locale},
109 #endif
110     {"_tracemalloc", PyInit__tracemalloc},
111     /* XXX Should _winapi go in a WIN32 block?  not WIN64? */
112     {"_winapi", PyInit__winapi},
113 
114     {"_codecs", PyInit__codecs},
115     {"_weakref", PyInit__weakref},
116     {"_random", PyInit__random},
117     {"_bisect", PyInit__bisect},
118     {"_heapq", PyInit__heapq},
119     {"_lsprof", PyInit__lsprof},
120     {"itertools", PyInit_itertools},
121     {"_collections", PyInit__collections},
122     {"_symtable", PyInit__symtable},
123     {"mmap", PyInit_mmap},
124     {"_csv", PyInit__csv},
125     {"_sre", PyInit__sre},
126     {"parser", PyInit_parser},
127     {"winreg", PyInit_winreg},
128     {"_struct", PyInit__struct},
129     {"_datetime", PyInit__datetime},
130     {"_functools", PyInit__functools},
131     {"_json", PyInit__json},
132 
133     {"xxsubtype", PyInit_xxsubtype},
134     {"zipimport", PyInit_zipimport},
135 #ifdef _Py_HAVE_ZLIB
136     {"zlib", PyInit_zlib},
137 #endif
138 
139     /* CJK codecs */
140     {"_multibytecodec", PyInit__multibytecodec},
141     {"_codecs_cn", PyInit__codecs_cn},
142     {"_codecs_hk", PyInit__codecs_hk},
143     {"_codecs_iso2022", PyInit__codecs_iso2022},
144     {"_codecs_jp", PyInit__codecs_jp},
145     {"_codecs_kr", PyInit__codecs_kr},
146     {"_codecs_tw", PyInit__codecs_tw},
147 
148 /* tools/freeze/makeconfig.py marker for additional "_inittab" entries */
149 /* -- ADDMODULE MARKER 2 -- */
150 
151     /* This module "lives in" with marshal.c */
152     {"marshal", PyMarshal_Init},
153 
154     /* This lives it with import.c */
155     {"_imp", PyInit__imp},
156 
157     /* These entries are here for sys.builtin_module_names */
158     {"builtins", NULL},
159     {"sys", NULL},
160     {"_warnings", _PyWarnings_Init},
161     {"_string", PyInit__string},
162 
163     {"_io", PyInit__io},
164     {"_pickle", PyInit__pickle},
165     {"atexit", PyInit_atexit},
166     {"_stat", PyInit__stat},
167     {"_opcode", PyInit__opcode},
168 
169     {"_contextvars", PyInit__contextvars},
170 
171     /* Sentinel */
172     {0, 0}
173 };
174