📄 makefile
字号:
.PHONY: all dynfiles proto clean_proto clean_gen clean_compile cleanMODE=macedonhackerPROTOCOLS = `grep -v '\#' macedon.protocols | awk '{print $$1}'`TEST_PROTO = `awk '/[a-z][:alnum:]*[:space:]+[:digit:]+/ {print $$1 $$2}' macedon.protocols`all: Makefile.vars Makefile.proto load_protocols.ccall: make --no-print-directory -f Makefile.proto make --no-print-directory -f Makefile.compileclean: clean_compile clean_proto clean_gen rm -f Makefile.proto rm -f Makefile.vars rm -f load_protocols.ccclean_proto: make -f Makefile.proto cleanclean_compile: make -f Makefile.compile cleantt: echo ${PROTOCOLS} echo ${TEST_PROTO}Makefile.proto: Makefile.vars Makefile @echo "Recreating $@" @echo "#AUTO GENERATED." > $@ @echo "" >> $@ @echo "include Makefile.vars" >>$@ @echo "" >> $@ @echo "CLEANFILES=">>$@ @echo "" >> $@ @echo ".PHONY: clean \$$(PROTOCOLS)">>$@ @echo "all: \$$(PROTOCOLS)">>$@ @echo "">>$@ @echo "ifeq (\$$(MODE),macedonhacker)">>$@ @echo "include Makefile.gen" >>$@ @echo "else" >> $@ @echo "macedon: ">>$@ @echo " echo \"Cannot rebuild macedon executable!!!\"" >> $@ @echo "endif" >> $@ @echo "" >> $@ @for X in ${PROTOCOLS}; do \ echo "" >> $@; \ echo "$${X}files = $$X.h $${X}2.h $$X.cc $$X-funcs.cc $${X}2.cc $$X-macros.h">>$@;\ echo "CLEANFILES += \$${$${X}files}">>$@;\ echo "$$X: \$${$${X}files}">>$@;\ echo "\$${$${X}files}: macedon $$X.mac" >>$@;\ echo " ./macedon $$X.mac" >>$@;\ done @echo "">>$@ @echo "ifeq (\$$(MODE),macedonhacker)">>$@ @echo "clean: gen-clean">>$@ @echo "else">>$@ @echo "clean:">>$@ @echo "endif">>$@ @echo " rm -f \$${CLEANFILES}">>$@ # \$$(wildcard $$X-*.cc)">>$@;Makefile.vars: macedon.protocols Makefile @echo "Recreating $@" @echo "#AUTO GENERATED">$@ @echo "">>$@ @echo "MODE=${MODE}">>$@ @echo "">>$@ @echo "PROTSRCS = \$${SRCSSARO}">>$@ @echo -n "PROTOCOLS = ">>$@ @echo ${PROTOCOLS} >> $@ @echo "" >> $@ @for X in ${PROTOCOLS}; do \ echo "SRCS$$X = $$X.cc $${X}2.cc $$X-funcs.cc">>$@;\ echo "PROTSRCS += \$${SRCS$$X}">>$@;\ echo "" >> $@; \ done @echo "PROTOBJS = \$$(PROTSRCS:.cc=.o)">>$@load_protocols.cc: macedon.protocols Makefile @echo "Recreating $@" @echo "//AUTO GENERATED." > $@ @echo "#include <stdio.h>" > $@ @echo "" >> $@ @for X in ${PROTOCOLS}; do \ echo "#include \"$${X}2.h\"">>$@;\ done @echo "" >> $@ @echo "void load_protocols() {" >> $@ @awk '/^[^#]/ {printf(" if(%s_load_protocol(%d)) {\n printf(\"ERROR Loading Protocol: %s\\n\");\n }\n",$$1,$$2,$$1)}' macedon.protocols >> $@ @echo "}" >> $@
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -