Stefano wrote:
I think we would gain a lot of value by using APR instead of reinventing something that 5 years from now will look just like it.


Hi Stefano,

I took a look at the documentation of the APR project:

http://apr.apache.org/docs/apr/modules.html
http://apr.apache.org/docs/apr-util/modules.html
http://apr.apache.org/docs/apr-iconv/files.html

and this in an excerpt from the apr.h file, which shows the
main features of APR:

#define APR_HAS_SHARED_MEMORY     1
#define APR_HAS_THREADS                      1
#define APR_HAS_MMAP                            1
#define APR_HAS_FORK                             0
#define APR_HAS_RANDOM                       1
#define APR_HAS_OTHER_CHILD              1
#define APR_HAS_DSO                                 1
#define APR_HAS_SO_ACCEPTFILTER      0
#define APR_HAS_UNICODE_FS                 1
#define APR_HAS_PROC_INVOKED           1
#ifndef _WIN32_WCE
#define APR_HAS_SENDFILE                       1
#define APR_HAS_USER                               1
#define APR_HAS_LARGE_FILES                1
#define APR_HAS_XTHREAD_FILES           1
#else
#define APR_HAS_SENDFILE                      0
#define APR_HAS_USER                              0
#define APR_HAS_LARGE_FILES               0
#define APR_HAS_XTHREAD_FILES          0
#endif
#define APR_HAS_OS_UUID                       1


I noticed also that the following macros are present:

WIN64, APR_HAVE_IPV6

I downloaded the project and built on Win32 without warnings,
and the footprint of apr-1.lib is 1 Mbyte.

I think I'm leaning to your idea :-)

The last 2 problems I see here are:

1. APR doesn't cover is the Windowing subsystem
2. An APR port to the ARM embedded platform doesn't exist

Enrico



Reply via email to