[Kolab-devel] Compile imapd with murder (CVS)
leupold at leunet.de
Mon May 8 15:22:36 CEST 2006
Am Mittwoch, 3. Mai 2006 15:12 schrieb Torsten Irländer:
> On Wednesday, 3. May 2006 13:16, Michael Leupold wrote:
> > Am Mittwoch, 3. Mai 2006 12:44 schrieb Torsten Irländer:
> > > > Is there some documentation on how the packaging/CVS compile works?
> Hm, Sorry but I'm also not too familiar with rpm and rpms so I can't help
> you here.
> I usually build my rpm(s) from source using the method described above.
> This works for me even if I have no clue how rpms work ;) But that is not
> what you want.
> > The part I don't get is the one where which patches get applied. I think
> > I'll have a look at this again later.
> Please let us know if you have any new findings
I found out the process is not that complicated. For the imapd package it
works the following (compile from CVS):
1. get the openpkg source rpm
2. extract the rpm to /kolab/RPM/SRC
3. copy the kolab-specific patches to /kolab/RPM/SRC
4. apply the kolab.patch. kolab.patch applies to the imapd.spec and enables
the other patches to be applied on build
5. start the build process (rpm -ba imapd.spec)
the imapd-murder.patch does not work because it doesn't use the right style of
configure switches. It inserts an --enable-murder=yes|no while the script
wants a plain --enable-murder. The simplest way to get murder compiled is to
modify kolab.patch to insert the --enable-murder. This should be
nondestructive as it only enables building of the murder-specific binaries
(which aren't employed by default).
You can also compile murder using 2.0.3. That's actually even easier:
/kolab/bin/openpkg rpm -ivh imapd-2.2.12-2.4.0_kolab3.src.rpm
in imapd.spec modify line 236 following:
then compile using
/kolab/bin/openpkg rpm -ba imapd.spec
... and you get your rpm with murder included.
However I wasn't able to get a kolab/murder blend running. The main problem is
that kolab recreates the imap configuration when adding a user and dumps my
modified imapd.conf and cyrus.conf. Is there a way to disable that?
More information about the devel