diff --git a/Makefile.pre.in b/Makefile.pre.in index 4dcadb76afc..0a3df8d9352 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