summaryrefslogtreecommitdiffstats
path: root/Makefile.pre.in
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@haypocalc.com>2011-12-15 20:48:39 (GMT)
committerVictor Stinner <victor.stinner@haypocalc.com>2011-12-15 20:48:39 (GMT)
commite0a669e50cd38c34d440ed79d2362c1938a122c4 (patch)
treed43c039730171662577d56bb6b18abe9a0f4d330 /Makefile.pre.in
parent57c9c7b755671b7d212ead8988c34d9cf0b11fb3 (diff)
downloadcpython-e0a669e50cd38c34d440ed79d2362c1938a122c4.zip
cpython-e0a669e50cd38c34d440ed79d2362c1938a122c4.tar.gz
cpython-e0a669e50cd38c34d440ed79d2362c1938a122c4.tar.bz2
Close #13596: Only recompile Lib/_sysconfigdata.py when needed
Diffstat (limited to 'Makefile.pre.in')
-rw-r--r--Makefile.pre.in13
1 files changed, 7 insertions, 6 deletions
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 4dcadb7..0a3df8d 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -379,6 +379,7 @@ OBJECT_OBJS= \
Objects/unicodectype.o \
Objects/weakrefobject.o
+SYSCONFIGDATA=$(srcdir)/Lib/_sysconfigdata.py
##########################################################################
# objects that get linked into the Python library
@@ -396,7 +397,7 @@ LIBRARY_OBJS= \
# Default target
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.
profile-opt:
@@ -429,15 +430,15 @@ coverage:
$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
$(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
# Generate the sysconfig build-time data
-sysconfig: $(BUILDPYTHON)
+$(SYSCONFIGDATA): $(BUILDPYTHON)
$(RUNSHARED) ./$(BUILDPYTHON) -SE -m sysconfig --generate-posix-vars
# Build the shared modules
-sharedmods: $(BUILDPYTHON) sysconfig
+sharedmods: $(BUILDPYTHON) $(SYSCONFIGDATA)
@case $$MAKEFLAGS in \
*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;; \
@@ -1315,7 +1316,7 @@ clean: pycremoval
find build -name 'fficonfig.h' -exec rm -f {} ';' || true
find build -name 'fficonfig.py' -exec rm -f {} ';' || true
-rm -f Lib/lib2to3/*Grammar*.pickle
- -rm -f Lib/_sysconfigdata.py
+ -rm -f $(SYSCONFIGDATA)
-rm -f Modules/_testembed
profile-removal:
@@ -1393,7 +1394,7 @@ patchcheck:
Python/thread.o: @THREADHEADERS@
# 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: maninstall libinstall inclinstall libainstall sharedinstall
.PHONY: frameworkinstall frameworkinstallframework frameworkinstallstructure