Blob Blame History Raw
#ifndef PY_LINKAGE_INITTAB_H
#define PY_LINKAGE_INITTAB_H

#define PY_CORE_INIT(x) extern void x##_Init(void)
#define PY_INIT_FUNC(x) extern void PyInit_##x(void)
#define PY_INIT_PTR(x)  void (*x)(void)

#ifdef   PY_ALL_STATIC
#include "static.h"
#endif

#ifdef   PY_FOR_PYCOMPILE
#include "pycompile.h"
#endif

struct _inittab {
	char * name;
	PY_INIT_PTR(initfunc);
};

PY_CORE_INIT(_PyWarnings);
PY_CORE_INIT(PyMarshal);

PY_INIT_FUNC(_ast);
PY_INIT_FUNC(_string);
PY_INIT_FUNC(_imp);
PY_INIT_FUNC(gc);

PY_INIT_FUNC(_abc);
PY_INIT_FUNC(_codecs);
PY_INIT_FUNC(_collections);
PY_INIT_FUNC(_functools);
PY_INIT_FUNC(_io);
PY_INIT_FUNC(_locale);
PY_INIT_FUNC(_operator);
PY_INIT_FUNC(_signal);
PY_INIT_FUNC(_sre);
PY_INIT_FUNC(_stat);
PY_INIT_FUNC(_symtable);
PY_INIT_FUNC(_thread);
PY_INIT_FUNC(_tracemalloc);
PY_INIT_FUNC(_weakref);

PY_INIT_FUNC(atexit);
PY_INIT_FUNC(errno);
PY_INIT_FUNC(faulthandler);
PY_INIT_FUNC(itertools);
PY_INIT_FUNC(posix);
PY_INIT_FUNC(pwd);
PY_INIT_FUNC(time);
PY_INIT_FUNC(xxsubtype);
PY_INIT_FUNC(zipimport);

#define PY_IMPORT_INITTAB_BASE                  \
	{"builtins",    0},                     \
	{"sys",         0},                     \
	{"_ast",        PyInit__ast},           \
	{"_imp",        PyInit__imp},           \
	{"_string",     PyInit__string},        \
	{"gc",          PyInit_gc},             \
	{"marshal",     PyMarshal_Init},        \
	{"_warnings",   _PyWarnings_Init}


#define PY_IMPORT_INITTAB_COMMON                      \
	{"_abc",                PyInit__abc},         \
	{"_codecs",             PyInit__codecs},      \
	{"_collections",        PyInit__collections}, \
	{"_functools",          PyInit__functools},   \
	{"_io",                 PyInit__io},          \
	{"_locale",             PyInit__locale},      \
	{"_operator",           PyInit__operator},    \
	{"_signal",             PyInit__signal},      \
	{"_sre",                PyInit__sre},         \
	{"_stat",               PyInit__stat},        \
	{"_symtable",           PyInit__symtable},    \
	{"_thread",             PyInit__thread},      \
	{"_tracemalloc",        PyInit__tracemalloc}, \
	{"_weakref",            PyInit__weakref},     \
	{"atexit",              PyInit_atexit},       \
	{"errno",               PyInit_errno},        \
	{"faulthandler",        PyInit_faulthandler}, \
	{"itertools",           PyInit_itertools},    \
	{"posix",               PyInit_posix},        \
	{"pwd",                 PyInit_pwd},          \
	{"time",                PyInit_time},         \
	{"xxsubtype",           PyInit_xxsubtype},    \
	{"zipimport",           PyInit_zipimport}


