* [Buildroot] [PATCH v6 1/3] package/dovecot: New package
@ 2014-10-29 20:14 Bernd Kuhls
2014-10-29 20:14 ` [Buildroot] [PATCH v6 2/3] package/dovecot-pigeonhole: " Bernd Kuhls
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Bernd Kuhls @ 2014-10-29 20:14 UTC (permalink / raw)
To: buildroot
---
v6: no changes
v5: bumped to 2.2.15
v4: bumped to 2.2.14
v3: DOVECOT_CONF_OPT -> DOVECOT_CONF_OPTS
v2: - Reworked dependencies (Thomas)
- added MySQL/SQLite support
- removed cruft from CONV_OPT not needed for buildroot (Thomas)
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
package/Config.in | 1 +
package/dovecot/Config.in | 56 +++++++++++++++++++++++++
package/dovecot/dovecot.mk | 97 ++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 154 insertions(+)
create mode 100644 package/dovecot/Config.in
create mode 100644 package/dovecot/dovecot.mk
diff --git a/package/Config.in b/package/Config.in
index 321aa1c..aec3c14 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -955,6 +955,7 @@ menu "Miscellaneous"
endmenu
menu "Mail"
+ source "package/dovecot/Config.in"
source "package/exim/Config.in"
source "package/fetchmail/Config.in"
source "package/heirloom-mailx/Config.in"
diff --git a/package/dovecot/Config.in b/package/dovecot/Config.in
new file mode 100644
index 0000000..c692402
--- /dev/null
+++ b/package/dovecot/Config.in
@@ -0,0 +1,56 @@
+menuconfig BR2_PACKAGE_DOVECOT
+ bool "dovecot"
+ depends on BR2_INET_IPV6
+ depends on BR2_USE_MMU # fork()
+ help
+ Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-
+ like systems, 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.
+
+ http://www.dovecot.org
+
+if BR2_PACKAGE_DOVECOT
+
+config BR2_PACKAGE_DOVECOT_BZIP2
+ bool "bzip2"
+ select BR2_PACKAGE_BZIP2
+ help
+ Enable bzip2 support.
+
+config BR2_PACKAGE_DOVECOT_MYSQL
+ bool "mysql"
+ select BR2_PACKAGE_MYSQL
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_TOOLCHAIN_HAS_THREADS
+ help
+ Enable MySQL support.
+
+comment "MySQL needs a toolchain w/ C++, threads"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
+
+config BR2_PACKAGE_DOVECOT_OPENSSL
+ bool "openssl"
+ select BR2_PACKAGE_OPENSSL
+ select BR2_PACKAGE_ZLIB
+ help
+ Enable OpenSSL support.
+
+config BR2_PACKAGE_DOVECOT_SQLITE
+ bool "sqlite"
+ select BR2_PACKAGE_SQLITE
+ help
+ Enable SQLite support.
+
+config BR2_PACKAGE_DOVECOT_ZLIB
+ bool "zlib"
+ select BR2_PACKAGE_ZLIB
+ help
+ Enable zlib support.
+
+endif # BR2_PACKAGE_DOVECOT
+
+comment "dovecot needs a toolchain w/ ipv6"
+ depends on BR2_USE_MMU
+ depends on !BR2_INET_IPV6
diff --git a/package/dovecot/dovecot.mk b/package/dovecot/dovecot.mk
new file mode 100644
index 0000000..5b6d8eb
--- /dev/null
+++ b/package/dovecot/dovecot.mk
@@ -0,0 +1,97 @@
+################################################################################
+#
+# dovecot
+#
+################################################################################
+
+DOVECOT_VERSION_MAJOR = 2.2
+DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).15
+DOVECOT_SITE = http://www.dovecot.org/releases/$(DOVECOT_VERSION_MAJOR)
+DOVECOT_INSTALL_STAGING = YES
+DOVECOT_LICENSE = LGPLv2.1 with exceptions
+DOVECOT_LICENSE_FILES = COPYING COPYING.LGPL COPYING.MIT
+DOVECOT_DEPENDENCIES = host-pkgconf $(if $(BR2_PACKAGE_LIBICONV),libiconv)
+
+DOVECOT_CONF_ENV = \
+ RPCGEN=__disable_RPCGEN_rquota \
+ i_cv_epoll_works=yes \
+ i_cv_inotify_works=yes \
+ i_cv_posix_fallocate_works=no \
+ i_cv_signed_size_t=no \
+ i_cv_gmtime_max_time_t=32 \
+ i_cv_signed_time_t=yes \
+ i_cv_mmap_plays_with_write=yes \
+ i_cv_fd_passing=yes \
+ i_cv_c99_vsnprintf=yes \
+ lib_cv_va_copy=yes \
+ lib_cv___va_copy=yes \
+ lib_cv_va_val_copy=yes
+
+DOVECOT_CONF_OPTS = --without-docs
+
+ifeq ($(BR2_PACKAGE_DOVECOT_MYSQL)$(BR2_PACKAGE_DOVECOT_SQLITE),)
+DOVECOT_CONF_OPTS += --without-sql
+endif
+
+ifeq ($(BR2_PACKAGE_DOVECOT_BZIP2),y)
+DOVECOT_CONF_OPTS += --with-bzlib
+DOVECOT_DEPENDENCIES += bzip2
+else
+DOVECOT_CONF_OPTS += --without-bzlib
+endif
+
+ifeq ($(BR2_PACKAGE_LIBCAP),y)
+DOVECOT_CONF_OPTS += --with-libcap
+DOVECOT_DEPENDENCIES += libcap
+else
+DOVECOT_CONF_OPTS += --without-libcap
+endif
+
+ifeq ($(BR2_PACKAGE_DOVECOT_MYSQL),y)
+DOVECOT_CONF_ENV += MYSQL_CONFIG="$(STAGING_DIR)/usr/bin/mysql_config"
+DOVECOT_CONF_OPTS += --with-mysql
+DOVECOT_DEPENDENCIES += mysql
+else
+DOVECOT_CONF_OPTS += --without-mysql
+endif
+
+ifeq ($(BR2_PACKAGE_DOVECOT_OPENSSL),y)
+DOVECOT_CONF_OPTS += --with-ssl=openssl
+DOVECOT_DEPENDENCIES += openssl
+else
+DOVECOT_CONF_OPTS += --with-ssl=no
+endif
+
+ifeq ($(BR2_PACKAGE_DOVECOT_SQLITE),y)
+DOVECOT_CONF_OPTS += --with-sqlite
+DOVECOT_DEPENDENCIES += sqlite
+else
+DOVECOT_CONF_OPTS += --without-sqlite
+endif
+
+ifeq ($(BR2_PACKAGE_DOVECOT_ZLIB),y)
+DOVECOT_CONF_OPTS += --with-zlib
+DOVECOT_DEPENDENCIES += zlib
+else
+DOVECOT_CONF_OPTS += --without-zlib
+endif
+
+# fix paths to avoid using /usr/lib/dovecot
+define DOVECOT_POST_CONFIGURE
+ for i in $$(find $(@D) -name "Makefile"); do \
+ $(SED) 's%^pkglibdir =.*%pkglibdir = \$$(libdir)%' $$i; \
+ $(SED) 's%^pkglibexecdir =.*%pkglibexecdir = \$$(libexecdir)%' $$i; \
+ done
+endef
+
+DOVECOT_POST_CONFIGURE_HOOKS += DOVECOT_POST_CONFIGURE
+
+# dovecot installs dovecot-config in usr/lib/, therefore DOVECOT_CONFIG_SCRIPTS
+# can not be used to rewrite paths
+define DOVECOT_FIX_STAGING_DOVECOT_CONFIG
+ $(SED) 's,^LIBDOVECOT_INCLUDE=.*$$,LIBDOVECOT_INCLUDE=\"-I$(STAGING_DIR)/usr/include/dovecot\",' $(STAGING_DIR)/usr/lib/dovecot-config
+endef
+
+DOVECOT_POST_INSTALL_STAGING_HOOKS += DOVECOT_FIX_STAGING_DOVECOT_CONFIG
+
+$(eval $(autotools-package))
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v6 2/3] package/dovecot-pigeonhole: New package
2014-10-29 20:14 [Buildroot] [PATCH v6 1/3] package/dovecot: New package Bernd Kuhls
@ 2014-10-29 20:14 ` Bernd Kuhls
2014-10-30 21:25 ` Thomas Petazzoni
2014-10-29 20:14 ` [Buildroot] [PATCH v6 3/3] package/exim: Add support for SMTP AUTH through Dovecot Bernd Kuhls
2014-10-30 21:22 ` [Buildroot] [PATCH v6 1/3] package/dovecot: New package Thomas Petazzoni
2 siblings, 1 reply; 6+ messages in thread
From: Bernd Kuhls @ 2014-10-29 20:14 UTC (permalink / raw)
To: buildroot
---
v6: bump version to 0.4.4
v5: no changes
v4: no changes
v3: DOVECOT_PIGEONHOLE_CONF_OPT -> DOVECOT_PIGEONHOLE_CONF_OPTS
v2: - package moved to new Dovecot dependency submenu
- removed cruft from CONV_OPT not needed for buildroot (Thomas)
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
package/dovecot-pigeonhole/Config.in | 8 ++++++++
package/dovecot-pigeonhole/dovecot-pigeonhole.mk | 16 ++++++++++++++++
package/dovecot/Config.in | 2 ++
3 files changed, 26 insertions(+)
create mode 100644 package/dovecot-pigeonhole/Config.in
create mode 100644 package/dovecot-pigeonhole/dovecot-pigeonhole.mk
diff --git a/package/dovecot-pigeonhole/Config.in b/package/dovecot-pigeonhole/Config.in
new file mode 100644
index 0000000..83f5287
--- /dev/null
+++ b/package/dovecot-pigeonhole/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_DOVECOT_PIGEONHOLE
+ bool "dovecot-pigeonhole"
+ help
+ Pigeonhole is the name of the project that adds support for the Sieve
+ language (RFC 5228) and the ManageSieve protocol (RFC 5804) to the
+ Dovecot Secure IMAP Server.
+
+ http://pigeonhole.dovecot.org
diff --git a/package/dovecot-pigeonhole/dovecot-pigeonhole.mk b/package/dovecot-pigeonhole/dovecot-pigeonhole.mk
new file mode 100644
index 0000000..15f421c
--- /dev/null
+++ b/package/dovecot-pigeonhole/dovecot-pigeonhole.mk
@@ -0,0 +1,16 @@
+################################################################################
+#
+# dovecot-pigeonhole
+#
+################################################################################
+
+DOVECOT_PIGEONHOLE_VERSION = 0.4.4
+DOVECOT_PIGEONHOLE_SOURCE = dovecot-2.2-pigeonhole-$(DOVECOT_PIGEONHOLE_VERSION).tar.gz
+DOVECOT_PIGEONHOLE_SITE = http://pigeonhole.dovecot.org/releases/2.2
+DOVECOT_PIGEONHOLE_LICENSE = LGPLv2.1
+DOVECOT_PIGEONHOLE_LICENSE_FILES = COPYING
+DOVECOT_PIGEONHOLE_DEPENDENCIES = dovecot
+
+DOVECOT_PIGEONHOLE_CONF_OPTS = --with-dovecot=$(STAGING_DIR)/usr/lib
+
+$(eval $(autotools-package))
diff --git a/package/dovecot/Config.in b/package/dovecot/Config.in
index c692402..9c0ecc8 100644
--- a/package/dovecot/Config.in
+++ b/package/dovecot/Config.in
@@ -49,6 +49,8 @@ config BR2_PACKAGE_DOVECOT_ZLIB
help
Enable zlib support.
+source package/dovecot-pigeonhole/Config.in
+
endif # BR2_PACKAGE_DOVECOT
comment "dovecot needs a toolchain w/ ipv6"
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v6 3/3] package/exim: Add support for SMTP AUTH through Dovecot
2014-10-29 20:14 [Buildroot] [PATCH v6 1/3] package/dovecot: New package Bernd Kuhls
2014-10-29 20:14 ` [Buildroot] [PATCH v6 2/3] package/dovecot-pigeonhole: " Bernd Kuhls
@ 2014-10-29 20:14 ` Bernd Kuhls
2014-10-30 21:38 ` Thomas Petazzoni
2014-10-30 21:22 ` [Buildroot] [PATCH v6 1/3] package/dovecot: New package Thomas Petazzoni
2 siblings, 1 reply; 6+ messages in thread
From: Bernd Kuhls @ 2014-10-29 20:14 UTC (permalink / raw)
To: buildroot
---
v6: no changes
v5: no changes
v4: Initial version
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
package/exim/exim.mk | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/package/exim/exim.mk b/package/exim/exim.mk
index 9ae94c3..43f1a6b 100644
--- a/package/exim/exim.mk
+++ b/package/exim/exim.mk
@@ -55,6 +55,13 @@ define EXIM_USE_DEFAULT_CONFIG_FILE_CLAMAV
endef
endif
+ifeq ($(BR2_PACKAGE_DOVECOT),y)
+EXIM_DEPENDENCIES += dovecot
+define EXIM_USE_DEFAULT_CONFIG_FILE_DOVECOT
+ $(call exim-config-change,AUTH_DOVECOT,yes)
+endef
+endif
+
define EXIM_CONFIGURE_TOOLCHAIN
$(call exim-config-add,CC,$(TARGET_CC))
$(call exim-config-add,CFLAGS,$(TARGET_CFLAGS))
@@ -73,6 +80,7 @@ else # CUSTOM_CONFIG
define EXIM_CONFIGURE_CMDS
$(EXIM_USE_DEFAULT_CONFIG_FILE)
$(EXIM_USE_DEFAULT_CONFIG_FILE_CLAMAV)
+ $(EXIM_USE_DEFAULT_CONFIG_FILE_DOVECOT)
$(EXIM_CONFIGURE_TOOLCHAIN)
endef
endif # CUSTOM_CONFIG
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v6 1/3] package/dovecot: New package
2014-10-29 20:14 [Buildroot] [PATCH v6 1/3] package/dovecot: New package Bernd Kuhls
2014-10-29 20:14 ` [Buildroot] [PATCH v6 2/3] package/dovecot-pigeonhole: " Bernd Kuhls
2014-10-29 20:14 ` [Buildroot] [PATCH v6 3/3] package/exim: Add support for SMTP AUTH through Dovecot Bernd Kuhls
@ 2014-10-30 21:22 ` Thomas Petazzoni
2 siblings, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2014-10-30 21:22 UTC (permalink / raw)
To: buildroot
Dear Bernd Kuhls,
On Wed, 29 Oct 2014 21:14:04 +0100, Bernd Kuhls wrote:
> ---
> v6: no changes
> v5: bumped to 2.2.15
> v4: bumped to 2.2.14
> v3: DOVECOT_CONF_OPT -> DOVECOT_CONF_OPTS
> v2: - Reworked dependencies (Thomas)
> - added MySQL/SQLite support
> - removed cruft from CONV_OPT not needed for buildroot (Thomas)
>
> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
> ---
> package/Config.in | 1 +
> package/dovecot/Config.in | 56 +++++++++++++++++++++++++
> package/dovecot/dovecot.mk | 97 ++++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 154 insertions(+)
> create mode 100644 package/dovecot/Config.in
> create mode 100644 package/dovecot/dovecot.mk
Applied, thanks. I've done a few changes though:
[Thomas:
- slightly adjust the prompt of options in the Config.in file
- fix license: it's just LGPLv2.1, no exceptions. Parts of the code
are under public domain, or under the MIT license, but the
combination is under LGPLv2.1.
- rewrap one comment in the .mk file.]
Also, could you:
* Send a patch to add an init script, if applicable? Since dovecot is
a POP3/IMAP server, it would make sense to have an init script
available for it, so that it works "out of the box" in at least a
default way for users.
* Check if iconv is needed or not when the toolchain doesn't have
locale support? You have $(if $(BR2_PACKAGE_LIBICONV),iconv) in
DEPENDENCIES. But the iconv package is not selected.
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v6 2/3] package/dovecot-pigeonhole: New package
2014-10-29 20:14 ` [Buildroot] [PATCH v6 2/3] package/dovecot-pigeonhole: " Bernd Kuhls
@ 2014-10-30 21:25 ` Thomas Petazzoni
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2014-10-30 21:25 UTC (permalink / raw)
To: buildroot
Dear Bernd Kuhls,
On Wed, 29 Oct 2014 21:14:05 +0100, Bernd Kuhls wrote:
> ---
> v6: bump version to 0.4.4
> v5: no changes
> v4: no changes
> v3: DOVECOT_PIGEONHOLE_CONF_OPT -> DOVECOT_PIGEONHOLE_CONF_OPTS
> v2: - package moved to new Dovecot dependency submenu
> - removed cruft from CONV_OPT not needed for buildroot (Thomas)
>
> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
> ---
> package/dovecot-pigeonhole/Config.in | 8 ++++++++
> package/dovecot-pigeonhole/dovecot-pigeonhole.mk | 16 ++++++++++++++++
> package/dovecot/Config.in | 2 ++
> 3 files changed, 26 insertions(+)
> create mode 100644 package/dovecot-pigeonhole/Config.in
> create mode 100644 package/dovecot-pigeonhole/dovecot-pigeonhole.mk
Applied, thanks.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v6 3/3] package/exim: Add support for SMTP AUTH through Dovecot
2014-10-29 20:14 ` [Buildroot] [PATCH v6 3/3] package/exim: Add support for SMTP AUTH through Dovecot Bernd Kuhls
@ 2014-10-30 21:38 ` Thomas Petazzoni
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2014-10-30 21:38 UTC (permalink / raw)
To: buildroot
Dear Bernd Kuhls,
On Wed, 29 Oct 2014 21:14:06 +0100, Bernd Kuhls wrote:
> ---
> v6: no changes
> v5: no changes
> v4: Initial version
>
> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
> ---
> package/exim/exim.mk | 8 ++++++++
> 1 file changed, 8 insertions(+)
Applied, thanks. However, there was an issue with your three patches:
your SoB line was after the "---" sign, so it was stripped by git when
applying your patches. I restored it for the exim patch, but forgot for
the two previous patches.
Also, your exim patch was based on top of your ClamAV patches, so it
didn't apply cleanly. In such cases, please send your patches as part
of a patch series that include all patches, or make sure they are
properly based on master.
Thanks a lot!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2014-10-30 21:38 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-29 20:14 [Buildroot] [PATCH v6 1/3] package/dovecot: New package Bernd Kuhls
2014-10-29 20:14 ` [Buildroot] [PATCH v6 2/3] package/dovecot-pigeonhole: " Bernd Kuhls
2014-10-30 21:25 ` Thomas Petazzoni
2014-10-29 20:14 ` [Buildroot] [PATCH v6 3/3] package/exim: Add support for SMTP AUTH through Dovecot Bernd Kuhls
2014-10-30 21:38 ` Thomas Petazzoni
2014-10-30 21:22 ` [Buildroot] [PATCH v6 1/3] package/dovecot: New package Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox