1#!/usr/bin/env python
2from setuptools import setup, Extension, find_packages
3from distutils import sysconfig
4import glob
5import sys
6
7srcs = [x for x in glob.glob("deeptoolsintervals/tree/*.c")]
8
9libs = ["z"]
10if sysconfig.get_config_vars('BLDLIBRARY') is not None:
11    # Note the "-l" prefix!
12    for e in sysconfig.get_config_vars('BLDLIBRARY')[0].split():
13        if e[0:2] == "-l":
14            libs.append(e[2:])
15elif sys.version_info[0] >= 3 and sys.version_info[1] >= 3:
16    libs.append("python%i.%im" % (sys.version_info[0], sys.version_info[1]))
17else:
18    libs.append("python%i.%i" % (sys.version_info[0], sys.version_info[1]))
19
20additional_libs = [sysconfig.get_config_var("LIBDIR"), sysconfig.get_config_var("LIBPL")]
21
22module1 = Extension('deeptoolsintervals.tree',
23                    sources=srcs,
24                    libraries=libs,
25                    library_dirs=additional_libs,
26                    include_dirs=[sysconfig.get_config_var("INCLUDEPY")])
27
28setup(name='deeptoolsintervals',
29      version='0.1.9',
30      description='A python module creating/accessing GTF-based interval trees with associated meta-data',
31      author="Devon P. Ryan",
32      author_email="ryan@ie-freiburg.mpg.de",
33      url="https://github.com/deeptools/deeptools_intervals",
34      keywords=["bioinformatics", "GTF"],
35      classifiers=["Development Status :: 5 - Production/Stable",
36                  "Environment :: Console",
37                  "License :: OSI Approved :: MIT License",
38                  "Intended Audience :: Developers",
39                  "Programming Language :: C",
40                  "Programming Language :: Python",
41                  "Programming Language :: Python :: 2",
42                  "Programming Language :: Python :: 2.7",
43                  "Programming Language :: Python :: 3",
44                  "Programming Language :: Python :: 3.3",
45                  "Programming Language :: Python :: 3.4",
46                  "Programming Language :: Python :: 3.5",
47                  "Programming Language :: Python :: 3.6",
48                  "Programming Language :: Python :: Implementation :: CPython",
49                  "Operating System :: POSIX",
50                  "Operating System :: Unix",
51                  "Operating System :: MacOS",
52                  "Topic :: Scientific/Engineering"],
53      packages=find_packages(),
54      zip_safe=False,
55      include_package_data=True,
56      ext_modules=[module1])
57