# Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@

# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

@SET_MAKE@

# ---------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
# 
# http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ---------------------------------------------------------------------------

VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
check_PROGRAMS = $(am__EXEEXT_1)
subdir = src/test
DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \
	$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/find_activemq.m4 \
	$(top_srcdir)/m4/find_apr.m4 $(top_srcdir)/m4/find_icu.m4 \
	$(top_srcdir)/m4/find_xerces.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
am__DEPENDENCIES_1 =
am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1)
libMeetingAnnotator_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
am_libMeetingAnnotator_la_OBJECTS = MeetingAnnotator.lo
libMeetingAnnotator_la_OBJECTS = $(am_libMeetingAnnotator_la_OBJECTS)
libMeetingAnnotator_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
	$(CXXFLAGS) $(libMeetingAnnotator_la_LDFLAGS) $(LDFLAGS) -o $@
libSimpleTextSegmenter_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
am_libSimpleTextSegmenter_la_OBJECTS = SimpleTextSegmenter.lo
libSimpleTextSegmenter_la_OBJECTS =  \
	$(am_libSimpleTextSegmenter_la_OBJECTS)
libSimpleTextSegmenter_la_LINK = $(LIBTOOL) --tag=CXX \
	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
	$(AM_CXXFLAGS) $(CXXFLAGS) \
	$(libSimpleTextSegmenter_la_LDFLAGS) $(LDFLAGS) -o $@
libSofaStreamHandlerFile_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
am_libSofaStreamHandlerFile_la_OBJECTS = SofaStreamHandlerFile.lo
libSofaStreamHandlerFile_la_OBJECTS =  \
	$(am_libSofaStreamHandlerFile_la_OBJECTS)
libSofaStreamHandlerFile_la_LINK = $(LIBTOOL) --tag=CXX \
	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
	$(AM_CXXFLAGS) $(CXXFLAGS) \
	$(libSofaStreamHandlerFile_la_LDFLAGS) $(LDFLAGS) -o $@
libTextSegmentConsumer_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
am_libTextSegmentConsumer_la_OBJECTS = TextSegmentConsumer.lo
libTextSegmentConsumer_la_OBJECTS =  \
	$(am_libTextSegmentConsumer_la_OBJECTS)
libTextSegmentConsumer_la_LINK = $(LIBTOOL) --tag=CXX \
	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
	$(AM_CXXFLAGS) $(CXXFLAGS) \
	$(libTextSegmentConsumer_la_LDFLAGS) $(LDFLAGS) -o $@
libdump_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
am_libdump_la_OBJECTS = annotator_dump.lo
libdump_la_OBJECTS = $(am_libdump_la_OBJECTS)
libdump_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
	$(CXXFLAGS) $(libdump_la_LDFLAGS) $(LDFLAGS) -o $@
libtoknz_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
am_libtoknz_la_OBJECTS = libtoknz_la-annotator_tok.lo \
	libtoknz_la-ss_tokenizer.lo libtoknz_la-tt_types.lo
libtoknz_la_OBJECTS = $(am_libtoknz_la_OBJECTS)
libtoknz_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(libtoknz_la_CXXFLAGS) \
	$(CXXFLAGS) $(libtoknz_la_LDFLAGS) $(LDFLAGS) -o $@
am__EXEEXT_1 = test_cas$(EXEEXT) test_engine$(EXEEXT) \
	test_typepriority$(EXEEXT) test_language$(EXEEXT) \
	test_iterators$(EXEEXT) test_casserializer$(EXEEXT) \
	test_sofa$(EXEEXT) test_primitivetypes$(EXEEXT) \
	test_xcasdeserialization$(EXEEXT) \
	test_xmideserialization$(EXEEXT)
am_test_cas_OBJECTS = test_cas.$(OBJEXT) tt_types.$(OBJEXT)
test_cas_OBJECTS = $(am_test_cas_OBJECTS)
test_cas_LDADD = $(LDADD)
test_cas_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1)
am_test_casserializer_OBJECTS = test_casserializer.$(OBJEXT)
test_casserializer_OBJECTS = $(am_test_casserializer_OBJECTS)
test_casserializer_LDADD = $(LDADD)
test_casserializer_DEPENDENCIES = $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
am_test_engine_OBJECTS = test_engine.$(OBJEXT) conui.$(OBJEXT) \
	doc_buffer.$(OBJEXT)
test_engine_OBJECTS = $(am_test_engine_OBJECTS)
test_engine_LDADD = $(LDADD)
test_engine_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1)
am_test_iterators_OBJECTS = test_iterators.$(OBJEXT) \
	tt_types.$(OBJEXT)
test_iterators_OBJECTS = $(am_test_iterators_OBJECTS)
test_iterators_LDADD = $(LDADD)
test_iterators_DEPENDENCIES = $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
am_test_language_OBJECTS = test_language.$(OBJEXT)
test_language_OBJECTS = $(am_test_language_OBJECTS)
test_language_LDADD = $(LDADD)
test_language_DEPENDENCIES = $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
am_test_primitivetypes_OBJECTS = test_primitivetypes.$(OBJEXT)
test_primitivetypes_OBJECTS = $(am_test_primitivetypes_OBJECTS)
test_primitivetypes_LDADD = $(LDADD)
test_primitivetypes_DEPENDENCIES = $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
am_test_sofa_OBJECTS = test_sofa.$(OBJEXT)
test_sofa_OBJECTS = $(am_test_sofa_OBJECTS)
test_sofa_LDADD = $(LDADD)
test_sofa_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1)
am_test_typepriority_OBJECTS = test_typepriority.$(OBJEXT) \
	tt_types.$(OBJEXT)
test_typepriority_OBJECTS = $(am_test_typepriority_OBJECTS)
test_typepriority_LDADD = $(LDADD)
test_typepriority_DEPENDENCIES = $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
am_test_xcasdeserialization_OBJECTS =  \
	test_xcasdeserialization.$(OBJEXT)
test_xcasdeserialization_OBJECTS =  \
	$(am_test_xcasdeserialization_OBJECTS)
test_xcasdeserialization_LDADD = $(LDADD)
test_xcasdeserialization_DEPENDENCIES = $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
am_test_xmideserialization_OBJECTS =  \
	test_xmideserialization.$(OBJEXT)
test_xmideserialization_OBJECTS =  \
	$(am_test_xmideserialization_OBJECTS)
