Newer
Older
#!/usr/bin/env python
# vim: set fileencoding=utf-8 :
# Andre Anjos <andre.anjos@idiap.ch>
# Mon 16 Apr 08:18:08 2012 CEST
#
# Copyright (C) Idiap Research Institute, Martigny, Switzerland
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# This file contains the python (distutils/setuptools) instructions so your
# package can be installed on **any** host system. It defines some basic
# information like the package name for instance, or its homepage.
#
# It also defines which other packages this python package depends on and that
# are required for this package's operation. The python subsystem will make
# sure all dependent packages are installed or will install them for you upon
# the installation of this package.
#
# The 'buildout' system we use here will go further and wrap this package in
# such a way to create an isolated python working environment. Buildout will
# make sure that dependencies which are not yet installed do get installed, but
# **without** requiring administrative privileges on the host system. This
# allows you to test your package with new python dependencies w/o requiring
# administrative interventions.
from setuptools import setup, dist
dist.Distribution(dict(setup_requires=['bob.extension']))
from bob.extension.utils import load_requirements, find_packages
# The only thing we do in this file is to call the setup() function with all
# parameters that define our package.
setup(
# This is the basic information about your project. Modify all this
# information before releasing code publicly.
name = 'bob.bio.gmm',
version = open("version.txt").read().rstrip(),
description = 'Tools for running biometric recognition experiments using GMM-based approximation',
url = 'https://www.github.com/bioidiap/bob.bio.gmm',
license = 'GPLv3',
author = '<YourName>',
author_email = '<YourEmail>',
keywords = 'bob, biometric recognition, evaluation',
# If you have a better, long description of your package, place it on the
# 'doc' directory and then hook it here
long_description = open('README.rst').read(),
# This line is required for any distutils based packaging.
packages = find_packages(),
include_package_data = True,
# This line defines which packages should be installed when you "install"
# this package. All packages that are mentioned here, but are not installed
# on the current system will be installed locally and only visible to the
# scripts of this package. Don't worry - You won't need administrative
# privileges when using buildout.
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# Your project should be called something like 'bob.<foo>' or
# 'bob.<foo>.<bar>'. To implement this correctly and still get all your
# packages to be imported w/o problems, you need to implement namespaces
# on the various levels of the package and declare them here. See more
# about this here:
# http://peak.telecommunity.com/DevCenter/setuptools#namespace-packages
#
# Our database packages are good examples of namespace implementations
# using several layers. You can check them out here:
# https://github.com/idiap/bob/wiki/Satellite-Packages
namespace_packages = [
'bob',
'bob.bio',
],
# This entry defines which scripts you will have inside the 'bin' directory
# once you install the package (or run 'bin/buildout'). The order of each
# entry under 'console_scripts' is like this:
# script-name-at-bin-directory = module.at.your.library:function
#
# The module.at.your.library is the python file within your library, using
# the python syntax for directories (i.e., a '.' instead of '/' or '\').
# This syntax also omits the '.py' extension of the filename. So, a file
# installed under 'example/foo.py' that contains a function which
# implements the 'main()' function of particular script you want to have
# should be referred as 'example.foo:main'.
#
# In this simple example we will create a single program that will print
# the version of bob.
entry_points = {
# scripts should be declared using this entry:
'console_scripts' : [
'verify_gmm.py = bob.bio.gmm.script.verify_gmm:main',
'verify_isv.py = bob.bio.gmm.script.verify_isv:main',
'verify_ivector.py = bob.bio.gmm.script.verify_ivector:main',
],
'bob.bio.database': [
],
'bob.bio.preprocessor': [
],
'bob.bio.extractor': [
'dummy2d = bob.bio.gmm.test.dummy.extractor:extractor', # for test purposes only
],
'bob.bio.algorithm': [
'gmm = bob.bio.gmm.config.algorithm.gmm:algorithm',
'gmm-regular = bob.bio.gmm.config.algorithm.gmm_regular:algorithm',
'jfa = bob.bio.gmm.config.algorithm.jfa:algorithm',
'isv = bob.bio.gmm.config.algorithm.isv:algorithm',
'ivector-cosine = bob.bio.gmm.config.algorithm.ivector_cosine:algorithm',
'ivector-plda = bob.bio.gmm.config.algorithm.ivector_plda:algorithm',
'ivector-lda-wccn-plda = bob.bio.gmm.config.algorithm.ivector_lda_wccn_plda:algorithm',
],
},
# Classifiers are important if you plan to distribute this package through
# PyPI. You can find the complete list of classifiers that are valid and
# useful here (http://pypi.python.org/pypi?%3Aaction=list_classifiers).
classifiers = [
'Framework :: Bob',
'Development Status :: 3 - Alpha',
'Intended Audience :: Developers',
'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
'Natural Language :: English',
'Programming Language :: Python',
'Topic :: Scientific/Engineering :: Artificial Intelligence',
],
)