rpms/libsvm/devel libsvm-2.86.patch,1.1,1.2 libsvm.spec,1.17,1.18

Ding-Yi Chen (dchen) fedora-extras-commits at redhat.com
Wed Apr 2 04:23:32 UTC 2008


Author: dchen

Update of /cvs/pkgs/rpms/libsvm/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14064/devel

Modified Files:
	libsvm-2.86.patch libsvm.spec 
Log Message:
Support both Qt3 and Qt4

libsvm-2.86.patch:

Index: libsvm-2.86.patch
===================================================================
RCS file: /cvs/pkgs/rpms/libsvm/devel/libsvm-2.86.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- libsvm-2.86.patch	1 Apr 2008 07:34:44 -0000	1.1
+++ libsvm-2.86.patch	2 Apr 2008 04:23:24 -0000	1.2
@@ -371,39 +371,171 @@
 diff -up ./svm-predict.c.orig ./svm-predict.c
 diff -up ./svm-toy/qt/Makefile.orig ./svm-toy/qt/Makefile
 --- ./svm-toy/qt/Makefile.orig	2007-10-14 16:29:12.000000000 +1000
-+++ ./svm-toy/qt/Makefile	2008-04-01 16:17:52.000000000 +1000
-@@ -1,19 +1,23 @@
++++ ./svm-toy/qt/Makefile	2008-04-02 14:07:17.000000000 +1000
+@@ -1,19 +1,43 @@
  CXX? = g++
- CFLAGS = -Wall -O3 -DQT_THREAD_SUPPORT
-+QTDIR = $(LIBDIR)/qt-3.3
- BIN = $(QTDIR)/bin
- INCLUDE = $(QTDIR)/include
- LIB = $(QTDIR)/lib
+-CFLAGS = -Wall -O3 -DQT_THREAD_SUPPORT
+-BIN = $(QTDIR)/bin
+-INCLUDE = $(QTDIR)/include
+-LIB = $(QTDIR)/lib
 -#BIN = /usr/bin
 -#INCLUDE = /usr/include/qt3
 -#LIB = /usr/lib/qt3
-+DOT_LIBS=../../.libs
-+LIBS= -L${DOT_LIBS} -lsvm
++#CFLAGS = -Wall -O3 -DQT_THREAD_SUPPORT
++CFLAGS = -Wall -O3 
++QT4_DIR= $(shell if [ -e /usr/lib/qt4 ]; then echo /usr/lib/qt4; fi)
++#LIBDIR=/usr/lib64
++#QT4_DIR=
  
 -svm-toy: svm-toy.cpp svm-toy.moc ../../svm.o
 -	$(CXX) -I$(INCLUDE) $(CFLAGS) svm-toy.cpp ../../svm.o -o svm-toy -L$(LIB) -lqt-mt 
++ifdef QT4_DIR
++  QTDIR=${QT4_DIR}
++  BIN = $(QTDIR)/bin
++  FLAGS=${CFLAGS} -I/usr/include/Qt -DQT3_SUPPORT `pkg-config --cflags --libs Qt3Support QtGui`
++else
++  QTDIR=${LIBDIR}/qt-3.3
++  BIN = $(QTDIR)/bin
++  FLAGS=${CFLAGS} `pkg-config --cflags --libs qt-mt`
++endif
++
++
++DOT_LIBS=../../.libs
++LIBS= -L${DOT_LIBS} -lsvm
++
 +all: svm-toy-qt
 +
-+svm-toy-qt: svm-toy.cpp svm-toy.moc ../../svm.o
-+	$(CXX) -I$(INCLUDE) $(CFLAGS) svm-toy.cpp ../../svm.o -o svm-toy-qt -L$(LIB) $(LIBS) -lqt-mt 
++svm-toy-qt: svm-toy.new.cpp svm-toy.moc ../../svm.o
++	$(CXX) $(FLAGS) svm-toy.new.cpp ../../svm.o -o svm-toy-qt  $(LIBS)
  # add -pthread for bsd
  
