Blame setup.py.fix-shebangs

Packit 77df79
#!/usr/bin/env python
Packit 77df79
# -*- coding: ISO-8859-1 -*-
Packit 77df79
#
Packit 77df79
# dblatex python setup script - See the COPYRIGHT
Packit 77df79
#
Packit 77df79
from __future__ import print_function
Packit 77df79
Packit 77df79
import os
Packit 77df79
import sys
Packit 77df79
import re
Packit 77df79
import glob
Packit 77df79
import subprocess
Packit 77df79
from io import open
Packit 77df79
Packit 77df79
try:
Packit 77df79
    from setuptools import setup
Packit 77df79
    from setuptools.command.install import install
Packit 77df79
except ImportError:
Packit 77df79
    from distutils.core import setup
Packit 77df79
    from distutils.command.install import install
Packit 77df79
Packit 77df79
from distutils.command.build import build
Packit 77df79
from distutils.command.build_scripts import build_scripts
Packit 77df79
from distutils.command.install_data import install_data
Packit 77df79
from distutils.command.sdist import sdist
Packit 77df79
from distutils import log
Packit 77df79
from subprocess import Popen, PIPE
Packit 77df79
sys.path.append("lib")
Packit 77df79
#from contrib.debian.installer import DebianInstaller
Packit 77df79
Packit 77df79
#
Packit 77df79
# Build the command line script
Packit 77df79
#
Packit 77df79
class BuildScripts(build_scripts):
Packit 77df79
Packit 77df79
    SHELL_SCRIPT = """#!%(env_executable)s%(env_args)s%(py_executable)s
Packit 77df79
import sys
Packit 77df79
import os
Packit 77df79
Packit 77df79
package_base = %(package_base)s
Packit 77df79
Packit 77df79
%(lib_path)s
Packit 77df79
%(catalogs)s
Packit 77df79
%(style_set)s
Packit 77df79
from %(package_path)s import %(package)s
Packit 77df79
%(package)s.main(base=package_base)
Packit 77df79
"""
Packit 77df79
Packit 77df79
    CATALOGS = """cat = os.environ.get("SGML_CATALOG_FILES")
Packit 77df79
if cat:
Packit 77df79
    cat += ":%s"
Packit 77df79
else:
Packit 77df79
    cat = "%s"
Packit 77df79
os.environ["SGML_CATALOG_FILES"] = cat
Packit 77df79
"""
Packit 77df79
Packit 77df79
    def run(self):
Packit 77df79
        """
Packit 77df79
        Create the proper script for the current platform.
Packit 77df79
        """
Packit 77df79
        if not self.scripts:
Packit 77df79
            return
Packit 77df79
Packit 77df79
        # The script can only work with package data
Packit 77df79
        self.data_files = self.distribution.data_files
Packit 77df79
        if not(self.data_files):
Packit 77df79
            return
Packit 77df79
Packit 77df79
        if self.dry_run:
Packit 77df79
            return
Packit 77df79
Packit 77df79
        # Ensure the destination directory exists
Packit 77df79
        self.mkpath(self.build_dir)
Packit 77df79
Packit 77df79
        # Data useful for building the script
Packit 77df79
        install = self.distribution.get_command_obj("install")
Packit 77df79
        if not(install.install_data):
Packit 77df79
            return
Packit 77df79
Packit 77df79
        self._install_lib = os.path.normpath(install.install_lib)
Packit 77df79
        self._root = install.root
Packit 77df79
        if self._root:
Packit 77df79
            self._root = os.path.normpath(self._root)
Packit 77df79
        self._package_base = os.path.join(install.install_data,
Packit 77df79
                                          self.data_files[0][0])
Packit 77df79
        self._catalogs = install.catalogs
Packit 77df79
        self._style = install.style
Packit 77df79
        self._use_py_path = install.use_python_path
Packit 77df79
        print(self._package_base)
Packit 77df79
Packit 77df79
        # Build the command line script
Packit 77df79
        self.build_script()
Packit 77df79
Packit 77df79
    def _strip_root(self, *paths):
Packit 77df79
        if not(self._root):
Packit 77df79
            return paths
Packit 77df79
Packit 77df79
        newpaths = []
Packit 77df79
        for path in paths:
Packit 77df79
            if path.startswith(self._root):
Packit 77df79
                newpaths.append(path[len(self._root):])
Packit 77df79
            else:
