GCJ-DBTOOL(1)

NAME
gcj-dbtool - Manipulate class file mapping databases for libgcj

SYNOPSIS
gcj-dbtool OPTION DBFILE [MORE] ...

gcj-dbtool [-0] [-] [-n] [-a] [-f]
  [-t] [-l] [-p [LIBDIR]]
  [-v] [-m] [--version] [--help]

DESCRIPTION
"gcj-dbtool" is a tool for creating and manipulating class file mapping databases. "libgcj" can use these databases to find a shared library corresponding to the bytecode representation of a class. This functionality is useful for ahead-of-time compilation of a program that has no knowledge of "gcj".

"gcj-dbtool" works best if all the jar files added to it are compiled using "-findirect-dispatch".

Note that "gcj-dbtool" is currently available as ``preview technology''. We believe it is a reasonable way to allow application-transparent ahead-of-time compilation, but this is an unexplored area. We welcome your comments.

OPTIONS

-n DBFILE [SIZE]
    This creates a new database. Currently, databases cannot be resized; you can choose a larger initial size if desired. The default size is 32,749.

-a DBFILE JARFILE LIB
-f DBFILE JARFILE LIB
    This adds a jar file to the database. For each class file in the jar, a cryptographic signature of the bytecode representation of the class is recorded in the database. At runtime, a class is looked up by its signature and the compiled form of the class is looked for in the corresponding shared library. The -a option will verify that LIB exists before adding it to the database; -f skips this check.

[-][-0] -m DBFILE DBFILE,[DBFILE]
    Merge a number of databases. The output database overwrites any existing database. To add databases into an existing database, include the destination in the list of sources.

    If - or -0 are used, the list of files to read is taken from standard input instead of the command line. For -0, Input filenames are terminated by a null character instead of by whitespace. Useful when arguments might contain white space. The GNU find -print0 option produces input suitable for this mode.

-t DBFILE
    Test a database.

-l DBFILE
    List the contents of a database.

-p  Print the name of the default database. If there is no default database, this prints a blank line. If LIBDIR is specified, use it instead of the default library directory component of the database name.

--help
    Print a help message, then exit.

--version
-v  Print version information, then exit.

SEE ALSO

COPYRIGHT
Copyright (c) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with the Invariant Sections being ``GNU General Public License'', the Front-Cover texts being (a) (see below), and with the Back-Cover Texts being (b) (see below). A copy of the license is included in the man page gfdl(7).

(a) The FSF's Front-Cover Text is:

     A GNU Manual

(b) The FSF's Back-Cover Text is:

     You have freedom to copy and modify this GNU Manual, like GNU
     software.  Copies published by the Free Software Foundation raise
     funds for GNU development.