On Thu, Jul 01, 2004 at 08:33:33PM -0400, Mark Phippard wrote:
> I also tend to agree with Ben's sentiments. I come from a Windows world,
> well actually OS/400, so I do not know if this makes sense in the Unix
> world. But ... would it make any sense at all to say that the 1.x
> "binaries" would be produced against APR 0.9 but the source would be
> compatible with 1.0? That way a user could know that they are making a
> choice to potentially break compatability and build against 1.0/2.2 on
> their own?
Correct, the changes in APR 1.0/Apache 2.2 are in most cases are source level
compatible with APR 0.9/Apache 2.0. In our case we are source level
compatible.
We could certainly say that the binaries we ship for 1.x are built
against APR 0.9. However, I think this would be a mistake. If a
platform (and there will be some) is only shipping APR 1.0/Apache 2.2, I
don't see why we should force users to downgrade from what that platform
ships.
However, if the platform is shipping 0.9 or we're providing an APR for
them (statically or shared) then we should certainly be building against
0.9.
That's certainly a reasonable position.
> Also, while my understanding of this issue is relatively small, I recall
> reading in previous posts that the issue was that the APR structs or some
> other thing were directly exposed in the SVN ABI. Would it make sense to
> address this in 2.0? So that 2.0 could be built against APR 0.9 or 1.0
> and present the same ABI/API? It seems like it would make sense, if this
> is even possible, to try to kill this issue for the future ASAP.
Sure, if we want to end up wrapping tons of APR functionality behind our
own interfaces. But I don't think anyone wants to do that. It'd be a
lot of work and I don't think the benefit is worth the duplication of
effort. If we're going to do that we almost might as well write our own
portability library or heck just fork APR into our tree. Which of
course defeats the whole point of selecting APR in the first place.
> Finally, not being a C guru in any sense I do not know the answer to this,
> but couldn't Subversion be statically linked to APR 0.9 and still run with
> Apache 2.2? I am sure you have all thought of all of these things, so I
> apologize if this is all just "noise".
No. Because then you'd have an Apache that would have APR 0.9 and APR
1.0 linked in. As Greg puts it, if you have a really smart linker you
might be able to get away with it. But I really wouldn't call it safe.
--
Ben Reser <ben@reser.org>
http://ben.reser.org
"Conscience is the inner voice which warns us somebody may be looking."
- H.L. Mencken
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Jul 2 09:58:34 2004