[Xitami] Building Xitami
Pieter Hintjens
xitami@lists.xitami.org
Mon, 3 May 2004 20:05:56 +0200
On 02/05/04 03:54, Brian {Hamilton Kelly} wrote:
> Ugh! [Spit, spit]
:-)
> Are you really able to keep a cross-platform source that compiles through
> that heap of shit? If so, I take off my hat to you.
>
> Or have you got configuration control problems, and multiple forking of
> sources?
Take a look, if you care. Xitami consists of a core engine that is totally
portable. This engine is wrapped in several command-line envelopes that
include more or less functionality (e.g. xilite which is minimalistic).
There is also a Windows GUI that provides a simple front-end for the web
server engine. This code is not portable.
We don't have code forks and we don't have many configuration problems, but
there is a price to pay nonetheless - the source code is split into different
layers (such as SFL for all portability, SMT for the multithreading engine)
and the build process has to work with these. It is not trivial to build
Xitami from scratch.
Incidentally, we make other products, and it's always quite complex to build
them. We developed Boom (a configuration management tool) because the manual
packaging process for Xitami was too delicate and broke too often. So while
the current source packages are difficult to build, they are accurate and
complete.
Xitami's architecture dates from 1996 when we started designing portable
servers, and it's still a good architecture. Apache/2.0 uses the same 3-tier
model (since 1999, three years after us), with a portability library, a
network service framework, and server protocol handlers.
-
Pieter Hintjens
iMatix