Skip to content

Commit 695af35

Browse files
camera-service: Add recipes for Qualcomm Linux Embedded Camera Service. (#1501)
Qualcomm Camera Service provides a modular camera framework with client, and server components. It abstracts camera hardware, and enables high performance capture pipelines for embedded Linux platforms. Include the following components: - camera-common: shared utilities used by both client and server - camera-client: client-side library used by applications (e.g. imsdk-qtiqmmfsrc) - camera-server: server daemon and associated systemd service files - camera-server-libs: platform-dependent camera service libraries
2 parents 6aeb13f + 056b9e2 commit 695af35

File tree

1 file changed

+78
-0
lines changed

1 file changed

+78
-0
lines changed
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
SUMMARY = "Qualcomm Linux Embedded Camera Service"
2+
DESCRIPTION = "Qualcomm Linux Embedded Camera Service with client and server modules."
3+
LICENSE = "BSD-3-Clause"
4+
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2998c54c288b081076c9af987bdf4838"
5+
6+
HOMEPAGE = "https://github.com/qualcomm/camera-service"
7+
8+
SRC_URI = "\
9+
git://github.com/qualcomm/camera-service.git;branch=main;protocol=https \
10+
"
11+
12+
SRCREV = "9ac3ead12ee10ae5485f12d01ea89970205b3cf0"
13+
14+
PV = "0.0+git"
15+
16+
# Limit this recipe to ARMv8 (aarch64) only, because it depends
17+
# on camxcommon-headers which is explicitly restricted to ARMv8 (aarch64).
18+
COMPATIBLE_MACHINE = "^$"
19+
COMPATIBLE_MACHINE:aarch64 = "(.*)"
20+
21+
inherit cmake pkgconfig systemd
22+
23+
DEPENDS += "\
24+
camxcommon-headers \
25+
gtest \
26+
protobuf-camx \
27+
protobuf-camx-native \
28+
"
29+
30+
SYSTEMD_SERVICE:${PN} = "cam-server.service"
31+
32+
# Split the recipe output into logical subpackages.
33+
PACKAGE_BEFORE_PN = " \
34+
${PN}-common \
35+
${PN}-client \
36+
${PN}-server-lib \
37+
${PN}-server-lib-kodiak \
38+
"
39+
40+
# Common libraries used by server and client
41+
FILES:${PN}-common = " \
42+
${libdir}/libqmmf_camera_metadata.so.* \
43+
${libdir}/libqmmf_config.so.* \
44+
${libdir}/libqmmf_proto.so.* \
45+
${libdir}/libqmmf_utils.so.* \
46+
"
47+
48+
# Client libraries.
49+
FILES:${PN}-client += " \
50+
${libdir}/libqmmf_recorder_client.so.* \
51+
"
52+
53+
# Server libraries (generic variant).
54+
FILES:${PN}-server-lib = " \
55+
${libdir}/libqmmf_camera_adaptor.so.* \
56+
${libdir}/libqmmf_memory_interface.so.* \
57+
${libdir}/libqmmf_recorder_service.so.* \
58+
"
59+
60+
# Server libraries for the "kodiak" variant.
61+
FILES:${PN}-server-lib-kodiak = " \
62+
${libdir}/libqmmf_camera_adaptor_kodiak.so.* \
63+
${libdir}/libqmmf_memory_interface_kodiak.so.* \
64+
${libdir}/libqmmf_recorder_service_kodiak.so.* \
65+
"
66+
67+
# Add runtime deps since the server dlopens the recorder service library
68+
RDEPENDS:${PN} += " \
69+
${PN}-server-lib \
70+
${PN}-server-lib-kodiak \
71+
"
72+
73+
# Add camx libraries as runtime deps since they are dlopened
74+
RDEPENDS:${PN}-server-lib += "camxlib-lemans"
75+
RDEPENDS:${PN}-server-lib-kodiak += "camxlib-kodiak"
76+
77+
# Preserve ${PN} naming to avoid ambiguity in package identification.
78+
DEBIAN_NOAUTONAME:${PN}-client = "1"

0 commit comments

Comments
 (0)