mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 12:10:06 +02:00
@@ -6,13 +6,13 @@ 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"
|
||||
COPYRIGHT="2002-2016 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"
|
||||
SOURCE_URI="http://dovecot.org/releases/2.2/dovecot-$portVersion.tar.gz"
|
||||
CHECKSUM_SHA256="71c86891ea8deb5703d3dbbc3ea31ce2cbf7638f1aa395d9e8794d3ff7aebeb7"
|
||||
PATCHES="dovecot-$portVersion.patchset"
|
||||
|
||||
ARCHITECTURES="x86_gcc2 x86 ?x86_64"
|
||||
ARCHITECTURES="!x86_gcc2 x86 x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PROVIDES="
|
||||
@@ -21,27 +21,33 @@ PROVIDES="
|
||||
cmd:doveconf$secondaryArchSuffix = $portVersion
|
||||
cmd:dovecot$secondaryArchSuffix = $portVersion
|
||||
cmd:dsync$secondaryArchSuffix = $portVersion
|
||||
lib:libdovecot$secondaryArchSuffix = $portVersion
|
||||
lib:libdovecot_storage$secondaryArchSuffix = $portVersion
|
||||
lib:libdovecot$secondaryArchSuffix = 0.0.0
|
||||
lib:libdovecot_storage$secondaryArchSuffix = 0.0.0
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libiconv$secondaryArchSuffix
|
||||
lib:libssl$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
lib:libdovecot$secondaryArchSuffix
|
||||
lib:libdovecot_storage$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:libiconv$secondaryArchSuffix
|
||||
devel:libssl$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
devel:liblz4$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:ld
|
||||
cmd:make
|
||||
cmd:find
|
||||
cmd:autoreconf
|
||||
cmd:awk
|
||||
cmd:diff
|
||||
cmd:find
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:gettext
|
||||
cmd:ld$secondaryArchSuffix
|
||||
cmd:libtool$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
"
|
||||
|
||||
GLOBAL_WRITABLE_FILES="
|
||||
@@ -53,7 +59,9 @@ USER_SETTINGS_FILES="
|
||||
|
||||
BUILD()
|
||||
{
|
||||
CFLAGS=-D_BSD_SOURCE runConfigure ./configure --libexecdir=$libDir/libexec
|
||||
autoreconf -fi
|
||||
CFLAGS=-D_BSD_SOURCE runConfigure ./configure \
|
||||
--libexecdir=$libDir/libexec --with-ssl=openssl
|
||||
make
|
||||
}
|
||||
|
||||
@@ -1,120 +0,0 @@
|
||||
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
|
||||
|
||||
133
net-mail/dovecot/patches/dovecot-2.2.24.patchset
Executable file
133
net-mail/dovecot/patches/dovecot-2.2.24.patchset
Executable file
@@ -0,0 +1,133 @@
|
||||
From b58d8af46ef7dc1d79da5460ef1b2f790e9b614e Mon Sep 17 00:00:00 2001
|
||||
From: Jerome Duval <jerome.duval@gmail.com>
|
||||
Date: Fri, 29 Apr 2016 18:25:58 +0000
|
||||
Subject: Haiku patch
|
||||
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index a7be896..96911d8 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -1,3 +1,4 @@
|
||||
+ACLOCAL_AMFLAGS = -I.
|
||||
aclocaldir = $(datadir)/aclocal
|
||||
|
||||
SUBDIRS = \
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 2662d24..dc1effb 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -392,7 +392,7 @@ dnl **
|
||||
dnl ** just some generic stuff...
|
||||
dnl **
|
||||
|
||||
-AC_SEARCH_LIBS(socket, socket)
|
||||
+AC_SEARCH_LIBS(socket, socket network)
|
||||
AC_SEARCH_LIBS(inet_addr, nsl)
|
||||
AC_SEARCH_LIBS(fdatasync, rt, [
|
||||
AC_DEFINE(HAVE_FDATASYNC,, [Define if you have fdatasync()])
|
||||
diff --git a/src/imap-hibernate/imap-client.c b/src/imap-hibernate/imap-client.c
|
||||
index 5c7209e..0110f42 100644
|
||||
--- a/src/imap-hibernate/imap-client.c
|
||||
+++ b/src/imap-hibernate/imap-client.c
|
||||
@@ -117,11 +117,13 @@ imap_client_move_back_send_callback(void *context, struct ostream *output)
|
||||
str_append(str, "\tuserdb_fields=");
|
||||
str_append_tabescaped(str, state->userdb_fields);
|
||||
}
|
||||
+#ifndef __HAIKU__
|
||||
if (major(state->peer_dev) != 0 || minor(state->peer_dev) != 0) {
|
||||
str_printfa(str, "\tpeer_dev_major=%lu\tpeer_dev_minor=%lu",
|
||||
(unsigned long)major(state->peer_dev),
|
||||
(unsigned long)minor(state->peer_dev));
|
||||
}
|
||||
+#endif
|
||||
if (state->peer_ino != 0)
|
||||
str_printfa(str, "\tpeer_ino=%llu", (unsigned long long)state->peer_ino);
|
||||
if (state->state_size > 0) {
|
||||
diff --git a/src/imap-hibernate/imap-hibernate-client.c b/src/imap-hibernate/imap-hibernate-client.c
|
||||
index 9bec027..cfc866b 100644
|
||||
--- a/src/imap-hibernate/imap-hibernate-client.c
|
||||
+++ b/src/imap-hibernate/imap-hibernate-client.c
|
||||
@@ -138,8 +138,10 @@ imap_hibernate_client_parse_input(const char *const *args, pool_t pool,
|
||||
state_r->state_size = state_buf->used;
|
||||
}
|
||||
}
|
||||
+#ifndef __HAIKU__
|
||||
if (peer_dev_major != 0 || peer_dev_minor != 0)
|
||||
state_r->peer_dev = makedev(peer_dev_major, peer_dev_minor);
|
||||
+#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
diff --git a/src/imap/imap-client-hibernate.c b/src/imap/imap-client-hibernate.c
|
||||
index c2704b3..84f5fea 100644
|
||||
--- a/src/imap/imap-client-hibernate.c
|
||||
+++ b/src/imap/imap-client-hibernate.c
|
||||
@@ -51,10 +51,12 @@ static void imap_hibernate_write_cmd(struct client *client, string_t *cmd,
|
||||
str_printfa(cmd, "\tidle_notify_interval=%u",
|
||||
client->set->imap_idle_notify_interval);
|
||||
if (fstat(client->fd_in, &peer_st) == 0) {
|
||||
+#ifndef __HAIKU__
|
||||
str_printfa(cmd, "\tpeer_dev_major=%lu\tpeer_dev_minor=%lu\tpeer_ino=%llu",
|
||||
(unsigned long)major(peer_st.st_dev),
|
||||
(unsigned long)minor(peer_st.st_dev),
|
||||
(unsigned long long)peer_st.st_ino);
|
||||
+#endif
|
||||
}
|
||||
|
||||
if (client->session_id != NULL) {
|
||||
diff --git a/src/imap/imap-master-client.c b/src/imap/imap-master-client.c
|
||||
index d562d1b..37a6445 100644
|
||||
--- a/src/imap/imap-master-client.c
|
||||
+++ b/src/imap/imap-master-client.c
|
||||
@@ -142,10 +142,12 @@ imap_master_client_parse_input(const char *const *args, pool_t pool,
|
||||
master_input_r->state_import_idle_continue = TRUE;
|
||||
}
|
||||
}
|
||||
+#ifndef __HAIKU__
|
||||
if (peer_dev_major != 0 || peer_dev_minor != 0) {
|
||||
master_input_r->peer_dev =
|
||||
makedev(peer_dev_major, peer_dev_minor);
|
||||
}
|
||||
+#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -164,6 +166,7 @@ static int imap_master_client_verify(const struct imap_master_input *master_inpu
|
||||
}
|
||||
if (peer_st.st_ino != master_input->peer_ino ||
|
||||
!CMP_DEV_T(peer_st.st_dev, master_input->peer_dev)) {
|
||||
+#ifndef __HAIKU__
|
||||
*error_r = t_strdup_printf(
|
||||
"BUG: Expected peer device=%lu,%lu inode=%s doesn't match "
|
||||
"client fd's actual device=%lu,%lu inode=%s",
|
||||
@@ -172,6 +175,7 @@ static int imap_master_client_verify(const struct imap_master_input *master_inpu
|
||||
(unsigned long)major(master_input->peer_dev),
|
||||
(unsigned long)minor(master_input->peer_dev),
|
||||
dec2str(master_input->peer_ino));
|
||||
+#endif
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
diff --git a/src/plugins/stats/mail-stats-fill.c b/src/plugins/stats/mail-stats-fill.c
|
||||
index 7c48f6f..a7d2ed4 100644
|
||||
--- a/src/plugins/stats/mail-stats-fill.c
|
||||
+++ b/src/plugins/stats/mail-stats-fill.c
|
||||
@@ -118,12 +118,14 @@ void mail_stats_fill(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);
|
||||
--
|
||||
2.2.2
|
||||
|
||||
Reference in New Issue
Block a user