[{"id":3550,"web_url":"https://patchwork.libcamera.org/comment/3550/","msgid":"<20200120170019.GK20122@pendragon.ideasonboard.com>","date":"2020-01-20T17:00:19","subject":"Re: [libcamera-devel] [PATCH 2/3] Documentation: Add linkcheck\n\ttarget","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Kieran,\n\nThank you for the patch.\n\nOn Mon, Jan 20, 2020 at 12:55:43PM +0000, Kieran Bingham wrote:\n> Sphinx provides a run-target to verify external links specified in the\n> documentation. This requires an active connection to be able to validate\n> the links.\n> \n> Add a meson target to integrate the linkcheck facility into our build\n> and test system.\n> \n> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n> --\n> \n> This can be utilised by automated checks to make sure we don't reference\n> any stale links.\n> \n> This produces output such as the following:\n> \n> libcamera/build$ ninja Documentation/linkcheck\n> [1/1] Generating documentation-linkcheck with a custom command.\n> Running Sphinx v1.8.5\n> making output directory...\n> building [mo]: targets for 0 po files that are out of date\n> building [linkcheck]: targets for 5 source files that are out of date\n> updating environment: 5 added, 0 changed, 0 removed\n> reading sources... [ 20%] api-html/index\n> reading sources... [ 40%] coding-style\n> reading sources... [ 60%] contributing\n> reading sources... [ 80%] docs\n> reading sources... [100%] index\n> \n> looking for now-outdated files... none found\n> pickling environment... done\n> checking consistency... done\n> preparing documents... done\n> writing output... [ 20%] api-html/index\n> \n> writing output... [ 40%] coding-style\n> \n> (line   20) ok        https://www.kernel.org/doc/html/latest/process/coding-style.html\n> (line  178) ok        https://chromium.googlesource.com/chromium/src/+/master/styleguide/c++/c++.md#object-ownership-and-calling-conventions\n> (line   39) ok        https://google.github.io/styleguide/cppguide.html\n> writing output... [ 60%] contributing\n> \n> (line   29) ok        https://linuxtv.org/\n> (line   12) ok        https://lists.libcamera.org/listinfo/libcamera-devel\n> (line   42) ok        http://www.doxygen.nl\n> (line   29) ok        https://git.linuxtv.org/libcamera.git/\n> (line   42) redirect  http://www.sphinx-doc.org - with Found to http://www.sphinx-doc.org/en/master/\n> (line   62) ok        https://developercertificate.org/\n> (line   21) redirect  https://webchat.freenode.net/?channels=%23libcamera&uio=d4 - with Found to https://webchat.freenode.net/#%23libcamera\n> writing output... [ 80%] docs\n> \n> writing output... [100%] index\n> \n> build succeeded.\n> \n> Look for any errors in the above output or in Documentation/linkcheck/output.txt\n> ---\n>  Documentation/meson.build | 6 ++++++\n>  1 file changed, 6 insertions(+)\n> \n> diff --git a/Documentation/meson.build b/Documentation/meson.build\n> index 9136506f5d9c..c4e9892470de 100644\n> --- a/Documentation/meson.build\n> +++ b/Documentation/meson.build\n> @@ -62,4 +62,10 @@ if sphinx.found()\n>                    build_by_default : true,\n>                    install : true,\n>                    install_dir : doc_install_dir)\n> +\n> +    custom_target('documentation-linkcheck',\n> +                  command: [sphinx, '-W', '-b', 'linkcheck', meson.current_source_dir(), '@OUTPUT@'],\n> +                  build_always_stale: true,\n> +                  input: docs_sources,\n> +                  output: 'linkcheck')\n>  endif","headers":{"Return-Path":"<laurent.pinchart@ideasonboard.com>","Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id E5F5B60455\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 20 Jan 2020 18:00:51 +0100 (CET)","from pendragon.ideasonboard.com (81-175-216-236.bb.dnainternet.fi\n\t[81.175.216.236])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 69EA6A62;\n\tMon, 20 Jan 2020 18:00:51 +0100 (CET)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1579539651;\n\tbh=c6kNn0glvOaVZ/ssu68o6TELD1lelRL0l/fWoDQZdRc=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=PF4ssR/7grpE/nbOGfv/qUsFGjJeDPXW31px7AFaTKsJVd7jiE/EWMoS6CjY2ROu/\n\tABVHFrP5ytHbVCUEQ3TH7OKQaiEHRX10o2uQXpNbf6cWiKCNP6oLWMgXHqDWXb9cBI\n\tOQaBNuSnl5VyM/kdlt96K9wDoRLe83y/eNyz5FcQ=","Date":"Mon, 20 Jan 2020 19:00:19 +0200","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Cc":"LibCamera Devel <libcamera-devel@lists.libcamera.org>","Message-ID":"<20200120170019.GK20122@pendragon.ideasonboard.com>","References":"<20200120125544.12562-1-kieran.bingham@ideasonboard.com>\n\t<20200120125544.12562-3-kieran.bingham@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20200120125544.12562-3-kieran.bingham@ideasonboard.com>","User-Agent":"Mutt/1.10.1 (2018-07-13)","Subject":"Re: [libcamera-devel] [PATCH 2/3] Documentation: Add linkcheck\n\ttarget","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","X-List-Received-Date":"Mon, 20 Jan 2020 17:00:52 -0000"}}]