[Dovecot] dovecot 1.0-test52 build notes

Mark E. Mallett mem at mv.mv.com
Sat Nov 6 23:19:25 EET 2004


I thought I would try to use 'configure' to lay out the dovecot install
a little differently than the default.  I prefer all the support files
under one tree (e.g. in /usr/local/lib/dovecot-1.0) rather than
distributed around the filesystem.  And I'd be happiest if all of the
support files were just at that top level rather than in subdirectories.
e.g.:

   /usr/local/lib/dovecot-1.0/dovecot.conf
   /usr/local/lib/dovecot-1.0/imap-login
   /usr/local/lib/dovecot-1.0/dovecot-auth

etc.  (I'm happy to have a "doc" subdirectory though.)  And ideally I'd
have the primary executable installed in a more generic place, but
tagged with its version number, like /usr/local/sbin/dovecot-1.0
Note that I'm not suggesting this, just explaining what I am after.

So the second to last thing I tried was:

   --program-suffix=-1.0 \
   --bindir=/usr/local/lib/dovecot-1.0 \
   --sbindir=/usr/local/lib/dovecot-1.0 \
   --libexecdir=/usr/local/lib/dovecot-1.0 \
   --sysconfdir=/usr/local/lib/dovecot-1.0 \
   --datadir=/usr/local/lib/dovecot-1.0 \
   --localstatedir=/usr/local/lib/dovecot-1.0 \

But that didn't really work, for the reasons listed in the "last" try
below, plus all of the executables got the "-1.0" suffix, not just the
"dovecot" program (not a big surprise..).

And the last thing I tried:

   --bindir=/usr/local/lib/dovecot-1.0 \
   --sbindir=/usr/local/lib/dovecot-1.0 \
   --libexecdir=/usr/local/lib/dovecot-1.0 \
   --sysconfdir=/usr/local/lib/dovecot-1.0 \
   --datadir=/usr/local/lib/dovecot-1.0 \
   --localstatedir=/usr/local/lib/dovecot-1.0 \

which kinda got me where I wanted, except that if I want a dovecot-1.0
executable in /usr/local/sbin I need to add that by hand, and also that
the build process added another subdirectory "dovecot":

   /usr/local/lib/dovecot-1.0/dovecot/

I can (and did) manually remove that final directory and flatten out the
tree, and fortunately you've made it possible to specify in dovecot.conf
the paths to all the executables and so forth.  But it would be nice to
be able to create this desired layout entirely via configure and not
have to move things around after the fact.  Is that even possible?
Obviously, don't spend a lot of time on it.. but if I'm missing an
option that would get me where I want, I'd be interested in knowing
about it.

Oh, and "strings src/master/dovecot | grep /usr/local" gives this:

    /usr/local/lib/dovecot-1.0/dovecot.conf
    /usr/local/lib/dovecot/imap
    /usr/local/lib/dovecot-1.0/dovecot/imap
    /usr/local/lib/dovecot-1.0/run/dovecot
    /usr/local/lib/dovecot-1.0/dovecot/dovecot-auth
    /usr/local/lib/dovecot-1.0/dovecot/imap-login
    /usr/local/lib/dovecot-1.0/dovecot/pop3-login
    /usr/local/lib/dovecot-1.0/dovecot/pop3
    /usr/local/lib/dovecot/pop3

So it looks like there are a couple of places where the configured
paths aren't caught (or so it would seem).

Yours,
-mm-



More information about the dovecot mailing list