Skip to content
Snippets Groups Projects
Commit 231d420a authored by André Anjos's avatar André Anjos :speech_balloon:
Browse files

Merge branch 'no-cmake' into 'master'

Do not build a library to avoid C++ API incompatibilities (see #2)

See merge request !10
parents ac051da7 98431b55
No related branches found
No related tags found
1 merge request!10Do not build a library to avoid C++ API incompatibilities (see #2)
Pipeline #25652 passed
# import Libraries of other lib packages
import bob.io.base
# import our own Library
import bob.extension
bob.extension.load_bob_library('bob.learn.boosting', __file__)
import bob.io.base
# versioning
from bob.learn.boosting import version
......
#!/usr/bin/env python
# vim: set fileencoding=utf-8 :
# Manuel Guenther <manuel.guenther@idiap.ch>
#Thu Feb 13 19:18:24 CET 2014
#
# 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 adminstrative privileges on the host system. This
# allows you to test your package with new python dependencies w/o requiring
# administrative interventions.
bob_packages = ['bob.core', 'bob.io.base']
from setuptools import setup, find_packages, dist
dist.Distribution(dict(setup_requires=['bob.extension', 'bob.blitz'] + bob_packages))
from bob.blitz.extension import Extension, Library, build_ext
from bob.blitz.extension import Extension, build_ext
from bob.extension.utils import load_requirements
build_requires = load_requirements()
# Define package version
version = open("version.txt").read().rstrip()
# Local include directory
import os
package_dir = os.path.dirname(os.path.realpath(__file__))
include_dir = os.path.join(package_dir, 'bob', 'learn', 'boosting', 'include')
packages = ['boost']
boost_modules = ['system']
# 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.learn.boosting',
version=version,
description='Boosting framework for Bob',
url='https://gitlab.idiap.ch/bob/bob.learn.boosting',
license='BSD',
author='Manuel Guenther (with help of Rakesh Mehta)',
author_email='manuel.guenther@idiap.ch',
# 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,
zip_safe=False,
# 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 adminstrative
# privileges when using buildout.
setup_requires = build_requires,
install_requires = build_requires,
# Declare that the package is in the namespace bob.learn
ext_modules = [
Extension("bob.learn.boosting.version",
[
......@@ -78,24 +47,7 @@ setup(
version = version,
packages = packages,
boost_modules = boost_modules,
),
Library(
'bob.learn.boosting.bob_learn_boosting',
[
"bob/learn/boosting/cpp/LossFunction.cpp",
"bob/learn/boosting/cpp/JesorskyLoss.cpp",
"bob/learn/boosting/cpp/StumpMachine.cpp",
"bob/learn/boosting/cpp/LUTMachine.cpp",
"bob/learn/boosting/cpp/BoostedMachine.cpp",
"bob/learn/boosting/cpp/LUTTrainer.cpp",
],
bob_packages = bob_packages,
version = version,
packages = packages,
boost_modules = boost_modules,
include_dirs=[include_dir],
),
Extension(
......@@ -104,18 +56,25 @@ setup(
"bob/learn/boosting/main.cpp",
"bob/learn/boosting/loss_function.cpp",
"bob/learn/boosting/jesorsky_loss.cpp",
"bob/learn/boosting/weak_machine.cpp",
"bob/learn/boosting/stump_machine.cpp",
"bob/learn/boosting/lut_machine.cpp",
"bob/learn/boosting/boosted_machine.cpp",
"bob/learn/boosting/lut_trainer.cpp",
# old Library components
"bob/learn/boosting/cpp/LossFunction.cpp",
"bob/learn/boosting/cpp/JesorskyLoss.cpp",
"bob/learn/boosting/cpp/StumpMachine.cpp",
"bob/learn/boosting/cpp/LUTMachine.cpp",
"bob/learn/boosting/cpp/BoostedMachine.cpp",
"bob/learn/boosting/cpp/LUTTrainer.cpp",
],
bob_packages = bob_packages,
version = version,
packages = packages,
boost_modules = boost_modules,
include_dirs=[include_dir],
),
],
......@@ -123,21 +82,16 @@ setup(
'build_ext': build_ext
},
# Define the entry points for this package
entry_points={
'console_scripts': [
'boosting_example.py = bob.learn.boosting.examples.mnist:main',
],
},
# 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).
# https://pypi.org/classifiers/
classifiers = [
'Framework :: Bob',
'Development Status :: 4 - Beta',
'Development Status :: 5 - Production/Stable',
'Intended Audience :: Developers',
'License :: OSI Approved :: BSD License',
'Natural Language :: English',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment