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.
378 lines
14 KiB
378 lines
14 KiB
## @file |
|
## |
|
## $Id$ |
|
## |
|
## $Date$ |
|
## $Author$ |
|
## |
|
## @copy © Marc Wäckerlin |
|
## @license LGPL, see file <a href="license.html">COPYING</a> |
|
## |
|
|
|
AM_CPPFLAGS += -I${top_srcdir} |
|
|
|
if HAVE_STACKTRACE |
|
AM_CPPFLAGS += -DHAVE_STACKTRACE |
|
endif |
|
|
|
CLEANFILES = doxygen.errors functiontrace_test.log \ |
|
mrwautofunctiontracelog4cxx_test.log \ |
|
mrwautofunctiontracelog4cxx_test-mt.log |
|
examplesdir = ${pkgdatadir}/examples |
|
dist_examples_DATA = ${top_srcdir}/mrw/examples/* |
|
htmldir = ${pkgdatadir}/doc/html |
|
html_DATA = ${top_builddir}/doc/html/index.html |
|
pdfdir = ${pkgdatadir}/doc/pdf |
|
dist_pdf_DATA = ${top_builddir}/doc/latex/@PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@.pdf |
|
|
|
lib_LTLIBRARIES = libmrw.la |
|
if HAVE_BOOST_THREAD |
|
lib_LTLIBRARIES += libmrw-mt.la |
|
endif |
|
if HAVE_STACKTRACE |
|
lib_LTLIBRARIES += libmrwexcstderr.la |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
lib_LTLIBRARIES += libmrwexcstderr-mt.la |
|
endif |
|
endif |
|
if AUTOFNTRACE |
|
lib_LTLIBRARIES += libmrwautofunctiontracestdlog.la |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
lib_LTLIBRARIES += libmrwautofunctiontracestdlog-mt.la |
|
endif |
|
endif |
|
endif |
|
if HAVE_LOG4CXX |
|
lib_LTLIBRARIES += libmrwexclog4cxx.la \ |
|
libmrwlog4cxxconfiguration.la |
|
if HAVE_THREADS |
|
lib_LTLIBRARIES += libmrwlog4cxxconfiguration-mt.la |
|
if HAVE_BOOST_THREAD |
|
lib_LTLIBRARIES += libmrwexclog4cxx-mt.la |
|
endif |
|
endif |
|
if AUTOFNTRACE |
|
lib_LTLIBRARIES += libmrwautofunctiontracelog4cxx.la |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
lib_LTLIBRARIES += libmrwautofunctiontracelog4cxx-mt.la |
|
endif |
|
endif |
|
endif |
|
endif |
|
endif |
|
|
|
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 \ |
|
smartpointer.hpp stdext.cpp stdext.hpp \ |
|
string.hpp unistd.hpp vector.hpp regexp.hpp regexp.cpp \ |
|
tokenizer.hpp configfile.hpp configfile.cpp file.hpp \ |
|
errno.hpp errno.cpp |
|
if HAVE_LTDL |
|
libmrw_la_SOURCES += dynamiclibrary.hpp |
|
endif |
|
if HAVE_LOG4CXX |
|
libmrw_la_SOURCES += functiontrace.cpp functiontrace.hpp |
|
endif |
|
if HAVE_STACKTRACE |
|
libmrw_la_SOURCES += \ |
|
stacktrace.hpp stacktrace.cpp |
|
endif |
|
libmrw_la_LDFLAGS = -version-info @LIB_VERSION@ |
|
libmrw_la_LIBADD = |
|
if HAVE_STACKTRACE |
|
libmrw_la_LIBADD += -lltdl |
|
endif |
|
|
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
libmrw_mt_la_SOURCES = ${libmrw_la_SOURCES} |
|
libmrw_mt_la_CXXFLAGS = @THREADS@ |
|
libmrw_mt_la_LDFLAGS = ${libmrw_la_LDFLAGS} -version-info @LIB_VERSION@ \ |
|
@THREADS@ |
|
libmrw_mt_la_LIBADD = ${libmrw_la_LIBADD} @BOOST_THREAD_LIB@ |
|
endif |
|
endif |
|
|
|
if HAVE_STACKTRACE |
|
libmrwexcstderr_la_SOURCES = autostacktracestderr.cpp version.cpp |
|
libmrwexcstderr_la_LDFLAGS = -version-info @LIB_VERSION@ |
|
libmrwexcstderr_la_LIBADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
libmrwexcstderr_mt_la_SOURCES = autostacktracestderr.cpp version.cpp |
|
libmrwexcstderr_mt_la_CXXFLAGS = @THREADS@ |
|
libmrwexcstderr_mt_la_LDFLAGS = -version-info @LIB_VERSION@ @THREADS@ |
|
libmrwexcstderr_mt_la_LIBADD = ${top_builddir}/mrw/libmrw-mt.la |
|
endif |
|
endif |
|
|
|
if AUTOFNTRACE |
|
libmrwautofunctiontracestdlog_la_SOURCES = autofunctiontracestdlog.cpp \ |
|
version.cpp |
|
libmrwautofunctiontracestdlog_la_CXXFLAGS = -w |
|
libmrwautofunctiontracestdlog_la_LDFLAGS = -version-info @LIB_VERSION@ |
|
libmrwautofunctiontracestdlog_la_LIBADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
libmrwautofunctiontracestdlog_mt_la_SOURCES = \ |
|
autofunctiontracelog4cxx.cpp version.cpp |
|
libmrwautofunctiontracestdlog_mt_la_CXXFLAGS = @THREADS@ -w |
|
libmrwautofunctiontracestdlog_mt_la_LDFLAGS = \ |
|
-version-info @LIB_VERSION@ @THREADS@ |
|
libmrwautofunctiontracestdlog_mt_la_LIBADD = \ |
|
${top_builddir}/mrw/libmrw-mt.la |
|
endif |
|
endif |
|
endif |
|
if HAVE_LOG4CXX |
|
libmrwexclog4cxx_la_SOURCES = autostacktracelog4cxx.cpp version.cpp |
|
libmrwexclog4cxx_la_LDFLAGS = -version-info @LIB_VERSION@ |
|
libmrwexclog4cxx_la_LIBADD = ${top_builddir}/mrw/libmrw.la -llog4cxx |
|
libmrwlog4cxxconfiguration_la_SOURCES = log4cxxconfiguration.cpp version.cpp |
|
libmrwlog4cxxconfiguration_la_LDFLAGS = -version-info @LIB_VERSION@ |
|
libmrwlog4cxxconfiguration_la_LIBADD = -llog4cxx |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
libmrwexclog4cxx_mt_la_SOURCES = autostacktracelog4cxx.cpp version.cpp |
|
libmrwexclog4cxx_mt_la_CXXFLAGS = @THREADS@ |
|
libmrwexclog4cxx_mt_la_LDFLAGS = -version-info @LIB_VERSION@ @THREADS@ |
|
libmrwexclog4cxx_mt_la_LIBADD = ${top_builddir}/mrw/libmrw-mt.la -llog4cxx |
|
libmrwlog4cxxconfiguration_mt_la_SOURCES = log4cxxconfiguration.cpp \ |
|
version.cpp |
|
libmrwlog4cxxconfiguration_mt_la_CXXFLAGS = @THREADS@ |
|
libmrwlog4cxxconfiguration_mt_la_LDFLAGS = -version-info @LIB_VERSION@ \ |
|
@THREADS@ |
|
libmrwlog4cxxconfiguration_mt_la_LIBADD = -llog4cxx |
|
endif |
|
endif |
|
|
|
if AUTOFNTRACE |
|
libmrwautofunctiontracelog4cxx_la_SOURCES = autofunctiontracelog4cxx.cpp \ |
|
version.cpp |
|
libmrwautofunctiontracelog4cxx_la_CXXFLAGS = -w |
|
libmrwautofunctiontracelog4cxx_la_LDFLAGS = -version-info @LIB_VERSION@ |
|
libmrwautofunctiontracelog4cxx_la_LIBADD = ${top_builddir}/mrw/libmrw.la -llog4cxx |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
libmrwautofunctiontracelog4cxx_mt_la_SOURCES = \ |
|
autofunctiontracelog4cxx.cpp version.cpp |
|
libmrwautofunctiontracelog4cxx_mt_la_CXXFLAGS = @THREADS@ -w |
|
libmrwautofunctiontracelog4cxx_mt_la_LDFLAGS = \ |
|
-version-info @LIB_VERSION@ @THREADS@ |
|
libmrwautofunctiontracelog4cxx_mt_la_LIBADD = \ |
|
${top_builddir}/mrw/libmrw-mt.la -llog4cxx |
|
endif |
|
endif |
|
endif |
|
endif |
|
endif |
|
|
|
check_PROGRAMS = auto_test smartpointer_test exec_test stdext_test regexp_test \ |
|
tokenizer_test configfile_test string_test |
|
if HAVE_LTDL |
|
check_PROGRAMS += dynamiclibrary_test |
|
endif |
|
if HAVE_LOG4CXX |
|
check_PROGRAMS += functiontrace_test |
|
endif |
|
dist_check_SCRIPTS = configfile_check.sh |
|
if HAVE_STACKTRACE |
|
check_PROGRAMS += stacktrace_test mrwexcstderr_test |
|
if HAVE_LOG4CXX |
|
check_PROGRAMS += mrwexclog4cxx_test |
|
if AUTOFNTRACE |
|
check_PROGRAMS += mrwautofunctiontracelog4cxx_test |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
check_PROGRAMS += mrwautofunctiontracelog4cxx_test-mt |
|
endif |
|
endif |
|
endif |
|
endif |
|
endif |
|
auto_test_SOURCES = auto_test.cpp version.cpp |
|
auto_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
auto_test_CXXFLAGS = -g3 -O0 |
|
auto_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
auto_test_LDADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_STACKTRACE |
|
auto_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
smartpointer_test_SOURCES = smartpointer_test.cpp version.cpp |
|
smartpointer_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
smartpointer_test_CXXFLAGS = -g3 -O0 |
|
smartpointer_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
smartpointer_test_LDADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_STACKTRACE |
|
smartpointer_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
exec_test_SOURCES = exec_test.cpp version.cpp |
|
exec_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
exec_test_CXXFLAGS = -g3 -O0 |
|
exec_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
exec_test_LDADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_STACKTRACE |
|
exec_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
stdext_test_SOURCES = stdext_test.cpp version.cpp |
|
stdext_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
stdext_test_CXXFLAGS = -g3 -O0 |
|
stdext_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
stdext_test_LDADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_STACKTRACE |
|
stdext_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
string_test_SOURCES = string_test.cpp version.cpp |
|
string_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
string_test_CXXFLAGS = -g3 -O0 |
|
string_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
string_test_LDADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_STACKTRACE |
|
string_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
regexp_test_SOURCES = regexp_test.cpp version.cpp |
|
regexp_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
regexp_test_CXXFLAGS = -g3 -O0 |
|
regexp_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
regexp_test_LDADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_STACKTRACE |
|
regexp_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
tokenizer_test_SOURCES = tokenizer_test.cpp version.cpp |
|
tokenizer_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
tokenizer_test_CXXFLAGS = -g3 -O0 |
|
tokenizer_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
tokenizer_test_LDADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_STACKTRACE |
|
tokenizer_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
configfile_test_SOURCES = configfile_test.cpp version.cpp |
|
configfile_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
configfile_test_CXXFLAGS = -g3 -O0 |
|
configfile_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
configfile_test_LDADD = ${top_builddir}/mrw/libmrw.la |
|
if HAVE_STACKTRACE |
|
configfile_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
if HAVE_LTDL |
|
check_LTLIBRARIES = libdynamiclibrary_testlib.la |
|
libdynamiclibrary_testlib_la_SOURCES = dynamiclibrary_testlib.cpp |
|
libdynamiclibrary_testlib_la_LDFLAGS = -module -rpath /bullshit |
|
dynamiclibrary_test_SOURCES = dynamiclibrary_test.cpp version.cpp |
|
dynamiclibrary_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
dynamiclibrary_test_CXXFLAGS = -g3 -O0 |
|
dynamiclibrary_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
dynamiclibrary_test_LDADD = ${top_builddir}/mrw/libmrw.la -lltdl |
|
endif |
|
if HAVE_LOG4CXX |
|
functiontrace_test_SOURCES = functiontrace_test.cpp version.cpp |
|
functiontrace_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
functiontrace_test_CXXFLAGS = -g3 -O0 |
|
functiontrace_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
functiontrace_test_LDADD = ${top_builddir}/mrw/libmrw.la -llog4cxx |
|
if HAVE_STACKTRACE |
|
functiontrace_test_LDADD += ${top_builddir}/mrw/libmrwexcstderr.la |
|
endif |
|
endif |
|
if HAVE_STACKTRACE |
|
stacktrace_test_SOURCES = stacktrace_test.cpp version.cpp |
|
stacktrace_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
stacktrace_test_CXXFLAGS = -g3 -O0 |
|
stacktrace_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
stacktrace_test_LDADD = ${top_builddir}/mrw/libmrw.la ${top_builddir}/mrw/libmrwexcstderr.la |
|
mrwexcstderr_test_SOURCES = mrwexcstderr_test.cpp version.cpp |
|
mrwexcstderr_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
mrwexcstderr_test_CXXFLAGS = -g3 -O0 |
|
mrwexcstderr_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
mrwexcstderr_test_LDADD = ${top_builddir}/mrw/libmrwexcstderr.la |
|
if HAVE_LOG4CXX |
|
mrwexclog4cxx_test_SOURCES = mrwexclog4cxx_test.cpp version.cpp |
|
mrwexclog4cxx_test_CPPFLAGS = -I${top_srcdir} @CPPUNIT_CFLAGS@ -g3 -O0 |
|
mrwexclog4cxx_test_CXXFLAGS = -g3 -O0 |
|
mrwexclog4cxx_test_LDFLAGS = @CPPUNIT_LIBS@ |
|
mrwexclog4cxx_test_LDADD = ${top_builddir}/mrw/libmrwexclog4cxx.la -llog4cxx |
|
if AUTOFNTRACE |
|
mrwautofunctiontracelog4cxx_test_SOURCES = \ |
|
mrwautofunctiontracelog4cxx_test.cpp version.cpp |
|
mrwautofunctiontracelog4cxx_test_CPPFLAGS = \ |
|
-I${top_srcdir} @CPPUNIT_CFLAGS@ -finstrument-functions -g3 -O0 |
|
mrwautofunctiontracelog4cxx_test_CXXFLAGS = -g3 -O0 -finstrument-functions |
|
mrwautofunctiontracelog4cxx_test_LDFLAGS = \ |
|
@CPPUNIT_LIBS@ -finstrument-functions |
|
mrwautofunctiontracelog4cxx_test_LDADD = \ |
|
-llog4cxx ${top_builddir}/mrw/libmrwautofunctiontracelog4cxx.la |
|
if HAVE_THREADS |
|
if HAVE_BOOST_THREAD |
|
mrwautofunctiontracelog4cxx_test_mt_SOURCES = \ |
|
mrwautofunctiontracelog4cxx_test.cpp version.cpp |
|
mrwautofunctiontracelog4cxx_test_mt_CPPFLAGS = \ |
|
-I${top_srcdir} @CPPUNIT_CFLAGS@ -finstrument-functions -g3 -O0 |
|
mrwautofunctiontracelog4cxx_test_mt_CXXFLAGS = -g3 -O0 \ |
|
-finstrument-functions @THREADS@ |
|
mrwautofunctiontracelog4cxx_test_mt_LDFLAGS = \ |
|
@CPPUNIT_LIBS@ @THREADS@ -finstrument-functions |
|
mrwautofunctiontracelog4cxx_test_mt_LDADD = \ |
|
-llog4cxx ${top_builddir}/mrw/libmrwautofunctiontracelog4cxx-mt.la @BOOST_THREAD_LIB@ |
|
endif |
|
endif |
|
endif |
|
endif |
|
endif |
|
|
|
dist_check_DATA = test.dat configfile.ini configfile.ini.result |
|
EXTRA_DIST = head.html foot.html style.css |
|
TESTS = ${check_PROGRAMS} ${dist_check_SCRIPTS} |
|
|
|
.PHONY: doc clean-local distclean-local dist-hool install-data-hook \ |
|
uninstall-hook |
|
|
|
deps = ${top_srcdir}/COPYING ${top_srcdir}/README ${top_srcdir}/INSTALL ${top_srcdir}/NEWS ${top_srcdir}/ChangeLog |
|
|
|
doc: ${top_builddir}/doc/html/index.html ${top_builddir}/doc/latex/@PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@.pdf |
|
|
|
${html_DATA}: doxyfile *.[ch]pp ${deps} style.css head.html foot.html |
|
test -d ${top_builddir}/doc/latex || mkdir -p ${top_builddir}/doc/latex |
|
test -d ${top_builddir}/doc/html || mkdir -p ${top_builddir}/doc/html |
|
@test -f ${top_builddir}/doc/html/hintergrund.png || \ |
|
cp ~/www/marc/linux/hintergrund.png \ |
|
${top_builddir}/doc/html || \ |
|
( \ |
|
echo "**** sorry, you are missing the html background image"; \ |
|
echo " (after distclean doc/html/hintergrund.png is deleted)" \ |
|
) |
|
doxygen doxyfile |
|
if PEDANTIC |
|
test \! -s doxygen.errors |
|
endif |
|
|
|
${top_builddir}/doc/latex/@PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@.pdf: doxyfile *.[ch]pp ${deps} ${html_DATA} |
|
cd ${top_builddir}/doc/latex && make && \ |
|
mv refman.pdf @PACKAGENAME@-@MAJOR@.@MINOR@.@LEAST@.pdf |
|
|
|
clean-local: |
|
- rm doxygen.err libmrw.doxytag |
|
|
|
distclean-local: |
|
- rm -r ${top_builddir}/doc/html/* ${top_builddir}/doc/latex/* |
|
- rm makefile makefile.in doxygen.err libmrw.doxytag |
|
|
|
dist-hook: |
|
test -d ${distdir}/doc/html || \ |
|
mkdir -p ${distdir}/doc/html |
|
cp ${top_builddir}/doc/html/* ${distdir}/doc/html/. |
|
|
|
install-data-hook: |
|
chmod -R u+w ${pkgdatadir}/doc |
|
cp -rf ${top_builddir}/doc/html ${pkgdatadir}/doc/ |
|
|
|
uninstall-hook: |
|
chmod -R u+w ${pkgdatadir}/doc |
|
rm -rf ${pkgdatadir}/doc/html
|
|
|