OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Christoph Schug
  Root:   /v/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src                      Date:   16-May-2008 18:06:39
  Branch: HEAD                             Handle: 2008051617063800

  Added files:
    openpkg-src/dovecot11   dovecot11.patch dovecot11.spec fsl.dovecot
                            rc.dovecot

  Log:
    new package: dovecot11 1.1.rc5 (IMAP4 & POP3 Server)

  Summary:
    Revision    Changes     Path
    1.1         +392 -0     openpkg-src/dovecot11/dovecot11.patch
    1.1         +324 -0     openpkg-src/dovecot11/dovecot11.spec
    1.1         +28 -0      openpkg-src/dovecot11/fsl.dovecot
    1.1         +80 -0      openpkg-src/dovecot11/rc.dovecot
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/dovecot11/dovecot11.patch
  ============================================================================
  $ cvs diff -u -r0 -r1.1 dovecot11.patch
  --- /dev/null 2008-05-16 18:02:34 +0200
  +++ dovecot11.patch   2008-05-16 18:06:38 +0200
  @@ -0,0 +1,392 @@
  +Index: configure
  +--- configure.orig   2008-05-05 00:02:24.000000000 +0200
  ++++ configure        2008-05-16 12:09:26.000000000 +0200
  +@@ -31919,14 +31919,14 @@
  + 
  + if test $want_pgsql != no; then
  +     # based on code from PHP
  +-    for i in /usr /usr/local /usr/local/pgsql; do
  +-            for j in include include/pgsql include/postgres 
include/postgresql ""; do
  ++    for i in  @l_prefix@; do
  ++            for j in include/postgresql; do
  +                     if test -r "$i/$j/libpq-fe.h"; then
  +                             PGSQL_INCLUDE=$i/$j
  +                     fi
  +             done
  +-            for lib in lib lib64; do
  +-              for j in $lib $lib/pgsql $lib/postgres $lib/postgresql ""; do
  ++            for lib in lib; do
  ++              for j in $lib; do
  +                     if test -f "$i/$j/libpq.so" || test -f "$i/$j/libpq.a"; 
then
  +                             PGSQL_LIBDIR=$i/$j
  +                     fi
  +Index: configure.in
  +--- configure.in.orig        2008-05-05 00:01:52.000000000 +0200
  ++++ configure.in     2008-05-16 12:09:26.000000000 +0200
  +@@ -1753,14 +1753,14 @@
  + 
  + if test $want_pgsql != no; then
  +     # based on code from PHP
  +-    for i in /usr /usr/local /usr/local/pgsql; do
  +-            for j in include include/pgsql include/postgres 
include/postgresql ""; do
  ++    for i in @l_prefix@; do
  ++            for j in include/postgresql; do
  +                     if test -r "$i/$j/libpq-fe.h"; then
  +                             PGSQL_INCLUDE=$i/$j
  +                     fi
  +             done
  +-            for lib in lib lib64; do
  +-              for j in $lib $lib/pgsql $lib/postgres $lib/postgresql ""; do
  ++            for lib in lib; do
  ++              for j in $lib; do
  +                     if test -f "$i/$j/libpq.so" || test -f "$i/$j/libpq.a"; 
then
  +                             PGSQL_LIBDIR=$i/$j
  +                     fi
  +Index: doc/dovecot-sql-example.conf
  +--- doc/dovecot-sql-example.conf.orig        2008-05-05 00:01:52.000000000 
+0200
  ++++ doc/dovecot-sql-example.conf     2008-05-16 12:09:26.000000000 +0200
  +@@ -47,7 +47,8 @@
  + #                           the default my.cnf location
  + #     option_group        - Read options from the given group (default: 
client)
  + # 
  +-#   You can connect to UNIX sockets by using host: host=/var/run/mysql.sock
  ++#   You can connect to UNIX sockets by using host:
  ++#   [EMAIL PROTECTED]@/var/mysql/mysql.sock
  + #   Note that currently you can't use spaces in parameters.
  + #
  + # sqlite:
  +@@ -56,7 +57,7 @@
  + # Examples:
  + #   connect = host=192.168.1.1 dbname=users
  + #   connect = host=sql.example.com dbname=virtual user=virtual 
password=blarg
  +-#   connect = /etc/dovecot/authdb.sqlite
  ++#   connect = @l_prefix@/etc/dovecot/authdb.sqlite
  + #
  + #connect =
  + 
  +Index: dovecot-example.conf
  +--- dovecot-example.conf.orig        2008-05-05 00:01:52.000000000 +0200
  ++++ dovecot-example.conf     2008-05-16 12:11:39.000000000 +0200
  +@@ -11,16 +11,14 @@
  + 
  + # Default values are shown for each setting, it's not required to uncomment
  + # any of the lines. Exception to this are paths, they're just examples with
  +-# the real defaults being based on configure options. The paths listed here
  +-# are for configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
  +-# --with-ssldir=/etc/ssl
  ++# the real defaults being based on configure options.
  + 
  + # Base directory where to store runtime data.
  +-#base_dir = /var/run/dovecot/
  ++#base_dir = @l_prefix@/var/dovecot/run
  + 
  + # Protocols we want to be serving: imap imaps pop3 pop3s
  + # If you only want to use dovecot-auth, you can set this to "none".
  +-#protocols = imap imaps
  ++#protocols = imap
  + 
  + # A space separated list of IP or host addresses where to listen in for
  + # connections. "*" listens in all IPv4 interfaces. "[::]" listens in all 
