xref: /third_party/python/PC/config.c (revision 7db96d56)
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