aboutsummaryrefslogtreecommitdiff
path: root/gfsm/gfsm/README.pod
blob: 87c57fd0b1511e895589f48fd46c0299eb3dfad6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
=pod

README for package gfsm

Last updated for gfsm v0.0.8

=head1 DESCRIPTION

The gfsm package consists of libgfsm, an abstract C library
of tools for manipulation of finite state machines, and the
gfsm utilities, a suite of command-line tools built on libgfsm.
gfsm currently supports AT&T style weighted transducer
text input and label definition files, as well as a number
of common algebraic operations on finite state machines.

=head1 DEPENDENCIES

=over 4

=item glib-2.0 (REQUIRED)

Available from:
http://www.gtk.org/

C library for common data structures.
Tested versions 2.4.6, 2.8.3.


=item zlib (Optional)

Compression library by Jean-loup Gailly and Mark Adler
which can be used for transparent (de)compression.
Available from:
http://www.gzip.org/zlib

Tested version 1.2.1.


=item pkg-config

Available from:
http://www.freedesktop.org/software/pkgconfig/

To build from CVS, you will also need the pkg-config
autoconf macros which come with the source distribution
of pkg-config.

=item doxygen (Optional)

Required for building library documentation.
Available from:
http://www.doxygen.org

Tested versions 1.2.15, 1.3.8, 1.4.4.

=item Perl (Optional)

Get it from http://www.cpan.org or http://www.perl.com

Required for re-building command-line parsers
and/or non-standard documentation formats.


=item Getopt::Gen (Optional)

A Perl module used to generate command-line option parsers.
Should be available from the author of this package at:

http://www.ling.uni-potsdam.de/~moocow/projects/perl

Tested versions 0.09, 0.10.

Note that Getopt::Gen depends on several 3rd-party perl
modules, including Text::Template and Parse::Lex,
which are available from CPAN.

Note additionally that Parse::Lex v2.15 is broken: if
it gives you grief, use the hacked version available
at:

http://www.ling.uni-potsdam.de/~moocow/projects/perl/ParseLex-2.15-hacked.tar.gz


=item pod2man, pod2text, pod2html, pod2latex (Optional)

The Perl documentation converstion utilities, required
for building the correspdonding program documentation
formats, should have come with your Perl.  These are
only required if you wish to build program documentation
formats other than the defaults which come with the
distribution.

=back


=head1 INSTALLATION

Issue the following commands to the shell:

 cd gfsm-X.Y.Z  (or wherever you extracted the distribution)
 sh ./configure
 make
 make install

=head2 Additional installation targets

The build system supports the following optional installation targets;
call them with:

 make SOME_TARGET

from the distribution root directory.


=over 4

=item install-magic

Adds recognition support for stored binary gfsm files
to the database for the file(1) utility.  If your file(1)
database lives somewhere other than /etc/magic (see magic(5) for details),
call this target as:

 make magic=/full/path/to/my/file/magic install-magic

=item uninstall-magic

Removes gfsm recognition support (if present) from your
/etc/magic database, or from whatever database you specified
with the 'magic' variable.

=back

=head1 BUILD OPTIONS

The 'configure' script supports the following options, among others:

=over 4

=item --enable-debug , --disable-debug

Whether to enable verbose debugging messages.
Default=no.

=back

See the output of `./configure --help` for details on additional
supported options.



=head1 ACKNOWLEDGEMENTS

Ideas and code adapted from the SFST package by Helmut Schmid.

Many thanks to Thomas Hanneforth for useful advice.


=head1 KNOWN BUGS

Many.


=head1 AUTHOR

Bryan Jurish E<lt>moocow@ling.uni-potsdam.deE<gt>