aboutsummaryrefslogtreecommitdiff
path: root/mail/archiveopteryx
diff options
context:
space:
mode:
authorMark Felder <feld@FreeBSD.org>2014-03-06 21:13:02 +0000
committerMark Felder <feld@FreeBSD.org>2014-03-06 21:13:02 +0000
commitd768f2f3b13720f3ce5c7fcb3cc2a357b9895879 (patch)
tree50d917dd7712adb17daba83c67ef42fdc7666841 /mail/archiveopteryx
parentd28d440f48c3efaba7d4dc9640ac6dc987adc07b (diff)
downloadports-d768f2f3b13720f3ce5c7fcb3cc2a357b9895879.tar.gz
ports-d768f2f3b13720f3ce5c7fcb3cc2a357b9895879.zip
Update to 3.2.0
Support STAGE aox builds with GCC on 8.x and 9.x, clang on 10.0+ Sponsored by: SupraNet Communications, Inc
Notes
Notes: svn path=/head/; revision=347325
Diffstat (limited to 'mail/archiveopteryx')
-rw-r--r--mail/archiveopteryx/Makefile35
-rw-r--r--mail/archiveopteryx/distinfo4
-rw-r--r--mail/archiveopteryx/files/archiveopteryx.in37
-rw-r--r--mail/archiveopteryx/files/patch-Jamfile31
-rw-r--r--mail/archiveopteryx/files/patch-Jamrules11
-rw-r--r--mail/archiveopteryx/files/patch-Jamsettings11
-rw-r--r--mail/archiveopteryx/files/patch-core__md5.cpp15
-rw-r--r--mail/archiveopteryx/files/patch-core_configuration.cpp11
-rw-r--r--mail/archiveopteryx/files/pkg-message.in4
-rw-r--r--mail/archiveopteryx/pkg-plist20
10 files changed, 107 insertions, 72 deletions
diff --git a/mail/archiveopteryx/Makefile b/mail/archiveopteryx/Makefile
index 7b79e0a5078d..8533778701da 100644
--- a/mail/archiveopteryx/Makefile
+++ b/mail/archiveopteryx/Makefile
@@ -2,27 +2,29 @@
# $FreeBSD$
PORTNAME= archiveopteryx
-PORTVERSION= 3.1.3
-PORTREVISION= 3
+PORTVERSION= 3.2.0
CATEGORIES= mail
-MASTER_SITES= http://archiveopteryx.org/download/
+MASTER_SITES= GH
MAINTAINER= feld@FreeBSD.org
COMMENT= Advanced PostgreSQL-based IMAP/POP server
-LICENSE= BSD
-LICENSE_FILE= ${WRKSRC}/bsd.txt
+LICENSE= MIT
BUILD_DEPENDS= jam:${PORTSDIR}/devel/jam
USES= perl5
-USE_BZIP2= yes
USE_PERL5= build
USE_PGSQL= yes
+WANT_PGSQL_VER= 91+
-MAN5= aoxsuper.conf.5 archiveopteryx.conf.5
-MAN8= aox.8 aoximport.8 archiveopteryx.8 deliver.8 installer.8 logd.8 \
- recorder.8 tlsproxy.8
+USE_GITHUB= yes
+GH_ACCOUNT= aox
+GH_PROJECT= aox
+GH_TAGNAME= v3.2.0
+GH_COMMIT= 2a5d127e
+
+WRKSRC= ${WRKDIR}/aox-aox-a55036e
PORTDOCS= COPYING README bsd.txt
@@ -32,25 +34,30 @@ USE_RC_SUBR= ${PORTNAME}
USERS= aox
GROUPS= aox
+PLIST_SUB+= USERS="${USERS}"
+PLIST_SUB+= GROUPS="${GROUPS}"
JAM?= ${LOCALBASE}/bin/jam
-NO_STAGE= yes
.include <bsd.port.pre.mk>
+# force Clang when on FreeBSD 10+
+.if ${OSVERSION} >= 1000000
+JAMARG= "-sCLANG=1"
+.endif
+
post-patch:
@${GREP} -Rl '%%[[:alpha:]]\+%%' ${WRKSRC} |${XARGS} ${REINPLACE_CMD} \
-e 's,%%PREFIX%%,${PREFIX},g'
+ ${REINPLACE_CMD} "s|INSTALLROOT ?= \"\" ;|INSTALLROOT = \"${STAGEDIR}\" ;|" ${WRKSRC}/Jamsettings
do-build:
- @cd ${WRKSRC} && ${JAM}
+ @cd ${WRKSRC} && ${JAM} ${JAMARG}
do-install:
- @cd ${WRKSRC} && ${JAM} install
+ @cd ${WRKSRC} && ${JAM} ${JAMARG} install
post-install:
- ${INSTALL} -d -o root -g wheel -m 700 /var/db/aox/jail
- ${INSTALL} -d -o ${USERS} -g ${GROUPS} /var/db/aox/messages
@${CAT} ${PKGMESSAGE}
.include <bsd.port.post.mk>
diff --git a/mail/archiveopteryx/distinfo b/mail/archiveopteryx/distinfo
index ab49973a7f3c..38bfe9804776 100644
--- a/mail/archiveopteryx/distinfo
+++ b/mail/archiveopteryx/distinfo
@@ -1,2 +1,2 @@
-SHA256 (archiveopteryx-3.1.3.tar.bz2) = b93a918aaa36fa9371c88aa9535187bb4796eb15d5e6b10aca6e42701a3c3c89
-SIZE (archiveopteryx-3.1.3.tar.bz2) = 2593628
+SHA256 (archiveopteryx-3.2.0.tar.gz) = f5389375eb36fdac18e2a5aa2ed730bc26b826905d3d5bf6d352d5d55850e041
+SIZE (archiveopteryx-3.2.0.tar.gz) = 1672140
diff --git a/mail/archiveopteryx/files/archiveopteryx.in b/mail/archiveopteryx/files/archiveopteryx.in
index 55a44d9993f3..818ed40f4a3b 100644
--- a/mail/archiveopteryx/files/archiveopteryx.in
+++ b/mail/archiveopteryx/files/archiveopteryx.in
@@ -17,39 +17,54 @@
name=archiveopteryx
rcvar=archiveopteryx_enable
+
load_rc_config $name
archiveopteryx_enable=${archiveopteryx_enable:-"NO"}
-pidfile=/var/run/aox/${name}.pid
+pidfile=/var/run/${name}.pid
config_file=%%PREFIX%%/etc/archiveopteryx/archiveopteryx.conf
required_files=$config_file
command=%%PREFIX%%/bin/aox
extra_commands=status
-status_cmd="${command} show status"
+status_cmd=${command} show status
start_cmd=do_start
+start_precmd=do_prestart
stop_cmd=do_stop
restart_cmd=do_restart
+do_prestart()
+{
+ if [ ! -d /var/db/aox/jail ] ; then
+ install -d -o root -g wheel -m 700 /var/db/aox/jail
+ fi
+
+ for i in /var/run/aox /var/db/aox/messages /var/db/aox/jail/var/run /var/db/aox/jail/messages ; do
+ if [ ! -d ${i} ] ; then
+ install -d -o aox -g aox ${i} ;
+ fi
+ done
+}
+
do_start()
{
- echo -n "Starting Archiveopteryx: "
- ${command} start
- echo "done."
+ echo -n "Starting Archiveopteryx: "
+ ${command} start
+ echo "done."
}
do_stop()
{
- echo -n "Stopping Archiveopteryx: "
- ${command} stop
- echo "done."
+ echo -n "Stopping Archiveopteryx: "
+ ${command} stop
+ echo "done."
}
do_restart()
{
- echo -n "Restarting Archiveopteryx: "
- ${command} restart
- echo "done."
+ echo -n "Restarting Archiveopteryx: "
+ ${command} restart
+ echo "done."
}
run_rc_command "$1"
diff --git a/mail/archiveopteryx/files/patch-Jamfile b/mail/archiveopteryx/files/patch-Jamfile
index 5dadfb96a5e0..ffece5428ecb 100644
--- a/mail/archiveopteryx/files/patch-Jamfile
+++ b/mail/archiveopteryx/files/patch-Jamfile
@@ -1,46 +1,47 @@
-
$FreeBSD$
---- Jamfile.orig
-+++ Jamfile
-@@ -50,9 +50,9 @@
+--- Jamfile.orig 2013-11-27 03:31:12.000000000 -0600
++++ Jamfile 2013-11-28 11:35:43.262503298 -0600
+@@ -47,10 +47,10 @@
}
-Prepare $(INSTALLROOT)$(JAILDIR) ;
+-Prepare $(INSTALLROOT)$(JAILDIR)/var/run ;
-Prepare $(INSTALLROOT)$(MESSAGEDIR) ;
-Prepare $(INSTALLROOT)$(PIDFILEDIR) ;
-+# Prepare $(INSTALLROOT)$(JAILDIR) ;
-+# Prepare $(INSTALLROOT)$(MESSAGEDIR) ;
-+# Prepare $(INSTALLROOT)$(PIDFILEDIR) ;
++#Prepare $(INSTALLROOT)$(JAILDIR) ;
++#Prepare $(INSTALLROOT)$(JAILDIR)/var/run ;
++#Prepare $(INSTALLROOT)$(MESSAGEDIR) ;
++#Prepare $(INSTALLROOT)$(PIDFILEDIR) ;
Prepare $(INSTALLROOT)$(CONFIGDIR) ;
Prepare $(INSTALLROOT)$(LIBDIR)/contrib ;
if ( $(LOGFILE:D) != "" && $(LOGFILE:D) != "syslog" ) {
-@@ -64,14 +64,14 @@
+@@ -59,14 +59,14 @@
# if we make JAILDIR, we should chmod it so noone can read it:
--MODE on $(INSTALLROOT)$(JAILDIR) = 700 ;
+-MODE on $(INSTALLROOT)$(JAILDIR) = 701 ;
-Chmod $(INSTALLROOT)$(JAILDIR) ;
-+# MODE on $(INSTALLROOT)$(JAILDIR) = 700 ;
-+# Chmod $(INSTALLROOT)$(JAILDIR) ;
++#MODE on $(INSTALLROOT)$(JAILDIR) = 701 ;
++#Chmod $(INSTALLROOT)$(JAILDIR) ;
# if we make MESSAGEDIR, we should chmod it similarly. AOXUSER needs to
# be able to write to it, but we can't chown here, because the user may
# not exist yet.
-MODE on $(INSTALLROOT)$(MESSAGEDIR) = 700 ;
-Chmod $(INSTALLROOT)$(MESSAGEDIR) ;
-+# MODE on $(INSTALLROOT)$(MESSAGEDIR) = 700 ;
-+# Chmod $(INSTALLROOT)$(MESSAGEDIR) ;
++#MODE on $(INSTALLROOT)$(MESSAGEDIR) = 700 ;
++#Chmod $(INSTALLROOT)$(MESSAGEDIR) ;
actions Message {
-@@ -95,7 +95,7 @@
+@@ -90,7 +90,7 @@
EOM
}
-Message install ;
-+# Message install ;
++#Message install ;
if $(BUILDDOC) {
diff --git a/mail/archiveopteryx/files/patch-Jamrules b/mail/archiveopteryx/files/patch-Jamrules
new file mode 100644
index 000000000000..2131e76749c3
--- /dev/null
+++ b/mail/archiveopteryx/files/patch-Jamrules
@@ -0,0 +1,11 @@
+--- ./Jamrules.orig 2014-03-06 13:45:47.495401383 -0600
++++ ./Jamrules 2014-03-06 13:46:02.417400626 -0600
+@@ -35,7 +35,7 @@
+ }
+ else {
+ C++ = g++ ;
+- C++FLAGS += -W -Wall -Wno-unused-result ;
++ C++FLAGS += -W -Wall ;
+ BUILD = build/gcc ;
+ if $(OPTIM) {
+ BUILD = build/gcc$(OPTIM) ;
diff --git a/mail/archiveopteryx/files/patch-Jamsettings b/mail/archiveopteryx/files/patch-Jamsettings
index 19f2cb48471c..f9113684a759 100644
--- a/mail/archiveopteryx/files/patch-Jamsettings
+++ b/mail/archiveopteryx/files/patch-Jamsettings
@@ -1,8 +1,7 @@
-
$FreeBSD$
---- Jamsettings.orig
-+++ Jamsettings
+--- Jamsettings.orig 2012-07-10 08:45:55.000000000 -0500
++++ Jamsettings 2012-12-26 18:19:56.434350066 -0600
@@ -12,7 +12,7 @@
# A convenient prefix used by most directory and file names,.
@@ -12,15 +11,13 @@ $FreeBSD$
# The directory for user and sysadmin tools
#
-@@ -28,32 +28,36 @@
+@@ -28,32 +28,34 @@
# Supporting files
#
-LIBDIR = $(PREFIX)/lib ;
+LIBDIR = $(PREFIX)/libexec/aox ;
+
-+# Supporting files
-+#
+LIBDATADIR = $(PREFIX)/libdata/aox ;
# The startup/shutdown script's directory
@@ -41,7 +38,7 @@ $FreeBSD$
# This is the default message-copy-directory.
#
--MESSAGEDIR = $(PREFIX)/messages ;
+-MESSAGEDIR = $(JAILDIR)/messages ;
+MESSAGEDIR = /var/db/aox/messages ;
# The directory where the configuration file is located.
diff --git a/mail/archiveopteryx/files/patch-core__md5.cpp b/mail/archiveopteryx/files/patch-core__md5.cpp
new file mode 100644
index 000000000000..7cbf813b392a
--- /dev/null
+++ b/mail/archiveopteryx/files/patch-core__md5.cpp
@@ -0,0 +1,15 @@
+--- ./core/md5.cpp.orig 2014-03-06 13:46:23.918398965 -0600
++++ ./core/md5.cpp 2014-03-06 13:46:30.784414914 -0600
+@@ -149,12 +149,9 @@
+ }
+ swapBytes( in, 14 );
+
+-#pragma GCC diagnostic push
+-#pragma GCC diagnostic ignored "-Wstrict-aliasing"
+ /* Append length in bits and transform. */
+ ((uint32 *)in)[14] = bits[0];
+ ((uint32 *)in)[15] = bits[1];
+-#pragma GCC diagnostic pop
+ transform();
+ swapBytes( (char *)buf, 4 );
+
diff --git a/mail/archiveopteryx/files/patch-core_configuration.cpp b/mail/archiveopteryx/files/patch-core_configuration.cpp
deleted file mode 100644
index 5fab17a925b5..000000000000
--- a/mail/archiveopteryx/files/patch-core_configuration.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- core/configuration.cpp.orig 2011-08-10 13:45:01.165003888 -0500
-+++ core/configuration.cpp 2011-08-10 13:45:35.358002044 -0500
-@@ -684,7 +684,7 @@
- in6.sin6_addr.s6_addr[i] = 0;
- ++i;
- }
-- in6.sin6_addr.s6_addr[15] = ntohs( 1 );
-+ in6.sin6_addr.s6_addr[15] = 1;
- in6.sin6_scope_id = 0;
- if ( ::bind( s, (struct sockaddr *)&in6, sizeof( in6 ) ) < 0 ) {
- if ( errno == EADDRINUSE )
diff --git a/mail/archiveopteryx/files/pkg-message.in b/mail/archiveopteryx/files/pkg-message.in
index e2b9cb6a8dcc..c8f21fb325a2 100644
--- a/mail/archiveopteryx/files/pkg-message.in
+++ b/mail/archiveopteryx/files/pkg-message.in
@@ -1,8 +1,8 @@
********************************************************************************
Please install PostgreSQL client/server (databases/postgresqlXX-client
-and databases/postgresqlXX-server) separately. The latest 8.x version
-is recommended but any version newer than 8.1.0 should work.
+and databases/postgresqlXX-server) separately. The latest 9.x version
+is recommended but any version newer than 9.1.0 should work.
To set up the database and generate a configuration file, run
%%PREFIX%%/libexec/aox/installer as root. The new configuration file will be in
diff --git a/mail/archiveopteryx/pkg-plist b/mail/archiveopteryx/pkg-plist
index ef11378e8e32..4675590df747 100644
--- a/mail/archiveopteryx/pkg-plist
+++ b/mail/archiveopteryx/pkg-plist
@@ -1,7 +1,7 @@
bin/aox
+bin/aoxdeliver
bin/aoxexport
bin/aoximport
-bin/deliver
libdata/aox/downgrades
libdata/aox/field-names
libdata/aox/flag-names
@@ -9,6 +9,15 @@ libdata/aox/fts.pg
libdata/aox/schema.pg
libexec/aox/contrib/rrdglue
libexec/aox/installer
+man/man5/aoxsuper.conf.5.gz
+man/man5/archiveopteryx.conf.5.gz
+man/man8/aox.8.gz
+man/man8/aoxdeliver.8.gz
+man/man8/aoximport.8.gz
+man/man8/archiveopteryx.8.gz
+man/man8/installer.8.gz
+man/man8/logd.8.gz
+man/man8/recorder.8.gz
sbin/archiveopteryx
sbin/logd
sbin/recorder
@@ -16,12 +25,3 @@ sbin/recorder
@dirrm libexec/aox
@dirrm libdata/aox
@dirrm %%ETCDIR%%
-@dirrmtry /var/db/aox/jail/messages
-@dirrmtry /var/db/aox/jail/var/run
-@dirrmtry /var/db/aox/jail/var
-@dirrmtry /var/db/aox/jail
-@dirrmtry /var/db/aox/messages
-@dirrmtry /var/db/aox
-@dirrmtry /var/run/aox
-@exec install -d -o root -g wheel -m 700 /var/db/aox/jail
-@exec install -d -o %%USERS%% -g %%GROUPS%% /var/db/aox/messages