1 |
# |
2 |
# This is the Makefile for EGGDROP (the irc bot) |
3 |
# You should never need to edit this. |
4 |
# |
5 |
|
6 |
SHELL = /bin/sh |
7 |
top_srcdir = @top_srcdir@ |
8 |
|
9 |
@SET_MAKE@ |
10 |
prefix = @prefix@ |
11 |
DEST = @DEST@ |
12 |
EGGEXEC = @EGGEXEC@ |
13 |
EGGVERSION = @EGGVERSION@ |
14 |
|
15 |
# things you can put here: |
16 |
# -Wall if you're using gcc and it supports it |
17 |
# (configure usually detects this anyway now) |
18 |
# -DEBUG_MEM to be able to debug memory allocation (.debug) |
19 |
# this can now be set by using 'make debug' or 'make sdebug' |
20 |
CFLGS = |
21 |
|
22 |
# configure SHOULD set these...you may need to tweak them to get modules |
23 |
# to compile .. if you do...let the devel-team know the working settings |
24 |
# btw to turn STRIP off, do 'STRIP = touch' not 'STRIP =' |
25 |
|
26 |
# defaults |
27 |
CC = @CC@ |
28 |
LD = @CC@ |
29 |
STRIP = @STRIP@ |
30 |
RANLIB = @RANLIB@ |
31 |
|
32 |
# make eggmod |
33 |
MOD_CC = @MOD_CC@ |
34 |
MOD_LD = @MOD_LD@ |
35 |
MOD_STRIP = @MOD_STRIP@ |
36 |
|
37 |
# make modules |
38 |
SHLIB_CC = @SHLIB_CC@ |
39 |
SHLIB_LD = @SHLIB_LD@ |
40 |
SHLIB_STRIP = @SHLIB_STRIP@ |
41 |
|
42 |
# programs make install uses |
43 |
LN_S = @LN_S@ |
44 |
INSTALL = @INSTALL@ |
45 |
INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
46 |
INSTALL_DATA = @INSTALL_DATA@ |
47 |
INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
48 |
|
49 |
# STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP # |
50 |
# - - - - - - - - do not edit anything below this line. - - - - - - - - # |
51 |
# - - - - - - - - - it's all done by configure now. - - - - - - - - - # |
52 |
# STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP # |
53 |
|
54 |
# stuff for Tcl |
55 |
XREQS = @TCL_REQS@ |
56 |
XLIBS = @TCL_LIBS@ @LIBS@ |
57 |
TCLLIB = @TCLLIB@ |
58 |
TCLLIBFN = @TCLLIBFN@ |
59 |
|
60 |
RESLIB = @RESLIB@ |
61 |
|
62 |
CFLAGS = @CFLAGS@ -I.. @DEFS@ $(CFLGS) |
63 |
DEBCFLAGS = @CFLAGS@ -I.. @DEFS@ -DEBUG_MEM $(CFLGS) |
64 |
|
65 |
MAKE_MODEGG = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(MOD_CC)' 'LD=$(MOD_LD)' \ |
66 |
'STRIP=$(MOD_STRIP)' 'RANLIB=$(RANLIB)' 'CFLAGS=$(CFLAGS)' \ |
67 |
'CPPFLAGS=$(CPPFLAGS)' 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' \ |
68 |
'XREQS=$(XREQS)' 'XLIBS=$(XLIBS)' 'EGGEXEC=$(EGGEXEC)' \ |
69 |
'EGGBUILD=' 'MODOBJS=' |
70 |
|
71 |
MAKE_MODULES = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(SHLIB_CC)' 'LD=$(SHLIB_LD)' \ |
72 |
'STRIP=$(SHLIB_STRIP)' 'CFLAGS=$(CFLAGS)' 'CPPFLAGS=$(CPPFLAGS)' |
73 |
|
74 |
MAKE_STATIC = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' \ |
75 |
'STRIP=$(STRIP)' 'RANLIB=$(RANLIB)' 'CFLAGS=$(CFLAGS) -DSTATIC' \ |
76 |
'CPPFLAGS=$(CPPFLAGS)' 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' \ |
77 |
'XREQS=$(XREQS)' 'XLIBS=$(XLIBS) $(RESLIB)' 'EGGEXEC=$(EGGEXEC)' \ |
78 |
'EGGBUILD=(static version)' 'MODOBJS=mod/*.o' |
79 |
|
80 |
MAKE_DEBEGG = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(MOD_CC)' 'LD=$(MOD_LD) -g' \ |
81 |
'STRIP=touch' 'RANLIB=$(RANLIB)' 'CFLAGS=-g3 $(DEBCFLAGS)' \ |
82 |
'CPPFLAGS=$(CPPFLAGS)' 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' \ |
83 |
'XREQS=$(XREQS)' 'XLIBS=$(XLIBS)' 'EGGEXEC=$(EGGEXEC)' \ |
84 |
'EGGBUILD=(debug version)' 'MODOBJS=' |
85 |
|
86 |
MAKE_DEBMODULES = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(SHLIB_CC)' 'LD=$(SHLIB_LD)' \ |
87 |
'STRIP=touch' 'CFLAGS=-g3 $(DEBCFLAGS)' 'CPPFLAGS=$(CPPFLAGS)' |
88 |
|
89 |
MAKE_SDEBUG = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD) -g' \ |
90 |
'STRIP=touch' 'RANLIB=$(RANLIB)' 'CFLAGS=-g3 $(DEBCFLAGS) -DSTATIC' \ |
91 |
'CPPFLAGS=$(CPPFLAGS)' 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' \ |
92 |
'XREQS=$(XREQS)' 'XLIBS=$(XLIBS) $(RESLIB)' 'EGGEXEC=$(EGGEXEC)' \ |
93 |
'EGGBUILD=(static and debug version)' 'MODOBJS=mod/*.o' |
94 |
|
95 |
MAKE_DEPEND = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' \ |
96 |
'STRIP=$(STRIP)' 'CFLAGS=$(CFLAGS)' 'CPPFLAGS=$(CPPFLAGS)' |
97 |
|
98 |
MAKE_INSTALL = $(MAKE) 'MAKE=$(MAKE)' 'DEST=$(DEST)' |
99 |
|
100 |
all: @DEFAULT_MAKE@ |
101 |
|
102 |
clean: |
103 |
@rm -f $(EGGEXEC) *.so *.stamp core DEBUG *~ |
104 |
@cd doc; $(MAKE) clean |
105 |
@cd scripts; $(MAKE) clean |
106 |
@cd src; $(MAKE) clean |
107 |
@cd src/md5; $(MAKE) clean |
108 |
@cd src/mod; $(MAKE) clean |
109 |
|
110 |
distclean: clean |
111 |
@rm -f Makefile doc/Makefile scripts/Makefile src/Makefile src/md5/Makefile src/mod/Makefile |
112 |
@rm -f config.cache config.log config.status config.h lush.h |
113 |
|
114 |
distrib: distclean |
115 |
@rm -f `find . \( -name '*~' -o -name '*#' -o -name '*.orig' \ |
116 |
-o -name '*.rej' -o -name '*.bak' \) -print` |
117 |
@rm -rf `find . \( -name 'CVS' \) -print` |
118 |
@(echo "all:"; \ |
119 |
echo " @echo \"\""; \ |
120 |
echo " @echo \"Before you can compile your bot you have to configure it.\""; \ |
121 |
echo " @echo \"So please start the configure script now:\""; \ |
122 |
echo " @echo \"\""; \ |
123 |
echo " @echo \" % ./configure\""; \ |
124 |
echo " @echo \"\""; ) > Makefile |
125 |
|
126 |
depend: |
127 |
@cat /dev/null > lush.h |
128 |
@cd src; $(MAKE_DEPEND) depend |
129 |
@cd src/md5; $(MAKE_DEPEND) depend |
130 |
@cd src/mod; $(MAKE_DEPEND) depend |
131 |
|
132 |
eggdrop: modegg modules |
133 |
|
134 |
modegg: modtest |
135 |
@cd src; $(MAKE_MODEGG) $(EGGEXEC) |
136 |
@echo "" |
137 |
@./$(EGGEXEC) -v |
138 |
@ls -l $(EGGEXEC) |
139 |
|
140 |
modules: modtest |
141 |
@cd src/mod; $(MAKE_MODULES) modules |
142 |
@echo "" |
143 |
@echo "modules made:" |
144 |
@ls -l *.so |
145 |
|
146 |
static: eggtest |
147 |
@echo "" |
148 |
@echo "Making module objects for static linking..." |
149 |
@echo "" |
150 |
@cd src/mod; $(MAKE_STATIC) static |
151 |
@echo "" |
152 |
@echo "Making core eggdrop for static linking..." |
153 |
@echo "" |
154 |
@cd src; $(MAKE_STATIC) $(EGGEXEC) |
155 |
@echo "" |
156 |
@./$(EGGEXEC) -v |
157 |
@ls -l $(EGGEXEC) |
158 |
|
159 |
debug: debegg debmodules |
160 |
|
161 |
debegg: modtest |
162 |
@cd src; $(MAKE_DEBEGG) $(EGGEXEC) |
163 |
@echo "" |
164 |
@./$(EGGEXEC) -v |
165 |
@ls -l $(EGGEXEC) |
166 |
|
167 |
debmodules: modtest |
168 |
@cd src/mod; $(MAKE_DEBMODULES) modules |
169 |
@echo "" |
170 |
@echo "modules made:" |
171 |
@ls -l *.so |
172 |
|
173 |
sdebug: eggtest |
174 |
@echo "" |
175 |
@echo "Making module objects for static linking..." |
176 |
@echo "" |
177 |
@cd src/mod; $(MAKE_SDEBUG) static |
178 |
@echo "" |
179 |
@echo "Making core eggdrop for static linking..." |
180 |
@echo "" |
181 |
@cd src; $(MAKE_SDEBUG) $(EGGEXEC) |
182 |
@echo "" |
183 |
@./$(EGGEXEC) -v |
184 |
@ls -l $(EGGEXEC) |
185 |
|
186 |
eggtest: |
187 |
@if [ -f EGGMOD.stamp ]; then \ |
188 |
echo "You're trying to do a STATIC build of eggdrop when you've";\ |
189 |
echo "already run 'make' for a module build.";\ |
190 |
echo "You must first type \"make clean\" before you can build";\ |
191 |
echo "a static version.";\ |
192 |
exit 1;\ |
193 |
fi |
194 |
@echo "stamp" >EGGDROP.stamp |
195 |
|
196 |
modtest: |
197 |
@if [ -f EGGDROP.stamp ]; then \ |
198 |
echo "You're trying to do a MODULE build of eggdrop when you've";\ |
199 |
echo "already run 'make' for a static build.";\ |
200 |
echo "You must first type \"make clean\" before you can build";\ |
201 |
echo "a module version.";\ |
202 |
exit 1;\ |
203 |
fi |
204 |
@echo "stamp" >EGGMOD.stamp |
205 |
|
206 |
install: ainstall |
207 |
|
208 |
dinstall: eggdrop ainstall |
209 |
|
210 |
sinstall: static ainstall |
211 |
|
212 |
ainstall: install-start install-bin install-modules install-data \ |
213 |
install-help install-language install-filesys install-doc \ |
214 |
install-scripts install-end |
215 |
|
216 |
install-start: |
217 |
@if test ! -f $(EGGEXEC); then \ |
218 |
echo ""; \ |
219 |
echo "You haven't compiled eggdrop yet."; \ |
220 |
echo "To compile eggdrop use:"; \ |
221 |
echo " make <target>"; \ |
222 |
echo ""; \ |
223 |
echo " valid targets: eggdrop static debug sdebug"; \ |
224 |
echo ""; \ |
225 |
exit 1; \ |
226 |
fi |
227 |
@if test "x$(DEST)" = "x"; then \ |
228 |
echo "You must specify a destination directory with DEST="; \ |
229 |
exit 1; \ |
230 |
fi |
231 |
@echo "" |
232 |
@./$(EGGEXEC) -v |
233 |
@echo |
234 |
@echo "Installing in directory: '$(DEST)'." |
235 |
@echo |
236 |
@if test ! -d $(DEST); then \ |
237 |
echo "Creating directory: $(DEST)."; \ |
238 |
$(top_srcdir)/mkinstalldirs $(DEST); \ |
239 |
fi |
240 |
|
241 |
install-bin: |
242 |
@if test -f $(DEST)/$(EGGEXEC); then \ |
243 |
rm -f $(DEST)/o$(EGGEXEC); \ |
244 |
fi |
245 |
@if test -h $(DEST)/$(EGGEXEC); then \ |
246 |
echo "Removing symlink to archival eggdrop binary."; \ |
247 |
rm -f $(DEST)/$(EGGEXEC); \ |
248 |
fi |
249 |
@if test -f $(DEST)/$(EGGEXEC); then \ |
250 |
echo "Renamed the old '$(EGGEXEC)' executable to 'o$(EGGEXEC)'."; \ |
251 |
mv -f $(DEST)/$(EGGEXEC) $(DEST)/o$(EGGEXEC); \ |
252 |
fi |
253 |
@echo "Copying new '$(EGGEXEC)' executable and creating symlink." |
254 |
@$(INSTALL_PROGRAM) $(EGGEXEC) $(DEST)/$(EGGEXEC)-$(EGGVERSION) |
255 |
@(cd $(DEST) && $(LN_S) $(EGGEXEC)-$(EGGVERSION) $(EGGEXEC)) |
256 |
|
257 |
install-modules: |
258 |
@if test -h $(DEST)/modules; then \ |
259 |
echo "Removing symlink to archival modules directory."; \ |
260 |
rm -f $(DEST)/modules; \ |
261 |
fi |
262 |
@if test -d $(DEST)/modules; then \ |
263 |
echo "Moving old modules into 'modules.old' directory."; \ |
264 |
rm -rf $(DEST)/modules.old; \ |
265 |
mv -f $(DEST)/modules $(DEST)/modules.old; \ |
266 |
fi |
267 |
@if test ! "x`echo *.so`" = "x*.so"; then \ |
268 |
if test ! -d $(DEST)/modules-$(EGGVERSION); then \ |
269 |
echo "Creating modules-$(EGGVERSION) directory and symlink."; \ |
270 |
$(top_srcdir)/mkinstalldirs $(DEST)/modules-$(EGGVERSION); \ |
271 |
fi; \ |
272 |
(cd $(DEST) && $(LN_S) modules-$(EGGVERSION) modules); \ |
273 |
echo "Copying new modules."; \ |
274 |
for i in *.so; do \ |
275 |
$(INSTALL_PROGRAM) $$i $(DEST)/modules-$(EGGVERSION)/; \ |
276 |
done; \ |
277 |
fi |
278 |
|
279 |
install-data: |
280 |
@$(INSTALL_DATA) eggdrop.conf.dist $(DEST) |
281 |
@if test ! -d $(DEST)/logs; then \ |
282 |
echo "Creating 'logs' subdirectory."; \ |
283 |
$(top_srcdir)/mkinstalldirs $(DEST)/logs; \ |
284 |
$(INSTALL_DATA) logs/CONTENTS $(DEST)/logs/; \ |
285 |
fi; |
286 |
@if test ! -d $(DEST)/text; then \ |
287 |
echo "Creating 'text' subdirectory."; \ |
288 |
$(top_srcdir)/mkinstalldirs $(DEST)/text; \ |
289 |
fi; |
290 |
@if test ! -f $(DEST)/text/motd; then \ |
291 |
$(INSTALL_DATA) text/motd $(DEST)/text/; \ |
292 |
fi |
293 |
@if test ! -f $(DEST)/text/banner; then \ |
294 |
$(INSTALL_DATA) text/banner $(DEST)/text/; \ |
295 |
fi |
296 |
|
297 |
install-help: |
298 |
@echo "Copying help files." |
299 |
@if test ! "x`echo help/*.help`" = "xhelp/*.help"; then \ |
300 |
if test ! -d $(DEST)/help; then \ |
301 |
echo "Creating 'help' subdirectory."; \ |
302 |
$(top_srcdir)/mkinstalldirs $(DEST)/help; \ |
303 |
fi; \ |
304 |
for i in help/*.help; do \ |
305 |
$(INSTALL_DATA) $$i $(DEST)/help/; \ |
306 |
done; \ |
307 |
fi |
308 |
@if test ! "x`echo help/msg/*.help`" = "xhelp/msg/*.help"; then \ |
309 |
if test ! -d $(DEST)/help/msg; then \ |
310 |
echo "Creating 'help/msg' subdirectory."; \ |
311 |
$(top_srcdir)/mkinstalldirs $(DEST)/help/msg; \ |
312 |
fi; \ |
313 |
for i in help/msg/*.help; do \ |
314 |
$(INSTALL_DATA) $$i $(DEST)/help/msg/; \ |
315 |
done; \ |
316 |
fi |
317 |
@if test ! "x`echo help/set/*.help`" = "xhelp/set/*.help"; then \ |
318 |
if test ! -d $(DEST)/help/set; then \ |
319 |
echo "Creating 'help/set' subdirectory."; \ |
320 |
$(top_srcdir)/mkinstalldirs $(DEST)/help/set; \ |
321 |
fi; \ |
322 |
for i in help/set/*.help; do \ |
323 |
$(INSTALL_DATA) $$i $(DEST)/help/set/; \ |
324 |
done; \ |
325 |
fi |
326 |
@cd src/mod/; $(MAKE_INSTALL) install-help |
327 |
|
328 |
install-language: |
329 |
@echo "Copying language files." |
330 |
@if test ! "x`echo language/*.lang`" = "xlanguage/*.lang"; then \ |
331 |
if test ! -d $(DEST)/language; then \ |
332 |
echo "Creating 'language' subdirectory."; \ |
333 |
$(top_srcdir)/mkinstalldirs $(DEST)/language; \ |
334 |
fi; \ |
335 |
for i in language/*.lang; do \ |
336 |
$(INSTALL_DATA) $$i $(DEST)/language/; \ |
337 |
done; \ |
338 |
fi |
339 |
@cd src/mod/; $(MAKE_INSTALL) install-language |
340 |
|
341 |
install-filesys: |
342 |
@if test ! -d $(DEST)/filesys; then \ |
343 |
echo "Creating a skeletal filesys subdirectory."; \ |
344 |
$(top_srcdir)/mkinstalldirs $(DEST)/filesys; \ |
345 |
$(top_srcdir)/mkinstalldirs $(DEST)/filesys/incoming; \ |
346 |
fi |
347 |
|
348 |
install-doc: |
349 |
@$(INSTALL_DATA) README $(DEST) |
350 |
@cd doc/; $(MAKE_INSTALL) install |
351 |
|
352 |
install-scripts: |
353 |
@cd scripts/; $(MAKE_INSTALL) install |
354 |
|
355 |
install-end: |
356 |
@echo |
357 |
@echo "Installation completed." |
358 |
@echo "" |
359 |
@echo "You MUST ensure that you edit/verify your configuration file." |
360 |
@echo "'eggdrop.conf.dist' lists current options." |
361 |
@echo "" |
362 |
@echo "Remember to change directory to $(DEST) before you proceed." |
363 |
@echo "" |
364 |
|
365 |
#safety hash |