diff --git a/.gitignore b/.gitignore
index 288995a..f223af3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,4 @@ libsvm-3.91.tar.gz
/LibSVM-svm-toy-48.png
/libsvm-svm-toy-gtk.desktop
/libsvm-svm-toy-qt.desktop
+/libsvm-3.20.tar.gz
diff --git a/libsvm-3.17.pom b/libsvm-3.17.pom
new file mode 100644
index 0000000..511b1b2
--- /dev/null
+++ b/libsvm-3.17.pom
@@ -0,0 +1,36 @@
+
+ 4.0.0
+ tw.edu.ntu.csie
+ libsvm
+ 3.20
+ jar
+ LIBSVM
+ A Library for Support Vector Machines
+ http://www.csie.ntu.edu.tw/~cjlin/libsvm/
+
+
+ BSD 3-Clause License
+ http://www.csie.ntu.edu.tw/~cjlin/libsvm/COPYRIGHT
+
+
+
+ http://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+http://www.csie.ntu.edu.tw/~cjlin/libsvm+tar.gz
+ http://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+http://www.csie.ntu.edu.tw/~cjlin/libsvm+tar.gz
+
+
+
+ chih-jen.lin
+ Chih-Jen Lin
+ cjlin@csie.ntu.edu.tw
+
+
+
+ 1.5
+ 1.5
+ UTF-8
+
+
+ java
+
+
diff --git a/libsvm-3.18.javaDir.patch b/libsvm-3.20.javaDir.patch
similarity index 100%
rename from libsvm-3.18.javaDir.patch
rename to libsvm-3.20.javaDir.patch
diff --git a/libsvm-3.18.packageMain.patch b/libsvm-3.20.packageMain.patch
similarity index 100%
rename from libsvm-3.18.packageMain.patch
rename to libsvm-3.20.packageMain.patch
diff --git a/libsvm-3.18.pythonDir.patch b/libsvm-3.20.pythonDir.patch
similarity index 100%
rename from libsvm-3.18.pythonDir.patch
rename to libsvm-3.20.pythonDir.patch
diff --git a/libsvm-3.18.svm-toy.patch b/libsvm-3.20.svm-toy.patch
similarity index 100%
rename from libsvm-3.18.svm-toy.patch
rename to libsvm-3.20.svm-toy.patch
diff --git a/libsvm-3.18.toolsDir.patch b/libsvm-3.20.toolsDir.patch
similarity index 100%
rename from libsvm-3.18.toolsDir.patch
rename to libsvm-3.20.toolsDir.patch
diff --git a/libsvm.spec b/libsvm.spec
index 602ed7d..e1996c1 100644
--- a/libsvm.spec
+++ b/libsvm.spec
@@ -3,10 +3,12 @@
%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
%define libdir_libsvm %{_libdir}/libsvm
%define libsvm_python_dir %{python_sitearch}/libsvm
+%global maven_group_id tw.edu.ntu.csie
+%global pom_file_version 3.17
Name: libsvm
-Version: 3.18
-Release: 6%{?dist}
+Version: 3.20
+Release: 1%{?dist}
Summary: A Library for Support Vector Machines
Group: Development/Libraries
@@ -18,6 +20,7 @@ Source2: http://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf
Source3: libsvm-svm-toy-gtk.desktop
Source4: libsvm-svm-toy-qt.desktop
Source5: LibSVM-svm-toy-48.png
+Source6: http://central.maven.org/maven2/tw/edu/ntu/csie/libsvm/%{pom_file_version}/libsvm-%{pom_file_version}.pom
Patch0: %{name}-%{version}.packageMain.patch
Patch1: %{name}-%{version}.pythonDir.patch
Patch2: %{name}-%{version}.javaDir.patch
@@ -26,6 +29,7 @@ Patch4: %{name}-%{version}.toolsDir.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: grep
+%global pom_file_name "JPP.%{maven_group_id}-%{name}.pom"
%if 0%{?rhel} != 0 && 0%{?rhel} <= 5
%define moc_path %{_libdir}/qt4/bin/moc
%define with_vendor "fedora"
@@ -131,6 +135,23 @@ cp %{SOURCE4} .
cp %{SOURCE5} %{name}-svm-toy-gtk-48.png
cp %{SOURCE5} %{name}-svm-toy-qt-48.png
+
+%if "%{no_java}" == "FALSE"
+# Update the POM file, which is stuck on version 3.17
+# pom_xpath_set does not work in rpm-4.11.1
+# as it generated something like
+#
+#
+# 3.20
+#
+#
+#
+%{__sed} -e 's/%{pom_file_version}/%{version}/' %{SOURCE6} > %{name}.pom
+%{__sed} -i 's|http://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+http://www.csie.ntu.edu.tw/~cjlin/libsvm+tar.gz|https://github.com/cjlin1/libsvm|' %{name}.pom
+%{__sed} -i 's|http://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+http://www.csie.ntu.edu.tw/~cjlin/libsvm+tar.gz|scm:git:https://github.com/cjlin1/libsvm.git|' %{name}.pom
+
+%endif
+
%build
%{__sed} -i 's/\r//' FAQ.html
%{__sed} -i 's/\r//' ChangeLog
@@ -142,38 +163,54 @@ cp README svm-toy/gtk
cp README svm-toy/qt
%install
-rm -rf $RPM_BUILD_ROOT
-make install DESTDIR=$RPM_BUILD_ROOT LIBDIR=%{_libdir} PYTHON_VERSION="%{pyver}" LIBSVM_VER="%{version}" NO_JAVA="%{no_java}" JAVA_TARGET_DIR="${RPM_BUILD_ROOT}/%{_javadir}"
-rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/src
-mkdir -p $RPM_BUILD_ROOT/%{_datadir}/icons/hicolor/48x48/apps/
-cp %{name}-svm-toy-gtk-48.png $RPM_BUILD_ROOT/%{_datadir}/icons/hicolor/48x48/apps/
-cp %{name}-svm-toy-qt-48.png $RPM_BUILD_ROOT/%{_datadir}/icons/hicolor/48x48/apps/
-mkdir -p $RPM_BUILD_ROOT/%{_datadir}/applications
-cp %{name}-svm-toy-gtk.desktop $RPM_BUILD_ROOT/%{_datadir}/applications
-cp %{name}-svm-toy-qt.desktop $RPM_BUILD_ROOT/%{_datadir}/applications
-
-%__ln_s %{name}.so.%{shver} $RPM_BUILD_ROOT/%{_libdir}/%{name}.so
-
+rm -rf %{buildroot}
+make install DESTDIR=%{buildroot} LIBDIR=%{_libdir} PYTHON_VERSION="%{pyver}" LIBSVM_VER="%{version}" NO_JAVA="%{no_java}" JAVA_TARGET_DIR="%{buildroot}/%{_javadir}"
+rm -rf %{buildroot}%{_datadir}/%{name}/src
+mkdir -p %{buildroot}/%{_datadir}/icons/hicolor/48x48/apps/
+cp %{name}-svm-toy-gtk-48.png %{buildroot}/%{_datadir}/icons/hicolor/48x48/apps/
+cp %{name}-svm-toy-qt-48.png %{buildroot}/%{_datadir}/icons/hicolor/48x48/apps/
+mkdir -p %{buildroot}/%{_datadir}/applications
+cp %{name}-svm-toy-gtk.desktop %{buildroot}/%{_datadir}/applications
+cp %{name}-svm-toy-qt.desktop %{buildroot}/%{_datadir}/applications
+
+%__ln_s %{name}.so.%{shver} %{buildroot}/%{_libdir}/%{name}.so
# [Bug 521194] Python: 'import libsvm' doesn't work
+mkdir -p %{buildroot}/%{libsvm_python_dir}
echo -e "# This file is not in the original libsvm tarball, but added for convenience of import libsvm.\n\
# This file is released under BSD license, just like the rest of the package.\n"\
- > $RPM_BUILD_ROOT/%{libsvm_python_dir}/__init__.py
+ > %{buildroot}/%{libsvm_python_dir}/__init__.py
%if 0%{?with_vendor:1}
desktop-file-install --delete-original --vendor=%{with_vendor} \
- --dir=${RPM_BUILD_ROOT}%{_datadir}/applications \
- ${RPM_BUILD_ROOT}/%{_datadir}/applications/%{name}-svm-toy-gtk.desktop \
- ${RPM_BUILD_ROOT}/%{_datadir}/applications/%{name}-svm-toy-qt.desktop
+ --dir=%{buildroot}%{_datadir}/applications \
+ %{buildroot}/%{_datadir}/applications/%{name}-svm-toy-gtk.desktop \
+ %{buildroot}/%{_datadir}/applications/%{name}-svm-toy-qt.desktop
%else
desktop-file-install --delete-original \
- --dir=${RPM_BUILD_ROOT}%{_datadir}/applications \
- ${RPM_BUILD_ROOT}/%{_datadir}/applications/%{name}-svm-toy-gtk.desktop \
- ${RPM_BUILD_ROOT}/%{_datadir}/applications/%{name}-svm-toy-qt.desktop
+ --dir=%{buildroot}%{_datadir}/applications \
+ %{buildroot}/%{_datadir}/applications/%{name}-svm-toy-gtk.desktop \
+ %{buildroot}/%{_datadir}/applications/%{name}-svm-toy-qt.desktop
%endif
# Fix Bug 646154 - libsvm-python's pth is not set correctly
-echo 'libsvm' > $RPM_BUILD_ROOT/%{python_sitearch}/libsvm.pth
+echo 'libsvm' > %{buildroot}/%{python_sitearch}/libsvm.pth
+
+
+# Java
+%if "%{no_java}" == "FALSE"
+## Move jars to correct directory
+mkdir -p %{buildroot}/%{_javadir}/%{maven_group_id}
+mv %{buildroot}/%{_javadir}/%{name}.jar %{buildroot}/%{_javadir}/%{maven_group_id}/%{name}-%{version}.jar
+ln -s %{name}-%{version}.jar %{buildroot}/%{_javadir}/%{maven_group_id}/%{name}.jar
+ln -s %{_javadir}/%{maven_group_id}/%{name}.jar %{buildroot}/%{_javadir}/%{name}.jar
+
+## Install the Java POM
+mkdir -p %{buildroot}%{_mavenpomdir}
+cp -p %{name}.pom %{buildroot}%{_mavenpomdir}/%{pom_file_name}
+%add_maven_depmap %{pom_file_name} %{maven_group_id}/%{name}.jar
+%endif
+
%post -p /sbin/ldconfig
@@ -194,7 +231,7 @@ fi
%clean
-rm -rf $RPM_BUILD_ROOT
+rm -rf %{buildroot}
%files
@@ -221,11 +258,11 @@ rm -rf $RPM_BUILD_ROOT
%{python_sitearch}/libsvm.pth
%if "%{no_java}" == "FALSE"
-%files java
+%files java -f .mfiles
%defattr(-,root,root,-)
%doc java/README-Java java/test_applet.html
%{_javadir}/%{name}.jar
-#%{_datadir}/javadoc/%{name}-%{version}
+%{_javadir}/%{maven_group_id}/%{name}-%{version}.jar
%endif
%files svm-toy-gtk
@@ -244,6 +281,12 @@ rm -rf $RPM_BUILD_ROOT
%changelog
+* Tue Jan 20 2015 Ding-Yi Chen - 3.20-1
+- Upstream update to 3.20
+
+* Fri Dec 19 2014 Jerry James - 3.18-7
+- Install maven POM and depmaps (bz 1175898)
+
* Sun Aug 17 2014 Fedora Release Engineering - 3.18-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
diff --git a/log b/log
index 056a560..4c7d592 100644
--- a/log
+++ b/log
@@ -212,7 +212,6 @@ i subroutines to get SVs
new make.m for unix/mac/windows and for matlab/octave
matlab and python:
fix a problem that decision values returned by svmpredict is empty if number of classes = 1
-<<<<<<< HEAD
3.12: 2012/04/01
svm-toy: support loading/saving of regression data
@@ -259,4 +258,4 @@ i subroutines to get SVs
initialize model->sv_indices as null in svm_load_model
if nr_fold > # data, change nr_fold to be # data and ro leave-one-out cv
matlab interface:
- handle the problem where output variables are not specified
+ handle the problem where output variables are not specified
\ No newline at end of file
diff --git a/sources b/sources
index 4a9b52a..2aa72d2 100644
--- a/sources
+++ b/sources
@@ -1,6 +1,2 @@
b1543809993e2653dd2787f62c3c390a guide.pdf
-bba35e2cf9d14e158009ef8b90fd840a libsvm-3.18.tar.gz
-95918671ee5435803a1646e1ad2f3317 log
-0bc4868057a7c1c422f91a798f14a562 LibSVM-svm-toy-48.png
-398721fc66bb0903d46c685e9a3cba27 libsvm-svm-toy-gtk.desktop
-9a518db15afe9224e3a04695c82d7142 libsvm-svm-toy-qt.desktop
+5f088e5f89da1c65b642300c9c5ea772 libsvm-3.20.tar.gz