This is an old revision of the document!
If you're a developer, or would just like to tinker with the latest and greatest version of the Citadel source code currently in development, you're welcome to use our source code repository to download up-to-the-minute updates of what we've currently got sitting on the source code server.
Keep in mind that what you download is unreleased code, and as such is not supported in any way. There's no guarantee it'll even compile properly. What it will do is give you an opportunity to see what's going on in the development community, offer you something to tinker with, and if you'd like, you might even consider fixing bugs or adding features and sending them in. (If you do so, please send in small, well-documented patches based on the very latest source tree.)
- citadel - The main distribution - server and text-mode client.
- webcit - Web-based front end for Citadel
- libcitadel - Shared functionality between citserver and webcit
- ctdlphp - a sample application how you could create php applications backed on a citadel server
Inspect the work in tiny steps: http://code.citadel.org/
git clone git://git.citadel.org/appl/gitroot/citadel.git
The Citadel development is organized in Branches; Master contains the currently ongoing development, which may be unstable in some cases; stable-xxxxx contains the to be released source code with ongoing patches & bugfixes backported from master. By default the above git clone gives you a 'master' working copy. Once the code is released into tarballs for distribution, Releases are tagged.
git checkout stable-81x
To get the latest (maybe not yet released) code for this stable branch.
If you found a patch in Master, which you'd like to add to your currently checked out branch or tag, you can use
git cherry-pick a6e90dc4d19b9d7b7f9b55d281cf237bc5f40f66
which would then add this commit to your working copy.
- If you want to build Citadel from sources in the repository, you'll notice that you don't have a configure script to run. This is normal. You will require GNU Autoconf version 2.52 or newer, and GNU Libtool version 1.4 or newer. Type
./bootstrapto generate your configure script, then run it as usual.
- libical version 0.40 or newer is required in order to build a server with calendaring/scheduling support.
- for every Component, you need to call: