john@keeping.me.uk wrote on Sat, 12 Jan 2013 19:23 +0000:
When different version of python are used to build via distutils, the
behaviour can change. Detect changes in version and pass --force in
this case.
[..]
quoted hunk ↗ jump to hunk
diff --git a/git_remote_helpers/Makefile b/git_remote_helpers/Makefile
[..]
+py_version=$(shell $(PYTHON_PATH) -c \
+ 'import sys; print("%i.%i" % sys.version_info[:2])')
+
all: $(pysetupfile)
- $(QUIET)$(PYTHON_PATH) $(pysetupfile) $(QUIETSETUP) build
+ $(QUIET)test "$$(cat GIT-PYTHON_VERSION 2>/dev/null)" = "$(py_version)" || \
+ flags=--force; \
+ $(PYTHON_PATH) $(pysetupfile) $(QUIETSETUP) build $$flags
+ $(QUIET)echo "$(py_version)" >GIT-PYTHON_VERSION
Can you depend on ../GIT-PYTHON-VARS instead? It comes from
96a4647 (Makefile: detect when PYTHON_PATH changes, 2012-12-18).
It doesn't check version, just path, but hopefully that's good
enough. I'm imagining a rule that would do "clean" if
../GIT-PYTHON-VARS changed, then build without --force.
-- Pete