[PATCH v2] osx: explicitly build hg with /usr/bin/python2.7

Augie Fackler raf at durin42.com
Wed Jul 13 16:41:19 UTC 2016


# HG changeset patch
# User Augie Fackler <augie at google.com>
# Date 1468420773 14400
#      Wed Jul 13 10:39:33 2016 -0400
# Node ID 0093ec77d1ec1a34dd34cf2cf47c06e1cbce246a
# Parent  90c0b1d4d7c835c122552a4a52978b5fdd0cf9eb
osx: explicitly build hg with /usr/bin/python2.7

This should help avoid creating a package that depends on a custom
Python, as happened when I built a package for 3.8.

diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -156,7 +156,7 @@ i18n/hg.pot: $(PYFILES) $(DOCFILES) i18n
 # Packaging targets
 
 osx:
-	python setup.py install --optimize=1 \
+	/usr/bin/python2.7 setup.py install --optimize=1 \
 	  --root=build/mercurial/ --prefix=/usr/local/ \
 	  --install-lib=/Library/Python/2.7/site-packages/
 	make -C doc all install DESTDIR="$(PWD)/build/mercurial/"
diff --git a/tests/test-mac-packages.t b/tests/test-mac-packages.t
--- a/tests/test-mac-packages.t
+++ b/tests/test-mac-packages.t
@@ -43,5 +43,11 @@ Spot-check some randomly selected files:
   $ grep '/hg	' boms.txt | cut -d '	' -f 1,2,3
   ./usr/local/bin/hg	100755	0/0
 
+Make sure the built binary uses the system Python interpreter
+  $ tar xf mercurial.pkg/Payload usr/local/bin
+Use a glob to find this to avoid check-code whining about a fixed path.
+  $ head -n 1 usr/local/b?n/hg
+  #!/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
+
 Note that we're not currently installing any /etc/mercurial stuff,
 including merge-tool configurations.


More information about the Mercurial-devel mailing list