gohanlonllc-libsvm-ruby 2.8.4

Sign up to get free protection for your applications and to get access to all the features.
data/ext/missing ADDED
@@ -0,0 +1,360 @@
1
+ #! /bin/sh
2
+ # Common stub for a few missing GNU programs while installing.
3
+
4
+ scriptversion=2003-09-02.23
5
+
6
+ # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003
7
+ # Free Software Foundation, Inc.
8
+ # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
9
+
10
+ # This program is free software; you can redistribute it and/or modify
11
+ # it under the terms of the GNU General Public License as published by
12
+ # the Free Software Foundation; either version 2, or (at your option)
13
+ # any later version.
14
+
15
+ # This program is distributed in the hope that it will be useful,
16
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
17
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
+ # GNU General Public License for more details.
19
+
20
+ # You should have received a copy of the GNU General Public License
21
+ # along with this program; if not, write to the Free Software
22
+ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
23
+ # 02111-1307, USA.
24
+
25
+ # As a special exception to the GNU General Public License, if you
26
+ # distribute this file as part of a program that contains a
27
+ # configuration script generated by Autoconf, you may include it under
28
+ # the same distribution terms that you use for the rest of that program.
29
+
30
+ if test $# -eq 0; then
31
+ echo 1>&2 "Try \`$0 --help' for more information"
32
+ exit 1
33
+ fi
34
+
35
+ run=:
36
+
37
+ # In the cases where this matters, `missing' is being run in the
38
+ # srcdir already.
39
+ if test -f configure.ac; then
40
+ configure_ac=configure.ac
41
+ else
42
+ configure_ac=configure.in
43
+ fi
44
+
45
+ msg="missing on your system"
46
+
47
+ case "$1" in
48
+ --run)
49
+ # Try to run requested program, and just exit if it succeeds.
50
+ run=
51
+ shift
52
+ "$@" && exit 0
53
+ # Exit code 63 means version mismatch. This often happens
54
+ # when the user try to use an ancient version of a tool on
55
+ # a file that requires a minimum version. In this case we
56
+ # we should proceed has if the program had been absent, or
57
+ # if --run hadn't been passed.
58
+ if test $? = 63; then
59
+ run=:
60
+ msg="probably too old"
61
+ fi
62
+ ;;
63
+ esac
64
+
65
+ # If it does not exist, or fails to run (possibly an outdated version),
66
+ # try to emulate it.
67
+ case "$1" in
68
+
69
+ -h|--h|--he|--hel|--help)
70
+ echo "\
71
+ $0 [OPTION]... PROGRAM [ARGUMENT]...
72
+
73
+ Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
74
+ error status if there is no known handling for PROGRAM.
75
+
76
+ Options:
77
+ -h, --help display this help and exit
78
+ -v, --version output version information and exit
79
+ --run try to run the given command, and emulate it if it fails
80
+
81
+ Supported PROGRAM values:
82
+ aclocal touch file \`aclocal.m4'
83
+ autoconf touch file \`configure'
84
+ autoheader touch file \`config.h.in'
85
+ automake touch all \`Makefile.in' files
86
+ bison create \`y.tab.[ch]', if possible, from existing .[ch]
87
+ flex create \`lex.yy.c', if possible, from existing .c
88
+ help2man touch the output file
89
+ lex create \`lex.yy.c', if possible, from existing .c
90
+ makeinfo touch the output file
91
+ tar try tar, gnutar, gtar, then tar without non-portable flags
92
+ yacc create \`y.tab.[ch]', if possible, from existing .[ch]
93
+
94
+ Send bug reports to <bug-automake@gnu.org>."
95
+ ;;
96
+
97
+ -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
98
+ echo "missing $scriptversion (GNU Automake)"
99
+ ;;
100
+
101
+ -*)
102
+ echo 1>&2 "$0: Unknown \`$1' option"
103
+ echo 1>&2 "Try \`$0 --help' for more information"
104
+ exit 1
105
+ ;;
106
+
107
+ aclocal*)
108
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
109
+ # We have it, but it failed.
110
+ exit 1
111
+ fi
112
+
113
+ echo 1>&2 "\
114
+ WARNING: \`$1' is $msg. You should only need it if
115
+ you modified \`acinclude.m4' or \`${configure_ac}'. You might want
116
+ to install the \`Automake' and \`Perl' packages. Grab them from
117
+ any GNU archive site."
118
+ touch aclocal.m4
119
+ ;;
120
+
121
+ autoconf)
122
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
123
+ # We have it, but it failed.
124
+ exit 1
125
+ fi
126
+
127
+ echo 1>&2 "\
128
+ WARNING: \`$1' is $msg. You should only need it if
129
+ you modified \`${configure_ac}'. You might want to install the
130
+ \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
131
+ archive site."
132
+ touch configure
133
+ ;;
134
+
135
+ autoheader)
136
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
137
+ # We have it, but it failed.
138
+ exit 1
139
+ fi
140
+
141
+ echo 1>&2 "\
142
+ WARNING: \`$1' is $msg. You should only need it if
143
+ you modified \`acconfig.h' or \`${configure_ac}'. You might want
144
+ to install the \`Autoconf' and \`GNU m4' packages. Grab them
145
+ from any GNU archive site."
146
+ files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
147
+ test -z "$files" && files="config.h"
148
+ touch_files=
149
+ for f in $files; do
150
+ case "$f" in
151
+ *:*) touch_files="$touch_files "`echo "$f" |
152
+ sed -e 's/^[^:]*://' -e 's/:.*//'`;;
153
+ *) touch_files="$touch_files $f.in";;
154
+ esac
155
+ done
156
+ touch $touch_files
157
+ ;;
158
+
159
+ automake*)
160
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
161
+ # We have it, but it failed.
162
+ exit 1
163
+ fi
164
+
165
+ echo 1>&2 "\
166
+ WARNING: \`$1' is $msg. You should only need it if
167
+ you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
168
+ You might want to install the \`Automake' and \`Perl' packages.
169
+ Grab them from any GNU archive site."
170
+ find . -type f -name Makefile.am -print |
171
+ sed 's/\.am$/.in/' |
172
+ while read f; do touch "$f"; done
173
+ ;;
174
+
175
+ autom4te)
176
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
177
+ # We have it, but it failed.
178
+ exit 1
179
+ fi
180
+
181
+ echo 1>&2 "\
182
+ WARNING: \`$1' is needed, but is $msg.
183
+ You might have modified some files without having the
184
+ proper tools for further handling them.
185
+ You can get \`$1' as part of \`Autoconf' from any GNU
186
+ archive site."
187
+
188
+ file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
189
+ test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
190
+ if test -f "$file"; then
191
+ touch $file
192
+ else
193
+ test -z "$file" || exec >$file
194
+ echo "#! /bin/sh"
195
+ echo "# Created by GNU Automake missing as a replacement of"
196
+ echo "# $ $@"
197
+ echo "exit 0"
198
+ chmod +x $file
199
+ exit 1
200
+ fi
201
+ ;;
202
+
203
+ bison|yacc)
204
+ echo 1>&2 "\
205
+ WARNING: \`$1' $msg. You should only need it if
206
+ you modified a \`.y' file. You may need the \`Bison' package
207
+ in order for those modifications to take effect. You can get
208
+ \`Bison' from any GNU archive site."
209
+ rm -f y.tab.c y.tab.h
210
+ if [ $# -ne 1 ]; then
211
+ eval LASTARG="\${$#}"
212
+ case "$LASTARG" in
213
+ *.y)
214
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
215
+ if [ -f "$SRCFILE" ]; then
216
+ cp "$SRCFILE" y.tab.c
217
+ fi
218
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
219
+ if [ -f "$SRCFILE" ]; then
220
+ cp "$SRCFILE" y.tab.h
221
+ fi
222
+ ;;
223
+ esac
224
+ fi
225
+ if [ ! -f y.tab.h ]; then
226
+ echo >y.tab.h
227
+ fi
228
+ if [ ! -f y.tab.c ]; then
229
+ echo 'main() { return 0; }' >y.tab.c
230
+ fi
231
+ ;;
232
+
233
+ lex|flex)
234
+ echo 1>&2 "\
235
+ WARNING: \`$1' is $msg. You should only need it if
236
+ you modified a \`.l' file. You may need the \`Flex' package
237
+ in order for those modifications to take effect. You can get
238
+ \`Flex' from any GNU archive site."
239
+ rm -f lex.yy.c
240
+ if [ $# -ne 1 ]; then
241
+ eval LASTARG="\${$#}"
242
+ case "$LASTARG" in
243
+ *.l)
244
+ SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
245
+ if [ -f "$SRCFILE" ]; then
246
+ cp "$SRCFILE" lex.yy.c
247
+ fi
248
+ ;;
249
+ esac
250
+ fi
251
+ if [ ! -f lex.yy.c ]; then
252
+ echo 'main() { return 0; }' >lex.yy.c
253
+ fi
254
+ ;;
255
+
256
+ help2man)
257
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
258
+ # We have it, but it failed.
259
+ exit 1
260
+ fi
261
+
262
+ echo 1>&2 "\
263
+ WARNING: \`$1' is $msg. You should only need it if
264
+ you modified a dependency of a manual page. You may need the
265
+ \`Help2man' package in order for those modifications to take
266
+ effect. You can get \`Help2man' from any GNU archive site."
267
+
268
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
269
+ if test -z "$file"; then
270
+ file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
271
+ fi
272
+ if [ -f "$file" ]; then
273
+ touch $file
274
+ else
275
+ test -z "$file" || exec >$file
276
+ echo ".ab help2man is required to generate this page"
277
+ exit 1
278
+ fi
279
+ ;;
280
+
281
+ makeinfo)
282
+ if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
283
+ # We have makeinfo, but it failed.
284
+ exit 1
285
+ fi
286
+
287
+ echo 1>&2 "\
288
+ WARNING: \`$1' is $msg. You should only need it if
289
+ you modified a \`.texi' or \`.texinfo' file, or any other file
290
+ indirectly affecting the aspect of the manual. The spurious
291
+ call might also be the consequence of using a buggy \`make' (AIX,
292
+ DU, IRIX). You might want to install the \`Texinfo' package or
293
+ the \`GNU make' package. Grab either from any GNU archive site."
294
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
295
+ if test -z "$file"; then
296
+ file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
297
+ file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
298
+ fi
299
+ touch $file
300
+ ;;
301
+
302
+ tar)
303
+ shift
304
+ if test -n "$run"; then
305
+ echo 1>&2 "ERROR: \`tar' requires --run"
306
+ exit 1
307
+ fi
308
+
309
+ # We have already tried tar in the generic part.
310
+ # Look for gnutar/gtar before invocation to avoid ugly error
311
+ # messages.
312
+ if (gnutar --version > /dev/null 2>&1); then
313
+ gnutar "$@" && exit 0
314
+ fi
315
+ if (gtar --version > /dev/null 2>&1); then
316
+ gtar "$@" && exit 0
317
+ fi
318
+ firstarg="$1"
319
+ if shift; then
320
+ case "$firstarg" in
321
+ *o*)
322
+ firstarg=`echo "$firstarg" | sed s/o//`
323
+ tar "$firstarg" "$@" && exit 0
324
+ ;;
325
+ esac
326
+ case "$firstarg" in
327
+ *h*)
328
+ firstarg=`echo "$firstarg" | sed s/h//`
329
+ tar "$firstarg" "$@" && exit 0
330
+ ;;
331
+ esac
332
+ fi
333
+
334
+ echo 1>&2 "\
335
+ WARNING: I can't seem to be able to run \`tar' with the given arguments.
336
+ You may want to install GNU tar or Free paxutils, or check the
337
+ command line arguments."
338
+ exit 1
339
+ ;;
340
+
341
+ *)
342
+ echo 1>&2 "\
343
+ WARNING: \`$1' is needed, and is $msg.
344
+ You might have modified some files without having the
345
+ proper tools for further handling them. Check the \`README' file,
346
+ it often tells you about the needed prerequisites for installing
347
+ this package. You may also peek at any GNU archive site, in case
348
+ some other package would contain this missing \`$1' program."
349
+ exit 1
350
+ ;;
351
+ esac
352
+
353
+ exit 0
354
+
355
+ # Local variables:
356
+ # eval: (add-hook 'write-file-hooks 'time-stamp)
357
+ # time-stamp-start: "scriptversion="
358
+ # time-stamp-format: "%:y-%02m-%02d.%02H"
359
+ # time-stamp-end: "$"
360
+ # End:
data/test/test.rb ADDED
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/ruby1.8
2
+ require 'rubygems'
3
+ require 'SVM'
4
+ include SVM
5
+ puts "TEST of the Ruby libsvm bindings"
6
+ puts "------------------------------------"
7
+ pa = Parameter.new
8
+ pa.C = 100
9
+ pa.svm_type = NU_SVC
10
+ pa.degree = 1
11
+ pa.coef0 = 0
12
+ pa.eps= 0.001
13
+ s = Marshal.dump(pa)
14
+ lpa = Marshal.load(s)
15
+ sp = Problem.new
16
+ labels = [0, 1, 1, 0]
17
+ samples = [[0,0], [0,1], [1,0], [1,1]]
18
+ labels.each_index { |i| sp.addExample(labels[i], samples[i]) }
19
+ kernels = [ LINEAR, POLY, RBF, SIGMOID ]
20
+ knames = [ 'LINEAR ', 'POLY ', 'RBF ', 'SIGMOID' ]
21
+ kernels.each_index { |j|
22
+ pa.kernel_type = kernels[j]
23
+ m = Model.new(sp, pa)
24
+ ec = 0
25
+ labels.each_index { |i|
26
+ pred, probs = m.predict_probability(samples[i])
27
+ puts "Got #{pred} and #{probs.join(',')} for sample: [#{samples[i].join(',')}] Label: #{labels[i]} Pred: #{pred} Kernel: #{knames[j]} sv: #{m.svcount}"
28
+ ec += 1 if labels[i] != pred
29
+ }
30
+ puts "Kernel #{knames[j]} made #{ec} errors"
31
+ }
32
+
metadata ADDED
@@ -0,0 +1,68 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: gohanlonllc-libsvm-ruby
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.8.4
5
+ platform: ruby
6
+ authors:
7
+ - Not Pranava
8
+ - Rudi Cilibrasi
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2009-04-03 00:00:00 -07:00
14
+ default_executable:
15
+ dependencies: []
16
+
17
+ description:
18
+ email: pranava.adduri@gohanlon.com
19
+ executables: []
20
+
21
+ extensions:
22
+ - ext/extconf.rb
23
+ extra_rdoc_files: []
24
+
25
+ files:
26
+ - COPYING
27
+ - README
28
+ - ext/aclocal.m4
29
+ - ext/config.guess
30
+ - ext/config.sub
31
+ - ext/configure
32
+ - ext/configure.ac
33
+ - ext/extconf.rb
34
+ - ext/extraMakefile.am
35
+ - ext/extraMakefile.in
36
+ - ext/INSTALL
37
+ - ext/install-sh
38
+ - ext/main.cpp
39
+ - ext/missing
40
+ - test/test.rb
41
+ has_rdoc: false
42
+ homepage: http://www.google.com
43
+ post_install_message:
44
+ rdoc_options: []
45
+
46
+ require_paths:
47
+ - lib
48
+ required_ruby_version: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - ">="
51
+ - !ruby/object:Gem::Version
52
+ version: "0"
53
+ version:
54
+ required_rubygems_version: !ruby/object:Gem::Requirement
55
+ requirements:
56
+ - - ">="
57
+ - !ruby/object:Gem::Version
58
+ version: "0"
59
+ version:
60
+ requirements: []
61
+
62
+ rubyforge_project:
63
+ rubygems_version: 1.2.0
64
+ signing_key:
65
+ specification_version: 2
66
+ summary: Ruby bindings for the libsvm project
67
+ test_files:
68
+ - test/test.rb