OpenPKG CVS Repository http://cvs.openpkg.org/ ____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall Root: /v/openpkg/cvs Email: [EMAIL PROTECTED] Module: openpkg-src Date: 11-Apr-2005 21:54:41 Branch: HEAD Handle: 2005041120544100 Added files: openpkg-src/ratbox ratbox.patch ratbox.spec rc.ratbox Log: new package: ratbox 2.0.8 (Internet Relay Chat (IRC) Server) Summary: Revision Changes Path 1.1 +24 -0 openpkg-src/ratbox/ratbox.patch 1.1 +215 -0 openpkg-src/ratbox/ratbox.spec 1.1 +71 -0 openpkg-src/ratbox/rc.ratbox ____________________________________________________________________________ patch -p0 <<'@@ .' Index: openpkg-src/ratbox/ratbox.patch ============================================================================ $ cvs diff -u -r0 -r1.1 ratbox.patch --- /dev/null 2005-04-11 21:45:06 +0200 +++ ratbox.patch 2005-04-11 21:54:41 +0200 @@ -0,0 +1,24 @@ +Index: ircd-ratbox-2.0.8/modules/Makefile.in +--- ircd-ratbox-2.0.8/modules/Makefile.in.orig 2005-01-14 18:25:51 +0100 ++++ ircd-ratbox-2.0.8/modules/Makefile.in 2005-04-11 21:44:28 +0200 +@@ -182,7 +182,7 @@ + ${CC} ${CPPFLAGS} ${CFLAGS} -DMODNAME=`basename $< .c`_mheader -c $< -o $@ + + .c.so: +- ${CC} ${PICFLAGS} ${CPPFLAGS} ${CFLAGS} $< -o $@ ++ ${CC} ${PICFLAGS} ${CPPFLAGS} ${CFLAGS} $< -o $@ ${IRCDLIBS} + + .so.sl: + $(LD) -b $< -o $@ +Index: ratbox-services-1.0beta1/src/Makefile.in +--- ratbox-services-1.0beta1/src/Makefile.in.orig 2005-01-04 20:58:50 +0100 ++++ ratbox-services-1.0beta1/src/Makefile.in 2005-04-11 21:41:39 +0200 +@@ -12,7 +12,7 @@ + INCLUDES=-I ../include/ @SQLITE_INCLUDES@ + [EMAIL PROTECTED]@ + [EMAIL PROTECTED]@ +-CFLAGS=-g -O0 -Wall -Werror -Wunused -Wshadow -Wmissing-declarations -Wwrite-strings -DPREFIX=\"$(PREFIX)\" [EMAIL PROTECTED]@ @CFLAGS@ -g -O0 -Wall -Werror -Wunused -Wshadow -Wmissing-declarations -Wwrite-strings -DPREFIX=\"$(PREFIX)\" + MAKE = make + + # Anything marked with the .PHONY attribute is always considered "out of date" @@ . patch -p0 <<'@@ .' Index: openpkg-src/ratbox/ratbox.spec ============================================================================ $ cvs diff -u -r0 -r1.1 ratbox.spec --- /dev/null 2005-04-11 21:45:06 +0200 +++ ratbox.spec 2005-04-11 21:54:41 +0200 @@ -0,0 +1,215 @@ +## +## ratbox.spec -- OpenPKG RPM Package Specification +## Copyright (c) 2000-2005 OpenPKG Foundation e.V. <http://openpkg.net/> +## Copyright (c) 2000-2005 Ralf S. Engelschall <http://engelschall.com/> +## +## Permission to use, copy, modify, and distribute this software for +## any purpose with or without fee is hereby granted, provided that +## the above copyright notice and this permission notice appear in all +## copies. +## +## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED +## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR +## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +## SUCH DAMAGE. +## + +# package version +%define V_server 2.0.8 +%define V_services 1.0beta1 + +# package information +Name: ratbox +Summary: Internet Relay Chat (IRC) Server +URL: http://www.ircd-ratbox.org/ +Vendor: A. Sethman, L. Hardy, E. Brocklesby et al. +Packager: OpenPKG +Distribution: OpenPKG +Class: EVAL +Group: Network +License: GPL +Version: %{V_server} +Release: 20050411 + +# list of sources +Source0: ftp://ftp.ircd-ratbox.org/pub/ircd-ratbox/ircd-ratbox-%{V_server}.tgz +Source1: ftp://ftp.ircd-ratbox.org/pub/ircd-ratbox/ratbox-services/ratbox-services-%{V_services}.tgz +Source2: rc.ratbox +Patch0: ftp://ftp.ircd-ratbox.org/pub/ircd-ratbox/ircd-ratbox-%{V_server}+unxr.diff +Patch1: ratbox.patch + +# build information +Prefix: %{l_prefix} +BuildRoot: %{l_buildroot} +BuildPreReq: OpenPKG, openpkg >= 20040130, bison, flex +PreReq: OpenPKG, openpkg >= 20040130 +BuildPreReq: openssl, zlib, sqlite +PreReq: openssl, zlib, sqlite +AutoReq: no +AutoReqProv: no + +%description + IRCD-Ratbox is an advanced, stable, fast Internet Relay Chat (IRC) + server. It is an evolution where ircd-hybrid left off. It supports + the TS5 and TS6 protocols, and is used on EFnet and other IRC + networks. This package also includes the Ratbox Services add-on. + +%track + prog ratbox = { + version = %{V_server} + url = ftp://ftp.ircd-ratbox.org/pub/ircd-ratbox/ + regex = ircd-ratbox-(__VER__)\.tar\.gz + } + prog ratbox:services = { + version = %{V_services} + url = ftp://ftp.ircd-ratbox.org/pub/ircd-ratbox/ratbox-services/ + regex = ratbox-services-(__VER__)\.tar\.gz + } + +%prep + %setup -q -c + %setup -q -T -D -a 1 + %patch -p0 -d ircd-ratbox-%{V_server} + %patch -p0 -P 1 + +%build + # build IRC server + ( cd ircd-ratbox-%{V_server} + %{l_shtool} subst \ + -e 's;"/ircd\.;"/server.;g' \ + -e 's;"/ircd";"/ratbox-ircd";g' \ + -e 's;ETCPATH "/server\.pid";LOGPATH "/server.pid";' \ + include/config.h include/config.h.dist + CC="%{l_cc}" \ + CFLAGS="%{l_cflags -O}" \ + CPPFLAGS="%{l_cppflags}" \ + LDFLAGS="%{l_ldflags}" \ + ./configure \ + --prefix=%{l_prefix} \ + --with-confdir=%{l_prefix}/etc/ratbox \ + --with-logdir=%{l_prefix}/var/ratbox \ + --with-helpdir=%{l_prefix}/share/ratbox \ + --with-moduledir=%{l_prefix}/libexec/ratbox \ + --enable-openssl=%{l_prefix} \ + --enable-zlib \ + --with-zlib-path=%{l_prefix} \ + --enable-small-net \ + --enable-shared-modules + %{l_make} %{l_mflags -O} + ) || exit $? + + # build IRC services + ( cd ratbox-services-%{V_services} + %{l_shtool} subst \ + -e 's;PREFIX "/services.conf";"%{l_prefix}/etc/ratbox/services.conf";' \ + -e 's;PREFIX "/services.pid";"%{l_prefix}/var/ratbox/services.pid";' \ + -e 's;LOG_DIR "/services.log";"%{l_prefix}/var/ratbox/services.log";' \ + -e 's;PREFIX "/services.db";"%{l_prefix}/var/ratbox/services.db";' \ + -e 's;PREFIX "/help/";"%{l_prefix}/share/ratbox/services/help/";' \ + include/config.h + CC="%{l_cc}" \ + CFLAGS="%{l_cflags -O}" \ + CPPFLAGS="%{l_cppflags}" \ + LDFLAGS="%{l_ldflags}" \ + ./configure \ + --prefix=%{l_prefix} \ + --with-sqlite=%{l_prefix} + %{l_make} %{l_mflags -O} + ) || exit $? + +%install + rm -rf $RPM_BUILD_ROOT + + # install IRC server + ( cd ircd-ratbox-%{V_server} + %{l_shtool} subst \ + -e 's;ln -s ;ln $(DESTDIR);g' \ + help/Makefile + %{l_shtool} mkdir -f -p -m 755 \ + $RPM_BUILD_ROOT%{l_prefix}/bin \ + $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox \ + $RPM_BUILD_ROOT%{l_prefix}/libexec/ratbox \ + $RPM_BUILD_ROOT%{l_prefix}/share/ratbox \ + $RPM_BUILD_ROOT%{l_prefix}/var/ratbox + %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT + rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/convert* + for bin in ircd mkpasswd servlink viconf viklines vimotd; do + mv $RPM_BUILD_ROOT%{l_prefix}/bin/$bin \ + $RPM_BUILD_ROOT%{l_prefix}/bin/ratbox-$bin + done + rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox/example.efnet.conf + mv $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox/example.conf \ + $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox/server.conf + mv $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox/ircd.motd \ + $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox/server.motd + mv $RPM_BUILD_ROOT%{l_prefix}/man/man8/ircd.8 \ + $RPM_BUILD_ROOT%{l_prefix}/man/man8/ratbox-ircd.8 + %{l_shtool} subst \ + -e 's;/usr/local/ircd/modules;%{l_prefix}/libexec/ratbox;g' \ + $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox/server.conf + ) || exit $? + + # install IRC services + ( cd ratbox-services-%{V_services} + %{l_make} %{l_mflags} install PREFIX=$RPM_BUILD_ROOT%{l_prefix}/share/ratbox/services + mv $RPM_BUILD_ROOT%{l_prefix}/share/ratbox/services/ratbox-services \ + $RPM_BUILD_ROOT%{l_prefix}/bin/ratbox-services + mv $RPM_BUILD_ROOT%{l_prefix}/share/ratbox/services/example.conf \ + $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox/services.conf + rmdir $RPM_BUILD_ROOT%{l_prefix}/share/ratbox/services/logs + ) || exit $? + + # post-adjust installation + rmdir $RPM_BUILD_ROOT%{l_prefix}/libexec/ratbox-old + rmdir $RPM_BUILD_ROOT%{l_prefix}/share/ratbox-old + strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true + chmod 755 $RPM_BUILD_ROOT%{l_prefix}/bin/* + chmod 644 $RPM_BUILD_ROOT%{l_prefix}/etc/ratbox/* + + # install run-command script + %{l_shtool} mkdir -f -p -m 755 \ + $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d + %{l_shtool} install -c -m 755 %{l_value -s -a} \ + %{SOURCE rc.ratbox} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/ + + # determine installation files + %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \ + %{l_files_std} \ + '%config %{l_prefix}/etc/ratbox/*' \ + '%attr(-,%{l_rusr},%{l_rgrp}) %{l_prefix}/var/ratbox' + +%files -f files + +%clean + rm -rf $RPM_BUILD_ROOT + +%post + # on initial installation, create database + if [ $1 -eq 1 ]; then + $RPM_INSTALL_PREFIX/bin/sqlite \ + $RPM_INSTALL_PREFIX/var/ratbox/services.db \ + <$RPM_INSTALL_PREFIX/share/ratbox/services/schema.txt + chown %{l_rusr}:%{l_rgrp} $RPM_INSTALL_PREFIX/var/ratbox/services.db + fi + + # after upgrade, restart service + [ $1 -eq 2 ] || exit 0 + eval `%{l_rc} ratbox status 2>/dev/null` + [ ".$ratbox_active" = .yes ] && %{l_rc} ratbox restart + exit 0 + +%preun + # before erase, stop service and remove log files + [ $1 -eq 0 ] || exit 0 + %{l_rc} ratbox stop 2>/dev/null + rm -f $RPM_INSTALL_PREFIX/var/ratbox/* >/dev/null 2>&1 || true + exit 0 + @@ . patch -p0 <<'@@ .' Index: openpkg-src/ratbox/rc.ratbox ============================================================================ $ cvs diff -u -r0 -r1.1 rc.ratbox --- /dev/null 2005-04-11 21:45:06 +0200 +++ rc.ratbox 2005-04-11 21:54:41 +0200 @@ -0,0 +1,71 @@ [EMAIL PROTECTED]@/lib/openpkg/bash @l_prefix@/etc/rc +## +## rc.ratbox -- Run-Commands +## + +%config + ratbox_enable="$openpkg_rc_def" + ratbox_server_flags="" + ratbox_services_flags="" + ratbox_log_prolog="true" + ratbox_log_epilog="true" + ratbox_log_numfiles="10" + ratbox_log_minsize="1M" + ratbox_log_complevel="9" + +%common + ratbox_server_logfile="@l_prefix@/var/ratbox/server.log" + ratbox_server_pidfile="@l_prefix@/var/ratbox/server.pid" + ratbox_server_signal () { + [ -f $ratbox_server_pidfile ] && kill -$1 `cat $ratbox_server_pidfile` + } + ratbox_services_logfile="@l_prefix@/var/ratbox/services.log" + ratbox_services_pidfile="@l_prefix@/var/ratbox/services.pid" + ratbox_services_signal () { + [ -f $ratbox_services_pidfile ] && kill -$1 `cat $ratbox_services_pidfile` + } + +%status -u @l_rusr@ -o + ratbox_usable="no" + ratbox_active="no" + rcService ratbox enable yes && ratbox_server_signal 0 && ratbox_active="yes" + @l_prefix@/sbin/ratbox-ircd -conftest >/dev/null 2>&1 && ratbox_usable="yes" + echo "ratbox_enable=\"$ratbox_enable\"" + echo "ratbox_usable=\"$ratbox_usable\"" + echo "ratbox_active=\"$ratbox_active\"" + +%start -u @l_rusr@ + rcService ratbox enable yes || exit 0 + rcService ratbox active yes && exit 0 + @l_prefix@/bin/ratbox-ircd ${ratbox_server_flags} + @l_prefix@/bin/ratbox-services ${ratbox_services_flags} + +%stop -u @l_rusr@ + rcService ratbox enable yes || exit 0 + rcService ratbox active no && exit 0 + ratbox_server_signal TERM + ratbox_services_signal TERM + sleep 2 + rm -f $ratbox_server_pidfile >/dev/null 2>&1 || true + rm -f $ratbox_services_pidfile >/dev/null 2>&1 || true + +%restart -u @l_rusr@ + rcService ratbox enable yes || exit 0 + rcService ratbox active no && exit 0 + rc ratbox stop start + +%daily -u @l_rusr@ + rcService ratbox enable yes || exit 0 + shtool rotate -f \ + -n ${ratbox_log_numfiles} -s ${ratbox_log_minsize} -d \ + -z ${ratbox_log_complevel} -m 644 -o @l_rusr@ -g @l_rgrp@ \ + -P "${ratbox_log_prolog}" \ + -E "${ratbox_log_epilog}; rc ratbox reload" \ + $ratbox_server_logfile + shtool rotate -f \ + -n ${ratbox_log_numfiles} -s ${ratbox_log_minsize} -d \ + -z ${ratbox_log_complevel} -m 644 -o @l_rusr@ -g @l_rgrp@ \ + -P "${ratbox_log_prolog}" \ + -E "${ratbox_log_epilog}; rc ratbox reload" \ + $ratbox_services_logfile + @@ . ______________________________________________________________________ The OpenPKG Project www.openpkg.org CVS Repository Commit List openpkg-cvs@openpkg.org