Packit 77df79
                newpaths.append(path)
Packit 77df79
        return newpaths
Packit 77df79
Packit 77df79
    def build_script(self):
Packit 77df79
        script_name = self.scripts[0]
Packit 77df79
Packit 77df79
        # prepare args for the bang path at the top of the script
Packit 77df79
        ENV_BIN = '/usr/bin/env'
Packit 77df79
        env_args = ''
Packit 77df79
        if self._use_py_path:
Packit 77df79
            env_exec = ''
Packit 77df79
            py_exec = sys.executable
Packit 77df79
        elif os.name == 'posix':
Packit 77df79
            # Some Solaris platforms may not have an 'env' binary.
Packit 77df79
            # If /usr/bin/env exists, use '#!/usr/bin/env python'
Packit 77df79
            # otherwise, use '#!' + sys.executable
Packit 77df79
            env_exec = os.path.isfile(ENV_BIN) and \
Packit 77df79
                os.access(ENV_BIN, os.X_OK) and ENV_BIN or ''
Packit 77df79
            py_exec = env_exec and 'python' or sys.executable
Packit 77df79
        else:
Packit 77df79
            # shouldn't matter on non-POSIX; we'll just use defaults
Packit 77df79
            env_exec = ENV_BIN
Packit 77df79
            py_exec = 'python'
Packit 77df79
Packit 77df79
        # Retrieve actual installation paths
Packit 77df79
        lib_path, package_base = self._strip_root(self._install_lib,
Packit 77df79
                                                  self._package_base)
Packit 77df79
Packit 77df79
        # Just help for non standard installation paths
Packit 77df79
        if lib_path in sys.path:
Packit 77df79
            lib_path = ""
Packit 77df79
        else:
Packit 77df79
            lib_path = "sys.path.append(r\"%s\")" % lib_path
Packit 77df79
Packit 77df79
        # Things to adapt when building an egg
Packit 77df79
        if "/egg" in lib_path:
Packit 77df79
            lib_path = ""
Packit 77df79
            package_base = 'os.path.abspath(os.path.join(os.path.dirname('\
Packit 77df79
                           '__file__), "..", "..", "share", "dblatex"))'
Packit 77df79
        else:
Packit 77df79
            package_base = 'r"%s"' % (package_base)
Packit 77df79
Packit 77df79
        if self._catalogs:
Packit 77df79
            catalogs = self.CATALOGS % (self._catalogs, self._catalogs)
Packit 77df79
        else:
Packit 77df79
            catalogs = ""
Packit 77df79
Packit 77df79
        if self._style:
Packit 77df79
            style_set = "sys.argv.insert(1, '-T%s')" % self._style
Packit 77df79
        else:
Packit 77df79
            style_set = ""
Packit 77df79
Packit 77df79
        script_args = { 'env_executable': env_exec,
Packit 77df79
                        'env_args': env_exec and (' %s' % env_args) or '',
Packit 77df79
                        'py_executable': py_exec,
Packit 77df79
                        'lib_path': lib_path,
Packit 77df79
                        'style_set': style_set,
Packit 77df79
                        'package': "dblatex",
Packit 77df79
                        'package_path': "dbtexmf.dblatex",
Packit 77df79
                        'catalogs': catalogs,
Packit 77df79
                        'package_base': package_base }
Packit 77df79
Packit 77df79
        script = self.SHELL_SCRIPT % script_args
Packit 77df79
        script_name = os.path.basename(script_name)
Packit 77df79
        outfile = os.path.join(self.build_dir, script_name)
Packit 77df79
        fd = os.open(outfile, os.O_WRONLY|os.O_CREAT|os.O_TRUNC, 0o755)
Packit 77df79
        os.write(fd, script.encode('ascii'))
Packit 77df79
        os.close(fd)
Packit 77df79
Packit 77df79
Packit 77df79
class Build(build):
Packit 77df79
    """
Packit 77df79
    Build the documentation if missing or required to rebuild
Packit 77df79
    """
Packit 77df79
    user_options = build.user_options + \
Packit 77df79
                 [('docbook-xsl=', None,
Packit 77df79
                   'DocBook Project Stylesheet base directory (build_doc)')]
Packit 77df79
Packit 77df79
    def initialize_options(self):
Packit 77df79
        build.initialize_options(self)
Packit 77df79
        self.docbook_xsl = None
