Esempio n. 1
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration

    config = Configuration('impl', parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()

    config.add_extension('dataset_fast',
                         sources=['dataset_fast.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('matrix_fact_fast',
                         sources=['matrix_fact_fast.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('preprocessing_fast',
                         sources=['preprocessing_fast.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('dict_fact_fast',
                         sources=['dict_fact_fast.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('dict_fact_fast_partial',
                         sources=['dict_fact_fast_partial.c'],
                         include_dirs=[numpy.get_include()])

    config.add_subpackage('tests')

    return config
Esempio n. 2
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration
    config = Configuration('whatever', parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()

    if os.name == 'posix':
        cblas_libs.append('m')

    config.add_extension('cd_fast_fixed',
                         sources=['cd_fast_fixed.pyx'],
                         include_dirs=[#join('..', 'src', 'cblas'),
                                       numpy.get_include(),
                                       blas_info.pop('include_dirs', [])],
                         libraries=cblas_libs,
                         extra_compile_args=blas_info.pop('extra_compile_args',
                                                          []),
                         **blas_info)

    config.add_extension('cd_fast_adaptive', sources=['cd_fast_adaptive.pyx'],
                         libraries=cblas_libs,
                         include_dirs=[#join('..', 'src', 'cblas'),
                                       numpy.get_include(),
                                       blas_info.pop('include_dirs', [])],
                         extra_compile_args=blas_info.pop('extra_compile_args',
                                                          []), **blas_info)

#    config.add_extension('test',
#                         sources=['test.pyx'],
#                         include_dirs=numpy.get_include())

    # add other directories
    #config.add_subpackage('tests')

    return config
Esempio n. 3
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration

    config = Configuration('prox_elasticnet', parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()

    if os.name == 'posix':
        cblas_libs.append('m')

    # add cython extensions module
    config.add_extension('prox_fast',
                         sources=['prox_fast.c'],
                         libraries=cblas_libs,
                         include_dirs=[
                             join('..', 'src', 'cblas'),
                             numpy.get_include(),
                             blas_info.pop('include_dirs', [])
                         ],
                         extra_compile_args=blas_info.pop(
                             'extra_compile_args', []),
                         **blas_info)

    # add the test directory
    config.add_subpackage('tests')

    return config
Esempio n. 4
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration

    cblas_libs, blas_info = get_blas_info()

    libraries = []
    if os.name == 'posix':
        cblas_libs.append('m')
        libraries.append('m')

    config = Configuration('cluster', parent_package, top_path)
    config.add_extension('_hierarchical',
                         sources=['_hierarchical.cpp'],
                         language="c++",
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_extension('_k_means',
                         libraries=cblas_libs,
                         sources=['_k_means.c'],
                         include_dirs=[
                             join('..', 'src', 'cblas'),
                             numpy.get_include(),
                             blas_info.pop('include_dirs', [])
                         ],
                         extra_compile_args=blas_info.pop(
                             'extra_compile_args', []),
                         **blas_info)

    return config
Esempio n. 5
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration

    cblas_libs, blas_info = get_blas_info()

    libraries = []
    if os.name == 'posix':
        cblas_libs.append('m')
        libraries.append('m')

    config = Configuration('cluster', parent_package, top_path)
    config.add_extension('_hierarchical',
                         sources=['_hierarchical.c'],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_extension(
        '_k_means',
        libraries=cblas_libs,
        sources=['_k_means.c'],
        include_dirs=[join('..', 'src', 'cblas'),
                      numpy.get_include(),
                      blas_info.pop('include_dirs', [])],
        extra_compile_args=blas_info.pop('extra_compile_args', []),
        **blas_info
    )
    return config
Esempio n. 6
0
def configuration(parent_package='', top_path=None):
    import numpy
    from numpy.distutils.misc_util import Configuration

    config = Configuration('utils', parent_package, top_path)
    config.add_subpackage('sparsetools')

    cblas_libs, blas_info = get_blas_info()

    libraries = []
    if os.name == 'posix':
        libraries.append('m')
        cblas_libs.append('m')

    config.add_extension('arraybuilder', sources=['arraybuilder.c'])

    config.add_extension('sparsefuncs', sources=['sparsefuncs.c'],
                         libraries=libraries)

    config.add_extension('arrayfuncs',
                         sources=['arrayfuncs.c'],
                         depends=[join('src', 'cholesky_delete.h')],
                         libraries=cblas_libs,
                         include_dirs=[join('..', 'src', 'cblas'),
                                       numpy.get_include(),
                                       blas_info.pop('include_dirs', [])],
                         extra_compile_args=blas_info.pop('extra_compile_args',
                                                          []),
                         **blas_info
                         )

    config.add_extension(
        'murmurhash',
        sources=['murmurhash.c', join('src', 'MurmurHash3.cpp')],
        include_dirs=['src'])

    config.add_extension('lgamma',
                         sources=['lgamma.cpp', join('src', 'Gamma.cpp')],
                         include_dirs=['src'],
                         libraries=libraries)

    config.add_extension('graph_shortest_path',
                         sources=['graph_shortest_path.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('seq_dataset',
                         sources=['seq_dataset.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('weight_vector',
                         sources=['weight_vector.c'],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_extension("random",
                         sources=["random.c"],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    return config
Esempio n. 7
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration

    config = Configuration('impl', parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()

    config.add_extension('dataset_fast',
                         sources=['dataset_fast.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('matrix_fact_fast',
                         sources=['matrix_fact_fast.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('preprocessing_fast',
                         sources=['preprocessing_fast.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('dict_fact_fast',
                         sources=['dict_fact_fast.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('dict_fact_fast_partial',
                         sources=['dict_fact_fast_partial.c'],
                         include_dirs=[numpy.get_include()])

    config.add_subpackage('tests')

    return config
Esempio n. 8
0
def configuration(parent_package="", top_path=None):
    config = Configuration("manifold", parent_package, top_path)
    libraries = []
    if os.name == 'posix':
        libraries.append('m')
    config.add_extension("_utils",
                         sources=["_utils.pyx"],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries,
                         extra_compile_args=["-O3"])
    cblas_libs, blas_info = get_blas_info()
    eca = blas_info.pop('extra_compile_args', [])
    eca.append("-O4")
    config.add_extension("_barnes_hut_tsne",
                         libraries=cblas_libs,
                         sources=["_barnes_hut_tsne.pyx"],
                         include_dirs=[
                             join('..', 'src', 'cblas'),
                             numpy.get_include(),
                             blas_info.pop('include_dirs', [])
                         ],
                         extra_compile_args=eca,
                         **blas_info)

    config.add_subpackage('tests')

    return config
Esempio n. 9
0
def configuration(parent_package='', top_path=None):
    import numpy
    from numpy.distutils.misc_util import Configuration

    config = Configuration('utils', parent_package, top_path)
    config.add_subpackage('sparsetools')

    cblas_libs, blas_info = get_blas_info()

    libraries = []
    if os.name == 'posix':
        libraries.append('m')
        cblas_libs.append('m')

    config.add_extension('arraybuilder', sources=['arraybuilder.c'])

    config.add_extension('sparsefuncs', sources=['sparsefuncs.c'],
                         libraries=libraries)

    config.add_extension('arrayfuncs',
                         sources=['arrayfuncs.c'],
                         depends=[join('src', 'cholesky_delete.h')],
                         libraries=cblas_libs,
                         include_dirs=[join('..', 'src', 'cblas'),
                                       numpy.get_include(),
                                       blas_info.pop('include_dirs', [])],
                         extra_compile_args=blas_info.pop('extra_compile_args',
                                                          []),
                         **blas_info
                         )

    config.add_extension(
        'murmurhash',
        sources=['murmurhash.c', join('src', 'MurmurHash3.cpp')],
        include_dirs=['src'])

    config.add_extension('lgamma',
                         sources=['lgamma.c', join('src', 'gamma.c')],
                         include_dirs=['src'],
                         libraries=libraries)

    config.add_extension('graph_shortest_path',
                         sources=['graph_shortest_path.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('seq_dataset',
                         sources=['seq_dataset.c'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('weight_vector',
                         sources=['weight_vector.c'],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_extension("random",
                         sources=["random.c"],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    return config
Esempio n. 10
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration

    config = Configuration('linear_model', parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()

    libraries = []
    if os.name == 'posix':
        cblas_libs.append('m')
        libraries.append('m')

    config.add_extension('cd_fast',
         sources=['cd_fast.c'],
         libraries=cblas_libs,
         include_dirs=[join('..', 'src', 'cblas'),
                       numpy.get_include(),
                       blas_info.pop('include_dirs', [])],
         extra_compile_args=blas_info.pop('extra_compile_args', []),
         **blas_info
         )

    config.add_extension('sgd_fast',
         sources=['sgd_fast.c'],
         include_dirs=[numpy.get_include()],
         libraries=libraries,
         )

    # add other directories
    config.add_subpackage('tests')

    return config
Esempio n. 11
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration

    config = Configuration('linear_model', parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()

    libraries = []
    if os.name == 'posix':
        cblas_libs.append('m')
        libraries.append('m')

    config.add_extension('cd_fast',
                         sources=['cd_fast.c'],
                         libraries=cblas_libs,
                         include_dirs=[
                             join('..', 'src', 'cblas'),
                             numpy.get_include(),
                             blas_info.pop('include_dirs', [])
                         ],
                         extra_compile_args=blas_info.pop(
                             'extra_compile_args', []),
                         **blas_info)

    config.add_extension(
        'sgd_fast',
        sources=['sgd_fast.c'],
        include_dirs=[numpy.get_include()],
        libraries=libraries,
    )

    # add other directories
    config.add_subpackage('tests')

    return config
Esempio n. 12
0
def configuration(parent_package="", top_path=None):
    from numpy.distutils.misc_util import Configuration

    config = Configuration("linear_model", parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()

    libraries = []
    if os.name == "posix":
        cblas_libs.append("m")
        libraries.append("m")

    config.add_extension(
        "cd_fast",
        sources=["cd_fast.c"],
        libraries=cblas_libs,
        include_dirs=[join("..", "src", "cblas"), numpy.get_include(), blas_info.pop("include_dirs", [])],
        extra_compile_args=blas_info.pop("extra_compile_args", []),
        **blas_info
    )

    config.add_extension("sgd_fast", sources=["sgd_fast.c"], include_dirs=[numpy.get_include()], libraries=libraries)

    # add other directories
    config.add_subpackage("tests")
    config.add_subpackage("sparse")

    return config
Esempio n. 13
0
def configuration(parent_package="", top_path=None):
    import numpy
    from numpy.distutils.misc_util import Configuration

    config = Configuration("utils", parent_package, top_path)
    config.add_subpackage("sparsetools")

    cblas_libs, blas_info = get_blas_info()

    libraries = []
    if os.name == "posix":
        libraries.append("m")
        cblas_libs.append("m")

    config.add_extension("arraybuilder", sources=["arraybuilder.c"])

    config.add_extension("sparsefuncs", sources=["sparsefuncs.c"], libraries=libraries)

    config.add_extension(
        "arrayfuncs",
        sources=["arrayfuncs.c"],
        depends=[join("src", "cholesky_delete.h")],
        libraries=cblas_libs,
        include_dirs=[join("..", "src", "cblas"), numpy.get_include(), blas_info.pop("include_dirs", [])],
        extra_compile_args=blas_info.pop("extra_compile_args", []),
        **blas_info
    )

    config.add_extension("murmurhash", sources=["murmurhash.c", join("src", "MurmurHash3.cpp")], include_dirs=["src"])

    config.add_extension(
        "lgamma", sources=["lgamma.c", join("src", "gamma.c")], include_dirs=["src"], libraries=libraries
    )

    config.add_extension("graph_shortest_path", sources=["graph_shortest_path.c"], include_dirs=[numpy.get_include()])

    config.add_extension("seq_dataset", sources=["seq_dataset.c"], include_dirs=[numpy.get_include()])

    config.add_extension(
        "weight_vector", sources=["weight_vector.c"], include_dirs=[numpy.get_include()], libraries=libraries
    )

    config.add_extension("random", sources=["random.c"], include_dirs=[numpy.get_include()], libraries=libraries)

    config.add_extension(
        "_logistic_sigmoid", sources=["_logistic_sigmoid.c"], include_dirs=[numpy.get_include()], libraries=libraries
    )

    return config
Esempio n. 14
0
def configuration(parent_package="", top_path=None):
    config = Configuration("metrics", parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()
    if os.name == 'posix':
        cblas_libs.append('m')

    config.add_extension("pairwise_fast",
                         sources=["pairwise_fast.c"],
                         include_dirs=[os.path.join('..', 'src', 'cblas'),
                                       numpy.get_include(),
                                       blas_info.pop('include_dirs', [])],
                         libraries=cblas_libs,
                         extra_compile_args=blas_info.pop('extra_compile_args',
                                                          []),
                         **blas_info)

    return config
Esempio n. 15
0
def configuration(parent_package="", top_path=None):
    config = Configuration("metrics", parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()
    if os.name == 'posix':
        cblas_libs.append('m')

    config.add_extension("pairwise_fast",
                         sources=["pairwise_fast.c"],
                         include_dirs=[os.path.join('..', 'src', 'cblas'),
                                       numpy.get_include(),
                                       blas_info.pop('include_dirs', [])],
                         libraries=cblas_libs,
                         extra_compile_args=blas_info.pop('extra_compile_args',
                                                          []),
                         **blas_info)

    return config
Esempio n. 16
0
def configuration(parent_package="", top_path=None):
    config = Configuration("manifold", parent_package, top_path)
    libraries = []
    if os.name == 'posix':
        libraries.append('m')
    config.add_extension("_utils",
                         sources=["_utils.c"],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries,
                         extra_compile_args=["-O3"])
    cblas_libs, blas_info = get_blas_info()
    eca = blas_info.pop('extra_compile_args', [])
    eca.append("-O4")
    config.add_extension("_barnes_hut_tsne",
                         libraries=cblas_libs,
                         sources=["_barnes_hut_tsne.c"],
                         include_dirs=[join('..', 'src', 'cblas'),
                                       numpy.get_include(),
                                       blas_info.pop('include_dirs', [])],
                         extra_compile_args=eca, **blas_info)

    return config
Esempio n. 17
0
__author__ = 'qd'

from distutils.core import setup
from Cython.Build import cythonize
from sklearn._build_utils import get_blas_info
import os
import numpy as np
path = "auxiliary/"
# path = ""
cblas_libs, blas_info = get_blas_info()

tmp = '/opt/local/include'
libraries = []
if os.name == 'posix':
    cblas_libs.append('m')
    libraries.append('m')
extensions = [path+"rand_no_repeat.pyx"]
setup(
    # name='',
    include_dirs=[np.get_include(), tmp],
    ext_modules=cythonize(extensions,
                          # language="c++",
                          # libraries=cblas_libs,
                          )
)
# run setup_aix.py build_ext --inplace
Esempio n. 18
0
def configuration(parent_package="", top_path=None):
    from numpy.distutils.misc_util import Configuration

    config = Configuration("svm", parent_package, top_path)

    config.add_subpackage("tests")

    # Section LibSVM

    # we compile both libsvm and libsvm_sparse
    config.add_library(
        "libsvm-skl",
        sources=[join("src", "libsvm", "libsvm_template.cpp")],
        depends=[join("src", "libsvm", "svm.cpp"), join("src", "libsvm", "svm.h")],
        # Force C++ linking in case gcc is picked up instead
        # of g++ under windows with some versions of MinGW
        extra_link_args=["-lstdc++"],
    )

    libsvm_sources = ["libsvm.c"]
    libsvm_depends = [
        join("src", "libsvm", "libsvm_helper.c"),
        join("src", "libsvm", "libsvm_template.cpp"),
        join("src", "libsvm", "svm.cpp"),
        join("src", "libsvm", "svm.h"),
    ]

    config.add_extension(
        "libsvm",
        sources=libsvm_sources,
        include_dirs=[numpy.get_include(), join("src", "libsvm")],
        libraries=["libsvm-skl"],
        depends=libsvm_depends,
    )

    ### liblinear module
    cblas_libs, blas_info = get_blas_info()
    if os.name == "posix":
        cblas_libs.append("m")

    liblinear_sources = ["liblinear.c", join("src", "liblinear", "*.cpp")]

    liblinear_depends = [join("src", "liblinear", "*.h"), join("src", "liblinear", "liblinear_helper.c")]

    config.add_extension(
        "liblinear",
        sources=liblinear_sources,
        libraries=cblas_libs,
        include_dirs=[join("..", "src", "cblas"), numpy.get_include(), blas_info.pop("include_dirs", [])],
        extra_compile_args=blas_info.pop("extra_compile_args", []),
        depends=liblinear_depends,
        # extra_compile_args=['-O0 -fno-inline'],
        **blas_info
    )

    ## end liblinear module

    # this should go *after* libsvm-skl
    libsvm_sparse_sources = ["libsvm_sparse.c"]
    config.add_extension(
        "libsvm_sparse",
        libraries=["libsvm-skl"],
        sources=libsvm_sparse_sources,
        include_dirs=[numpy.get_include(), join("src", "libsvm")],
        depends=[join("src", "libsvm", "svm.h"), join("src", "libsvm", "libsvm_sparse_helper.c")],
    )

    return config
Esempio n. 19
0
def configuration(parent_package='', top_path=None):
    import numpy
    from numpy.distutils.misc_util import Configuration

    config = Configuration('utils', parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()
    cblas_compile_args = blas_info.pop('extra_compile_args', [])
    cblas_includes = [join('..', 'src', 'cblas'),
                      numpy.get_include(),
                      blas_info.pop('include_dirs', [])]

    libraries = []
    if os.name == 'posix':
        libraries.append('m')
        cblas_libs.append('m')

    config.add_extension('sparsefuncs_fast', sources=['sparsefuncs_fast.pyx'],
                         libraries=libraries)

    config.add_extension('_cython_blas',
                         sources=['_cython_blas.pyx'],
                         libraries=libraries)

    config.add_extension('arrayfuncs',
                         sources=['arrayfuncs.pyx'],
                         depends=[join('src', 'cholesky_delete.h')],
                         libraries=cblas_libs,
                         include_dirs=cblas_includes,
                         extra_compile_args=cblas_compile_args,
                         **blas_info)

    config.add_extension('murmurhash',
                         sources=['murmurhash.pyx', join(
                             'src', 'MurmurHash3.cpp')],
                         include_dirs=['src'])

    config.add_extension('lgamma',
                         sources=['lgamma.pyx', join('src', 'gamma.c')],
                         include_dirs=['src'],
                         libraries=libraries)

    config.add_extension('graph_shortest_path',
                         sources=['graph_shortest_path.pyx'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('fast_dict',
                         sources=['fast_dict.pyx'],
                         language="c++",
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_extension('seq_dataset',
                         sources=['seq_dataset.pyx'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('weight_vector',
                         sources=['weight_vector.pyx'],
                         include_dirs=cblas_includes,
                         libraries=cblas_libs,
                         **blas_info)

    config.add_extension("_random",
                         sources=["_random.pyx"],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_extension("_logistic_sigmoid",
                         sources=["_logistic_sigmoid.pyx"],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_subpackage('tests')

    return config
Esempio n. 20
0
def configuration(parent_package='', top_path=None):
    import numpy
    from numpy.distutils.misc_util import Configuration

    config = Configuration('utils', parent_package, top_path)

    cblas_libs, blas_info = get_blas_info()
    cblas_compile_args = blas_info.pop('extra_compile_args', [])
    cblas_includes = [
        join('..', 'src', 'cblas'),
        numpy.get_include(),
        blas_info.pop('include_dirs', [])
    ]

    libraries = []
    if os.name == 'posix':
        libraries.append('m')
        cblas_libs.append('m')

    config.add_extension('sparsefuncs_fast',
                         sources=['sparsefuncs_fast.pyx'],
                         libraries=libraries)

    config.add_extension('_cython_blas',
                         sources=['_cython_blas.pyx'],
                         libraries=libraries)

    config.add_extension('arrayfuncs',
                         sources=['arrayfuncs.pyx'],
                         depends=[join('src', 'cholesky_delete.h')],
                         libraries=cblas_libs,
                         include_dirs=cblas_includes,
                         extra_compile_args=cblas_compile_args,
                         **blas_info)

    config.add_extension(
        'murmurhash',
        sources=['murmurhash.pyx',
                 join('src', 'MurmurHash3.cpp')],
        include_dirs=['src'])

    config.add_extension('lgamma',
                         sources=['lgamma.pyx',
                                  join('src', 'gamma.c')],
                         include_dirs=['src'],
                         libraries=libraries)

    config.add_extension('graph_shortest_path',
                         sources=['graph_shortest_path.pyx'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('fast_dict',
                         sources=['fast_dict.pyx'],
                         language="c++",
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_extension('seq_dataset',
                         sources=['seq_dataset.pyx'],
                         include_dirs=[numpy.get_include()])

    config.add_extension('weight_vector',
                         sources=['weight_vector.pyx'],
                         include_dirs=cblas_includes,
                         libraries=cblas_libs,
                         **blas_info)

    config.add_extension("_random",
                         sources=["_random.pyx"],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_extension("_logistic_sigmoid",
                         sources=["_logistic_sigmoid.pyx"],
                         include_dirs=[numpy.get_include()],
                         libraries=libraries)

    config.add_subpackage('tests')

    return config
Esempio n. 21
0
# build .pyx files?
from distutils.core import setup, Extension
from Cython.Build import cythonize

import os
from os.path import join

import numpy

from sklearn._build_utils import get_blas_info

cblas_libs, blas_info = get_blas_info()

libraries = []
if os.name == 'posix':
    cblas_libs.append('m')
    libraries.append('m')

#
# setup(
#   name = 'k_means_elkan',
#   ext_modules = cythonize("_k_means_elkan.pyx"),
# )

# setup(
#     name = '_k_means_elkan',
#     ext_modules=[ cythonize("_k_means_elkan.pyx"),
#         Extension("_k_means_elkan", ["_k_means_elkan.c"],
#                   include_dirs=[numpy.get_include()]),
#     ],
# )
Esempio n. 22
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration
    from numpy.distutils.system_info import get_info, BlasNotFoundError

    config = Configuration('svm', parent_package, top_path)

    config.add_subpackage('tests')

    # Section LibSVM

    # we compile both libsvm and libsvm_sparse
    config.add_library(
        'libsvm-skl',
        sources=[join('src', 'libsvm', 'libsvm_template.cpp')],
        depends=[
            join('src', 'libsvm', 'svm.cpp'),
            join('src', 'libsvm', 'svm.h')
        ],
        # Force C++ linking in case gcc is picked up instead
        # of g++ under windows with some versions of MinGW
        extra_link_args=['-lstdc++'],
    )

    libsvm_sources = ['libsvm.c']
    libsvm_depends = [
        join('src', 'libsvm', 'libsvm_helper.c'),
        join('src', 'libsvm', 'libsvm_template.cpp'),
        join('src', 'libsvm', 'svm.cpp'),
        join('src', 'libsvm', 'svm.h')
    ]

    config.add_extension(
        'libsvm',
        sources=libsvm_sources,
        include_dirs=[numpy.get_include(),
                      join('src', 'libsvm')],
        libraries=['libsvm-skl'],
        depends=libsvm_depends,
    )

    ### liblinear module
    cblas_libs, blas_info = get_blas_info()
    if os.name == 'posix':
        cblas_libs.append('m')

    liblinear_sources = ['liblinear.c', join('src', 'liblinear', '*.cpp')]

    liblinear_depends = [
        join('src', 'liblinear', '*.h'),
        join('src', 'liblinear', 'liblinear_helper.c')
    ]

    config.add_extension(
        'liblinear',
        sources=liblinear_sources,
        libraries=cblas_libs,
        include_dirs=[
            join('..', 'src', 'cblas'),
            numpy.get_include(),
            blas_info.pop('include_dirs', [])
        ],
        extra_compile_args=blas_info.pop('extra_compile_args', []),
        depends=liblinear_depends,
        # extra_compile_args=['-O0 -fno-inline'],
        **blas_info)

    ## end liblinear module

    # this should go *after* libsvm-skl
    libsvm_sparse_sources = ['libsvm_sparse.c']
    config.add_extension(
        'libsvm_sparse',
        libraries=['libsvm-skl'],
        sources=libsvm_sparse_sources,
        include_dirs=[numpy.get_include(),
                      join("src", "libsvm")],
        depends=[
            join("src", "libsvm", "svm.h"),
            join("src", "libsvm", "libsvm_sparse_helper.c")
        ])

    return config
Esempio n. 23
0
def configuration(parent_package='', top_path=None):
    from numpy.distutils.misc_util import Configuration
    from numpy.distutils.system_info import get_info, BlasNotFoundError

    config = Configuration('svm', parent_package, top_path)

    config.add_subpackage('tests')

    # Section LibSVM

    # we compile both libsvm and libsvm_sparse
    config.add_library('libsvm-skl',
                       sources=[join('src', 'libsvm', 'libsvm_template.cpp')],
                       depends=[join('src', 'libsvm', 'svm.cpp'),
                                join('src', 'libsvm', 'svm.h')],
                       # Force C++ linking in case gcc is picked up instead
                       # of g++ under windows with some versions of MinGW
                       extra_link_args=['-lstdc++'],
                       )

    libsvm_sources = ['libsvm.c']
    libsvm_depends = [join('src', 'libsvm', 'libsvm_helper.c'),
                      join('src', 'libsvm', 'libsvm_template.cpp'),
                      join('src', 'libsvm', 'svm.cpp'),
                      join('src', 'libsvm', 'svm.h')]

    config.add_extension('libsvm',
                         sources=libsvm_sources,
                         include_dirs=[numpy.get_include(),
                                       join('src', 'libsvm')],
                         libraries=['libsvm-skl'],
                         depends=libsvm_depends,
                         )

    ### liblinear module
    cblas_libs, blas_info = get_blas_info()
    if os.name == 'posix':
        cblas_libs.append('m')

    liblinear_sources = ['liblinear.c',
                         join('src', 'liblinear', '*.cpp')]

    liblinear_depends = [join('src', 'liblinear', '*.h'),
                         join('src', 'liblinear', 'liblinear_helper.c')]

    config.add_extension('liblinear',
                         sources=liblinear_sources,
                         libraries=cblas_libs,
                         include_dirs=[join('..', 'src', 'cblas'),
                                       numpy.get_include(),
                                       blas_info.pop('include_dirs', [])],
                         extra_compile_args=blas_info.pop('extra_compile_args',
                                                          []),
                         depends=liblinear_depends,
                         # extra_compile_args=['-O0 -fno-inline'],
                         ** blas_info)

    ## end liblinear module

    # this should go *after* libsvm-skl
    libsvm_sparse_sources = ['libsvm_sparse.c']
    config.add_extension('libsvm_sparse', libraries=['libsvm-skl'],
                         sources=libsvm_sparse_sources,
                         include_dirs=[numpy.get_include(),
                                       join("src", "libsvm")],
                         depends=[join("src", "libsvm", "svm.h"),
                                  join("src", "libsvm",
                                       "libsvm_sparse_helper.c")])

    return config