summaryrefslogtreecommitdiffstats
path: root/python/sip/custom/custom.c
blob: e5ec2d256c0a455771ad3141044380e5e7305a3f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/*
 * This file is the basis of a custom Python interpreter.  Use it for Linux,
 * UNIX and Windows (console).  You will also need to edit mkcustom.py.
 */


#include <Python.h>


int main(int argc, char **argv)
{
	/*
	 * Declare the module initialisation function for each module you want
	 * to be a builtin in the custom interpreter.  The name of the function
	 * will be the name of the module with "init" prepended.  The modules
	 * must be built as static libraries (using the -k flag to configure.py
	 * for SIP and PyQt).
	 */

	/* The sip module will be builtin. */
	extern void initsip(void);

	/*
	 * Uncomment these (and in the structure below) to include the PyQt
	 * modules as builtins.
	 */
/*	extern void initqt(void);*/
/*	extern void initqtaxcontainer(void);*/
/*	extern void initqtcanvas(void);*/
/*	extern void initqtext(void);*/
/*	extern void initqtgl(void);*/
/*	extern void initqtnetwork(void);*/
/*	extern void initqtsql(void);*/
/*	extern void initqttable(void);*/
/*	extern void initqtui(void);*/
/*	extern void initqtxml(void);*/

	/*
	 * This structure specifies the names and initialisation functions of
	 * the builtin modules.
	 */
	struct _inittab builtin_modules[] = {
		{"sip", initsip},
/*		{"qt", initqt},*/
/*		{"qtaxcontainer", initqtaxcontainer},*/
/*		{"qtcanvas", initqtcanvas},*/
/*		{"qtext", initqtext},*/
/*		{"qtgl", initqtgl},*/
/*		{"qtnetwork", initqtnetwork},*/
/*		{"qtsql", initqtsql},*/
/*		{"qttable", initqttable},*/
/*		{"qtui", initqtui},*/
/*		{"qtxml", initqtxml},*/
		{NULL, NULL}
	};

	PyImport_ExtendInittab(builtin_modules);

	return Py_Main(argc, argv);
}