Commit bcb0e200 authored by Guido van Rossum's avatar Guido van Rossum

Change the mode of scripts in the build/scripts* directory to

executable.
parent c9713874
...@@ -7,6 +7,7 @@ Implements the Distutils 'build_scripts' command.""" ...@@ -7,6 +7,7 @@ Implements the Distutils 'build_scripts' command."""
__revision__ = "$Id$" __revision__ = "$Id$"
import sys, os, re import sys, os, re
from stat import ST_MODE
from distutils import sysconfig from distutils import sysconfig
from distutils.core import Command from distutils.core import Command
from distutils.dep_util import newer from distutils.dep_util import newer
...@@ -54,10 +55,12 @@ class build_scripts (Command): ...@@ -54,10 +55,12 @@ class build_scripts (Command):
line to refer to the current Python interpreter as we copy. line to refer to the current Python interpreter as we copy.
""" """
self.mkpath(self.build_dir) self.mkpath(self.build_dir)
outfiles = []
for script in self.scripts: for script in self.scripts:
adjust = 0 adjust = 0
script = convert_path(script) script = convert_path(script)
outfile = os.path.join(self.build_dir, os.path.basename(script)) outfile = os.path.join(self.build_dir, os.path.basename(script))
outfiles.append(outfile)
if not self.force and not newer(script, outfile): if not self.force and not newer(script, outfile):
log.debug("not copying %s (up-to-date)", script) log.debug("not copying %s (up-to-date)", script)
...@@ -106,6 +109,15 @@ class build_scripts (Command): ...@@ -106,6 +109,15 @@ class build_scripts (Command):
f.close() f.close()
self.copy_file(script, outfile) self.copy_file(script, outfile)
if os.name == 'posix':
for file in outfiles:
if self.dry_run:
log.info("changing mode of %s", file)
else:
mode = ((os.stat(file)[ST_MODE]) | 0555) & 07777
log.info("changing mode of %s to %o", file, mode)
os.chmod(file, mode)
# copy_scripts () # copy_scripts ()
# class build_scripts # class build_scripts
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment