init
This commit is contained in:
84
ircd/buildm4
Executable file
84
ircd/buildm4
Executable file
@@ -0,0 +1,84 @@
|
||||
#!/bin/sh
|
||||
# IRC - Internet Relay Chat, ircd/buildm4
|
||||
# Copyright (C) 1993 Darren Reed
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 1, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
#
|
||||
# If only this was a perl script...*sigh*
|
||||
#
|
||||
IRCDDIR=$1
|
||||
M4=$IRCDDIR/ircd.m4
|
||||
/bin/rm -f $M4
|
||||
egrep "^#def[^P]*PATCHLEVEL" ../include/patchlevel.h | \
|
||||
sed -e 's/[^\"]*\"\([^\"]*\)\"/define(VERSION,\1)/' >>$M4
|
||||
DEBUG=`egrep "^#define[ ]*DEBUGMODE" ../include/config.h`
|
||||
if [ -n "$DEBUG" ] ; then
|
||||
echo "define(DEBUGMODE,1)" >>$M4
|
||||
else
|
||||
echo "undefine(DEBUGMODE)" >>$M4
|
||||
fi
|
||||
echo -n "define(HOSTNAME," >> $M4
|
||||
echo "`hostname`" | sed -e 's/\([a-zA-Z0-9\-]*\).*/\1)/' >> $M4
|
||||
echo "define(USER,$USER)" >>$M4
|
||||
echo -n 'define(PORT,' >>$M4
|
||||
PORT=`egrep '^#define[ ]*PORT[ ]*[0-9]*' ../include/config.h`
|
||||
echo "$PORT" | sed -e 's/[^0-9]*\([0-9]*\).*/\1)/' >> $M4
|
||||
echo -n 'define(PFREQ,' >>$M4
|
||||
PING=`egrep '^#define[ ]*PINGFREQUENCY[ ]*[0-9]*' ../include/config.h`
|
||||
echo "$PING" | sed -e 's/[^0-9]*\([0-9]*\).*/\1)/' >> $M4
|
||||
echo -n 'define(CFREQ,' >>$M4
|
||||
CONT=`egrep '^#define[ ]*CONNECTFREQUENCY[ ]*[0-9]*' ../include/config.h`
|
||||
echo "$CONT" | sed -e 's/[^0-9]*\([0-9]*\).*/\1)/' >> $M4
|
||||
echo -n "define(MAXSENDQ," >>$M4
|
||||
MAXQ=`egrep '^#define[ ]*MAXSENDQLENGTH[ ]*[0-9]*' ../include/config.h`
|
||||
echo "$MAXQ" | sed -e 's/[^0-9]*\([0-9]*\).*/\1)/' >> $M4
|
||||
echo -n "define(MAXLINKS," >>$M4
|
||||
MAXL=`egrep '^#define[ ]*MAXIMUM_LINKS[ ]*[0-9]* | head -1' \
|
||||
../include/config.h`
|
||||
echo "$MAXL" | sed -e 's/[^0-9]*\([0-9]*\).*/\1)/' >> $M4
|
||||
DOM=`egrep '^domain' /etc/resolv.conf | \
|
||||
sed -e 's/^domain[ ]*\([a-zA-Z\-\.0-9]*\).*/\1/'`
|
||||
echo "define(DOMAIN,$DOM)" >> $M4
|
||||
|
||||
cat >>$M4 <<_EOF_
|
||||
define(CL,\`ifelse(len(\$1),0,0,\$1)')
|
||||
define(HOST,\$1)
|
||||
define(HOSTM,\$1)
|
||||
define(ID,*@\$1)
|
||||
define(PASS,\$1)
|
||||
define(PING,\`ifelse(len(\$1),0,PFREQ,\$1)')
|
||||
define(APORT,\`ifelse(len(\$1),0,PORT,\$1)')
|
||||
define(FREQ,\`ifelse(len(\$1),0,CFREQ,\$1)')
|
||||
define(SENDQ,\`ifelse(len(\$1),0,MAXSENDQ,\$1)')
|
||||
define(MAX,\`ifelse(len(\$1),0,MAXLINKS,\$1)')
|
||||
define(CPORT,\$1)
|
||||
define(SERV,\$1)
|
||||
define(ADMIN,A:\$1:\$2:\$3:\$4:\$5)
|
||||
define(ALLOW,N:\`HOST(\$1)':\`PASS(\$2)':\`SERV(\$3)':\`HOSTM(\$4)':\`CL(\$5)')
|
||||
define(BAN,K:\$1:\$2:\$3)
|
||||
define(CLASS,Y:\$1:\`PING(\$2)':\$3:\`MAX(\$4)':\`SENDQ(\$5)')
|
||||
define(CLIENT,I:\`HOST(\$1)':\`PASS(\$2)':\`ifelse(len(HOST(\$3)),0,\$1,\$3)':\
|
||||
\`APORT(\$4)':\`CL(\$5)')
|
||||
define(CONNECT,C:\`HOST(\$1)':\`PASS(\$2)':\`SERV(\$3)':\
|
||||
\`CPORT(\$4)':\`CL(\$5)')
|
||||
define(ME,M:\$1:\$2:\$3:\$4:\$5)
|
||||
define(HUB,H:\`ifelse(len(\$2),0,*,\$2)':*:\$1)
|
||||
define(LEAF,L:\`ifelse(len(\$2),0,*,\$2)':*:\$1:1)
|
||||
define(SERVER,\`
|
||||
CONNECT(\$1,\$2,\$3,\$5,\$6)
|
||||
ALLOW(\$1,\$2,\$3,\$4,\$6)
|
||||
')
|
||||
_EOF_
|
||||
Reference in New Issue
Block a user