Fix handling the -C option by recording the absolute path to
authorstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Tue, 5 Jan 2010 21:42:53 +0000 (21:42 +0000)
committerstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Tue, 5 Jan 2010 21:42:53 +0000 (21:42 +0000)
the original script directory.

git-svn-id: http://scons.tigris.org/svn/scons/trunk@4592 fdb21ef1-2011-0410-befe-b5e4ea1792b1

bootstrap.py

index fa732700733aa19ccb535ac1f4b7fed22444eec0..4dad44d5f961faf26216805bdbd1bb5571b63278 100644 (file)
@@ -80,18 +80,14 @@ executing it for the full build of all the packages, as specified in our
 local SConstruct file.
 """
 
-bootstrap_dir = 'bootstrap'
 try:
-    script_dir = os.path.split(__file__)[0]
+    script_dir = os.path.abspath(os.path.dirname(__file__))
 except NameError:
     # Pre-2.3 versions of Python don't have __file__.
-    script_dir = os.path.split(sys.argv[0])[0]
-    if not script_dir:
-        script_dir = os.getcwd()
-    elif not os.path.is_abs(script_dir):
-        script_dir = os.path.join(os.getcwd(), script_dir)
-if script_dir:
-    bootstrap_dir = os.path.join(script_dir, bootstrap_dir)
+    script_dir = os.path.abspath(os.path.dirname(sys.argv[0]))
+
+bootstrap_dir = os.path.join(script_dir, 'bootstrap')
+
 pass_through_args = []
 update_only = None
 
@@ -102,8 +98,7 @@ def must_copy(dst, src):
         return 1
     return open(dst, 'rb').read() != open(src, 'rb').read()
 
-search = [os.path.dirname(sys.argv[0])]
-if search[0] == '': search[0] = '.'
+search = [script_dir]
 
 # Note:  We don't use the getopt module to process the command-line
 # arguments because we'd have to teach it about all of the SCons options.