From patchwork Mon Jan 20 12:55:42 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kieran Bingham X-Patchwork-Id: 2709 X-Patchwork-Delegate: kieran.bingham@ideasonboard.com Return-Path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id BFD6360804 for ; Mon, 20 Jan 2020 13:55:48 +0100 (CET) Received: from localhost.localdomain (cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 57D0910D6; Mon, 20 Jan 2020 13:55:48 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1579524948; bh=zurCK2/8QqqZHV2dg76g26XT0x/0Pfn52tplk5NyCnc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ZIsm69nzM8tiQ3OW5tNXFgUBZs/g2ugIX/F4g0VCmMG0vLX66Ti1yVCrRfEWcAUQ6 kvZ0tpY/PopMm4kjok4jxqkKWUSu8+xUIrcYKRI0LexyjsE+n8Qd7CUp/a3O9vRw3D ezX6Mfia76FsXXiLqS/SuLQMoHwARaWs7264C8TY= From: Kieran Bingham To: LibCamera Devel Date: Mon, 20 Jan 2020 12:55:42 +0000 Message-Id: <20200120125544.12562-2-kieran.bingham@ideasonboard.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200120125544.12562-1-kieran.bingham@ideasonboard.com> References: <20200120125544.12562-1-kieran.bingham@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 1/3] pipeline_handler: Include system header for dev_t X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Jan 2020 12:55:49 -0000 Compiling with gcc 9.2.0-r5 identifies the following compile time failure: FAILED: src/libcamera/4ab8042@@camera@sha/camera.cpp.o c++ -Isrc/libcamera/4ab8042@@camera@sha -Isrc/libcamera -I../src/libcamera -Iinclude -I../include -Isrc/libcamera/include -I../src/libcamera/include -Iinclude/libcamera -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -Wextra -Werror -std=c++14 -g -Wno-unused-parameter -include config.h -fPIC -pthread -MD -MQ 'src/libcamera/4ab8042@@camera@sha/camera.cpp.o' -MF 'src/libcamera/4ab8042@@camera@sha/camera.cpp.o.d' -o 'src/libcamera/4ab8042@@camera@sha/camera.cpp.o' -c ../src/libcamera/camera.cpp In file included from ../src/libcamera/camera.cpp:17: ../src/libcamera/include/pipeline_handler.h:91:42: error: 'dev_t' has not been declared 91 | std::unique_ptr data, dev_t devnum = 0); | ^~~~~ Provide the required header to define the dev_t type. Signed-off-by: Kieran Bingham Reviewed-by: Laurent Pinchart --- src/libcamera/include/pipeline_handler.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libcamera/include/pipeline_handler.h b/src/libcamera/include/pipeline_handler.h index a6c1e1fbae38..5fa0db51c625 100644 --- a/src/libcamera/include/pipeline_handler.h +++ b/src/libcamera/include/pipeline_handler.h @@ -13,6 +13,7 @@ #include #include #include +#include #include #include From patchwork Mon Jan 20 12:55:43 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kieran Bingham X-Patchwork-Id: 2710 Return-Path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 2A0CE60804 for ; Mon, 20 Jan 2020 13:55:49 +0100 (CET) Received: from localhost.localdomain (cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id A9B4F1534; Mon, 20 Jan 2020 13:55:48 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1579524948; bh=qSfWAoJm1M3l/VHbJR5pTx95asXBASoKqEhZCnNodC8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=R2uBsfiZ8LPR9qHSOdg8thtrlkYDKmjySCe6QPNw63P8CQAUTzyuB9sZ7YFikvIte pDlCIL3u0efhiYeFl6VTvoLS5UKwx5gBElIfE4fpd6GrFqpcu+P6vSH0Ip4HXoHZWT mcdZ7dRJshxVgvaJ4TgAKy2cMiPYB8HT+PeHsMpc= From: Kieran Bingham To: LibCamera Devel Date: Mon, 20 Jan 2020 12:55:43 +0000 Message-Id: <20200120125544.12562-3-kieran.bingham@ideasonboard.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200120125544.12562-1-kieran.bingham@ideasonboard.com> References: <20200120125544.12562-1-kieran.bingham@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 2/3] Documentation: Add linkcheck target X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Jan 2020 12:55:49 -0000 Sphinx provides a run-target to verify external links specified in the documentation. This requires an active connection to be able to validate the links. Add a meson target to integrate the linkcheck facility into our build and test system. Signed-off-by: Kieran Bingham Reviewed-by: Laurent Pinchart --- This can be utilised by automated checks to make sure we don't reference any stale links. This produces output such as the following: libcamera/build$ ninja Documentation/linkcheck [1/1] Generating documentation-linkcheck with a custom command. Running Sphinx v1.8.5 making output directory... building [mo]: targets for 0 po files that are out of date building [linkcheck]: targets for 5 source files that are out of date updating environment: 5 added, 0 changed, 0 removed reading sources... [ 20%] api-html/index reading sources... [ 40%] coding-style reading sources... [ 60%] contributing reading sources... [ 80%] docs reading sources... [100%] index looking for now-outdated files... none found pickling environment... done checking consistency... done preparing documents... done writing output... [ 20%] api-html/index writing output... [ 40%] coding-style (line 20) ok https://www.kernel.org/doc/html/latest/process/coding-style.html (line 178) ok https://chromium.googlesource.com/chromium/src/+/master/styleguide/c++/c++.md#object-ownership-and-calling-conventions (line 39) ok https://google.github.io/styleguide/cppguide.html writing output... [ 60%] contributing (line 29) ok https://linuxtv.org/ (line 12) ok https://lists.libcamera.org/listinfo/libcamera-devel (line 42) ok http://www.doxygen.nl (line 29) ok https://git.linuxtv.org/libcamera.git/ (line 42) redirect http://www.sphinx-doc.org - with Found to http://www.sphinx-doc.org/en/master/ (line 62) ok https://developercertificate.org/ (line 21) redirect https://webchat.freenode.net/?channels=%23libcamera&uio=d4 - with Found to https://webchat.freenode.net/#%23libcamera writing output... [ 80%] docs writing output... [100%] index build succeeded. Look for any errors in the above output or in Documentation/linkcheck/output.txt --- Documentation/meson.build | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Documentation/meson.build b/Documentation/meson.build index 9136506f5d9c..c4e9892470de 100644 --- a/Documentation/meson.build +++ b/Documentation/meson.build @@ -62,4 +62,10 @@ if sphinx.found() build_by_default : true, install : true, install_dir : doc_install_dir) + + custom_target('documentation-linkcheck', + command: [sphinx, '-W', '-b', 'linkcheck', meson.current_source_dir(), '@OUTPUT@'], + build_always_stale: true, + input: docs_sources, + output: 'linkcheck') endif From patchwork Mon Jan 20 12:55:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kieran Bingham X-Patchwork-Id: 2711 X-Patchwork-Delegate: kieran.bingham@ideasonboard.com Return-Path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 769A560804 for ; Mon, 20 Jan 2020 13:55:49 +0100 (CET) Received: from localhost.localdomain (cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 12730A62; Mon, 20 Jan 2020 13:55:49 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1579524949; bh=JDMDsOkSAsBapJcGljUU5hY1HR3gUoiiNJTImJeeoCw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=v1VF8McD8bpygrMOFLi4juRXR5FzfnDoqpqQeTWJZKBKLbSOvUWDy0FMO+Kl4D6uA 05sR+and9oRnzoRbAFWQ2xhiWCbnhXvM/ncISLONdEcWx3MqmOwfXgYHeUAIfjIK41 LoqJo70Lna6+1sDQyc99q3p3ftokSKLZMABVbCR0= From: Kieran Bingham To: LibCamera Devel Date: Mon, 20 Jan 2020 12:55:44 +0000 Message-Id: <20200120125544.12562-4-kieran.bingham@ideasonboard.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200120125544.12562-1-kieran.bingham@ideasonboard.com> References: <20200120125544.12562-1-kieran.bingham@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 3/3] ci: gitlab: Provide initial automated testing X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Jan 2020 12:55:49 -0000 Integrate compile testing and the ninja test framework. Any unit tests registered with the Meson Build system will automatically be run with 'ninja test'. Documentation will be built, and the resulting package will be installed to 'libcamera/package' Signed-off-by: Kieran Bingham --- v2: - CI: Add Documentation to build artifacts - CI: Convert to alpine image - CI: test install phase --- .gitlab-ci.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 000000000000..5851af90e22c --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,18 @@ +image: alpine:edge + +build: + stage: build + before_script: + - apk add --no-cache gcc g++ musl-dev meson py3-yaml py3-sphinx linux-headers pkgconfig eudev eudev-dev + script: + - mkdir libcamera && cd libcamera && meson .. && ninja + - ninja Documentation/linkcheck + - DESTDIR=$PWD/package ninja install + artifacts: + expire_in: 6 hrs + paths: + - libcamera/Documentation/* + - libcamera/src/libcamera/libcamera.so + - libcamera/test/test_init + - libcamera/meson-logs/testlog.txt + - libcamera/package/*