diff hg @ 12661:10da5a1f25dd

setup/hg: always load Mercurial from where it was installed. This provides two new features: - Mercurial may be installed into a non-standard location without having to set PYTHONPATH. - Multiple installations can use Mercurial from different locations.
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
date Tue, 17 Aug 2010 15:44:38 +0200
parents 25e572394f5c
children cae1c187abd4
line wrap: on
line diff
--- a/hg	Sat Oct 09 11:55:25 2010 -0500
+++ b/hg	Tue Aug 17 15:44:38 2010 +0200
@@ -7,6 +7,17 @@
 # This software may be used and distributed according to the terms of the
 # GNU General Public License version 2 or any later version.
 
+import os
+import sys
+
+libdir = '@LIBDIR@'
+
+if libdir != '@' 'LIBDIR' '@':
+    if not os.path.isabs(libdir):
+        libdir = os.path.join(os.path.dirname(__file__), libdir)
+        libdir = os.path.abspath(libdir)
+    sys.path.insert(0, libdir)
+
 # enable importing on demand to reduce startup time
 try:
     from mercurial import demandimport; demandimport.enable()
@@ -17,7 +28,6 @@
     sys.stderr.write("(check your install and PYTHONPATH)\n")
     sys.exit(-1)
 
-import sys
 import mercurial.util
 import mercurial.dispatch