f7acaea
%define shver 2
e6b06f5
%global libdir_libsvm %{_libdir}/libsvm
1637d3c
%global python3_libsvm_dir %{python3_sitearch}/libsvm
9587f98
%global maven_group_id tw.edu.ntu.csie
1637d3c
%global pom_file_version 3.24
b04bddc
%global pom_file_name JPP.%{maven_group_id}-%{name}.pom
4e0fc8a
%global octpkg %{name}
1637d3c
%global release_date 2021-04-14
1637d3c
%global cpp_std c++17
1637d3c
e6b06f5
%bcond_without java
e6b06f5
%bcond_without maven
578d57f
fa71eaa
Name:           libsvm
1637d3c
Version:        3.25
edee043
Release:        3%{?dist}
fa71eaa
Summary:        A Library for Support Vector Machines
fa71eaa
fa71eaa
License:        BSD
4e0fc8a
URL:            https://www.csie.ntu.edu.tw/~cjlin/libsvm/
4e0fc8a
Source0:        https://www.csie.ntu.edu.tw/~cjlin/libsvm/%{name}-%{version}.tar.gz
4e0fc8a
Source1:        https://www.csie.ntu.edu.tw/~cjlin/libsvm/log
4e0fc8a
Source2:        https://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf
4e0fc8a
Source3:        libsvm-svm-toy-qt.desktop
4e0fc8a
Source4:        LibSVM-svm-toy-48.png
4e0fc8a
# Java interface files
1637d3c
Source5:        https://repo1.maven.org/maven2/tw/edu/ntu/csie/%{name}/%{pom_file_version}/%{name}-%{pom_file_version}.pom
4e0fc8a
# Octave interface files
4e0fc8a
Source6:        libsvm.INDEX
4e0fc8a
Source7:        libsvm.CITATION
4e0fc8a
Source8:        libsvm.DESCRIPTION
f7acaea
Patch0:         %{name}.packageMain.patch
f7acaea
Patch2:         %{name}.javaDir.patch
f7acaea
Patch4:         %{name}.toolsDir.patch
e6b06f5
Patch5:         %{name}.svm-toy-qt5.patch
fa71eaa
fa71eaa
%description
fa71eaa
LIBSVM is an integrated software for support vector classification,
fa71eaa
(C-SVC, nu-SVC ), regression (epsilon-SVR, nu-SVR) and distribution
fa71eaa
estimation (one-class SVM ). It supports multi-class classification.
fa71eaa
fa71eaa
%package devel
4e0fc8a
Summary:        Development files for libsvm in C, C++ and Java
4e0fc8a
BuildRequires:  gcc-c++
0a8af8a
BuildRequires:  make
4e0fc8a
Requires:       %{name}%{?_isa} = %{version}-%{release}
fa71eaa
4e0fc8a
%description    devel
4e0fc8a
Header and object files for libsvm in C, C++ and Java.
fa71eaa
Install this package if you want to develop programs with libsvm.
fa71eaa
4e0fc8a
%package -n     python3-%{name}
4e0fc8a
Summary:        Python3 tools and interfaces for libsvm
4e0fc8a
BuildRequires:  python3-devel
1637d3c
BuildRequires:  %{py3_dist scipy}
1637d3c
BuildRequires:  %{py3_dist setuptools}
e6b06f5
#gnuplot is required by easy.py
e6b06f5
Requires:       gnuplot
e6b06f5
e6b06f5
%description -n python3-%{name}
e6b06f5
Python3 tools and interfaces for libsvm.
e6b06f5
Install this package if you want to develop
e6b06f5
programs with libsvm in Python3.
e6b06f5
4e0fc8a
%package        java
4e0fc8a
Summary:        Java tools and interfaces for libsvm
1637d3c
BuildRequires:  java-devel
1637d3c
BuildRequires:  javapackages-tools
e6b06f5
BuildRequires:  maven-local
4e0fc8a
BuildArch:      noarch
1637d3c
Requires:       javapackages-tools
4e0fc8a
Requires:       %{name} = %{version}-%{release}
6f17cf8
4e0fc8a
%description    java
6f17cf8
Java tools and interfaces for libsvm.
d766271
Install this package if you want to develop
6f17cf8
programs with libsvm in Java.
637d548
4e0fc8a
%package        javadoc
4e0fc8a
Summary:        Javadoc for libsvm
1637d3c
BuildRequires:  java-devel
1637d3c
BuildRequires:  javapackages-tools
637d548
BuildArch:      noarch
4e0fc8a
Requires:       %{name}-java = %{version}-%{release}
637d548
4e0fc8a
%description    javadoc
637d548
Javadoc for libsvm
6f17cf8
4e0fc8a
%package -n     octave-%{name}
4e0fc8a
Summary:        Octave interface to libsvm
4e0fc8a
BuildRequires:  octave-devel
4e0fc8a
Requires:       %{name}%{?_isa} = %{version}-%{release}
1637d3c
Requires:       octave
4e0fc8a
4e0fc8a
%description -n octave-%{name}
4e0fc8a
Octave interface for libsvm.
4e0fc8a
4e0fc8a
%package        svm-toy-qt
4e0fc8a
Summary:        QT version of svm-toy (libsvm demonstration program)
df27734
BuildRequires:  desktop-file-utils
e6c4366
BuildRequires:  pkgconfig
e6b06f5
BuildRequires:  qt5-qtbase-devel
4e0fc8a
Requires:       %{name}%{?_isa} = %{version}-%{release}
1637d3c
Requires:       hicolor-icon-theme
085b892
4e0fc8a
%description    svm-toy-qt
d766271
svm-toy is a libsvm demonstration program which has a qt-GUI to
085b892
display the derived separating hyperplane.
6f17cf8
fa71eaa
%prep
4e0fc8a
%autosetup -p0
4e0fc8a
cp -p %{SOURCE1} ChangeLog
4e0fc8a
cp -p %{SOURCE2} %{SOURCE3} .
4e0fc8a
cp -p %{SOURCE4} %{name}-svm-toy-qt-48.png
df27734
e6b06f5
# Fix the error: narrowing conversion
4e0fc8a
sed -e "s|{x,y,v}|{x,y,(signed char) v}|" \
4e0fc8a
    -e "s|{x,y,current_value}|{x,y,(signed char) current_value}|" \