Packit 77df79
Packit 77df79
    def run(self):
Packit 77df79
        # Do the default tasks
Packit 77df79
        build.run(self)
Packit 77df79
        # And build the doc
Packit 77df79
        self.build_doc()
Packit 77df79
Packit 77df79
    def build_doc(self):
Packit 77df79
        log.info("running build_doc")
Packit 77df79
        htmldir = os.path.join("docs", "xhtml")
Packit 77df79
        pdfdocs = glob.glob(os.path.join("docs", "[mr]*.pdf"))
Packit 77df79
        manpage = os.path.join("docs", "manpage", "dblatex.1.gz")
Packit 77df79
Packit 77df79
        # Lazy check to avoid a rebuild for nothing
Packit 77df79
        if (not(self.force) and os.path.exists(htmldir) and len(pdfdocs) >= 2
Packit 77df79
            and os.path.exists(manpage)):
Packit 77df79
            return
Packit 77df79
Packit 77df79
        # Assumes that make is the GNU make
Packit 77df79
        cmd = ["make", "-C", "docs", "VERSION=%s" % (get_version())]
Packit 77df79
        if self.docbook_xsl:
Packit 77df79
            cmd.append("XSLDBK=%s" % os.path.abspath(self.docbook_xsl))
Packit 77df79
Packit 77df79
        subprocess.call(cmd)
Packit 77df79
Packit 77df79
Packit 77df79
def find_programs(utils):
Packit 77df79
    import shutil
Packit 77df79
    util_paths = {}
Packit 77df79
    missed = []
Packit 77df79
    for util in utils:
Packit 77df79
        path = shutil.which(util)
Packit 77df79
        if path:
Packit 77df79
            util_paths[util] = path
Packit 77df79
        else:
Packit 77df79
            missed.append(util)
Packit 77df79
    return (util_paths, missed)
Packit 77df79
Packit 77df79
def kpsewhich(tex_file):
Packit 77df79
    if os.name == "nt":
Packit 77df79
        close_fds = False
Packit 77df79
    else:
Packit 77df79
        close_fds = True
Packit 77df79
    p = Popen("kpsewhich %s" % tex_file, shell=True,
Packit 77df79
              stdin=PIPE, stdout=PIPE, close_fds=close_fds)
Packit 77df79
    data = p.communicate()[0]
Packit 77df79
    if isinstance(data, bytes):
Packit 77df79
        data = data.decode(sys.getdefaultencoding())
Packit 77df79
    return data.strip()
Packit 77df79
Packit 77df79
Packit 77df79
class Sdist(sdist):
Packit 77df79
    """
Packit 77df79
    Make the source package, and remove the .pyc files
Packit 77df79
    """
Packit 77df79
    def prune_file_list(self):
Packit 77df79
        sdist.prune_file_list(self)
Packit 77df79
        self.filelist.exclude_pattern(r'.*.pyc', is_regex=1)
Packit 77df79
Packit 77df79
Packit 77df79
class Install(install):
Packit 77df79
Packit 77df79
    user_options = install.user_options + \
Packit 77df79
                   [('catalogs=', None, 'default SGML catalogs'),
Packit 77df79
                    ('nodeps', None, 'don\'t check the dependencies'),
Packit 77df79
                    ('style=', None, 'default style to use'),
Packit 77df79
                    ('use-python-path', None, 'don\'t use env to locate python')]
Packit 77df79
Packit 77df79
    def initialize_options(self):
Packit 77df79
        install.initialize_options(self)
Packit 77df79
        self.catalogs = None
Packit 77df79
        self.nodeps = None
Packit 77df79
        self.style = None
Packit 77df79
        self.use_python_path = None
Packit 77df79
        # Prevents from undefined 'install_layout' attribute
Packit 77df79
        if not(getattr(self, "install_layout", None)):
Packit 77df79
            self.install_layout = None
Packit 77df79
Packit 77df79
    def check_util_dependencies(self):
Packit 77df79
        # First, check non critical graphic tools
Packit 77df79
        found, missed = find_programs(("epstopdf", "convert", "fig2dev"))
Packit 77df79
        for util in found:
Packit 77df79
            print("+checking %s... yes" % util)
Packit 77df79
        for util in missed:
Packit 77df79
            print("+checking %s... no" % util)
Packit 77df79
        if missed:
Packit 77df79
            print(("warning: not found: %s" % ", ".join(missed)))
