summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormanu <manu@pkgsrc.org>2014-07-22 08:25:54 +0000
committermanu <manu@pkgsrc.org>2014-07-22 08:25:54 +0000
commit8dd417d943eae8b5e17cefe66a4a8c68e75527d2 (patch)
treec14419787e7db38ef7048e066b24cf3c0fe89d33
parent7818c86d188ab6672c56817b1535e589b9d5c64a (diff)
downloadpkgsrc-8dd417d943eae8b5e17cefe66a4a8c68e75527d2.tar.gz
Gnarwl is a email autoreply/vacation agent, intented to be used on
mailservers, where users may not (nescessarily) have systemaccoounts, but accountinformation is stored within an LDAP database.
-rw-r--r--mail/Makefile3
-rw-r--r--mail/gnarwl/DESCR3
-rw-r--r--mail/gnarwl/MESSAGE11
-rw-r--r--mail/gnarwl/Makefile63
-rw-r--r--mail/gnarwl/PLIST10
-rw-r--r--mail/gnarwl/distinfo10
-rw-r--r--mail/gnarwl/patches/patch-Makefile.in29
-rw-r--r--mail/gnarwl/patches/patch-configure156
-rw-r--r--mail/gnarwl/patches/patch-configure.ac18
-rw-r--r--mail/gnarwl/patches/patch-data_Makefile21
-rw-r--r--mail/gnarwl/patches/patch-doc_Makefile19
11 files changed, 342 insertions, 1 deletions
diff --git a/mail/Makefile b/mail/Makefile
index eae65321177..c8e783a5800 100644
--- a/mail/Makefile
+++ b/mail/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.450 2014/06/11 12:36:16 joerg Exp $
+# $NetBSD: Makefile,v 1.451 2014/07/22 08:29:35 manu Exp $
#
COMMENT= Electronic mail utilities
@@ -101,6 +101,7 @@ SUBDIR+= gld
SUBDIR+= gmime
SUBDIR+= gmime20
SUBDIR+= gmime24
+SUBDIR+= gnarwl
SUBDIR+= gnus
SUBDIR+= greetdelay
SUBDIR+= grepmail
diff --git a/mail/gnarwl/DESCR b/mail/gnarwl/DESCR
new file mode 100644
index 00000000000..1adcee0df94
--- /dev/null
+++ b/mail/gnarwl/DESCR
@@ -0,0 +1,3 @@
+Gnarwl is a email autoreply/vacation agent, intented to be used on
+mailservers, where users may not (nescessarily) have systemaccoounts,
+but accountinformation is stored within an LDAP database.
diff --git a/mail/gnarwl/MESSAGE b/mail/gnarwl/MESSAGE
new file mode 100644
index 00000000000..d6d57e9ea61
--- /dev/null
+++ b/mail/gnarwl/MESSAGE
@@ -0,0 +1,11 @@
+===========================================================================
+$NetBSD: MESSAGE,v 1.1 2014/07/22 08:25:54 manu Exp $
+
+To use gnarwl, first edit ${PKG_SYSCONFDIR}/gnarwl.cfg
+Then add the line below in /etc/mail/aliases and run newaliases
+autoreply: "|LDAPCONF=~gnarwl/ldaprc ${PREFIX}/bin/gnarwl"
+
+Users will need a forward to autoreply. Alternatively, individual users
+may forward to "|LDAPCONF=~gnarwl/ldaprc ${PREFIX}/bin/gnarwl"
+
+===========================================================================
diff --git a/mail/gnarwl/Makefile b/mail/gnarwl/Makefile
new file mode 100644
index 00000000000..e1061bb387e
--- /dev/null
+++ b/mail/gnarwl/Makefile
@@ -0,0 +1,63 @@
+# $NetBSD: Makefile,v 1.1 2014/07/22 08:25:54 manu Exp $
+#
+
+DISTNAME= gnarwl-3.6
+CATEGORIES= mail
+MASTER_SITES= http://www.onyxbits.de/sites/default/files/upload_cck/node/526/
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://www.onyxbits.de/sites/default/files/upload_cck/node/526/
+COMMENT= LDAP based mail autoresponder
+LICENSE= gnu-gpl-v2
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+GNU_CONFIGURE= yes
+USE_TOOLS+= gmake
+
+GNARWL_LIBS= -L${BUILDLINK_PREFIX.openldap}/lib \
+ -W,-lR${BUILDLINK_PREFIX.openldap}/lib \
+ -L${BUILDLINK_PREFIX.gdbm}/lib \
+ -W,-lR${BUILDLINK_PREFIX.gdbm}/lib
+CONFIGURE_ENV+= LDFLAGS=${GNARWL_LIBS:Q}
+CONFIGURE_ARGS+=--with-homedir=${GNARWL_HOME}
+
+GNARWL_USER?= gnarwl
+GNARWL_GROUP?= gnarwl
+GNARWL_HOME?= ${VARBASE}/gnarwl
+BUILD_DEFS+= GNARWL_USER GNARWL_GROUP
+PKG_USERS+= ${GNARWL_USER}:${GNARWL_GROUP}
+PKG_HO%E.gnarwl=${GNARWL_HOME}
+
+GNARWL_MANDIR= ${DESTDIR}${PREFIX}/${PKGMANDIR}
+
+do-install:
+ ${INSTALL_PROGRAM_DIR} ${DESTDIR}${PREFIX}/bin
+ ${INSTALL_PROGRAM_DIR} ${DESTDIR}${PREFIX}/sbin
+ ${INSTALL_DATA_DIR} ${DESTDIR}${EGDIR}
+ ${INSTALL_MAN_DIR} ${GNARWL_MANDIR}/man8
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/gnarwl ${DESTDIR}${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/damnit ${DESTDIR}${PREFIX}/sbin
+ ${INSTALL_DATA} ${WRKSRC}/data/badheaders.txt ${DESTDIR}${EGDIR}
+ ${INSTALL_DATA} ${WRKSRC}/data/blacklist.txt ${DESTDIR}${EGDIR}
+ ${INSTALL_DATA} ${WRKSRC}/data/footer.txt ${DESTDIR}${EGDIR}
+ ${INSTALL_DATA} ${WRKSRC}/data/header.txt ${DESTDIR}${EGDIR}
+ ${INSTALL_DATA} ${WRKSRC}/data/gnarwl.cfg ${DESTDIR}${EGDIR}
+ ${INSTALL_MAN} ${WRKSRC}/doc/damnit.man ${GNARWL_MANDIR}/man8/damnit.8
+ ${INSTALL_MAN} ${WRKSRC}/doc/gnarwl.man ${GNARWL_MANDIR}/man8/gnarwl.8
+
+EGDIR= ${PREFIX}/share/examples/gnarwl
+EGFILES= badheaders.txt blacklist.txt footer.txt header.txt gnarwl.cfg
+
+.for files in ${EGFILES}
+CONF_FILES+= ${EGDIR}/${files} ${PKG_SYSCONFDIR}/${files}
+.endfor
+
+MAKE_DIRS_PERMS+=${GNARWL_HOME} ${GNARWL_USER} ${GNARWL_GROUP} 0750
+SPECIAL_PERMS+=${PREFIX}/bin/gnarwl ${GNARWL_USER} ${GNARWL_GROUP} 04555
+
+.include "../../mk/dlopen.builtin.mk"
+.include "../../databases/openldap-client/buildlink3.mk"
+.include "../../databases/gdbm/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/mail/gnarwl/PLIST b/mail/gnarwl/PLIST
new file mode 100644
index 00000000000..4e1fa6022cb
--- /dev/null
+++ b/mail/gnarwl/PLIST
@@ -0,0 +1,10 @@
+@comment $NetBSD: PLIST,v 1.1 2014/07/22 08:25:54 manu Exp $
+bin/gnarwl
+sbin/damnit
+man/man8/gnarwl.8
+man/man8/damnit.8
+share/examples/gnarwl/badheaders.txt
+share/examples/gnarwl/blacklist.txt
+share/examples/gnarwl/header.txt
+share/examples/gnarwl/footer.txt
+share/examples/gnarwl/gnarwl.cfg
diff --git a/mail/gnarwl/distinfo b/mail/gnarwl/distinfo
new file mode 100644
index 00000000000..5a8156e23d0
--- /dev/null
+++ b/mail/gnarwl/distinfo
@@ -0,0 +1,10 @@
+$NetBSD: distinfo,v 1.1 2014/07/22 08:25:54 manu Exp $
+
+SHA1 (gnarwl-3.6.tgz) = f1c06f176c1782077d01235c5d21b293c2b0ac8b
+RMD160 (gnarwl-3.6.tgz) = c1b60da88d0f2cb5e74073d6b69d636d7e13ca65
+Size (gnarwl-3.6.tgz) = 73111 bytes
+SHA1 (patch-Makefile.in) = e8a1c016e4cc416c2a5d601ac8e4996bfa8110ce
+SHA1 (patch-configure) = 2896e95c6013a4c471f1f8e8fb1fa5b6541db1b8
+SHA1 (patch-configure.ac) = 72f994f187df6f5dde2645d38c1af964afb13c82
+SHA1 (patch-data_Makefile) = 84e846f76a0656f2a46a7a01bd51dc04fb302426
+SHA1 (patch-doc_Makefile) = 2a7a8b2aa81738b3fa8046e62f094001fd313a4f
diff --git a/mail/gnarwl/patches/patch-Makefile.in b/mail/gnarwl/patches/patch-Makefile.in
new file mode 100644
index 00000000000..2846411d8ea
--- /dev/null
+++ b/mail/gnarwl/patches/patch-Makefile.in
@@ -0,0 +1,29 @@
+$NetBSD: patch-Makefile.in,v 1.1 2014/07/22 08:25:54 manu Exp $
+
+Use autoconf to detect libs.
+BSD sed does not like \\ as search separator
+
+--- Makefile.in.orig 2013-01-17 15:25:07.000000000 +0100
++++ Makefile.in 2013-01-17 17:09:40.000000000 +0100
+@@ -9,9 +9,9 @@
+
+ BIN=gnarwl
+ SBIN=damnit
+ MAN_SEC=8
+-VER=$(shell basename `pwd` | sed s\\$(BIN)-\\\\)
++VER=$(shell basename `pwd` | sed "s|$(BIN)-||")
+
+ ##
+ # Path settings (no trailing slashes!)
+ ##
+@@ -39,9 +39,9 @@
+ ##
+
+ CC=@CC@
+ CFLAGS=-DLDAP_DEPRECATED -DBLOCKDIR=\"$(BLOCKDIR)\" -DCFGFILE=\"$(CONFDIR)/gnarwl.cfg\" -DVERSION=\"$(VER)\" -g -Wall -O2 -I..
+-LFLAGS=-lldap -lgdbm -ldl -lresolv
++LFLAGS=@LDFLAGS@ @LIBS@
+
+ ##
+ ## No serviceable parts below
+ ##
diff --git a/mail/gnarwl/patches/patch-configure b/mail/gnarwl/patches/patch-configure
new file mode 100644
index 00000000000..4f95f9f72c9
--- /dev/null
+++ b/mail/gnarwl/patches/patch-configure
@@ -0,0 +1,156 @@
+$NetBSD: patch-configure,v 1.1 2014/07/22 08:25:54 manu Exp $
+
+Use autoconf to detect libs
+
+--- configure.orig 2013-01-17 15:45:31.000000000 +0100
++++ configure 2013-01-17 15:52:32.000000000 +0100
+@@ -2707,8 +2707,149 @@
+
+ fi
+
+
++{ echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
++echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6; }
++if test "${ac_cv_lib_dl_dlopen+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ ac_check_lib_save_LIBS=$LIBS
++LIBS="-ldl $LIBS"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++
++/* Override any GCC internal prototype to avoid an error.
++ Use char because int might match the return type of a GCC
++ builtin and then its argument prototype would still apply. */
++#ifdef __cplusplus
++extern "C"
++#endif
++char dlopen ();
++int
++main ()
++{
++return dlopen ();
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (ac_try="$ac_link"
++case "(($ac_try" in
++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
++ *) ac_try_echo=$ac_try;;
++esac
++eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
++ (eval "$ac_link") 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } && {
++ test -z "$ac_c_werror_flag" ||
++ test ! -s conftest.err
++ } && test -s conftest$ac_exeext &&
++ $as_test_x conftest$ac_exeext; then
++ ac_cv_lib_dl_dlopen=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_cv_lib_dl_dlopen=no
++fi
++
++rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
++ conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++{ echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
++echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6; }
++if test $ac_cv_lib_dl_dlopen = yes; then
++ cat >>confdefs.h <<_ACEOF
++#define HAVE_LIBDL 1
++_ACEOF
++
++ LIBS="-ldl $LIBS"
++
++fi
++
++
++{ echo "$as_me:$LINENO: checking for inet_net_ntop in -lresolv" >&5
++echo $ECHO_N "checking for inet_net_ntop in -lresolv... $ECHO_C" >&6; }
++if test "${ac_cv_lib_resolv_inet_net_ntop+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ ac_check_lib_save_LIBS=$LIBS
++LIBS="-lresolv $LIBS"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++
++/* Override any GCC internal prototype to avoid an error.
++ Use char because int might match the return type of a GCC
++ builtin and then its argument prototype would still apply. */
++#ifdef __cplusplus
++extern "C"
++#endif
++char inet_net_ntop ();
++int
++main ()
++{
++return inet_net_ntop ();
++ ;
++ return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (ac_try="$ac_link"
++case "(($ac_try" in
++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
++ *) ac_try_echo=$ac_try;;
++esac
++eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
++ (eval "$ac_link") 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } && {
++ test -z "$ac_c_werror_flag" ||
++ test ! -s conftest.err
++ } && test -s conftest$ac_exeext &&
++ $as_test_x conftest$ac_exeext; then
++ ac_cv_lib_resolv_inet_net_ntop=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_cv_lib_resolv_inet_net_ntop=no
++fi
++
++rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
++ conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++{ echo "$as_me:$LINENO: result: $ac_cv_lib_resolv_inet_net_ntop" >&5
++echo "${ECHO_T}$ac_cv_lib_resolv_inet_net_ntop" >&6; }
++if test $ac_cv_lib_resolv_inet_net_ntop = yes; then
++ cat >>confdefs.h <<_ACEOF
++#define HAVE_LIBRESOLV 1
++_ACEOF
++
++ LIBS="-lresolv $LIBS"
++
++fi
++
+
+ { echo "$as_me:$LINENO: checking for ldap_init in -lldap" >&5
+ echo $ECHO_N "checking for ldap_init in -lldap... $ECHO_C" >&6; }
+ if test "${ac_cv_lib_ldap_ldap_init+set}" = set; then
diff --git a/mail/gnarwl/patches/patch-configure.ac b/mail/gnarwl/patches/patch-configure.ac
new file mode 100644
index 00000000000..1bf20ca1af8
--- /dev/null
+++ b/mail/gnarwl/patches/patch-configure.ac
@@ -0,0 +1,18 @@
+$NetBSD: patch-configure.ac,v 1.1 2014/07/22 08:25:54 manu Exp $
+
+Use autoconf to detect libs
+
+--- configure.ac.orig 2013-01-17 15:28:30.000000000 +0100
++++ configure.ac 2013-01-17 15:44:44.000000000 +0100
+@@ -23,9 +23,10 @@
+ AC_SUBST(maxline)
+
+
+ AC_CHECK_LIB([gdbm], [gdbm_open])
+-
++AC_CHECK_LIB([dl], [dlopen])
++AC_CHECK_LIB([resolv], [inet_net_ntop])
+ AC_CHECK_LIB([ldap],[ldap_init])
+ AC_CHECK_FUNCS([ldap_set_option])
+
+ AC_CHECK_FUNCS([iconv])
diff --git a/mail/gnarwl/patches/patch-data_Makefile b/mail/gnarwl/patches/patch-data_Makefile
new file mode 100644
index 00000000000..010004e4db3
--- /dev/null
+++ b/mail/gnarwl/patches/patch-data_Makefile
@@ -0,0 +1,21 @@
+$NetBSD: patch-data_Makefile,v 1.1 2014/07/22 08:25:54 manu Exp $
+
+BSD sed does not like \\ as search separator
+
+--- data/Makefile.orig 2013-01-17 16:06:41.000000000 +0100
++++ data/Makefile 2013-01-17 16:06:53.000000000 +0100
+@@ -6,12 +6,12 @@
+ clean:
+ rm -f $(BIN)-$(VER).spec gnarwl.cfg
+
+ config:
+- @sed "s\\_HOMEDIR_\\$(HOMEDIR)\\g ; s\\_VER_\\$(VER)\\g ; s\\_MAN_SEC_\\$(MAN_SEC)\\g" < config.tmpl > gnarwl.cfg
++ @sed "s|_HOMEDIR_|$(HOMEDIR)|g ; s|_VER_|$(VER)|g ; s|_MAN_SEC_|$(MAN_SEC)|g" < config.tmpl > gnarwl.cfg
+
+ spec:
+- @sed "s\\_BIN_\\$(BIN)\\g ; s\\_VER_\\$(VER)\\g; s\\_SBIN_\\$(SBIN)\\g; s\\_SEC_\\$(MAN_SEC)\\g" < spec.tmpl > $(BIN)-$(VER).spec
++ @sed "s|_BIN_|$(BIN)|g ; s|_VER_|$(VER)|g; s|_SBIN_|$(SBIN)|g; s|_SEC_|$(MAN_SEC)|g" < spec.tmpl > $(BIN)-$(VER).spec
+
+ install:
+ mkdir -m 755 -p $(HOMEDIR)/block $(HOMEDIR)/bin $(CONFDIR)
+ echo \|$(BINDIR)/$(BIN) > $(HOMEDIR)/.forward
diff --git a/mail/gnarwl/patches/patch-doc_Makefile b/mail/gnarwl/patches/patch-doc_Makefile
new file mode 100644
index 00000000000..f6fd0cc6001
--- /dev/null
+++ b/mail/gnarwl/patches/patch-doc_Makefile
@@ -0,0 +1,19 @@
+$NetBSD: patch-doc_Makefile,v 1.1 2014/07/22 08:25:54 manu Exp $
+
+BSD sed does not like \\ as search separator
+
+--- doc/Makefile.orig 2013-01-17 16:02:38.000000000 +0100
++++ doc/Makefile 2013-01-17 16:04:07.000000000 +0100
+@@ -7,10 +7,10 @@
+ rm -f *~ $(BIN).$(MAN_SEC)* $(SBIN).$(MAN_SEC)* DEADJOE
+
+ manpage:
+ @echo Generating manpage...
+- @sed "s\\_CONFDIR_\\$(CONFDIR)\\g ; s\\_HOMEDIR_\\$(HOMEDIR)\\g ; s\\_MANSEC_\\$(MAN_SEC)\\g" < $(BIN).man | groff -man -Tascii > $(BIN).$(MAN_SEC)
+- @sed "s\\_CONFDIR_\\$(CONFDIR)\\g ; s\\_HOMEDIR_\\$(HOMEDIR)\\g ; s\\_MANSEC_\\$(MAN_SEC)\\g" < $(SBIN).man | groff -man -Tascii > $(SBIN).$(MAN_SEC)
++ @sed "s|_CONFDIR_|$(CONFDIR)|g ; s|_HOMEDIR_|$(HOMEDIR)|g ; s|_MANSEC_|$(MAN_SEC)|g" < $(BIN).man | groff -man -Tascii > $(BIN).$(MAN_SEC)
++ @sed "s|_CONFDIR_|$(CONFDIR)|g ; s|_HOMEDIR_|$(HOMEDIR)|g ; s|_MANSEC_|$(MAN_SEC)|g" < $(SBIN).man | groff -man -Tascii > $(SBIN).$(MAN_SEC)
+
+
+ install:
+ mkdir -m 755 -p $(DOCDIR) $(MANDIR)/man$(MAN_SEC)