xref: /openbmc/openbmc/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.28.1.bb (revision 8460358c3d24c71d9d38fd126c745854a6301564)
1*8460358cSPatrick WilliamsSUMMARY = "v4l2 and IR applications"
2*8460358cSPatrick WilliamsLICENSE = "GPL-2.0-only & LGPL-2.1-only"
3*8460358cSPatrick WilliamsLIC_FILES_CHKSUM = "file://COPYING;md5=48da9957849056017dc568bbc43d8975 \
4*8460358cSPatrick Williams                    file://COPYING.libv4l;md5=d749e86a105281d7a44c2328acebc4b0"
5*8460358cSPatrick WilliamsPROVIDES = "libv4l media-ctl"
6*8460358cSPatrick Williams
7*8460358cSPatrick WilliamsDEPENDS = "jpeg \
8*8460358cSPatrick Williams           ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)} \
9*8460358cSPatrick Williams           ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
10*8460358cSPatrick Williams           ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa-lib', '', d)} \
11*8460358cSPatrick Williams           ${@bb.utils.contains_any('PACKAGECONFIG', 'qv4l2 qvidcap', 'qtbase qtbase-native', '', d)}"
12*8460358cSPatrick Williams
13*8460358cSPatrick WilliamsDEPENDS:append:libc-musl = " argp-standalone"
14*8460358cSPatrick WilliamsDEPENDS:append:class-target = " udev"
15*8460358cSPatrick WilliamsLDFLAGS:append = " -pthread"
16*8460358cSPatrick Williams# v4l2 explicitly sets _FILE_OFFSET_BITS=32 to get access to
17*8460358cSPatrick Williams# both 32 and 64 bit file APIs.  But it does not handle the time side?
18*8460358cSPatrick Williams# Needs further investigation
19*8460358cSPatrick WilliamsGLIBC_64BIT_TIME_FLAGS = ""
20*8460358cSPatrick Williams
21*8460358cSPatrick Williamsinherit meson gettext pkgconfig
22*8460358cSPatrick Williams
23*8460358cSPatrick WilliamsPACKAGECONFIG ??= ""
24*8460358cSPatrick WilliamsPACKAGECONFIG[qv4l2] = ",-Dqv4l2=disabled"
25*8460358cSPatrick WilliamsPACKAGECONFIG[qvidcap] = ",-Dqvidcap=disabled"
26*8460358cSPatrick WilliamsPACKAGECONFIG[v4l2-tracer] = ",-Dv4l2-tracer=disabled,json-c"
27*8460358cSPatrick Williams
28*8460358cSPatrick WilliamsSRC_URI = "\
29*8460358cSPatrick Williams    git://git.linuxtv.org/v4l-utils.git;protocol=https;branch=stable-1.28 \
30*8460358cSPatrick Williams    file://0001-media-ctl-Install-media-ctl-header-and-library-files.patch \
31*8460358cSPatrick Williams    file://0002-media-ctl-Install-media-ctl-pkg-config-files.patch \
32*8460358cSPatrick Williams"
33*8460358cSPatrick Williams
34*8460358cSPatrick WilliamsSRCREV = "fc15e229d9d337e46d730f00647821adbbd58548"
35*8460358cSPatrick Williams
36*8460358cSPatrick WilliamsS = "${WORKDIR}/git"
37*8460358cSPatrick Williams
38*8460358cSPatrick WilliamsUPSTREAM_CHECK_GITTAGREGEX = "v4l-utils-(?P<pver>\d+(\.\d+)+)"
39*8460358cSPatrick Williams
40*8460358cSPatrick WilliamsEXTRA_OEMESON = "-Dudevdir=${base_libdir}/udev -Dv4l2-compliance-32=false -Dv4l2-ctl-32=false"
41*8460358cSPatrick Williams
42*8460358cSPatrick Williams# Disable the erroneous installation of gconv-modules that would break glib
43*8460358cSPatrick Williams# like it is done in Debian and ArchLinux.
44*8460358cSPatrick WilliamsEXTRA_OEMESON += "-Dgconv=disabled"
45*8460358cSPatrick Williams
46*8460358cSPatrick WilliamsVIRTUAL-RUNTIME_ir-keytable-keymaps ?= "rc-keymaps"
47*8460358cSPatrick Williams
48*8460358cSPatrick WilliamsPACKAGES =+ "media-ctl ir-keytable rc-keymaps libv4l libv4l-dev qv4l2 qvidcap"
49*8460358cSPatrick Williams
50*8460358cSPatrick WilliamsRPROVIDES:${PN}-dbg += "libv4l-dbg"
51*8460358cSPatrick Williams
52*8460358cSPatrick WilliamsFILES:media-ctl = "${bindir}/media-ctl ${libdir}/libmediactl.so.*"
53*8460358cSPatrick WilliamsFILES:qv4l2 = "\
54*8460358cSPatrick Williams    ${bindir}/qv4l2 \
55*8460358cSPatrick Williams    ${datadir}/applications/qv4l2.desktop \
56*8460358cSPatrick Williams    ${datadir}/icons/hicolor/*/apps/qv4l2.* \
57*8460358cSPatrick Williams"
58*8460358cSPatrick WilliamsFILES:qvidcap = "\
59*8460358cSPatrick Williams    ${bindir}/qvidcap \
60*8460358cSPatrick Williams    ${datadir}/applications/qvidcap.desktop \
61*8460358cSPatrick Williams    ${datadir}/icons/hicolor/*/apps/qvidcap.* \
62*8460358cSPatrick Williams"
63*8460358cSPatrick Williams
64*8460358cSPatrick WilliamsFILES:ir-keytable = "${bindir}/ir-keytable ${base_libdir}/udev/rules.d/*-infrared.rules"
65*8460358cSPatrick WilliamsRDEPENDS:ir-keytable += "${VIRTUAL-RUNTIME_ir-keytable-keymaps}"
66*8460358cSPatrick WilliamsRDEPENDS:qv4l2 += "\
67*8460358cSPatrick Williams    ${@bb.utils.contains('PACKAGECONFIG', 'qv4l2', 'qtbase', '', d)}"
68*8460358cSPatrick WilliamsRDEPENDS:qvidcap += "\
69*8460358cSPatrick Williams    ${@bb.utils.contains('PACKAGECONFIG', 'qvidcap', 'qtbase', '', d)}"
70*8460358cSPatrick Williams
71*8460358cSPatrick WilliamsFILES:rc-keymaps = "${sysconfdir}/rc* ${base_libdir}/udev/rc*"
72*8460358cSPatrick Williams
73*8460358cSPatrick WilliamsFILES:${PN} = "${bindir} ${sbindir}"
74*8460358cSPatrick Williams
75*8460358cSPatrick WilliamsFILES:libv4l += "${libdir}/libv4l*${SOLIBS} ${libdir}/libv4l/*.so ${libdir}/libv4l/plugins/*.so \
76*8460358cSPatrick Williams                 ${libdir}/libdvbv5*${SOLIBS} \
77*8460358cSPatrick Williams                 ${libdir}/libv4l/*-decomp \
78*8460358cSPatrick Williams                 ${libdir}/libv4l2tracer.so \
79*8460358cSPatrick Williams"
80*8460358cSPatrick Williams
81*8460358cSPatrick WilliamsFILES:libv4l-dev += "${includedir} ${libdir}/pkgconfig \
82*8460358cSPatrick Williams                     ${libdir}/libv4l*${SOLIBSDEV} ${libdir}/*.la \
83*8460358cSPatrick Williams                     ${libdir}/v4l*${SOLIBSDEV} ${libdir}/libv4l/*.la ${libdir}/libv4l/plugins/*.la"
84*8460358cSPatrick Williams
85*8460358cSPatrick WilliamsPARALLEL_MAKE:class-native = ""
86*8460358cSPatrick WilliamsBBCLASSEXTEND = "native"
87