# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 # $Id: Portfile 145012 2016-01-23 20:18:32Z khindenburg@macports.org $ PortSystem 1.0 name libsvm epoch 3 version 3.20 revision 2 categories math maintainers hum openmaintainer license BSD platforms darwin description A free Support Vector Machine implementation. long_description ${description} By Chih-Chung Chang and Chih-Jen Lin of \ National Taiwan University. \"LIBSVM is an integrated \ software for support vector classification, (C-SVC, nu-SVC), \ regression (epsilon-SVR, nu-SVR) and distribution estimation \ (one-class SVM ). It supports multi-class classification.\" homepage http://www.csie.ntu.edu.tw/~cjlin/libsvm/ master_sites ${homepage} checksums rmd160 857fc1fed153e72c894e3579e3b6cb92309e82fb \ sha256 0f122480bef44dec4df6dae056f468c208e4e08c00771ec1b6dae2707fd945be patchfiles patch-Makefile.diff post-patch { reinplace "s|../libsvm.so.2|${prefix}/lib/libsvm.dylib|g" ${worksrcpath}/python/svm.py } use_configure no variant universal {} set libver ${version}.0 build.target all build.args CXX="${configure.cxx} [get_canonical_archflags cxx]" \ PREFIX=${prefix} \ VERSION=${libver} set docdir ${prefix}/share/doc/${name} set libsvm_dir ${prefix}/share/${name} destroot { xinstall -m 755 -W ${worksrcpath} svm-train svm-predict svm-scale ${destroot}${prefix}/bin xinstall -m 644 -W ${worksrcpath} libsvm.a libsvm.${libver}.dylib ${destroot}${prefix}/lib xinstall -m 644 -W ${worksrcpath} svm.h ${destroot}${prefix}/include ln -sf ${name}.${libver}.dylib ${destroot}${prefix}/lib/${name}.dylib xinstall -m 755 -d ${destroot}${docdir} xinstall -m 755 -d ${destroot}${libsvm_dir} xinstall -m 644 -W ${worksrcpath} COPYRIGHT README FAQ.html ${destroot}${docdir} xinstall -m 644 -W ${worksrcpath} heart_scale ${destroot}${libsvm_dir} # install python interface. xinstall -m 755 -d ${destroot}${libsvm_dir}/python xinstall -m 644 -W ${worksrcpath}/python README svm.py svmutil.py ${destroot}${libsvm_dir}/python } variant java description {Install Java JAR files} { depends_run-append bin:java:kaffe post-destroot { set jdir ${destroot}${prefix}/share/java xinstall -m 755 -d ${jdir} file rename ${worksrcpath}/java ${jdir}/${name} } } # TODO: Remove after 2016-05-14. variant python26 requires python27 description {Legacy variant} {} variant python33 requires python34 description {Legacy variant} {} variant python27 description {Install Python 2.7 interface} { depends_lib-append port:python27 post-destroot { install_py 2.7 } } variant python34 description {Install Python 3.4 interface} { depends_lib-append port:python34 post-destroot { install_py 3.4 } } proc install_py {branch} { global frameworks_dir destroot worksrcpath set py_prefix ${frameworks_dir}/Python.framework/Versions/${branch} set dir ${destroot}${py_prefix}/lib/python${branch}/site-packages xinstall -m 755 -d ${dir} xinstall -m 644 -W ${worksrcpath}/python svm.py svmutil.py ${dir} } # TODO: matlab and svm-toy. variant tools description {Install useful tools} { # depends_run-append port:gnuplot # fselect.py, plotroc.py and gridregression.py are taken from # http://www.csie.ntu.edu.tw/~cjlin/libsvmtools/: # fselect/fselect.py, roc/plotroc.py, gridsvr/gridregression.py post-destroot { file rename ${worksrcpath}/tools ${destroot}${libsvm_dir} xinstall -m 755 -W ${filespath} \ fselect.py plotroc.py gridregression.py ${destroot}${libsvm_dir}/tools foreach py {easy.py grid.py fselect.py plotroc.py gridregression.py} { reinplace "s|\"\\.\\./|\"${prefix}/bin/|g" ${destroot}${libsvm_dir}/tools/${py} reinplace "s|\"\\./|\"${libsvm_dir}/tools/|g" ${destroot}${libsvm_dir}/tools/${py} reinplace "s|\"/usr/bin/|\"${prefix}/bin/|g" ${destroot}${libsvm_dir}/tools/${py} } } } default_variants +java +python27 +tools livecheck.type regex livecheck.regex {Version ([0-9.]+) }