Packit 77df79
Packit 77df79
        # Now, be serious
Packit 77df79
        found, missed = find_programs(("latex", "makeindex",
Packit 77df79
                                       "pdflatex", "kpsewhich"))
Packit 77df79
        for util in found:
Packit 77df79
            print("+checking %s... yes" % util)
Packit 77df79
        for util in missed:
Packit 77df79
            print("+checking %s... no" % util)
Packit 77df79
        if missed:
Packit 77df79
            raise OSError("not found: %s" % ", ".join(missed))
Packit 77df79
Packit 77df79
    def check_xslt_dependencies(self):
Packit 77df79
        sys.path.insert(0, "lib")
Packit 77df79
        from dbtexmf.xslt import xslt
Packit 77df79
        sys.path.remove("lib")
Packit 77df79
Packit 77df79
        # At least one XSLT must be available
Packit 77df79
        deplists = xslt.get_deplists()
Packit 77df79
        if not(deplists):
Packit 77df79
            raise OSError("no XSLT available")
Packit 77df79
Packit 77df79
        # For each XSLT check the programs they depend on
Packit 77df79
        xslt_found = []
Packit 77df79
        xslt_missed = []
Packit 77df79
        for (mod, deplist) in deplists:
Packit 77df79
            if not(deplist):
Packit 77df79
                xslt_found.append(mod)
Packit 77df79
                print("+checking XSLT %s... yes" % mod)
Packit 77df79
                continue
Packit 77df79
            found, missed = find_programs(deplist)
Packit 77df79
            if missed:
Packit 77df79
                xslt_missed.append(mod)
Packit 77df79
                print("+checking XSLT %s... no (missing %s)" % \
Packit 77df79
                      (mod, ", ".join(missed)))
Packit 77df79
            else:
Packit 77df79
                xslt_found.append(mod)
Packit 77df79
                print("+checking XSLT %s... yes" % mod)
Packit 77df79
Packit 77df79
        if not(xslt_found):
Packit 77df79
            raise OSError("XSLT not installed: %s" % ", ".join(xslt_missed))
Packit 77df79
        elif xslt_missed:
Packit 77df79
            print("warning: XSLT not found: %s" % ", ".join(xslt_missed))
Packit 77df79
Packit 77df79
    def check_latex_dependencies(self):
Packit 77df79
        # Find the Latex files from the package
Packit 77df79
        stys = []
Packit 77df79
        for root, dirs, files in os.walk('latex/'):
Packit 77df79
            stys += glob.glob(os.path.join(root, "*.sty"))
Packit 77df79
        if stys:
Packit 77df79
            own_stys = [os.path.basename(s)[:-4] for s in stys]
Packit 77df79
        else:
Packit 77df79
            own_stys = []
Packit 77df79
Packit 77df79
        # Find the used packages
Packit 77df79
        used_stys = []
Packit 77df79
        re_sty = re.compile(r"\\usepackage\s*\[?.*\]?{(\w+)}")
Packit 77df79
        for sty in stys:
Packit 77df79
            f = open(sty, "rt", encoding="latin-1")
Packit 77df79
            for line in f:
Packit 77df79
                line = line.split("%")[0]
Packit 77df79
                m = re_sty.search(line)
Packit 77df79
                if m:
Packit 77df79
                    p = m.group(1)
Packit 77df79
                    try:
Packit 77df79
                        used_stys.index(p)
Packit 77df79
                    except:
Packit 77df79
                        used_stys.append(p)
Packit 77df79
            f.close()
Packit 77df79
Packit 77df79
        # Now look if they are found
Packit 77df79
        found_stys = []
Packit 77df79
        mis_stys = []
Packit 77df79
        used_stys.sort()
Packit 77df79
Packit 77df79
        # Dirty...
Packit 77df79
        for f in ("truncate", "elfonts", "CJKutf8", "pinyin", "ifxetex"):
Packit 77df79
            try:
Packit 77df79
                used_stys.remove(f)
Packit 77df79
            except:
Packit 77df79
                pass
Packit 77df79
Packit 77df79
        for sty in used_stys:
Packit 77df79
            if sty in found_stys:
Packit 77df79
                continue
Packit 77df79
            status = "+checking %s... " % sty
Packit 77df79
            if sty in own_stys:
Packit 77df79
                status += "found in package"
Packit 77df79
                found_stys.append(sty)