test_xmideserialization_LDADD = $(LDADD)
test_xmideserialization_DEPENDENCIES = $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/config/depcomp
am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
	--mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CXXLD = $(CXX)
CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
	--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
SOURCES = $(libMeetingAnnotator_la_SOURCES) \
	$(libSimpleTextSegmenter_la_SOURCES) \
	$(libSofaStreamHandlerFile_la_SOURCES) \
	$(libTextSegmentConsumer_la_SOURCES) $(libdump_la_SOURCES) \
	$(libtoknz_la_SOURCES) $(test_cas_SOURCES) \
	$(test_casserializer_SOURCES) $(test_engine_SOURCES) \
	$(test_iterators_SOURCES) $(test_language_SOURCES) \
	$(test_primitivetypes_SOURCES) $(test_sofa_SOURCES) \
	$(test_typepriority_SOURCES) \
	$(test_xcasdeserialization_SOURCES) \
	$(test_xmideserialization_SOURCES)
DIST_SOURCES = $(libMeetingAnnotator_la_SOURCES) \
	$(libSimpleTextSegmenter_la_SOURCES) \
	$(libSofaStreamHandlerFile_la_SOURCES) \
	$(libTextSegmentConsumer_la_SOURCES) $(libdump_la_SOURCES) \
	$(libtoknz_la_SOURCES) $(test_cas_SOURCES) \
	$(test_casserializer_SOURCES) $(test_engine_SOURCES) \
	$(test_iterators_SOURCES) $(test_language_SOURCES) \
	$(test_primitivetypes_SOURCES) $(test_sofa_SOURCES) \
	$(test_typepriority_SOURCES) \
	$(test_xcasdeserialization_SOURCES) \
	$(test_xmideserialization_SOURCES)
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
    *) f=$$p;; \
  esac;
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__installdirs = "$(DESTDIR)$(includedir)"
includeHEADERS_INSTALL = $(INSTALL_HEADER)
HEADERS = $(include_HEADERS)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ACTIVEMQ_CXXFLAGS = @ACTIVEMQ_CXXFLAGS@
ACTIVEMQ_LDFLAGS = @ACTIVEMQ_LDFLAGS@
ACTIVEMQ_VERSION = @ACTIVEMQ_VERSION@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
ICU_CPPFLAGS = @ICU_CPPFLAGS@
ICU_LDFLAGS = @ICU_LDFLAGS@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
LT_VERSION_NUMBER = @LT_VERSION_NUMBER@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
UIMACPP_HOME_INCLUDE = @UIMACPP_HOME_INCLUDE@
UIMACPP_HOME_LIB = @UIMACPP_HOME_LIB@
UIMA_ACTIVEMQ_INCLUDE = @UIMA_ACTIVEMQ_INCLUDE@
UIMA_ACTIVEMQ_LIB = @UIMA_ACTIVEMQ_LIB@
UIMA_APR_INCLUDE = @UIMA_APR_INCLUDE@
UIMA_APR_LIB = @UIMA_APR_LIB@
UIMA_ICU_INCLUDE = @UIMA_ICU_INCLUDE@
UIMA_ICU_LIB = @UIMA_ICU_LIB@
UIMA_JDK_INCLUDE = @UIMA_JDK_INCLUDE@
UIMA_LIB = @UIMA_LIB@
UIMA_XERCES_INCLUDE = @UIMA_XERCES_INCLUDE@
UIMA_XERCES_LIB = @UIMA_XERCES_LIB@
VERSION = @VERSION@
XERCES_CPPFLAGS = @XERCES_CPPFLAGS@
XERCES_LDFLAGS = @XERCES_LDFLAGS@
XERCES_LIBS = @XERCES_LIBS@
XERCES_VERSION = @XERCES_VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
activemq_install = @activemq_install@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
apr_install = @apr_install@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
icu_install = @icu_install@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
xerces_install = @xerces_install@
TESTS = fvt.sh
#noinst_libdir = $(libdir)
check_LTLIBRARIES = $(TST_LIB)
EXTRA_DIST = data fvtTestfile fvt.sh
TST_LIB = libtoknz.la libdump.la libSofaStreamHandlerFile.la libSimpleTextSegmenter.la libTextSegmentConsumer.la libMeetingAnnotator.la
TST_BIN = test_cas test_engine test_typepriority test_language  \
 test_iterators test_casserializer test_sofa test_primitivetypes test_xcasdeserialization test_xmideserialization

INCLUDES = -Isrc -I../cas -I../framework $(UIMA_XERCES_INCLUDE) \
	$(UIMA_APR_INCLUDE) $(UIMA_ICU_INCLUDE) \
	$(UIMACPP_HOME_INCLUDE)
@DEBUG_TEST_FALSE@AM_CPPFLAGS = -O3 -DNDEBUG -DTRACEOFF -D_GNU_SOURCE \
@DEBUG_TEST_FALSE@	-DUIMA_SUPPRESS_TIMING
@DEBUG_TEST_TRUE@AM_CPPFLAGS = -g -DDEBUG -D_GNU_SOURCE \
@DEBUG_TEST_TRUE@	-DUIMA_SUPPRESS_TIMING

# Set default for all target_LDADD values
LDADD = $(UIMA_LIB) $(UIMA_XERCES_LIB) $(UIMA_APR_LIB) $(UIMA_ICU_LIB) $(UIMACPP_HOME_LIB) -ldl

# Set default for all target_LIBADD values
LIBADD = $(UIMA_LIB) $(UIMA_XERCES_LIB) $(UIMA_APR_LIB) $(UIMA_ICU_LIB) $(UIMACPP_HOME_LIB) -ldl

