diff --git a/net-irc/unrealircd/unrealircd-3.2.8.1-r2.ebuild b/net-irc/unrealircd/unrealircd-3.2.9_rc1.ebuild copy from net-irc/unrealircd/unrealircd-3.2.8.1-r2.ebuild copy to net-irc/unrealircd/unrealircd-3.2.9_rc1.ebuild --- a/net-irc/unrealircd/unrealircd-3.2.8.1-r2.ebuild +++ b/net-irc/unrealircd/unrealircd-3.2.9_rc1.ebuild @@ -6,36 +6,38 @@ EAPI=2 inherit eutils autotools ssl-cert versionator multilib -MY_P=Unreal${PV} +MY_P=Unreal$(replace_version_separator 3 -) -DESCRIPTION="aimed to be an advanced (not easy) IRCd" +DESCRIPTION="An advanced Internet Relay Chat daemon" HOMEPAGE="http://www.unrealircd.com/" SRC_URI="http://www.unrealircd.com/downloads/${MY_P}.tar.gz" SLOT="0" LICENSE="GPL-2" -KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~x86-fbsd" -IUSE="curl +hub ipv6 +operoverride +nospoof operoverride-verify +prefixaq +KEYWORDS="~amd64 ~x86" +IUSE="curl ipv6 +extban-stacking +operoverride +nospoof operoverride-verify +prefixaq showlistmodes shunnotices ssl topicisnuhost +usermod zlib" RDEPEND="ssl? ( dev-libs/openssl ) zlib? ( sys-libs/zlib ) curl? ( net-misc/curl ) + dev-libs/libstrl dev-libs/tre - >=net-dns/c-ares-1.5.3" + >=net-dns/c-ares-1.6.0" DEPEND="${RDEPEND} - >=sys-apps/sed-4 dev-util/pkgconfig" S=${WORKDIR}/Unreal$(get_version_component_range 1-2) +AT_M4DIR=autoconf/m4 + pkg_setup() { - enewuser unrealircd + enewuser unrealircd || die } src_prepare() { - #QA check against bundled pkgs - rm extras/*.gz + # QA check against bundled pkgs + rm extras/*.gz || die sed -i \ -e "s:ircd\.pid:/var/run/unrealircd/ircd.pid:" \ @@ -45,60 +47,51 @@ src_prepare() { include/config.h \ || die "sed failed" - # http://bugs.unrealircd.org/view.php?id=3842 - epatch "${FILESDIR}"/unrealircd-system-tre.patch - epatch "${FILESDIR}"/unrealircd-system-cares.patch - + # My own anti-replication of strlcpy()/strlcat(). --binki epatch "${FILESDIR}"/${P}-libstrl.patch - mv autoconf/configure.in ./ || die - mv autoconf/aclocal.m4 ./acinclude.m4 || die - #can't call eautoreconf because aclocal's source files aren't even in unearlircd's svn! - eaclocal - eautoconf + # Support DESTDIR= for emake install + epatch "${FILESDIR}"/${P}-destdir.patch + + eautoreconf } src_configure() { local myconf="" + + # Many unrealircd options don't support the --disable/--without + # variation. use curl && myconf="${myconf} --enable-libcurl=/usr" - use ipv6 && myconf="${myconf} --enable-inet6" use zlib && myconf="${myconf} --enable-ziplinks" - use hub && myconf="${myconf} --enable-hub" use ssl && myconf="${myconf} --enable-ssl" - use prefixaq && myconf="${myconf} --enable-prefixaq" - use nospoof && myconf="${myconf} --enable-nospoof" - use showlistmodes && myconf="${myconf} --with-showlistmodes" - use topicisnuhost && myconf="${myconf} --with-topicisnuhost" - use shunnotices && myconf="${myconf} --with-shunnotices" - use operoverride || myconf="${myconf} --with-no-operoverride" - use operoverride-verify && myconf="${myconf} --with-operoverride-verify" - use usermod || myconf="${myconf} --with-disableusermod" econf \ --with-listen=5 \ - --with-dpath="${D}"/etc/unrealircd \ + --with-dpath=/etc/unrealircd \ --with-spath=/usr/bin/unrealircd \ --with-nick-history=2000 \ --with-sendq=3000000 \ --with-bufferpool=18 \ - --with-hostname=$(hostname -f) \ --with-permissions=0600 \ --with-fd-setsize=1024 \ --with-system-cares \ --with-system-tre \ --enable-dynamic-linking \ + $(use_enable ipv6 inet6) \ + $(use_enable prefixaq) \ + $(use_enable nospoof) \ + $(use_with showlistmodes) \ + $(use_with topicisnuhost) \ + $(use_with shunnotices) \ + $(use_with \!operoverride no-operoverride) \ + $(use_with operoverride-verify) \ + $(use_with \!usermod disableusermod) \ + $(use_with \!extban-stacking disable-extendedban-stacking) \ ${myconf} - - # Fix upstream poor autofoo - sed -i \ - -e "s:${D}::g" \ - include/setup.h \ - ircdcron/ircdchk \ - || die } src_compile() { - emake MAKE=make IRCDDIR=/etc/unrealircd || die "emake failed" + emake DESTDIR="${D}" || die } src_install() { @@ -134,7 +127,7 @@ src_install() { dohtml doc/*.html || die newinitd "${FILESDIR}"/unrealircd.rc unrealircd || die - newconfd "${FILESDIR}"/unrealircd.confd unrealircd + newconfd "${FILESDIR}"/unrealircd.confd unrealircd || die fperms 700 /etc/unrealircd || die chown -R unrealircd "${D}"/{etc,var/{lib,log,run}}/unrealircd ||die