dovecot: prepare for runtime dependency by plugins
Add ABI_VERSION declaration in order to tell dovecot plugins that are runtime-dependent on dovecot's Application Binary Interface (ABI) version, such as the pigeonhole mail filter, that they need to be rebuilt each time the dovecot's ABI version changes. This PR is not yet closing issue #5062. A forthcoming PR for pigeonhole package will close the issue. Introduce a new configuration parameter to enable ICU (i18n) support. Make the ICU disabled by default. Introduce PKG_CONFIG_DEPENDS with the list of configuration parameters triggering rebuild of dovecot. Declare the conffiles section to save dovecot's configuration files and its init.d script on sysupgrade. Introduce a new package, dovecot-utils, to contain doveadm and dsync utilities: closes #4912. Correct the destination directory for the installation of example-config files. At present, the example files are installed into /usr/share/doc/dovecot/example-config/example-config. Signed-off-by: Val Kulkov <val.kulkov@gmail.com>
This commit is contained in:
parent
91cf4e7025
commit
12f0caf3b4
|
@ -9,15 +9,22 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PKG_NAME:=dovecot
|
||||
PKG_VERSION:=2.2.33.2
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=http://www.dovecot.org/releases/2.2
|
||||
PKG_HASH:=fe1e3b78609a56ee22fc209077e4b75348fa1bbd54c46f52bde2472a4c4cee84
|
||||
PKG_LICENSE:=LGPL-2.1 MIT BSD-3-Clause Unique
|
||||
PKG_LICENSE_FILES:=COPYING COPYING.LGPL COPYING.MIT
|
||||
PKG_MAINTAINER:=Lucian Cristian <lucian.cristian@gmail.com>
|
||||
|
||||
PKG_BUILD_DEPENDS:=libiconv
|
||||
PKG_CONFIG_DEPENDS:= \
|
||||
CONFIG_DOVECOT_LDAP \
|
||||
CONFIG_DOVECOT_MYSQL \
|
||||
CONFIG_DOVECOT_PGSQL \
|
||||
CONFIG_DOVECOT_SQLITE \
|
||||
CONFIG_DOVECOT_ICU
|
||||
|
||||
PKG_FIXUP:=autoreconf
|
||||
PKG_INSTALL:=1
|
||||
|
@ -27,11 +34,11 @@ include $(INCLUDE_DIR)/package.mk
|
|||
define Package/dovecot
|
||||
SECTION:=mail
|
||||
CATEGORY:=Mail
|
||||
DEPENDS:=+DOVECOT_LDAP:libopenldap +DOVECOT_MYSQL:libmysqlclient +DOVECOT_PGSQL:libpq +DOVECOT_SQLITE:libsqlite3 +libopenssl +librt +zlib +libbz2 +libcap
|
||||
DEPENDS:=+DOVECOT_LDAP:libopenldap +DOVECOT_MYSQL:libmysqlclient +DOVECOT_PGSQL:libpq +DOVECOT_SQLITE:libsqlite3 +libopenssl +librt +zlib +libbz2 +libcap +DOVECOT_ICU:icu
|
||||
TITLE:=An IMAP and POP3 daemon
|
||||
MAINTAINER:=Lucian Cristian <lucian.cristian@gmail.com>
|
||||
URL:=http://www.dovecot.org/
|
||||
USERID:=dovecot=59:dovecot=59
|
||||
ABI_VERSION:=$(PKG_VERSION)
|
||||
endef
|
||||
|
||||
define Package/dovecot/description
|
||||
|
@ -61,9 +68,26 @@ define Package/dovecot/config
|
|||
default n
|
||||
help
|
||||
Implements SQLite DB support in dovecot.
|
||||
config DOVECOT_ICU
|
||||
bool "Enable i18n features"
|
||||
default n
|
||||
help
|
||||
Enable ICU (International Components for Unicode) support.
|
||||
endmenu
|
||||
endef
|
||||
|
||||
define Package/dovecot/conffiles
|
||||
/etc/init.d/dovecot
|
||||
/etc/dovecot/
|
||||
endef
|
||||
|
||||
define Package/dovecot-utils
|
||||
SECTION:=mail
|
||||
CATEGORY:=Mail
|
||||
DEPENDS:=+dovecot
|
||||
TITLE:=doveadm and dsync utilities for Dovecot
|
||||
endef
|
||||
|
||||
CONFIGURE_ARGS += \
|
||||
--without-gssapi \
|
||||
--without-pam \
|
||||
|
@ -71,11 +95,11 @@ CONFIGURE_ARGS += \
|
|||
--with-notify=dnotify \
|
||||
--without-lzma \
|
||||
--without-lz4 \
|
||||
--with-icu=no \
|
||||
$(if $(CONFIG_DOVECOT_LDAP),--with-ldap=yes,--with-ldap=no) \
|
||||
$(if $(CONFIG_DOVECOT_MYSQL),--with-mysql=yes,--with-mysql=no) \
|
||||
$(if $(CONFIG_DOVECOT_PGSQL),--with-pgsql=yes,--with-pgsql=no) \
|
||||
$(if $(CONFIG_DOVECOT_SQLITE),--with-sqlite=yes,--with-sqlite=no)
|
||||
$(if $(CONFIG_DOVECOT_SQLITE),--with-sqlite=yes,--with-sqlite=no) \
|
||||
$(if $(CONFIG_DOVECOT_ICU),--with-icu=yes,--with-icu=no)
|
||||
|
||||
CONFIGURE_VARS += \
|
||||
RPCGEN= \
|
||||
|
@ -101,13 +125,13 @@ endef
|
|||
define Package/dovecot/install
|
||||
$(INSTALL_DIR) $(1)/etc/init.d \
|
||||
$(1)/etc/dovecot \
|
||||
$(1)/usr/share/doc/dovecot/example-config \
|
||||
$(1)/usr/share/doc/dovecot \
|
||||
$(1)/usr/lib/dovecot \
|
||||
$(1)/usr/bin \
|
||||
$(1)/usr/sbin
|
||||
$(CP) $(PKG_INSTALL_DIR)/etc/dovecot/* $(1)/etc/dovecot/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/dovecot/* $(1)/usr/lib/dovecot/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/share/doc/dovecot/example-config $(1)/usr/share/doc/dovecot/example-config
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/share/doc/dovecot/example-config $(1)/usr/share/doc/dovecot/
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/doveconf $(1)/usr/bin/
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin/
|
||||
$(INSTALL_BIN) ./files/dovecot.init $(1)/etc/init.d/dovecot
|
||||
|
@ -115,4 +139,11 @@ define Package/dovecot/install
|
|||
find $(1)/usr/lib/dovecot/ -name "*.a" -o -name "*.la" | xargs rm
|
||||
endef
|
||||
|
||||
define Package/dovecot-utils/install
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/doveadm $(1)/usr/bin/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/dsync $(1)/usr/bin/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,dovecot))
|
||||
$(eval $(call BuildPackage,dovecot-utils))
|
||||
|
|
Loading…
Reference in New Issue