1README for FreeTDS 1.4.dev (development)
2====
3
4*Release date TBD*
5
6**To build FreeTDS read the file [INSTALL](./INSTALL.md) or
7the [FreeTDS Users Guide](http://www.freetds.org/userguide/)**
8
9FreeTDS is a free implementation of Sybase's DB-Library, CT-Library,
10and ODBC libraries. FreeTDS builds and runs on every flavor of
11unix-like systems we've heard of (and some we haven't) as well as
12Win32 (with or without Cygwin), VMS, and Mac OS X.  Failure to build
13on your system is probably considered a bug.  It has C language
14bindings, and works also with Perl and PHP, among others.
15
16FreeTDS is licensed under the GNU LGPL license. See [COPYING_LIB.txt](./COPYING_LIB.txt) for
17details.
18
19Other files you might want to peruse:
20
21* [AUTHORS](./AUTHORS.md)  Who's involved
22* [BUGS](./BUGS.md)        Some things we fixed, or think we did
23* [NEWS](./NEWS.md)        Summary of feature changes and fixes
24* [TODO](./TODO.md)        The roadmap, such as it is
25
26Also, [api_status](./doc/api_status.txt) shows which functions are implemented.
27
28For details on what's new in this version, see NEWS.  For unbearable
29detail, see git log.
30
31Documentation
32=============
33
34A User Guide, in XML and HTML form, is included in this distribution.
35Also included is a reference manual, generated in HTML with Doxygen.
36"make install" installs the HTML documentation, by default to
37/usr/local/share/doc/freetds-<version>.
38
39
40Note to Users
41=============
42
43Submissions of test programs (self-contained programs that demonstrate
44functionality or problems) are greatly appreciated.  They should
45create any tables needed (since we obviously don't have access to your
46database) and populate them.  Unit tests for any of the libraries
47is appreciated
48
49Notes to Developers
50===================
51
52The code is split into several pieces.
53
541. `tds` directory is the wire level stuff, it should be independent of
55   the library using it, this will allow db-lib, ct-lib, and ODBC to
56   sit on top.
57
582. `db-lib` directory. This is the actual db-lib code which runs on top of
59   tds.
60
613. `ct-lib` directory. This is the ct-lib code which runs on top of tds.
62
634. `server` directory. This will be a set of server routines basically
64   to impersonate a dataserver, functions like send_login_ack() etc...
65
665. `odbc` directory. ODBC implementation over tds.  Uses iODBC or
67   unixODBC as a driver manager.  You need to have one of those if you
68   are using the ODBC CLI.
69
706. `unittests` directories. Test harness code for ct-lib, db-lib, ODBC and
71   libtds.
72
737. `samples` directories. Sample code for getting started with Perl,
74   PHP, etc...
75
768. `pool` directory. A connection pooling server for TDS.  Useful if you
77   have a connection limited license.  Needs some hacking to get
78   configured but is quite stable once configured correctly. Contact
79   the list if interested in how to use it.
80
81Please look at doc/getting_started.txt for a description of what is
82going on in the code.
83
84Side note: Brian, as many free software authors, appreciates postcards
85from all over. So if you live someplace neat (read: not Michigan) and
86want to send one, email him (brian@bruns.org) for his current snail mail
87address.
88