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 [email protected]