0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-10-15 03:58:53 +02:00
construct/modules/Makefile.in
Elizabeth Jennifer Myers 8aabb973c0 Implement chanroles, as discussed with nenolod.
The theory behind this is that services sends an ENCAP * GRANT #channel
UID :+flagspec message specifying the chanroles the user has. They are
mapped into flag bits and applied to the membership of the user. They
then are restricted or permitted to what they can do based on the
permissions mask regardless of rank.

For backwards compatibility, the default permission bit (without a GRANT
statement) allows a user to to anything an existing op can do ONLY if
they are an op.

Todo: make CHANROLE_STATUS work (the ability to apply +ov to people),
which is at the moment controlled by CHANROLE_MODE.
2011-07-06 13:46:22 -04:00

223 lines
4.6 KiB
Makefile

#
# Makefile.in for ircd/modules
#
# $Id: Makefile.in 3372 2007-04-03 10:18:07Z nenolod $
#
CC = @CC@
AR = @AR@
RANLIB = @RANLIB@
RM = @RM@
SED = @SED@
LEX = @LEX@
LEXLIB = @LEXLIB@
CFLAGS = @IRC_CFLAGS@ -DIRCD_PREFIX=\"@prefix@\"
PICFLAGS = @PICFLAGS@
MKDEP = @MKDEP@ -DIRCD_PREFIX=\"@prefix@\"
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SUID = @INSTALL_PROGRAM@ -o root -m 4755
SEDOBJ = @SEDOBJ@
SHELL = /bin/sh
MV = @MV@
LD = @LD@
SSL_LIBS = @SSL_LIBS@
SSL_INCLUDES = @SSL_INCLUDES@
IRCDLIBS = @LIBS@ $(SSL_LIBS)
prefix = @prefix@
moduledir = @moduledir@
# Change this later! -- adrian
automoduledir = @moduledir@/autoload
INCLUDES = -I../include -I../libratbox/include $(SSL_INCLUDES)
CPPFLAGS = ${INCLUDES} @CPPFLAGS@
CORE_SRCS = \
core/m_ban.c \
core/m_die.c \
core/m_error.c \
core/m_join.c \
core/m_kick.c \
core/m_kill.c \
core/m_message.c \
core/m_mode.c \
core/m_nick.c \
core/m_part.c \
core/m_quit.c \
core/m_server.c \
core/m_squit.c
TSRCS = \
m_accept.c \
m_admin.c \
m_away.c \
m_cap.c \
m_capab.c \
m_certfp.c \
m_challenge.c \
m_chghost.c \
m_close.c \
m_cmessage.c \
m_connect.c \
m_dline.c \
m_encap.c \
m_etrace.c \
m_grant.c \
m_help.c \
m_info.c \
m_invite.c \
m_ison.c \
m_kline.c \
m_knock.c \
m_links.c \
m_list.c \
m_locops.c \
m_lusers.c \
m_map.c \
m_monitor.c \
m_motd.c \
m_names.c \
m_oper.c \
m_operspy.c \
m_pass.c \
m_ping.c \
m_pong.c \
m_post.c \
m_privs.c \
m_rehash.c \
m_restart.c \
m_resv.c \
m_sasl.c \
m_scan.c \
m_services.c \
m_set.c \
m_signon.c \
m_snote.c \
m_stats.c \
m_svinfo.c \
m_tb.c \
m_testline.c \
m_testmask.c \
m_time.c \
m_topic.c \
m_trace.c \
m_user.c \
m_userhost.c \
m_users.c \
m_version.c \
m_wallops.c \
m_who.c \
m_whois.c \
m_whowas.c \
m_unreject.c \
m_xline.c \
sno_routing.c
SRCS = ${TSRCS}
ALL_SRCS = $(CORE_SRCS) \
$(SRCS)
SH_OBJS = ${SRCS:.c=.so}
SH_CORE_OBJS = ${CORE_SRCS:.c=.so}
HPUX_OBJS = ${SH_OBJS:.so=.sl}
HPUX_CORE_OBJS = ${SH_CORE_OBJS:.so=.sl}
S_OBJS = ${ALL_SRCS:.c=.o}
DOLLAR = $$
default: build
build: all
all: @MOD_TARGET@
shared_modules: $(SH_CORE_OBJS) $(SH_OBJS)
hpux_modules: $(HPUX_CORE_OBJS) $(HPUX_OBJS)
hpux_shared: $(SH_CORE_OBJS) $(SH_OBJS)
${MAKE} hpux_modules
static_modules.c: static_modules.c.SH
/bin/sh ./static_modules.c.SH $(S_OBJS)
libmodules.a: $(S_OBJS) static_modules.o
$(RM) -f $@
$(AR) cqv $@ $(S_OBJS) static_modules.o
$(RANLIB) $@
install-mkdirs:
@echo "ircd: setting up modular directory structure"
-@if test ! -d $(DESTDIR)$(moduledir); then \
mkdir $(DESTDIR)$(moduledir); \
fi
-@if test -d $(DESTDIR)$(moduledir)-old; then \
rm -rf $(DESTDIR)$(moduledir)-old; \
fi
-@if test -d $(DESTDIR)$(moduledir); then \
echo "ircd: backing up modules"; \
mv $(DESTDIR)$(moduledir) $(DESTDIR)$(moduledir)-old; \
fi
@mkdir -p -m 755 $(DESTDIR)$(moduledir)
@mkdir -p -m 755 $(DESTDIR)$(automoduledir)
install: install_@MOD_TARGET@
install_libmodules.a: libmodules.a
# Ye olde noop here.
install_shared_modules: install-mkdirs
@echo "ircd: installing modules"
@for file in $(SH_CORE_OBJS); do \
$(INSTALL_DATA) $$file $(DESTDIR)$(moduledir); \
done
@for file in $(SH_OBJS); do \
$(INSTALL_DATA) $$file $(DESTDIR)$(automoduledir); \
done
install_hpux_shared: install-mkdirs
@echo "ircd: installing modules"
@for file in $(HPUX_CORE_OBJS); do \
$(INSTALL_DATA) $$file $(DESTDIR)$(moduledir); \
done
@for file in $(HPUX_OBJS); do \
$(INSTALL_DATA) $$file $(DESTDIR)$(automoduledir); \
done
.SUFFIXES: .sl .so .o
.c.o:
${CC} ${CPPFLAGS} ${CFLAGS} -DMODNAME=`basename $< .c`_mheader -c $< -o $@
.c.so:
${CC} ${PICFLAGS} ${CPPFLAGS} ${CFLAGS} $< -o $@
.so.sl:
$(LD) -b $< -o $@
.PHONY: depend clean distclean
depend:
@$(RM) -f .depend
${MKDEP} ${CPPFLAGS} ${ALL_SRCS} > .depend
@$(SED) -e '${SEDOBJ}' < .depend > .depend.tmp-1
@$(SED) -e 's#^m_die\.#core/&#' -e 's#^m_error\.#core/&#' -e 's#^m_join\.#core/&#' -e 's#^m_kick\.#core/&#' -e 's#^m_kill\.#core/&#' -e 's#^m_message\.#core/&#' -e 's#^m_mode\.#core/&#' -e 's#^m_nick\.#core/&#' -e 's#^m_part\.#core/&#' -e 's#^m_quit\.#core/&#' -e 's#^m_server\.#core/&#' -e 's#^m_squit\.#core/&#' .depend.tmp-1 > .depend.tmp
@$(MV) -f .depend.tmp .depend
@$(RM) -f .depend.tmp-1
clean:
${RM} -f *.so *.sl *~ *.o *.a
${RM} -f core/*.so core/*.sl core/*~ core/*.o
lint:
lint -aacgprxhH ${CPPFLAGS} -DIRCD_PREFIX=\"@prefix@\" $(ALL_SRCS) >../lint.out
distclean: clean
${RM} -f Makefile
include .depend