Issue #18093: Factor out the programs that embed the runtime
This commit is contained in:
parent
d6766ae434
commit
973fe0ba7a
|
@ -27,8 +27,8 @@ Modules/Setup.config
|
||||||
Modules/Setup.local
|
Modules/Setup.local
|
||||||
Modules/config.c
|
Modules/config.c
|
||||||
Modules/ld_so_aix
|
Modules/ld_so_aix
|
||||||
Modules/_freeze_importlib
|
Programs/_freeze_importlib
|
||||||
Modules/_testembed
|
Programs/_testembed
|
||||||
PCbuild/*.bsc
|
PCbuild/*.bsc
|
||||||
PCbuild/*.dll
|
PCbuild/*.dll
|
||||||
PCbuild/*.exe
|
PCbuild/*.exe
|
||||||
|
|
|
@ -89,8 +89,8 @@ Tools/unicode/build/
|
||||||
Tools/unicode/MAPPINGS/
|
Tools/unicode/MAPPINGS/
|
||||||
BuildLog.htm
|
BuildLog.htm
|
||||||
__pycache__
|
__pycache__
|
||||||
Modules/_freeze_importlib
|
Programs/_freeze_importlib
|
||||||
Modules/_testembed
|
Programs/_testembed
|
||||||
.coverage
|
.coverage
|
||||||
coverage/
|
coverage/
|
||||||
htmlcov/
|
htmlcov/
|
||||||
|
|
2
.hgtouch
2
.hgtouch
|
@ -2,7 +2,7 @@
|
||||||
# Define dependencies of generated files that are checked into hg.
|
# Define dependencies of generated files that are checked into hg.
|
||||||
# The syntax of this file uses make rule dependencies, without actions
|
# The syntax of this file uses make rule dependencies, without actions
|
||||||
|
|
||||||
Python/importlib.h: Lib/importlib/_bootstrap.py Modules/_freeze_importlib.c
|
Python/importlib.h: Lib/importlib/_bootstrap.py Programs/_freeze_importlib.c
|
||||||
|
|
||||||
Include/opcode.h: Lib/opcode.py Tools/scripts/generate_opcode_h.py
|
Include/opcode.h: Lib/opcode.py Tools/scripts/generate_opcode_h.py
|
||||||
|
|
||||||
|
|
|
@ -466,7 +466,7 @@ LIBRARY_OBJS= \
|
||||||
|
|
||||||
# Default target
|
# Default target
|
||||||
all: build_all
|
all: build_all
|
||||||
build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks Modules/_testembed python-config
|
build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks Programs/_testembed python-config
|
||||||
|
|
||||||
# Compile a binary with gcc profile guided optimization.
|
# Compile a binary with gcc profile guided optimization.
|
||||||
profile-opt:
|
profile-opt:
|
||||||
|
@ -539,8 +539,8 @@ clinic: $(BUILDPYTHON)
|
||||||
$(RUNSHARED) $(PYTHON_FOR_BUILD) ./Tools/clinic/clinic.py --make
|
$(RUNSHARED) $(PYTHON_FOR_BUILD) ./Tools/clinic/clinic.py --make
|
||||||
|
|
||||||
# Build the interpreter
|
# Build the interpreter
|
||||||
$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
|
$(BUILDPYTHON): Programs/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
|
||||||
$(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
|
$(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
|
||||||
|
|
||||||
platform: $(BUILDPYTHON) pybuilddir.txt
|
platform: $(BUILDPYTHON) pybuilddir.txt
|
||||||
$(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print(get_platform()+"-"+sys.version[0:3])' >platform
|
$(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print(get_platform()+"-"+sys.version[0:3])' >platform
|
||||||
|
@ -665,18 +665,18 @@ Modules/Setup: $(srcdir)/Modules/Setup.dist
|
||||||
echo "-----------------------------------------------"; \
|
echo "-----------------------------------------------"; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
Modules/_testembed: Modules/_testembed.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
|
Programs/_testembed: Programs/_testembed.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
|
||||||
$(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/_testembed.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
|
$(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/_testembed.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
|
||||||
|
|
||||||
############################################################################
|
############################################################################
|
||||||
# Importlib
|
# Importlib
|
||||||
|
|
||||||
Modules/_freeze_importlib: Modules/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN)
|
Programs/_freeze_importlib: Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN)
|
||||||
$(LINKCC) $(PY_LDFLAGS) -o $@ Modules/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
|
$(LINKCC) $(PY_LDFLAGS) -o $@ Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
|
||||||
|
|
||||||
Python/importlib.h: $(srcdir)/Lib/importlib/_bootstrap.py Modules/_freeze_importlib.c
|
Python/importlib.h: $(srcdir)/Lib/importlib/_bootstrap.py Programs/_freeze_importlib.c
|
||||||
$(MAKE) Modules/_freeze_importlib
|
$(MAKE) Programs/_freeze_importlib
|
||||||
./Modules/_freeze_importlib \
|
./Programs/_freeze_importlib \
|
||||||
$(srcdir)/Lib/importlib/_bootstrap.py Python/importlib.h
|
$(srcdir)/Lib/importlib/_bootstrap.py Python/importlib.h
|
||||||
|
|
||||||
|
|
||||||
|
@ -704,11 +704,11 @@ Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile
|
||||||
-DVPATH='"$(VPATH)"' \
|
-DVPATH='"$(VPATH)"' \
|
||||||
-o $@ $(srcdir)/Modules/getpath.c
|
-o $@ $(srcdir)/Modules/getpath.c
|
||||||
|
|
||||||
Modules/python.o: $(srcdir)/Modules/python.c
|
Programs/python.o: $(srcdir)/Programs/python.c
|
||||||
$(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Modules/python.c
|
$(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Programs/python.c
|
||||||
|
|
||||||
Modules/_testembed.o: $(srcdir)/Modules/_testembed.c
|
Programs/_testembed.o: $(srcdir)/Programs/_testembed.c
|
||||||
$(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Modules/_testembed.c
|
$(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Programs/_testembed.c
|
||||||
|
|
||||||
Modules/_sre.o: $(srcdir)/Modules/_sre.c $(srcdir)/Modules/sre.h $(srcdir)/Modules/sre_constants.h $(srcdir)/Modules/sre_lib.h
|
Modules/_sre.o: $(srcdir)/Modules/_sre.c $(srcdir)/Modules/sre.h $(srcdir)/Modules/sre_constants.h $(srcdir)/Modules/sre_lib.h
|
||||||
|
|
||||||
|
@ -922,7 +922,7 @@ PYTHON_HEADERS= \
|
||||||
$(PARSER_HEADERS) \
|
$(PARSER_HEADERS) \
|
||||||
$(AST_H)
|
$(AST_H)
|
||||||
|
|
||||||
$(LIBRARY_OBJS) $(MODOBJS) Modules/python.o: $(PYTHON_HEADERS)
|
$(LIBRARY_OBJS) $(MODOBJS) Programs/python.o: $(PYTHON_HEADERS)
|
||||||
|
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
|
@ -1332,7 +1332,7 @@ libainstall: all python-config
|
||||||
fi; \
|
fi; \
|
||||||
fi
|
fi
|
||||||
$(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c
|
$(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c
|
||||||
$(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o
|
$(INSTALL_DATA) Programs/python.o $(DESTDIR)$(LIBPL)/python.o
|
||||||
$(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in
|
$(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in
|
||||||
$(INSTALL_DATA) Makefile $(DESTDIR)$(LIBPL)/Makefile
|
$(INSTALL_DATA) Makefile $(DESTDIR)$(LIBPL)/Makefile
|
||||||
$(INSTALL_DATA) Modules/Setup $(DESTDIR)$(LIBPL)/Setup
|
$(INSTALL_DATA) Modules/Setup $(DESTDIR)$(LIBPL)/Setup
|
||||||
|
@ -1343,10 +1343,10 @@ libainstall: all python-config
|
||||||
$(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh
|
$(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh
|
||||||
$(INSTALL_SCRIPT) python-config.py $(DESTDIR)$(LIBPL)/python-config.py
|
$(INSTALL_SCRIPT) python-config.py $(DESTDIR)$(LIBPL)/python-config.py
|
||||||
$(INSTALL_SCRIPT) python-config $(DESTDIR)$(BINDIR)/python$(LDVERSION)-config
|
$(INSTALL_SCRIPT) python-config $(DESTDIR)$(BINDIR)/python$(LDVERSION)-config
|
||||||
@if [ -s Modules/python.exp -a \
|
@if [ -s Programs/python.exp -a \
|
||||||
"`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" = "aix" ]; then \
|
"`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" = "aix" ]; then \
|
||||||
echo; echo "Installing support files for building shared extension modules on AIX:"; \
|
echo; echo "Installing support files for building shared extension modules on AIX:"; \
|
||||||
$(INSTALL_DATA) Modules/python.exp \
|
$(INSTALL_DATA) Programs/python.exp \
|
||||||
$(DESTDIR)$(LIBPL)/python.exp; \
|
$(DESTDIR)$(LIBPL)/python.exp; \
|
||||||
echo; echo "$(LIBPL)/python.exp"; \
|
echo; echo "$(LIBPL)/python.exp"; \
|
||||||
$(INSTALL_SCRIPT) $(srcdir)/Modules/makexp_aix \
|
$(INSTALL_SCRIPT) $(srcdir)/Modules/makexp_aix \
|
||||||
|
@ -1526,7 +1526,7 @@ clean: pycremoval
|
||||||
find build -name '*.py[co]' -exec rm -f {} ';' || true
|
find build -name '*.py[co]' -exec rm -f {} ';' || true
|
||||||
-rm -f pybuilddir.txt
|
-rm -f pybuilddir.txt
|
||||||
-rm -f Lib/lib2to3/*Grammar*.pickle
|
-rm -f Lib/lib2to3/*Grammar*.pickle
|
||||||
-rm -f Modules/_testembed Modules/_freeze_importlib
|
-rm -f Programs/_testembed Programs/_freeze_importlib
|
||||||
|
|
||||||
profile-removal:
|
profile-removal:
|
||||||
find . -name '*.gc??' -exec rm -f {} ';'
|
find . -name '*.gc??' -exec rm -f {} ';'
|
||||||
|
@ -1550,7 +1550,7 @@ distclean: clobber
|
||||||
done
|
done
|
||||||
-rm -f core Makefile Makefile.pre config.status \
|
-rm -f core Makefile Makefile.pre config.status \
|
||||||
Modules/Setup Modules/Setup.local Modules/Setup.config \
|
Modules/Setup Modules/Setup.local Modules/Setup.config \
|
||||||
Modules/ld_so_aix Modules/python.exp Misc/python.pc
|
Modules/ld_so_aix Programs/python.exp Misc/python.pc
|
||||||
-rm -f python*-gdb.py
|
-rm -f python*-gdb.py
|
||||||
find $(srcdir)/[a-zA-Z]* '(' -name '*.fdc' -o -name '*~' \
|
find $(srcdir)/[a-zA-Z]* '(' -name '*.fdc' -o -name '*~' \
|
||||||
-o -name '[@,#]*' -o -name '*.old' \
|
-o -name '[@,#]*' -o -name '*.old' \
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
Source files for standard library extension modules,
|
||||||
|
and former extension modules that are now builtin modules.
|
|
@ -0,0 +1 @@
|
||||||
|
Source files for various builtin objects
|
|
@ -167,7 +167,7 @@
|
||||||
</PostBuildEvent>
|
</PostBuildEvent>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\Modules\_freeze_importlib.c" />
|
<ClCompile Include="..\Programs\_freeze_importlib.c" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="pythoncore.vcxproj">
|
<ProjectReference Include="pythoncore.vcxproj">
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
</Filter>
|
</Filter>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\Modules\_freeze_importlib.c">
|
<ClCompile Include="..\Programs\_freeze_importlib.c">
|
||||||
<Filter>Source Files</Filter>
|
<Filter>Source Files</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
|
@ -510,7 +510,7 @@ echo @"$(OutDir)python$(PyDebugExt).exe" %%*>> "$(SolutionDir)..\python.ba
|
||||||
<ResourceCompile Include="..\PC\python_exe.rc" />
|
<ResourceCompile Include="..\PC\python_exe.rc" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\Modules\python.c" />
|
<ClCompile Include="..\Programs\python.c" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="pythoncore.vcxproj">
|
<ProjectReference Include="pythoncore.vcxproj">
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
</ResourceCompile>
|
</ResourceCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\Modules\python.c">
|
<ClCompile Include="..\Programs\python.c">
|
||||||
<Filter>Source Files</Filter>
|
<Filter>Source Files</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Source files for binary executables (as opposed to shared modules)
|
|
@ -0,0 +1 @@
|
||||||
|
Miscellaneous source files for the main Python shared library
|
Loading…
Reference in New Issue