~ubuntu-branches/ubuntu/lucid/graphviz/lucid-security

« back to all changes in this revision

Viewing changes to tools/sfio/README

  • Committer: Bazaar Package Importer
  • Author(s): Stephen M Moraco
  • Date: 2002-02-05 18:52:12 UTC
  • Revision ID: james.westby@ubuntu.com-20020205185212-8i04c70te00rc40y
Tags: upstream-1.7.16
ImportĀ upstreamĀ versionĀ 1.7.16

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
DIRECTORY HIERARCHY:
 
2
 
 
3
This directory hierarchy has the source of Sfio, the Safe/Fast I/O library.
 
4
 
 
5
. :             source code for Sfio.
 
6
./features:     source code for generating configuration parameters.
 
7
./Sfio_f:       function versions of sfio macros.
 
8
./Stdio_s:      the source level <stdio> compatibility package.
 
9
./Stdio_b:      the binary level <stdio> compatibility package.
 
10
./Sfio_dc:      a collection of functions to create useful disciplines.
 
11
./Sfio_t:       a set of regression tests for the Sfio library.
 
12
./Stdio_t:      a set of regression tests for certain Stdio behaviors and
 
13
                for the compatibility packages.
 
14
 
 
15
SOFTWARE CONSTRUCTION:
 
16
 
 
17
The build procedure is based on the iffe language for automatic
 
18
configuration. An iffe interpreter and its manual pages are included in
 
19
this code distribution. See the files in ./features for examples of iffe
 
20
probes to generate configuration parameters.
 
21
 
 
22
Two sets of libraries will be built:
 
23
        libsfio.a and libstdio.a: for uni-threaded applications, and
 
24
        libsfio-mt.a and libstdio-mt.a: for multi-threaded applications.
 
25
 
 
26
Depending on the local platform, an application using the multi-threaded
 
27
libraries may need to specify a thread library for linkage. For example,
 
28
below are the known requirements for a few popular platforms:
 
29
 
 
30
        Irix, Linux, Solaris systems:   -lpthread
 
31
        Hpux:                           -lcma
 
32
        BSD:                            none
 
33
 
 
34
SFIO DISCIPLINES:
 
35
 
 
36
IO disciplines allow applications to extend stream data processing.
 
37
See the Sfio manual pages for detail on creating discipline structures
 
38
and inserting them into streams. The directory Sfio_dc contains a number
 
39
of useful disciplines, including one to uncompress a file compressed
 
40
by the Unix compress program and one to make reading DOS text files more
 
41
comfortable by translating \r\n to \n.
 
42
 
 
43
Disciplines are reusable code, please contribute any interesting disciplines
 
44
that you come up with. This is best done by sending such code to me at
 
45
the address below. Sharing reusable code means that the name space must
 
46
be managed. Therefore, I recommend that each discipline package provides
 
47
the following public interface:
 
48
 
 
49
Sfdisc_t* sfdcXXX(Sfio_t* f, other arguments):
 
50
        Create a discipline of the type XXX and insert it into the
 
51
        stream f. For example, the below call create a discipline that
 
52
        make the stream "f" act as if it's the union of the "n" streams
 
53
        given in "array".
 
54
                sfdcunion(Sfio_t* f, Sfio_t** array, int n);
 
55
 
 
56
CORRESPONDENCE:
 
57
Comments, etc. should be sent to:
 
58
 
 
59
        Phong Vo
 
60
        AT&T Labs - Research
 
61
        180 Park Avenue
 
62
        Florham Park, NJ 07932
 
63
        e-mail: kpv@research.att.com