On Wed, Sep 27, 2017 at 12:10 PM, William A Rowe Jr <wr...@rowe-clan.net>
wrote:
>...

> After deeper consideration, this was fundamentally wrong.
>
> For those less familiar with the Win32 build, we failed to decouple
> a "project" called "xml" which was, in fact, our idea of how expat
> should be built.
>

Strictly speaking, the xml module is an API that creates a memory-efficient
DOM of an XML document, so that mod_dav could easily consume it. The API
originated from mod_dav's needs.

Another way to view it, is that Expat is a streaming/callback model, but
mod_dav needed a random-access model. The xml code and API is that bridge.

>...

> Already, apr-util has crypto libs, dbm providers, dbd providers, all
> but one are external libraries maintained by external groups with
> their own recommended build mechansims.
>

More background: Expat *source* was added to the apr-util library back in
1999 or 2000 or somesuch. At the time, the library wasn't normally packaged
and easily available. The choice was made to include it, to help downstream
users in a "batteries included" form, but have enough autoconf magic to
also use a pre-installed Expat package.

Nowadays, it makes no sense to keep carrying around the Expat source.

Regarding whether to use Expat and/or libxml under the API covers ... I
don't have any insight or opinion on that. ... I just have insight on the
API and Expat's presence cuz, well, it's my fault :-)

Cheers,
-g

Reply via email to