diff --git a/sci-libs/mlpack/mlpack-2.2.5.recipe b/sci-libs/mlpack/mlpack-2.2.5.recipe new file mode 100644 index 000000000..9cd04a54c --- /dev/null +++ b/sci-libs/mlpack/mlpack-2.2.5.recipe @@ -0,0 +1,192 @@ +SUMMARY="Scalable c++ machine learning library" +DESCRIPTION="mlpack is an intuitive, fast, scalable C++ machine learning \ +library, meant to be a machine learning analog to LAPACK. It aims to implement \ +a wide array of machine learning methods and functions as a \"swiss army \ +knife\" for machine learning researchers." +HOMEPAGE="http://www.mlpack.org/" +COPYRIGHT="2011-2017 mlpack Team" +LICENSE="BSD (3-clause)" +REVISION="1" +SOURCE_URI="https://github.com/mlpack/mlpack/archive/mlpack-$portVersion.tar.gz" +CHECKSUM_SHA256="6bba8b28a50dc3b8afacd357aca57a658cf5b8d90a57d38f357d7e2eafcf09bb" +SOURCE_DIR="mlpack-mlpack-$portVersion" +PATCHES="mlpack-$portVersion.patchset" + +ARCHITECTURES="!x86_gcc2 x86 x86_64" +SECONDARY_ARCHITECTURES="?x86" + +PROVIDES=" + mlpack$secondaryArchSuffix = $portVersion + cmd:mlpack_adaboost$secondaryArchSuffix + cmd:mlpack_allkfn$secondaryArchSuffix + cmd:mlpack_allknn$secondaryArchSuffix + cmd:mlpack_allkrann$secondaryArchSuffix + cmd:mlpack_approx_kfn$secondaryArchSuffix + cmd:mlpack_cf$secondaryArchSuffix + cmd:mlpack_dbscan$secondaryArchSuffix + cmd:mlpack_decision_stump$secondaryArchSuffix + cmd:mlpack_decision_tree$secondaryArchSuffix + cmd:mlpack_det$secondaryArchSuffix + cmd:mlpack_emst$secondaryArchSuffix + cmd:mlpack_fastmks$secondaryArchSuffix + cmd:mlpack_gmm_generate$secondaryArchSuffix + cmd:mlpack_gmm_probability$secondaryArchSuffix + cmd:mlpack_gmm_train$secondaryArchSuffix + cmd:mlpack_hmm_generate$secondaryArchSuffix + cmd:mlpack_hmm_loglik$secondaryArchSuffix + cmd:mlpack_hmm_train$secondaryArchSuffix + cmd:mlpack_hmm_viterbi$secondaryArchSuffix + cmd:mlpack_hoeffding_tree$secondaryArchSuffix + cmd:mlpack_kernel_pca$secondaryArchSuffix + cmd:mlpack_kfn$secondaryArchSuffix + cmd:mlpack_kmeans$secondaryArchSuffix + cmd:mlpack_knn$secondaryArchSuffix + cmd:mlpack_krann$secondaryArchSuffix + cmd:mlpack_lars$secondaryArchSuffix + cmd:mlpack_linear_regression$secondaryArchSuffix + cmd:mlpack_local_coordinate_coding$secondaryArchSuffix + cmd:mlpack_logistic_regression$secondaryArchSuffix + cmd:mlpack_lsh$secondaryArchSuffix + cmd:mlpack_mean_shift$secondaryArchSuffix + cmd:mlpack_nbc$secondaryArchSuffix + cmd:mlpack_nca$secondaryArchSuffix + cmd:mlpack_nmf$secondaryArchSuffix + cmd:mlpack_pca$secondaryArchSuffix + cmd:mlpack_perceptron$secondaryArchSuffix + cmd:mlpack_preprocess_binarize$secondaryArchSuffix + cmd:mlpack_preprocess_describe$secondaryArchSuffix + cmd:mlpack_preprocess_imputer$secondaryArchSuffix + cmd:mlpack_preprocess_split$secondaryArchSuffix + cmd:mlpack_radical$secondaryArchSuffix + cmd:mlpack_range_search$secondaryArchSuffix + cmd:mlpack_softmax_regression$secondaryArchSuffix + cmd:mlpack_sparse_coding$secondaryArchSuffix + lib:libmlpack$secondaryArchSuffix = $portVersion compat >= 2.2 + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libarmadillo$secondaryArchSuffix + lib:libboost_program_options$secondaryArchSuffix + lib:libboost_serialization$secondaryArchSuffix + lib:libboost_system$secondaryArchSuffix + lib:libboost_unit_test_framework$secondaryArchSuffix + lib:libgomp$secondaryArchSuffix + lib:libhdf5$secondaryArchSuffix + lib:liblapack$secondaryArchSuffix + lib:libopenblas$secondaryArchSuffix + lib:libsuperlu$secondaryArchSuffix + " + +PROVIDES_devel=" + mlpack${secondaryArchSuffix}_devel = $portVersion + devel:libmlpack$secondaryArchSuffix = $portVersion compat >= 2.2 + " +REQUIRES_devel=" + mlpack$secondaryArchSuffix == $portVersion base + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libarmadillo$secondaryArchSuffix + devel:libboost_program_options$secondaryArchSuffix + devel:libboost_serialization$secondaryArchSuffix + devel:libboost_system$secondaryArchSuffix + devel:libboost_unit_test_framework$secondaryArchSuffix + devel:libhdf5$secondaryArchSuffix + devel:liblapack$secondaryArchSuffix + devel:libopenblas$secondaryArchSuffix + devel:libsuperlu$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:g++$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + cmd:strip$secondaryArchSuffix + " + +defineDebugInfoPackage mlpack$secondaryArchSuffix \ + $libDir/libmlpack.so.2.2 \ + $binDir/mlpack_adaboost$secondaryArchSuffix \ + $binDir/mlpack_allkfn$secondaryArchSuffix \ + $binDir/mlpack_allknn$secondaryArchSuffix \ + $binDir/mlpack_allkrann$secondaryArchSuffix \ + $binDir/mlpack_approx_kfn$secondaryArchSuffix \ + $binDir/mlpack_cf$secondaryArchSuffix \ + $binDir/mlpack_dbscan$secondaryArchSuffix \ + $binDir/mlpack_decision_stump$secondaryArchSuffix \ + $binDir/mlpack_decision_tree$secondaryArchSuffix \ + $binDir/mlpack_det$secondaryArchSuffix \ + $binDir/mlpack_emst$secondaryArchSuffix \ + $binDir/mlpack_fastmks$secondaryArchSuffix \ + $binDir/mlpack_gmm_generate$secondaryArchSuffix \ + $binDir/mlpack_gmm_probability$secondaryArchSuffix \ + $binDir/mlpack_gmm_train$secondaryArchSuffix \ + $binDir/mlpack_hmm_generate$secondaryArchSuffix \ + $binDir/mlpack_hmm_loglik$secondaryArchSuffix \ + $binDir/mlpack_hmm_train$secondaryArchSuffix \ + $binDir/mlpack_hmm_viterbi$secondaryArchSuffix \ + $binDir/mlpack_hoeffding_tree$secondaryArchSuffix \ + $binDir/mlpack_kernel_pca$secondaryArchSuffix \ + $binDir/mlpack_kfn$secondaryArchSuffix \ + $binDir/mlpack_kmeans$secondaryArchSuffix \ + $binDir/mlpack_knn$secondaryArchSuffix \ + $binDir/mlpack_krann$secondaryArchSuffix \ + $binDir/mlpack_lars$secondaryArchSuffix \ + $binDir/mlpack_linear_regression$secondaryArchSuffix \ + $binDir/mlpack_local_coordinate_coding$secondaryArchSuffix \ + $binDir/mlpack_logistic_regression$secondaryArchSuffix \ + $binDir/mlpack_lsh$secondaryArchSuffix \ + $binDir/mlpack_mean_shift$secondaryArchSuffix \ + $binDir/mlpack_nbc$secondaryArchSuffix \ + $binDir/mlpack_nca$secondaryArchSuffix \ + $binDir/mlpack_nmf$secondaryArchSuffix \ + $binDir/mlpack_pca$secondaryArchSuffix \ + $binDir/mlpack_perceptron$secondaryArchSuffix \ + $binDir/mlpack_preprocess_binarize$secondaryArchSuffix \ + $binDir/mlpack_preprocess_describe$secondaryArchSuffix \ + $binDir/mlpack_preprocess_imputer$secondaryArchSuffix \ + $binDir/mlpack_preprocess_split$secondaryArchSuffix \ + $binDir/mlpack_radical$secondaryArchSuffix \ + $binDir/mlpack_range_search$secondaryArchSuffix \ + $binDir/mlpack_softmax_regression$secondaryArchSuffix \ + $binDir/mlpack_sparse_coding$secondaryArchSuffix + +BUILD() +{ + mkdir -p build && cd "$_" + + cmake .. \ + -DCMAKE_INSTALL_BINDIR=$binDir \ + -DCMAKE_INSTALL_DATADIR=$dataDir \ + -DCMAKE_INSTALL_DOCDIR=$docDir \ + -DCMAKE_INSTALL_INCLUDEDIR=$includeDir \ + -DCMAKE_INSTALL_LIBDIR=$libDir \ + -DCMAKE_INSTALL_MANDIR=$manDir + + # mlpack easily eats up all your ram, so don't do parallel jobs! + make +} + +INSTALL() +{ + cd build + make install $jobArgs + + mkdir -p $includeDir + mv $prefix/include/* $includeDir/ + rmdir $prefix/include + + prepareInstalledDevelLib libmlpack + + fixPkgconfig + + packageEntries devel \ + $developDir +} + +TEST() +{ + cd build + make test +} diff --git a/sci-libs/mlpack/patches/mlpack-2.2.5.patchset b/sci-libs/mlpack/patches/mlpack-2.2.5.patchset new file mode 100644 index 000000000..515a4a4f1 --- /dev/null +++ b/sci-libs/mlpack/patches/mlpack-2.2.5.patchset @@ -0,0 +1,22 @@ +From 371ded568630d4a1633585d310511fd2ee8a5236 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= +Date: Tue, 12 Dec 2017 10:28:32 +0100 +Subject: Haiku got no -lrt + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ae70f2d..7ce146e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -121,7 +121,7 @@ if(BUILD_WITH_COVERAGE) + endif() + + # For clock_gettime(). +-if (UNIX AND NOT APPLE) ++if (UNIX AND NOT APPLE AND NOT HAIKU) + set(MLPACK_LIBRARIES ${MLPACK_LIBRARIES} "rt") + endif () + +-- +2.15.0 +