- svm-toy.moc: svm-toy.cpp
-+	echo "LIBDIR=${LIBDIR}"
-+	echo "QTDIR=${QTDIR}"
- 	$(BIN)/moc svm-toy.cpp -o svm-toy.moc
+-svm-toy.moc: svm-toy.cpp
+-	$(BIN)/moc svm-toy.cpp -o svm-toy.moc
 -../../svm.o:
 -	cd ../..; make svm.o
++
++svm-toy.moc: svm-toy.new.cpp
++	echo "LIBDIR=${LIBDIR}"
++	echo "QTDIR=${QTDIR}"
++	echo "FLAGS=${FLAGS}"
++	$(BIN)/moc svm-toy.new.cpp -o svm-toy.moc
 +#../../svm.o:
 +#	cd ../..; make svm.o
++svm-toy.new.cpp: svm-toy.cpp
++	cp svm-toy.cpp svm-toy.new.cpp
++ifdef QT4_DIR
++	${BIN}/qt3to4 -alwaysOverwrite  svm-toy.new.cpp
++endif
++
  clean:
- 	rm -f *~ svm-toy svm-toy.moc ../../svm.o
+-	rm -f *~ svm-toy svm-toy.moc ../../svm.o
++	rm -f *~ svm-toy-qt svm-toy.moc ../../svm.o svm-toy.new.cpp
 diff -up ./svm-toy/qt/svm-toy.cpp.orig ./svm-toy/qt/svm-toy.cpp
