C++ Library containing a lot of needful things: Stack Trace, Command Line Parser, Resource Handling, Configuration Files, Unix Command Execution, Directories, Regular Expressions, Tokenizer, Function Trace, Standard Extensions.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

189 lines
5.5 KiB

## @file
##
## $Id$
##
## $Date$
## $Author$
##
## @copy © Marc Wäckerlin
## @license LGPL, see file <a href="license.html">COPYING</a>
##
## $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<T>
## - 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