############################################################################### # This file is part of the IPCop Firewall. # # # # IPCop is free software; you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation; either version 2 of the License, or # # (at your option) any later version. # # # # IPCop is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with IPCop; if not, write to the Free Software # # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # # # Makefiles are based on LFSMake, which is # # Copyright (C) 2002 Rod Roard # # # ############################################################################### ############################################################################### # Definitions ############################################################################### include Config VER = 2.2.12 THISAPP = cyrus-imapd-$(VER) DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = cyrusimap PAK_VER = 1 ############################################################################### # Top-level Rules ############################################################################### objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) $(DL_FILE)_MD5 = 70b3bba526a8d36d3bb23a87d37e9188 install : $(TARGET) check : $(patsubst %,$(DIR_CHK)/%,$(objects)) download :$(patsubst %,$(DIR_DL)/%,$(objects)) md5 : $(subst %,%_MD5,$(objects)) dist: @$(PAK) ############################################################################### # Downloading, checking, md5sum ############################################################################### $(patsubst %,$(DIR_CHK)/%,$(objects)) : @$(CHECK) $(patsubst %,$(DIR_DL)/%,$(objects)) : @$(LOAD) $(subst %,%_MD5,$(objects)) : @$(MD5) ############################################################################### # Installation Details ############################################################################### $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-no_transfig.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-autocreate-0.9.4.diff cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-autosievefolder-0.6.diff cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-rmquota+deletemailbox-0.2-1.diff cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.1.3-flock.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-munge8bit.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.1.16-getrlimit.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.10-groupcache.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-seenstate.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-acceptinvalidfrom.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.3.3-deleteacl_invalid_identifier_fix.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-notify_sms.patch cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-gcc4.patch cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/timsieved_reset_sasl_conn.patch cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/allow_auth_plain_proxying.patch cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/authid_normalize.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-64bit_quota-p1.patch # cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-64bit_quota-p2.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-singleinstancestore.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-spool.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/cyrus-imapd-2.2.12-mupdate-thread-safe.patch cp -f /usr/include/et/com_err.h /usr/include/com_err.h cd $(DIR_APP) && ./configure --prefix=/usr --with-service-path=/usr/lib/cyrus \ --with-cyrus-prefix=/usr/lib/cyrus --sysconfdir=/var/ipfire/cyrusimap \ --with-auth=unix --with-perl --with-sasl --with-idle=idled \ --with-syslogfacility=MAIL --enable-listext --without-snmp cd $(DIR_APP) && make depend cd $(DIR_APP) && make cd $(DIR_APP) && make install -mkdir /var/imap chown cyrus:mail /var/imap chmod 750 /var/imap -mkdir /var/log/imap chown cyrus:mail /var/log/imap chmod 750 /var/log/imap -mkdir /usr/sieve chown cyrus:mail /usr/sieve chmod 750 /usr/sieve -mkdir /var/ipfire/cyrusimap cp -f $(DIR_SRC)/config/cyrusimap/* /var/ipfire/cyrusimap cp -f $(DIR_APP)/tools/mkimap /usr/bin sudo -u cyrus /usr/bin/mkimap /var/ipfire/cyrusimap/imapd.conf chown cyrus.mail /var/imap/socket # Wenn das Dateisystem ext2 waere... # cd /var/imap && chattr +S user quota user/* quota/* && chattr +S /var/spool/imap /var/spool/imap/* # Give user cyrus a password echo cyrus:ipfire | /usr/sbin/chpasswd @rm -rf $(DIR_APP) /usr/include/com_err.h @$(POSTBUILD)