xref: /btstack/doc/manual/Makefile (revision 4badc595f1b7adbb0e62fafcc8eb3fb0ff35e762)
1503a627eSMilanka RingwaldGITHUB_URL = "https://github.com/bluekitchen/btstack/tree/"
2503a627eSMilanka RingwaldBTSTACK_FOLDER = ../../
3503a627eSMilanka RingwaldINTRO_FOLDER = docs-intro/
4503a627eSMilanka RingwaldMARKDOWN_FOLDER = docs-markdown/
5503a627eSMilanka RingwaldMKDOCS_FOLDER = docs/
6503a627eSMilanka RingwaldHTML_FOLDER = btstack/
778fab72eSMilanka RingwaldLATEX_FOLDER = latex/
8c5d406ecSMatthias Ringwald
9503a627eSMilanka Ringwaldall: html pdf
10503a627eSMilanka Ringwald
11503a627eSMilanka Ringwalddocs-markdown:
12503a627eSMilanka Ringwald	# create new docs_markdown
1378fab72eSMilanka Ringwald	rm -rf ${MARKDOWN_FOLDER}
1478fab72eSMilanka Ringwald	cp -r  docs-template ${MARKDOWN_FOLDER}
1578fab72eSMilanka Ringwald	mkdir  ${MARKDOWN_FOLDER}/examples
1678fab72eSMilanka Ringwald	mkdir  ${MARKDOWN_FOLDER}/ports
17503a627eSMilanka Ringwald
184a400a05SMilanka Ringwald	# create mkdocs-temp.yml
19503a627eSMilanka Ringwald	./update_mkdocs_yml.sh
20503a627eSMilanka Ringwald
21503a627eSMilanka Ringwald	# following should create files in docs-markdown
22503a627eSMilanka Ringwald
23503a627eSMilanka Ringwald	# Use chipsets/readme as chipsets.md
2478fab72eSMilanka Ringwald	sed -e "s|../doc/manual/docs-template/||g" ../../chipset/README.md > ${MARKDOWN_FOLDER}/chipsets.md
25503a627eSMilanka Ringwald
26503a627eSMilanka Ringwald	# create docs-markdown/appendix/apis.md
27c8c342a6SMilanka Ringwald	# create references.p
284a400a05SMilanka Ringwald	# create mkdocs.yml
2978fab72eSMilanka Ringwald	# create mkdocs-latex.yml
30c8c342a6SMilanka Ringwald	./markdown_create_apis.py -r ${BTSTACK_FOLDER} -g ${GITHUB_URL} -o ${MARKDOWN_FOLDER}
31503a627eSMilanka Ringwald
32503a627eSMilanka Ringwald	# create docs-markdown/examples/examples.md
33c8c342a6SMilanka Ringwald	./markdown_create_examples.py -r ${BTSTACK_FOLDER} -t ${INTRO_FOLDER} -o ${MARKDOWN_FOLDER}
34503a627eSMilanka Ringwald
35503a627eSMilanka Ringwald	# create docs-markdown/ports/existing_ports.md
36c8c342a6SMilanka Ringwald	./markdown_create_ports.py -r ${BTSTACK_FOLDER} -t ${INTRO_FOLDER} -o ${MARKDOWN_FOLDER}
37503a627eSMilanka Ringwald
38503a627eSMilanka Ringwald	# create docs-markdown/gatt_clients.md and  docs-template/gatt_services.md
39c8c342a6SMilanka Ringwald	./markdown_create_gatt_services_and_clients.py -r ${BTSTACK_FOLDER} -t ${INTRO_FOLDER} -o ${MARKDOWN_FOLDER}
40503a627eSMilanka Ringwald
41503a627eSMilanka Ringwalddocs: docs-markdown
424a400a05SMilanka Ringwald	# create new docs
4378fab72eSMilanka Ringwald	rm -rf ${MKDOCS_FOLDER}
4478fab72eSMilanka Ringwald	cp -r ${MARKDOWN_FOLDER} ${MKDOCS_FOLDER}
45503a627eSMilanka Ringwald
46503a627eSMilanka Ringwald	# docs-markdown -> docs
4794286028SMilanka Ringwald	./markdown_update_references.py  -i ${MARKDOWN_FOLDER} -o ${MKDOCS_FOLDER} -g ${GITHUB_URL}
48503a627eSMilanka Ringwald
49503a627eSMilanka Ringwald
50503a627eSMilanka Ringwaldhtml: docs
51503a627eSMilanka Ringwald	# generate HTML into btstack folder
521ca3442bSMatthias Ringwald	mkdocs build --clean
53c5d406ecSMatthias Ringwald
54c8c342a6SMilanka Ringwald	# post-process HTML using references.p
55c8c342a6SMilanka Ringwald	./html_postprocess_code_blocks.py -o ${HTML_FOLDER}
56503a627eSMilanka Ringwald
57503a627eSMilanka Ringwaldpdf: docs
5878fab72eSMilanka Ringwald	rm -rf ${LATEX_FOLDER}
5978fab72eSMilanka Ringwald	mkdir -p ${LATEX_FOLDER}
6078fab72eSMilanka Ringwald	cp -r ${MKDOCS_FOLDER}/picts ${LATEX_FOLDER}
6178fab72eSMilanka Ringwald
6278fab72eSMilanka Ringwald	cp mkdocs-latex.yml mkdocs.yml
63767003cdSMatthias Ringwald	# create latex/btstack_gettingstartec.tex with version
6478fab72eSMilanka Ringwald	./update_getting_started.sh ${LATEX_FOLDER}
6578fab72eSMilanka Ringwald
664f9c2a86SMatthias Ringwald	# create latex/btstack_generated.md -> latex/btstack_final.tex
6778fab72eSMilanka Ringwald	./markdown2tex.py  -i ${MKDOCS_FOLDER} -o ${LATEX_FOLDER}
6878fab72eSMilanka Ringwald
69*4badc595SMatthias Ringwald	cp ${MKDOCS_FOLDER}/ports/*.jpg ${MKDOCS_FOLDER}/ports/*.png ${LATEX_FOLDER}
7078fab72eSMilanka Ringwald	cd ${LATEX_FOLDER} && pdflatex btstack_gettingstarted.tex && pdflatex btstack_gettingstarted.tex
7178fab72eSMilanka Ringwald	mv ${LATEX_FOLDER}/btstack_gettingstarted.pdf btstack.pdf
721ca3442bSMatthias Ringwald
73503a627eSMilanka Ringwaldpreview: docs
74d5a53792SMatthias Ringwald	# race condition, open browser before starting MKdocs server
7541d889f3SMilanka Ringwald	open http://127.0.0.1:8010
7641d889f3SMilanka Ringwald	mkdocs serve -a localhost:8010
77c5d406ecSMatthias Ringwald
78add0254bSMatthias Ringwaldclean:
7978fab72eSMilanka Ringwald	rm -rf ${MARKDOWN_FOLDER} ${LATEX_FOLDER} ${HTML_FOLDER} ${MKDOCS_FOLDER}
8078fab72eSMilanka Ringwald	rm -f *.pdf
8178fab72eSMilanka Ringwald	rm -f references.p
8278fab72eSMilanka Ringwald	rm -f mkdocs.yml mkdocs-latex.yml mkdocs-temp.yml
831ca3442bSMatthias Ringwald
841ca3442bSMatthias Ringwald
85