Packit 77df79
                print(status)
Packit 77df79
                continue
Packit 77df79
            stypath = kpsewhich("%s.sty" % sty)
Packit 77df79
            if stypath:
Packit 77df79
                status += "yes"
Packit 77df79
                found_stys.append(sty)
Packit 77df79
            else:
Packit 77df79
                status += "no"
Packit 77df79
                mis_stys.append(sty)
Packit 77df79
            print(status)
Packit 77df79
            
Packit 77df79
        if mis_stys:
Packit 77df79
            raise OSError("not found: %s" % ", ".join(mis_stys))
Packit 77df79
Packit 77df79
    def run(self):
Packit 77df79
#        if self.install_layout == "deb":
Packit 77df79
#            db = DebianInstaller(self)
Packit 77df79
#        else:
Packit 77df79
        db = None
Packit 77df79
Packit 77df79
        if not(db) and not(self.nodeps):
Packit 77df79
            try:
Packit 77df79
                self.check_xslt_dependencies()
Packit 77df79
                self.check_util_dependencies()
Packit 77df79
                self.check_latex_dependencies()
Packit 77df79
            except Exception as e:
Packit 77df79
                print("Error: %s" % e, file=sys.stderr)
Packit 77df79
                sys.exit(1)
Packit 77df79
Packit 77df79
        if db: db.adapt_paths()
Packit 77df79
Packit 77df79
        # If no build is required, at least build the script
Packit 77df79
        if self.skip_build:
Packit 77df79
            self.run_command('build_scripts')
Packit 77df79
Packit 77df79
        install.run(self)
Packit 77df79
Packit 77df79
        if db: db.finalize()
Packit 77df79
Packit 77df79
Packit 77df79
class InstallData(install_data):
Packit 77df79
Packit 77df79
    def run(self):
Packit 77df79
        ignore_pattern = os.path.sep + r"(CVS|RCS)" + os.path.sep
Packit 77df79
        # literal backslash must be doubled in regular expressions
Packit 77df79
        ignore_pattern = ignore_pattern.replace('\\', r'\\')
Packit 77df79
Packit 77df79
        # Walk through sub-dirs, specified in data_files and build the
Packit 77df79
        # full data files list accordingly
Packit 77df79
        full_data_files = []
Packit 77df79
        for install_base, paths in self.data_files:
Packit 77df79
            base_files = []
Packit 77df79
            for path in paths:
Packit 77df79
                if os.path.isdir(path):
Packit 77df79
                    pref = os.path.dirname(path)
Packit 77df79
                    for root, dirs, files in os.walk(path):
Packit 77df79
                        if re.search(ignore_pattern, root + os.sep):
Packit 77df79
                            continue
Packit 77df79
                        # Only the last directory is copied, not the full path
Packit 77df79
                        if not(pref):
Packit 77df79
                            iroot = root
Packit 77df79
                        else:
Packit 77df79
                            iroot = root.split(pref + os.path.sep, 1)[1]
Packit 77df79
                        idir = os.path.join(install_base, iroot)
Packit 77df79
                        files = [os.path.join(root, i) for i in files]
Packit 77df79
                        if files:
Packit 77df79
                            full_data_files += [(idir, files)]
Packit 77df79
                else:
Packit 77df79
                    base_files.append(path)
Packit 77df79
Packit 77df79
            if base_files:
Packit 77df79
                full_data_files += [(install_base, base_files)]
Packit 77df79
Packit 77df79
        # Replace synthetic data_files by the full one, and do the actual job
Packit 77df79
        self.data_files = full_data_files
Packit 77df79
        rc = install_data.run(self)
Packit 77df79
Packit 77df79
        if self.distribution.get_command_obj("install").install_layout != "deb":
Packit 77df79
            self.adapt_installed_data()
Packit 77df79
        return rc
Packit 77df79
Packit 77df79
    def adapt_installed_data(self):
Packit 77df79
        installed = self.get_outputs()
Packit 77df79
        for data_file in installed:
Packit 77df79
            if os.path.basename(data_file) == "param.xsl":
Packit 77df79
                self._set_texlive_version(data_file)
Packit 77df79
                break
Packit 77df79
Packit 77df79
    def _set_texlive_version(self, param_file):
Packit 77df79
        """Detect the installed Texlive version from hyperref.sty version, and
Packit 77df79
        override the texlive.version param accordingly."""
