Some packaging improvements
[keymanager.git] / setup.py
1 # -*- coding: utf-8 -*-
2 # setup.py
3 # Copyright (C) 2013 LEAP
4 #
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation, either version 3 of the License, or
8 # (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program. If not, see <http://www.gnu.org/licenses/>.
17 """
18 setup file for leap.keymanager
19 """
20 from setuptools import setup
21 from setuptools import find_packages
22
23 import versioneer
24 versioneer.versionfile_source = 'src/leap/keymanager/_version.py'
25 versioneer.versionfile_build = 'leap/keymanager/_version.py'
26 versioneer.tag_prefix = ''  # tags are like 1.2.0
27 versioneer.parentdir_prefix = 'leap.keymanager-'
28
29 from pkg import utils
30
31 trove_classifiers = [
32     'Development Status :: 4 - Beta',
33     'Intended Audience :: Developers',
34     'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
35     'Operating System :: OS Independent',
36     'Programming Language :: Python',
37     'Programming Language :: Python :: 2.6',
38     'Programming Language :: Python :: 2.7',
39     'Topic :: Communications :: Email',
40     'Topic :: Internet',
41     'Topic :: Security :: Cryptography',
42     'Topic :: Software Development :: Libraries',
43 ]
44
45 # XXX add ref to docs
46
47 setup(
48     name='leap.keymanager',
49     version=versioneer.get_version(),
50     cmdclass=versioneer.get_cmdclass(),
51     url='https://leap.se/',
52     license='GPLv3+',
53     description='LEAP\'s Key Manager',
54     author='The LEAP Encryption Access Project',
55     author_email='info@leap.se',
56     long_description=(
57         "The Key Manager handles all types of keys to allow for "
58         "point-to-point encryption between parties communicating through "
59         "LEAP infrastructure."
60     ),
61     classifiers=trove_classifiers,
62     namespace_packages=["leap"],
63     packages=find_packages('src', exclude=['leap.keymanager.tests']),
64     package_dir={'': 'src'},
65     test_suite='leap.keymanager.tests',
66     install_requires=utils.parse_requirements(),
67     tests_require=utils.parse_requirements(
68         reqfiles=['pkg/requirements-testing.pip']),
69 )