#define PY_IMPORT_INITTAB_ANYOS_CORE                            \
	{"_asyncio",            PyInit__asyncio},               \
	{"_bisect",             PyInit__bisect},                \
	{"_blake2",             PyInit__blake2},                \
	{"_bz2",                PyInit__bz2},                   \
	{"_codecs_cn",          PyInit__codecs_cn},             \
	{"_codecs_hk",          PyInit__codecs_hk},             \
	{"_codecs_iso2022",     PyInit__codecs_iso2022},        \
	{"_codecs_jp",          PyInit__codecs_jp},             \
	{"_codecs_kr",          PyInit__codecs_kr},             \
	{"_codecs_tw",          PyInit__codecs_tw},             \
	{"_contextvars",        PyInit__contextvars},           \
	{"_crypt",              PyInit__crypt},                 \
	{"_csv",                PyInit__csv},                   \
	{"_ctypes",             PyInit__ctypes},                \
	{"_ctypes_test",        PyInit__ctypes_test},           \
	{"_curses",             PyInit__curses},                \
	{"_curses_panel",       PyInit__curses_panel},          \
	{"_datetime",           PyInit__datetime},              \
	{"_dbm",                PyInit__dbm},                   \
	{"_decimal",            PyInit__decimal},               \
	{"_elementtree",        PyInit__elementtree},           \
	{"_gdbm",               PyInit__gdbm},                  \
	{"_hashlib",            PyInit__hashlib},               \
	{"_heapq",              PyInit__heapq},                 \
	{"_json",               PyInit__json},                  \
	{"_lsprof",             PyInit__lsprof},                \
	{"_lzma",               PyInit__lzma},                  \
	{"_md5",                PyInit__md5},                   \
	{"_multibytecodec",     PyInit__multibytecodec},        \
	{"_multiprocessing",    PyInit__multiprocessing},       \
	{"_opcode",             PyInit__opcode},                \
	{"_pickle",             PyInit__pickle},                \
	{"_posixsubprocess",    PyInit__posixsubprocess},       \
	{"_queue",              PyInit__queue},                 \
	{"_random",             PyInit__random},                \
	{"_sha1",               PyInit__sha1},                  \
	{"_sha256",             PyInit__sha256},                \
	{"_sha3",               PyInit__sha3},                  \
	{"_sha512",             PyInit__sha512},                \
	{"_socket",             PyInit__socket},                \
	{"_sqlite3",            PyInit__sqlite3},               \
	{"_struct",             PyInit__struct},                \
	{"_testbuffer",         PyInit__testbuffer},            \
	{"_testcapi",           PyInit__testcapi},              \
	{"_testimportmultiple", PyInit__testimportmultiple},    \
	{"_testmultiphase",     PyInit__testmultiphase},        \
	{"_uuid",               PyInit__uuid},                  \
	{"_xxtestfuzz",         PyInit__xxtestfuzz},            \
	{"array",               PyInit_array},                  \
	{"binascii",            PyInit_binascii},               \
	{"cmath",               PyInit_cmath},                  \
	{"fcntl",               PyInit_fcntl},                  \
	{"grp",                 PyInit_grp},                    \
	{"math",                PyInit_math},                   \
	{"mmap",                PyInit_mmap},                   \
	{"parser",              PyInit_parser},                 \
	{"pyexpat",             PyInit_pyexpat},                \
	{"readline",            PyInit_readline},               \
	{"resource",            PyInit_resource},               \
	{"select",              PyInit_select},                 \
	{"spwd",                PyInit_spwd},                   \
	{"syslog",              PyInit_syslog},                 \
	{"termios",             PyInit_termios},                \
	{"unicodedata",         PyInit_unicodedata},            \
	{"xxlimited",           PyInit_xxlimited},              \
	{"zlib",                PyInit_zlib}


#define PY_IMPORT_INITTAB_ANYOS_AUDIO                           \
	{"audioop",             PyInit_audioop},                \
	{"ossaudiodev",         PyInit_ossaudiodev}


#define PY_IMPORT_INITTAB_ANYOS_SSL                             \
	{"_ssl",                PyInit__ssl}


#define PY_IMPORT_INITTAB_ANYOS_TCLTK                           \
	{"_tkinter",            PyInit__tkinter}

#endif