Couple of comments on both proposals.
First, I want you to be aware that log4cxx (http://
logging.apache.org) as a by-product can produce Visual Studio 6
project files for apr and apr-util sufficient for its own use through
its use of cpptasks (http://ant-contrib.sourceforge.net) and Ant
(http://ant.apache.org). If you get into that might save you some
time trying to figure out the project file syntax.
On the logging proposal, I see a decent amount of discussion
regarding the Windows Event Log methods, but little regarding
OutputDebugString or TraceEvent which a native Windows app would use
to output debug level message or lower. The Event Log methods are
way too expensive for diagnostic logging. I'd assume a typical
Windows configuration would do something send info and higher
messages to the Event Log and debug and lower severity messages to
OutputDebugString or TraceEvent.
I think the most desirable API for APR would mimic syslog but
possibly add additional bitmasks for the logopt parameter to the
apr_open_log method to correspond to different logging API's (like
APR_LOG_DEBUGGER which would map to OutputDebugString on Win32 and
NSLog on Mac OS/X). A platform specific logging API (like
APR_LOG_EVENT_LOG) could be ignored on platforms where it wasn't
meaningful.