> > How about creating a rivetApacheCompat.c file?
>
> I don't know... Apache is pretty tightly coupled to Rivet. There are
> a *lot* of places where the ap_ functions are used. In the file
> upload code, for instance, and in a lot of places in rivetCore.c
That is why rivetCore.c is compiled into mod_rivet.so, and librivet.so
is completely separate. I'm really against loading Apache-based functions
into librivet.so. They should all exist in mod_rivet.so. Like you said,
the core functions should be any function which ties Tcl and Apache
together. A function which uses Apache function calls is just that.
> > If we aren't compiling as an Apache module, we compile that and use
> > its code?
>
> For the moment, I am a bit dubious about the idea of putting the
> EscapeURL stuff in without basing it on the Apache API. It's a waste
> of space, for the moment.
>
> On the other hand, I do agree with the goal of being able to create an
> independant binary. However, that's not going to be an easy process,
> and I think we need to go about it with a comprehensive plan.
Well, not just a separate binary, but by creating a package that is
not reliant upon Apache, we can actually create a decent library of
helpful routines that we can distribute as a Tcl module. Mind you, most
of this is already in the Neo module, but that's pretty much dead with
NWS.
And, we can't really distribute a module of helpful routines that's
based on a library of Apache functions. It really takes up no room at
all to have our own little escape/unescape functions. They're small
in comparison to most Tcl commands, and they're very useful. Sometimes
I write Tcl scripts that run on cron jobs and such that have to do with
my web applications. In that case, I need commands that can escape
and unescape strings. If they're in librivet, I can just 'package require
Rivet' and get them. This was something I did all the time with Neo.
I think other people will find our routines very useful as well. I
just don't think they'll want to be forced to have Apache to get our
useful stuff.
D