4e0fc8a
    -e "s|(double)event->y()/YLEN, current_value|(double)event->y()/YLEN,(signed char) current_value|" \
4e0fc8a
    -i.narrowing svm-toy/qt/svm-toy.cpp
e6b06f5
1637d3c
# Update the POM file, which is stuck on version 3.24
9587f98
# pom_xpath_set does not work in rpm-4.11.1
9587f98
# as it generated something like
9587f98
# <version>
9587f98
# 
9587f98
# 3.20
9587f98
#
9587f98
# 
9587f98
# </version>
4e0fc8a
# Also, the latest pom added parent tags for org.sonatype.oss.oss-parent, which
4e0fc8a
# is deprecated and slated for removal from Fedora.  It isn't needed, so remove
4e0fc8a
# it.
4e0fc8a
sed 's/%{pom_file_version}/%{version}/;/<parent>/,/<\/parent>/d' %{SOURCE5} \
4e0fc8a
    > %{name}.pom
e6b06f5
e6b06f5
%mvn_file %{maven_group_id}:%{name} %{maven_group_id}/%{name}
9587f98
4e0fc8a
# Fix line endings
4e0fc8a
sed -i.orig 's/\r//' FAQ.html
4e0fc8a
touch -r FAQ.html.orig FAQ.html
4e0fc8a
rm FAQ.html.orig
4e0fc8a
fa71eaa
%build
1637d3c
# Build the library
e6b06f5
make all RPM_CFLAGS="$RPM_OPT_FLAGS" LIBDIR="%{_libdir}" CPP_STD="%{cpp_std}"
6f17cf8
4e0fc8a
# Build the Java interface
e6b06f5
%mvn_artifact %{name}.pom java/%{name}.jar
1637d3c
make -C java all javadoc
e6b06f5
4e0fc8a
# Build the octave interface
4e0fc8a
cd matlab
4e0fc8a
octave -H -q --no-window-system --no-site-file << EOF
4e0fc8a
make
4e0fc8a
EOF
4e0fc8a
cd -
4e0fc8a
1637d3c
# Build the python interface
1637d3c
cd python
1637d3c
%py3_build
1637d3c
cd -
1637d3c
fa71eaa
%install
0a8af8a
%make_install LIBDIR=%{_libdir} LIBSVM_VER="%{version}" CPP_STD="%{cpp_std}"
1637d3c
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/
1637d3c
cp -p %{name}-svm-toy-qt-48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/
1637d3c
mkdir -p %{buildroot}%{_datadir}/applications
1637d3c
cp -p %{name}-svm-toy-qt.desktop %{buildroot}%{_datadir}/applications
9587f98
1637d3c
ln -s %{name}.so.%{shver} %{buildroot}%{_libdir}/%{name}.so
d766271
4e0fc8a
# Python
1637d3c
cd python
1637d3c
%py3_install
1637d3c
cd -
1637d3c
install -p -m 755 tools/*.py %{buildroot}%{python3_libsvm_dir}
1637d3c
for p in %{buildroot}%{python3_libsvm_dir}/*.py; do
1637d3c
    sed -i.orig -e 's|#!/usr/bin/env python|#!%{python3}|' $p
1637d3c
    touch -r $p.orig $p
1637d3c
    rm $p.orig
e6b06f5
done
e6b06f5
cd tools
e6b06f5
for p in *.py; do
1637d3c
    ln -s %{python3_libsvm_dir}/$p %{buildroot}%{_bindir}/svm-$p
e6b06f5
done
e6b06f5
cd -
1637d3c
chmod 0755 %{buildroot}%{python3_libsvm_dir}/{commonutil,svm,svmutil}.py
b04bddc
e6b06f5
# Java
1637d3c
make -C java install JAVA_TARGET_DIR="%{buildroot}%{_javadir}"
1637d3c
mkdir -p  %{buildroot}%{_javadocdir}/%{name}
1637d3c
cp -p -R java/docs/* %{buildroot}%{_javadocdir}/%{name}
637d548
e6b06f5
%mvn_install
b04bddc
4e0fc8a
# Octave
4e0fc8a
# FIXME: the *.mex files are arch-specific, so they should go into octpkglibdir
4e0fc8a
# like the *.oct files do.  But octave refuses to load them from there.  It will
4e0fc8a
# only load them if they are in octpkgdir.  I don't know why.
4e0fc8a
mkdir -p %{buildroot}%{octpkgdir}/packinfo
4e0fc8a
cp -p matlab/*.mex %{buildroot}%{octpkgdir}
4e0fc8a
cp -p COPYRIGHT %{buildroot}%{octpkgdir}/packinfo/COPYING
4e0fc8a
cp -p %{SOURCE6} %{buildroot}%{octpkgdir}/packinfo/INDEX
4e0fc8a
cp -p %{SOURCE7} %{buildroot}%{octpkgdir}/packinfo/CITATION
4e0fc8a
sed 's/@VERSION@/%{version}/;s/@DATE@/%{release_date}/' %{SOURCE8} \
4e0fc8a
    > %{buildroot}%{octpkgdir}/packinfo/DESCRIPTION
4e0fc8a
cat > %{buildroot}%{octpkgdir}/packinfo/on_uninstall.m << EOF
4e0fc8a
function on_uninstall (desc)
4e0fc8a
  error ('Can not uninstall %%s installed by the redhat package manager', desc.name);
4e0fc8a
endfunction
4e0fc8a
EOF
4e0fc8a
e6b06f5
# Desktop files
e6b06f5
desktop-file-install --delete-original \
e6b06f5
  --dir=%{buildroot}%{_datadir}/applications \
1637d3c
  %{buildroot}%{_datadir}/applications/%{name}-svm-toy-qt.desktop
deebb60
1637d3c
# Rename READMEs to avoid name collisions
1637d3c
mv python/README python/README-Python
1637d3c
mv tools/README tools/README-Tools
1637d3c
cp -p README java/README-Java
deebb60
4e0fc8a
%post -n octave-%{name}
4e0fc8a
%octave_cmd pkg rebuild
4e0fc8a
4e0fc8a
%preun -n octave-%{name}
4e0fc8a
%octave_pkg_preun
4e0fc8a
4e0fc8a
%postun -n octave-%{name}
4e0fc8a
%octave_cmd pkg rebuild
4e0fc8a
fa71eaa
%files
085b892
%doc COPYRIGHT FAQ.html ChangeLog guide.pdf
fa71eaa
%{_bindir}/svm-predict
fa71eaa
%{_bindir}/svm-scale
fa71eaa
%{_bindir}/svm-train
1637d3c
%dir %{_datadir}/%{name}/
eeaa2da
%{_datadir}/%{name}/examples
d766271
%{_libdir}/%{name}.so.%{shver}
eeaa2da
fa71eaa
%files devel
fa71eaa
%doc README
eeaa2da
%{_includedir}/%{name}/
7e0dcdf
%{_libdir}/%{name}.so
fa71eaa
4e0fc8a
%files -n octave-%{name}
4e0fc8a
%{octpkgdir}/
4e0fc8a
e6b06f5
%files -n python3-%{name}
e6b06f5
%doc python/README-Python tools/README-Tools
1637d3c
%{python3_libsvm_dir}/
1637d3c
%{python3_sitearch}/libsvm*.egg-info/
e6b06f5
%{_bindir}/svm-*.py
e6b06f5
9587f98
%files java -f .mfiles
e3d9a94
%doc java/README-Java java/test_applet.html
e3d9a94
%{_javadir}/%{name}.jar
1637d3c
637d548
%files javadoc
1637d3c
%{_javadocdir}/%{name}/
fa71eaa
085b892
%files svm-toy-qt
1637d3c
%doc README
085b892
%{_bindir}/svm-toy-qt
de6acf6
%{_datadir}/icons/hicolor/48x48/apps/%{name}-svm-toy-qt-48.png
45474b1
%{_datadir}/applications/*%{name}-svm-toy-qt.desktop
085b892
fa71eaa
%changelog
edee043
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.25-3
edee043
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
edee043
06e7afd
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 3.25-2
06e7afd
- Rebuilt for Python 3.10
06e7afd
1637d3c
* Wed Apr 14 2021 Jerry James <loganjerry@gmail.com> - 3.25-1
1637d3c
- Version 3.25
1637d3c
- Drop support for RHEL 6
1637d3c
- Build for JDK 1.8 instead of 1.7
1637d3c
- Python subpackage is archful again
1637d3c
- Python subpackage requires scipy
1637d3c
- Add missing dependency on octave to the octave subpackage
1637d3c
- Miscellaneous spec file cleanups
1637d3c
72c463c
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.24-6
72c463c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
72c463c
5c38d87
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.24-5
5c38d87
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
5c38d87
f2288ca
* Sat Jul 11 2020 Jiri Vanek <jvanek@redhat.com> - 3.24-4
f2288ca
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
f2288ca
4e43a98
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 3.24-3
4e43a98
- Rebuilt for Python 3.9
4e43a98
73a6a12
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.24-2
73a6a12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
73a6a12
4e0fc8a
* Wed Sep 11 2019 Jerry James <loganjerry@gmail.com> - 3.24-1
4e0fc8a
- Upstream update to 3.24
4e0fc8a
- Make Java and Python subpackages be noarch
4e0fc8a
- Add octave subpackage
4e0fc8a
- Miscellaneous spec file cleanups
4e0fc8a
a1b1383
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 3.23-7
a1b1383
- Rebuilt for Python 3.8
a1b1383
c86f450
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.23-6
c86f450
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
c86f450
647ece9
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.23-5
647ece9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
647ece9
5d63828
* Tue Jan 15 2019 Miro Hrončok <mhroncok@redhat.com> - 3.23-4
5d63828
- Remove Python 2 subpackage (#1655696)
5d63828
39907b4
* Tue Aug 28 2018 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 3.23-3
39907b4
- Fix Provides/Obsoletes for old python subpackage
39907b4
637d548
* Thu Jul 26 2018 Ding-Yi Chen <dchen@redhat.com> - 3.23-2
637d548
- Add -javadoc subpackage
637d548
- Use macro rhel instead of el_version
637d548
- qt5 in EL should be qt5-qtbase
637d548
e6b06f5
* Thu Jul 19 2018 Ding-Yi Chen <dchen@redhat.com> - 3.23-1
e6b06f5
- Upstream update to 3.23
e6b06f5
  + add more digits of predicted file, model file, scaled data and data
e6b06f5
    from matlab libsvmwrite: to .17g
e6b06f5
  + svm-toy-gtk is no longer supported
e6b06f5
  + Dependency qt is updated to qt5
e6b06f5
- probability output:
e6b06f5
  + if 2 classes, directly output the predited probabilities
e6b06f5
    rather than run the iterative algorithms for multi-class situations
e6b06f5
- java:
e6b06f5
  + libsvm.jar generated by java 1.7 rather than 1.5
e6b06f5
  + change the use of "_" in svm.java, which won't be allowed in later java
e6b06f5
- python:
e6b06f5
  + split to python2 and python3
e6b06f5
e584449
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.21-8
e584449
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
e584449
0bb2e73
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.21-7
0bb2e73
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
0bb2e73
4add8ae
* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 3.21-6
4add8ae
- Python 2 binary package renamed to python2-libsvm
4add8ae
  See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
4add8ae
b3baabd
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.21-5
b3baabd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
b3baabd
4ad7e86
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.21-4
4ad7e86
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
4ad7e86
8a12966
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.21-3
8a12966
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
8a12966
39cb09d
* Mon Nov 07 2016 Than Ngo <than@redhat.com> - 3.21-2
39cb09d
- bz#1392340, enable java part on ppc64
39cb09d
f7acaea
* Wed Jul 20 2016 Ding-Yi Chen <dchen@redhat.com> - 3.21-1
f7acaea
- Upstream update to 3.21
e6b06f5
- Fixes Bug 1277450 - libsvm(-java) remove versioned jars from {_javadir}
Björn Esser 268e525
48ac61a
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.20-5
48ac61a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
48ac61a
69d0f19
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 3.20-4
69d0f19
- Rebuilt for GCC 5 C++11 ABI change
69d0f19
c4a36f6
* Tue Jan 20 2015 Ding-Yi Chen <dchen@redhat.com> - 3.20-3
c4a36f6
- Fix for RHEL6
c4a36f6
c8e73cd
* Tue Jan 20 2015 Ding-Yi Chen <dchen@redhat.com> - 3.20-2
9587f98
- Upstream update to 3.20
9587f98
9587f98
* Fri Dec 19 2014 Jerry James <loganjerry@gmail.com> - 3.18-7
9587f98
- Install maven POM and depmaps (bz 1175898)
9587f98
7d22c22
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.18-6
7d22c22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
7d22c22
Richard Hughes 4662e10
* Thu Jul 10 2014 Richard Hughes <richard@hughsie.com> - 3.18-5
Richard Hughes 4662e10
- Do not use vendor prefixes on Fedora
Richard Hughes 4662e10
728a554
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.18-4
728a554
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
728a554
578d57f
* Mon Apr 28 2014 Ding-Yi Chen <dchen@redhat.com> - 3.18-3
578d57f
- EPEL5 desktop files need vendor.
578d57f
5459b8a
* Mon Apr 28 2014 Ding-Yi Chen <dchen@redhat.com> - 3.18-2
5459b8a
- Fixed Bug 1090844 - libsvm-java has unresolved dependencies on epel6 testing
5459b8a
61e0772
* Tue Apr 22 2014 Ding-Yi Chen <dchen@redhat.com> - 3.18-1
61e0772
- Upstream update to 3.18
61e0772
- svm.cpp and svm-scale.c: check return values of fscanf
e6b06f5
- matlab interface: Makefile no longer handles octave
61e0772
  because make.m should be used
61e0772
4063726
* Fri Mar 28 2014 Michael Simacek <msimacek@redhat.com> - 3.17-4
4063726
- Use Requires: java-headless rebuild (#1067528)
4063726
09712fb
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.17-3
09712fb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
09712fb
45474b1
* Thu Apr 25 2013 Jon Ciesla <limburgher@gmail.com> - 3.17-2
45474b1
- Drop desktop vendor tag.
45474b1
0f3e08b
* Sat Apr 13 2013 Ding-Yi Chen <dchen@redhat.com> - 3.17-1
0f3e08b
- Upstream update from 3.13 to 3.17
0f3e08b
  svm.c and svm.h:
0f3e08b
    add sv_indices in model structure, so users can know which training instances are SVs
0f3e08b
    two library funs svm_get_sv_indices and svm_get_nr_sv are added
0f3e08b
    max_iter warning moved to stderr so -q won't disable it
0f3e08b
  svm-train.c:
0f3e08b
    usage modified to stress that multiclass is supported
0f3e08b
  svm-predict.c:
0f3e08b
    add -q for svm-predict
0f3e08b
  svm-scale.c:
0f3e08b
    issue a warning if feature indices do not start from 1
0f3e08b
    issue a warning for inconsistency between scaling-factor file and input file
0f3e08b
  tools:
0f3e08b
    subset.py is written to be much faster
0f3e08b
  fix the bug of not freeing sv_indices
0f3e08b
  tools/grid.py:
0f3e08b
    -null option: allow the search on C or g only
0f3e08b
    -resume option: resume tasks from an earlier run
0f3e08b
     can be called as a python module
0f3e08b
  python interface:
0f3e08b
    local package searched first
0f3e08b
  libsvm options can be str or list
0f3e08b
  param.show() becomes print(param)
0f3e08b
  tools/:
0f3e08b
    easy.py fails in 3.15. Fix it by modifying grid.py
0f3e08b
  svm.cpp:
0f3e08b
    if class labels are 1 and -1, ensure labels[0] = 1 and labels[1] = -1
0f3e08b
    initialize model->sv_indices as null in svm_load_model
0f3e08b
    if nr_fold > # data, change nr_fold to be # data and ro leave-one-out cv
0f3e08b
  matlab interface:
0f3e08b
    handle the problem where output variables are not specified
0f3e08b
92087dd
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.12-3
92087dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
92087dd
066eb59
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.12-2
066eb59
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
066eb59
c8f3ad5
* Wed Apr 04 2012 Ding-Yi Chen <dchen@redhat.com> - 3.12-1
c8f3ad5
- Upstream update:
0f3e08b
  svm-toy: support loading/saving of regression data
0f3e08b
  python interface: handle the issue of the "0th" feature if using lists
0f3e08b
  tools/grid.py: not redrawing contour if c,g, cv doesn't change
c8f3ad5
  add setlocale when saving and loading model so not affected by users' locale
c8f3ad5
628f6b5
* Thu Jan 12 2012 Ding-Yi Chen <dchen@redhat.com> - 3.11-3
628f6b5
- Fixed Bug 646154 - libsvm-python's pth is not set correctly
628f6b5
0b558ee
* Fri Jun 17 2011 Ding-Yi Chen <dchen@redhat.com> - 3.11-1
0b558ee
- Upstream update:
628f6b5
  + Set max number of iterations in the main loop of solvers
628f6b5
  + matlab:
628f6b5
    new make.m for unix/mac/windows and for matlab/octave
628f6b5
  + matlab and python:
628f6b5
    fix a problem that decision values returned by svmpredict is empty if number of classes = 1
0b558ee
2d694e4
* Fri Jun 17 2011 Ding-Yi Chen <dchen@redhat.com> - 3.1-2
2d694e4
- Fix the build error on EL-5
2d694e4
921d062
* Tue Jun 14 2011 Ding-Yi Chen <dchen@redhat.com> - 3.1-1
921d062
- svm tools is now installed in /usr/bin as svm-*.py
921d062
  i.e. tools/easy.py is linked as svm-easy.py.
921d062
- Upstream update:
921d062
  + MATLAB interface:
921d062
  + Merge matlab interface to core libsvm
921d062
  + Using mexPrintf() when calling info() in MATLAB interface.
921d062
  + Both 32- and 64-bit windows binary files are provided
921d062
  + Java:
921d062
    Math.random is replaced by Random in java interface
921d062
  + Python interface:
921d062
    subroutines to get SVs
921d062
    relative path to load *.dll and *.so
921d062
  + svm.cpp:
921d062
    null pointer check before release memory in svm_free_model_content()
921d062
    svm_destroy_model() no longer supported.
921d062
  + svm-train.c and svm-predict.c
921d062
    Better format check in reading data labels
921d062
  + svm-toy:
921d062
    fix the svm_toy dialog path
921d062
  + tools:
921d062
    Using new string formatting/encoding in tools/*.py
921d062
    clearer png output, fix grid.py legend
921d062
1ee5d6d
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0-3
1ee5d6d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
1ee5d6d
d766271
* Tue Dec 14 2010 Ding-Yi Chen <dchen@redhat.com> - 3.0-2
d766271
- Fixed [Bug 661404] New: Wrong symbolic link libsvm.so
d766271
56c7459
* Mon Nov 08 2010 Ding-Yi Chen <dchen@redhat.com> - 3.0-1
56c7459
- Fixed the spelling errors of svm-toy-gtk and svm-toy-qt
56c7459
- Upstream update:
56c7459
  * Move model structure to svm.h
56c7459
  * Two functions for freeing a model (content or the whole model)
56c7459
  * QD from Qfloat to double (better precision because SSE on 64-bit machines less accurate than i387 on 32-bit
d766271
  * exit status for checkdata.py
56c7459
  * old python interface (swig) is removed
56c7459
dc4fc9b
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 2.91-2
dc4fc9b
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
dc4fc9b
fc43a23
* Wed Apr 07 2010 Ding-Yi Chen <dchen@redhat.com> - 2.91-1
fc43a23
- Fixed Bug 564887 - FTBFS libsvm-2.90-3.fc13
fc43a23
- Upstream update:
61e0772
  * completely new python interface using ctype
61e0772
  * new way to set the print_string function
61e0772
  * Java: able to load model from a BufferedReader directly
61e0772
  * fix grid.py so -log2c can be run under python 2.6 or after
843d3a8
c3790ba
* Thu Nov 05 2009 Ding-Yi Chen <dchen@redhat.com> - 2.90-2
c3790ba
- Obsoletes libsvm-java for ppc and ppc64.
c3790ba
a27d7fe
* Wed Nov 04 2009 Ding-Yi Chen <dchen@redhat.com> - 2.90-1
a27d7fe
- Upstream update to 2.9, change to 2.90 for conveniently update.
a27d7fe
  + tools/*.py can be run under python 3.0
a27d7fe
  + svm_set_quiet() in python interface to disable outputs
a27d7fe
  + check gamma < 0
a27d7fe
  + internal functions to be static
a27d7fe
e3d9a94
* Fri Sep 18 2009 Ding-Yi Chen <dchen@redhat.com> - 2.89-4
e3d9a94
- Fixed [Bug 524108] put libsvm.jar into _javadir
e3d9a94
  + Move livsvm.jar to _javadir
e3d9a94
  + Move test_applet.html to _datadir/doc/libsvm-<version>
e3d9a94
- Buildrequire changed to java-devel>=1.5.0, jpackage-utils
e3d9a94
- Require changed to java>=1.5.0, jpackage-utils
e3d9a94
e3d9a94
* Wed Sep 16 2009 Ding-Yi Chen <dchen@redhat.com> - 2.89-3
9ef4f9e
- Fix the building for EL-5
d766271
  Note that libsvm-java on ppc and ppc64 for EL-5 is excluded,
9ef4f9e
  as java-1.6.0-openjdk-devel for them do not exist yet.
9ef4f9e
- Change the Java buildrequires from java-sdk to java-1.6.0-openjdk-devel
9ef4f9e
- Fix [Bug 521194] Python: 'import libsvm' doesn't work.
9ef4f9e
   By adding __init__.py to libsvm_python_dir
d766271
fb5d769
* Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.89-2
fb5d769
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
fb5d769
0d80009
* Fri Apr 03 2009 Ding-Yi Chen <dchen@redhat.com> - 2.89-1
0d80009
- Upstream Update to 2.89:
0d80009
  + reduce input/loading time of svm-train/svm-predict by half
0d80009
  + pointer function so users can specify their own outputs
d766271
  + remove info_flush()
0d80009
  + a extern variable libsvm_version
0d80009
  + svm-train -q option (disable outputs)
0d80009
  + svm-scale: warning if more nonzero produced
0d80009
  + easy.py: popel.communiate() to avoid some deadlock (if lots of
0d80009
    outputs when #classes is large)
04ccb3e
888cdbf
* Mon Nov 10 2008 Ding-Yi Chen <dchen@redhat.com> - 2.88-2
b2087ea
- Fix java BuildRequire and Build
d766271
- javadoc have been removed because ppc and ppc64 do not have a
0d80009
  suitable package to build javadoc in F-8, nor does javadoc
0d80009
  provide much useful information.
0d80009
b2087ea
af6ee55
* Wed Nov 05 2008 Ding-Yi Chen <dchen@redhat.com> - 2.88-0
af6ee55
- Note:
af6ee55
  + SO version now follows upstream, i.e. SHVER=1, as upstream start to build shared library now.
af6ee55
    Be aware that previously SO version of libsvm.so is libsvm.so.2.86, which looks higher than
af6ee55
    the current SO version libsvm.so.1.
af6ee55
  + Replaced java-1.5.0-gcj-devel with  java-1.6.0-openjdk-devel.
af6ee55
  + java sub-package now have javadoc.
af6ee55
- Upstream update
af6ee55
  + From 2.87: 2008/10/13
af6ee55
    * svm-toy/qt updated to qt4 from qt3
af6ee55
    * fix a bug in svm-scale.c
af6ee55
    * max feature index of -r file is considered
af6ee55
    * Makefile: add make lib; add -Wconversion and -fPIC in Makefile
af6ee55
    * Add "rb" in load_model of svm.cpp
af6ee55
    * Simplify do_shrinking of svm.cpp
af6ee55
    * Change the order of loops in reconstrict_gradient of svm.cpp
af6ee55
    * save the number of kernel evaluations
af6ee55
    * Add python/setup.py
af6ee55
  + From 2.88: 2008/10/30
af6ee55
    * better gradient reconstructions
af6ee55
    * issue a warning when -h 0 may be faster
af6ee55
61e0772
* Tue Apr 29 2008 Ding-Yi Chen <dchen@redhat.com> - 2.86-13
61c60df
- Fix svm-toy-qt clear button does not clear.
61c60df
  (from Hsiang-Fu Yu in National Taiwan University)
d766271
61c60df
8915963
* Thu Apr 3 2008 Ding-Yi Chen <dchen@redhat.com> - 2.86-12
8915963
- Correct changelog date
8915963
8915963
* Thu Apr 3 2008 Ding-Yi Chen <dchen@redhat.com> - 2.86-11
1556c90
- Fix the Qt path problem
1556c90
8915963
* Wed Apr 2 2008 Ding-Yi Chen <dchen@redhat.com> - 2.86-4
e6c4366
- Support both Qt3 for F8 and earlier, and Qt4 for F9
e6c4366
8915963
* Tue Apr 1 2008 Ding-Yi Chen <dchen@redhat.com> - 2.86-0
04c3d61
- Upstream update to 2.86
04c3d61
  - svm-scale for java
04c3d61
  - version number in svm.h and svm.m4
d766271
  - rename svmtrain.exe to svm-train.exe
04c3d61
  - python: while 1 --> while True, Popen -> call
04c3d61
  - show best parameters on the contour of grid.py
d766271
- LIBSVM_VER_MAJOR and LIBSVM_VER_MINOR are defined in libsvm.spec instead in
04c3d61
de6acf6
* Tue Mar 11 2008 Ding-Yi Chen <dchen@redhat.com> - 2.85-6
04c3d61
- Fix build error.
de6acf6
de6acf6
* Mon Mar 10 2008 Ding-Yi Chen <dchen@redhat.com> - 2.85-5
df27734
- [Bug 436392]: Fix by copy from right place.
df27734
-  Add desktop files and icons for svm-toy-gtk and svm-toy-qt
df27734
61e0772
* Mon Feb 11 2008 Ding-Yi Chen <dchen@redhat.com> - 2.85-4
df27734
- Move gnuplot from BuildRequires to Requires
df27734
7e0dcdf
* Thu Feb 07 2008 Ding-Yi Chen <dchen@redhat.com> - 2.85-3
7e0dcdf
- Fix linker name (libsvm.so)
7e0dcdf
- Linked to dynamic libraries
7e0dcdf
fe7c948
* Tue Feb 05 2008 Ding-Yi Chen <dchen@redhat.com> - 2.85-2
fe7c948
- Fix svm-toy-qt build error
fe7c948
fe7c948
* Tue Feb 05 2008 Ding-Yi Chen <dchen@redhat.com> - 2.85-1
fe7c948
- Fix svm-toy-gtk build error
95d9efd
085b892
* Mon Feb 04 2008 Ding-Yi Chen <dchen@redhat.com> - 2.85-0
085b892
- Upgrade to 2.85
085b892
- Include guide.pdf in main package
085b892
- Change the dependent from eclipse-ecj to java-1.5.0-gcj
085b892
- Add svm-toy-gtk
085b892
- Add svm-toy-qt
085b892
61e0772
* Thu Dec 20 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-9
278c449
- [Bug 254091] Comment 19
278c449
- Fix python/Makefile
278c449
eeaa2da
* Thu Dec 13 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-8
eeaa2da
- Fix improper sed.
eeaa2da
- Change ldconfig to /sbin/ldconfig
eeaa2da
- Add gnuplot dependency for libsvm-python, as tools/easy.py needs it.
eeaa2da
6dc1773
* Mon Dec 03 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-7
d766271
- [Bug 254091] Review Request: libsvm - A Library for Support Vector Machines (Comment #12)
6dc1773
61e0772
* Wed Sep 26 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-6
deebb60
- Add defattr to each subpackage
deebb60
- Move libsvm.so to libsvm
deebb60
61e0772
* Mon Sep 24 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-5
6f17cf8
- Split out libsvm-java
6f17cf8
- Add libsvm.so
6f17cf8
a5205db
* Thu Aug 30 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-4
a5205db
- Refined description.
a5205db
- Fix the /tmp/python.ver problem
ce9dd6d
fa71eaa
* Mon Aug 27 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-3
fa71eaa
- Fix dependency problem
fa71eaa
fa71eaa
* Mon Aug 27 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-2
fa71eaa
- Fix mock error
fa71eaa
- Support Python 2.4 and Python 2.5
fa71eaa
fa71eaa
* Mon Aug 27 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-1
fa71eaa
- Fix rpmlint error
fa71eaa
- Move python related files to libsvm-python
fa71eaa
fa71eaa
* Fri Aug 17 2007 Ding-Yi Chen <dchen@redhat.com> - 2.84-0
fa71eaa
- initial packaging
fa71eaa
5c82841