Makefile.in 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241
  1. #
  2. # DO NOT EDIT THIS FILE
  3. #
  4. #
  5. SHELL = @SHELL@
  6. top_srcdir = @top_srcdir@
  7. srcdir = @srcdir@
  8. VPATH = @srcdir@
  9. @SET_MAKE@
  10. CCDEPMODE = @CCDEPMODE@
  11. BINEXEC = wraith@EXEEXT@
  12. STATICMAKEFILES = lib/Makefile src/mod/Makefile src/crypto/Makefile src/compat/Makefile src/Makefile Makefile
  13. CONFIGFILES = config.cache config.log config.status config.h src/buildinfo.h
  14. DISTROFILES = README LICENSE config.h.in autotools doc scripts lib Makefile.in build.sh configure src
  15. EXCLUDES = $(CONFIGFILES) $(STATICMAKEFILES)
  16. COMMIT_FULL := $(shell git log -1 --pretty=format:%H HEAD)
  17. COMMIT_SHORT := $(shell git log -1 --pretty=format:%h HEAD)
  18. BRANCH := $(shell git branch --no-color | grep "^*" | sed -e 's/^\* //')
  19. BUILDTS := $(shell git log -1 --pretty=format:%ct HEAD)
  20. VERSION := $(shell git describe)
  21. DISTRIB = wraith-$(VERSION)
  22. HELPFILE = doc/help.txt
  23. SETTINGSFILE = doc/settings.txt
  24. RESPONSESFILE = doc/responses.txt
  25. # defaults
  26. CXX = @CCACHE@ @DISTCC@ @CXX@ -static
  27. LD = @CXX@ -static
  28. CCDEBUG = @CCACHE@ @DISTCC@ @CCDEBUG@
  29. LDDEBUG = @CCDEBUG@
  30. STRIP = @STRIP@
  31. DIFF = @DIFF@
  32. #LIBS = @LIBS@ @ZLIB@
  33. LIBS = @LIBS@ @SSL_LIBS@
  34. DEBCXXFLAGS = -DDEBUG -fno-inline -g3 -ggdb3 -O0 -Wshadow -Wpointer-arith -Wcast-align @GCC3DEB@ @GCC4DEB@
  35. CFLGS = @GCC3@ -fno-rtti @SSL_INCLUDES@
  36. _CFLGS = -fno-strict-aliasing -W -Wformat \
  37. #-Wshadow -Wnested-externs -Wno-format-y2k \
  38. #-Wlarger-than-6608 -Wpointer-arith -Wcast-align \
  39. #-Waggrepate-return -Wbad-function-cast \
  40. #-Wlong-long @GCC3@
  41. #-Wmissing-noreturn
  42. #-Wunused-parameter
  43. #-Wwrite-strings
  44. #-Wconversion
  45. #-Wtraditional
  46. MAKEFLAGS = -s -j4
  47. MAKE_BIN = $(MAKE) 'MAKE=$(MAKE)' 'CXX=$(CXX)' 'LD=$(LD)' \
  48. 'CCDEPMODE=$(CCDEPMODE)' 'BRANCH=$(BRANCH)' 'COMMIT=$(COMMIT_SHORT)' 'BUILDTS=$(BUILDTS)' 'VERSION=$(VERSION)' \
  49. 'STRIP=$(STRIP)' 'CFLGS=$(CFLGS)' \
  50. 'LIBS=$(LIBS)' 'EGGEXEC=$(BINEXEC)' 'EGGBUILD=(wraith)'
  51. MAKE_DEBUG = $(MAKE) 'MAKE=$(MAKE)' 'CXX=$(CCDEBUG)' 'LD=$(LDDEBUG) -g' \
  52. 'CCDEPMODE=$(CCDEPMODE)' 'BRANCH=$(BRANCH)' 'COMMIT=$(COMMIT_SHORT)' 'BUILDTS=$(BUILDTS)' 'VERSION=$(VERSION)' \
  53. 'STRIP=touch' 'CFLGS=$(CFLGS) $(DEBCXXFLAGS)' \
  54. 'LIBS=$(LIBS)' 'EGGEXEC=$(BINEXEC)' 'EGGBUILD=(debug)'
  55. MAKE_UTILS = $(MAKE) 'MAKE=$(MAKE)' 'CXX=$(CCDEBUG)' 'STRIP=touch' \
  56. 'CCDEPMODE=$(CCDEPMODE)' \
  57. 'CFLGS=$(CFLGS) $(DEBCXXFLAGS)' 'LIBS=$(LIBS)' 'LD=$(LDDEBUG) -g'
  58. MAKE_UTILS_NR = $(MAKE) 'CXX=$(CXX)' 'STRIP=touch' \
  59. 'CCDEPMODE=$(CCDEPMODE)' \
  60. 'CFLGS=$(CFLGS) $(DEBCXXFLAGS)' 'LIBS=$(LIBS)' 'LD=$(LD) -g'
  61. MAKE_CONFIG = $(MAKE) 'MAKE=$(MAKE)'
  62. default: wraith
  63. test:
  64. cleanutils:
  65. @rm -f src/stringfix@EXEEXT@ src/sorthelp@EXEEXT@ src/makehelp@EXEEXT@ src/makeres@EXEEXT@ src/makeset@EXEEXT@
  66. clean: cleanutils
  67. +@cd src && $(MAKE) clean
  68. +@cd src/compat && $(MAKE) clean
  69. +@cd src/crypto && $(MAKE) clean
  70. +@cd src/mod && $(MAKE) distclean
  71. -+@cd lib && $(MAKE) clean
  72. @rm -f $(BINEXEC) stamp.* *~ src/*~ configure.temp .mangled
  73. @rm -f src/help.h src/response.h src/responses.h utctime@EXEEXT@ ts@EXEEXT@
  74. distclean: clean
  75. @rm -rf *-$(VERSION)/ autom4te.cache/ autoscan.log configure.scan
  76. @rm -rf src/.deps/ src/compat/.deps/ src/strucutres/.deps/ src/mod/*.mod/.deps/ src/crypto/.deps
  77. -+@cd lib && $(MAKE) distclean
  78. @rm -f $(STATICMAKEFILES) $(CONFIGFILES)
  79. distrib: clean
  80. @rm -rf $(DISTRIB)/
  81. -+@cd lib && $(MAKE) distclean
  82. @mkdir $(DISTRIB) && cp -r $(DISTROFILES) $(DISTRIB)
  83. @rm -rf `find $(DISTRIB)/ \( -name '*~' -o -name '*#' -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' -o -name '.gitignore' -o -name '.*.swp' \) -type f -print`
  84. @rm -rf `find $(DISTRIB)/ \( -name '.git' -o -name '.deps' \) -type d -print`
  85. @for s in $(EXCLUDES); do \
  86. rm -rf $(DISTRIB)/$$s; \
  87. done;
  88. @sed \
  89. -e 's/^COMMIT_FULL .*/COMMIT_FULL = $(COMMIT_FULL)/' \
  90. -e 's/^COMMIT_SHORT .*/COMMIT_SHORT = $(COMMIT_SHORT)/' \
  91. -e 's/^BRANCH .*/BRANCH = $(BRANCH)/' \
  92. -e 's/^BUILDTS .*/BUILDTS = $(BUILDTS)/' \
  93. -e 's/^VERSION .*/VERSION = $(VERSION)/' \
  94. $(DISTRIB)/Makefile.in > Makefile.in.tmp && mv Makefile.in.tmp $(DISTRIB)/Makefile.in
  95. # @for s in `find $(DISTRIB)/src/ -name '*.h' -or -name '*.c'`; do mangle -rnw $$s > /dev/null 2>&1; done
  96. tar: distrib
  97. tar -czvf $(DISTRIB).tar.gz $(DISTRIB)/
  98. ls -al $(DISTRIB).tar.gz
  99. # rm -rf $(DISTRIB)/
  100. # cd ../ && rm -rf distrib/
  101. indent:
  102. @ifiles="`find src -name '*.h' -or -name '*.c'`"; \
  103. for s in $$ifiles; \
  104. do \
  105. INDENT_PROFILE=private/indent.pro indent $$s; \
  106. done
  107. sort: sorthelp
  108. @(if test "x`tail -n 1 $(HELPFILE)`" != "x::end"; then \
  109. echo "::end" >> $(HELPFILE); \
  110. fi)
  111. # @(sed $(HELPFILE) -e "s/^$$/ /" > help~ && mv -f help~ $(HELPFILE)) || rm -f help~
  112. @(sed -r -e :a -e 's/^$$/ /' -e '$$!N;s/^ \n:/:/;ta' -e 'P;D' $(HELPFILE) > help~ && mv -f help~ $(HELPFILE)) || rm -f help~
  113. @cp -f $(HELPFILE) help.txt~
  114. @(src/sorthelp@EXEEXT@ $(HELPFILE) $(HELPFILE) || (cp -f help.txt~ $(HELPFILE); echo "Sort failed, restoring backup."))
  115. @rm -f help.txt~
  116. help: makehelp stringfix
  117. @src/makehelp@EXEEXT@ $(HELPFILE) src/help.h.tmp~
  118. @(if [ ! -f src/help.h ]; then \
  119. touch src/help.h; \
  120. fi)
  121. @src/stringfix@EXEEXT@ src/help.h.tmp~ src/help.h~ 1
  122. @(if test "x`$(DIFF) -qurN src/help.h~ src/help.h`" != "x"; then \
  123. cp -f src/help.h~ src/help.h; \
  124. fi)
  125. set: makeset
  126. @src/makeset@EXEEXT@ $(SETTINGSFILE) src/set_default.h~
  127. @(if [ ! -f src/set_default.h ]; then \
  128. touch src/set_default.h; \
  129. fi)
  130. @(if test "x`$(DIFF) -qurN src/set_default.h~ src/set_default.h`" != "x"; then \
  131. cp -f src/set_default.h~ src/set_default.h; \
  132. fi)
  133. res: makeres
  134. @src/makeres@EXEEXT@ $(RESPONSESFILE) src/ 1
  135. @(if [ ! -f src/response.h ]; then \
  136. touch src/response.h; \
  137. fi)
  138. @(if [ ! -f src/responses.h ]; then \
  139. touch src/responses.h; \
  140. fi)
  141. @(if test "x`$(DIFF) -qurN src/response.h~ src/response.h`" != "x"; then \
  142. cp -f src/response.h~ src/response.h; \
  143. fi)
  144. @(if test "x`$(DIFF) -qurN src/responses.h~ src/responses.h`" != "x"; then \
  145. cp -f src/responses.h~ src/responses.h; \
  146. fi)
  147. stringfix: src/stringfix.c config.h
  148. +@cd src && ${MAKE_UTILS} stringfix
  149. makeres: src/makeres.c
  150. +@cd src && ${MAKE_UTILS} makeres
  151. makeset: src/makeset.c
  152. +@cd src && ${MAKE_UTILS} makeset
  153. makehelp: src/makehelp.c
  154. +@cd src && ${MAKE_UTILS} makehelp
  155. sorthelp: src/sorthelp.c
  156. +@cd src && ${MAKE_UTILS} sorthelp
  157. utils: stringfix makehelp
  158. crypto:
  159. +@cd src/crypto && ${MAKE_UTILS} crypto
  160. general: help res set
  161. check:
  162. .NOTPARALLEL: checkclean.wraith checkclean.debug
  163. checkclean.wraith:
  164. @(if test -f stamp.debug; then \
  165. echo "[*] Cleaning up alternate build"; \
  166. $(MAKE) MAKEFLAGS=-s clean; \
  167. fi)
  168. @touch stamp.wraith
  169. checkclean.debug:
  170. @(if test -f stamp.wraith; then \
  171. echo "[*] Cleaning up alternate build"; \
  172. $(MAKE) MAKEFLAGS=-s clean; \
  173. fi)
  174. @touch stamp.debug
  175. wraith: checkclean.wraith general
  176. @echo ""
  177. @echo "Making binary"
  178. @echo ""
  179. @echo ""
  180. +@cd lib && $(MAKE)
  181. +@cd src/mod && $(MAKE_BIN) static
  182. +@cd src && $(MAKE_BIN) $(BINEXEC)
  183. @echo ""
  184. dwraith: debug
  185. debug: checkclean.debug general
  186. @echo ""
  187. @echo "Making debug binary"
  188. @echo ""
  189. @echo ""
  190. +@cd lib && $(MAKE) debug
  191. +@cd src/mod && $(MAKE_DEBUG) static
  192. +@cd src && $(MAKE_DEBUG) $(BINEXEC)
  193. @echo ""
  194. #safety hash