Close #13596: Only recompile Lib/_sysconfigdata.py when needed

This commit is contained in:
Victor Stinner 2011-12-15 21:48:39 +01:00
parent 57c9c7b755
commit e0a669e50c
1 changed files with 7 additions and 6 deletions

View File

@ -379,6 +379,7 @@ OBJECT_OBJS= \
Objects/unicodectype.o \ Objects/unicodectype.o \
Objects/weakrefobject.o Objects/weakrefobject.o
SYSCONFIGDATA=$(srcdir)/Lib/_sysconfigdata.py
########################################################################## ##########################################################################
# objects that get linked into the Python library # objects that get linked into the Python library
@ -396,7 +397,7 @@ LIBRARY_OBJS= \
# Default target # Default target
all: build_all all: build_all
build_all: $(BUILDPYTHON) sysconfig oldsharedmods sharedmods gdbhooks Modules/_testembed build_all: $(BUILDPYTHON) $(SYSCONFIGDATA) oldsharedmods sharedmods gdbhooks Modules/_testembed
# Compile a binary with gcc profile guided optimization. # Compile a binary with gcc profile guided optimization.
profile-opt: profile-opt:
@ -429,15 +430,15 @@ coverage:
$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) $(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
$(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
platform: $(BUILDPYTHON) sysconfig platform: $(BUILDPYTHON) $(SYSCONFIGDATA)
$(RUNSHARED) ./$(BUILDPYTHON) -E -c 'import sys ; from sysconfig import get_platform ; print(get_platform()+"-"+sys.version[0:3])' >platform $(RUNSHARED) ./$(BUILDPYTHON) -E -c 'import sys ; from sysconfig import get_platform ; print(get_platform()+"-"+sys.version[0:3])' >platform
# Generate the sysconfig build-time data # Generate the sysconfig build-time data
sysconfig: $(BUILDPYTHON) $(SYSCONFIGDATA): $(BUILDPYTHON)
$(RUNSHARED) ./$(BUILDPYTHON) -SE -m sysconfig --generate-posix-vars $(RUNSHARED) ./$(BUILDPYTHON) -SE -m sysconfig --generate-posix-vars
# Build the shared modules # Build the shared modules
sharedmods: $(BUILDPYTHON) sysconfig sharedmods: $(BUILDPYTHON) $(SYSCONFIGDATA)
@case $$MAKEFLAGS in \ @case $$MAKEFLAGS in \
*s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \
*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \
@ -1315,7 +1316,7 @@ clean: pycremoval
find build -name 'fficonfig.h' -exec rm -f {} ';' || true find build -name 'fficonfig.h' -exec rm -f {} ';' || true
find build -name 'fficonfig.py' -exec rm -f {} ';' || true find build -name 'fficonfig.py' -exec rm -f {} ';' || true
-rm -f Lib/lib2to3/*Grammar*.pickle -rm -f Lib/lib2to3/*Grammar*.pickle
-rm -f Lib/_sysconfigdata.py -rm -f $(SYSCONFIGDATA)
-rm -f Modules/_testembed -rm -f Modules/_testembed
profile-removal: profile-removal:
@ -1393,7 +1394,7 @@ patchcheck:
Python/thread.o: @THREADHEADERS@ Python/thread.o: @THREADHEADERS@
# Declare targets that aren't real files # Declare targets that aren't real files
.PHONY: all build_all sysconfig sharedmods oldsharedmods test quicktest .PHONY: all build_all sharedmods oldsharedmods test quicktest
.PHONY: install altinstall oldsharedinstall bininstall altbininstall .PHONY: install altinstall oldsharedinstall bininstall altbininstall
.PHONY: maninstall libinstall inclinstall libainstall sharedinstall .PHONY: maninstall libinstall inclinstall libainstall sharedinstall
.PHONY: frameworkinstall frameworkinstallframework frameworkinstallstructure .PHONY: frameworkinstall frameworkinstallframework frameworkinstallstructure