diff options
author | manu <manu@pkgsrc.org> | 2014-07-22 08:25:54 +0000 |
---|---|---|
committer | manu <manu@pkgsrc.org> | 2014-07-22 08:25:54 +0000 |
commit | 8dd417d943eae8b5e17cefe66a4a8c68e75527d2 (patch) | |
tree | c14419787e7db38ef7048e066b24cf3c0fe89d33 | |
parent | 7818c86d188ab6672c56817b1535e589b9d5c64a (diff) | |
download | pkgsrc-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/Makefile | 3 | ||||
-rw-r--r-- | mail/gnarwl/DESCR | 3 | ||||
-rw-r--r-- | mail/gnarwl/MESSAGE | 11 | ||||
-rw-r--r-- | mail/gnarwl/Makefile | 63 | ||||
-rw-r--r-- | mail/gnarwl/PLIST | 10 | ||||
-rw-r--r-- | mail/gnarwl/distinfo | 10 | ||||
-rw-r--r-- | mail/gnarwl/patches/patch-Makefile.in | 29 | ||||
-rw-r--r-- | mail/gnarwl/patches/patch-configure | 156 | ||||
-rw-r--r-- | mail/gnarwl/patches/patch-configure.ac | 18 | ||||
-rw-r--r-- | mail/gnarwl/patches/patch-data_Makefile | 21 | ||||
-rw-r--r-- | mail/gnarwl/patches/patch-doc_Makefile | 19 |
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) |