Fixups for version 0.1

This commit is contained in:
brianb 2000-03-19 13:57:08 +00:00
parent f009565993
commit ad4d17cfe9
8 changed files with 93 additions and 24 deletions

View File

@ -1,4 +1,7 @@
Brian Bruns <camber@ais.org>
Karl Nyberg <knyberg@grebyn.com>
Georg Bauer <gb@hugo.westfalen.de>
Carl Seutter <cgseutter@worldnet.att.net>

26
INSTALL Normal file
View File

@ -0,0 +1,26 @@
Basic Installation
==================
$ cd src
$ ./configure
$ make
This will build some useful utilities:
mdb-dump -- simple hex dump utility that I've been using to look at mdb files
mdb-schema -- prints DDL for the specified table
mdb-export -- export table to CSV format
mdb-tables -- a simple dump of table names to be used with shell scripts
mdb-header -- generates a C header to be used in exporting mdb data to a C prog.
mdb-parsecvs -- generates a C program given a CSV file made with mdb-export
And some utilities useful for debugging:
prcat -- prints the catalog table from an mdb file,
prkkd -- dump of information about design view data given the offset to it.
prtable -- dump of a table definition.
prdata -- dump of the data given a table name.
Once MDB Tools has been compiled, libmdb.a will be in the src/libmdb directory
and the utility programs will be in the src/util directory.

23
README
View File

@ -1,8 +1,8 @@
This is mdbtools version 0.01
This is mdbtools version 0.1
This software is very pre-alpha, so don't expect to much unless you know C and
This software is alpha so don't expect too much unless you know C and
probably a little something about databases and reverse engineering file
formats, you're welcome to try it out but don't expect much if anything to work.
formats, you're welcome to try it out but don't expect miracles.
For the rest of you, read the HACKERS file for a description of where the code
stands and what has been gleened of the file format.
@ -12,21 +12,10 @@ data from mdb files. This goal will of course expand over time as the file
format becomes more well understood. Also in the plans is a Gtk+ browser for
MDB files and a ODBC/SQL frontend.
To install type 'make' in the src directory and hope it works :-)
This will build some useful utilities:
mdb-dump -- simple hex dump utility that I've been using to look at mdb files
mdb-schema -- prints DDL for the specified table
mdb-export -- export table to CSV format
And some utilities useful for debugging:
prcat -- prints the catalog table from an mdb file,
prkkd -- dump of information about design view data given the offset to it.
prtable -- dump of a table definition.
prdata -- dump of the data given a table name.
Files in libmdb are licensed under LGPL and the utilities under the GPL, see
COPYING.LIB and COPYING files respectively.
To install type see the INSTALL file
Check out http://mdbtools.sourceforge.net for CVS, mailing list and similar.

6
TODO
View File

@ -3,10 +3,12 @@ Things to Do
. Complete the list of datatypes
. Figure out how to properly determine fixed or variable length columns
. Figure out how NULLs are stored in data rows
. Figure out what happens for varchar columns starting at > 256
. Modify mdb-schema utility support different backend databases
. Modify mdb-export to handle different delimiters/options
. Get autoconf working
. Get automake working
. Check out text file unixODBC driver to see if it can be adapted to use
libmdb (it already has a SQL parser).
. Straighten out which functions in libmdb are meant to be used and which ones
should be static.
. Create an API reference for libmdb (maybe some man pages).

View File

@ -22,7 +22,7 @@ ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
RM = @RM@
subdirs = libmdb util extras
all:
@ -31,9 +31,21 @@ all:
|| case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
clean:
cd extras; make clean
cd util; make clean
cd libmdb; make clean
@for dir in ${subdirs} include; do \
(cd $$dir && $(MAKE) clean && rm -f Makefile) \
|| case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac; \
rm -f config.log config.status Makefile config.cache; \
done && test -z "$$fail"
install:
@for dir in ${subdirs} include; do \
(cd $$dir && $(MAKE) install) \
|| case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
uninstall:
@for dir in ${subdirs} include; do \
(cd $$dir && $(MAKE) uninstall) \
|| case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
# automatic re-running of configure if the configure.in file has changed
${srcdir}/configure: configure.in

View File

@ -19,7 +19,7 @@ LIBS =
INSTALL= @INSTALL@
PROGS = mdb-dump
OBJS = dump.o
OBJS = dump.o
all: $(PROGS)
@ -31,3 +31,15 @@ mdb-dump: dump.o
.c.o:
$(CC) -g -c $<
install:
@for prog in $(PROGS); do \
echo " copying $$prog to $(bindir)"; \
cp $$prog $(bindir); \
done
uninstall:
@for prog in $(PROGS); do \
echo " removing $$prog from $(bindir)"; \
rm -f $(bindir)/$$prog; \
done

View File

@ -17,6 +17,7 @@ CFLAGS = $(CPPFLAG) -g -O2
LDFLAGS =
LIBS =
INSTALL= @INSTALL@
LIBLIST = libmdb.a
INC = -I ../include `glib-config --cflags`
OBJS = catalog.o mem.o file.o kkd.o table.o data.o dump.o
@ -31,3 +32,15 @@ clean:
.c.o:
$(CC) -g -c $< $(INC)
install:
@for lib in $(LIBLIST); do \
echo " copying $$lib to $(libdir)"; \
cp $$lib $(libdir); \
done
uninstall:
@for lib in $(LIBLIST); do \
echo " copying $$lib to $(libdir)"; \
rm -f $(libdir)/$$lib; \
done

View File

@ -69,3 +69,15 @@ clean:
.c.o:
$(CC) -g -c $< $(INC)
install:
@for prog in $(PROGS); do \
echo " copying $$prog to $(bindir)"; \
cp $$prog $(bindir); \
done
uninstall:
@for prog in $(PROGS); do \
echo " removing $$prog from $(bindir)"; \
rm -f $(bindir)/$$prog; \
done