Hi,

I intend to commit the following patches. These should be the remaining
ones necessary for a proper autotools dist-tarball generation.

They fix the following build issues (I think they can be summarized
to LOGCXX-43, "configure/make help needed"):

- Allow to create proper dist-tarball with "make dist"

- Remove build dependency on the boost C++ library. This seemed to be
  necessary for the unit tests earlier, but is not needed anymore.

- Adjusted README file to reflect this. Also, with a proper
  dist-tarball, the ./autogen.sh step is obsolete (This is the
  very primary reason why I got involved in this project
  some months ago ;-) )

- Add all missing .cpp files to the Makefile.am's.

- Copy the data necessary for the unit tests to the build directory if
  it is different from the source directory.

- The "check" target in tests/ now does the same as the ant script
  by executing all test cases.

All test cases succeed with my nightly build, see the
TestsuiteResult_<date> file at http://littletux.homelinux.org/log4cxx.

Thanks,

  Andreas


Index: include/log4cxx/private/Makefile.am
===================================================================
--- include/log4cxx/private/Makefile.am (Revision 349448)
+++ include/log4cxx/private/Makefile.am (Arbeitskopie)
@@ -2,3 +2,7 @@
 privateinc_HEADERS= $(top_builddir)/include/log4cxx/private/*.h
log4cxx_private.h
 DISTCLEANFILES = log4cxx_private.h
 EXTRA_DIST = log4cxx_private.hw
+
+dist-hook:
+       -rm -f $(distdir)/log4cxx_private.h
+
Index: configure.in
===================================================================
--- configure.in        (Revision 349448)
+++ configure.in        (Arbeitskopie)
@@ -122,12 +122,6 @@
                 enable_tests=no)
 fi

-AC_HAVE_LIBRARY([boost_regex],,
-        enable_tests=no)
-
-AC_CHECK_HEADERS([boost/regex.hpp],,
-        enable_tests=no)
-
 AM_CONDITIONAL(TESTS, test x$enable_tests = xyes)


Index: src/class.cpp
===================================================================
--- src/class.cpp       (Revision 349448)
+++ src/class.cpp       (Arbeitskopie)
@@ -34,7 +34,7 @@
 #include <log4cxx/nt/outputdebugstringappender.h>
 #endif
 #include <log4cxx/rolling/rollingfileappender.h>
-#ifdef LOG4CXX_HAVE_SMTP
+#if LOG4CXX_HAVE_SMTP
 #include <log4cxx/net/smtpappender.h>
 #endif
 #include <log4cxx/net/socketappender.h>
@@ -142,7 +142,7 @@
         OutputDebugStringAppender::registerClass();
 #endif
         RollingFileAppender::registerClass();
-#ifdef LOG4CXX_HAVE_SMTP
+#if LOG4CXX_HAVE_SMTP
 //  TODO:
 //        SMTPAppender::registerClass();
 #endif
Index: src/Makefile.am
===================================================================
--- src/Makefile.am     (Revision 349448)
+++ src/Makefile.am     (Arbeitskopie)
@@ -86,6 +86,7 @@
         odbcappender.cpp \
         onlyonceerrorhandler.cpp \
         optionconverter.cpp \
+        outputdebugstringappender.cpp \
         outputstream.cpp \
         outputstreamwriter.cpp \
         patternconverter.cpp \
Index: README
===================================================================
--- README      (Revision 349448)
+++ README      (Arbeitskopie)
@@ -1,7 +1,7 @@
 Introduction
 ============
 Log4cxx is a port to C++ of the log4j project.
-The goal is have the same functionnalities and interfaces of log4j.
+The goal is have the same functionalities and interfaces of log4j.

 Features
 ========
@@ -34,14 +34,13 @@

 Supported OS
 ============
-* Linux (tested on Linux Mandrake 10.0)
+* Linux (tested on Linux Mandrake 10.0, Debian GNU/Linux 3.1)
 * FreeBSD
 * Windows (MSVC 6.0, MSVC 7.1 or Cygwin)
 * Other POSIX OS should be supported but were not tested

 Installation
 ============
-./autogen.sh
 ./configure
 make
 make check
@@ -64,7 +63,6 @@
 =============
 You will need to install
 * cppunit (http://cppunit.sourceforge.net/)
-* boost regex (http://www.boost.org/)

 POSIC :
 * run "make check"
@@ -98,4 +96,3 @@
 This library is licensed under the Apache Public License.  Please read the
 included license.apl for details.

-
Index: tests/input/rolling/Makefile.am
===================================================================
--- tests/input/rolling/Makefile.am     (Revision 349448)
+++ tests/input/rolling/Makefile.am     (Arbeitskopie)
@@ -1 +1,10 @@
 EXTRA_DIST = *.xml *.properties
+
+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
Index: tests/input/xml/Makefile.am
===================================================================
--- tests/input/xml/Makefile.am (Revision 349448)
+++ tests/input/xml/Makefile.am (Arbeitskopie)
@@ -1 +1,10 @@
-EXTRA_DIST = log4j.dtd *.xml
\ No newline at end of file
+EXTRA_DIST = log4j.dtd *.xml
+
+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
Index: tests/input/performance/Makefile.am
===================================================================
--- tests/input/performance/Makefile.am (Revision 349448)
+++ tests/input/performance/Makefile.am (Arbeitskopie)
@@ -1 +1,10 @@
 EXTRA_DIST = *.xml
+
+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
Index: tests/input/ndc/Makefile.am
===================================================================
--- tests/input/ndc/Makefile.am (Revision 349448)
+++ tests/input/ndc/Makefile.am (Arbeitskopie)
@@ -1 +1,10 @@
 EXTRA_DIST = *.properties
+
+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
Index: tests/input/Makefile.am
===================================================================
--- tests/input/Makefile.am     (Revision 349448)
+++ tests/input/Makefile.am     (Arbeitskopie)
@@ -1,2 +1,11 @@
 SUBDIRS = ndc performance xml rolling
 EXTRA_DIST = *.properties
+
+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
Index: tests/src/db/Makefile.am
===================================================================
--- tests/src/db/Makefile.am    (Revision 349448)
+++ tests/src/db/Makefile.am    (Arbeitskopie)
@@ -3,8 +3,9 @@
 if TESTS

 noinst_LIBRARIES = libdb.a
-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

+
 libdb_a_SOURCES = \
        odbcappendertestcase.cpp

Index: tests/src/helpers/Makefile.am
===================================================================
--- tests/src/helpers/Makefile.am       (Revision 349448)
+++ tests/src/helpers/Makefile.am       (Arbeitskopie)
@@ -4,11 +4,13 @@

 noinst_LIBRARIES = libhelpers.a

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

 libhelpers_a_SOURCES = \
         absolutetimedateformattestcase.cpp \
         cacheddateformattestcase.cpp \
+        charsetdecodertestcase.cpp \
+        charsetencodertestcase.cpp \
         cyclicbuffertestcase.cpp\
         datetimedateformattestcase.cpp \
         iso8601dateformattestcase.cpp \
@@ -17,6 +19,7 @@
         propertiestestcase.cpp \
         relativetimedateformattestcase.cpp \
         stringtokenizertestcase.cpp \
+        stringhelpertestcase.cpp \
         timezonetestcase.cpp \
         transcodertestcase.cpp \
         unicodehelpertestcase.cpp
Index: tests/src/varia/Makefile.am
===================================================================
--- tests/src/varia/Makefile.am (Revision 349448)
+++ tests/src/varia/Makefile.am (Arbeitskopie)
@@ -4,8 +4,9 @@

 noinst_LIBRARIES = libvaria.a

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

+
 libvaria_a_SOURCES = \
        errorhandlertestcase.cpp \
        levelmatchfiltertestcase.cpp \
Index: tests/src/rolling/Makefile.am
===================================================================
--- tests/src/rolling/Makefile.am       (Revision 349448)
+++ tests/src/rolling/Makefile.am       (Arbeitskopie)
@@ -4,7 +4,7 @@

 noinst_LIBRARIES = librolling.a

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

 librolling_a_SOURCES = \
         filenamepatterntestcase.cpp \
Index: tests/src/defaultinit/Makefile.am
===================================================================
--- tests/src/defaultinit/Makefile.am   (Revision 349448)
+++ tests/src/defaultinit/Makefile.am   (Arbeitskopie)
@@ -4,7 +4,7 @@

 noinst_LIBRARIES = libdefaultinit.a

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

 libdefaultinit_a_SOURCES = \
        testcase1.cpp\
Index: tests/src/pattern/Makefile.am
===================================================================
--- tests/src/pattern/Makefile.am       (Revision 349448)
+++ tests/src/pattern/Makefile.am       (Arbeitskopie)
@@ -5,7 +5,7 @@

 noinst_LIBRARIES = libpattern.a

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

 libpattern_a_SOURCES = \
        num343patternconverter.cpp \
Index: tests/src/nt/Makefile.am
===================================================================
--- tests/src/nt/Makefile.am    (Revision 349448)
+++ tests/src/nt/Makefile.am    (Arbeitskopie)
@@ -3,7 +3,7 @@
 if TESTS

 noinst_LIBRARIES = libnt.a
-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

 libnt_a_SOURCES = \
        nteventlogappendertestcase.cpp
Index: tests/src/net/Makefile.am
===================================================================
--- tests/src/net/Makefile.am   (Revision 349448)
+++ tests/src/net/Makefile.am   (Arbeitskopie)
@@ -4,10 +4,16 @@
 if TESTS

 noinst_LIBRARIES = libnet.a
-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

 libnet_a_SOURCES = \
-       socketservertestcase.cpp
+       smtpappendertestcase.cpp \
+       socketappendertestcase.cpp \
+       sockethubappendertestcase.cpp \
+       socketservertestcase.cpp \
+       syslogappendertestcase.cpp \
+       telnetappendertestcase.cpp \
+       xmlsocketappendertestcase.cpp

 check: libnet.a

Index: tests/src/xml/Makefile.am
===================================================================
--- tests/src/xml/Makefile.am   (Revision 349448)
+++ tests/src/xml/Makefile.am   (Arbeitskopie)
@@ -5,8 +5,9 @@

 noinst_LIBRARIES = libxml.a

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

+
 libxml_a_SOURCES = \
        customleveltestcase.cpp \
        domtestcase.cpp \
Index: tests/src/Makefile.am
===================================================================
--- tests/src/Makefile.am       (Revision 349448)
+++ tests/src/Makefile.am       (Arbeitskopie)
@@ -5,11 +5,13 @@

 if TESTS

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include
+
 noinst_PROGRAMS = testsuite shortsocketserver

 testsuite_SOURCES = \
         asyncappendertestcase.cpp\
+        encodingtest.cpp\
         filetestcase.cpp \
         hierarchythresholdtestcase.cpp\
         l7dtestcase.cpp\
@@ -23,6 +25,7 @@
         consoleappendertestcase.cpp\
         fileappendertestcase.cpp\
         rollingfileappendertestcase.cpp\
+        streamtestcase.cpp\
         writerappendertestcase.cpp \
         ndctestcase.cpp

@@ -41,7 +44,7 @@
         -Wl,--whole-archive,xml/libxml.a,--no-whole-archive\
         -Wl,--whole-archive,db/libdb.a,--no-whole-archive\
         -Wl,--whole-archive,nt/libnt.a,--no-whole-archive\
-        @LIBS_CPPUNIT@ -lboost_regex
+        @LIBS_CPPUNIT@

 AM_CPPFLAGS = @CPPFLAGS_CPPUNIT@

@@ -67,7 +70,7 @@
 shortsocketserver_LDFLAGS = \
         -Wl,--whole-archive,util/libutil.a,--no-whole-archive\
         -Wl,--whole-archive,xml/libxml.a,--no-whole-archive\
-        @LIBS_CPPUNIT@ -lboost_regex
+        @LIBS_CPPUNIT@

 shortsocketserver_DEPENDENCIES = \
         util/libutil.a\
Index: tests/src/customlogger/Makefile.am
===================================================================
--- tests/src/customlogger/Makefile.am  (Revision 349448)
+++ tests/src/customlogger/Makefile.am  (Arbeitskopie)
@@ -5,7 +5,7 @@

 noinst_LIBRARIES = libcustomlogger.a

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

 libcustomlogger_a_SOURCES = \
        xlogger.cpp\
Index: tests/src/util/Makefile.am
===================================================================
--- tests/src/util/Makefile.am  (Revision 349448)
+++ tests/src/util/Makefile.am  (Arbeitskopie)
@@ -5,11 +5,12 @@

 noinst_LIBRARIES = libutil.a

-INCLUDES = -I$(top_srcdir)/include
+INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include

 libutil_a_SOURCES = \
        absolutetimefilter.cpp\
        absolutedateandtimefilter.cpp\
+       binarycompare.cpp\
        compare.cpp\
        controlfilter.cpp\
        filenamefilter.cpp \
Index: tests/Makefile.am
===================================================================
--- tests/Makefile.am   (Revision 349448)
+++ tests/Makefile.am   (Arbeitskopie)
@@ -3,6 +3,15 @@

 if TESTS

+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
+
 prepare:
        @if test ! -d "output"; then \
                mkdir output; \
@@ -15,8 +24,14 @@
 cleanOutputDir:
        @rm -f output/*
        
-check: regression longUnit
+check: prepare run-unittest

+run-unittest: cleanOutputDir
+       @export TOTO=wonderful; \
+       export key1=value1; \
+       export key2=value2; \
+       src/testsuite +TestCase1
+
 regression: Minimum Logger DOM CustomLevel \
        CustomLogger PatternLayout \
        HierarchyThreshold DefaultInit SocketServer \
Index: tests/witness/encoding/Makefile.am
===================================================================
--- tests/witness/encoding/Makefile.am  (Revision 349448)
+++ tests/witness/encoding/Makefile.am  (Arbeitskopie)
@@ -1,3 +1,12 @@
 EXTRA_DIST = UTF-* \
              ascii.log \
              latin1.log
+
+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
Index: tests/witness/rolling/Makefile.am
===================================================================
--- tests/witness/rolling/Makefile.am   (Revision 349448)
+++ tests/witness/rolling/Makefile.am   (Arbeitskopie)
@@ -1,3 +1,11 @@
 EXTRA_DIST = sbr-test* \
              tbr-test*

+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
Index: tests/witness/ndc/Makefile.am
===================================================================
--- tests/witness/ndc/Makefile.am       (Revision 349448)
+++ tests/witness/ndc/Makefile.am       (Arbeitskopie)
@@ -1 +1,10 @@
 EXTRA_DIST = NDC.*
+
+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi
Index: tests/witness/Makefile.am
===================================================================
--- tests/witness/Makefile.am   (Revision 349448)
+++ tests/witness/Makefile.am   (Arbeitskopie)
@@ -12,3 +12,12 @@
              fallback \
              simple \
              ttcc
+
+# if we are building in a separate build tree, then copy all necessary
files
+all-local:
+       @if test "$(top_srcdir)" != "$(top_builddir)"; then \
+         echo "Copying test suite data files ..." ; \
+         list='$(EXTRA_DIST)'; for file in $$list; do \
+           find $(srcdir) -name "$$file" -exec cp {} . ';' ; \
+         done \
+       fi

Reply via email to