I took a bit of time to create a Visual Studio project to use the log4cxx dll that I had created using CMake, and I was able to compile and link cleanly. My only test was to create a project which came up and logged a single statement, so it's not extensively tested(the logging did work properly). I can do more testing if it's necessary.
Given my quick test, it seems like using CMake for Windows is a valid solution for building log4cxx, especially since the only dependencies for log4cxx also use CMake. Thoughts? -Robert Middleton On Sun, Jul 17, 2016 at 2:36 PM, Robert Middleton <osfan6...@gmail.com> wrote: > I did try to add the APR folder for 'encoding' to the apr-build.xml, > however it was not able to build it because apr_escape.c requires a > (generated) header file that the log4cxx build process does not account for. > > Ultimately, it doesn't seem like a good idea to essentially duplicate the > APR build process in order for log4cxx to be built. The ant build script > must be kept up to date with whatever APR is doing, and there's already a > build procedure for APR. > > I have built log4cxx on Windows before, but that was a while ago(it was > also not through Maven, which is what I tried this time). > > I spent a bit of time making up a CMakeLists.txt for log4cxx. It's based > off of the CMake for APR. It doesn't do everything that the APR one does, > but it does compile and link cleanly(I have not yet created a project to > use the dll): > https://gist.github.com/rm5248/4c8ad8ca01bd3b5761a7ff942113e638 > > APR uses CMake for Windows and autotools for Unix-like systems, so adding > in a CMake build for Windows would be consistent with what APR does. > > -Robert Middleton > > On Sun, Jul 17, 2016 at 4:57 AM, Thorsten Schöning <tschoen...@am-soft.de> > wrote: > >> Guten Tag Robert Middleton, >> am Samstag, 16. Juli 2016 um 21:47 schrieben Sie: >> >> > The functions that are missing are apr_generate_random_bytes and apr_ >> escape_hex. >> >> apr-build.xml: >> >> > <!-- Suppressing misc/win32/rand.c since it needs to >> include rpc.h --> >> > <fileset dir="${src.dir}" >> > includes="**/${arch}/*.c" >> > excludes="**/apr_app.c >> misc/win32/rand.c" >> > /> >> >> This was introduced in the following ticket: >> >> https://issues.apache.org/jira/browse/LOGCXX-74 >> >> I wonder how this could have ever worked in other environments, if it >> doesn't for you. And I'm pretty sure that it did for me in the past >> and some others were reporting it working on the list as well. Maybe >> some changes in the versions of Visual Studio used? I last tried with >> some version from 2013 or so. >> >> As for apr_escape_hex, it looks to me that nothing of the folder >> "encoding" is compiled currently as well. Maybe just adding a fileset >> like for "tables" and "strings" with the needed files makes it work. >> >> Mit freundlichen Grüßen, >> >> Thorsten Schöning >> >> -- >> Thorsten Schöning E-Mail: thorsten.schoen...@am-soft.de >> AM-SoFT IT-Systeme http://www.AM-SoFT.de/ >> >> Telefon...........05151- 9468- 55 >> Fax...............05151- 9468- 88 >> Mobil..............0178-8 9468- 04 >> >> AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln >> AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow >> >> >