2018-07-16 20:45:36 +02:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
|
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
2018-08-01 23:40:03 +01:00
|
|
|
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
2011-01-09 18:44:39 +01:00
|
|
|
|
2013-11-10 16:46:45 +02:00
|
|
|
# with 1.0.0 repeat delay is broken. test on upgrade
|
2014-01-21 20:22:31 +01:00
|
|
|
|
|
|
|
|
PKG_NAME="v4l-utils"
|
2021-10-16 13:44:19 +11:00
|
|
|
PKG_VERSION="1.22.1"
|
|
|
|
|
PKG_SHA256="65c6fbe830a44ca105c443b027182c1b2c9053a91d1e72ad849dfab388b94e31"
|
2011-01-07 16:51:13 +01:00
|
|
|
PKG_LICENSE="GPL"
|
|
|
|
|
PKG_SITE="http://linuxtv.org/"
|
2021-01-19 19:34:16 +00:00
|
|
|
PKG_URL="http://linuxtv.org/downloads/v4l-utils/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
|
2021-10-16 13:44:19 +11:00
|
|
|
PKG_DEPENDS_TARGET="toolchain alsa-lib elfutils ir-bpf-decoders libbpf systemd zlib"
|
2011-01-07 16:51:13 +01:00
|
|
|
PKG_LONGDESC="Linux V4L2 and DVB API utilities and v4l libraries (libv4l)."
|
2020-02-09 01:35:09 +01:00
|
|
|
PKG_TOOLCHAIN="autotools"
|
2014-01-21 20:22:31 +01:00
|
|
|
|
2018-01-30 23:48:04 +01:00
|
|
|
PKG_CONFIGURE_OPTS_TARGET="--without-jpeg \
|
2021-10-16 13:44:19 +11:00
|
|
|
--enable-bpf \
|
|
|
|
|
--enable-static \
|
|
|
|
|
--disable-shared \
|
|
|
|
|
--disable-doxygen-doc"
|
2014-01-21 20:22:31 +01:00
|
|
|
|
2017-10-14 11:55:27 +02:00
|
|
|
pre_configure_target() {
|
|
|
|
|
# cec-ctl fails to build in subdirs
|
2021-01-19 19:34:16 +00:00
|
|
|
cd ${PKG_BUILD}
|
|
|
|
|
rm -rf .${TARGET_NAME}
|
2017-10-14 11:55:27 +02:00
|
|
|
}
|
|
|
|
|
|
2014-01-21 20:22:31 +01:00
|
|
|
make_target() {
|
2021-01-19 19:34:16 +00:00
|
|
|
make -C utils/keytable CFLAGS="${TARGET_CFLAGS}"
|
|
|
|
|
make -C utils/ir-ctl CFLAGS="${TARGET_CFLAGS}"
|
|
|
|
|
if [ "${CEC_FRAMEWORK_SUPPORT}" = "yes" ]; then
|
|
|
|
|
make -C utils/libcecutil CFLAGS="${TARGET_CFLAGS}"
|
|
|
|
|
make -C utils/cec-ctl CFLAGS="${TARGET_CFLAGS}"
|
2017-10-14 11:55:27 +02:00
|
|
|
fi
|
2021-01-19 19:34:16 +00:00
|
|
|
make -C lib CFLAGS="${TARGET_CFLAGS}"
|
|
|
|
|
make -C utils/dvb CFLAGS="${TARGET_CFLAGS}"
|
|
|
|
|
make -C utils/v4l2-ctl CFLAGS="${TARGET_CFLAGS}"
|
2021-02-28 08:47:56 -08:00
|
|
|
|
|
|
|
|
if [ "${LIBREELEC_VERSION}" == "devel" ]; then
|
|
|
|
|
make -C utils/v4l2-compliance CFLAGS="${TARGET_CFLAGS}"
|
|
|
|
|
fi
|
2017-07-21 16:47:16 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
makeinstall_target() {
|
2021-01-19 19:34:16 +00:00
|
|
|
make install DESTDIR=${INSTALL} PREFIX=/usr -C utils/keytable
|
|
|
|
|
make install DESTDIR=${INSTALL} PREFIX=/usr -C utils/ir-ctl
|
|
|
|
|
if [ "${CEC_FRAMEWORK_SUPPORT}" = "yes" ]; then
|
|
|
|
|
make install DESTDIR=${INSTALL} PREFIX=/usr -C utils/cec-ctl
|
2017-10-14 11:55:27 +02:00
|
|
|
fi
|
2021-01-19 19:34:16 +00:00
|
|
|
make install DESTDIR=${INSTALL} PREFIX=/usr -C utils/dvb
|
|
|
|
|
make install DESTDIR=${INSTALL} PREFIX=/usr -C utils/v4l2-ctl
|
2021-02-28 08:47:56 -08:00
|
|
|
|
|
|
|
|
if [ "${LIBREELEC_VERSION}" == "devel" ]; then
|
|
|
|
|
make install DESTDIR=${INSTALL} PREFIX=/usr -C utils/v4l2-compliance
|
|
|
|
|
fi
|
|
|
|
|
|
2020-02-09 01:50:31 +01:00
|
|
|
cp ${PKG_BUILD}/contrib/lircd2toml.py ${INSTALL}/usr/bin/
|
2014-01-21 20:22:31 +01:00
|
|
|
}
|
2014-11-08 18:32:43 +01:00
|
|
|
|
2017-12-21 12:22:17 +01:00
|
|
|
create_multi_keymap() {
|
2019-10-26 13:34:03 +02:00
|
|
|
local f name map
|
2021-01-19 19:34:16 +00:00
|
|
|
name="${1}"
|
2019-10-26 13:34:03 +02:00
|
|
|
shift 1
|
2017-12-21 12:22:17 +01:00
|
|
|
(
|
2021-01-19 19:34:16 +00:00
|
|
|
for f in "$@"; do
|
2019-10-26 13:34:03 +02:00
|
|
|
map="${INSTALL}/usr/lib/udev/rc_keymaps/${f}.toml"
|
|
|
|
|
[ -e "${map}" ] && cat "${map}"
|
2017-12-21 12:22:17 +01:00
|
|
|
done
|
2019-10-26 13:34:03 +02:00
|
|
|
) > ${INSTALL}/usr/lib/udev/rc_keymaps/${name}.toml
|
2017-12-21 12:22:17 +01:00
|
|
|
}
|
|
|
|
|
|
2014-11-08 18:32:43 +01:00
|
|
|
post_makeinstall_target() {
|
2018-09-05 23:37:38 +02:00
|
|
|
local f keymap
|
2017-12-21 11:56:55 +01:00
|
|
|
|
2021-01-19 19:34:16 +00:00
|
|
|
rm -rf ${INSTALL}/etc/rc_keymaps
|
|
|
|
|
ln -sf /storage/.config/rc_keymaps ${INSTALL}/etc/rc_keymaps
|
2014-11-08 18:32:43 +01:00
|
|
|
|
2021-01-19 19:34:16 +00:00
|
|
|
mkdir -p ${INSTALL}/usr/config
|
|
|
|
|
cp -PR ${PKG_DIR}/config/* ${INSTALL}/usr/config
|
2017-03-12 17:06:53 +01:00
|
|
|
|
2021-01-19 19:34:16 +00:00
|
|
|
rm -rf ${INSTALL}/usr/lib/udev/rules.d
|
|
|
|
|
mkdir -p ${INSTALL}/usr/lib/udev/rules.d
|
|
|
|
|
cp -PR ${PKG_DIR}/udev.d/*.rules ${INSTALL}/usr/lib/udev/rules.d
|
2017-07-16 14:01:08 +02:00
|
|
|
|
2017-12-21 11:56:55 +01:00
|
|
|
# install additional keymaps without overwriting upstream maps
|
|
|
|
|
(
|
|
|
|
|
set -C
|
2021-01-19 19:34:16 +00:00
|
|
|
for f in ${PKG_DIR}/keymaps/*; do
|
|
|
|
|
if [ -e ${f} ]; then
|
|
|
|
|
keymap=$(basename ${f})
|
|
|
|
|
cat ${f} > ${INSTALL}/usr/lib/udev/rc_keymaps/${keymap}
|
2017-12-21 11:56:55 +01:00
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
)
|
|
|
|
|
|
2017-12-21 12:22:17 +01:00
|
|
|
# create multi keymap to support several remotes OOTB
|
2021-01-19 19:34:16 +00:00
|
|
|
if [ -n "${IR_REMOTE_KEYMAPS}" ]; then
|
|
|
|
|
create_multi_keymap libreelec_multi ${IR_REMOTE_KEYMAPS}
|
2017-12-21 12:22:17 +01:00
|
|
|
|
2018-09-05 23:37:38 +02:00
|
|
|
# use multi-keymap instead of default one
|
2021-01-19 19:34:16 +00:00
|
|
|
sed -i '/^\*\s*rc-rc6-mce\s*rc6_mce/d' ${INSTALL}/etc/rc_maps.cfg
|
2017-12-21 12:22:17 +01:00
|
|
|
|
2021-01-19 19:34:16 +00:00
|
|
|
cat << EOF >> ${INSTALL}/etc/rc_maps.cfg
|
2017-12-21 12:07:22 +01:00
|
|
|
#
|
|
|
|
|
# Custom LibreELEC configuration starts here
|
|
|
|
|
#
|
|
|
|
|
# use combined multi-table on MCE receivers
|
2019-10-26 13:34:03 +02:00
|
|
|
# * rc-rc6-mce rc6_mce.toml
|
|
|
|
|
* rc-rc6-mce libreelec_multi.toml
|
2018-01-23 17:18:05 +01:00
|
|
|
# multi-table for amlogic devices
|
2019-10-26 13:34:03 +02:00
|
|
|
meson-ir rc-empty libreelec_multi.toml
|
2017-12-21 12:07:22 +01:00
|
|
|
EOF
|
2018-09-05 23:37:38 +02:00
|
|
|
|
|
|
|
|
fi
|
2014-11-08 18:32:43 +01:00
|
|
|
}
|