X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=Makefile;h=1ddd60f8a602766771405fada0f845e063594550;hb=2f9c1ecf8853d513ec86427b20e0d006b5296c9c;hp=60aec9a08b6049328ee031dd7e19fbaeafc8664e;hpb=918bd5b9122f929268e0979063c4844e85090858;p=github%2Fshaarli%2FShaarli.git diff --git a/Makefile b/Makefile index 60aec9a0..1ddd60f8 100644 --- a/Makefile +++ b/Makefile @@ -124,8 +124,20 @@ test: @echo "-------" @echo "PHPUNIT" @echo "-------" - @mkdir -p sandbox - @$(BIN)/phpunit tests + @mkdir -p sandbox coverage + @$(BIN)/phpunit --coverage-php coverage/main.cov --testsuite unit-tests + +locale_test_%: + @UT_LOCALE=$*.utf8 \ + $(BIN)/phpunit \ + --coverage-php coverage/$(firstword $(subst _, ,$*)).cov \ + --bootstrap tests/languages/bootstrap.php \ + --testsuite language-$(firstword $(subst _, ,$*)) + +all_tests: test locale_test_de_DE locale_test_en_US locale_test_fr_FR + @$(BIN)/phpcov merge --html coverage coverage + @# --text doesn't work with phpunit 4.* (v5 requires PHP 5.6) + @#$(BIN)/phpcov merge --text coverage/txt coverage ## # Custom release archive generation @@ -169,6 +181,12 @@ clean: @git clean -df @rm -rf sandbox +### generate the AUTHORS file from Git commit information +authors: + @cp .github/mailmap .mailmap + @git shortlog -sne > AUTHORS + @rm .mailmap + ### generate Doxygen documentation doxygen: clean @rm -rf doxygen @@ -176,42 +194,28 @@ doxygen: clean ### update the local copy of the documentation doc: clean - @rm -rf doc - @git clone https://github.com/shaarli/Shaarli.wiki.git doc - @rm -rf doc/.git - -### Generate a custom sidebar -# -# Sidebar content: -# - convert GitHub-flavoured relative links to standard Markdown -# - trim HTML, only keep the list () part -htmlsidebar: - @echo '
' > doc/sidebar.html - @awk 'BEGIN { FS = "[\\[\\]]{2}" }'\ - 'm = /\[/ { t=$$2; gsub(/ /, "-", $$2); print $$1"["t"]("$$2".html)"$$3 }'\ - '!m { print $$0 }' doc/_Sidebar.md > doc/tmp.md - @pandoc -f markdown -t html5 -s doc/tmp.md | awk '/(ul>|li>)/' >> doc/sidebar.html - @echo '
' >> doc/sidebar.html - @rm doc/tmp.md + @rm -rf doc/md/ + @git clone https://github.com/shaarli/Shaarli.wiki.git doc/md + mv doc/md/Home.md doc/md/index.md + @rm -rf doc/md/.git ### Convert local markdown documentation to HTML # # For all pages: -# - infer title from the file name # - convert GitHub-flavoured relative links to standard Markdown -# - insert the sidebar menu +# - generate html documentation with mkdocs htmlpages: - @for file in `find doc/ -maxdepth 1 -name "*.md"`; do \ - base=`basename $$file .md`; \ - sed -i "1i #$${base//-/ }" $$file; \ - awk 'BEGIN { FS = "[\\[\\]]{2}" }'\ - 'm = /\[/ { t=$$2; gsub(/ /, "-", $$2); print $$1"["t"]("$$2".html)"$$3 }'\ - '!m { print $$0 }' $$file > doc/tmp.md; \ - mv doc/tmp.md $$file; \ - pandoc -f markdown_github -t html5 -s \ - -c "github-markdown.css" \ - -T Shaarli -M pagetitle:"$${base//-/ }" -B doc/sidebar.html \ - -o doc/$$base.html $$file; \ - done; - -htmldoc: doc htmlsidebar htmlpages + # Rename local [[links]] to regular links. + @for file in `find doc/md/ -maxdepth 1 -name "*.md"`; do \ + sed -e "s/\[\[\(.*\)\]\]/[\1](\1)/g" "$$file" > doc/md/tmp.md; \ + mv doc/md/tmp.md $$file; \ + done + + python3 -m venv venv/ + bash -c 'source venv/bin/activate; \ + pip install mkdocs; \ + mkdocs build' + find doc/html/ -type f -exec chmod a-x '{}' \; + rm -r venv + +doc_html: authors doc htmlpages