# Common routines formerly in library
# src/cmdline_driver.cpp src/doc_buffer.cpp src/htmlparser.cpp src/htmlparser_tools.cpp src/parse_handlers.cpp src/parser_config.cpp src/tt_types.cpp src/xmlparse_handlers.cpp
include_HEADERS = src/uima/*.hpp
test_casserializer_SOURCES = src/test_casserializer.cpp
test_engine_SOURCES = src/test_engine.cpp src/conui.cpp \
	src/doc_buffer.cpp
test_cas_SOURCES = src/test_cas.cpp src/tt_types.cpp
test_iterators_SOURCES = src/test_iterators.cpp src/tt_types.cpp
test_language_SOURCES = src/test_language.cpp
test_typepriority_SOURCES = src/test_typepriority.cpp src/tt_types.cpp
test_sofa_SOURCES = src/test_sofa.cpp
test_primitivetypes_SOURCES = src/test_primitivetypes.cpp
test_xcasdeserialization_SOURCES = src/test_xcasdeserialization.cpp
test_xmideserialization_SOURCES = src/test_xmideserialization.cpp

# Plugin libraries
#
#   Since tt_types is also used in the exes we need to pretend that the libraries 
#   that use it have diffeerent compile flags so thy'll get different obj names.
#   Otherwise we get: object `tt_types.$(OBJEXT)' created both with libtool and without
#
LT_FLAGS = -avoid-version -module -rpath /somewhere
libtoknz_la_SOURCES = src/annotator_tok.cpp src/ss_tokenizer.cpp \
	src/tt_types.cpp
libtoknz_la_LIBADD = $(LIBADD)
libtoknz_la_CXXFLAGS = $(AM_CXXFLAGSi)
libtoknz_la_LDFLAGS = $(LT_FLAGS)
libdump_la_SOURCES = src/annotator_dump.cpp
libdump_la_LIBADD = $(LIBADD)
libdump_la_LDFLAGS = $(LT_FLAGS)
libSofaStreamHandlerFile_la_SOURCES = src/SofaStreamHandlerFile.cpp
libSofaStreamHandlerFile_la_LIBADD = $(LIBADD)
libSofaStreamHandlerFile_la_LDFLAGS = $(LT_FLAGS)
libSimpleTextSegmenter_la_SOURCES = src/SimpleTextSegmenter.cpp
libSimpleTextSegmenter_la_LIBADD = $(LIBADD)
libSimpleTextSegmenter_la_LDFLAGS = $(LT_FLAGS)
libTextSegmentConsumer_la_SOURCES = src/TextSegmentConsumer.cpp
libTextSegmentConsumer_la_LIBADD = $(LIBADD)
libTextSegmentConsumer_la_LDFLAGS = $(LT_FLAGS)
libMeetingAnnotator_la_SOURCES = src/MeetingAnnotator.cpp
libMeetingAnnotator_la_LIBADD = $(LIBADD)
libMeetingAnnotator_la_LDFLAGS = $(LT_FLAGS)
all: all-am

.SUFFIXES:
.SUFFIXES: .cpp .lo .o .obj
$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
	@for dep in $?; do \
	  case '$(am__configure_deps)' in \
	    *$$dep*) \
	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
		&& exit 0; \
	      exit 1;; \
	  esac; \
	done; \
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/test/Makefile'; \
	cd $(top_srcdir) && \
	  $(AUTOMAKE) --foreign  src/test/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
	@case '$?' in \
	  *config.status*) \
	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
	  *) \
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
	esac;

$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh

$(top_srcdir)/configure:  $(am__configure_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh

clean-checkLTLIBRARIES:
	-test -z "$(check_LTLIBRARIES)" || rm -f $(check_LTLIBRARIES)
	@list='$(check_LTLIBRARIES)'; for p in $$list; do \
	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
	  test "$$dir" != "$$p" || dir=.; \
	  echo "rm -f \"$${dir}/so_locations\""; \
	  rm -f "$${dir}/so_locations"; \
	done
libMeetingAnnotator.la: $(libMeetingAnnotator_la_OBJECTS) $(libMeetingAnnotator_la_DEPENDENCIES) 
	$(libMeetingAnnotator_la_LINK)  $(libMeetingAnnotator_la_OBJECTS) $(libMeetingAnnotator_la_LIBADD) $(LIBS)
libSimpleTextSegmenter.la: $(libSimpleTextSegmenter_la_OBJECTS) $(libSimpleTextSegmenter_la_DEPENDENCIES) 
	$(libSimpleTextSegmenter_la_LINK)  $(libSimpleTextSegmenter_la_OBJECTS) $(libSimpleTextSegmenter_la_LIBADD) $(LIBS)
libSofaStreamHandlerFile.la: $(libSofaStreamHandlerFile_la_OBJECTS) $(libSofaStreamHandlerFile_la_DEPENDENCIES) 
	$(libSofaStreamHandlerFile_la_LINK)  $(libSofaStreamHandlerFile_la_OBJECTS) $(libSofaStreamHandlerFile_la_LIBADD) $(LIBS)
libTextSegmentConsumer.la: $(libTextSegmentConsumer_la_OBJECTS) $(libTextSegmentConsumer_la_DEPENDENCIES) 
	$(libTextSegmentConsumer_la_LINK)  $(libTextSegmentConsumer_la_OBJECTS) $(libTextSegmentConsumer_la_LIBADD) $(LIBS)
libdump.la: $(libdump_la_OBJECTS) $(libdump_la_DEPENDENCIES) 
	$(libdump_la_LINK)  $(libdump_la_OBJECTS) $(libdump_la_LIBADD) $(LIBS)
libtoknz.la: $(libtoknz_la_OBJECTS) $(libtoknz_la_DEPENDENCIES) 
	$(libtoknz_la_LINK)  $(libtoknz_la_OBJECTS) $(libtoknz_la_LIBADD) $(LIBS)

clean-checkPROGRAMS:
	@list='$(check_PROGRAMS)'; for p in $$list; do \
	  f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
	  echo " rm -f $$p $$f"; \
	  rm -f $$p $$f ; \
	done
test_cas$(EXEEXT): $(test_cas_OBJECTS) $(test_cas_DEPENDENCIES) 
	@rm -f test_cas$(EXEEXT)
	$(CXXLINK) $(test_cas_OBJECTS) $(test_cas_LDADD) $(LIBS)
test_casserializer$(EXEEXT): $(test_casserializer_OBJECTS) $(test_casserializer_DEPENDENCIES) 
	@rm -f test_casserializer$(EXEEXT)
	$(CXXLINK) $(test_casserializer_OBJECTS) $(test_casserializer_LDADD) $(LIBS)
test_engine$(EXEEXT): $(test_engine_OBJECTS) $(test_engine_DEPENDENCIES) 
	@rm -f test_engine$(EXEEXT)
	$(CXXLINK) $(test_engine_OBJECTS) $(test_engine_LDADD) $(LIBS)
test_iterators$(EXEEXT): $(test_iterators_OBJECTS) $(test_iterators_DEPENDENCIES) 
	@rm -f test_iterators$(EXEEXT)
	$(CXXLINK) $(test_iterators_OBJECTS) $(test_iterators_LDADD) $(LIBS)
test_language$(EXEEXT): $(test_language_OBJECTS) $(test_language_DEPENDENCIES) 
	@rm -f test_language$(EXEEXT)
	$(CXXLINK) $(test_language_OBJECTS) $(test_language_LDADD) $(LIBS)
test_primitivetypes$(EXEEXT): $(test_primitivetypes_OBJECTS) $(test_primitivetypes_DEPENDENCIES) 
	@rm -f test_primitivetypes$(EXEEXT)
	$(CXXLINK) $(test_primitivetypes_OBJECTS) $(test_primitivetypes_LDADD) $(LIBS)
test_sofa$(EXEEXT): $(test_sofa_OBJECTS) $(test_sofa_DEPENDENCIES) 
	@rm -f test_sofa$(EXEEXT)
	$(CXXLINK) $(test_sofa_OBJECTS) $(test_sofa_LDADD) $(LIBS)
test_typepriority$(EXEEXT): $(test_typepriority_OBJECTS) $(test_typepriority_DEPENDENCIES) 
	@rm -f test_typepriority$(EXEEXT)
	$(CXXLINK) $(test_typepriority_OBJECTS) $(test_typepriority_LDADD) $(LIBS)
test_xcasdeserialization$(EXEEXT): $(test_xcasdeserialization_OBJECTS) $(test_xcasdeserialization_DEPENDENCIES) 
	@rm -f test_xcasdeserialization$(EXEEXT)
	$(CXXLINK) $(test_xcasdeserialization_OBJECTS) $(test_xcasdeserialization_LDADD) $(LIBS)
test_xmideserialization$(EXEEXT): $(test_xmideserialization_OBJECTS) $(test_xmideserialization_DEPENDENCIES) 
	@rm -f test_xmideserialization$(EXEEXT)
	$(CXXLINK) $(test_xmideserialization_OBJECTS) $(test_xmideserialization_LDADD) $(LIBS)

mostlyclean-compile:
	-rm -f *.$(OBJEXT)

distclean-compile:
	-rm -f *.tab.c

@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MeetingAnnotator.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SimpleTextSegmenter.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SofaStreamHandlerFile.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TextSegmentConsumer.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/annotator_dump.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/conui.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/doc_buffer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libtoknz_la-annotator_tok.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libtoknz_la-ss_tokenizer.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libtoknz_la-tt_types.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_cas.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_casserializer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_engine.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_iterators.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_language.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_primitivetypes.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_sofa.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_typepriority.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_xcasdeserialization.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_xmideserialization.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tt_types.Po@am__quote@

.cpp.o:
@am__fastdepCXX_TRUE@	$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ $<

.cpp.obj:
@am__fastdepCXX_TRUE@	$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`

.cpp.lo:
@am__fastdepCXX_TRUE@	$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LTCXXCOMPILE) -c -o $@ $<

MeetingAnnotator.lo: src/MeetingAnnotator.cpp
@am__fastdepCXX_TRUE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeetingAnnotator.lo -MD -MP -MF $(DEPDIR)/MeetingAnnotator.Tpo -c -o MeetingAnnotator.lo `test -f 'src/MeetingAnnotator.cpp' || echo '$(srcdir)/'`src/MeetingAnnotator.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/MeetingAnnotator.Tpo $(DEPDIR)/MeetingAnnotator.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/MeetingAnnotator.cpp' object='MeetingAnnotator.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeetingAnnotator.lo `test -f 'src/MeetingAnnotator.cpp' || echo '$(srcdir)/'`src/MeetingAnnotator.cpp

SimpleTextSegmenter.lo: src/SimpleTextSegmenter.cpp
@am__fastdepCXX_TRUE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SimpleTextSegmenter.lo -MD -MP -MF $(DEPDIR)/SimpleTextSegmenter.Tpo -c -o SimpleTextSegmenter.lo `test -f 'src/SimpleTextSegmenter.cpp' || echo '$(srcdir)/'`src/SimpleTextSegmenter.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/SimpleTextSegmenter.Tpo $(DEPDIR)/SimpleTextSegmenter.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/SimpleTextSegmenter.cpp' object='SimpleTextSegmenter.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SimpleTextSegmenter.lo `test -f 'src/SimpleTextSegmenter.cpp' || echo '$(srcdir)/'`src/SimpleTextSegmenter.cpp

SofaStreamHandlerFile.lo: src/SofaStreamHandlerFile.cpp
@am__fastdepCXX_TRUE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SofaStreamHandlerFile.lo -MD -MP -MF $(DEPDIR)/SofaStreamHandlerFile.Tpo -c -o SofaStreamHandlerFile.lo `test -f 'src/SofaStreamHandlerFile.cpp' || echo '$(srcdir)/'`src/SofaStreamHandlerFile.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/SofaStreamHandlerFile.Tpo $(DEPDIR)/SofaStreamHandlerFile.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/SofaStreamHandlerFile.cpp' object='SofaStreamHandlerFile.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SofaStreamHandlerFile.lo `test -f 'src/SofaStreamHandlerFile.cpp' || echo '$(srcdir)/'`src/SofaStreamHandlerFile.cpp

TextSegmentConsumer.lo: src/TextSegmentConsumer.cpp
@am__fastdepCXX_TRUE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT TextSegmentConsumer.lo -MD -MP -MF $(DEPDIR)/TextSegmentConsumer.Tpo -c -o TextSegmentConsumer.lo `test -f 'src/TextSegmentConsumer.cpp' || echo '$(srcdir)/'`src/TextSegmentConsumer.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/TextSegmentConsumer.Tpo $(DEPDIR)/TextSegmentConsumer.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/TextSegmentConsumer.cpp' object='TextSegmentConsumer.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o TextSegmentConsumer.lo `test -f 'src/TextSegmentConsumer.cpp' || echo '$(srcdir)/'`src/TextSegmentConsumer.cpp

annotator_dump.lo: src/annotator_dump.cpp
@am__fastdepCXX_TRUE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT annotator_dump.lo -MD -MP -MF $(DEPDIR)/annotator_dump.Tpo -c -o annotator_dump.lo `test -f 'src/annotator_dump.cpp' || echo '$(srcdir)/'`src/annotator_dump.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/annotator_dump.Tpo $(DEPDIR)/annotator_dump.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/annotator_dump.cpp' object='annotator_dump.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o annotator_dump.lo `test -f 'src/annotator_dump.cpp' || echo '$(srcdir)/'`src/annotator_dump.cpp

libtoknz_la-annotator_tok.lo: src/annotator_tok.cpp
@am__fastdepCXX_TRUE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtoknz_la_CXXFLAGS) $(CXXFLAGS) -MT libtoknz_la-annotator_tok.lo -MD -MP -MF $(DEPDIR)/libtoknz_la-annotator_tok.Tpo -c -o libtoknz_la-annotator_tok.lo `test -f 'src/annotator_tok.cpp' || echo '$(srcdir)/'`src/annotator_tok.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/libtoknz_la-annotator_tok.Tpo $(DEPDIR)/libtoknz_la-annotator_tok.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/annotator_tok.cpp' object='libtoknz_la-annotator_tok.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtoknz_la_CXXFLAGS) $(CXXFLAGS) -c -o libtoknz_la-annotator_tok.lo `test -f 'src/annotator_tok.cpp' || echo '$(srcdir)/'`src/annotator_tok.cpp

libtoknz_la-ss_tokenizer.lo: src/ss_tokenizer.cpp
@am__fastdepCXX_TRUE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtoknz_la_CXXFLAGS) $(CXXFLAGS) -MT libtoknz_la-ss_tokenizer.lo -MD -MP -MF $(DEPDIR)/libtoknz_la-ss_tokenizer.Tpo -c -o libtoknz_la-ss_tokenizer.lo `test -f 'src/ss_tokenizer.cpp' || echo '$(srcdir)/'`src/ss_tokenizer.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/libtoknz_la-ss_tokenizer.Tpo $(DEPDIR)/libtoknz_la-ss_tokenizer.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/ss_tokenizer.cpp' object='libtoknz_la-ss_tokenizer.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtoknz_la_CXXFLAGS) $(CXXFLAGS) -c -o libtoknz_la-ss_tokenizer.lo `test -f 'src/ss_tokenizer.cpp' || echo '$(srcdir)/'`src/ss_tokenizer.cpp

libtoknz_la-tt_types.lo: src/tt_types.cpp
@am__fastdepCXX_TRUE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtoknz_la_CXXFLAGS) $(CXXFLAGS) -MT libtoknz_la-tt_types.lo -MD -MP -MF $(DEPDIR)/libtoknz_la-tt_types.Tpo -c -o libtoknz_la-tt_types.lo `test -f 'src/tt_types.cpp' || echo '$(srcdir)/'`src/tt_types.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/libtoknz_la-tt_types.Tpo $(DEPDIR)/libtoknz_la-tt_types.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/tt_types.cpp' object='libtoknz_la-tt_types.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtoknz_la_CXXFLAGS) $(CXXFLAGS) -c -o libtoknz_la-tt_types.lo `test -f 'src/tt_types.cpp' || echo '$(srcdir)/'`src/tt_types.cpp

test_cas.o: src/test_cas.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_cas.o -MD -MP -MF $(DEPDIR)/test_cas.Tpo -c -o test_cas.o `test -f 'src/test_cas.cpp' || echo '$(srcdir)/'`src/test_cas.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_cas.Tpo $(DEPDIR)/test_cas.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_cas.cpp' object='test_cas.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_cas.o `test -f 'src/test_cas.cpp' || echo '$(srcdir)/'`src/test_cas.cpp

test_cas.obj: src/test_cas.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_cas.obj -MD -MP -MF $(DEPDIR)/test_cas.Tpo -c -o test_cas.obj `if test -f 'src/test_cas.cpp'; then $(CYGPATH_W) 'src/test_cas.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_cas.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_cas.Tpo $(DEPDIR)/test_cas.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_cas.cpp' object='test_cas.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_cas.obj `if test -f 'src/test_cas.cpp'; then $(CYGPATH_W) 'src/test_cas.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_cas.cpp'; fi`

tt_types.o: src/tt_types.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT tt_types.o -MD -MP -MF $(DEPDIR)/tt_types.Tpo -c -o tt_types.o `test -f 'src/tt_types.cpp' || echo '$(srcdir)/'`src/tt_types.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/tt_types.Tpo $(DEPDIR)/tt_types.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/tt_types.cpp' object='tt_types.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o tt_types.o `test -f 'src/tt_types.cpp' || echo '$(srcdir)/'`src/tt_types.cpp

tt_types.obj: src/tt_types.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT tt_types.obj -MD -MP -MF $(DEPDIR)/tt_types.Tpo -c -o tt_types.obj `if test -f 'src/tt_types.cpp'; then $(CYGPATH_W) 'src/tt_types.cpp'; else $(CYGPATH_W) '$(srcdir)/src/tt_types.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/tt_types.Tpo $(DEPDIR)/tt_types.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/tt_types.cpp' object='tt_types.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o tt_types.obj `if test -f 'src/tt_types.cpp'; then $(CYGPATH_W) 'src/tt_types.cpp'; else $(CYGPATH_W) '$(srcdir)/src/tt_types.cpp'; fi`

test_casserializer.o: src/test_casserializer.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_casserializer.o -MD -MP -MF $(DEPDIR)/test_casserializer.Tpo -c -o test_casserializer.o `test -f 'src/test_casserializer.cpp' || echo '$(srcdir)/'`src/test_casserializer.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_casserializer.Tpo $(DEPDIR)/test_casserializer.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_casserializer.cpp' object='test_casserializer.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_casserializer.o `test -f 'src/test_casserializer.cpp' || echo '$(srcdir)/'`src/test_casserializer.cpp

test_casserializer.obj: src/test_casserializer.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_casserializer.obj -MD -MP -MF $(DEPDIR)/test_casserializer.Tpo -c -o test_casserializer.obj `if test -f 'src/test_casserializer.cpp'; then $(CYGPATH_W) 'src/test_casserializer.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_casserializer.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_casserializer.Tpo $(DEPDIR)/test_casserializer.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_casserializer.cpp' object='test_casserializer.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_casserializer.obj `if test -f 'src/test_casserializer.cpp'; then $(CYGPATH_W) 'src/test_casserializer.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_casserializer.cpp'; fi`

test_engine.o: src/test_engine.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_engine.o -MD -MP -MF $(DEPDIR)/test_engine.Tpo -c -o test_engine.o `test -f 'src/test_engine.cpp' || echo '$(srcdir)/'`src/test_engine.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_engine.Tpo $(DEPDIR)/test_engine.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_engine.cpp' object='test_engine.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_engine.o `test -f 'src/test_engine.cpp' || echo '$(srcdir)/'`src/test_engine.cpp

test_engine.obj: src/test_engine.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_engine.obj -MD -MP -MF $(DEPDIR)/test_engine.Tpo -c -o test_engine.obj `if test -f 'src/test_engine.cpp'; then $(CYGPATH_W) 'src/test_engine.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_engine.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_engine.Tpo $(DEPDIR)/test_engine.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_engine.cpp' object='test_engine.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_engine.obj `if test -f 'src/test_engine.cpp'; then $(CYGPATH_W) 'src/test_engine.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_engine.cpp'; fi`

conui.o: src/conui.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT conui.o -MD -MP -MF $(DEPDIR)/conui.Tpo -c -o conui.o `test -f 'src/conui.cpp' || echo '$(srcdir)/'`src/conui.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/conui.Tpo $(DEPDIR)/conui.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/conui.cpp' object='conui.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o conui.o `test -f 'src/conui.cpp' || echo '$(srcdir)/'`src/conui.cpp

conui.obj: src/conui.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT conui.obj -MD -MP -MF $(DEPDIR)/conui.Tpo -c -o conui.obj `if test -f 'src/conui.cpp'; then $(CYGPATH_W) 'src/conui.cpp'; else $(CYGPATH_W) '$(srcdir)/src/conui.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/conui.Tpo $(DEPDIR)/conui.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/conui.cpp' object='conui.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o conui.obj `if test -f 'src/conui.cpp'; then $(CYGPATH_W) 'src/conui.cpp'; else $(CYGPATH_W) '$(srcdir)/src/conui.cpp'; fi`

doc_buffer.o: src/doc_buffer.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT doc_buffer.o -MD -MP -MF $(DEPDIR)/doc_buffer.Tpo -c -o doc_buffer.o `test -f 'src/doc_buffer.cpp' || echo '$(srcdir)/'`src/doc_buffer.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/doc_buffer.Tpo $(DEPDIR)/doc_buffer.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/doc_buffer.cpp' object='doc_buffer.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o doc_buffer.o `test -f 'src/doc_buffer.cpp' || echo '$(srcdir)/'`src/doc_buffer.cpp

doc_buffer.obj: src/doc_buffer.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT doc_buffer.obj -MD -MP -MF $(DEPDIR)/doc_buffer.Tpo -c -o doc_buffer.obj `if test -f 'src/doc_buffer.cpp'; then $(CYGPATH_W) 'src/doc_buffer.cpp'; else $(CYGPATH_W) '$(srcdir)/src/doc_buffer.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/doc_buffer.Tpo $(DEPDIR)/doc_buffer.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/doc_buffer.cpp' object='doc_buffer.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o doc_buffer.obj `if test -f 'src/doc_buffer.cpp'; then $(CYGPATH_W) 'src/doc_buffer.cpp'; else $(CYGPATH_W) '$(srcdir)/src/doc_buffer.cpp'; fi`

test_iterators.o: src/test_iterators.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_iterators.o -MD -MP -MF $(DEPDIR)/test_iterators.Tpo -c -o test_iterators.o `test -f 'src/test_iterators.cpp' || echo '$(srcdir)/'`src/test_iterators.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_iterators.Tpo $(DEPDIR)/test_iterators.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_iterators.cpp' object='test_iterators.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_iterators.o `test -f 'src/test_iterators.cpp' || echo '$(srcdir)/'`src/test_iterators.cpp

test_iterators.obj: src/test_iterators.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_iterators.obj -MD -MP -MF $(DEPDIR)/test_iterators.Tpo -c -o test_iterators.obj `if test -f 'src/test_iterators.cpp'; then $(CYGPATH_W) 'src/test_iterators.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_iterators.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_iterators.Tpo $(DEPDIR)/test_iterators.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_iterators.cpp' object='test_iterators.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_iterators.obj `if test -f 'src/test_iterators.cpp'; then $(CYGPATH_W) 'src/test_iterators.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_iterators.cpp'; fi`

test_language.o: src/test_language.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_language.o -MD -MP -MF $(DEPDIR)/test_language.Tpo -c -o test_language.o `test -f 'src/test_language.cpp' || echo '$(srcdir)/'`src/test_language.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_language.Tpo $(DEPDIR)/test_language.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_language.cpp' object='test_language.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_language.o `test -f 'src/test_language.cpp' || echo '$(srcdir)/'`src/test_language.cpp

test_language.obj: src/test_language.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_language.obj -MD -MP -MF $(DEPDIR)/test_language.Tpo -c -o test_language.obj `if test -f 'src/test_language.cpp'; then $(CYGPATH_W) 'src/test_language.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_language.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_language.Tpo $(DEPDIR)/test_language.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_language.cpp' object='test_language.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_language.obj `if test -f 'src/test_language.cpp'; then $(CYGPATH_W) 'src/test_language.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_language.cpp'; fi`

test_primitivetypes.o: src/test_primitivetypes.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_primitivetypes.o -MD -MP -MF $(DEPDIR)/test_primitivetypes.Tpo -c -o test_primitivetypes.o `test -f 'src/test_primitivetypes.cpp' || echo '$(srcdir)/'`src/test_primitivetypes.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_primitivetypes.Tpo $(DEPDIR)/test_primitivetypes.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_primitivetypes.cpp' object='test_primitivetypes.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_primitivetypes.o `test -f 'src/test_primitivetypes.cpp' || echo '$(srcdir)/'`src/test_primitivetypes.cpp

test_primitivetypes.obj: src/test_primitivetypes.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_primitivetypes.obj -MD -MP -MF $(DEPDIR)/test_primitivetypes.Tpo -c -o test_primitivetypes.obj `if test -f 'src/test_primitivetypes.cpp'; then $(CYGPATH_W) 'src/test_primitivetypes.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_primitivetypes.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_primitivetypes.Tpo $(DEPDIR)/test_primitivetypes.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_primitivetypes.cpp' object='test_primitivetypes.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_primitivetypes.obj `if test -f 'src/test_primitivetypes.cpp'; then $(CYGPATH_W) 'src/test_primitivetypes.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_primitivetypes.cpp'; fi`

test_sofa.o: src/test_sofa.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_sofa.o -MD -MP -MF $(DEPDIR)/test_sofa.Tpo -c -o test_sofa.o `test -f 'src/test_sofa.cpp' || echo '$(srcdir)/'`src/test_sofa.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_sofa.Tpo $(DEPDIR)/test_sofa.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_sofa.cpp' object='test_sofa.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_sofa.o `test -f 'src/test_sofa.cpp' || echo '$(srcdir)/'`src/test_sofa.cpp

test_sofa.obj: src/test_sofa.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_sofa.obj -MD -MP -MF $(DEPDIR)/test_sofa.Tpo -c -o test_sofa.obj `if test -f 'src/test_sofa.cpp'; then $(CYGPATH_W) 'src/test_sofa.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_sofa.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_sofa.Tpo $(DEPDIR)/test_sofa.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_sofa.cpp' object='test_sofa.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_sofa.obj `if test -f 'src/test_sofa.cpp'; then $(CYGPATH_W) 'src/test_sofa.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_sofa.cpp'; fi`

test_typepriority.o: src/test_typepriority.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_typepriority.o -MD -MP -MF $(DEPDIR)/test_typepriority.Tpo -c -o test_typepriority.o `test -f 'src/test_typepriority.cpp' || echo '$(srcdir)/'`src/test_typepriority.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_typepriority.Tpo $(DEPDIR)/test_typepriority.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_typepriority.cpp' object='test_typepriority.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_typepriority.o `test -f 'src/test_typepriority.cpp' || echo '$(srcdir)/'`src/test_typepriority.cpp

test_typepriority.obj: src/test_typepriority.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_typepriority.obj -MD -MP -MF $(DEPDIR)/test_typepriority.Tpo -c -o test_typepriority.obj `if test -f 'src/test_typepriority.cpp'; then $(CYGPATH_W) 'src/test_typepriority.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_typepriority.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_typepriority.Tpo $(DEPDIR)/test_typepriority.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_typepriority.cpp' object='test_typepriority.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_typepriority.obj `if test -f 'src/test_typepriority.cpp'; then $(CYGPATH_W) 'src/test_typepriority.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_typepriority.cpp'; fi`

test_xcasdeserialization.o: src/test_xcasdeserialization.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_xcasdeserialization.o -MD -MP -MF $(DEPDIR)/test_xcasdeserialization.Tpo -c -o test_xcasdeserialization.o `test -f 'src/test_xcasdeserialization.cpp' || echo '$(srcdir)/'`src/test_xcasdeserialization.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_xcasdeserialization.Tpo $(DEPDIR)/test_xcasdeserialization.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_xcasdeserialization.cpp' object='test_xcasdeserialization.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_xcasdeserialization.o `test -f 'src/test_xcasdeserialization.cpp' || echo '$(srcdir)/'`src/test_xcasdeserialization.cpp

test_xcasdeserialization.obj: src/test_xcasdeserialization.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_xcasdeserialization.obj -MD -MP -MF $(DEPDIR)/test_xcasdeserialization.Tpo -c -o test_xcasdeserialization.obj `if test -f 'src/test_xcasdeserialization.cpp'; then $(CYGPATH_W) 'src/test_xcasdeserialization.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_xcasdeserialization.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_xcasdeserialization.Tpo $(DEPDIR)/test_xcasdeserialization.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_xcasdeserialization.cpp' object='test_xcasdeserialization.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_xcasdeserialization.obj `if test -f 'src/test_xcasdeserialization.cpp'; then $(CYGPATH_W) 'src/test_xcasdeserialization.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_xcasdeserialization.cpp'; fi`

test_xmideserialization.o: src/test_xmideserialization.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_xmideserialization.o -MD -MP -MF $(DEPDIR)/test_xmideserialization.Tpo -c -o test_xmideserialization.o `test -f 'src/test_xmideserialization.cpp' || echo '$(srcdir)/'`src/test_xmideserialization.cpp
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_xmideserialization.Tpo $(DEPDIR)/test_xmideserialization.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_xmideserialization.cpp' object='test_xmideserialization.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_xmideserialization.o `test -f 'src/test_xmideserialization.cpp' || echo '$(srcdir)/'`src/test_xmideserialization.cpp

test_xmideserialization.obj: src/test_xmideserialization.cpp
@am__fastdepCXX_TRUE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT test_xmideserialization.obj -MD -MP -MF $(DEPDIR)/test_xmideserialization.Tpo -c -o test_xmideserialization.obj `if test -f 'src/test_xmideserialization.cpp'; then $(CYGPATH_W) 'src/test_xmideserialization.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_xmideserialization.cpp'; fi`
@am__fastdepCXX_TRUE@	mv -f $(DEPDIR)/test_xmideserialization.Tpo $(DEPDIR)/test_xmideserialization.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='src/test_xmideserialization.cpp' object='test_xmideserialization.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o test_xmideserialization.obj `if test -f 'src/test_xmideserialization.cpp'; then $(CYGPATH_W) 'src/test_xmideserialization.cpp'; else $(CYGPATH_W) '$(srcdir)/src/test_xmideserialization.cpp'; fi`

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs
install-includeHEADERS: $(include_HEADERS)
	@$(NORMAL_INSTALL)
	test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
	@list='$(include_HEADERS)'; for p in $$list; do \
	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
	  f=$(am__strip_dir) \
	  echo " $(includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(includedir)/$$f'"; \
	  $(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \
	done

uninstall-includeHEADERS:
	@$(NORMAL_UNINSTALL)
	@list='$(include_HEADERS)'; for p in $$list; do \
	  f=$(am__strip_dir) \
	  echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
	  rm -f "$(DESTDIR)$(includedir)/$$f"; \
	done

ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	mkid -fID $$unique
tags: TAGS

TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
		$(TAGS_FILES) $(LISP)
	tags=; \
	here=`pwd`; \
	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
	  test -n "$$unique" || unique=$$empty_fix; \
	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
	    $$tags $$unique; \
	fi
ctags: CTAGS
CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
		$(TAGS_FILES) $(LISP)
	tags=; \
	here=`pwd`; \
	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	test -z "$(CTAGS_ARGS)$$tags$$unique" \
	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
	     $$tags $$unique

GTAGS:
	here=`$(am__cd) $(top_builddir) && pwd` \
	  && cd $(top_srcdir) \
	  && gtags -i $(GTAGS_ARGS) $$here

distclean-tags:
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags

check-TESTS: $(TESTS)
	@failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[	 ]'; \
	srcdir=$(srcdir); export srcdir; \
	list=' $(TESTS) '; \
	if test -n "$$list"; then \
	  for tst in $$list; do \
	    if test -f ./$$tst; then dir=./; \
	    elif test -f $$tst; then dir=; \
	    else dir="$(srcdir)/"; fi; \
	    if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
	      all=`expr $$all + 1`; \
	      case " $(XFAIL_TESTS) " in \
	      *$$ws$$tst$$ws*) \
		xpass=`expr $$xpass + 1`; \
		failed=`expr $$failed + 1`; \
		echo "XPASS: $$tst"; \
	      ;; \
	      *) \
		echo "PASS: $$tst"; \
	      ;; \
	      esac; \
	    elif test $$? -ne 77; then \
	      all=`expr $$all + 1`; \
	      case " $(XFAIL_TESTS) " in \
	      *$$ws$$tst$$ws*) \
		xfail=`expr $$xfail + 1`; \
		echo "XFAIL: $$tst"; \
	      ;; \
	      *) \
		failed=`expr $$failed + 1`; \
		echo "FAIL: $$tst"; \
	      ;; \
	      esac; \
	    else \
	      skip=`expr $$skip + 1`; \
	      echo "SKIP: $$tst"; \
	    fi; \
	  done; \
	  if test "$$failed" -eq 0; then \
	    if test "$$xfail" -eq 0; then \
	      banner="All $$all tests passed"; \
	    else \
	      banner="All $$all tests behaved as expected ($$xfail expected failures)"; \
	    fi; \
	  else \
	    if test "$$xpass" -eq 0; then \
	      banner="$$failed of $$all tests failed"; \
	    else \
	      banner="$$failed of $$all tests did not behave as expected ($$xpass unexpected passes)"; \
	    fi; \
	  fi; \
	  dashes="$$banner"; \
	  skipped=""; \
	  if test "$$skip" -ne 0; then \
	    skipped="($$skip tests were not run)"; \
	    test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
	      dashes="$$skipped"; \
	  fi; \
	  report=""; \
	  if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
	    report="Please report to $(PACKAGE_BUGREPORT)"; \
	    test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
	      dashes="$$report"; \
	  fi; \
	  dashes=`echo "$$dashes" | sed s/./=/g`; \
	  echo "$$dashes"; \
	  echo "$$banner"; \
	  test -z "$$skipped" || echo "$$skipped"; \
	  test -z "$$report" || echo "$$report"; \
	  echo "$$dashes"; \
	  test "$$failed" -eq 0; \
	else :; fi

distdir: $(DISTFILES)
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	list='$(DISTFILES)'; \
	  dist_files=`for file in $$list; do echo $$file; done | \
	  sed -e "s|^$$srcdirstrip/||;t" \
	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
	case $$dist_files in \
	  */*) $(MKDIR_P) `echo "$$dist_files" | \
			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
			   sort -u` ;; \
	esac; \
	for file in $$dist_files; do \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  if test -d $$d/$$file; then \
	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
	    fi; \
	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
	  else \
	    test -f $(distdir)/$$file \
	    || cp -p $$d/$$file $(distdir)/$$file \
	    || exit 1; \
	  fi; \
	done
	$(MAKE) $(AM_MAKEFLAGS) \
	  top_distdir="$(top_distdir)" distdir="$(distdir)" \
	  dist-hook
