diff --git a/libsvm-3.0.packageMain.patch b/libsvm-3.0-1.packageMain.patch similarity index 97% rename from libsvm-3.0.packageMain.patch rename to libsvm-3.0-1.packageMain.patch index fb6a009..ac7a7f7 100644 --- a/libsvm-3.0.packageMain.patch +++ b/libsvm-3.0-1.packageMain.patch @@ -1,6 +1,6 @@ diff -up ./Makefile.packageMain ./Makefile --- ./Makefile.packageMain 2010-09-12 22:11:10.000000000 +1000 -+++ ./Makefile 2010-11-08 11:04:38.423570586 +1000 ++++ ./Makefile 2010-12-14 16:00:15.269681221 +1000 @@ -1,11 +1,40 @@ CXX ?= g++ -CFLAGS = -Wall -Wconversion -O3 -fPIC @@ -9,14 +9,14 @@ diff -up ./Makefile.packageMain ./Makefile +MAKE = make +DOT_LIBS=.libs +LIBS= -L${DOT_LIBS} -lsvm -+export LIBSVM_VER -+ ++export LIBSVM_VER ++ +ifndef DESTDIR + INSTDIR=/usr +else + INSTDIR=${DESTDIR}/usr +endif -+ ++ +export INSTDIR + +IS_64=$(shell /bin/uname -i | awk '/64/ {print 64}') @@ -65,7 +65,7 @@ diff -up ./Makefile.packageMain ./Makefile + +svm-toy-qt: + ${MAKE} -C svm-toy/qt -+ ++ +install: all + mkdir -p ${INSTDIR}/bin + install -m 755 svm-train ${INSTDIR}/bin diff --git a/libsvm.spec b/libsvm.spec index 7f4cc8d..82dcf9c 100644 --- a/libsvm.spec +++ b/libsvm.spec @@ -1,6 +1,7 @@ +%define shver 2 Name: libsvm Version: 3.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A Library for Support Vector Machines Group: Development/Libraries @@ -13,12 +14,13 @@ 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 -Patch0: %{name}-%{version}.packageMain.patch +Patch0: %{name}-%{version}-1.packageMain.patch Patch1: %{name}-%{version}.pythonDir.patch Patch2: %{name}-%{version}.javaDir.patch Patch3: %{name}-%{version}.svm-toy.patch Patch4: %{name}-%{version}.toolsDir.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +BuildRequires: grep %{!?pyver: %define pyver %(python -c 'import sys; print(sys.version[0:3])')} %{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} @@ -66,7 +68,7 @@ Requires: gnuplot %description python Python tools and interfaces for libsvm. -Install this package if you want to develop +Install this package if you want to develop programs with libsvm in Python. %ifnarch ppc ppc64 @@ -82,7 +84,7 @@ Requires: %{name} = %{version}-%{release} %description java Java tools and interfaces for libsvm. -Install this package if you want to develop +Install this package if you want to develop programs with libsvm in Java. %endif @@ -95,7 +97,7 @@ Requires: gtk2 Requires: %{name} = %{version}-%{release} %description svm-toy-gtk -svm-toy is a libsvm demonstration program which has a gtk-GUI to +svm-toy is a libsvm demonstration program which has a gtk-GUI to display the derived separating hyperplane. %package svm-toy-qt @@ -109,7 +111,7 @@ Requires: qt4 Requires: %{name} = %{version}-%{release} %description svm-toy-qt -svm-toy is a libsvm demonstration program which has a qt-GUI to +svm-toy is a libsvm demonstration program which has a qt-GUI to display the derived separating hyperplane. %prep @@ -127,7 +129,6 @@ cp %{SOURCE5} %{name}-svm-toy-gtk-48.png cp %{SOURCE5} %{name}-svm-toy-qt-48.png - %build %{__sed} -i 's/\r//' FAQ.html %{__sed} -i 's/\r//' ChangeLog @@ -142,7 +143,6 @@ 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}" -ln -sf %{name}.so.1 ${RPM_BUILD_ROOT}%{_libdir}/%{name}.so 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/ @@ -151,6 +151,9 @@ 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 + + # [Bug 521194] Python: 'import libsvm' doesn't work 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"\ @@ -193,7 +196,7 @@ rm -rf $RPM_BUILD_ROOT %{_bindir}/svm-train %dir %{_datadir}/%{name} %{_datadir}/%{name}/examples -%{_libdir}/%{name}.so.2 +%{_libdir}/%{name}.so.%{shver} %files devel @@ -231,13 +234,16 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Dec 14 2010 Ding-Yi Chen - 3.0-2 +- Fixed [Bug 661404] New: Wrong symbolic link libsvm.so + * Mon Nov 08 2010 Ding-Yi Chen - 3.0-1 - Fixed the spelling errors of svm-toy-gtk and svm-toy-qt - Upstream update: * Move model structure to svm.h * Two functions for freeing a model (content or the whole model) * QD from Qfloat to double (better precision because SSE on 64-bit machines less accurate than i387 on 32-bit - * exit status for checkdata.py + * exit status for checkdata.py * old python interface (swig) is removed * Wed Jul 21 2010 David Malcolm - 2.91-2 @@ -270,12 +276,12 @@ rm -rf $RPM_BUILD_ROOT * Wed Sep 16 2009 Ding-Yi Chen - 2.89-3 - Fix the building for EL-5 - Note that libsvm-java on ppc and ppc64 for EL-5 is excluded, + Note that libsvm-java on ppc and ppc64 for EL-5 is excluded, as java-1.6.0-openjdk-devel for them do not exist yet. - Change the Java buildrequires from java-sdk to java-1.6.0-openjdk-devel - Fix [Bug 521194] Python: 'import libsvm' doesn't work. By adding __init__.py to libsvm_python_dir - + * Sat Jul 25 2009 Fedora Release Engineering - 2.89-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild @@ -283,7 +289,7 @@ rm -rf $RPM_BUILD_ROOT - Upstream Update to 2.89: + reduce input/loading time of svm-train/svm-predict by half + pointer function so users can specify their own outputs - + remove info_flush() + + remove info_flush() + a extern variable libsvm_version + svm-train -q option (disable outputs) + svm-scale: warning if more nonzero produced @@ -292,7 +298,7 @@ rm -rf $RPM_BUILD_ROOT * Mon Nov 10 2008 Ding-Yi Chen - 2.88-2 - Fix java BuildRequire and Build -- javadoc have been removed because ppc and ppc64 do not have a +- javadoc have been removed because ppc and ppc64 do not have a suitable package to build javadoc in F-8, nor does javadoc provide much useful information. @@ -322,7 +328,7 @@ rm -rf $RPM_BUILD_ROOT * Thu Apr 29 2008 Ding-Yi Chen - 2.86-13 - Fix svm-toy-qt clear button does not clear. (from Hsiang-Fu Yu in National Taiwan University) - + * Thu Apr 3 2008 Ding-Yi Chen - 2.86-12 - Correct changelog date @@ -337,10 +343,10 @@ rm -rf $RPM_BUILD_ROOT - Upstream update to 2.86 - svm-scale for java - version number in svm.h and svm.m4 - - rename svmtrain.exe to svm-train.exe + - rename svmtrain.exe to svm-train.exe - python: while 1 --> while True, Popen -> call - show best parameters on the contour of grid.py -- LIBSVM_VER_MAJOR and LIBSVM_VER_MINOR are defined in libsvm.spec instead in +- LIBSVM_VER_MAJOR and LIBSVM_VER_MINOR are defined in libsvm.spec instead in * Tue Mar 11 2008 Ding-Yi Chen - 2.85-6 - Fix build error. @@ -379,7 +385,7 @@ rm -rf $RPM_BUILD_ROOT - Add gnuplot dependency for libsvm-python, as tools/easy.py needs it. * Mon Dec 03 2007 Ding-Yi Chen - 2.84-7 -- [Bug 254091] Review Request: libsvm - A Library for Support Vector Machines (Comment #12) +- [Bug 254091] Review Request: libsvm - A Library for Support Vector Machines (Comment #12) * Thu Sep 26 2007 Ding-Yi Chen - 2.84-6 - Add defattr to each subpackage