From d7b27700af421b809539896ac13eb908406426dc Mon Sep 17 00:00:00 2001 From: Michal Suchanek Date: Fri, 18 Oct 2024 15:02:08 +0200 Subject: [PATCH] setup.py: Do not fail when argparse-manpage is not available Building the man page is not strictly necesary for using the tool. Add back the detection of presence argparse-manpage that makes it possible to build on older distributions that don't carry the module. --- setup.py | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/setup.py b/setup.py index 64d6476..d9d7a12 100755 --- a/setup.py +++ b/setup.py @@ -6,7 +6,10 @@ import sys import sysconfig from argcomplete import shell_integration -from build_manpages import build_manpages, get_build_py_cmd, get_install_cmd +try: + from build_manpages import build_manpages, get_build_py_cmd, get_install_cmd +except ModuleNotFoundError: + build_manpages = None from setuptools import setup from setuptools.command.build_py import build_py from setuptools.command.egg_info import egg_info @@ -106,8 +109,18 @@ def run(self): data_files = [ ("/etc", ["cfg/virtme-ng.conf"]), ("/usr/share/bash-completion/completions", ["virtme-ng-prompt", "vng-prompt"]), - ("/usr/share/man/man1", ["man/vng.1"]), ] +if build_manpages: + data_files.append(("/usr/share/man/man1", ["man/vng.1"])) + +cmdclass = { + "egg_info": EggInfo, + "build_py": BuildPy, + } +if build_manpages: + cmdclass["build_manpages"] = build_manpages + cmdclass["build_py"] = get_build_py_cmd(BuildPy) + cmdclass["install"] = get_install_cmd() setup( name="virtme-ng", @@ -138,12 +151,7 @@ def run(self): "virtme-mkinitramfs = virtme.commands.mkinitramfs:main", ] }, - cmdclass={ - "build_manpages": build_manpages, - "build_py": get_build_py_cmd(BuildPy), - "install": get_install_cmd(), - "egg_info": EggInfo, - }, + cmdclass=cmdclass, packages=packages, package_data={"virtme.guest": package_files}, data_files=data_files,