IPv6
  +@@ -39,7 +37,7 @@
  + #     listen = *:10100
  + #     ..
  + #   }
  +-#listen = *
  ++#listen = 127.0.0.1
  + 
  + # Disable LOGIN command and all other plaintext authentications unless
  + # SSL/TLS is used (LOGINDISABLED capability). Note that if the remote IP
  +@@ -82,17 +80,17 @@
  + 
  + # IP or host address where to listen in for SSL connections. Defaults
  + # to above if not specified.
  +-#ssl_listen =
  ++#ssl_listen = 127.0.0.1
  + 
  + # Disable SSL/TLS support.
  +-#ssl_disable = no
  ++#ssl_disable = yes
  + 
  + # PEM encoded X.509 SSL/TLS certificate and private key. They're opened 
before
  + # dropping root privileges, so keep the key file unreadable by anyone but
  + # root. Included doc/mkcert.sh can be used to easily generate self-signed
  + # certificate, just make sure to update the domains in dovecot-openssl.cnf
  +-#ssl_cert_file = /etc/ssl/certs/dovecot.pem
  +-#ssl_key_file = /etc/ssl/private/dovecot.pem
  ++#ssl_cert_file = @l_prefix@/etc/dovecot/ssl/dovecot.crt
  ++#ssl_key_file = @l_prefix@/etc/dovecot/ssl/dovecot.key
  + 
  + # If key file is password protected, give the password here. Alternatively
  + # give it when starting dovecot with -p parameter.
  +@@ -133,7 +131,7 @@
  + # which login needs to be able to connect to. The sockets are created when
  + # running as root, so you don't have to worry about permissions. Note that
  + # everything in this directory is deleted when Dovecot is started.
  +-#login_dir = /var/run/dovecot/login
  ++#login_dir = @l_prefix@/var/dovecot/run/login
  + 
  + # chroot login process to the login_dir. Only reason not to do this is if 
you
  + # wish to run the whole Dovecot without roots. <doc/wiki/Rootless.txt>
  +@@ -143,7 +141,7 @@
  + # and don't use it anywhere else. The user must also belong to a group where
  + # only it has access, it's used to control access for authentication 
