#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from distutils.core import setup
from distutils.command.install import install as DistutilsInstall
import os
import sys
import subprocess

if sys.version_info < (3, 5):
    print("At least Python 3.5 is required.\n", file=sys.stderr)
    exit(1)

def setup_version():
    if not os.path.exists(".git"):
        # Release version, no .git folder
        return

    try:
        version = subprocess.check_output(("git", "describe", "--always", "--tags", "--dirty"))
        with open(os.path.join("mapdamage", "_version.py"), "w") as handle:
            handle.write("#!/usr/bin/env python\n")
            handle.write("__version__ = %r\n" % (version.decode("utf-8").strip(),))
    except (subprocess.CalledProcessError, OSError) as error:
        raise SystemExit("Could not determine mapDamage version: %s" % (error,))


class compileInstall(DistutilsInstall):
    # extension of the class to account for an extra compiling step
    def run(self):
        self.record=""
        setup_version()
        DistutilsInstall.run(self)
        # fixing the permission problem of seqtk

setup(
    cmdclass={'install': compileInstall},
    name='mapdamage',
    version='2.2.0',
    author='AurÃ©lien Ginolhac, Mikkel Schubert, Ãkon JÃ³nsson',
    author_email='MSchubert@snm.ku.dk, jonsson.hakon@gmail.com',
    packages=['mapdamage'],
    package_data={'mapdamage': ['Rscripts/*.R','Rscripts/stats/*.R','tests/*']},
    scripts=['bin/mapDamage'],
    url='https://github.com/ginolhac/mapDamage',
    license='LICENSE.txt',
    description='mapDamage tracks and quantify DNA damage pattern among ancient DNA sequencing reads generated by Next-Generation Sequencing platforms',
    long_description=open('README.md').read()
)
