Apache is compiled with its default expat-lite. Other apache modules such ad mod_dav use the expat-lite of apache. However XML parsers in PHP, python or the perl one of mod_perl XML::Parser will need to use the real expat; and once linked into the binary will cause a symbol clash.
Generally few module actually use the apache build in expat; with mod_dav as the known exception. But all modules will also work with the real expat.
Let all apache compiles have the line
added to their CONFIGURE args.
add expat as a dependency for the *ONLY*
user it has; mod_dav with
All other dependencies already asume expat.
This is a slightly larger fix; and has the
risk that some other port module also relies
on expat (which we would need to add). But it
reduces footprint and makes nice use of the DSO
and shared lib. Which is good.
Set the rule in apache to be the system expat
and add a dependency to apache ports for exapt.
This is a smaller change; but means that apaches
binary is slightly more bloated.
(cd www/apache13; make all install)
And then add things using xml such as php, mod_perl/XML::Parser from
ports. Any will do.
Apache port now uses full expat