You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
3.3 KiB
115 lines
3.3 KiB
diff -up ./Makefile.packageMain ./Makefile
|
|
--- ./Makefile.packageMain 2010-09-12 22:11:10.000000000 +1000
|
|
+++ ./Makefile 2010-11-08 11:04:38.423570586 +1000
|
|
@@ -1,11 +1,40 @@
|
|
CXX ?= g++
|
|
-CFLAGS = -Wall -Wconversion -O3 -fPIC
|
|
+CFLAGS = ${RPM_CFLAGS} -Wall -Wconversion -O3 -fPIC
|
|
SHVER = 2
|
|
+MAKE = make
|
|
+DOT_LIBS=.libs
|
|
+LIBS= -L${DOT_LIBS} -lsvm
|
|
+export LIBSVM_VER
|
|
+
|
|
+ifndef DESTDIR
|
|
+ INSTDIR=/usr
|
|
+else
|
|
+ INSTDIR=${DESTDIR}/usr
|
|
+endif
|
|
+
|
|
+export INSTDIR
|
|
+
|
|
+IS_64=$(shell /bin/uname -i | awk '/64/ {print 64}')
|
|
+
|
|
+ifndef LIBDIR
|
|
+ LIB_INSTDIR=${INSTDIR}/lib${IS_64}
|
|
+else
|
|
+ LIB_INSTDIR=${INSTDIR}/..${LIBDIR}
|
|
+endif
|
|
+
|
|
+ifndef LIBDIR
|
|
+ LIBDIR=/usr/lib${IS_64}
|
|
+endif
|
|
+
|
|
+export LIBDIR
|
|
+export LIB_INSTDIR
|
|
+
|
|
+all: lib svm-train svm-predict svm-scale svm-python svm-java svm-toy-gtk svm-toy-qt
|
|
|
|
-all: svm-train svm-predict svm-scale
|
|
|
|
lib: svm.o
|
|
- $(CXX) -shared -dynamiclib svm.o -o libsvm.so.$(SHVER)
|
|
+ $(CXX) -shared -Wl,-soname,libsvm.so.$(SHVER) svm.o -o libsvm.so.$(SHVER)
|
|
+ ln -sf libsvm.so.$(SHVER) libsvm.so
|
|
|
|
svm-predict: svm-predict.c svm.o
|
|
$(CXX) $(CFLAGS) svm-predict.c svm.o -o svm-predict -lm
|
|
@@ -16,4 +45,65 @@ svm-scale: svm-scale.c
|
|
svm.o: svm.cpp svm.h
|
|
$(CXX) $(CFLAGS) -c svm.cpp
|
|
clean:
|
|
- rm -f *~ svm.o svm-train svm-predict svm-scale libsvm.so.$(SHVER)
|
|
+ rm -f *~ svm.o svm-train svm-predict svm-scale svm-toy/gtk/svm-toy-gtk svm-toy/qt/svm-toy-qt
|
|
+ ${MAKE} -C python clean
|
|
+ ${MAKE} -C java clean
|
|
+svm-python:
|
|
+ ${MAKE} -C python
|
|
+
|
|
+svm-java:
|
|
+ifneq ("${NO_JAVA}","NO_JAVA")
|
|
+ ${MAKE} -C java
|
|
+endif
|
|
+svm-toy-gtk:
|
|
+ ${MAKE} -C svm-toy/gtk
|
|
+
|
|
+svm-toy-qt:
|
|
+ ${MAKE} -C svm-toy/qt
|
|
+
|
|
+install: all
|
|
+ mkdir -p ${INSTDIR}/bin
|
|
+ install -m 755 svm-train ${INSTDIR}/bin
|
|
+ install -m 755 svm-predict ${INSTDIR}/bin
|
|
+ install -m 755 svm-scale ${INSTDIR}/bin
|
|
+ mkdir -p ${LIB_INSTDIR}
|
|
+ install -m 755 libsvm.so.$(SHVER) ${LIB_INSTDIR}
|
|
+# install package libsvm-devel
|
|
+ mkdir -p ${INSTDIR}/include/libsvm
|
|
+ install -m 644 svm.h ${INSTDIR}/include/libsvm
|
|
+ mkdir -p ${INSTDIR}/share/libsvm/src/java/libsvm
|
|
+ install -m 644 *.h ${INSTDIR}/share/libsvm/src
|
|
+ install -m 644 *.c ${INSTDIR}/share/libsvm/src
|
|
+ install -m 644 *.cpp ${INSTDIR}/share/libsvm/src
|
|
+ install -m 644 Makefile ${INSTDIR}/share/libsvm/src
|
|
+ifneq ("${NO_JAVA}","NO_JAVA")
|
|
+ install -m 644 java/*.java ${INSTDIR}/share/libsvm/src/java
|
|
+ install -m 644 java/Makefile ${INSTDIR}/share/libsvm/src/java
|
|
+ install -m 644 java/libsvm/*.java ${INSTDIR}/share/libsvm/src/java/libsvm
|
|
+ install -m 644 java/libsvm/*.m4 ${INSTDIR}/share/libsvm/src/java/libsvm
|
|
+# install package libsvm-java
|
|
+ ${MAKE} -C java install
|
|
+endif
|
|
+# install package libsvm-python
|
|
+ ${MAKE} -C python install
|
|
+# install package svm-toy
|
|
+ install -m 755 svm-toy/gtk/svm-toy-gtk ${INSTDIR}/bin
|
|
+ install -m 755 svm-toy/qt/svm-toy-qt ${INSTDIR}/bin
|
|
+# install examples
|
|
+ mkdir -p ${INSTDIR}/share/libsvm/examples
|
|
+ install -m 644 heart_scale ${INSTDIR}/share/libsvm/examples
|
|
+uninstall:
|
|
+ rm -f ${INSTDIR}/bin/svm-train
|
|
+ rm -f ${INSTDIR}/bin/svm-predict
|
|
+ rm -f ${INSTDIR}/bin/svm-scale
|
|
+ rm -fr ${INSTDIR}/libsvm/examples
|
|
+ rm -f ${INSTDIR}/include/libsvm/svm.h
|
|
+ rm -f ${LIB_INSTDIR}/libsvm/svm.o
|
|
+ rm -fr ${INSTDIR}/libsvm/src
|
|
+ rm -fr ${INSTDIR}/libsvm
|
|
+ ${MAKE} -C python uninstall
|
|
+ifneq ("${NO_JAVA}","NO_JAVA")
|
|
+ ${MAKE} -C java uninstall
|
|
+endif
|
|
+ rm -f ${INSTDIR}/bin/svm-toy-gtk
|
|
+ rm -f ${INSTDIR}/bin/svm-toy-qt
|