mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 07:31:38 +00:00 
			
		
		
		
	This gains 10% or more in startup time for `python -c pass` on UNIX-ish systems. The Makefile.pre.in generating code builds on Eric's work for bpo-45020, but the .c file generator is new. Windows version TBD.
		
			
				
	
	
		
			45 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
 | 
						|
/* Frozen modules bootstrap */
 | 
						|
 | 
						|
/* This file is linked with "bootstrap Python"
 | 
						|
   which is used (only) to run Tools/scripts/deepfreeze.py. */
 | 
						|
 | 
						|
#include "Python.h"
 | 
						|
#include "pycore_import.h"
 | 
						|
 | 
						|
/* Includes for frozen modules: */
 | 
						|
#include "frozen_modules/importlib._bootstrap.h"
 | 
						|
#include "frozen_modules/importlib._bootstrap_external.h"
 | 
						|
#include "frozen_modules/zipimport.h"
 | 
						|
/* End includes */
 | 
						|
 | 
						|
/* Note that a negative size indicates a package. */
 | 
						|
 | 
						|
static const struct _frozen bootstrap_modules[] = {
 | 
						|
    {"_frozen_importlib", _Py_M__importlib__bootstrap, (int)sizeof(_Py_M__importlib__bootstrap)},
 | 
						|
    {"_frozen_importlib_external", _Py_M__importlib__bootstrap_external, (int)sizeof(_Py_M__importlib__bootstrap_external)},
 | 
						|
    {"zipimport", _Py_M__zipimport, (int)sizeof(_Py_M__zipimport)},
 | 
						|
    {0, 0, 0} /* bootstrap sentinel */
 | 
						|
};
 | 
						|
static const struct _frozen stdlib_modules[] = {
 | 
						|
    {0, 0, 0} /* stdlib sentinel */
 | 
						|
};
 | 
						|
static const struct _frozen test_modules[] = {
 | 
						|
    {0, 0, 0} /* test sentinel */
 | 
						|
};
 | 
						|
const struct _frozen *_PyImport_FrozenBootstrap = bootstrap_modules;
 | 
						|
const struct _frozen *_PyImport_FrozenStdlib = stdlib_modules;
 | 
						|
const struct _frozen *_PyImport_FrozenTest = test_modules;
 | 
						|
 | 
						|
static const struct _module_alias aliases[] = {
 | 
						|
    {"_frozen_importlib", "importlib._bootstrap"},
 | 
						|
    {"_frozen_importlib_external", "importlib._bootstrap_external"},
 | 
						|
    {0, 0} /* aliases sentinel */
 | 
						|
};
 | 
						|
const struct _module_alias *_PyImport_FrozenAliases = aliases;
 | 
						|
 | 
						|
 | 
						|
/* Embedding apps may change this pointer to point to their favorite
 | 
						|
   collection of frozen modules: */
 | 
						|
 | 
						|
const struct _frozen *PyImport_FrozenModules = NULL;
 |