diff options
author | Nirbheek Chauhan <nirbheek@centricular.com> | 2018-08-11 04:50:55 +0530 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek@centricular.com> | 2018-08-11 04:50:55 +0530 |
commit | 86298f2109d215ad6b26d3462af7b685d52d0dd7 (patch) | |
tree | b4f05a99c5c788caf428cc938d14e26b2b5dcc2e /setup.py | |
parent | 2ee28029f945d74d01e63d6efd8802c9df03b28f (diff) | |
download | meson-86298f2109d215ad6b26d3462af7b685d52d0dd7.zip meson-86298f2109d215ad6b26d3462af7b685d52d0dd7.tar.gz meson-86298f2109d215ad6b26d3462af7b685d52d0dd7.tar.bz2 |
setup: Require setuptools and entry_points:
This gives us a consistent experience and a simpler setup across all
operating systems. Setuptools is available everywhere these days.
Diffstat (limited to 'setup.py')
-rw-r--r-- | setup.py | 44 |
1 files changed, 4 insertions, 40 deletions
@@ -14,7 +14,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -import os import sys from mesonbuild.coredata import version @@ -24,44 +23,11 @@ if sys.version_info < (3, 5, 0): 'Meson requires Python 3.5.0 or greater') sys.exit(1) -# We need to support Python installations that have nothing but the basic -# Python installation. Use setuptools when possible and fall back to -# 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 setuptools import setup -class install_scripts(orig): - def run(self): - if sys.platform == 'win32': - super().run() - return - - if not self.skip_build: - self.run_command('build_scripts') - self.outfiles = [] - if not self.dry_run: - self.mkpath(self.install_dir) - - # We want the files to be installed without a suffix on Unix - for infile in self.get_inputs(): - infile = os.path.basename(infile) - in_built = os.path.join(self.build_dir, infile) - in_stripped = infile[:-3] if infile.endswith('.py') else infile - outfile = os.path.join(self.install_dir, in_stripped) - # NOTE: Mode is preserved by default - self.copy_file(in_built, outfile) - self.outfiles.append(outfile) - -entries = {} -if sys.platform == 'win32': - # This will create Scripts/meson.exe and Scripts/meson-script.py - # Can't use this on all platforms because distutils doesn't support - # entry_points in setup() - entries = {'console_scripts': ['meson=mesonbuild.mesonmain:main']} +# On windows, will create Scripts/meson.exe and Scripts/meson-script.py +# Other platforms will create bin/meson +entries = {'console_scripts': ['meson=mesonbuild.mesonmain:main']} setup(name='meson', version=version, @@ -78,8 +44,6 @@ setup(name='meson', 'mesonbuild.modules', 'mesonbuild.scripts', 'mesonbuild.wrap'], - scripts=['meson.py'], - cmdclass={'install_scripts': install_scripts}, entry_points=entries, data_files=[('share/man/man1', ['man/meson.1']), ('share/polkit-1/actions', ['data/com.mesonbuild.install.policy'])], |