Makefile.in 9.9 KB

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