OBJS = actions.o base64.o bots.o botserv.o channels.o chanserv.o command.o commands.o compat.o \ config.o encrypt.o hashcomp.o hostserv.o init.o ircd.o language.o log.o mail.o main.o \ memory.o memoserv.o messages.o misc.o modules.o nickserv.o operserv.o \ process.o protocol.o send.o servers.o sessions.o slist.o sockets.o opertype.o users.o module.o modulemanager.o configreader.o \ wildcard.o nickcore.o nickalias.o timers.o modes.o regchannel.o INCLUDES = ../include/commands.h ../include/defs.h ../include/language.h \ ../include/pseudo.h ../include/sysconf.h ../include/config.h \ ../include/messages.h ../include/services.h \ ../include/timers.h ../include/extern.h \ ../include/modules.h ../include/slist.h ../include/hashcomp.h MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'ANOPELIBS=${ANOPELIBS}' \ 'LDFLAGS=${LDFLAGS}' 'INSTDIR=${INSTDIR}' 'INSTALL=${INSTALL}' \ 'INCLUDEDIR=${INCLUDEDIR}' 'RM=${RM}' 'CP=${CP}' \ 'TOUCH=${TOUCH}' 'SHELL=${SHELL}' \ 'RUNGROUP=${RUNGROUP}' \ 'SHARED=${SHARED}' 'MODULEFLAGS=${MODULEFLAGS}' \ 'MAKEBIN=${MAKEBIN}' 'MYSQLDIR=${MYSQLDIR}' .c.o: $(MAKEBIN) $(CC) $(CFLAGS) -I../include/ -c $< .cpp.o: $(MAKEBIN) $(CC) $(CFLAGS) -I../include/ -c $< all: services distclean: spotless distclean_modules: clean_modules spotless services: $(OBJS) $(MAKEBIN) $(CC) $(CFLAGS) $(OBJS) $(ANOPELIBS) $(MLIBS) -o $@ $(LDFLAGS) $(OBJS): Makefile modes.o: modes.cpp $(INCLUDES) timers.o: timers.cpp $(INCLUDES) nickcore.o: nickcore.cpp $(INCLUDES) nickalias.o: nickalias.cpp $(INCLUDES) actions.o: actions.c $(INCLUDES) base64.o: base64.c $(INCLUDES) bots.o: bots.cpp $(INCLUDES) botserv.o: botserv.c $(INCLUDES) channels.o: channels.c $(INCLUDES) chanserv.o: chanserv.c $(INCLUDES) command.o: command.cpp $(INCLUDES) commands.o: commands.c $(INCLUDES) compat.o: compat.c $(INCLUDES) config.o: config.c $(INCLUDES) encrypt.o: encrypt.c $(INCLUDES) init.o: init.c $(INCLUDES) ircd.o: ircd.c $(INCLUDES) hostserv.o: hostserv.c $(INCLUDES) language.o: language.c $(INCLUDES) log.o: log.c $(INCLUDES) mail.o: mail.c $(INCLUDES) main.o: main.c $(INCLUDES) memory.o: memory.c $(INCLUDES) memoserv.o: memoserv.c $(INCLUDES) messages.o: messages.c $(INCLUDES) modules.o: modules.c $(INCLUDES) module.o: module.cpp $(INCLUDES) modulemanager.o: modulemanager.cpp $(INCLUDES) misc.o: misc.c $(INCLUDES) nickserv.o: nickserv.c $(INCLUDES) operserv.o: operserv.c $(INCLUDES) process.o: process.c $(INCLUDES) protocol.o: protocol.cpp $(INCLUDES) regchannel.o: regchannel.cpp $(INCLUDES) send.o: send.c $(INCLUDES) servers.o: servers.c $(INCLUDES) sessions.o: sessions.c $(INCLUDES) slist.o: slist.c $(INCLUDES) sockets.o: sockets.cpp $(INCLUDES) opertype.o: opertype.cpp $(INCLUDES) users.o: users.c $(INCLUDES) vsnprintf.o: vsnprintf.c $(INCLUDES) wildcard.o: wildcard.cpp $(INCLUDES) modules: DUMMY @modules/configure modules @${MAKE} -C modules ${MAKEARGS} all protocols: DUMMY @protocol/configure protocol @${MAKE} -C protocol ${MAKEARGS} all core: DUMMY @core/configure core @${MAKE} -C core ${MAKEARGS} all clean: clean_modules clean_protocols clean_core rm -f *.o services a.out clean_modules: @touch modules/Makefile.inc # Horribly ugly... @${MAKE} -C modules clean clean_protocols: @touch protocol/Makefile.inc @${MAKE} -C protocol clean clean_core: @touch core/Makefile.inc @${MAKE} -C core clean spotless: @${MAKE} -C modules distclean @${MAKE} -C protocol distclean @${MAKE} -C core distclean install: services test -d ${INSTDIR} || mkdir ${INSTDIR} test -d ${INSTDIR}/bin || mkdir ${INSTDIR}/bin $(INSTALL) services $(INSTDIR)/bin/services $(INSTALL) bin/anoperc $(INSTDIR)/bin/anoperc test -d ${INSTDIR}/data || mkdir ${INSTDIR}/data (cd ../lang ; $(MAKE) install) $(CP) ../data/*.* $(INSTDIR)/data $(INSTALL) bin/mydbgen $(INSTDIR)/bin/mydbgen test -d $(INSTDIR)/data/backups || mkdir $(INSTDIR)/data/backups test -d $(INSTDIR)/data/logs || mkdir $(INSTDIR)/data/logs @if [ "$(INSTDIR)/data/modules" ] ; then \ test -d ${INSTDIR}/data/modules || mkdir ${INSTDIR}/data/modules ; \ test -d ${INSTDIR}/data/modules/runtime || mkdir ${INSTDIR}/data/modules/runtime ; \ (cd modules ; $(MAKE) install) ; \ (cd protocol ; ${MAKE} install) ; \ (cd core ; ${MAKE} install) ; \ fi @if [ "$(RUNGROUP)" ] ; then \ echo chgrp -R $(RUNGROUP) $(INSTDIR)/data ; \ chgrp -R $(RUNGROUP) $(INSTDIR)/data ; \ echo chmod -R g+rw $(INSTDIR)/data ; \ chmod -R g+rw $(INSTDIR)/data ; \ echo find $(INSTDIR)/data -type d -exec chmod g+xs \'\{\}\' \\\; ; \ find $(INSTDIR)/data -type d -exec chmod g+xs '{}' \; ; \ fi DUMMY: