X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2FMakefile.in;h=733ff118b6dd67a5889690876e28c30e1ac5cdb9;hb=91930ceaf10889d1e3f0b3bf92736820d2836c18;hp=d58f8e2b554f126d7c821da7fa74768c885c49a1;hpb=0d6a38339dedf0f984643d8f40ee41b5d841a959;p=citadel.git diff --git a/citadel/Makefile.in b/citadel/Makefile.in index d58f8e2b5..733ff118b 100644 --- a/citadel/Makefile.in +++ b/citadel/Makefile.in @@ -8,191 +8,304 @@ # 2. Send e-mail to ajc@uncnsrd.mt-kisco.ny.us and let me know what you # did, so any necessary changes can be put into the next release. # +# $Id$ +# ######################################################################## -client: citadel whobbs - -server: citserver setup citadelapi.a - -utils: aidepost netmailer netproc netsetup msgform \ -readlog rcit stats sysoputil citmail netpoll mailinglist userlist +TARGETS=@TARGETS@ +CHKPWD=@CHKPWD@ + +all: $(TARGETS) + +.SUFFIXES: .ro .mo .d + +EXEEXT=@EXEEXT@ +SO=@SO@ +SERV_ICQ=@SERV_ICQ@ + +CLIENT_TARGETS=citadel$(EXEEXT) whobbs$(EXEEXT) +SERVER_TARGETS=citserver setup $(CHKPWD) +SERV_MODULES=modules/serv_chat$(SO) modules/serv_vcard$(SO) \ + modules/serv_upgrade$(SO) modules/serv_smtp$(SO) \ + modules/serv_expire$(SO) $(SERV_ICQ) +UTIL_TARGETS=aidepost netmailer netproc netsetup msgform readlog rcit \ + stats citmail netpoll mailinglist userlist sendcommand \ + base64 qpdecode +PROXY_TARGETS=proxy + +prefix=@prefix@ +srcdir=@srcdir@ + +AUTH=@AUTH@ +DEFS=@DEFS@ +CPPFLAGS=@CPPFLAGS@ -I. +CFLAGS=@CFLAGS@ +CC=@CC@ +GDBM=@GDBM@ +LINK_SHARED=@LINK_SHARED@ +LIBS=@LIBS@ +LDFLAGS=@LDFLAGS@ +SERVER_LDFLAGS=@SERVER_LDFLAGS@ +PICFLAGS=@PICFLAGS@ +CURSES=@CURSES@ +NETLIBS=@NETLIBS@ +chkpwd_LIBS=@chkpwd_LIBS@ +LIBOBJS=@LIBOBJS@ +PTHREAD_DEFS=@PTHREAD_DEFS@ +INSTALL=@INSTALL@ +INSTALL_DATA=@INSTALL_DATA@ +SHELL=/bin/sh +AUTOCONF=@AUTOCONF@ + +# End configuration section + +VPATH=$(srcdir) + +SOURCES=aidepost.c citadel.c citmail.c citserver.c client_chat.c commands.c \ + config.c control.c cux2ascii.c database.c dynloader.c file_ops.c \ + housekeeping.c internetmail.c ipc_c_tcp.c locate_host.c \ + logging.c mailinglist.c messages.c msgbase.c msgform.c netmailer.c \ + netpoll.c netproc.c netsetup.c policy.c proxy.c rcit.c readlog.c \ + room_ops.c rooms.c routines.c routines2.c serv_chat.c serv_icq.c \ + serv_info.c serv_test.c setup.c snprintf.c stats.c serv_vcard.c \ + support.c sysdep.c tools.c user_ops.c userlist.c serv_expire.c \ + whobbs.c sendcommand.c mime_parser.c base64.c qpdecode.c getutline.c \ + auth.c chkpwd.c client_icq.c html.c vcard.c serv_upgrade.c \ + serv_smtp.c internet_addressing.c parsedate.c + +DEP_FILES=$(SOURCES:.c=.d) + +client: $(CLIENT_TARGETS) + +server: $(SERVER_TARGETS) + +utils: $(UTIL_TARGETS) + +serv_modules: $(SERV_MODULES) # # -citadel: ipc_c_tcp.o citadel.o rooms.o routines.o routines2.o messages.o \ - commands.o client_chat.o serv_info.o - $(CC) $(CFLAGS) ipc_c_tcp.o citadel.o rooms.o routines.o routines2.o \ - messages.o commands.o client_chat.o serv_info.o $(LFLAGS) -o citadel - -netpoll: netpoll.c config.o ipc_c_tcp.o - $(CC) $(CFLAGS) netpoll.c config.o ipc_c_tcp.o $(LFLAGS) -o netpoll - -ipc_c_tcp.o: ipc_c_tcp.c sysdep.h - $(CC) $(CFLAGS) -c ipc_c_tcp.c - -ipc_c_socks4.o: ipc_c_socks4.c sysdep.h - $(CC) $(CFLAGS) -c ipc_c_socks4.c - -citadel.o: citadel.c axdefs.h citadel.h - $(CC) -O $(CFLAGS) -c citadel.c - -rooms.o: rooms.c citadel.h - $(CC) -O $(CFLAGS) -c rooms.c - -messages.o: messages.c citadel.h - $(CC) -O $(CFLAGS) -c messages.c - -commands.o: commands.c citadel.h - $(CC) -O $(CFLAGS) -c commands.c - -routines.o: routines.c citadel.h - $(CC) -O $(CFLAGS) -c routines.c - -routines2.o: routines2.c citadel.h - $(CC) -O $(CFLAGS) -c routines2.c +citadel$(EXEEXT): ipc_c_tcp.o citadel.o rooms.o routines.o \ + routines2.o messages.o client_icq.o \ + commands.o client_chat.o serv_info.o tools.o $(LIBOBJS) + $(CC) ipc_c_tcp.o citadel.o rooms.o routines.o routines2.o \ + messages.o client_icq.o \ + commands.o client_chat.o serv_info.o tools.o $(LIBOBJS) $(LDFLAGS) \ + -o citadel $(NETLIBS) -client_chat.o: client_chat.c citadel.h - $(CC) -O $(CFLAGS) -c client_chat.c - -serv_info.o: serv_info.c citadel.h - $(CC) -O $(CFLAGS) -c serv_info.c +netpoll: netpoll.o config.o ipc_c_tcp.o tools.o $(LIBOBJS) + $(CC) netpoll.o config.o ipc_c_tcp.o tools.o \ + $(LIBOBJS) $(LDFLAGS) -o netpoll $(NETLIBS) +.c.o: + $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -c $< # # -citserver: citserver.o user_ops.o support.o room_ops.o file_ops.o \ - msgbase.o config.o sysdep.o locate_host.o serv_chat.o \ - hooks.o housekeeping.o database.o control.o logging.o - $(CC) $(CFLAGS) citserver.o user_ops.o room_ops.o file_ops.o support.o \ - msgbase.o config.o sysdep.o locate_host.o serv_chat.o \ - hooks.o housekeeping.o database.o control.o logging.o \ - $(LFLAGS) $(SERVER_LFLAGS) -o citserver +SERV_OBJS = citserver.ro user_ops.ro support.ro room_ops.ro file_ops.ro \ + msgbase.ro config.ro sysdep.ro locate_host.ro housekeeping.ro \ + database.ro control.ro logging.ro policy.ro dynloader.ro tools.ro \ + mime_parser.ro html.ro internet_addressing.ro \ + $(AUTH) $(LIBOBJS:.o=.ro) + +citserver: $(SERV_OBJS) + $(CC) $(SERV_OBJS) $(LDFLAGS) $(SERVER_LDFLAGS) $(LIBS) $(NETLIBS) $(GDBM) -o citserver -citserver.o: citserver.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c citserver.c +.c.ro: + $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) $(PTHREAD_DEFS) -c $< -o $@ -user_ops.o: user_ops.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c user_ops.c +modules/serv_chat.so: serv_chat.mo + $(LINK_SHARED) -o modules/serv_chat.so serv_chat.mo -room_ops.o: room_ops.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c room_ops.c +modules/serv_chat.mo: serv_chat.mo + ln -f serv_chat.mo modules -file_ops.o: file_ops.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c file_ops.c +.c.mo: + $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) $(PTHREAD_DEFS) $(PICFLAGS) -DPIC -c $< -o $@ -support.o: support.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c support.c +modules/serv_test.so: serv_test.mo + $(LINK_SHARED) -o modules/serv_test.so serv_test.mo -msgbase.o: msgbase.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c msgbase.c +modules/serv_test.mo: serv_test.mo + ln -f serv_test.mo modules -locate_host.o: locate_host.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c locate_host.c +modules/serv_smtp.so: serv_smtp.mo + $(LINK_SHARED) -o modules/serv_smtp.so serv_smtp.mo -serv_chat.o: serv_chat.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c serv_chat.c +modules/serv_smtp.mo: serv_smtp.mo + ln -f serv_smtp.mo modules -hooks.o: hooks.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c hooks.c +modules/serv_expire.so: serv_expire.mo + $(LINK_SHARED) -o modules/serv_expire.so serv_expire.mo -housekeeping.o: housekeeping.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c housekeeping.c +modules/serv_expire.mo: serv_expire.mo + ln -f serv_expire.mo modules -database.o: database.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c database.c +modules/serv_icq.so: serv_icq.mo + $(LINK_SHARED) -o modules/serv_icq.so serv_icq.mo -control.o: control.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c control.c +modules/serv_icq.mo: serv_icq.mo + ln -f serv_icq.mo modules -logging.o: logging.c citadel.h - $(CC) $(CFLAGS) -D_REENTRANT -c logging.c +modules/serv_upgrade.so: serv_upgrade.mo + $(LINK_SHARED) -o modules/serv_upgrade.so serv_upgrade.mo -config.o: config.c config_decls.h citadel.h axdefs.h - $(CC) -O $(CFLAGS) -D_REENTRANT -c config.c +modules/serv_upgrade.mo: serv_upgrade.mo + ln -f serv_upgrade.mo modules -sysdep.o: sysdep.c citadel.h - $(CC) -O $(CFLAGS) -D_REENTRANT -c sysdep.c +modules/serv_vcard.so: serv_vcard.mo vcard.mo + $(LINK_SHARED) -o modules/serv_vcard.so serv_vcard.mo vcard.mo -citadelapi.a: citadelapi.o ipc_c_tcp.o serv_info.o - $(AR) r citadelapi.a citadelapi.o ipc_c_tcp.o serv_info.o - $(RANLIB) citadelapi.a +modules/serv_vcard.mo: serv_vcard.mo + ln -f serv_vcard.mo modules -citadelapi.o: citadelapi.c citadel.h - $(CC) -O $(CFLAGS) -D_REENTRANT -c citadelapi.c +modules/vcard.mo: vcard.mo + ln -f vcard.mo modules -aidepost: aidepost.c config.o citadel.h - $(CC) -O $(CFLAGS) aidepost.c config.o $(LFLAGS) -o aidepost +aidepost: aidepost.o config.o $(LIBOBJS) + $(CC) aidepost.o config.o $(LIBOBJS) $(LDFLAGS) -o aidepost # # 'netmailer' needs to run setuid because it generates headers for Internet # mail. If it is not run setuid, all outgoing mail may always show as coming # from your BBSUID rather than the actual sending user. # -netmailer: netmailer.c internetmail.o config.o citadel.h - $(CC) -O $(CFLAGS) netmailer.c config.o internetmail.o $(LFLAGS) -o netmailer - chmod 4755 netmailer - -internetmail.o: internetmail.c - $(CC) -O $(CFLAGS) -c internetmail.c - -netproc: netproc.o config.o ipc_c_tcp.o citadel.h - $(CC) -O $(CFLAGS) netproc.o config.o ipc_c_tcp.o \ - $(LFLAGS) -o netproc - -netproc.o: netproc.c citadel.h - $(CC) -O $(CFLAGS) -c netproc.c - -citmail: citmail.c config.o internetmail.o citadel.h - # - # ###### IMPORTANT ###### - # To allow Citadel users to receive Internet mail, you must - # set this program to be your local mail delivery agent. - # - $(CC) -O $(CFLAGS) citmail.c config.o internetmail.o $(LFLAGS) -o citmail - chmod 4755 citmail +netmailer: netmailer.o internetmail.o config.o + $(CC) netmailer.o config.o internetmail.o $(LDFLAGS) -o netmailer + +netproc: netproc.o config.o ipc_c_tcp.o tools.o $(LIBOBJS) + $(CC) netproc.o config.o ipc_c_tcp.o tools.o \ + $(LIBOBJS) $(LDFLAGS) -o netproc $(NETLIBS) $(GDBM) + +citmail: citmail.o config.o internetmail.o parsedate.o $(LIBOBJS) + @echo "*" + @echo "* ###### IMPORTANT ######" + @echo "* To allow Citadel users to receive Internet mail, you must" + @echo "* set this program to be your local mail delivery agent." + @echo "*" + $(CC) citmail.o config.o internetmail.o parsedate.o \ + $(LIBOBJS) $(LDFLAGS) -o citmail + +mailinglist: mailinglist.o config.o internetmail.o + $(CC) mailinglist.o config.o internetmail.o $(LDFLAGS) -o mailinglist + +setup: setup.o tools.o + $(CC) setup.o tools.o $(CURSES) $(NETLIBS) $(LDFLAGS) -o setup + +chkpwd: chkpwd.o auth.o config.o + $(CC) chkpwd.o auth.o config.o $(LDFLAGS) -o chkpwd $(chkpwd_LIBS) + +netsetup: netsetup.o config.o + $(CC) netsetup.o config.o $(LDFLAGS) -o netsetup + +proxy: proxy.o ipc_c_tcp.o + $(CC) proxy.o ipc_c_tcp.o $(LDFLAGS) -o proxy $(NETLIBS) + +whobbs$(EXEEXT): whobbs.o ipc_c_tcp.o tools.o $(LIBOBJS) + $(CC) whobbs.o ipc_c_tcp.o tools.o $(LIBOBJS) $(LDFLAGS) -o whobbs $(NETLIBS) + +sendcommand: sendcommand.o ipc_c_tcp.o tools.o config.o $(LIBOBJS) + $(CC) sendcommand.o ipc_c_tcp.o tools.o config.o \ + $(LIBOBJS) $(LDFLAGS) -o sendcommand $(NETLIBS) + +qpdecode: qpdecode.o + $(CC) qpdecode.o $(LDFLAGS) -o qpdecode + +base64: base64.o + $(CC) base64.o $(LDFLAGS) -o base64 + +userlist: userlist.o ipc_c_tcp.o tools.o $(LIBOBJS) + $(CC) userlist.o ipc_c_tcp.o tools.o \ + $(LIBOBJS) $(LDFLAGS) -o userlist $(NETLIBS) + +msgform: msgform.o + $(CC) msgform.o $(LDFLAGS) -o msgform + +readlog: readlog.o config.o + $(CC) readlog.o config.o $(LDFLAGS) -o readlog + +rcit: rcit.o config.o + $(CC) rcit.o config.o $(LDFLAGS) -o rcit + @echo "*" + @echo "* NOTE: TO RECEIVE CITADEL TRAFFIC VIA THE RCIT PROGRAM (ESPECIALLY" + @echo "* IF YOU ARE GATEWAYING TO USENET) YOU MUST LINK RNEWS TO RCIT:" + @echo "* ln -s rcit /usr/bin/rnews" + @echo "*" + +stats: stats.o ipc_c_tcp.o tools.o config.o $(LIBOBJS) + $(CC) stats.o ipc_c_tcp.o tools.o config.o $(LIBOBJS) $(LDFLAGS) -o stats $(NETLIBS) + +.PHONY: install-data install-doc install-exec clean cleaner distclean + +install: install-exec install-data install-doc + +install-data: + @for i in help messages network/spoolin network/spoolout \ + network/systems; do \ + ./mkinstalldirs $(root)$(prefix)/$$i; \ + done + @for i in citadel.rc public_clients \ + `find help messages network -type f | grep -v CVS`; do \ + echo $(INSTALL_DATA) $$i $(root)$(prefix)/$$i; \ + $(INSTALL_DATA) $$i $(root)$(prefix)/$$i; \ + done + -@if test -d $(root)/etc/pam.d; then \ + echo $(INSTALL_DATA) citadel.pam $(root)/etc/pam.d/citadel; \ + $(INSTALL_DATA) citadel.pam $(root)/etc/pam.d/citadel; \ + fi + +install-doc: + @./mkinstalldirs $(root)$(prefix)/techdoc + @for i in *.txt `find techdoc -type f | grep -v CVS`; do \ + echo $(INSTALL_DATA) $$i $(root)$(prefix)/$$i; \ + $(INSTALL_DATA) $$i $(root)$(prefix)/$$i; \ + done + +install-exec: all weekly + @for i in bio bitbucket files images info modules userpics; do \ + ./mkinstalldirs $(root)$(prefix)/$$i; \ + done + @for i in $(CLIENT_TARGETS) $(SERVER_TARGETS) $(UTIL_TARGETS) \ + $(PROXY_TARGETS) $(SERV_MODULES) utilsmenu weekly \ + dnetsetup; do \ + if test -f $$i; then \ + echo $(INSTALL) $$i $(root)$(prefix)/$$i; \ + $(INSTALL) $$i $(root)$(prefix)/$$i; \ + fi \ + done + @if test x`find $(root)$(prefix)/chkpwd -user root` = x$(root)$(prefix)/chkpwd; then \ + echo chmod u+s $(root)$(prefix)/chkpwd; \ + chmod u+s $(root)$(prefix)/chkpwd; \ + fi -mailinglist: mailinglist.c config.o internetmail.o citadel.h - $(CC) -O $(CFLAGS) mailinglist.c config.o internetmail.o \ - $(LFLAGS) -o mailinglist - -setup: setup.c citadel.h - $(CC) -O $(CFLAGS) setup.c $(CURSES) $(LFLAGS) -o setup - -netsetup: netsetup.c config.o citadel.h - $(CC) -O $(CFLAGS) netsetup.c config.o $(LFLAGS) -o netsetup - -whobbs: whobbs.c ipc_c_tcp.o - $(CC) -O $(CFLAGS) whobbs.c ipc_c_tcp.o $(LFLAGS) -o whobbs +clean: + rm -f *.o *.ro *.mo -userlist: userlist.c ipc_c_tcp.o - $(CC) -O $(CFLAGS) userlist.c ipc_c_tcp.o $(LFLAGS) -o userlist +cleaner: clean + rm -f $(CLIENT_TARGETS) $(SERVER_TARGETS) $(UTIL_TARGETS) \ + modules/*.[ms]o $(PROXY_TARGETS) so_locations -msgform: msgform.c - $(CC) -O $(CFLAGS) msgform.c $(LFLAGS) -o msgform +distclean: cleaner + find . -name '*~' -or -name '.#*' | xargs rm -f + rm -f Makefile sysdep.h config.cache config.log config.status *.d weekly -readlog: readlog.c config.o citadel.h - $(CC) -O $(CFLAGS) readlog.c config.o $(LFLAGS) -o readlog +.c.d: + @echo Checking dependencies for $< + @$(CC) -M $(CPPFLAGS) $(PTHREAD_DEFS) $< | sed -e 's!$*.o!$*.o $*.ro $*.mo $@!' > $@ + @test -s $@ || rm -f $@ -rcit: rcit.c config.o citadel.h - $(CC) -O $(CFLAGS) rcit.c config.o $(LFLAGS) -o rcit - # - # NOTE: TO RECEIVE CITADEL TRAFFIC VIA THE RCIT PROGRAM (ESPECIALLY - # IF YOU ARE GATEWAYING TO USENET) YOU MUST LINK RNEWS TO RCIT: - #ln -s rcit /usr/bin/rnews - # +Makefile: $(srcdir)/Makefile.in config.status + CONFIG_FILES=Makefile CONFIG_HEADERS= $(SHELL) ./config.status -stats: stats.c config.o citadel.h - $(CC) -O $(CFLAGS) stats.c config.o $(LFLAGS) -o stats +config.status: $(srcdir)/configure + $(SHELL) ./config.status --recheck -sysoputil: sysoputil.c config.o config_decls.h citadel.h - $(CC) -O $(CFLAGS) sysoputil.c config.o $(LFLAGS) -o sysoputil - chmod 4750 sysoputil +$(srcdir)/configure: $(srcdir)/configure.in $(srcdir)/aclocal.m4 + cd $(srcdir) && $(AUTOCONF) -citadel.h: sysdep.h sysconfig.h ipcdef.h server.h - touch citadel.h +weekly: $(srcdir)/weekly.in config.status + CONFIG_FILES=weekly CONFIG_HEADERS= $(SHELL) ./config.status -clean: - find . -name \*.[o] -print -exec rm -f {} \; - rm -f sysdep.h +-include $(DEP_FILES)