--- inspircd-1.1.19.ebuild.portage 2008-05-24 08:34:40.254937000 +0400 +++ inspircd-1.1.19.ebuild 2008-05-24 08:48:31.774322586 +0400 @@ -2,29 +2,30 @@ # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/net-irc/inspircd/inspircd-1.1.19.ebuild,v 1.4 2008/05/21 18:56:03 dev-zero Exp $ -inherit eutils toolchain-funcs multilib # subversion +inherit eutils multilib # subversion DESCRIPTION="InspIRCd - The Modular C++ IRC Daemon" HOMEPAGE="http://www.inspircd.org/" SRC_URI="http://www.inspircd.org/downloads/InspIRCd-${PV}.tar.bz2 -mirror://sourceforge/${PN}/InspIRCd-${PV}.tar.bz2" + mirror://sourceforge/${PN}/InspIRCd-${PV}.tar.bz2" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ppc x86" +KEYWORDS="amd64 ppc x86" IUSE="openssl gnutls ipv6 kernel_linux mysql postgres sqlite zlib ldap" RDEPEND=" - dev-lang/perl - openssl? ( dev-libs/openssl ) - gnutls? ( net-libs/gnutls ) + openssl? ( >=dev-libs/openssl-0.9.7d ) + gnutls? ( >=net-libs/gnutls-1.3.0 ) mysql? ( virtual/mysql ) postgres? ( virtual/postgresql-server ) sqlite? ( >=dev-db/sqlite-3.0 ) ldap? ( net-nds/openldap )" -DEPEND="${RDEPEND}" +DEPEND="${RDEPEND} + >=sys-devel/gcc-3.3.0 + >=dev-lang/perl-5.8" -S="${WORKDIR}/inspircd" +S="${WORKDIR}/${PN}" src_unpack() { unpack ${A} @@ -63,22 +64,23 @@ } src_compile() { + local myconf="" # ./configure doesn't know --disable-gnutls, -ipv6 and -openssl options, # so should be used only --enable-like. - local myconf="" - use gnutls && myconf="--enable-gnutls" - use ipv6 && myconf="${myconf} --enable-ipv6 --enable-remote-ipv6" - use openssl && myconf="${myconf} --enable-openssl" + use openssl && myconf="${myconf} $(use_enable openssl)" + use gnutls && myconf="${myconf} $(use_enable gnutls)" + use ipv6 && myconf="${myconf} $(use_enable ipv6) --enable-remote-ipv6" ./configure ${myconf} \ --enable-epoll \ - --prefix="/usr/$(get_libdir)/inspircd" \ - --config-dir="/etc/inspircd" \ + --prefix="/usr/$(get_libdir)/${PN}" \ + --config-dir="/etc/${PN}" \ --binary-dir="/usr/bin" \ - --library-dir="/usr/$(get_libdir)/inspircd" \ - --module-dir="/usr/$(get_libdir)/inspircd/modules" \ + --library-dir="/usr/$(get_libdir)/${PN}" \ + --module-dir="/usr/$(get_libdir)/${PN}/modules" \ || die "configure failed" + ./configure -modupdate || die "modupdate failed" emake || die "emake failed" @@ -87,38 +89,41 @@ src_install() { # the inspircd buildsystem does not create these, its configure script # does. so, we have to make sure they are there. - dodir /usr/$(get_libdir)/inspircd - dodir /usr/$(get_libdir)/inspircd/modules - dodir /etc/inspircd - dodir /var/log/inspircd - dodir /usr/include/inspircd + dodir /etc/${PN} + dodir /usr/include/${PN} + dodir /usr/$(get_libdir)/${PN} + dodir /usr/$(get_libdir)/${PN}/modules + dodir /var/log/${PN} emake install \ - LIBPATH="${D}/usr/$(get_libdir)/inspircd/" \ - MODPATH="${D}/usr/$(get_libdir)/inspircd/modules/" \ - CONPATH="${D}/etc/inspircd" \ + LIBPATH="${D}/usr/$(get_libdir)/${PN}/" \ + MODPATH="${D}/usr/$(get_libdir)/${PN}/modules/" \ + CONPATH="${D}/etc/${PN}" \ BINPATH="${D}/usr/bin" \ - BASE="${D}/usr/$(get_libdir)/inspircd/inspircd.launcher" + BASE="${D}/usr/$(get_libdir)/${PN}/inspircd.launcher" - insinto /usr/include/inspircd/ + insinto /usr/include/${PN}/ doins "${S}"/include/* newinitd "${FILESDIR}"/init.d_inspircd inspircd - keepdir "/var/log/inspircd/" + keepdir "/var/log/${PN}/" } pkg_postinst() { + ebegin "Creating inspircd user and group" enewgroup inspircd enewuser inspircd -1 -1 -1 inspircd - chown -R inspircd:inspircd "${ROOT}"/etc/inspircd - chmod 700 "${ROOT}"/etc/inspircd + eend ${?} + + chown -R inspircd:inspircd "${ROOT}"/etc/${PN} + chmod 700 "${ROOT}"/etc/${PN} - chmod 750 "${ROOT}"/var/log/inspircd - chown -R inspircd:inspircd "${ROOT}"/var/log/inspircd + chown -R inspircd:inspircd "${ROOT}"/var/log/${PN} + chmod 750 "${ROOT}"/var/log/${PN} - chown -R inspircd:inspircd "${ROOT}"/usr/$(get_libdir)/inspircd - chmod -R 755 "${ROOT}"/usr/$(get_libdir)/inspircd + chown -R inspircd:inspircd "${ROOT}"/usr/$(get_libdir)/${PN} + chmod -R 755 "${ROOT}"/usr/$(get_libdir)/${PN} - chmod -R 755 "${ROOT}"/usr/bin/inspircd + chmod -R 755 "${ROOT}"/usr/bin/${PN} }