X-Git-Url: http://git.euphorik.ch/index.cgi?a=blobdiff_plain;f=WCudaMSE%2FBUILDER%2Fmakefile%2Fprivate%2Fdoc%2FdoxyCPP.mk;fp=WCudaMSE%2FBUILDER%2Fmakefile%2Fprivate%2Fdoc%2FdoxyCPP.mk;h=f066f558f7a7796d2a56ff3a802f70f2f0c488a6;hb=8d08c12b29c2a14684f35c023ee39e694bb80d25;hp=0000000000000000000000000000000000000000;hpb=226de81f7e1f1fbf4ac79d0d089e8a05ec7159a0;p=GPU.git diff --git a/WCudaMSE/BUILDER/makefile/private/doc/doxyCPP.mk b/WCudaMSE/BUILDER/makefile/private/doc/doxyCPP.mk new file mode 100755 index 0000000..f066f55 --- /dev/null +++ b/WCudaMSE/BUILDER/makefile/private/doc/doxyCPP.mk @@ -0,0 +1,165 @@ +# Version : 0.0.7 +# Date : 17.01.2014 +# Author : Cedric.Bilat@he-arc.ch +# + +ifndef __DOXYGEN_MK__ +__DOXYGEN_MK__=true + +############################################## +# Variables # +############################################## + +TARGET_DOC_PATH:=${TARGET_PATH}/doc + +TARGET_DOC_TEMP:=${TARGET_DOC_PATH}/temp +TARGET_DOC_FINAL:=${TARGET_DOC_PATH}/final +TARGET_DOC_DEPLOY:=${TARGET_DEPLOY_PATH_DOC} +TARGET_DOC_NAME=$(TARGET_NAME).doc.tar.gz +TARGET_DOC_DEPLOY_FILE:=$(TARGET_DOC_DEPLOY)/$(TARGET_DOC_NAME) + +-include ${ROOT_MAKEFILE}/public/doc/doxygen.mk + +############################################## +# Set # +############################################## + +DOX_SRC_FINAL:= $(filter-out $(DOX_SRC_EXCLUDE),$(DOX_SRC)) +#https://www.gnu.org/software/make/manual/make.html#Functions + +############################################## +# TARGET # +############################################## + + +###################### +# Doxygen # +###################### + +.PHONY: doc +doc: docTitleStart docTools docPurge docPrepare docConfig docBuild docDeploy docTitleEnd + +.PHONY: docTitleStart +docTitleStart: + @echo "==================================================================================" + @echo "[CBI] -> Target : "$(TARGET_NAME) + @echo "[CBI] -> Task : Doc" + @echo "[CBI] -> Doc src : "${DOX_SRC_FINAL} + @echo "[CBI] -> Directory doc html : "${TARGET_DOC_FINAL} +ifdef IS_DEPLOY + @echo "[CBI] -> Directory doc tar : "$(TARGET_DOC_DEPLOY) +endif + @echo "==================================================================================" + @echo "" + +.PHONY: docTitleEnd +docTitleEnd: + @echo "" + @echo "==================================================================================" + @echo "[CBI] -> Target : "$(TARGET_NAME) + @echo "[CBI] -> Task : Doc" + @echo "[CBI] -> Doc src : "${DOX_SRC_FINAL} + @echo "[CBI] -> Directory doc html : "${TARGET_DOC_FINAL} +ifdef IS_DEPLOY + @echo "[CBI] -> Directory doc tar : "$(TARGET_DOC_DEPLOY) +endif + @echo "==================================================================================" + +.PHONY: docTools +docTools: + @echo "[Tools]" + @echo "" + @echo "doxygen version : " + @doxygen --version + @dot -V + @echo "" + +.PHONY: docPurge +docPurge: + @echo "[Purge]" + @echo "" + @echo "delete " $(TARGET_DOC_PATH) + @echo "delete " $(TARGET_DOC_DEPLOY_FILE) + @rm -f -r $(TARGET_DOC_PATH) + @rm -f $(TARGET_DOC_DEPLOY_FILE) + @echo "" + +.PHONY: docPrepare +docPrepare: + @echo "[Prepare]" + @echo "" + @echo "mkdir " $(TARGET_DOC_FINAL) + @echo "mkdir " $(TARGET_DOC_TEMP) + @mkdir -p $(TARGET_DOC_FINAL) + @mkdir -p ${TARGET_DOC_TEMP} +ifdef IS_DEPLOY + @echo "mkdir " $(TARGET_DOC_DEPLOY) + @mkdir -p $(TARGET_DOC_DEPLOY) +endif + @echo "" + +.PHONY: docConfig +docConfig: + @echo "[Configuration]" + @doxygen -g $(TARGET_DOC_TEMP)/doxyFileDefaultTMP + @echo "Parse and fill defaut doxy-config with project-specific-config ..." + @echo "" +#DO NOT MODIFY THE SPACE at left of the first = +#Choice for separateur sed is ; + @sed -e 's;My Project;$(TARGET_NAME);' \ + -e 's;INPUT =;INPUT = $(DOX_SRC_FINAL);' \ + -e 's;CREATE_SUBDIRS = NO;CREATE_SUBDIRS = $(DOX_CREATE_SUBDIRS);' \ + -e 's;OUTPUT_DIRECTORY =;OUTPUT_DIRECTORY = \"$(TARGET_DOC_FINAL)\";' \ + -e 's;RECURSIVE = NO;RECURSIVE = $(DOX_RECURSIVE);' \ + -e 's;OUTPUT_LANGUAGE = English;OUTPUT_LANGUAGE = $(DOX_OUTPUT_LANGUAGE);' \ + -e 's;GENERATE_LATEX = YES;GENERATE_LATEX = $(DOX_GENERATE_LATEX);' \ + -e 's;CLASS_DIAGRAMS = YES;CLASS_DIAGRAMS = $(DOX_CLASS_DIAGRAMS);' \ + -e 's;EXTRACT_ALL = NO;EXTRACT_ALL = $(DOX_EXTRACT_ALL);' \ + -e 's;UML_LOOK = NO;UML_LOOK = $(DOX_UML_LOOK);' \ + -e 's;CALL_GRAPH = NO;CALL_GRAPH = $(DOX_CALL_GRAPH);' \ + -e 's;CALLER_GRAPH = NO;CALLER_GRAPH = $(DOX_CALLER_GRAPH);' \ + -e 's;EXTRACT_PRIVATE = NO;EXTRACT_PRIVATE = $(DOX_EXTRACT_PRIVATE);' \ + -e 's;HAVE_DOT = NO;HAVE_DOT = $(DOX_HAVE_DOT);' $(TARGET_DOC_TEMP)/doxyFileDefaultTMP >$(TARGET_DOC_TEMP)/doxyFileProjectTMP +#-e 's;INPUT =;INPUT = $(SRC_PATH_ALL) $(SRC_AUX);' \ + +.PHONY: docBuild +docBuild: + @echo "[Build]" + @echo "" + @doxygen $(TARGET_DOC_TEMP)/doxyFileProjectTMP + @echo "" + +.PHONY: docDeploy +docDeploy: +ifdef TARGET_DEPLOY_PATH + @echo "[Deploy]" + @echo "" + @echo "creating "$(TARGET_NAME).doc.tar +ifeq ($(OS),Linux) + @tar -cf ${TARGET_DOC_TEMP}/$(TARGET_NAME).doc.tar -C ${TARGET_DOC_FINAL} . + @echo "creating "$(TARGET_NAME).doc.tar.gz + @gzip -q ${TARGET_DOC_TEMP}/$(TARGET_NAME).doc.tar ${TARGET_DOC_TEMP}/$(TARGET_NAME).doc.tar.gz + @echo "moving "$(TARGET_NAME).doc.tar.gz" -> "$(TARGET_DOC_DEPLOY) + @mv -f $(TARGET_DOC_TEMP)/$(TARGET_NAME).doc.tar.gz $(TARGET_DOC_DEPLOY) +else +#@tar -cf '${TARGET_DOC_TEMP}/$(TARGET_NAME).doc.tar' -C ${TARGET_DOC_FINAL} . +#q: pose problem! + @tar -cf ${TARGET_DOC_DEPLOY}/$(TARGET_NAME).doc.tar -C ${TARGET_DOC_FINAL} . + @echo "creating "$(TARGET_NAME).doc.tar.gz + @gzip -q ${TARGET_DOC_DEPLOY}/$(TARGET_NAME).doc.tar ${TARGET_DOC_DEPLOY}/$(TARGET_NAME).doc.tar.gz +#@echo "moving "$(TARGET_NAME).doc.tar.gz" -> "$(TARGET_DOC_DEPLOY) +#@mv -f $(TARGET_NAME).doc.tar.gz $(TARGET_DOC_DEPLOY) +endif +endif + +.PHONY: docShow +docShow: + @echo "show " ${TARGET_DOC_FINAL}/html/index.html + @chrome ${TARGET_DOC_FINAL}/html/index.html + +############################################# +# END # +############################################# + +endif#__DOXYGEN_MK__ +