## @file
##
## $Id$
##
## $Date$
## $Author$
##
## @copy © Marc Wäckerlin
## @license LGPL, see file COPYING
##
## $Log$
## Revision 1.13 2004/11/25 18:33:18 marc
## support for function tracing which does not yet work (bug in OpenC++)
##
## Revision 1.12 2004/10/13 11:17:21 marc
## new file stdext.cpp
##
## Revision 1.11 2004/10/11 18:33:02 marc
## add stdext.hpp
##
## Revision 1.10 2004/10/07 16:16:34 marc
## forgotten to save before last checkin...
##
## Revision 1.9 2004/10/07 09:29:17 marc
## new classes
## new versioning
## link tests with unexpected handler
## check doxygen.error
##
## Revision 1.8 2004/09/09 20:09:06 marc
## library versioning now works how i want it
##
## Revision 1.7 2004/08/31 16:23:57 marc
## added .PHONY
##
## Revision 1.6 2004/08/28 16:21:25 marc
## mrw-c++-0.92 (mrw)
## - new file: version.cpp
## - new file header for all sources
## - work around warning in mrw::auto
## - possibility to compile without log4cxx
## - work around bugs in demangle.h and libiberty.h
## - corrections in documentation
## - added simple tracing mechanism
## - more warnings
## - small corrections in Auto<>::Free and a new test for it
## - possibility to compile without stack trace
##
AM_CPPFLAGS += -I..
if HAVE_STACKTRACE
AM_CPPFLAGS += -DHAVE_STACKTRACE
endif
CLEANFILES = doxygen.errors
examplesdir = ${pkgdatadir}/examples
examples_DATA = examples/*
htmldir = ${pkgdatadir}/doc/html
html_DATA = doc/html/index.html doc/html/*
pdfdir = ${pkgdatadir}/doc/pdf
pdf_DATA = doc/latex/@PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@.pdf
EXTRA_DIST = test.dat ${examples_DATA} ${html_DATA} ${pdf_DATA}
lib_LTLIBRARIES = libmrw.la
if HAVE_STACKTRACE
lib_LTLIBRARIES += libmrwexcstderr.la
if HAVE_LOG4CXX
lib_LTLIBRARIES += libmrwexclog4cxx.la
endif
endif
if TRACER
tmp_src = \
mrw.hpp version.cpp \
arg.cpp arg.hpp auto.hpp deque.hpp \
exception.cpp exception.hpp \
exec.cpp exec.hpp list.hpp \
map.hpp multimap.hpp multiset.hpp \
set.hpp simpletrace.hpp \
smartpointer.hpp stdext.cpp stdext.hpp \
string.hpp unistd.hpp vector.hpp
else
libmrw_la_SOURCES = \
mrw.hpp version.cpp \
arg.cpp arg.hpp auto.hpp deque.hpp \
exception.cpp exception.hpp \
exec.cpp exec.hpp list.hpp \
map.hpp multimap.hpp multiset.hpp \
set.hpp simpletrace.hpp \
smartpointer.hpp stdext.cpp stdext.hpp \
string.hpp unistd.hpp vector.hpp
endif
if HAVE_STACKTRACE
if TRACER
tmp_src += \
stacktrace.hpp stacktrace.cpp
else
libmrw_la_SOURCES += \
stacktrace.hpp stacktrace.cpp
endif
endif
libmrw_la_LDFLAGS = -version-info @LIB_VERSION@
if TRACER
BUILT_SOURCES = ${tmp_src:.cpp=.ii}
libmrw_la_SOURCES = ${BUILT_SOURCES}
endif
if HAVE_STACKTRACE
libmrwexcstderr_la_SOURCES = autostacktracestderr.cpp version.cpp
libmrwexcstderr_la_LDFLAGS = -version-info @LIB_VERSION@
libmrwexcstderr_la_LIBADD = -lmrw
if HAVE_LOG4CXX
libmrwexclog4cxx_la_SOURCES = autostacktracelog4cxx.cpp version.cpp
libmrwexclog4cxx_la_LDFLAGS = -version-info @LIB_VERSION@
libmrwexclog4cxx_la_LIBADD = -lmrw
endif
endif
check_PROGRAMS = auto_test smartpointer_test exec_test stdext_test
if HAVE_STACKTRACE
check_PROGRAMS += stacktrace_test mrwexcstderr_test
if HAVE_LOG4CXX
check_PROGRAMS += mrwexclog4cxx_test
endif
endif
auto_test_SOURCES = auto_test.cpp version.cpp
auto_test_CPPFLAGS = -I.. -g3
auto_test_LDADD = -lmrw -lcppunit
if HAVE_STACKTRACE
auto_test_LDADD += -lmrwexcstderr
endif
smartpointer_test_SOURCES = smartpointer_test.cpp version.cpp
smartpointer_test_CPPFLAGS = -I.. -g3
smartpointer_test_LDADD = -lmrw -lcppunit
if HAVE_STACKTRACE
smartpointer_test_LDADD += -lmrwexcstderr
endif
exec_test_SOURCES = exec_test.cpp version.cpp
exec_test_CPPFLAGS = -I.. -g3
exec_test_LDADD = -lmrw -lcppunit
if HAVE_STACKTRACE
exec_test_LDADD += -lmrwexcstderr
endif
stdext_test_SOURCES = stdext_test.cpp version.cpp
stdext_test_CPPFLAGS = -I.. -g3
stdext_test_LDADD = -lmrw -lcppunit
if HAVE_STACKTRACE
stdext_test_LDADD += -lmrwexcstderr
endif
if HAVE_STACKTRACE
stacktrace_test_SOURCES = stacktrace_test.cpp version.cpp
stacktrace_test_CPPFLAGS = -I.. -g3
stacktrace_test_LDADD = -lmrw -lcppunit -lmrwexcstderr
mrwexcstderr_test_SOURCES = mrwexcstderr_test.cpp version.cpp
mrwexcstderr_test_CPPFLAGS = -I.. -g3
mrwexcstderr_test_LDADD = -lmrwexcstderr -lcppunit
if HAVE_LOG4CXX
mrwexclog4cxx_test_SOURCES = mrwexclog4cxx_test.cpp version.cpp
mrwexclog4cxx_test_CPPFLAGS = -I.. -g3
mrwexclog4cxx_test_LDADD = -lmrwexclog4cxx -lcppunit -llog4cxx
endif
endif
TESTS = ${check_PROGRAMS}
.PHONY: doc clean-local distclean-local
deps = ../COPYING ../README ../INSTALL ../NEWS ../ChangeLog
doc: doc/html/index.html doc/latex/@PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@.pdf
doc/html/index.html: doxyfile *.[ch]pp ${deps}
doxygen doxyfile
if PEDANTIC
test \! -s doxygen.errors
endif
doc/latex/@PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@.pdf: doxyfile *.[ch]pp ${deps}
cd doc/latex && make && \
mv refman.pdf @PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@.pdf
clean-local:
- rm doxygen.err libmrw.doxytag
distclean-local:
- rm -r doc/html/* doc/latex/*
- rm makefile makefile.in doxygen.err libmrw.doxytag
if TRACER
%.ii: %.cpp; ${TRACE} -E -- $<
%.o: %.ii; ${CXX} -c ${CPPFLAGS} ${CXXFLAGS} -o $@ $<
endif