check-am: all-am
	$(MAKE) $(AM_MAKEFLAGS) $(check_LTLIBRARIES) $(check_PROGRAMS)
	$(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: check-am
all-am: Makefile $(HEADERS)
installdirs:
	for dir in "$(DESTDIR)$(includedir)"; do \
	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
	done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am

installcheck: installcheck-am
install-strip:
	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	  `test -z '$(STRIP)' || \
	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:

clean-generic:

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)

maintainer-clean-generic:
	@echo "This command is intended for maintainers to use"
	@echo "it deletes files that may require special tools to rebuild."
clean-am: clean-checkLTLIBRARIES clean-checkPROGRAMS clean-generic \
	clean-libtool mostlyclean-am

distclean: distclean-am
	-rm -rf ./$(DEPDIR)
	-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
	distclean-tags

dvi: dvi-am

dvi-am:

html: html-am

info: info-am

info-am:

install-data-am: install-includeHEADERS

install-dvi: install-dvi-am

install-exec-am:

install-html: install-html-am

install-info: install-info-am

install-man:

install-pdf: install-pdf-am

install-ps: install-ps-am

installcheck-am:

maintainer-clean: maintainer-clean-am
	-rm -rf ./$(DEPDIR)
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

mostlyclean-am: mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am: uninstall-includeHEADERS

.MAKE: install-am install-strip

.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
	clean-checkLTLIBRARIES clean-checkPROGRAMS clean-generic \
	clean-libtool ctags dist-hook distclean distclean-compile \
	distclean-generic distclean-libtool distclean-tags distdir dvi \
	dvi-am html html-am info info-am install install-am \
	install-data install-data-am install-dvi install-dvi-am \
	install-exec install-exec-am install-html install-html-am \
	install-includeHEADERS install-info install-info-am \
	install-man install-pdf install-pdf-am install-ps \
	install-ps-am install-strip installcheck installcheck-am \
	installdirs maintainer-clean maintainer-clean-generic \
	mostlyclean mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
	uninstall-am uninstall-includeHEADERS

dist-hook:
	rm -rf `find $(distdir)/src/test/data -name .svn`

test_tgt: $(TST_BIN) $(TST_LIB)

clean:
	rm -f $(TST_BIN) $(test_engine_OBJECTS) $(test_typepriority_OBJECTS) $(test_sofa_OBJECTS) $(test_language_OBJECTS) $(test_cas_OBJECTS)  $(test_iterators_OBJECTS) $(test_casserializer_OBJECTS) $(test_primitivetypes_OBJECTS) $(test_xcasdeserialization_OBJECTS) $(test_xmideserialization_OBJECTS)
	rm -f $(TST_LIB) $(libtoknz_la_OBJECTS) $(libdump_la_OBJECTS) $(libSofaStreamHandlerFile_la_OBJECTS) $(libSimpleTextSegmenter_la_OBJECTS) $(libTextSegmentConsumer_la_OBJECTS) $(libMeetingAnnotator_la_OBJECTS)
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
