5118174e3d
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
69 lines
2.2 KiB
Diff
69 lines
2.2 KiB
Diff
From 9c39bec3c0c3ff08674a4924901c1ce8b566866a Mon Sep 17 00:00:00 2001
|
|
From: Patrick Griffis <tingping@tingping.se>
|
|
Date: Fri, 30 Sep 2016 23:28:40 -0400
|
|
Subject: [PATCH 08/10] setup.py: On Unix install scripts without .py suffix
|
|
|
|
(cherry picked from commit 999669e8501501d4618588008e4bf4353a1ace2a)
|
|
---
|
|
setup.py | 27 +++++++++++++++++++++++++++
|
|
1 file changed, 27 insertions(+)
|
|
|
|
diff --git a/setup.py b/setup.py
|
|
index d5b79ae..42f8d49 100644
|
|
--- a/setup.py
|
|
+++ b/setup.py
|
|
@@ -14,7 +14,9 @@
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
+import os
|
|
import sys
|
|
+from os import path
|
|
|
|
if sys.version_info[0] < 3:
|
|
print('Tried to install with Python 2, Meson only supports Python 3.')
|
|
@@ -25,8 +27,32 @@ if sys.version_info[0] < 3:
|
|
# plain distutils when setuptools is not available.
|
|
try:
|
|
from setuptools import setup
|
|
+ from setuptools.command.install_scripts import install_scripts as orig
|
|
except ImportError:
|
|
from distutils.core import setup
|
|
+ from distutils.command.install_scripts import install_scripts as orig
|
|
+
|
|
+from distutils.file_util import copy_file
|
|
+from distutils.dir_util import mkpath
|
|
+from stat import ST_MODE
|
|
+
|
|
+class install_scripts(orig):
|
|
+ def run(self):
|
|
+ if sys.platform == 'win32':
|
|
+ super().run()
|
|
+ return
|
|
+
|
|
+ self.outfiles = []
|
|
+ if not self.dry_run:
|
|
+ mkpath(self.install_dir)
|
|
+
|
|
+ # We want the files to be installed without a suffix on Unix
|
|
+ for infile in self.get_inputs():
|
|
+ in_stripped = infile[:-3] if infile.endswith('.py') else infile
|
|
+ outfile = path.join(self.install_dir, in_stripped)
|
|
+ # NOTE: Mode is preserved by default
|
|
+ copy_file(infile, outfile, dry_run=self.dry_run)
|
|
+ self.outfiles.append(outfile)
|
|
|
|
from mesonbuild.coredata import version
|
|
|
|
@@ -46,6 +72,7 @@ setup(name='meson',
|
|
'mesonconf.py',
|
|
'mesonintrospect.py',
|
|
'wraptool.py'],
|
|
+ cmdclass={'install_scripts': install_scripts},
|
|
data_files=[('share/man/man1', ['man/meson.1',
|
|
'man/mesonconf.1',
|
|
'man/mesonintrospect.1',
|
|
--
|
|
2.10.1
|
|
|