# This file is used to maintain libtool version info for libgcj.  See
# the libtool manual to understand the meaning of the fields.  This is
# a separate file so that version updates don't involve re-running
# automake.
# Note: When changing the version here, please do also update LIBGCJ_SONAME
# in gcc/config/i386/cygwin.h and gcc/config/i386/mingw32.h.
# CURRENT:REVISION:AGE
16:0:0
