|
1 |
|
2 /* Dummy frozen modules initializer */ |
|
3 |
|
4 #include "Python.h" |
|
5 |
|
6 /* In order to test the support for frozen modules, by default we |
|
7 define a single frozen module, __hello__. Loading it will print |
|
8 some famous words... */ |
|
9 |
|
10 /* To regenerate this data after the bytecode or marshal format has changed, |
|
11 go to ../Tools/freeze/ and freeze the hello.py file; then copy and paste |
|
12 the appropriate bytes from M___main__.c. */ |
|
13 |
|
14 static unsigned char M___hello__[] = { |
|
15 99,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0, |
|
16 0,115,9,0,0,0,100,0,0,71,72,100,1,0,83,40, |
|
17 2,0,0,0,115,14,0,0,0,72,101,108,108,111,32,119, |
|
18 111,114,108,100,46,46,46,78,40,0,0,0,0,40,0,0, |
|
19 0,0,40,0,0,0,0,40,0,0,0,0,115,8,0,0, |
|
20 0,104,101,108,108,111,46,112,121,115,1,0,0,0,63,1, |
|
21 0,0,0,115,0,0,0,0, |
|
22 }; |
|
23 |
|
24 #define SIZE (int)sizeof(M___hello__) |
|
25 |
|
26 static struct _frozen _PyImport_FrozenModules[] = { |
|
27 /* Test module */ |
|
28 {"__hello__", M___hello__, SIZE}, |
|
29 /* Test package (negative size indicates package-ness) */ |
|
30 {"__phello__", M___hello__, -SIZE}, |
|
31 {"__phello__.spam", M___hello__, SIZE}, |
|
32 {0, 0, 0} /* sentinel */ |
|
33 }; |
|
34 |
|
35 /* Embedding apps may change this pointer to point to their favorite |
|
36 collection of frozen modules: */ |
|
37 |
|
38 struct _frozen *PyImport_FrozenModules = _PyImport_FrozenModules; |