1import numpy 2from numpy.distutils.misc_util import Configuration 3 4 5def configuration(parent_package="", top_path=None): 6 config = Configuration("ensemble", parent_package, top_path) 7 8 config.add_extension( 9 "_gradient_boosting", 10 sources=["_gradient_boosting.pyx"], 11 include_dirs=[numpy.get_include()], 12 ) 13 14 config.add_subpackage("tests") 15 16 # Histogram-based gradient boosting files 17 config.add_extension( 18 "_hist_gradient_boosting._gradient_boosting", 19 sources=["_hist_gradient_boosting/_gradient_boosting.pyx"], 20 include_dirs=[numpy.get_include()], 21 ) 22 23 config.add_extension( 24 "_hist_gradient_boosting.histogram", 25 sources=["_hist_gradient_boosting/histogram.pyx"], 26 include_dirs=[numpy.get_include()], 27 ) 28 29 config.add_extension( 30 "_hist_gradient_boosting.splitting", 31 sources=["_hist_gradient_boosting/splitting.pyx"], 32 include_dirs=[numpy.get_include()], 33 ) 34 35 config.add_extension( 36 "_hist_gradient_boosting._binning", 37 sources=["_hist_gradient_boosting/_binning.pyx"], 38 include_dirs=[numpy.get_include()], 39 ) 40 41 config.add_extension( 42 "_hist_gradient_boosting._predictor", 43 sources=["_hist_gradient_boosting/_predictor.pyx"], 44 include_dirs=[numpy.get_include()], 45 ) 46 47 config.add_extension( 48 "_hist_gradient_boosting._loss", 49 sources=["_hist_gradient_boosting/_loss.pyx"], 50 include_dirs=[numpy.get_include()], 51 ) 52 53 config.add_extension( 54 "_hist_gradient_boosting._bitset", 55 sources=["_hist_gradient_boosting/_bitset.pyx"], 56 include_dirs=[numpy.get_include()], 57 ) 58 59 config.add_extension( 60 "_hist_gradient_boosting.common", 61 sources=["_hist_gradient_boosting/common.pyx"], 62 include_dirs=[numpy.get_include()], 63 ) 64 65 config.add_extension( 66 "_hist_gradient_boosting.utils", 67 sources=["_hist_gradient_boosting/utils.pyx"], 68 include_dirs=[numpy.get_include()], 69 ) 70 71 config.add_subpackage("_hist_gradient_boosting.tests") 72 73 return config 74 75 76if __name__ == "__main__": 77 from numpy.distutils.core import setup 78 79 setup(**configuration().todict()) 80