diff --git a/.gitignore b/.gitignore index 4373f69..0ab1e09 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ libsvm-2.91.tar.gz /libsvm-3.0.tar.gz /libsvm-3.1.tar.gz /libsvm-3.11.tar.gz +/libsvm-3.12.tar.gz diff --git a/libsvm-3.11.javaDir.patch b/libsvm-3.12.javaDir.patch similarity index 100% rename from libsvm-3.11.javaDir.patch rename to libsvm-3.12.javaDir.patch diff --git a/libsvm-3.11.packageMain.patch b/libsvm-3.12.packageMain.patch similarity index 76% rename from libsvm-3.11.packageMain.patch rename to libsvm-3.12.packageMain.patch index 5fbadbe..5d692ff 100644 --- a/libsvm-3.11.packageMain.patch +++ b/libsvm-3.12.packageMain.patch @@ -1,19 +1,22 @@ diff -up ./Makefile.packageMain ./Makefile ---- ./Makefile.packageMain 2011-06-26 05:55:06.000000000 +1000 -+++ ./Makefile 2011-11-08 09:42:13.106501233 +1000 -@@ -1,11 +1,44 @@ +--- ./Makefile.packageMain 2012-01-02 01:10:52.000000000 +1000 ++++ ./Makefile 2012-04-05 11:14:42.683613523 +1000 +@@ -1,25 +1,121 @@ CXX ?= g++ -CFLAGS = -Wall -Wconversion -O3 -fPIC +CFLAGS = ${RPM_CFLAGS} -Wall -Wconversion -O3 -fPIC SHVER = 2 ++export SHVER + OS = $(shell uname) +MAKE = make -+DOT_LIBS=.libs ++DOT_LIBS=. +LIBS= -L${DOT_LIBS} -lsvm +export LIBSVM_VER -all: svm-train svm-predict svm-scale +IS_64:=$(shell /bin/uname -i | awk '/64/ {print 64}') -+ + +-lib: svm.o +PREFIXDIR?= /usr +export PREFIXDIR + @@ -38,17 +41,31 @@ diff -up ./Makefile.packageMain ./Makefile +BINDIR_INSTALL:=${DESTDIR}/${BINDIR} +export BINDIR_INSTALL + -+ +all: lib svm-train svm-predict svm-scale svm-python svm-java svm-toy-gtk svm-toy-qt - - lib: svm.o - $(CXX) -shared -dynamiclib -Wl,-soname,libsvm.so.$(SHVER) svm.o -o libsvm.so.$(SHVER) ++ ++lib: libsvm.so.$(SHVER) libsvm.so ++ ++libsvm.so: libsvm.so.$(SHVER) + ln -sf libsvm.so.$(SHVER) libsvm.so + ++libsvm.so.$(SHVER): svm.o + if [ "$(OS)" = "Darwin" ]; then \ +- SHARED_LIB_FLAG="-dynamiclib -W1,-install_name,libsvm.so.$(SHVER)"; \ ++ SHARED_LIB_FLAG="-dynamiclib -Wl,-install_name,libsvm.so.$(SHVER)"; \ + else \ +- SHARED_LIB_FLAG="-shared -W1,-soname,libsvm.so.$(SHVER)"; \ ++ SHARED_LIB_FLAG="-shared -Wl,-soname,libsvm.so.$(SHVER)"; \ + fi; \ + $(CXX) $${SHARED_LIB_FLAG} svm.o -o libsvm.so.$(SHVER) svm-predict: svm-predict.c svm.o - $(CXX) $(CFLAGS) svm-predict.c svm.o -o svm-predict -lm -@@ -16,4 +49,64 @@ svm-scale: svm-scale.c +- $(CXX) $(CFLAGS) svm-predict.c svm.o -o svm-predict -lm ++ $(CXX) $(CFLAGS) svm-predict.c $(LIBS) -o svm-predict -lm + svm-train: svm-train.c svm.o +- $(CXX) $(CFLAGS) svm-train.c svm.o -o svm-train -lm ++ $(CXX) $(CFLAGS) svm-train.c $(LIBS) -o svm-train -lm + svm-scale: svm-scale.c + $(CXX) $(CFLAGS) svm-scale.c -o svm-scale svm.o: svm.cpp svm.h $(CXX) $(CFLAGS) -c svm.cpp clean: diff --git a/libsvm-3.11.pythonDir.patch b/libsvm-3.12.pythonDir.patch similarity index 100% rename from libsvm-3.11.pythonDir.patch rename to libsvm-3.12.pythonDir.patch diff --git a/libsvm-3.11.svm-toy.patch b/libsvm-3.12.svm-toy.patch similarity index 71% rename from libsvm-3.11.svm-toy.patch rename to libsvm-3.12.svm-toy.patch index e8d4e69..d2a9274 100644 --- a/libsvm-3.11.svm-toy.patch +++ b/libsvm-3.12.svm-toy.patch @@ -1,17 +1,6 @@ -diff -up ./svm-toy/gtk/callbacks.cpp.svm-toy ./svm-toy/gtk/callbacks.cpp ---- ./svm-toy/gtk/callbacks.cpp.svm-toy 2010-09-12 22:11:10.000000000 +1000 -+++ ./svm-toy/gtk/callbacks.cpp 2011-11-08 09:57:01.782500360 +1000 -@@ -3,6 +3,7 @@ - #include - #include - #include -+#include - #include "callbacks.h" - #include "interface.h" - #include "../../svm.h" diff -up ./svm-toy/gtk/Makefile.svm-toy ./svm-toy/gtk/Makefile --- ./svm-toy/gtk/Makefile.svm-toy 2011-05-11 12:15:45.000000000 +1000 -+++ ./svm-toy/gtk/Makefile 2011-11-08 10:06:35.686501266 +1000 ++++ ./svm-toy/gtk/Makefile 2012-04-04 17:02:28.366615284 +1000 @@ -1,10 +1,12 @@ CC? = gcc CXX? = g++ @@ -43,22 +32,24 @@ diff -up ./svm-toy/gtk/Makefile.svm-toy ./svm-toy/gtk/Makefile + rm -f *~ callbacks.o svm-toy main.o interface.o callbacks.o ${LOCAL_LIBDIR}/svm.o diff -up ./svm-toy/qt/Makefile.svm-toy ./svm-toy/qt/Makefile --- ./svm-toy/qt/Makefile.svm-toy 2011-05-11 12:15:45.000000000 +1000 -+++ ./svm-toy/qt/Makefile 2011-11-08 10:06:11.702501216 +1000 -@@ -1,17 +1,20 @@ ++++ ./svm-toy/qt/Makefile 2012-04-04 17:02:28.366615284 +1000 +@@ -1,17 +1,22 @@ CXX? = g++ -CFLAGS = -Wall -O3 -I$(INCLUDE) -I$(INCLUDE)/QtGui -lQtGui -INCLUDE = /usr/include/qt4 -MOC = /usr/bin/moc-qt4 ++SHVER?=2 +CFLAGS = -Wall -O3 `pkg-config --cflags --libs QtGui` +MOC=${MOC_PATH} +LOCAL_LIBDIR=../.. +LIBS = -L${LOCAL_LIBDIR} -lsvm ++LIBSVM_SO_SHVER=${LOCAL_LIBDIR}/libsvm.so.$(SHVER) -svm-toy: svm-toy.cpp svm-toy.moc ../../svm.o - $(CXX) $(CFLAGS) svm-toy.cpp ../../svm.o -o svm-toy +all: svm-toy-qt + -+svm-toy-qt: svm-toy.cpp svm-toy.moc ${LOCAL_LIBDIR}/svm.o ++svm-toy-qt: svm-toy.cpp svm-toy.moc $(LIBSVM_SO_SHVER) + $(CXX) $(CFLAGS) svm-toy.cpp ${LIBS} -o $@ svm-toy.moc: svm-toy.cpp @@ -66,10 +57,10 @@ diff -up ./svm-toy/qt/Makefile.svm-toy ./svm-toy/qt/Makefile -../../svm.o: ../../svm.cpp ../../svm.h - make -C ../.. svm.o -+${LOCAL_LIBDIR}/svm.o: ${LOCAL_LIBDIR}/svm.cpp ${LOCAL_LIBDIR}/svm.h -+ make -C ${LOCAL_LIBDIR} svm.o ++$(LIBSVM_SO_SHVER): ${LOCAL_LIBDIR}/svm.cpp ${LOCAL_LIBDIR}/svm.h ++ make -C ${LOCAL_LIBDIR} lib clean: - rm -f *~ svm-toy svm-toy.moc ../../svm.o -+ rm -f *~ svm-toy svm-toy.moc ${LOCAL_LIBDIR}/svm.o ++ rm -f *~ svm-toy svm-toy.moc $(LIBSVM_SO_SHVER) diff --git a/libsvm-3.11.toolsDir.patch b/libsvm-3.12.toolsDir.patch similarity index 100% rename from libsvm-3.11.toolsDir.patch rename to libsvm-3.12.toolsDir.patch diff --git a/libsvm.spec b/libsvm.spec index 02d8e86..31f087d 100644 --- a/libsvm.spec +++ b/libsvm.spec @@ -1,14 +1,13 @@ %define shver 2 Name: libsvm -Version: 3.11 -Release: 3%{?dist} +Version: 3.12 +Release: 1%{?dist} Summary: A Library for Support Vector Machines Group: Development/Libraries License: BSD URL: http://www.csie.ntu.edu.tw/~cjlin/libsvm/ -Source0: %{name}-%{version}.tar.gz -#Source0: http://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+http://www.csie.ntu.edu.tw/~cjlin/%{name}+tar.gz +Source0: http://www.csie.ntu.edu.tw/~cjlin/libsvm/%{name}-%{version}.tar.gz Source1: http://www.csie.ntu.edu.tw/~cjlin/libsvm/log Source2: http://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf Source3: libsvm-svm-toy-gtk.desktop @@ -203,7 +202,6 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/%{name}/examples %{_libdir}/%{name}.so.%{shver} - %files devel %defattr(-,root,root,-) %doc README @@ -241,6 +239,13 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Apr 04 2012 Ding-Yi Chen - 3.12-1 +- Upstream update: + svm-toy: support loading/saving of regression data + python interface: handle the issue of the "0th" feature if using lists + tools/grid.py: not redrawing contour if c,g, cv doesn't change + add setlocale when saving and loading model so not affected by users' locale + * Thu Jan 12 2012 Ding-Yi Chen - 3.11-3 - Fixed Bug 646154 - libsvm-python's pth is not set correctly diff --git a/log b/log index dac608b..f37fc86 100644 --- a/log +++ b/log @@ -212,4 +212,9 @@ 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 - \ No newline at end of file + +3.12: 2012/04/01 + svm-toy: support loading/saving of regression data + python interface: handle the issue of the "0th" feature if using lists + tools/grid.py: not redrawing contour if c,g, cv doesn't change + add setlocale when saving and loading model so not affected by users' locale \ No newline at end of file diff --git a/sources b/sources index 3a815ba..a61604a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -aae7a8f7e357e86e1c893b706bb02a63 guide.pdf -44d2a3a611280ecd0d66aafe0d52233e libsvm-3.11.tar.gz +b1543809993e2653dd2787f62c3c390a guide.pdf +a1b1083fe69a4ac695da753f4c83ed42 libsvm-3.12.tar.gz