diff options
author | Nathan Phillip Brink <binki@gentoo.org> | 2011-06-27 23:55:00 +0000 |
---|---|---|
committer | Nathan Phillip Brink <binki@gentoo.org> | 2011-06-27 23:55:00 +0000 |
commit | 063ad1d5776606d64824d2095eebcc398d0339a8 (patch) | |
tree | b1e36554b2644d4ec271995979ab4f399365fb66 /net-irc | |
parent | Respect LDFLAGS (bug #334709, patch thanks to Ross Smith) and update to EAPI 4. (diff) | |
download | gentoo-2-063ad1d5776606d64824d2095eebcc398d0339a8.tar.gz gentoo-2-063ad1d5776606d64824d2095eebcc398d0339a8.tar.bz2 gentoo-2-063ad1d5776606d64824d2095eebcc398d0339a8.zip |
Bump to ircservices-5.1.24 with build on amd64 fixed, hopefully parallel make issues solved, LDFLAGS and -Wl,--as-needed support. Last upstream release (ircservices is discontinued upstream).
(Portage version: 2.2.0_alpha41-r1/cvs/Linux x86_64)
Diffstat (limited to 'net-irc')
9 files changed, 468 insertions, 2 deletions
diff --git a/net-irc/ircservices/ChangeLog b/net-irc/ircservices/ChangeLog index 94acac775a92..ae51b2eb3b7c 100644 --- a/net-irc/ircservices/ChangeLog +++ b/net-irc/ircservices/ChangeLog @@ -1,6 +1,19 @@ # ChangeLog for net-irc/ircservices -# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-irc/ircservices/ChangeLog,v 1.47 2009/12/28 19:01:34 nixnut Exp $ +# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-irc/ircservices/ChangeLog,v 1.48 2011/06/27 23:55:00 binki Exp $ + +*ircservices-5.1.24 (27 Jun 2011) + + 27 Jun 2011; Nathan Phillip Brink <binki@gentoo.org> + +ircservices-5.1.24.ebuild, +files/ircservices-5.1.24-as-needed.patch, + +files/ircservices-5.1.24-fd_set-amd64.patch, + +files/ircservices-5.1.24-ircservices-chk-pidfile.patch, + +files/ircservices-5.1.24-ldflags.patch, + +files/ircservices-5.1.24-parallel-make.patch, +files/ircservices.confd, + +files/ircservices.initd: + Bump to ircservices-5.1.24 with build on amd64 fixed, hopefully parallel + make issues solved, LDFLAGS and -Wl,--as-needed support. Last upstream + release (ircservices is discontinued upstream). 28 Dec 2009; nixnut <nixnut@gentoo.org> ircservices-5.1.17.ebuild: ppc stable #289539 diff --git a/net-irc/ircservices/files/ircservices-5.1.24-as-needed.patch b/net-irc/ircservices/files/ircservices-5.1.24-as-needed.patch new file mode 100644 index 000000000000..b8b3668e1e39 --- /dev/null +++ b/net-irc/ircservices/files/ircservices-5.1.24-as-needed.patch @@ -0,0 +1,17 @@ +From: Nathan Phillip Brink <binki@gentoo.org> +Date: 2011-06-22 +Subject: Fix missing $(LIBS) in the Makefiles where linking of modules + happens. + +diff -r 7c815ad6fa2e -r f195c349225a modules/Makerules +--- a/modules/Makerules Wed Jun 22 00:14:22 2011 -0400 ++++ b/modules/Makerules Wed Jun 22 13:32:24 2011 -0400 +@@ -104,7 +104,7 @@ + + # Compile one or more objects into a dynamic module. + $(TARGET).so: $(TARGET).o $(OBJECTS) +- $(CC_SHARED) $(CFLAGS) $(LFLAGS) $^ -o $@ ++ $(CC_SHARED) $(CFLAGS) $(LFLAGS) $^ -o $@ $(LIBS) + + # Compile one or more objects into a static module and generate a symbol + # list. The .a file we create here is just a placeholder to show that diff --git a/net-irc/ircservices/files/ircservices-5.1.24-fd_set-amd64.patch b/net-irc/ircservices/files/ircservices-5.1.24-fd_set-amd64.patch new file mode 100644 index 000000000000..b15595d570a3 --- /dev/null +++ b/net-irc/ircservices/files/ircservices-5.1.24-fd_set-amd64.patch @@ -0,0 +1,236 @@ +From: Nathan Phillip Brink <binki@gentoo.org> +Subject: Fix compilation on amd64 platform by using a different method + of fixing the printf() + size_t problem. + +The method used is to test if the `z' printf integer modifier works or +not. If that works, use it. Otherwise, search for a normal integer +type of similar length to size_t. Defines PRIdSIZE and PRIuSIZE in +reminiscence of inttypes.h + +diff -r b323b647fe91 -r e10ae0e7b778 Makefile +--- a/Makefile Tue Jun 21 00:42:59 2011 -0400 ++++ b/Makefile Tue Jun 21 00:44:38 2011 -0400 +@@ -116,17 +116,17 @@ + + ifneq ($(STATIC_MODULES),) + modules: langstrs.h +- @$(MAKE) -C modules all-static CFLAGS="$(CFLAGS)" ++ @$(MAKE) -C modules all-static CFLAGS='$(CFLAGS)' + else + modules: langstrs.h +- @$(MAKE) -C modules all-dynamic CFLAGS="$(CFLAGS)" ++ @$(MAKE) -C modules all-dynamic CFLAGS='$(CFLAGS)' + endif + + languages: +- @$(MAKE) -C lang CFLAGS="$(CFLAGS)" ++ @$(MAKE) -C lang CFLAGS='$(CFLAGS)' + + tools: langstrs.h services.h +- @$(MAKE) -C tools CFLAGS="$(CFLAGS)" ++ @$(MAKE) -C tools CFLAGS='$(CFLAGS)' + + + # Catch any changes in compilation options at the top of this file or the +diff -r b323b647fe91 -r e10ae0e7b778 configure +--- a/configure Tue Jun 21 00:42:59 2011 -0400 ++++ b/configure Tue Jun 21 00:44:38 2011 -0400 +@@ -271,6 +271,7 @@ + SIZEOF_INT= + SIZEOF_LONG= + SIZEOF_PTR= ++SIZEOF_SIZE_T= + SIZEOF_TIME_T= + MAX_TIME_T= + SIZEOF_GID_T=bonkle +@@ -1997,6 +1998,39 @@ + fi + fi + ++MODE="check_size_t " ++echo2 "Checking the size of size_t... " ++if [ "$SIZEOF_SIZE_T" ]; then ++ echo "(cached) `expr $SIZEOF_SIZE_T \* 8` bits" ++ log "cache supplied `expr $SIZEOF_SIZE_T \* 8` bits" ++else ++ cat >$CONFTMP/test.c <<EOT ++ #include <stdlib.h> ++ #include <stdio.h> ++ int main() ++ { ++ size_t a = 0; ++ printf("%d", sizeof(a)); ++ return 0; ++ } ++EOT ++ if run $CC $CC_FLAGS $CONFTMP/test.c $CC_LIBS -o $CONFTMP/test; then ++ a="`$CONFTMP/test`" ++ log "test program output (sizeof(size_t)): $a" ++ if [ ! "$a" ]; then ++ echo "test program failed! Assuming `expr $SIZEOF_PTR \* 8` bits." ++ log "assuming `expr $SIZEOF_PTR \* 8` bits" ++ SIZEOF_SIZE_T=$SIZEOF_PTR ++ else ++ SIZEOF_SIZE_T="$a" ++ echo `expr $SIZEOF_SIZE_T \* 8` bits ++ log "`expr $SIZEOF_SIZE_T \* 8` bits" ++ fi ++ else ++ whoa_there ++ fi ++fi ++ + MODE="check_time_t " + echo2 "Checking the size of time_t... " + if [ "$SIZEOF_TIME_T" -a "$MAX_TIME_T" ] ; then +@@ -2135,6 +2169,53 @@ + fi + fi + ++MODE="check_PRIdSIZE " ++echo2 "Checking how to use size_t with printf... " ++if [ "$SIZE_T_FORMAT" ]; then ++ echo "(cached) $SIZE_T_FORMAT" ++ log "cache $SIZE_T_FORMAT" ++else ++ cat >$CONFTMP/test.c <<EOT ++ #include <stdlib.h> ++ #include <stdio.h> ++ int main() ++ { ++ size_t a = 26; ++ printf("%zu", a); ++ return 0; ++ } ++EOT ++ if run $CC $CC_FLAGS $CONFTMP/test.c $CC_LIBS -o $CONFTMP/test; then ++ a="`$CONFTMP/test`" ++ log "test program output printf(\"%zu\", (size_t)26): $a" ++ if [ "x$a" = "x26" ]; then ++ echo "can use %zu to print size_t (I love standards-compliance :-))." ++ log "can use %zu to print size_t (I love standards-compliance :-))." ++ CDEFS="$CDEFS -DPRIdSIZE=\\\"zd\\\" -DPRIuSIZE=\\\"zu\\\"" ++ else ++ echo "test program indicated that runtime does not accept %zu for size_t." ++ log "test program indicated that runtime does not accept %zu for size_t." ++ if [ "x$SIZEOF_SIZE_T" = "x$SIZEOF_INT" ]; then ++ SIZE_MOD= ++ MATCHED=int ++ else ++ if [ "x$SIZEOF_SIZE_T" = "x$SIZEOF_LONG" ]; then ++ SIZE_MOD=l ++ MATCHED=long ++ else ++ SIZE_MOD=l ++ MATCHED="no known types" ++ fi ++ fi ++ echo "size_t's size matched $MATCHED, using %$SIZE_MOD""d to print size_t." ++ log "size_t's size matched $MATCHED, using %$SIZE_MOD""d to print size_t." ++ CDEFS="$CDEFS -DPRIdSIZE=\\\"$SIZE_MOD""d\\\" -DPRIuSIZE=\\\"$SIZE_MOD""u\\\"" ++ fi ++ else ++ whoa_there ++ fi ++fi ++ + ########################################################################### + + # AIX workaround. +diff -r b323b647fe91 -r e10ae0e7b778 defs.h +--- a/defs.h Tue Jun 21 00:42:59 2011 -0400 ++++ b/defs.h Tue Jun 21 00:44:38 2011 -0400 +@@ -224,11 +224,6 @@ + + /* Various generally useful macros. */ + +- +-/* Make sizeof() return an int regardless of compiler (avoids printf +- * argument type warnings). */ +-#define sizeof(v) ((int)sizeof(v)) +- + /* Length of an array: */ + #define lenof(a) (sizeof(a) / sizeof(*(a))) + +diff -r b323b647fe91 -r e10ae0e7b778 modules/Makefile +--- a/modules/Makefile Tue Jun 21 00:42:59 2011 -0400 ++++ b/modules/Makefile Tue Jun 21 00:44:38 2011 -0400 +@@ -18,7 +18,7 @@ + + all-dynamic: + @set -e ; for i in $(SUBDIRS) ; do \ +- $(MAKE) -C $$i $@ DIRNAME="$$i" CFLAGS="$(CFLAGS)" ; \ ++ $(MAKE) -C $$i $@ DIRNAME="$$i" CFLAGS='$(CFLAGS)' ; \ + if $(TEST_NT) ! -f .stamp -o "$$i/.stamp" -nt .stamp ; then \ + echo "touch .stamp" ; \ + touch .stamp ; \ +@@ -33,7 +33,7 @@ + @echo '#include "modsyms.c"' >>modlist.c + @echo 'struct {const char *name; void *symlist;} modlist[] = {' >>modlist.c + @set -e ; for i in $(SUBDIRS) ; do \ +- $(MAKE) -C $$i $@ DIRNAME="$$i" CFLAGS="$(CFLAGS)" ; \ ++ $(MAKE) -C $$i $@ DIRNAME="$$i" CFLAGS='$(CFLAGS)' ; \ + cat $$i/.modext-*.h >>modext.h ; \ + cat $$i/.modsyms-*.c >>modsyms.c ; \ + cat $$i/.modlist-*.c >>modlist.c ; \ +diff -r b323b647fe91 -r e10ae0e7b778 modules/Makerules +--- a/modules/Makerules Tue Jun 21 00:42:59 2011 -0400 ++++ b/modules/Makerules Tue Jun 21 00:44:38 2011 -0400 +@@ -153,13 +153,13 @@ + $(TARGET).o $(TARGET)_static.o: MODULE_CFLAGS += -DMODULE_MAIN_FILE + $(TARGET)_static.o: MODULE_CFLAGS += -D_this_module_ptr=_this_module_ptr_$(MODULE_ID) -Dmodule_version=module_version_$(MODULE_ID) -Dmodule_config=module_config_$(MODULE_ID) -Dinit_module=init_module_$(MODULE_ID) -Dexit_module=exit_module_$(MODULE_ID) + $(TARGET)_static.o: FRC +- @$(MAKE) --no-print-directory $@ TARGET=$(@:_static.o=) INCLUDES2="$(INCLUDES-$(@:_static.o=.o))" CFLAGS="$(CFLAGS) $(MODULE_CFLAGS)" REALLY_COMPILE=2 ++ @$(MAKE) --no-print-directory $@ TARGET=$(@:_static.o=) INCLUDES2="$(INCLUDES-$(@:_static.o=.o))" CFLAGS='$(CFLAGS) $(MODULE_CFLAGS)' REALLY_COMPILE=2 + @if $(TEST_NT) ! -f .stamp -o "$@" -nt .stamp ; then \ + echo "touch .stamp" ; \ + touch .stamp ; \ + fi + $(TARGET).o $(OBJECTS): FRC +- @$(MAKE) --no-print-directory $@ TARGET=$(@:.o=) INCLUDES2="$(INCLUDES-$@)" CFLAGS="$(CFLAGS) $(MODULE_CFLAGS)" REALLY_COMPILE=2 ++ @$(MAKE) --no-print-directory $@ TARGET=$(@:.o=) INCLUDES2="$(INCLUDES-$@)" CFLAGS='$(CFLAGS) $(MODULE_CFLAGS)' REALLY_COMPILE=2 + @if $(TEST_NT) ! -f .stamp -o "$@" -nt .stamp ; then \ + echo "touch .stamp" ; \ + touch .stamp ; \ +diff -r b323b647fe91 -r e10ae0e7b778 tools/convert-cygnus.c +--- a/tools/convert-cygnus.c Tue Jun 21 00:42:59 2011 -0400 ++++ b/tools/convert-cygnus.c Tue Jun 21 00:44:38 2011 -0400 +@@ -245,7 +245,7 @@ + break; + } + if (strlen(pass) > sizeof(ngi->pass)-1) { +- fprintf(stderr, "%s:%d: Password for `%s' truncated to %d" ++ fprintf(stderr, "%s:%d: Password for `%s' truncated to %" PRIdSIZE + " characters\n", fname, line, ni->nick, + sizeof(ngi->pass)-1); + pass[sizeof(ngi->pass)-1] = 0; +@@ -741,7 +741,7 @@ + } + ci->founder = ni->nickgroup; + if (strlen(pass) > sizeof(ci->founderpass)-1) { +- fprintf(stderr, "%s:%d: Password for `%s' truncated to %d" ++ fprintf(stderr, "%s:%d: Password for `%s' truncated to %" PRIdSIZE + " characters\n", fname, line, ci->name, + sizeof(ci->founderpass)-1); + pass[sizeof(ci->founderpass)-1] = 0; +diff -r b323b647fe91 -r e10ae0e7b778 tools/convert-hybserv.c +--- a/tools/convert-hybserv.c Tue Jun 21 00:42:59 2011 -0400 ++++ b/tools/convert-hybserv.c Tue Jun 21 00:44:38 2011 -0400 +@@ -198,7 +198,7 @@ + exit(1); + } else { + fprintf(stderr, "%s:%d: Password for `%s'" +- " truncated to %d characters\n", fname, ++ " truncated to %" PRIdSIZE " characters\n", fname, + line, ni->nick, + sizeof(ngi->pass.password)-1); + } +@@ -564,7 +564,7 @@ + exit(1); + } else { + fprintf(stderr, "%s:%d: Password for `%s'" +- " truncated to %d characters\n", fname, ++ " truncated to %" PRIdSIZE " characters\n", fname, + line, ci->name, + sizeof(ci->founderpass.password)-1); + } diff --git a/net-irc/ircservices/files/ircservices-5.1.24-ircservices-chk-pidfile.patch b/net-irc/ircservices/files/ircservices-5.1.24-ircservices-chk-pidfile.patch new file mode 100644 index 000000000000..b232e8c5e07a --- /dev/null +++ b/net-irc/ircservices/files/ircservices-5.1.24-ircservices-chk-pidfile.patch @@ -0,0 +1,22 @@ +From: Nathan Phillip Brink <binki@gentoo.org> +Date: 2011/06/15 +Subject: Use the same datadir/pidfile searching algorithm in + ircservices-chk as in ircservices to ensure consistent + results. + +--- a/tools/ircservices-chk.in ++++ b/tools/ircservices-chk.in +@@ -21,10 +21,10 @@ + fi + + ok= +-if [ -f "@DATDEST@/$PIDFILE" ] ; then +- pid=`cat "@DATDEST@/$PIDFILE"` ++if ! cd "@DATDEST@" || [ -f "$PIDFILE" ] ; then ++ pid=`cat "$PIDFILE"` + if echo "0$pid" | grep -q '[^0-9]' ; then +- rm -f "@DATDEST@/$PIDFILE" ++ rm -f "$PIDFILE" + elif kill -0 $pid ; then + ok=1 + fi diff --git a/net-irc/ircservices/files/ircservices-5.1.24-ldflags.patch b/net-irc/ircservices/files/ircservices-5.1.24-ldflags.patch new file mode 100644 index 000000000000..b4041cd74a27 --- /dev/null +++ b/net-irc/ircservices/files/ircservices-5.1.24-ldflags.patch @@ -0,0 +1,12 @@ +diff -r e10ae0e7b778 modules/Makerules +--- a/modules/Makerules Tue Jun 21 00:44:38 2011 -0400 ++++ b/modules/Makerules Tue Jun 21 13:00:07 2011 -0400 +@@ -104,7 +104,7 @@ + + # Compile one or more objects into a dynamic module. + $(TARGET).so: $(TARGET).o $(OBJECTS) +- $(CC_SHARED) $^ -o $@ ++ $(CC_SHARED) $(CFLAGS) $(LFLAGS) $^ -o $@ + + # Compile one or more objects into a static module and generate a symbol + # list. The .a file we create here is just a placeholder to show that diff --git a/net-irc/ircservices/files/ircservices-5.1.24-parallel-make.patch b/net-irc/ircservices/files/ircservices-5.1.24-parallel-make.patch new file mode 100644 index 000000000000..910771adcdc5 --- /dev/null +++ b/net-irc/ircservices/files/ircservices-5.1.24-parallel-make.patch @@ -0,0 +1,28 @@ +From: Nathan Phillip Brink <binki@gentoo.org> +Subject: Fix issues of langstrs.h not being built before modules and + tools are, hopefully fixing parallel make. + +diff -r ad64cfd2cacc -r b323b647fe91 Makefile +--- a/Makefile Mon Jun 20 22:29:07 2011 -0400 ++++ b/Makefile Tue Jun 21 00:42:59 2011 -0400 +@@ -115,17 +115,17 @@ + $(CC) $(LFLAGS) $(OBJS) version.o $(MODLIB) $(LIBS) -o $@ + + ifneq ($(STATIC_MODULES),) +-modules: ++modules: langstrs.h + @$(MAKE) -C modules all-static CFLAGS="$(CFLAGS)" + else +-modules: ++modules: langstrs.h + @$(MAKE) -C modules all-dynamic CFLAGS="$(CFLAGS)" + endif + + languages: + @$(MAKE) -C lang CFLAGS="$(CFLAGS)" + +-tools: services.h ++tools: langstrs.h services.h + @$(MAKE) -C tools CFLAGS="$(CFLAGS)" + + diff --git a/net-irc/ircservices/files/ircservices.confd b/net-irc/ircservices/files/ircservices.confd new file mode 100644 index 000000000000..6d2bc475ca14 --- /dev/null +++ b/net-irc/ircservices/files/ircservices.confd @@ -0,0 +1,11 @@ +# -*- mode: sh; -*- + +# The user which ircservices should be run as. Set to an empty value +# to have ircservices run as the user the initscript is run as (which +# is generally bad practice). +IRCSERVICES_USER=ircservices + +# The location of the pidfile (as written in ircservices.conf). If the +# directory containing the pidfile does not exist, and attempt will be +# made to create that folder and set its owner to IRCSERVICES_USER. +IRCSERVICES_PIDFILE=/var/run/ircservices/ircservices.pid diff --git a/net-irc/ircservices/files/ircservices.initd b/net-irc/ircservices/files/ircservices.initd new file mode 100644 index 000000000000..0bc561c7203c --- /dev/null +++ b/net-irc/ircservices/files/ircservices.initd @@ -0,0 +1,31 @@ +#!/sbin/runscript +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later +# $Header: /var/cvsroot/gentoo-x86/net-irc/ircservices/files/ircservices.initd,v 1.1 2011/06/27 23:55:00 binki Exp $ + +depend() { + need net + use ircd + provide irc-services +} + +start() { + IRCSERVICES_RUNDIR="${IRCSERVICES_PIDFILE%/*}" + if ! [ -d "${IRCSERVICES_RUNDIR}" ]; then + ebegin "Creating ${IRCSERVICES_RUNDIR} for ${SVCNAME}" + mkdir "${IRCSERVICES_RUNDIR}" && chown "${IRCSERVICES_USER}" "${IRCSERVICES_RUNDIR}" + eend $? + fi + + ebegin "Starting ${SVCNAME}" + start-stop-daemon --start --chuid ircservices --exec /usr/bin/ircservices -- \ + -dir=/var/lib/ircservices \ + -log=/var/log/ircservices/ircservices.log + eend $? +} + +stop() { + ebegin "Stopping ${SVCNAME}" + start-stop-daemon --stop --pidfile "${IRCSERVICES_PIDFILE}" + eend $? +} diff --git a/net-irc/ircservices/ircservices-5.1.24.ebuild b/net-irc/ircservices/ircservices-5.1.24.ebuild new file mode 100644 index 000000000000..825f9df5339b --- /dev/null +++ b/net-irc/ircservices/ircservices-5.1.24.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-irc/ircservices/ircservices-5.1.24.ebuild,v 1.1 2011/06/27 23:55:00 binki Exp $ + +EAPI=4 + +inherit eutils fixheadtails flag-o-matic prefix toolchain-funcs + +DESCRIPTION="ChanServ, NickServ, and MemoServ with support for several IRC daemons" +HOMEPAGE="http://achurch.org/services/" +SRC_URI="http://achurch.org/services/tarballs/${P}.tar.gz" +LICENSE="GPL-2 FDL-1.2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="" + +pkg_setup() { + enewgroup ircservices + enewuser ircservices -1 -1 -1 ircservices + + # this is needed, because old ebuilds added the user with ircservices:users + usermod -g ircservices ircservices +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-5.1.17-fPIC.patch \ + "${FILESDIR}"/${PN}-5.1.17-fPIC-configure.patch \ + "${FILESDIR}"/${P}-ircservices-chk-pidfile.patch \ + "${FILESDIR}"/${P}-parallel-make.patch \ + "${FILESDIR}"/${P}-ldflags.patch \ + "${FILESDIR}"/${P}-as-needed.patch \ + "${FILESDIR}"/${P}-fd_set-amd64.patch + + ht_fix_file configure + sed -i \ + -e "s/-m 750/-m 755/" \ + -e "s/-m 640/-m 644/" \ + configure || die + + sed -i -e "s;ircservices.pid;${EPREFIX}/var/run/ircservices/&;g" data/example-ircservices.conf || die +} + +src_configure() { + append-flags -fno-stack-protector + # configure fails with -O higher than 2 + replace-flags "-O[3-9s]" "-O2" + + RUNGROUP="ircservices" \ + ./configure \ + -cc "$(tc-getCC)" \ + -cflags "${CFLAGS}" \ + -lflags "${LDFLAGS}" \ + -bindest /usr/bin \ + -datdest /var/lib/ircservices \ + || die "./configure failed" +} + +src_install() { + dodir /usr/bin /{etc,usr/{$(get_libdir),share},var/lib}/ircservices + keepdir /var/log/ircservices + + emake \ + BINDEST="${D}"/usr/bin \ + DATDEST="${D}"/var/lib/ircservices \ + install + + mv "${D}"/var/lib/ircservices/convert-db "${D}"/usr/bin/ircservices-convert-db || die "mv failed" + + # Now we move some files around to make it FHS conform + mv "${D}"/var/lib/ircservices/example-ircservices.conf "${D}"/etc/ircservices/ircservices.conf || die "mv failed" + dosym /etc/ircservices/ircservices.conf /var/lib/ircservices/ircservices.conf + + mv "${D}"/var/lib/ircservices/example-modules.conf "${D}"/etc/ircservices/modules.conf || die "mv failed" + dosym /etc/ircservices/modules.conf /var/lib/ircservices/modules.conf + + mv "${D}"/var/lib/ircservices/modules "${D}"/usr/$(get_libdir)/ircservices || die "mv failed" + dosym /usr/$(get_libdir)/ircservices/modules /var/lib/ircservices/modules + + mv "${D}"/var/lib/ircservices/{helpfiles,languages} "${D}"/usr/share/ircservices || die "mv failed" + dosym /usr/share/ircservices/helpfiles /var/lib/ircservices/helpfiles + dosym /usr/share/ircservices/languages /var/lib/ircservices/languages + + fperms 750 /var/{lib,log}/ircservices /etc/ircservices + fperms 640 /etc/ircservices/{ircservices,modules}.conf + fowners ircservices:ircservices /var/{lib,log}/ircservices + fowners root:ircservices /etc/ircservices{,/{ircservices,modules}.conf} + + newinitd "${FILESDIR}"/ircservices.initd ircservices + newconfd "${FILESDIR}"/ircservices.confd ircservices + + doman docs/ircservices*.8 + newman docs/convert-db.8 ircservices-convert-db.8 + + dohtml -r docs/* + dodoc docs/Changes* README docs/WhatsNew +} |