#### Start of system configuration section. ####
+prefix = @prefix@
srcdir = @srcdir@
VPATH = @srcdir@
#### End of system configuration section. ####
SUBDIRS = doc ircd
+MAKEFILES = Makefile doc/Makefile ircd/Makefile
all: build
# Some versions of make give a warning when this is empty:
.SUFFIXES: .dummy
-build:
+build: ${MAKEFILES}
@for i in ${SUBDIRS}; do \
echo "Building $$i..."; \
cd $$i; ${MAKE} build; cd ..; \
test -n "$$REMOVE_FILES" && ${RM} -f $$REMOVE_FILES; \
done || true
-sub-clean:
+sub-clean: ${MAKEFILES}
@for i in ${SUBDIRS}; do \
echo "Cleaning $$i..."; \
cd $$i; ${MAKE} clean; cd ..;\
test -n "$$REMOVE_FILES" && ${RM} -f $$REMOVE_FILES; \
done || true
-sub-distclean:
+sub-distclean: ${MAKEFILES}
@for i in ${SUBDIRS}; do \
echo "Dist-cleaning $$i..."; \
cd $$i; ${MAKE} distclean; cd ..;\
${RM} -f Makefile config.h config.log config.cache config.status \
stamp-h
-maintainer-clean: root-distclean
+maintainer-clean: root-distclean ${MAKEFILES}
@for i in ${SUBDIRS}; do \
echo "maintainer-cleaning $$i..."; \
cd $$i; ${MAKE} maintainer-clean; cd ..;\
done
-depend:
+depend: ${MAKEFILES}
@for i in ${SUBDIRS}; do \
echo "Making dependencies in $$i..."; \
cd $$i; ${MAKE} depend; cd ..; \
done
-install:
+install: ${MAKEFILES}
+ test -d ${prefix} || mkdir ${prefix}
@for i in ${SUBDIRS}; do \
echo "Installing $$i..."; \
cd $$i; ${MAKE} install; cd ..; \
done
-uninstall:
+uninstall: ${MAKEFILES}
@for i in ${SUBDIRS}; do \
echo "Uninstalling $$i..."; \
cd $$i; ${MAKE} uninstall; cd ..; \
CC = @CC@
CFLAGS = @CFLAGS@
-CPPFLAGS = -I.. -I${top_srcdir}/include @CPPFLAGS@
+CPPFLAGS = -I. -I.. -I${top_srcdir}/include @CPPFLAGS@
LDFLAGS = @LDFLAGS@
LIBS = @LIBS@
# only that one sum?
#
version.c: version.c.SH s_serv.c s_user.c channel.c s_bsd.c s_misc.c ircd.c
- ${SHELL} version.c.SH
+ ${SHELL} ${srcdir}/version.c.SH
ircd_string.o: ircd_string.c chattr.tab.c
./table_gen > chattr.tab.c
chkcrule.o: crule.c
- ${CC} ${CFLAGS} ${CPPFLAGS} -DCR_CHKCONF -o chkcrule.o -c crule.c
+ ${CC} ${CFLAGS} ${CPPFLAGS} -DCR_CHKCONF -o chkcrule.o -c \
+ ${srcdir}/crule.c
chkconf: chkconf.o fda.o match.o chkcrule.o ircd_alloc.o fileio.o ircd_string.o
${CC} chkconf.o fda.o match.o chkcrule.o ircd_alloc.o fileio.o \
ircd_string.o ${LDFLAGS} ${LIBS} -o chkconf
+mkbindir:
+ @test -d ${BINDIR} || mkdir ${BINDIR}
+
install: ${INSTALL_RULE}
-install-with-symlink: build
+install-with-symlink: build mkbindir
@if [ ! -d ${DPATH} -a ! -f ${DPATH} ]; then \
echo "Creating directory ${DPATH}"; \
${MKDIR} ${DPATH}; \
${LN_S} ircd.`cat /tmp/ircd.tag` ${SYMLINK}; )
@${RM} /tmp/ircd.tag
${INSTALL} -s -m 700 -o ${IRCDOWN} -g ${IRCDGRP} chkconf ${BINDIR}
- ${INSTALL} -m 600 -o ${IRCDOWN} -g ${IRCDGRP} ../doc/example.conf ${DPATH}
+ ${INSTALL} -m 600 -o ${IRCDOWN} -g ${IRCDGRP} ${top_srcdir}/doc/example.conf ${DPATH}
# ( cd ${DPATH}; \
# ${TOUCH} ${MPATH}; \
# ${TOUCH} ${RPATH}; \
# ${CHOWN} ${IRCDOWN} ${MPATH} ${RPATH}; \
# ${CHGRP} ${IRCDGRP} ${MPATH} ${RPATH}; )
-install-no-symlink: build
+install-no-symlink: build mkbindir
@if [ ! -d ${DPATH} -a ! -f ${DPATH} ]; then \
echo "Creating directory ${DPATH}"; \
${MKDIR} ${DPATH}; \
@echo "Installing new ircd as ${BINDIR}/ircd :"
${INSTALL} -m ${IRCDMODE} -o ${IRCDOWN} -g ${IRCDGRP} ircd ${BINDIR}/ircd
${INSTALL} -s -m 700 -o ${IRCDOWN} -g ${IRCDGRP} chkconf ${BINDIR}
- ${INSTALL} -m 600 -o ${IRCDOWN} -g ${IRCDGRP} ../doc/example.conf ${DPATH}
+ ${INSTALL} -m 600 -o ${IRCDOWN} -g ${IRCDGRP} ${top_srcdir}/doc/example.conf ${DPATH}
# ( cd ${DPATH}; \
# ${TOUCH} ${MPATH}; \
# ${TOUCH} ${RPATH}; \
# If I read this right, this will only work with gcc. Still, how many admins
# are going to be doing "make depend"?
depend:
- @if [ -f Makefile.in.bak ]; then \
+ @cd ${srcdir}; \
+ if [ -f Makefile.in.bak ]; then \
echo "make depend: First remove ircd/Makefile.in.bak"; \
else \
( ${MV} Makefile.in Makefile.in.bak; \
../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \
../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \
../include/struct.h ../include/ircd_alloc.h ../include/fda.h \
- ../include/ircd_log.h ../include/ircd_reply.h \
- ../include/ircd_string.h ../include/ircd_chattr.h ../include/match.h \
- ../include/numeric.h ../include/s_bsd.h ../include/s_debug.h \
- ../include/s_misc.h ../include/send.h ../include/support.h \
- ../include/msg.h ../include/numnicks.h ../include/sys.h
+ ../include/ircd_features.h ../include/ircd_log.h \
+ ../include/ircd_policy.h ../include/ircd_reply.h \
+ ../include/ircd_snprintf.h ../include/ircd_string.h \
+ ../include/ircd_chattr.h ../include/match.h ../include/numeric.h \
+ ../include/s_bsd.h ../include/s_debug.h ../include/s_misc.h \
+ ../include/send.h ../include/support.h ../include/msg.h \
+ ../include/numnicks.h ../include/sys.h ../include/whocmds.h
hash.o: hash.c ../config.h ../include/hash.h ../include/client.h \
../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \
../include/ircd_events.h ../include/ircd_handler.h \
../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \
../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \
../include/ircd.h ../include/struct.h ../include/ircd_alloc.h \
- ../include/fda.h ../include/ircd_log.h ../include/ircd_reply.h \
- ../include/ircd_string.h ../include/ircd_chattr.h ../include/match.h \
- ../include/msg.h ../include/numeric.h ../include/numnicks.h \
- ../include/s_bsd.h ../include/s_misc.h ../include/send.h \
- ../include/support.h ../include/sys.h
+ ../include/fda.h ../include/ircd_log.h ../include/ircd_policy.h \
+ ../include/ircd_reply.h ../include/ircd_string.h \
+ ../include/ircd_chattr.h ../include/match.h ../include/msg.h \
+ ../include/numeric.h ../include/numnicks.h ../include/s_bsd.h \
+ ../include/s_misc.h ../include/send.h ../include/support.h \
+ ../include/sys.h
list.o: list.c ../config.h ../include/list.h ../include/client.h \
../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \
../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \
../include/IPcheck.h ../include/channel.h ../include/ircd_defs.h \
../include/class.h ../include/client.h ../include/dbuf.h \
../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \
- ../include/gline.h ../include/hash.h ../include/ircd.h \
- ../include/struct.h ../include/ircd_alloc.h ../include/fda.h \
- ../include/ircd_chattr.h ../include/ircd_features.h \
- ../include/ircd_log.h ../include/ircd_policy.h \
- ../include/ircd_reply.h ../include/ircd_string.h ../include/list.h \
- ../include/match.h ../include/motd.h ../include/msg.h \
- ../include/numeric.h ../include/numnicks.h ../include/parse.h \
- ../include/querycmds.h ../include/random.h ../include/s_bsd.h \
- ../include/s_conf.h ../include/s_debug.h ../include/s_misc.h \
- ../include/s_serv.h ../include/send.h ../include/sprintf_irc.h \
- ../include/support.h ../include/supported.h ../include/sys.h \
- ../include/userload.h ../include/version.h ../include/whowas.h \
- ../include/handlers.h
+ ../include/hash.h ../include/ircd.h ../include/struct.h \
+ ../include/ircd_alloc.h ../include/fda.h ../include/ircd_chattr.h \
+ ../include/ircd_features.h ../include/ircd_log.h \
+ ../include/ircd_policy.h ../include/ircd_reply.h \
+ ../include/ircd_string.h ../include/list.h ../include/match.h \
+ ../include/motd.h ../include/msg.h ../include/numeric.h \
+ ../include/numnicks.h ../include/parse.h ../include/querycmds.h \
+ ../include/random.h ../include/s_bsd.h ../include/s_conf.h \
+ ../include/s_debug.h ../include/s_misc.h ../include/s_serv.h \
+ ../include/send.h ../include/sprintf_irc.h ../include/support.h \
+ ../include/supported.h ../include/sys.h ../include/userload.h \
+ ../include/version.h ../include/whowas.h ../include/handlers.h
send.o: send.c ../config.h ../include/send.h ../include/channel.h \
../include/ircd_defs.h ../include/class.h ../include/client.h \
../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \
../include/channel.h ../include/ircd_defs.h ../include/client.h \
../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \
../include/ircd_handler.h ../include/hash.h ../include/ircd.h \
- ../include/struct.h ../include/ircd_chattr.h ../include/ircd_reply.h \
+ ../include/struct.h ../include/ircd_chattr.h ../include/ircd_policy.h \
+ ../include/ircd_reply.h ../include/ircd_snprintf.h \
../include/ircd_string.h ../include/list.h ../include/match.h \
../include/numeric.h ../include/numnicks.h ../include/querycmds.h \
../include/ircd_features.h ../include/random.h ../include/s_bsd.h \