process.
  + # Note that this user is NOT used to access mails. <doc/wiki/UserIds.txt>
  +-#login_user = dovecot
  ++#login_user = @l_musr@
  + 
  + # Set max. process size in megabytes. If you don't use
  + # login_process_per_connection you might need to grow this.
  +@@ -503,7 +501,7 @@
  + 
  + protocol imap {
  +   # Login executable location.
  +-  #login_executable = /usr/libexec/dovecot/imap-login
  ++  #login_executable = @l_prefix@/libexec/dovecot/imap-login
  + 
  +   # IMAP executable location. Changing this allows you to execute other
  +   # binaries before the imap process is executed.
  +@@ -515,7 +513,7 @@
  +   # /tmp/gdbhelper.* files:
  +   #   mail_executable = /usr/libexec/dovecot/gdbhelper 
/usr/libexec/dovecot/imap
  +   #
  +-  #mail_executable = /usr/libexec/dovecot/imap
  ++  #mail_executable = @l_prefix@/libexec/dovecot/imap
  + 
  +   # Maximum IMAP command line length in bytes. Some clients generate very 
long
  +   # command lines with huge mailboxes, so you may need to raise this if you 
get
  +@@ -529,7 +527,7 @@
  +   # Support for dynamically loadable plugins. mail_plugins is a space 
separated
  +   # list of plugins to load.
  +   #mail_plugins = 
  +-  #mail_plugin_dir = /usr/lib/dovecot/imap
  ++  #mail_plugin_dir = @l_prefix@/lib/dovecot/imap
  + 
  +   # Send IMAP capabilities in greeting message. This makes it unnecessary 
for
  +   # clients to request it with CAPABILITY command, so it saves one 
round-trip.
  +@@ -572,11 +570,11 @@
  + 
  + protocol pop3 {
  +   # Login executable location.
  +-  #login_executable = /usr/libexec/dovecot/pop3-login
  ++  #login_executable = @l_prefix@/libexec/dovecot/pop3-login
  + 
  +   # POP3 executable location. See IMAP's mail_executable above for examples
  +   # how this could be changed.
  +-  #mail_executable = /usr/libexec/dovecot/pop3
  ++  #mail_executable = @l_prefix@/libexec/dovecot/pop3
  + 
  +   # Don't try to set mails non-recent or seen with POP3 sessions. This is
  +   # mostly intended to reduce disk I/O. With maildir it doesn't move files
  +@@ -636,7 +634,7 @@
  +   # Support for dynamically loadable plugins. mail_plugins is a space 
separated
  +   # list of plugins to load.
  +   #mail_plugins = 
  +-  #mail_plugin_dir = /usr/lib/dovecot/pop3
  ++  #mail_plugin_dir = @l_prefix@/lib/dovecot/pop3
  + 
  +   # Workarounds for various client bugs:
  +   #   outlook-no-nuls:
  +@@ -664,7 +662,7 @@
  +   # Support for dynamically loadable plugins. mail_plugins is a space 
separated
  +   # list of plugins to load.
  +   #mail_plugins = 
  +-  #mail_plugin_dir = /usr/lib/dovecot/lda
  ++  #mail_plugin_dir = @l_prefix@/lib/dovecot/lda
  + 
  +   # If user is over quota, return with temporary failure instead of
  +   # bouncing the mail.
  +@@ -678,14 +676,14 @@
  +   #deliver_log_format = msgid=%m: %$
  + 
  +   # Binary to use for sending mails.
  +-  #sendmail_path = /usr/lib/sendmail
  ++  #sendmail_path = @l_prefix@/sbin/sendmail
  + 
  +   # Human readable error message for rejection mails. Use can use variables:
  +   #  %n = CRLF, %r = reason, %s = subject, %t = recipient
  +   #rejection_reason = Your message to <%t> was automatically rejected:%n%r
  + 
  +   # UNIX socket path to master authentication server to find users.
  +-  #auth_socket_path = /var/run/dovecot/auth-master
  ++  #auth_socket_path = @l_prefix@/var/dovecot/run/auth-master
  + }
  + 
  + ##
  +@@ -693,7 +691,7 @@
  + ##
  + 
  + # Executable location
  +-#auth_executable = /usr/libexec/dovecot/dovecot-auth
  ++#auth_executable = @l_prefix@/libexec/dovecot/dovecot-auth
  + 
  + # Set max. process size in megabytes.
  + #auth_process_size = 256
  +@@ -783,7 +781,7 @@
  + #auth_ntlm_use_winbind = no
  + 
  + # Path for Samba's ntlm_auth helper binary.
  +-#auth_winbind_helper_path = /usr/bin/ntlm_auth
  ++#auth_winbind_helper_path = @l_prefix@/bin/ntlm_auth
  + 
  + # Number of seconds to delay before replying to failed authentications.
  + #auth_failure_delay = 2
  +@@ -816,7 +814,7 @@
  + 
  +   #passdb passwd-file {
  +     # File contains a list of usernames, one per line
  +-    #args = /etc/dovecot.deny
  ++    #args = @l_prefix@/etc/dovecot/dovecot.deny
  +     #deny = yes
  +   #}
  + 
  +@@ -899,13 +897,13 @@
  +   # SQL database <doc/wiki/AuthDatabase.SQL.txt>
  +   #passdb sql {
  +     # Path for SQL configuration file, see doc/dovecot-sql-example.conf
  +-    #args = 
  ++    #args = @l_prefix@/etc/dovecot/dovecot-sql.conf
  +   #}
  + 
  +   # LDAP database <doc/wiki/AuthDatabase.LDAP.txt>
  +   #passdb ldap {
  +     # Path for LDAP configuration file, see doc/dovecot-ldap-example.conf
  +-    #args = 
  ++    #args = @l_prefix@/etc/dovecot/dovecot-ldap.conf
  +   #}
  + 
  +   # vpopmail authentication <doc/wiki/AuthDatabase.VPopMail.txt>
  +@@ -962,13 +960,13 @@
  +   # SQL database <doc/wiki/AuthDatabase.SQL.txt>
  +   #userdb sql {
  +     # Path for SQL configuration file, see doc/dovecot-sql-example.conf
  +-    #args = 
  ++    #args = @l_prefix@/etc/dovecot/dovecot-sql.conf
  +   #}
  + 
  +   # LDAP database <doc/wiki/AuthDatabase.LDAP.txt>
  +   #userdb ldap {
  +     # Path for LDAP configuration file, see doc/dovecot-ldap-example.conf
  +-    #args = 
  ++    #args = @l_prefix@/etc/dovecot/dovecot-ldap.conf
  +   #}
  + 
  +   # vpopmail <doc/wiki/AuthDatabase.VPopMail.txt>
  +@@ -1013,7 +1011,7 @@
  +       # Master socket provides access to userdb information. It's typically
  +       # used to give Dovecot's local delivery agent access to userdb so it
  +       # can find mailbox locations.
  +-      #path = /var/run/dovecot/auth-master
  ++      #path = @l_prefix@/dovecot/run/auth-master
  +       #mode = 0600
  +       # Default user/group is the one who started dovecot-auth (root)
  +       #user = 
  +@@ -1023,7 +1021,7 @@
  +       # The client socket is generally safe to export to everyone. Typical 
use
  +       # is to export it to your SMTP server so it can do SMTP AUTH lookups
  +       # using it.
  +-      #path = /var/run/dovecot/auth-client
  ++      #path = @l_prefix@/dovecot/run/auth-client
  +       #mode = 0660
  +     #}
  +   #}
  +@@ -1037,7 +1035,7 @@
  + #auth external {
  + #  socket connect {
  + #    master {
  +-#      path = /var/run/dovecot/auth-master
  ++#      path = @l_prefix@/dovecot/run/auth-master
  + #    }
  + #  }
  + #}
  +@@ -1053,7 +1051,7 @@
  + # referenced using URIs in format "proxy:<name>".
  + 
  + dict {
  +-  #quota = mysql:/etc/dovecot-dict-quota.conf 
  ++  #quota = mysql:@l_prefix@/etc/dovecot-dict-quota.conf
  + }
  + 
  + # Path to Berkeley DB's configuration file. See doc/dovecot-db.conf for an
  +@@ -1105,7 +1103,7 @@
  +   # one file for each mailbox, eg. INBOX or sub.mailbox. cache_secs 
parameter
  +   # specifies how many seconds to wait between stat()ing dovecot-acl file
  +   # to see if it changed.
  +-  #acl = vfile:/etc/dovecot-acls:cache_secs=300
  ++  #acl = vfile:@l_prefix@/etc/dovecot/dovecot-acls:cache_secs=300
  + 
  +   # Convert plugin. If set, specifies the source storage path which is
  +   # converted to destination storage (mail_location) when the user logs in.
  +@@ -1124,16 +1122,16 @@
  +   # until the message can be saved within quota limits. The configuration 
file
  +   # is a text file where each line is in format: <priority> <mailbox name>
  +   # Mails are first deleted in lowest -> highest priority number order
  +-  #trash = /etc/dovecot-trash.conf
  ++  #trash = @l_prefix@/etc/dovecot/dovecot-trash.conf
  + 
  +   # Expire plugin. Mails are expunged from mailboxes after being there the
  +   # configurable time. The first expiration date for each mailbox is stored 
in
  +   # a dictionary so it can be quickly determined which mailboxes contain
  +   # expired mails. The actual expunging is done in a nightly cronjob, which
  +   # you must set up:
  +-  #   dovecot --exec-mail ext /usr/libexec/dovecot/expire-tool
  ++  #   dovecot --exec-mail ext @l_prefix@/libexec/dovecot/expire-tool
  +   #expire = Trash 7 Spam 30
  +-  #expire_dict = db:/var/lib/dovecot/expire.db
  ++  #expire_dict = db:@l_prefix@/var/dovecot/lib/expire.db
  + 
  +   # Lazy expunge plugin. Currently works only with maildirs. When a user
  +   # expunges mails, the mails are moved to a mailbox in another namespace
  +Index: src/deliver/deliver.c
  +--- src/deliver/deliver.c.orig       2008-05-05 00:01:52.000000000 +0200
  ++++ src/deliver/deliver.c    2008-05-16 12:09:26.000000000 +0200
  +@@ -41,7 +41,7 @@
  + #include <syslog.h>
  + 
  + #define DEFAULT_CONFIG_FILE SYSCONFDIR"/dovecot.conf"
  +-#define DEFAULT_SENDMAIL_PATH "/usr/lib/sendmail"
  ++#define DEFAULT_SENDMAIL_PATH "@l_prefix@/sbin/sendmail"
  + #define DEFAULT_ENVELOPE_SENDER "MAILER-DAEMON"
  + 
  + /* After buffer grows larger than this, create a temporary file to /tmp
  +Index: src/master/master-settings.c
  +--- src/master/master-settings.c.orig        2008-05-05 00:01:54.000000000 
+0200
  ++++ src/master/master-settings.c     2008-05-16 12:09:26.000000000 +0200
  +@@ -178,14 +178,14 @@
  +     MEMBER(syslog_facility) "mail",
  + 
  +     /* general */
  +-    MEMBER(protocols) "imap imaps",
  +-    MEMBER(listen) "*",
  +-    MEMBER(ssl_listen) "",
  ++    MEMBER(protocols) "imap",
  ++    MEMBER(listen) "127.0.0.1",
  ++    MEMBER(ssl_listen) "127.0.0.1",
  + 
  +-    MEMBER(ssl_disable) FALSE,
  ++    MEMBER(ssl_disable) TRUE,
  +     MEMBER(ssl_ca_file) "",
  +-    MEMBER(ssl_cert_file) SSLDIR"/certs/dovecot.pem",
  +-    MEMBER(ssl_key_file) SSLDIR"/private/dovecot.pem",
  ++    MEMBER(ssl_cert_file) "@l_prefix@/etc/dovecot/ssl/dovecot.crt",
  ++    MEMBER(ssl_key_file) "@l_prefix@/etc/dovecot/ssl/dovecot.key",
  +     MEMBER(ssl_key_password) "",
  +     MEMBER(ssl_parameters_regenerate) 168,
  +     MEMBER(ssl_cipher_list) "",
  +@@ -200,7 +200,7 @@
  +     /* login */
  +     MEMBER(login_dir) "login",
  +     MEMBER(login_executable) NULL,
  +-    MEMBER(login_user) "dovecot",
  ++    MEMBER(login_user) "@l_musr@",
  +     MEMBER(login_greeting) "Dovecot ready.",
  +     MEMBER(login_log_format_elements) "user=<%u> method=%m rip=%r lip=%l 
%c",
  +     MEMBER(login_log_format) "%$: %s",
  +@@ -317,7 +317,7 @@
  +     MEMBER(anonymous_username) "anonymous",
  +     MEMBER(krb5_keytab) "",
  +     MEMBER(gssapi_hostname) "",
  +-    MEMBER(winbind_helper_path) "/usr/bin/ntlm_auth",
  ++    MEMBER(winbind_helper_path) "@l_prefix@/bin/ntlm_auth",
  +     MEMBER(failure_delay) 2,
  + 
  +     MEMBER(verbose) FALSE,
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/dovecot11/dovecot11.spec
  ============================================================================
  $ cvs diff -u -r0 -r1.1 dovecot11.spec
  --- /dev/null 2008-05-16 18:02:34 +0200
  +++ dovecot11.spec    2008-05-16 18:06:39 +0200
  @@ -0,0 +1,324 @@
  +##
  +##  dovecot11.spec -- OpenPKG RPM Package Specification
  +##  Copyright (c) 2000-2008 OpenPKG Foundation e.V. <http://openpkg.net/>
  +##
  +##  Permission to use, copy, modify, and distribute this software for
  +##  any purpose with or without fee is hereby granted, provided that
  +##  the above copyright notice and this permission notice appear in all
  +##  copies.
  +##
  +##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  +##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  +##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  +##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  +##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  +##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  +##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  +##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  +##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  +##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  +##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  +##  SUCH DAMAGE.
  +##
  +
  +#   package version
  +%define       V_major        1.1
  +%define       V_minor        rc5
  +%define       V_minor_sieve  5
  +%define       V_managesieve  0.10.2
  +
  +#   package information
  +Name:         dovecot11
  +Summary:      IMAP4 & POP3 Server
  +URL:          http://www.dovecot.org/
  +Vendor:       Timo Sirainen et al.
  +Packager:     OpenPKG Foundation e.V.
  +Distribution: OpenPKG Community
  +Class:        EVAL
  +Group:        Mail
  +License:      MIT+LGPL
  +Version:      %{V_major}.%{V_minor}
  +Release:      20080516
  +
  +#   package options
  +%option       with_fsl          yes
  +%option       with_pam          yes
  +%option       with_ldap         no
  +%option       with_mysql        no
  +%option       with_pgsql        no
  +%option       with_sqlite       no
  +%option       with_pop3d        no
  +%option       with_managesieve  no
  +%option       with_sieve        yes
  +
  +#   list of sources
  +Source0:      
http://www.dovecot.org/releases/%{V_major}/rc/dovecot-%{V_major}.%{V_minor}.tar.gz
  +Source1:      
http://www.dovecot.org/releases/sieve/dovecot-sieve-%{V_major}.%{V_minor_sieve}.tar.gz
  +Source2:      fsl.dovecot
  +Source3:      rc.dovecot
  +Patch0:       dovecot11.patch
  +Patch1:       
http://www.rename-it.nl/dovecot/%{V_major}/dovecot-%{V_major}.%{V_minor}-managesieve-%{V_managesieve}.diff.gz
  +
  +#   build information
  +Prefix:       %{l_prefix}
  +BuildRoot:    %{l_buildroot}
  +BuildPreReq:  OpenPKG, openpkg >= 20060823
  +PreReq:       OpenPKG, openpkg >= 20060823, MTA
  +BuildPreReq:  libiconv, openssl
  +PreReq:       libiconv, openssl
  +%if "%{with_fsl}" == "yes"
  +BuildPreReq:  fsl
  +PreReq:       fsl
  +%endif
  +%if "%{with_ldap}" == "yes"
  +BuildPreReq:  openldap
  +PreReq:       openldap
  +%endif
  +%if "%{with_managesieve}" == "yes"
  +BuildPreReq:  autoconf, automake, pkgconfig, libtool
  +BuildPreReq:  gettext
  +PreReq:       gettext
  +%endif
  +%if "%{with_pam}" == "yes"
  +BuildPreReq:  PAM
  +PreReq:       PAM
  +%endif
  +%if "%{with_mysql}" == "yes"
  +BuildPreReq:  mysql, zlib
  +PreReq:       mysql, zlib
  +%endif
  +%if "%{with_pgsql}" == "yes"
  +BuildPreReq:  postgresql
  +PreReq:       postgresql
  +%endif
  +%if "%{with_sqlite}" == "yes"
  +BuildPreReq:  sqlite
  +PreReq:       sqlite
  +%endif
  +AutoReq:      no
  +AutoReqProv:  no
  +Provides:     dovecot = %{version}-%{release}
  +
  +%description
  +    Dovecot is an Open Source IMAP and POP3 server, written with
  +    security primarily in mind. Dovecot is an excellent choice for both
  +    small and large installations. It's fast, simple to set up, requires
  +    no special administration and it uses very little memory.
  +
  +%track
  +    prog dovecot11 = {
  +        version   = %{V_major}.%{V_minor}
  +        url       = http://www.dovecot.org/download.html
  +        regex     = dovecot-(1\.1(\.(?:rc)\d+)+)\.tar\.gz
  +    }
  +    prog dovecot11:sieve = {
  +        version   = %{V_major}.%{V_minor_sieve}
  +        url       = http://www.dovecot.org/download.html
  +        regex     = dovecot-sieve-(%{V_major}(\.\d+)+)\.tar\.gz
  +    }
  +    prog dovecot11:managesieve = {
  +        version   = %{V_managesieve}
  +        url       = http://www.rename-it.nl/dovecot/%{V_major}/
  +        regex     = 
dovecot-%{V_major}\.%{V_minor}-managesieve-(__VER__)\.diff\.gz
  +    }
  +
  +%prep
  +    %setup -q -n dovecot-%{V_major}.%{V_minor}
  +%if "%{with_sieve}" == "yes"
  +    %setup -q -n dovecot-%{V_major}.%{V_minor} -T -D -a 1
  +%endif
  +    %{l_sed} <%{PATCH0} %{l_value -s -a} | %{l_patch} -p0 -b
  +%if "%{with_managesieve}" == "yes"
  +    sleep 1
  +    %{l_gzip} -dc <%{PATCH1} | %{l_patch} -p1 -b
  +    sleep 1
  +    autoreconf -i --force || true
  +%endif
  +
  +%build
  +    cppflags="%{l_cppflags}"
  +    ldflags="%{l_ldflags} %{l_fsl_ldflags}"
  +    libs="%{l_fsl_libs}"
  +    sql_drivers=""
  +%if "%{with_ldap}" == "yes"
  +    libs="$libs -llber -lssl -lcrypto"
  +%endif
  +%if "%{with_mysql}" == "yes"
  +    cppflags="$cppflags %{l_cppflags mysql}"
  +    ldflags="$ldflags %{l_ldflags mysql}"
  +    sql_drivers="$sql_drivers,mysql"
  +%endif
  +%if "%{with_pgsql}" == "yes"
  +    libs="$libs -lssl -lcrypto -lcrypt"
  +    sql_drivers="$sql_drivers,pgsql"
  +%endif
  +%if "%{with_sqlite}" == "yes"
  +    sql_drivers="$sql_drivers,sqlite"
  +%endif
  +    sql_drivers=`echo "$sql_drivers" | sed 's;^,;;'`
  +
  +    CC="%{l_cc}" \
  +    CFLAGS="%{l_cflags -O}" \
  +    CPPFLAGS="$cppflags" \
  +    LDFLAGS="$ldflags" \
  +    LIBS="$libs" \
  +    ./configure \
  +        --prefix=%{l_prefix} \
  +        --sysconfdir=%{l_prefix}/etc/dovecot \
  +        --with-ssldir=%{l_prefix}/etc/dovecot/ssl \
  +        --datadir=%{l_prefix}/share/dovecot \
  +        --docdir=%{l_prefix}/share/dovecot/doc \
  +        --with-rundir=%{l_prefix}/var/dovecot/run \
  +        --with-libiconv-prefix=%{l_prefix} \
  +        --with-ssl=openssl \
  +        --with-deliver \
  +        --with-docs \
  +%if "%{with_ldap}" == "yes"
  +        --with-ldap \
  +%else
  +        --without-ldap \
  +%endif
  +%if "%{with_mysql}" == "yes" || "%{with_pgsql}" == "yes" || "%{with_sqlite}" 
== "yes"
  +        --with-sql \
  +        --with-sql-drivers="$sql_drivers" \
  +%if "%{with_mysql}" == "yes"
  +        --with-mysql \
  +%else
  +        --without-mysql \
  +%endif
  +%if "%{with_pgsql}" == "yes"
  +        --with-pgsql \
  +%else
  +        --without-pgsql \
  +%endif
  +%if "%{with_sqlite}" == "yes"
  +        --with-sqlite \
  +%else
  +        --without-sqlite \
  +%endif
  +%else
  +        --without-sql \
  +        --without-sql-drivers \
  +        --without-mysql \
  +        --without-pgsql \
  +        --without-sqlite \
  +%endif
  +%if "%{with_pam}" == "yes"
  +        --with-pam \
  +%else
  +        --without-pam \
  +%endif
  +%if "%{with_pop3d}" == "yes"
  +        --with-pop3d \
  +%else
  +        --without-pop3d \
  +%endif
  +        --without-gc \
  +        --without-gssapi \
  +        --without-lucene \
  +        --without-vpopmail \
  +        --enable-shared \
  +        --disable-static
  +    %{l_make} %{l_mflags -O}
  +
  +%if "%{with_sieve}" == "yes"
  +    #   build optional Dovecot LDA sieve plugin
  +    ( cd dovecot-sieve-%{V_major}.%{V_minor_sieve}
  +      CC="%{l_cc}" \
  +      CFLAGS="%{l_cflags -O}" \
  +      CPPFLAGS="%{l_cppflags}" \
  +      LDFLAGS="%{l_ldflags}" \
  +      ./configure \
  +          --prefix=%{l_prefix} \
  +          --with-dovecot=..
  +      %{l_make} %{l_mflags -O}
  +    ) || exit $?
  +%endif
  +
  +%install
  +    rm -rf $RPM_BUILD_ROOT
  +    %{l_make} %{l_mflags} install AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT"
  +
  +%if "%{with_sieve}" == "yes"
  +    #   install optional Dovecot LDA sieve plugin
  +    ( cd dovecot-sieve-%{V_major}.%{V_minor_sieve}
  +      %{l_make} %{l_mflags} install AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT"
  +    ) || exit $?
  +%endif
  +
  +    #   adjust file names of configuration files
  +    ( cd $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot
  +      for i in dovecot dovecot-ldap dovecot-sql; do
  +          mv ${i}{-example,}.conf
  +      done
  +    ) || exit $?
  +
  +    #   create additional dirctories
  +    %{l_shtool} mkdir -f -p -m 755 \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/dovecot/ssl \
  +        $RPM_BUILD_ROOT%{l_prefix}/var/dovecot/log \
  +        $RPM_BUILD_ROOT%{l_prefix}/var/dovecot/run/login
  +
  +    #   install run-command script
  +    %{l_shtool} mkdir -f -p -m 755 \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
  +%if "%{with_pop3d}" == "yes"
  +    cmd='/<\/\{0,1\}with_pop3d>/d'
  +%else
  +    cmd='/<with_pop3d>/,/<\/with_pop3d>/d'
  +%endif
  +    %{l_shtool} install -c -m 755 %{l_value -s -a} \
  +        -e "$cmd" \
  +        %{SOURCE rc.dovecot} \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
  +
  +    #   install OSSP fsl configuration
  +    %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/fsl
  +    %{l_shtool} install -c -m 644 %{l_value -s -a} \
  +        %{SOURCE fsl.dovecot} \
  +        $RPM_BUILD_ROOT%{l_prefix}/etc/fsl/
  +
  +    #   strip installation
  +    rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/dovecot/{,*}/*.la \
  +        >/dev/null 2>&1 || true
  +    strip \
  +        $RPM_BUILD_ROOT%{l_prefix}/sbin/* \
  +        $RPM_BUILD_ROOT%{l_prefix}/libexec/dovecot/* \
  +        >/dev/null 2>&1 || true
  +
  +    #   generate file list
  +    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} \
  +        '%not %dir %{l_prefix}/etc/fsl' \
  +        '%config %{l_prefix}/etc/fsl/fsl.dovecot' \
  +        '%config %attr(0600,%{l_musr},%{l_mgrp}) %{l_prefix}/etc/dovecot/*' \
  +        '%config %attr(0640,%{l_musr},%{l_rgrp}) 
%{l_prefix}/etc/dovecot/dovecot.conf' \
  +        '%dir %attr(0700,%{l_susr},%{l_mgrp}) %{l_prefix}/etc/dovecot/ssl' \
  +        '%dir %attr(0755,%{l_susr},%{l_mgrp}) %{l_prefix}/var/dovecot' \
  +        '%dir %attr(0770,%{l_susr},%{l_rgrp}) %{l_prefix}/var/dovecot/log' \
  +        '%dir %attr(0755,%{l_susr},%{l_mgrp}) %{l_prefix}/var/dovecot/run' \
  +        '%dir %attr(0750,%{l_susr},%{l_mgrp}) 
%{l_prefix}/var/dovecot/run/login' \
  +        '%doc %{l_prefix}/share/dovecot/doc' \
  +        '%doc %{l_prefix}/share/dovecot/doc/wiki'
  +
  +%files -f files
  +
  +%clean
  +    rm -rf $RPM_BUILD_ROOT
  +
  +%post
  +    #   after upgrade, restart service
  +    [ $1 -eq 2 ] || exit 0
  +    eval `%{l_rc} dovecot status 2>/dev/null`
  +    [ ".$dovecot_active" = .yes ] && %{l_rc} dovecot restart
  +    exit 0
  +
  +%preun
  +    #   before erase, stop service and remove log files
  +    [ $1 -eq 0 ] || exit 0
  +    %{l_rc} dovecot stop 2>/dev/null
  +    rm -f $RPM_INSTALL_PREFIX/var/dovecot/*           >/dev/null 2>&1 || true
  +    rm -f $RPM_INSTALL_PREFIX/var/dovecot/log/*       >/dev/null 2>&1 || true
  +    rm -f $RPM_INSTALL_PREFIX/var/dovecot/run/*       >/dev/null 2>&1 || true
  +    rm -f $RPM_INSTALL_PREFIX/var/dovecot/run/login/* >/dev/null 2>&1 || true
  +    exit 0
  +
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/dovecot11/fsl.dovecot
  ============================================================================
  $ cvs diff -u -r0 -r1.1 fsl.dovecot
  --- /dev/null 2008-05-16 18:02:34 +0200
  +++ fsl.dovecot       2008-05-16 18:06:39 +0200
  @@ -0,0 +1,28 @@
  +##
  +##  fsl.dovecot -- OSSP fsl configuration
  +##
  +
  +ident (dovecot.*)/.+ q{
  +    prefix(
  +        prefix="%b %d %H:%M:%S %N <%L> $1[%P]: "
  +    )
  +    -> {
  +        debug: file(
  +            path="@l_prefix@/var/dovecot/log/dovecot.log",
  +            perm=0600
  +        )
  +    }
  +};
  +
  +ident (deliver(.*))/.+ q{
  +    prefix(
  +        prefix="%b %d %H:%M:%S %N <%L> $1[%P]: "
  +    )
  +    -> {
  +        debug: file(
  +            path="@l_prefix@/var/dovecot/log/deliver.log",
  +            perm=0600
  +        )
  +    }
  +};
  +
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/dovecot11/rc.dovecot
  ============================================================================
  $ cvs diff -u -r0 -r1.1 rc.dovecot
  --- /dev/null 2008-05-16 18:02:34 +0200
  +++ rc.dovecot        2008-05-16 18:06:39 +0200
  @@ -0,0 +1,80 @@
  [EMAIL PROTECTED]@/bin/openpkg rc
  +##
  +##  rc.dovecot -- Run-Commands
  +##
  +
  +%config
  +    dovecot_enable="$openpkg_rc_def"
  +    dovecot_log_prolog="true"
  +    dovecot_log_epilog="true"
  +    dovecot_log_numfiles="10"
  +    dovecot_log_minsize="1M"
  +    dovecot_log_complevel="9"
  +    dovecot_deliver_log_prolog="true"
  +    dovecot_deliver_log_epilog="true"
  +    dovecot_deliver_log_numfiles="10"
  +    dovecot_deliver_log_minsize="1M"
  +    dovecot_deliver_log_complevel="9"
  +<with_pop3d>
  +    POP_type="dovecot"
  +    POP_logfile="@l_prefix@/var/dovecot/log/dovecot.log"
  +</with_pop3d>
  +
  +%common
  +    dovecot_pidfile="@l_prefix@/var/dovecot/run/master.pid"
  +    dovecot_signal () {
  +        [ -f $dovecot_pidfile ] && kill -$1 `cat $dovecot_pidfile`
  +    }
  +
  +%status -u @l_susr@ -o
  +    dovecot_usable="unknown"
  +    dovecot_active="no"
  +    rcService dovecot enable yes && \
  +        dovecot_signal 0 && dovecot_active="yes"
  +    echo "dovecot_enable=\"$dovecot_enable\""
  +    echo "dovecot_usable=\"$dovecot_usable\""
  +    echo "dovecot_active=\"$dovecot_active\""
  +
  +%start -u @l_susr@
  +    rcService dovecot enable yes || exit 0
  +    rcService dovecot active yes && exit 0
  +    @l_prefix@/sbin/dovecot
  +
  +%stop -u @l_susr@
  +    rcService dovecot enable yes || exit 0
  +    rcService dovecot active no  && exit 0
  +    dovecot_signal TERM
  +    sleep 2
  +    rm -f $dovecot_pidfile >/dev/null 2>&1 || true
  +
  +%restart -u @l_susr@
  +    rcService dovecot enable yes || exit 0
  +    rcService dovecot active no  && exit 0
  +    rc dovecot stop start
  +
  +%reload -u @l_susr@
  +    rcService dovecot enable yes || exit 0
  +    rcService dovecot active no  && exit 0
  +    dovecot_signal HUP
  +
  +%daily -u @l_susr@
  +    rcService dovecot enable yes || exit 0
  +    rcTmp -i
  +    hintfile=`rcTmp -f -n hint`
  +    shtool rotate -f \
  +        -n ${dovecot_log_numfiles} -s ${dovecot_log_minsize} -d \
  +        -z ${dovecot_log_complevel} -m 600 -o @l_susr@ -g @l_sgrp@ \
  +        -P "${dovecot_log_prolog}" \
  +        -E "${dovecot_log_epilog}; echo 1 >$hintfile" \
  +        @l_prefix@/var/dovecot/log/dovecot.log
  +    if [ -s $hintfile ]; then
  +        dovecot_signal USR1
  +    fi
  +    rcTmp -k
  +    shtool rotate -f \
  +        -n ${dovecot_deliver_log_numfiles} -s ${dovecot_deliver_log_minsize} 
-d \
  +        -z ${dovecot_deliver_log_complevel} -m 600 -o @l_rusr@ -g @l_rgrp@ \
  +        -P "${dovecot_deliver_log_prolog}" \
  +        -E "${dovecot_deliver_log_epilog}" \
  +        @l_prefix@/var/dovecot/log/deliver.log
  +
  @@ .
______________________________________________________________________
OpenPKG                                             http://openpkg.org
CVS Repository Commit List                     openpkg-cvs@openpkg.org

Reply via email to