diff options
author | Nathan Phillip Brink <binki@gentoo.org> | 2012-01-03 05:43:07 +0000 |
---|---|---|
committer | Nathan Phillip Brink <binki@gentoo.org> | 2012-01-03 05:43:07 +0000 |
commit | 0360d17fe95ff1cdc255064fdc55660ed77437d4 (patch) | |
tree | 8b7c47daa952f084bd522158c5ee299f4c18297d /net-irc | |
parent | Bump to scrollz-2.2.1. (diff) | |
download | historical-0360d17fe95ff1cdc255064fdc55660ed77437d4.tar.gz historical-0360d17fe95ff1cdc255064fdc55660ed77437d4.tar.bz2 historical-0360d17fe95ff1cdc255064fdc55660ed77437d4.zip |
Add patch removing automagic dependence on sys-libs/cracklib, fixes bug #397401 reported by kensington.
Package-Manager: portage-2.2.0_alpha82-r1/cvs/Linux x86_64
Diffstat (limited to 'net-irc')
8 files changed, 304 insertions, 25 deletions
diff --git a/net-irc/atheme-services/ChangeLog b/net-irc/atheme-services/ChangeLog index de60c3c95e81..b5d75284e4d4 100644 --- a/net-irc/atheme-services/ChangeLog +++ b/net-irc/atheme-services/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for net-irc/atheme-services -# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-irc/atheme-services/ChangeLog,v 1.25 2011/12/30 22:47:37 binki Exp $ +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-irc/atheme-services/ChangeLog,v 1.26 2012/01/03 05:43:07 binki Exp $ + +*atheme-services-6.0.9-r1 (03 Jan 2012) + + 03 Jan 2012; Nathan Phillip Brink <binki@gentoo.org> + atheme-services-6.0.9.ebuild, +atheme-services-6.0.9-r1.ebuild, + +files/atheme-services-6.0.9-cracklib-automagic.patch, + atheme-services-7.0.0_alpha9.ebuild, + +files/atheme-services-7.0.0_alpha11-cracklib-automagic.patch, metadata.xml: + Add patch removing automagic dependence on sys-libs/cracklib, fixes bug + #397401 reported by kensington. 30 Dec 2011; Nathan Phillip Brink <binki@gentoo.org> -atheme-services-6.0.8-r2.ebuild: diff --git a/net-irc/atheme-services/Manifest b/net-irc/atheme-services/Manifest index 1b466e80a142..301ea2589160 100644 --- a/net-irc/atheme-services/Manifest +++ b/net-irc/atheme-services/Manifest @@ -2,28 +2,31 @@ Hash: SHA512 AUX atheme-services-6.0.8-configure-disable.patch 4067 RMD160 83b845addd7af78d10a4b8447e9ec3c88f7efa17 SHA1 a893c2fab189495b31525332a8c4c9ffdcbd3aaf SHA256 861b9b458e6e2122aca923425dec407a5d2a13fecde613544c5aafb2cb161595 +AUX atheme-services-6.0.9-cracklib-automagic.patch 2806 RMD160 e2915f4fab7aea2d4a512ce462e8bf7fda08cb80 SHA1 8c1f28b6446e66355171c0e9badcc6424144d42a SHA256 810509891a461b2d6701c8f48519d70436cba698bf0ab098ab02cef13f0a2619 +AUX atheme-services-7.0.0_alpha11-cracklib-automagic.patch 2906 RMD160 eed1183188ddc3f94c9606e131bbd14d7f17b971 SHA1 fc65b6b2b699bdf644e900b1fe700186b796597d SHA256 b053939d5c813e790eb2d8ffb7a95430d3a38b0c09c9a6c7776b50e4215c9763 AUX atheme-services-7.0.0_alpha9-pkg-config.patch 515 RMD160 aeed772eb3f741f14b405aff145235b8ab186978 SHA1 38abf5c9ac33f5a2e25d96f191f9c2bbcbe91767 SHA256 6f43dceda07461600962e11b69d0e62e01d878f93126d98b09bfd48d2c790c7e AUX atheme-services.initd 975 RMD160 83486b35d148bab6f4b611d62fb18da63846a966 SHA1 bedd35acca25fad59ecd067709cfe85c0ba9798d SHA256 0cdcfb95d2399e132364127429618b44ce1830a61af0a5dc5bce1179b3810f75 DIST atheme-services-6.0.9.tar.bz2 858804 RMD160 57ed736bb1eaedb0db68e63266ee8c98674f0542 SHA1 1b463ec808d4b92d0047319cdc1e4223a9ca9481 SHA256 058616395d6d5477ac4e63fc1daa88dffb62c9cc5a9239dae5dbe54508b6aaf9 DIST atheme-services-7.0.0-alpha9.tar.bz2 1055265 RMD160 d86413c63c79579247904965fffa7c2b1e76d688 SHA1 28168d0b4ab36840dd3522283dca2aebbb9a56d3 SHA256 564add960be744d637573d69ee12351555696048e69505af596d767f55b0b3b6 -EBUILD atheme-services-6.0.9.ebuild 2706 RMD160 67c3cf7500f46a249f6727ddfe17302fde55b2b8 SHA1 ea39fd2dbc3468612a6353a56d39a923a5a4d849 SHA256 f952d0a1d14360ebf6d2a5440cf5b4589863e4293284e76fa165a0dc3257e635 -EBUILD atheme-services-7.0.0_alpha9.ebuild 3007 RMD160 d524e8756688dc9fa3a83dbb3a21c39cf14496e6 SHA1 c594321345a4e2fbaccc954fc509b99c95720e1c SHA256 7a7f7b4f639363b742b95a1fd15e18ffbda29e535a0ea07e4ceda194444e3695 -MISC ChangeLog 5581 RMD160 dd5d7398f9bf4895ad69c9444c179b19bd53b4f0 SHA1 190d915d150cd887f2450881cac0f932a35db7df SHA256 74f525f540952c4f83d418a7a5790bd79d273020288b3bed5c30ab990686e012 -MISC metadata.xml 666 RMD160 6283486aa951422ac01016f439af0e4446c9827e SHA1 3b684ca6549b1a2fa8a0b788841fad944703d8d1 SHA256 1d7b369f7c9cddbc5541736c855be11aa495e1006207e32d0fbbbc99366bd9a7 +EBUILD atheme-services-6.0.9-r1.ebuild 2850 RMD160 4120941bf1edbceaca81d01c032ab2ccd8c8ee15 SHA1 aa0e7c089106fdf5bd5244ca00080660bae02c41 SHA256 ecf9c49af017a8ab5240035a012fe01a7055a2ddcfa6d8f5ecb7b4e7e18cdb6a +EBUILD atheme-services-6.0.9.ebuild 2724 RMD160 110996365b9e7b1589ae4833c3df458017927972 SHA1 17d6571d6c02a8b4ddea574427a3eb58549f7efc SHA256 9953174a04effcbc3e7973305d9f9a3183265e7f82f46065d11d8ac42ddd4baa +EBUILD atheme-services-7.0.0_alpha9.ebuild 3141 RMD160 e0074843ee3d068fce096df2df89b782f15c8089 SHA1 33a73a02dec6a5469dc4e49c2c7e6960467d608a SHA256 2fa3ad7a31ae50385802e35aa209947a9a3ad86006a14577a8bddff510bbfb12 +MISC ChangeLog 6027 RMD160 75a9f490a4a120aa1728a290e8978ec927f738b3 SHA1 ef7af53fe91b23c74b2e52c611971f0d498e53d7 SHA256 cef999fcb909e1c8d96a11202731bb78f84e8d6e983ceb383cb5cc1d3709940b +MISC metadata.xml 771 RMD160 8f88469eba3ccc79dc15479d31d5653ea8e3e035 SHA1 e77e3cdf839fbdd77066acaf157e7c07184975c0 SHA256 620366269b5b3d1e0c61895827ac857e9dc643544a04a80cbc94fee2ff0c0da5 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (GNU/Linux) -iQIcBAEBCgAGBQJO/j8HAAoJEHQ6UuhrqBBQAgwQAJUj9ZisqPaBYGmuj39m4UOj -Uk3/35K4/Uiq9w3ALDu0cqG4sjBkAcyZ+KvZ3m29dqUIR/Yb8nZ4XkGYKXAPF6aA -yMrRuyEGUTrsUPRty4a7tAUsg/ir2OR2DqyP7KU8PgT0kXP/JFcgSOBN+pwl1eAI -UZx1vEVhVGWP43+07UFF5DcXxf/NjYPQVkJ9ZBuL40O4kFsN5+P3Rhhd3ra7sxzm -/1Rks5uSzcRkZVCt0jCPTulOThH/sWUBr2SUYss/+xc+vHM35XNTh6z3x40MwDy8 -TpxLOASj2Lz/ewmXnCLDdb2lLpUz5Lw8Ayc50fHSXYm/G77p2VFoWugjbqVSqZfG -VQerD4/7dJOqJDQhvwTsofMnOuQaHXwmtwlIQ/Sv41Av+TRCv8ZxME7U/ko4HEZp -IZhrLAzsHsGw0isdM3emaJ+gF9hTGpNMNL/3iNtV+lkAaprZZUkCv4aHX35mupuT -hEwEx0VLixkKM38ZZZ+xNE762pZrKTsgVADxv1RbT4PmkqNOylYcb4SwAKShY3pW -HnBkBruDmciqmuU9hgS1zH2hXAderjhFXvgCRUSusDGHrH6+uJpNy5r4h2KR/HnK -og9BEoLoCJaM+iz7qT7MX2MbVYNn27qAjoviUYpN8hn2nMIHnRI6BmoOU0CMSFbM -m5XpCDxFlD7NLhW8dgzs -=gE9s +iQIcBAEBCgAGBQJPApTOAAoJEHQ6UuhrqBBQpYIP/0NdMiA57alkJdGgQrf8KpO+ +t3KYQgXbZewPDMUx3MEX3Xq3MWgkbtW1jTD7rPx7HJOHmh7quAppmZCtjIlEKXA/ +VPaerUMNrCXE472WO2/PAAM8HxV0Hw29ErLt7O9nza4BYJ+E2vmcggIECiTTCgGn +LuuQ/l2rKumLZuEMOQR2cswdgLFM6dyZ14m8J5wD6UTYAjVZOKtWan/TbomvGtu2 +xpoq+VdGwip3sgSeYKO92DW8miZY8voWKVs8HHo4APASUL3FHVB5B7qmzxEtgzLD +0lHBxwe4p221ILLKNqlCoB41Otzt4/e86+hFucFpzvDpesFzXAheKoc3GXkpaOKS +088RXUKZVhZaFffjLTMLAR1Zvc1SIzd3bfjV5jCVpoH/MTIegtiSy0PBF4Be8f0l +GBlE9N+HhphkB/6V9EGoC+s2Q/SesLJ71zYnoPeJ5zj5bBLQsbsbLusUCHGMrbt1 +M4V9erwaTrBs7/Ft2Am3cKzDRBaHFGwXYXurhSaObaXJNvU1cQNfIZakU+WEepqi +j8GYI0VzQ76/RO7+ZR50zK0O/mRhtsp1XvcPHFmktZAi6ZZ3t+Dbid9hMMSpvlKd +JTo+7Ni7+DIiCiqhsj2ki8WH31fZauMpbdi7jGsfj6SuRkZtae25fmTtkYAPKkgA +OeKw1ljwV3s1oGb9rRCh +=x1k+ -----END PGP SIGNATURE----- diff --git a/net-irc/atheme-services/atheme-services-6.0.9-r1.ebuild b/net-irc/atheme-services/atheme-services-6.0.9-r1.ebuild new file mode 100644 index 000000000000..9d1399e5bd5b --- /dev/null +++ b/net-irc/atheme-services/atheme-services-6.0.9-r1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-irc/atheme-services/atheme-services-6.0.9-r1.ebuild,v 1.1 2012/01/03 05:43:07 binki Exp $ + +EAPI=4 + +inherit autotools eutils flag-o-matic perl-module prefix + +DESCRIPTION="A portable and secure set of open-source and modular IRC services" +HOMEPAGE="http://atheme.net/" +SRC_URI="http://atheme.net/downloads/${P}.tar.bz2" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~sparc ~x86 ~x86-fbsd ~amd64-linux" +IUSE="cracklib largenet ldap nls +pcre perl profile ssl" + +RDEPEND="dev-libs/libmowgli + cracklib? ( sys-libs/cracklib ) + ldap? ( net-nds/openldap ) + nls? ( sys-devel/gettext ) + pcre? ( dev-libs/libpcre ) + ssl? ( dev-libs/openssl )" +DEPEND="${RDEPEND} + dev-util/pkgconfig" + +pkg_setup() { + # the dependency calculation puts all of the .c files together and + # overwhelms cc1 with this flag :-( + filter-flags -combine + + if use profile; then + # bug #371119 + ewarn "USE=\"profile\" is incompatible with the hardened profile's -pie flag." + ewarn "Disabling PIE. Please ignore any warning messages about -nopie being invalid." + append-flags -nopie + fi + + enewgroup ${PN} + enewuser ${PN} -1 -1 /var/lib/atheme ${PN} +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-6.0.8-configure-disable.patch + epatch "${FILESDIR}"/${P}-cracklib-automagic.patch + eautoconf + + # fix docdir + sed -i -e 's/\(^DOCDIR.*=.\)@DOCDIR@/\1@docdir@/' extra.mk.in || die + + # basic logging config directive fix + sed -i -e '/^logfile/s;var/\(.*\.log\);'"${EPREFIX}"'/var/log/atheme/\1;g' dist/* || die + + # QA against bundled libs + rm -rf libmowgli || die + + # Get useful information into build.log + sed -i -e '/^\.SILENT:$/d' buildsys.mk.in || die +} + +src_configure() { + econf \ + --sysconfdir="${EPREFIX}"/etc/${PN} \ + --docdir="${EPREFIX}"/usr/share/doc/${PF} \ + --localstatedir="${EPREFIX}"/var \ + --enable-fhs-paths \ + --enable-contrib \ + $(use_enable largenet large-net) \ + $(use_with cracklib) \ + $(use_with ldap) \ + $(use_with nls) \ + $(use_enable profile) \ + $(use_with pcre) \ + $(use_enable ssl) +} + +src_install() { + emake DESTDIR="${D}" install + + insinto /etc/${PN} + for conf in dist/*.example; do + # The .cron file isn't meant to live in /etc/${PN}, so only + # install a .example version. + [[ ${conf} == *cron* ]] && continue + + newins ${conf} $(basename ${conf} .example) + done + + fowners -R 0:${PN} /etc/${PN} + keepdir /var/{lib,log}/atheme + fowners ${PN}:${PN} /var/{lib,log,run}/atheme + fperms -R go-w,o-rx /etc/${PN} + fperms 750 /etc/${PN} /var/{lib,log,run}/atheme + + newinitd "${FILESDIR}"/${PN}.initd ${PN} + + # contributed scripts and such: + insinto /usr/share/doc/${PF}/contrib + doins contrib/*.{c,pl,php,py,rb} + + if use perl; then + perlinfo + insinto "${VENDOR_LIB#${EPREFIX}}" + doins -r contrib/Atheme{,.pm} + fi +} diff --git a/net-irc/atheme-services/atheme-services-6.0.9.ebuild b/net-irc/atheme-services/atheme-services-6.0.9.ebuild index 541e8fd8be8b..e1283ebf7128 100644 --- a/net-irc/atheme-services/atheme-services-6.0.9.ebuild +++ b/net-irc/atheme-services/atheme-services-6.0.9.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-irc/atheme-services/atheme-services-6.0.9.ebuild,v 1.3 2011/12/26 14:42:27 maekke Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-irc/atheme-services/atheme-services-6.0.9.ebuild,v 1.4 2012/01/03 05:43:07 binki Exp $ EAPI=4 @@ -16,6 +16,7 @@ KEYWORDS="amd64 ~sparc x86 ~x86-fbsd ~amd64-linux" IUSE="largenet ldap nls +pcre perl profile ssl" RDEPEND="dev-libs/libmowgli + sys-libs/cracklib ldap? ( net-nds/openldap ) nls? ( sys-devel/gettext ) pcre? ( dev-libs/libpcre ) diff --git a/net-irc/atheme-services/atheme-services-7.0.0_alpha9.ebuild b/net-irc/atheme-services/atheme-services-7.0.0_alpha9.ebuild index f23574fa712c..73acd601e59c 100644 --- a/net-irc/atheme-services/atheme-services-7.0.0_alpha9.ebuild +++ b/net-irc/atheme-services/atheme-services-7.0.0_alpha9.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-irc/atheme-services/atheme-services-7.0.0_alpha9.ebuild,v 1.2 2011/12/30 22:42:37 binki Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-irc/atheme-services/atheme-services-7.0.0_alpha9.ebuild,v 1.3 2012/01/03 05:43:07 binki Exp $ EAPI=4 @@ -15,9 +15,10 @@ SRC_URI="http://atheme.net/downloads/${MY_P}.tar.bz2" LICENSE="BSD" SLOT="0" KEYWORDS="~amd64 ~sparc ~x86 ~x86-fbsd ~amd64-linux" -IUSE="largenet ldap nls +pcre perl profile ssl" +IUSE="cracklib largenet ldap nls +pcre perl profile ssl" RDEPEND=">=dev-libs/libmowgli-0.9.95 + cracklib? ( sys-libs/cracklib ) ldap? ( net-nds/openldap ) nls? ( sys-devel/gettext ) perl? ( dev-lang/perl ) @@ -48,6 +49,7 @@ src_prepare() { # The first PKG_CHECK_MODULES call is conditional, causing # PKG_PROG_PKG_CONFIG expansion to fail. epatch "${FILESDIR}"/${P}-pkg-config.patch + epatch "${FILESDIR}"/${PN}-7.0.0_alpha11-cracklib-automagic.patch eautoconf # fix docdir @@ -73,6 +75,7 @@ src_configure() { --disable-warnings \ --enable-contrib \ $(use_enable largenet large-net) \ + $(use_with cracklib) \ $(use_with ldap) \ $(use_with nls) \ $(use_enable profile) \ diff --git a/net-irc/atheme-services/files/atheme-services-6.0.9-cracklib-automagic.patch b/net-irc/atheme-services/files/atheme-services-6.0.9-cracklib-automagic.patch new file mode 100644 index 000000000000..07b523e07cb8 --- /dev/null +++ b/net-irc/atheme-services/files/atheme-services-6.0.9-cracklib-automagic.patch @@ -0,0 +1,77 @@ +From 79f41f4e7647335beca977d852c6c83abebcc2bd Mon Sep 17 00:00:00 2001 +From: Nathan Phillip Brink <binki@gentoo.org> +Date: Tue, 3 Jan 2012 01:47:31 +0000 +Subject: [PATCH] Add --with-cracklib/--without-cracklib ./configure options and only pass -lcrack when compiling nickserv/cracklib module. + +Being able to disable cracklib at ./configure time fixes an automagic +dependency (https://bugs.gentoo.org/397401 with original patch from +kensington). Only linking against cracklib when necessary hopefully +makes compilation and loading of modules slightly more efficient. +--- + configure | 27 ++++++++++++++++++++++++++- + configure.ac | 16 +++++++++++++++- + extra.mk.in | 1 + + modules/nickserv/Makefile | 10 ++++++++++ + 4 files changed, 52 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 63540aa..ee8d554 100755 +diff --git a/configure.ac b/configure.ac +index 83c4aeb..a6d8b6e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -95,8 +95,22 @@ AC_SEARCH_LIBS(crypt, crypt, [POSIX_CRYPTC="posix.c"]) + AC_SUBST(POSIX_CRYPTC) + + CRACKLIB_C="" +-AC_SEARCH_LIBS(FascistCheck, crack, [CRACKLIB_C="cracklib.c"]) ++CRACKLIB_LIBS="" ++AC_ARG_WITH([cracklib], ++ [AS_HELP_STRING([--with-cracklib], [Compile cracklib nickserv submodule for checking password strength.])], ++ [], ++ [with_cracklib="auto"]) ++AS_IF([test "x$with_cracklib" != "xno"], ++ [LIBS_save="$LIBS" ++ AC_SEARCH_LIBS([FascistCheck], [crack], ++ [CRACKLIB_C="cracklib.c" ++ AS_IF([test "x$ac_cv_search_FascistCheck" != "xnone required"], ++ [CRACKLIB_LIBS="$ac_cv_search_FascistCheck"])], ++ [AS_IF([test "x$with_cracklib" != "xauto"], ++ [AC_MSG_ERROR([--with-cracklib was specified but cracklib could not be found.])])]) ++ LIBS="$LIBS_save"]) + AC_SUBST(CRACKLIB_C) ++AC_SUBST([CRACKLIB_LIBS]) + + AC_ARG_WITH([ldap], + [AS_HELP_STRING([--without-ldap],[Disable building ldap auth module.])], +diff --git a/extra.mk.in b/extra.mk.in +index cc6af70..2d01345 100644 +--- a/extra.mk.in ++++ b/extra.mk.in +@@ -123,4 +123,5 @@ EGREP ?= @EGREP@ + VERSION ?= @VERSION@ + prefix ?= @prefix@ + CRACKLIB_C ?= @CRACKLIB_C@ ++CRACKLIB_LIBS ?= @CRACKLIB_LIBS@ + CONTRIB_ENABLE ?= @CONTRIB_ENABLE@ +diff --git a/modules/nickserv/Makefile b/modules/nickserv/Makefile +index 060f708..d2f7c4e 100644 +--- a/modules/nickserv/Makefile ++++ b/modules/nickserv/Makefile +@@ -68,3 +68,13 @@ BASE_SRCS = \ + SRCS = ${BASE_SRCS} ${EXTRA_SRCS} + + CPPFLAGS += -I../../include ++ ++# Custom rule for cracklib.c which is the only module to ever need ++# -lcrack. ++cracklib$(PLUGIN_SUFFIX): cracklib.c ++ ${COMPILE_STATUS} ++ if ${CC} -MMD -MP ${CFLAGS} ${PLUGIN_CFLAGS} ${CPPFLAGS} ${PLUGIN_LDFLAGS} ${LDFLAGS} -o $@ ${CRACKLIB_C} ${LIBS} ${CRACKLIB_LIBS}; then \ ++ ${COMPILE_OK}; \ ++ else \ ++ ${COMPILE_FAILED}; \ ++ fi +-- +1.7.3.4 + diff --git a/net-irc/atheme-services/files/atheme-services-7.0.0_alpha11-cracklib-automagic.patch b/net-irc/atheme-services/files/atheme-services-7.0.0_alpha11-cracklib-automagic.patch new file mode 100644 index 000000000000..676acae15a47 --- /dev/null +++ b/net-irc/atheme-services/files/atheme-services-7.0.0_alpha11-cracklib-automagic.patch @@ -0,0 +1,78 @@ +From ca15c587e5c102abe0bc72a3112f7c5c6c879483 Mon Sep 17 00:00:00 2001 +From: Nathan Phillip Brink <binki@gentoo.org> +Date: Tue, 3 Jan 2012 01:47:31 +0000 +Subject: [PATCH] Add --with-cracklib/--without-cracklib ./configure options and only pass -lcrack when compiling nickserv/cracklib module. + +Being able to disable cracklib at ./configure time fixes an automagic +dependency (https://bugs.gentoo.org/397401 with original patch from +kensington). Only linking against cracklib when necessary hopefully +makes compilation and loading of modules slightly more efficient. +--- + configure | 27 ++++++++++++++++++++++++++- + configure.ac | 16 +++++++++++++++- + extra.mk.in | 1 + + modules/nickserv/Makefile | 9 +++++++++ + 4 files changed, 51 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 14a14da..fe8024f 100755 +diff --git a/configure.ac b/configure.ac +index ed7d105..ab0adb5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -97,8 +97,22 @@ AC_SEARCH_LIBS(crypt, crypt, [POSIX_CRYPTC="posix.c"]) + AC_SUBST(POSIX_CRYPTC) + + CRACKLIB_C="" +-AC_SEARCH_LIBS(FascistCheck, crack, [CRACKLIB_C="cracklib.c"]) ++CRACKLIB_LIBS="" ++AC_ARG_WITH([cracklib], ++ [AS_HELP_STRING([--with-cracklib], [Compile cracklib nickserv submodule for checking password strength.])], ++ [], ++ [with_cracklib="auto"]) ++AS_IF([test "x$with_cracklib" != "xno"], ++ [LIBS_save="$LIBS" ++ AC_SEARCH_LIBS([FascistCheck], [crack], ++ [CRACKLIB_C="cracklib.c" ++ AS_IF([test "x$ac_cv_search_FascistCheck" != "xnone required"], ++ [CRACKLIB_LIBS="$ac_cv_search_FascistCheck"])], ++ [AS_IF([test "x$with_cracklib" != "xauto"], ++ [AC_MSG_ERROR([--with-cracklib was specified but cracklib could not be found.])])]) ++ LIBS="$LIBS_save"]) + AC_SUBST(CRACKLIB_C) ++AC_SUBST([CRACKLIB_LIBS]) + + AC_ARG_WITH([ldap], + [AS_HELP_STRING([--without-ldap],[Disable building ldap auth module.])], +diff --git a/extra.mk.in b/extra.mk.in +index a59418c..bdce891 100644 +--- a/extra.mk.in ++++ b/extra.mk.in +@@ -123,6 +123,7 @@ EGREP ?= @EGREP@ + VERSION ?= @VERSION@ + prefix ?= @prefix@ + CRACKLIB_C ?= @CRACKLIB_C@ ++CRACKLIB_LIBS ?= @CRACKLIB_LIBS@ + CONTRIB_ENABLE ?= @CONTRIB_ENABLE@ + PERL_ENABLE ?= @PERL_ENABLE@ + PERL_CFLAGS ?= @PERL_CFLAGS@ +diff --git a/modules/nickserv/Makefile b/modules/nickserv/Makefile +index 3014bbb..2506be4 100644 +--- a/modules/nickserv/Makefile ++++ b/modules/nickserv/Makefile +@@ -72,3 +72,12 @@ include ../../buildsys.module.mk + CPPFLAGS += -I../../include + LIBS += -L../../libathemecore -lathemecore ${LDFLAGS_RPATH} + ++# Custom rule for cracklib.c which is the only module to ever need ++# -lcrack. ++cracklib$(PLUGIN_SUFFIX): cracklib.c ++ ${COMPILE_STATUS} ++ if ${CC} -MMD -MP ${CFLAGS} ${PLUGIN_CFLAGS} ${CPPFLAGS} ${PLUGIN_LDFLAGS} ${LDFLAGS} -o $@ ${CRACKLIB_C} ${LIBS} ${CRACKLIB_LIBS}; then \ ++ ${COMPILE_OK}; \ ++ else \ ++ ${COMPILE_FAILED}; \ ++ fi +-- +1.7.3.4 + diff --git a/net-irc/atheme-services/metadata.xml b/net-irc/atheme-services/metadata.xml index 45cf1094f325..34f648804957 100644 --- a/net-irc/atheme-services/metadata.xml +++ b/net-irc/atheme-services/metadata.xml @@ -11,7 +11,8 @@ <name>Jeff Horelick</name> <description>Co-maintainer</description> </maintainer> - <use> + <use> + <flag name='cracklib'>Enable nickserv/cracklib module for enforcing strong account passwords</flag> <flag name='largenet'>Enable support/tweaks for large networks</flag> <flag name='ldap'>Enable ldap-backed authentication module</flag> <flag name='perl'>Install a perl module which wraps around the services' XML-RPC interface</flag> |