1 # Makefile for Citadel/UX
3 # NOTE: normally you should not have to modify the Makefile. All
4 # system-dependent configuration is in the "configure" script, which
5 # uses "Makefile.in" to generate a "Makefile". In the rare instance
6 # that you have to modify something here, please take note:
7 # 1. Edit Makefile.in, -not- Makefile.
8 # 2. Send e-mail to ajc@uncnsrd.mt-kisco.ny.us and let me know what you
9 # did, so any necessary changes can be put into the next release.
11 ########################################################################
17 CLIENT_TARGETS=citadel whobbs
18 SERVER_TARGETS=citserver setup
19 SERV_MODULES=modules/serv_chat.so modules/serv_test.so
20 UTIL_TARGETS=aidepost netmailer netproc netsetup msgform \
21 readlog rcit stats citmail netpoll mailinglist userlist
23 CFLAGS=@CFLAGS@ @DEFS@
28 client: $(CLIENT_TARGETS)
30 server: $(SERVER_TARGETS)
32 utils: $(UTIL_TARGETS)
34 serv_modules: $(SERV_MODULES)
39 citadel: ipc_c_tcp.o citadel.o rooms.o routines.o routines2.o messages.o \
40 commands.o client_chat.o serv_info.o
41 $(CC) $(CFLAGS) ipc_c_tcp.o citadel.o rooms.o routines.o routines2.o \
42 messages.o commands.o client_chat.o serv_info.o $(LFLAGS) -o citadel
44 netpoll: netpoll.o config.o ipc_c_tcp.o
45 $(CC) $(CFLAGS) netpoll.o config.o ipc_c_tcp.o $(LFLAGS) -o netpoll
48 $(CC) $(CFLAGS) -c netpoll.c
50 ipc_c_tcp.o: ipc_c_tcp.c
51 $(CC) $(CFLAGS) -c ipc_c_tcp.c
54 $(CC) $(CFLAGS) -c citadel.c
57 $(CC) $(CFLAGS) -c rooms.c
59 messages.o: messages.c
60 $(CC) $(CFLAGS) -c messages.c
62 commands.o: commands.c
63 $(CC) $(CFLAGS) -c commands.c
65 routines.o: routines.c
66 $(CC) $(CFLAGS) -c routines.c
68 routines2.o: routines2.c
69 $(CC) $(CFLAGS) -c routines2.c
71 client_chat.o: client_chat.c
72 $(CC) $(CFLAGS) -c client_chat.c
74 serv_info.o: serv_info.c
75 $(CC) $(CFLAGS) -c serv_info.c
81 citserver: citserver.o user_ops.o support.o room_ops.o file_ops.o \
82 msgbase.o config.o sysdep.o locate_host.o \
83 housekeeping.o database.o control.o logging.o \
85 $(CC) $(CFLAGS) -rdynamic \
86 citserver.o user_ops.o room_ops.o file_ops.o support.o \
87 msgbase.o config.o sysdep.o locate_host.o \
88 housekeeping.o database.o control.o logging.o \
90 $(LFLAGS) $(SERVER_LFLAGS) -o citserver
92 citserver.o: citserver.c
93 $(CC) $(CFLAGS) -D_REENTRANT -c citserver.c
95 user_ops.o: user_ops.c
96 $(CC) $(CFLAGS) -D_REENTRANT -c user_ops.c
98 room_ops.o: room_ops.c
99 $(CC) $(CFLAGS) -D_REENTRANT -c room_ops.c
101 dynloader.o: dynloader.c
102 $(CC) $(CFLAGS) -D_REENTRANT -c dynloader.c
104 file_ops.o: file_ops.c
105 $(CC) $(CFLAGS) -D_REENTRANT -c file_ops.c
108 $(CC) $(CFLAGS) -D_REENTRANT -c support.c
111 $(CC) $(CFLAGS) -D_REENTRANT -c msgbase.c
113 locate_host.o: locate_host.c
114 $(CC) $(CFLAGS) -D_REENTRANT -c locate_host.c
116 modules/serv_chat.so: serv_chat.o
117 $(CC) -shared -o modules/serv_chat.so serv_chat.o
119 serv_chat.o: serv_chat.c
120 $(CC) $(CFLAGS) -D_REENTRANT -fPIC -c serv_chat.c
122 modules/serv_test.so: serv_test.o
123 $(CC) -shared -o modules/serv_test.so serv_test.o
125 serv_test.o: serv_test.c
126 $(CC) $(CFLAGS) -D_REENTRANT -fPIC -c serv_test.c
128 housekeeping.o: housekeeping.c
129 $(CC) $(CFLAGS) -D_REENTRANT -c housekeeping.c
131 database.o: database.c
132 $(CC) $(CFLAGS) -D_REENTRANT -c database.c
135 $(CC) $(CFLAGS) -D_REENTRANT -c control.c
138 $(CC) $(CFLAGS) -D_REENTRANT -c logging.c
141 $(CC) $(CFLAGS) -D_REENTRANT -c config.c
144 $(CC) $(CFLAGS) -D_REENTRANT -c sysdep.c
146 aidepost: aidepost.o config.o
147 $(CC) $(CFLAGS) aidepost.o config.o $(LFLAGS) -o aidepost
149 aidepost.o: aidepost.c
150 $(CC) $(CFLAGS) -c aidepost.c
153 # 'netmailer' needs to run setuid because it generates headers for Internet
154 # mail. If it is not run setuid, all outgoing mail may always show as coming
155 # from your BBSUID rather than the actual sending user.
157 netmailer: netmailer.o internetmail.o config.o
158 $(CC) $(CFLAGS) netmailer.o config.o internetmail.o $(LFLAGS) -o netmailer
161 netmailer.o: netmailer.c
162 $(CC) $(CFLAGS) -c netmailer.c
164 internetmail.o: internetmail.c
165 $(CC) $(CFLAGS) -c internetmail.c
167 netproc: netproc.o config.o ipc_c_tcp.o
168 $(CC) $(CFLAGS) netproc.o config.o ipc_c_tcp.o \
172 $(CC) $(CFLAGS) -c netproc.c
174 citmail: citmail.o config.o internetmail.o
176 # ###### IMPORTANT ######
177 # To allow Citadel users to receive Internet mail, you must
178 # set this program to be your local mail delivery agent.
180 $(CC) $(CFLAGS) citmail.o config.o internetmail.o $(LFLAGS) -o citmail
184 $(CC) $(CFLAGS) -c citmail.c
186 mailinglist: mailinglist.o config.o internetmail.o
187 $(CC) $(CFLAGS) mailinglist.o config.o internetmail.o \
188 $(LFLAGS) -o mailinglist
190 mailinglist.o: mailinglist.c
191 $(CC) $(CFLAGS) -c mailinglist.c
194 $(CC) $(CFLAGS) setup.o $(CURSES) $(LFLAGS) -o setup
197 $(CC) $(CFLAGS) -c setup.c
199 netsetup: netsetup.o config.o
200 $(CC) $(CFLAGS) netsetup.o config.o $(LFLAGS) -o netsetup
202 netsetup.o: netsetup.c
203 $(CC) $(CFLAGS) -c netsetup.c
205 proxy: proxy.o ipc_c_tcp.o
206 $(CC) $(CFLAGS) proxy.o ipc_c_tcp.o $(LFLAGS) -o proxy
209 $(CC) $(CFLAGS) -c proxy.c
211 whobbs: whobbs.o ipc_c_tcp.o
212 $(CC) $(CFLAGS) whobbs.o ipc_c_tcp.o $(LFLAGS) -o whobbs
215 $(CC) $(CFLAGS) -c whobbs.c
217 userlist: userlist.o ipc_c_tcp.o
218 $(CC) $(CFLAGS) userlist.o ipc_c_tcp.o $(LFLAGS) -o userlist
220 userlist.o: userlist.c
221 $(CC) $(CFLAGS) -c userlist.c
224 $(CC) $(CFLAGS) msgform.o $(LFLAGS) -o msgform
227 $(CC) $(CFLAGS) -c msgform.c
229 readlog: readlog.o config.o
230 $(CC) $(CFLAGS) readlog.o config.o $(LFLAGS) -o readlog
233 $(CC) $(CFLAGS) -c readlog.c
235 rcit: rcit.o config.o
236 $(CC) $(CFLAGS) rcit.o config.o $(LFLAGS) -o rcit
238 # NOTE: TO RECEIVE CITADEL TRAFFIC VIA THE RCIT PROGRAM (ESPECIALLY
239 # IF YOU ARE GATEWAYING TO USENET) YOU MUST LINK RNEWS TO RCIT:
240 #ln -s rcit /usr/bin/rnews
244 $(CC) $(CFLAGS) -c rcit.c
246 stats: stats.o config.o
247 $(CC) $(CFLAGS) stats.o config.o $(LFLAGS) -o stats
250 $(CC) $(CFLAGS) -c stats.c
253 find . -name \*.[o] -print -exec rm -f {} \;
256 rm -f $(CLIENT_TARGETS) $(SERVER_TARGETS) $(UTIL_TARGETS) \
257 $(SERV_MODULES) $(PROXY_TARGETS)
260 rm -f Makefile sysdep.h
262 .depend: $(wildcard *.c) $(wildcard *.h)
263 $(CC) -MM *.c > .depend