Packit 77df79
        hyper_sty = kpsewhich("hyperref.sty")
Packit 77df79
        if not(hyper_sty):
Packit 77df79
            # Cannot do anything, give up
Packit 77df79
            return
Packit 77df79
Packit 77df79
        # Grab the value from package version
Packit 77df79
        d = open(hyper_sty, "rt", encoding="latin-1").read()
Packit 77df79
        m = re.search(r"\\ProvidesPackage{hyperref}\s+\[(\d+)", d, re.M)
Packit 77df79
        if not(m):
Packit 77df79
            return
Packit 77df79
        year = m.group(1)
Packit 77df79
Packit 77df79
        # Patch the parameter with the found value
Packit 77df79
        p = open(param_file, "rt", encoding="latin-1").read()
Packit 77df79
        p2 = re.sub('name="texlive.version">.*<',
Packit 77df79
                    'name="texlive.version">%s<' % year, p)
Packit 77df79
        f = open(param_file, "wt", encoding="latin-1")
Packit 77df79
        f.write(p2)
Packit 77df79
        f.close()
Packit 77df79
Packit 77df79
Packit 77df79
def get_version():
Packit 77df79
    sys.path.insert(0, "lib")
Packit 77df79
    from dbtexmf.dblatex import dblatex
Packit 77df79
    d = dblatex.DbLatex(base=os.getcwd())
Packit 77df79
    sys.path.remove("lib")
Packit 77df79
    return d.get_version()
Packit 77df79
Packit 77df79
Packit 77df79
if __name__ == "__main__":
Packit 77df79
    pdfdocs = glob.glob(os.path.join("docs", "[mr]*.pdf"))
Packit 77df79
    htmldoc = [os.path.join("docs", "xhtml")]
Packit 77df79
    classifiers = [
Packit 77df79
       "Operating System :: OS Independent",
Packit 77df79
       "Topic :: Text Processing :: Markup :: XML",
Packit 77df79
       "License :: OSI Approved :: GNU General Public License (GPL)"
Packit 77df79
    ]
Packit 77df79
Packit 77df79
    description = """
Packit 77df79
       dblatex is a program that transforms your SGML/XML DocBook documents to
Packit 77df79
       DVI, PostScript or PDF by translating them into pure LaTeX as a first
Packit 77df79
       process.  MathML 2.0 markups are supported, too. It started as a clone
Packit 77df79
       of DB2LaTeX.
Packit 77df79
       """
Packit 77df79
Packit 77df79
    setup(name="dblatex",
Packit 77df79
        version=get_version(),
Packit 77df79
        description='DocBook to LaTeX/ConTeXt Publishing',
Packit 77df79
        author='Benoit Guillon',
Packit 77df79
        author_email='marsgui@users.sourceforge.net',
Packit 77df79
        url='http://dblatex.sf.net',
Packit 77df79
        license='GPL Version 2 or later',
Packit 77df79
        long_description=description,
Packit 77df79
        classifiers=classifiers,
Packit 77df79
        packages=['dbtexmf',
Packit 77df79
                  'dbtexmf.core',
Packit 77df79
                  'dbtexmf.xslt',
Packit 77df79
                  'dbtexmf.dblatex',
Packit 77df79
                  'dbtexmf.dblatex.xetex',
Packit 77df79
                  'dbtexmf.dblatex.grubber'],
Packit 77df79
        package_dir={'dbtexmf':'lib/dbtexmf'},
Packit 77df79
        package_data={'dbtexmf.core':['sgmlent.txt'],
Packit 77df79
                      'dbtexmf.dblatex.grubber':['xindylang.xml']},
Packit 77df79
        data_files=[('share/dblatex', ['xsl', 'latex', 'etc/schema']),
Packit 77df79
                    ('share/doc/dblatex', pdfdocs),
Packit 77df79
                    ('share/doc/dblatex', htmldoc),
Packit 77df79
                    ('share/man/man1', ['docs/manpage/dblatex.1.gz'])],
Packit 77df79
        scripts=['scripts/dblatex'],
Packit 77df79
        cmdclass={'build': Build,
Packit 77df79
                  'build_scripts': BuildScripts,
Packit 77df79
                  'install': Install,
Packit 77df79
                  'install_data': InstallData,
Packit 77df79
                  'sdist': Sdist}
Packit 77df79
        )
Packit 77df79