mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-09 05:10:05 +02:00
Add recipe for dovecot
This commit is contained in:
63
net-mail/dovecot/dovecot-2.2.15.recipe
Normal file
63
net-mail/dovecot/dovecot-2.2.15.recipe
Normal file
@@ -0,0 +1,63 @@
|
||||
SUMMARY="An open source IMAP and POP3 email server"
|
||||
DESCRIPTION="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."
|
||||
HOMEPAGE="http://dovecot.org/"
|
||||
LICENSE="MIT"
|
||||
COPYRIGHT="2002-2014 Timo Sirainen"
|
||||
REVISION="1"
|
||||
SOURCE_URI="http://dovecot.org/releases/2.2/dovecot-2.2.15.tar.gz"
|
||||
CHECKSUM_SHA256="d10e7769e2367d635c93fd6589efdd05f2e3acf13c7911a40167faedf23c399f"
|
||||
PATCHES="dovecot-2.2.15.patchset"
|
||||
|
||||
ARCHITECTURES="x86_gcc2 x86 ?x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PROVIDES="
|
||||
dovecot$secondaryArchSuffix = $portVersion
|
||||
cmd:doveadm$secondaryArchSuffix = $portVersion
|
||||
cmd:doveconf$secondaryArchSuffix = $portVersion
|
||||
cmd:dovecot$secondaryArchSuffix = $portVersion
|
||||
cmd:dsync$secondaryArchSuffix = $portVersion
|
||||
lib:libdovecot$secondaryArchSuffix = $portVersion
|
||||
lib:libdovecot_storage$secondaryArchSuffix = $portVersion
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
lib:libdovecot$secondaryArchSuffix
|
||||
lib:libdovecot_storage$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
devel:libz$secondaryArchSuffix
|
||||
devel:liblz4$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:ld
|
||||
cmd:make
|
||||
cmd:find
|
||||
cmd:awk
|
||||
"
|
||||
|
||||
GLOBAL_WRITABLE_FILES="
|
||||
settings/dovecot/README auto-merge
|
||||
"
|
||||
USER_SETTINGS_FILES="
|
||||
settings/dovecot directory manual
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
CFLAGS=-D_BSD_SOURCE runConfigure ./configure --libexecdir=$libDir/libexec
|
||||
make
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
make install
|
||||
}
|
||||
120
net-mail/dovecot/patches/dovecot-2.2.15.patchset
Executable file
120
net-mail/dovecot/patches/dovecot-2.2.15.patchset
Executable file
@@ -0,0 +1,120 @@
|
||||
From 20721e7e6f81a7e0a6b6f488b5ac4e4d0abaedcc Mon Sep 17 00:00:00 2001
|
||||
From: Theodore Kokkoris <t.kokkoris@gmail.com>
|
||||
Date: Sat, 17 Jan 2015 19:24:43 +0200
|
||||
Subject: [PATCH] Various fixes for GCC2
|
||||
|
||||
---
|
||||
src/lib-master/master-service-ssl-settings.c | 9 ++++-----
|
||||
src/lib-storage/list/mailbox-list-index-backend.c | 4 ++--
|
||||
src/lib-test/test-common.c | 2 +-
|
||||
src/lib/test-data-stack.c | 2 +-
|
||||
src/plugins/stats/stats-plugin.c | 2 ++
|
||||
5 files changed, 10 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/src/lib-master/master-service-ssl-settings.c b/src/lib-master/master-service-ssl-settings.c
|
||||
index c9127c7..9d76db5 100644
|
||||
--- a/src/lib-master/master-service-ssl-settings.c
|
||||
+++ b/src/lib-master/master-service-ssl-settings.c
|
||||
@@ -72,6 +72,8 @@ master_service_ssl_settings_check(void *_set, pool_t pool ATTR_UNUSED,
|
||||
const char **error_r)
|
||||
{
|
||||
struct master_service_ssl_settings *set = _set;
|
||||
+ const char **opts = t_strsplit_spaces(set->ssl_options, ", ");
|
||||
+ const char *opt;
|
||||
|
||||
if (strcmp(set->ssl, "no") == 0) {
|
||||
/* disabled */
|
||||
@@ -96,18 +98,15 @@ master_service_ssl_settings_check(void *_set, pool_t pool ATTR_UNUSED,
|
||||
return FALSE;
|
||||
}
|
||||
#endif
|
||||
+
|
||||
if (set->ssl_verify_client_cert && *set->ssl_ca == '\0') {
|
||||
*error_r = "ssl_verify_client_cert set, but ssl_ca not";
|
||||
return FALSE;
|
||||
}
|
||||
-
|
||||
- /* Now explode the ssl_options string into individual flags */
|
||||
- /* First set them all to defaults */
|
||||
+
|
||||
set->parsed_opts.compression = TRUE;
|
||||
|
||||
/* Then modify anything specified in the string */
|
||||
- const char **opts = t_strsplit_spaces(set->ssl_options, ", ");
|
||||
- const char *opt;
|
||||
while ((opt = *opts++) != NULL) {
|
||||
if (strcasecmp(opt, "no_compression") == 0) {
|
||||
set->parsed_opts.compression = FALSE;
|
||||
diff --git a/src/lib-storage/list/mailbox-list-index-backend.c b/src/lib-storage/list/mailbox-list-index-backend.c
|
||||
index d0ef630..98a55e1 100644
|
||||
--- a/src/lib-storage/list/mailbox-list-index-backend.c
|
||||
+++ b/src/lib-storage/list/mailbox-list-index-backend.c
|
||||
@@ -327,6 +327,8 @@ index_list_mailbox_create(struct mailbox *box,
|
||||
struct mailbox_update new_update;
|
||||
enum mailbox_existence existence;
|
||||
int ret;
|
||||
+ const char *old_name;
|
||||
+ guid_128_t old_guid;
|
||||
|
||||
/* first do a quick check that it doesn't exist */
|
||||
if ((ret = index_list_node_exists(list, box->name, &existence)) < 0) {
|
||||
@@ -354,8 +356,6 @@ index_list_mailbox_create(struct mailbox *box,
|
||||
so use a bit kludgy create_mailbox_* variables during the
|
||||
creation to return the path. we'll also support recursively
|
||||
creating more mailboxes in here. */
|
||||
- const char *old_name;
|
||||
- guid_128_t old_guid;
|
||||
|
||||
old_name = list->create_mailbox_name;
|
||||
guid_128_copy(old_guid, list->create_mailbox_guid);
|
||||
diff --git a/src/lib-test/test-common.c b/src/lib-test/test-common.c
|
||||
index ad1bade..2ccd83e 100644
|
||||
--- a/src/lib-test/test-common.c
|
||||
+++ b/src/lib-test/test-common.c
|
||||
@@ -312,9 +312,9 @@ static void run_one_fatal(enum fatal_test_state (*fatal_function)(int))
|
||||
static int index = 0;
|
||||
for (;;) {
|
||||
volatile int jumped = setjmp(fatal_jmpbuf);
|
||||
+ expecting_fatal = TRUE;
|
||||
if (jumped == 0) {
|
||||
/* normal flow */
|
||||
- expecting_fatal = TRUE;
|
||||
enum fatal_test_state ret = fatal_function(index);
|
||||
expecting_fatal = FALSE;
|
||||
if (ret == FATAL_TEST_FINISHED) {
|
||||
diff --git a/src/lib/test-data-stack.c b/src/lib/test-data-stack.c
|
||||
index e038a5d..ab5ce3d 100644
|
||||
--- a/src/lib/test-data-stack.c
|
||||
+++ b/src/lib/test-data-stack.c
|
||||
@@ -100,8 +100,8 @@ static void test_ds_recurse(int depth, int number, size_t size)
|
||||
t_buffer_alloc_type(char *, number);
|
||||
|
||||
for (i = 0; i < number; i++) {
|
||||
- ps[i] = t_malloc(size/2);
|
||||
bool re = t_try_realloc(ps[i], size);
|
||||
+ ps[i] = t_malloc(size/2);
|
||||
test_assert_idx(ps[i] != NULL, i);
|
||||
if (!re) {
|
||||
try_fails++;
|
||||
diff --git a/src/plugins/stats/stats-plugin.c b/src/plugins/stats/stats-plugin.c
|
||||
index df8b447..edd8236 100644
|
||||
--- a/src/plugins/stats/stats-plugin.c
|
||||
+++ b/src/plugins/stats/stats-plugin.c
|
||||
@@ -190,12 +190,14 @@ void mail_stats_get(struct stats_user *suser, struct mail_stats *stats_r)
|
||||
memset(&usage, 0, sizeof(usage));
|
||||
stats_r->user_cpu = usage.ru_utime;
|
||||
stats_r->sys_cpu = usage.ru_stime;
|
||||
+#ifndef __HAIKU__
|
||||
stats_r->min_faults = usage.ru_minflt;
|
||||
stats_r->maj_faults = usage.ru_majflt;
|
||||
stats_r->vol_cs = usage.ru_nvcsw;
|
||||
stats_r->invol_cs = usage.ru_nivcsw;
|
||||
stats_r->disk_input = (unsigned long long)usage.ru_inblock * 512ULL;
|
||||
stats_r->disk_output = (unsigned long long)usage.ru_oublock * 512ULL;
|
||||
+#endif
|
||||
(void)gettimeofday(&stats_r->clock_time, NULL);
|
||||
process_read_io_stats(stats_r);
|
||||
user_trans_stats_get(suser, &stats_r->trans_stats);
|
||||
--
|
||||
1.8.3.4
|
||||
|
||||
Reference in New Issue
Block a user