diff options
author | José María Alonso <nimiux@gentoo.org> | 2012-04-12 20:17:22 +0000 |
---|---|---|
committer | José María Alonso <nimiux@gentoo.org> | 2012-04-12 20:17:22 +0000 |
commit | 55b4330fa24db9dceb84b4d764ff28822085b487 (patch) | |
tree | 8ae112b9ef6e61de6467d084e157814f67f63b8e /net-irc/inspircd | |
parent | No need for useflag wmf as support is purely internal, bug 387559; remove old (diff) | |
download | gentoo-2-55b4330fa24db9dceb84b4d764ff28822085b487.tar.gz gentoo-2-55b4330fa24db9dceb84b4d764ff28822085b487.tar.bz2 gentoo-2-55b4330fa24db9dceb84b4d764ff28822085b487.zip |
Version bump to 2.0.6_rc1
(Portage version: 2.1.10.49/cvs/Linux x86_64)
Diffstat (limited to 'net-irc/inspircd')
-rw-r--r-- | net-irc/inspircd/ChangeLog | 8 | ||||
-rw-r--r-- | net-irc/inspircd/files/inspircd-2.0.6-init | 38 | ||||
-rw-r--r-- | net-irc/inspircd/files/inspircd-2.0.6_rc1-fix-path-builds.patch | 132 | ||||
-rw-r--r-- | net-irc/inspircd/inspircd-2.0.6_rc1.ebuild | 112 |
4 files changed, 289 insertions, 1 deletions
diff --git a/net-irc/inspircd/ChangeLog b/net-irc/inspircd/ChangeLog index cfddfa52ff37..33019df2b3bb 100644 --- a/net-irc/inspircd/ChangeLog +++ b/net-irc/inspircd/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-irc/inspircd # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-irc/inspircd/ChangeLog,v 1.46 2012/04/04 11:52:38 nimiux Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-irc/inspircd/ChangeLog,v 1.47 2012/04/12 20:17:22 nimiux Exp $ + +*inspircd-2.0.6_rc1 (12 Apr 2012) + + 12 Apr 2012; Chema Alonso <nimiux@gentoo.org> +inspircd-2.0.6_rc1.ebuild, + +files/inspircd-2.0.6-init, +files/inspircd-2.0.6_rc1-fix-path-builds.patch: + Version bump to 2.0.6_rc1 *inspircd-2.0.5-r2 (04 Apr 2012) diff --git a/net-irc/inspircd/files/inspircd-2.0.6-init b/net-irc/inspircd/files/inspircd-2.0.6-init new file mode 100644 index 000000000000..97696e1b9b61 --- /dev/null +++ b/net-irc/inspircd/files/inspircd-2.0.6-init @@ -0,0 +1,38 @@ +#!/sbin/runscript +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-irc/inspircd/files/inspircd-2.0.6-init,v 1.1 2012/04/12 20:17:22 nimiux Exp $ + +extra_commands="rehash version" + +depend() { + need net + provide ircd +} + +start() { + ebegin "Starting InspIRCd" + start-stop-daemon --start --quiet --user inspircd \ + --exec /usr/bin/inspircd -- \ + --config /etc/inspircd/inspircd.conf \ + --logfile /var/log/inspircd/ircd.log &> /dev/null + eend $? +} + +stop() { + ebegin "Stopping InspIRCd" + start-stop-daemon --stop --quiet --exec /usr/bin/inspircd + eend $? +} + +rehash() { + ebegin "Rehashing InspIRCd" + /usr/lib/inspircd/inspircd.launcher/inspircd rehash &> /dev/null + eend $? +} + +version() { + ebegin "Retrieve InspIRCd version" + /usr/lib/inspircd/inspircd.launcher/inspircd version + eend $? +} diff --git a/net-irc/inspircd/files/inspircd-2.0.6_rc1-fix-path-builds.patch b/net-irc/inspircd/files/inspircd-2.0.6_rc1-fix-path-builds.patch new file mode 100644 index 000000000000..cece33665ebe --- /dev/null +++ b/net-irc/inspircd/files/inspircd-2.0.6_rc1-fix-path-builds.patch @@ -0,0 +1,132 @@ +diff -Nur a/docs/inspircd.conf.example b/docs/inspircd.conf.example +--- a/docs/inspircd.conf.example 2012-04-09 15:38:53.000000000 +0200 ++++ b/docs/inspircd.conf.example 2012-04-12 20:37:48.669878206 +0200 +@@ -404,11 +404,11 @@ + + # This file has all the information about oper classes, types and o:lines. + # You *MUST* edit it. +-<include file="conf/opers.conf.example"> ++<include file="/etc/inspircd/opers.conf.example"> + + # This file has all the information about server links and ulined servers. + # You *MUST* edit it if you intend to link servers. +-<include file="conf/links.conf.example"> ++<include file="/etc/inspircd/links.conf.example"> + + #-#-#-#-#-#-#-#-#-#- MISCELLANEOUS CONFIGURATION -#-#-#-#-#-#-#-#-#-# + # # +@@ -418,7 +418,8 @@ + # motd - displayed on connect and when a user executes /MOTD + # rules - displayed when the user executes /RULES + # Modules can also define their own files +-<files motd="conf/inspircd.motd.example" rules="conf/inspircd.rules.example"> ++<files motd="/etc/inspircd/inspircd.motd.example" ++ rules="/etc/inspircd/inspircd.rules.example"> + + # Example of an executable file include. Note this will be read on rehash, + # not when the command is run. +@@ -464,7 +465,7 @@ + # the default of 'inspircd.pid' is used. # + # # + +-#<pid file="/path/to/inspircd.pid"> ++<pid file="/var/run/inspircd/inspircd.pid"> + + #-#-#-#-#-#-#-#-#-#-#-#-#- BANLIST LIMITS #-#-#-#-#-#-#-#-#-#-#-#-#-#-# + # # +@@ -912,7 +913,7 @@ + # provide almost all the features of InspIRCd. :) # + # # + # The default does nothing -- we include it for simplicity for you. # +-<include file="conf/modules.conf.example"> ++<include file="/etc/inspircd/modules.conf.example"> + + # Here are some pre-built modules.conf files that closely match the + # default configurations of some popular IRCd's. You still may want to +@@ -924,10 +925,10 @@ + # recommended that you make your own modules file based on modules.conf.example. + + # Settings similar to UnrealIRCd defaults. +-#<include file="conf/modules/modules.conf.unreal"> ++#<include file="/etc/inspircd/modules/modules.conf.unreal"> + + # Settings similar to Charybdis IRCd defaults. +-#<include file="conf/modules/modules.conf.charybdis"> ++#<include file="/etc/inspircd/modules/modules.conf.charybdis"> + + + ######################################################################### +diff -Nur a/make/template/main.mk b/make/template/main.mk +--- a/make/template/main.mk 2012-04-09 15:38:53.000000000 +0200 ++++ b/make/template/main.mk 2012-04-12 20:37:48.669878206 +0200 +@@ -54,22 +54,22 @@ + CXXFLAGS += -D_ALL_SOURCE -I/usr/local/include + @ENDIF + +-@IFNDEF D +- D=0 ++@IFNDEF DEBUGLEVEL ++ DEBUGLEVEL=0 + @ENDIF + + DBGOK=0 +-@IFEQ $(D) 0 ++@IFEQ $(DEBUGLEVEL) 0 + CXXFLAGS += -O2 -g1 + HEADER = std-header + DBGOK=1 + @ENDIF +-@IFEQ $(D) 1 ++@IFEQ $(DEBUGLEVEL) 1 + CXXFLAGS += -O0 -g3 -Werror + HEADER = debug-header + DBGOK=1 + @ENDIF +-@IFEQ $(D) 2 ++@IFEQ $(DEBUGLEVEL) 2 + CXXFLAGS += -O2 -g3 + HEADER = debug-header + DBGOK=1 +@@ -111,10 +111,10 @@ + @GNU_ONLY TARGET = modules/$(M:.so=).so + @ENDIF + +-@IFDEF T ++@IFDEF TGT + HEADER = + FOOTER = target +- TARGET = $(T) ++ TARGET = $(TGT) + @ENDIF + + @IFEQ $(DBGOK) 0 +diff -Nur a/src/modules/m_xline_db.cpp b/src/modules/m_xline_db.cpp +--- a/src/modules/m_xline_db.cpp 2012-04-09 15:38:53.000000000 +0200 ++++ b/src/modules/m_xline_db.cpp 2012-04-12 20:37:48.669878206 +0200 +@@ -92,7 +92,7 @@ + * -- w00t + */ + ServerInstance->Logs->Log("m_xline_db",DEBUG, "xlinedb: Opening temporary database"); +- f = fopen("data/xline.db.new", "w"); ++ f = fopen("/var/lib/inspircd/data/xline.db.new", "w"); + if (!f) + { + ServerInstance->Logs->Log("m_xline_db",DEBUG, "xlinedb: Cannot create database! %s (%d)", strerror(errno), errno); +@@ -133,7 +133,7 @@ + } + + // Use rename to move temporary to new db - this is guarenteed not to fuck up, even in case of a crash. +- if (rename("data/xline.db.new", "data/xline.db") < 0) ++ if (rename("/var/lib/inspircd/data/xline.db.new", "/var/lib/inspircd/data/xline.db") < 0) + { + ServerInstance->Logs->Log("m_xline_db",DEBUG, "xlinedb: Cannot move new to old database! %s (%d)", strerror(errno), errno); + ServerInstance->SNO->WriteToSnoMask('a', "database: cannot replace old with new db: %s (%d)", strerror(errno), errno); +@@ -149,7 +149,7 @@ + char linebuf[MAXBUF]; + unsigned int lineno = 0; + +- f = fopen("data/xline.db", "r"); ++ f = fopen("/var/lib/inspircd/data/xline.db", "r"); + if (!f) + { + if (errno == ENOENT) diff --git a/net-irc/inspircd/inspircd-2.0.6_rc1.ebuild b/net-irc/inspircd/inspircd-2.0.6_rc1.ebuild new file mode 100644 index 000000000000..df4cae4a8778 --- /dev/null +++ b/net-irc/inspircd/inspircd-2.0.6_rc1.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-irc/inspircd/inspircd-2.0.6_rc1.ebuild,v 1.1 2012/04/12 20:17:22 nimiux Exp $ + +EAPI=4 + +inherit eutils flag-o-matic multilib versionator + +MY_PV="$(delete_version_separator 3)" +DESCRIPTION="Inspire IRCd - The Stable, High-Performance Modular IRCd" +HOMEPAGE="http://www.inspircd.org/" +SRC_URI="http://github.com/inspircd/inspircd/downloads/InspIRCd-${MY_PV}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="gnutls ipv6 ldap mysql postgres sqlite ssl" + +RDEPEND=" + dev-lang/perl + ssl? ( dev-libs/openssl ) + gnutls? ( net-libs/gnutls dev-libs/libgcrypt ) + ldap? ( net-nds/openldap ) + mysql? ( virtual/mysql ) + postgres? ( dev-db/postgresql-server ) + sqlite? ( >=dev-db/sqlite-3.0 )" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${PN}" + +pkg_setup() { + enewgroup ${PN} + enewuser ${PN} -1 -1 -1 ${PN} +} + +src_prepare() { + # Patch the inspircd launcher with the inspircd user + sed -i -e "s/@UID@/${PN}/" "${S}/make/template/${PN}" || die + + epatch "${FILESDIR}/${PF}-fix-path-builds.patch" +} + +src_configure() { + local extras="" + local essl="--enable-openssl" + local egnutls="--enable-gnutls" + local dipv6="--disable-ipv6" + + use ssl && extras="${extras}m_ssl_openssl.cpp," + use gnutls && extras="${extras}m_ssl_gnutls.cpp," + use ldap && extras="${extras}m_ldapauth.cpp," + use mysql && extras="${extras}m_mysql.cpp," + use postgres && extras="${extras}m_pgsql.cpp," + use sqlite && extras="${extras}m_sqlite3.cpp," + + # allow inspircd to be built by root + touch .force-root-ok || die + + if [ -n "${extras}" ]; then + ./configure --disable-interactive \ + --enable-extras=${extras} || die + fi + + use !ssl && essl="" + use !gnutls && egnutls="" + use ipv6 && dipv6="" + + ./configure \ + --disable-interactive \ + --prefix="/usr/$(get_libdir)/${PN}" \ + --config-dir="/etc/${PN}" \ + --binary-dir="/usr/bin" \ + --module-dir="/usr/$(get_libdir)/${PN}/modules" \ + ${essl} ${egnutls} ${dipv6} || die +} + +src_compile() { + append-cxxflags -Iinclude -fPIC + emake LDFLAGS="${LDFLAGS}" CXXFLAGS="${CXXFLAGS}" +} + +src_install() { + emake INSTUID=${PN} \ + BINPATH="${D}/usr/bin" \ + BASE="${D}/usr/$(get_libdir)/${PN}/inspircd.launcher" \ + MODPATH="${D}/usr/$(get_libdir)/${PN}/modules/" \ + CONPATH="${D}/etc/${PN}" install + + insinto /etc/"${PN}"/modules + doins docs/modules/* + + insinto /etc/"${PN}"/aliases + doins docs/aliases/* + + insinto /usr/include/"${PN}" + doins include/* + + diropts -o"${PN}" -g"${PN}" + dodir /var/run/"${PN}" /var/lib/"${PN}"/data + + newinitd "${FILESDIR}/${PN}-$(get_version_component_range 1-3)-init" "${PN}" + keepdir /var/log/"${PN}"/ +} + +pkg_postinst() { + elog "Before starting ${PN} the first time you should create" + elog "the /etc/${PN}/${PN}.conf file." + elog "You can find example configuration files under /etc/${PN}" + elog "Read the ${PN}.conf.example file carefully before starting " + elog "the service." + elog +} |