+--- ./svm-toy/qt/svm-toy.cpp.orig	2008-04-01 16:55:51.000000000 +1000
++++ ./svm-toy/qt/svm-toy.cpp	2008-04-02 14:01:47.000000000 +1000
+@@ -67,14 +67,15 @@ private:
+ 	void clear_all()
+ 	{
+ 		point_list.clear();
+-		buffer.fill(black);
++		buffer.fill(Qt::black);
+ 		paintEvent(NULL);
+ 	}
+ 	void draw_point(const point& p)
+ 	{
+ 		const QPixmap& icon = choose_icon(p.value);
+-		window_painter.drawPixmap((int)(p.x*XLEN),(int)(p.y*YLEN),icon);
++		
+ 		buffer_painter.drawPixmap((int)(p.x*XLEN),(int)(p.y*YLEN),icon);
++		repaint(FALSE);
+ 	}
+ 	void draw_all_points()
+ 	{
+@@ -213,33 +214,23 @@ private slots: 
+ 			
+ 			buffer_painter.setPen(colors[0]);
+ 			buffer_painter.drawLine(0,0,0,YLEN-1);
+-			window_painter.setPen(colors[0]);
+-			window_painter.drawLine(0,0,0,YLEN-1);
+ 
+ 			int p = (int)(param.p * YLEN);
+ 			for(i = 1; i < XLEN; i++)
+ 			{
+ 				buffer_painter.setPen(colors[0]);
+ 				buffer_painter.drawLine(i,0,i,YLEN-1);
+-				window_painter.setPen(colors[0]);
+-				window_painter.drawLine(i,0,i,YLEN-1);
+ 			
+ 				buffer_painter.setPen(colors[5]);
+ 				buffer_painter.drawLine(i-1,j[i-1],i,j[i]);
+-				window_painter.setPen(colors[5]);
+-				window_painter.drawLine(i-1,j[i-1],i,j[i]);
+ 				
+ 				if(param.svm_type == EPSILON_SVR)
+ 				{
+ 					buffer_painter.setPen(colors[2]);
+ 					buffer_painter.drawLine(i-1,j[i-1]+p,i,j[i]+p);
+-					window_painter.setPen(colors[2]);
+-					window_painter.drawLine(i-1,j[i-1]+p,i,j[i]+p);
+ 
+ 					buffer_painter.setPen(colors[2]);
+ 					buffer_painter.drawLine(i-1,j[i-1]-p,i,j[i]-p);
+-					window_painter.setPen(colors[2]);
+-					window_painter.drawLine(i-1,j[i-1]-p,i,j[i]-p);
+ 				}
+ 			}
+ 
+@@ -281,9 +272,7 @@ private slots: 
+ 					double d = svm_predict(model, x);
+ 					if (param.svm_type == ONE_CLASS && d<0) d=2;
+ 					buffer_painter.setPen(colors[(int)d]);
+-					window_painter.setPen(colors[(int)d]);
+ 					buffer_painter.drawPoint(i,j);
+-					window_painter.drawPoint(i,j);
+ 			}
+ 
+ 			svm_destroy_model(model);
+@@ -352,9 +341,9 @@ SvmToyWindow::SvmToyWindow()
+ ,current_value(1)
+ {
+ 	buffer.resize(XLEN,YLEN);
+-	buffer.fill(black);
++	buffer.fill(Qt::black);
+ 
+-	window_painter.begin(this);
++//	window_painter.begin(this);
+ 	buffer_painter.begin(&buffer);
+ 
+ 	QObject::connect(&button_change_icon, SIGNAL(clicked()), this,
+@@ -371,7 +360,7 @@ SvmToyWindow::SvmToyWindow()
+ 			 SLOT(button_run_clicked()));
+ 
+   	// don't blank the window before repainting
+-	setBackgroundMode( NoBackground );
++	setBackgroundMode( Qt::NoBackground );
+   
+ 	icon1.resize(4,4);
+ 	icon2.resize(4,4);
+@@ -403,7 +392,7 @@ SvmToyWindow::SvmToyWindow()
+ 
+ SvmToyWindow::~SvmToyWindow()
+ {
+-	window_painter.end();
++// 	window_painter.end();
+ 	buffer_painter.end();
+ }
+ 
+@@ -417,7 +406,9 @@ void SvmToyWindow::mousePressEvent( QMou
+ void SvmToyWindow::paintEvent( QPaintEvent* )
+ {
+ 	// copy the image from the buffer pixmap to the window
+-	bitBlt( this, 0, 0, &buffer );
++	// Compatiable both Qt-3 and Qt-4
++	QPainter p(this);
++	p.drawPixmap(0, 0, buffer);
+ }
+ 
+ int main( int argc, char* argv[] )
 diff -up ./svm-toy/gtk/interface.h.orig ./svm-toy/gtk/interface.h
 diff -up ./svm-toy/gtk/interface.c.orig ./svm-toy/gtk/interface.c
 diff -up ./svm-toy/gtk/Makefile.orig ./svm-toy/gtk/Makefile


Index: libsvm.spec
===================================================================
RCS file: /cvs/pkgs/rpms/libsvm/devel/libsvm.spec,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- libsvm.spec	1 Apr 2008 07:34:44 -0000	1.17
+++ libsvm.spec	2 Apr 2008 04:23:24 -0000	1.18
@@ -1,6 +1,6 @@
 Name:           libsvm
 Version:        2.86
-Release:        0%{?dist}
+Release:        1%{?dist}
 Summary:        A Library for Support Vector Machines
 
 Group:          Development/Libraries
@@ -73,8 +73,8 @@
 Summary:    GTK version of svm-toy (libsvm demostration program)
 Group:      Development/Libraries
 BuildRequires:  gtk2-devel
-BuildRequires:  gtk2
 BuildRequires:  desktop-file-utils
+Requires:       gtk2
 Requires:       %{name} = %{version}-%{release}
 
 %description svm-toy-gtk
@@ -85,8 +85,9 @@
 Summary:    QT version of svm-toy (libsvm demostration program)
 Group:      Development/Libraries
 BuildRequires:  qt-devel
-BuildRequires:  qt
 BuildRequires:  desktop-file-utils
+BuildRequires:  pkgconfig
+Requires:       qt
 Requires:       %{name} = %{version}-%{release}
 
 %description svm-toy-qt
@@ -202,6 +203,9 @@
 
 
 %changelog
+* Tue Mar 11 2008 Ding-Yi Chen <dchen at redhat.com> - 2.86-1
+- Support both Qt3 for F8 and earlier, and Qt4 for F9
+
 * Tue Mar 11 2008 Ding-Yi Chen <dchen at redhat.com> - 2.86-0
 - Upstream update to 2.86
   - svm-scale for java




More information about the fedora-extras-commits mailing list