From 7db11926f4dcb8b58c68cd3ce2d517c57199479b Mon Sep 17 00:00:00 2001 From: heitbaum Date: Sun, 17 Oct 2021 18:05:42 +1100 Subject: [PATCH 1/3] libbpf: initial package --- packages/devel/libbpf/package.mk | 24 ++++++++++++ .../libbpf-fix-crosscompile-and-sysroot.patch | 39 +++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 packages/devel/libbpf/package.mk create mode 100644 packages/devel/libbpf/patches/libbpf-fix-crosscompile-and-sysroot.patch diff --git a/packages/devel/libbpf/package.mk b/packages/devel/libbpf/package.mk new file mode 100644 index 0000000000..53f49223aa --- /dev/null +++ b/packages/devel/libbpf/package.mk @@ -0,0 +1,24 @@ +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2021-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="libbpf" +PKG_VERSION="0.5.0" +PKG_SHA256="d5b27980ceab9a80b6f28d3e67b51cea526fda49bd13151ba966e33548feb4f4" +PKG_LICENSE="LGPL-2.1" +PKG_SITE="https://github.com/libbpf/libbpf" +PKG_URL="https://github.com/libbpf/libbpf/archive/refs/tags/v${PKG_VERSION}.tar.gz" +PKG_DEPENDS_TARGET="toolchain elfutils" +PKG_LONGDESC="libbpf supports building BPF CO-RE-enabled applications" +PKG_TOOLCHAIN="make" + +make_target() { + make BUILD_STATIC_ONLY=1 \ + PREFIX=${SYSROOT_PREFIX}/usr \ + -C src +} + +makeinstall_target() { + make BUILD_STATIC_ONLY=1 \ + PREFIX=${SYSROOT_PREFIX}/usr \ + -C src install +} diff --git a/packages/devel/libbpf/patches/libbpf-fix-crosscompile-and-sysroot.patch b/packages/devel/libbpf/patches/libbpf-fix-crosscompile-and-sysroot.patch new file mode 100644 index 0000000000..0b59464488 --- /dev/null +++ b/packages/devel/libbpf/patches/libbpf-fix-crosscompile-and-sysroot.patch @@ -0,0 +1,39 @@ +--- a/src/Makefile 2021-09-09 09:01:51.000000000 +1000 ++++ b/src/Makefile 2021-10-17 17:49:02.868557327 +1100 +@@ -61,15 +61,12 @@ + + DESTDIR ?= + +-ifeq ($(filter-out %64 %64be %64eb %64le %64el s390x, $(shell uname -m)),) +- LIBSUBDIR := lib64 +-else +- LIBSUBDIR := lib +-endif ++LIBSUBDIR := lib + + # By default let the pc file itself use ${prefix} in includedir/libdir so that + # the prefix can be overridden at runtime (eg: --define-prefix) + ifndef LIBDIR ++ PREFIX_PC := /usr + LIBDIR_PC := $$\{prefix\}/$(LIBSUBDIR) + else + LIBDIR_PC := $(LIBDIR) +@@ -100,7 +97,7 @@ + $^ $(ALL_LDFLAGS) -o $@ + + $(OBJDIR)/libbpf.pc: +- $(Q)sed -e "s|@PREFIX@|$(PREFIX)|" \ ++ $(Q)sed -e "s|@PREFIX@|$(PREFIX_PC)|" \ + -e "s|@LIBDIR@|$(LIBDIR_PC)|" \ + -e "s|@VERSION@|$(LIBBPF_VERSION)|" \ + < libbpf.pc.template > $@ +--- a/src/libbpf.pc.template 2021-09-09 09:01:51.000000000 +1000 ++++ b/src/libbpf.pc.template 2021-10-17 18:03:19.681346272 +1100 +@@ -7,6 +7,6 @@ + Name: libbpf + Description: BPF library + Version: @VERSION@ +-Libs: -L${libdir} -lbpf ++Libs: -L${libdir} -lbpf -lz + Requires.private: libelf zlib + Cflags: -I${includedir} From 586a2cacd4fece939592286d935007790996bf08 Mon Sep 17 00:00:00 2001 From: heitbaum Date: Sat, 16 Oct 2021 13:44:19 +1100 Subject: [PATCH 2/3] v4l-utils: update to 1.22.1 update 1.20.0 (2020-05-21) to 1.22.1 (2021-10-23) changelog: - https://github.com/gjasny/v4l-utils/blob/v4l-utils-1.22.1/ChangeLog --- .../sysutils/v4l-utils/keymaps/minix_neo.toml | 16 ---------- .../sysutils/v4l-utils/keymaps/pine64.toml | 29 ------------------- packages/sysutils/v4l-utils/package.mk | 14 ++++----- ...tils-001-disable-doxygen-in-automake.patch | 12 ++++---- ...l-utils-002-enable-bpf-without-clang.patch | 14 ++++----- 5 files changed, 20 insertions(+), 65 deletions(-) delete mode 100644 packages/sysutils/v4l-utils/keymaps/minix_neo.toml delete mode 100644 packages/sysutils/v4l-utils/keymaps/pine64.toml diff --git a/packages/sysutils/v4l-utils/keymaps/minix_neo.toml b/packages/sysutils/v4l-utils/keymaps/minix_neo.toml deleted file mode 100644 index 045c3d96dd..0000000000 --- a/packages/sysutils/v4l-utils/keymaps/minix_neo.toml +++ /dev/null @@ -1,16 +0,0 @@ -[[protocols]] -name = "Minix Neo" -protocol = "nec" -[protocols.scancodes] -0x118 = "KEY_POWER" -0x146 = "KEY_UP" -0x116 = "KEY_DOWN" -0x147 = "KEY_LEFT" -0x115 = "KEY_RIGHT" -0x155 = "KEY_ENTER" -0x110 = "KEY_VOLUMEDOWN" -0x140 = "KEY_BACK" -0x114 = "KEY_VOLUMEUP" -0x10d = "KEY_HOMEPAGE" -0x104 = "KEY_MENU" -0x112 = "KEY_CONFIG" diff --git a/packages/sysutils/v4l-utils/keymaps/pine64.toml b/packages/sysutils/v4l-utils/keymaps/pine64.toml deleted file mode 100644 index 0b0a8c377c..0000000000 --- a/packages/sysutils/v4l-utils/keymaps/pine64.toml +++ /dev/null @@ -1,29 +0,0 @@ -[[protocols]] -name = "pine64" -protocol = "NEC" -[protocols.scancodes] -0x404000 = "KEY_NUMERIC_0" -0x404001 = "KEY_NUMERIC_1" -0x404002 = "KEY_NUMERIC_2" -0x404003 = "KEY_NUMERIC_3" -0x404004 = "KEY_NUMERIC_4" -0x404005 = "KEY_NUMERIC_5" -0x404006 = "KEY_NUMERIC_6" -0x404007 = "KEY_NUMERIC_7" -0x404008 = "KEY_NUMERIC_8" -0x404009 = "KEY_NUMERIC_9" -0x40400a = "KEY_MUTE" -0x40400b = "KEY_UP" -0x40400c = "KEY_BACKSPACE" -0x40400d = "KEY_OK" -0x40400e = "KEY_DOWN" -0x404010 = "KEY_LEFT" -0x404011 = "KEY_RIGHT" -0x404017 = "KEY_VOLUMEDOWN" -0x404018 = "KEY_VOLUMEUP" -0x40401a = "KEY_HOME" -0x40401d = "KEY_MENU" -0x40401f = "KEY_WWW" -0x404045 = "KEY_BACK" -0x404047 = "KEY_INFO" -0x40404d = "KEY_POWER" diff --git a/packages/sysutils/v4l-utils/package.mk b/packages/sysutils/v4l-utils/package.mk index 5fe67e0bed..d3b5fcedf2 100644 --- a/packages/sysutils/v4l-utils/package.mk +++ b/packages/sysutils/v4l-utils/package.mk @@ -5,20 +5,20 @@ # with 1.0.0 repeat delay is broken. test on upgrade PKG_NAME="v4l-utils" -PKG_VERSION="1.20.0" -PKG_SHA256="956118713f7ccb405c55c7088a6a2490c32d54300dd9a30d8d5008c28d3726f7" +PKG_VERSION="1.22.1" +PKG_SHA256="65c6fbe830a44ca105c443b027182c1b2c9053a91d1e72ad849dfab388b94e31" PKG_LICENSE="GPL" PKG_SITE="http://linuxtv.org/" PKG_URL="http://linuxtv.org/downloads/v4l-utils/${PKG_NAME}-${PKG_VERSION}.tar.bz2" -PKG_DEPENDS_TARGET="toolchain alsa-lib systemd elfutils ir-bpf-decoders" +PKG_DEPENDS_TARGET="toolchain alsa-lib elfutils ir-bpf-decoders libbpf systemd zlib" PKG_LONGDESC="Linux V4L2 and DVB API utilities and v4l libraries (libv4l)." PKG_TOOLCHAIN="autotools" PKG_CONFIGURE_OPTS_TARGET="--without-jpeg \ - --enable-bpf \ - --enable-static \ - --disable-shared \ - --disable-doxygen-doc" + --enable-bpf \ + --enable-static \ + --disable-shared \ + --disable-doxygen-doc" pre_configure_target() { # cec-ctl fails to build in subdirs diff --git a/packages/sysutils/v4l-utils/patches/v4l-utils-001-disable-doxygen-in-automake.patch b/packages/sysutils/v4l-utils/patches/v4l-utils-001-disable-doxygen-in-automake.patch index c67b92d160..65cd971a02 100644 --- a/packages/sysutils/v4l-utils/patches/v4l-utils-001-disable-doxygen-in-automake.patch +++ b/packages/sysutils/v4l-utils/patches/v4l-utils-001-disable-doxygen-in-automake.patch @@ -12,15 +12,15 @@ diff --git a/Makefile.am b/Makefile.am index d20dfe0f..05dc8c1a 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -11,7 +11,7 @@ EXTRA_DIST = android-config.h bootstrap.sh doxygen_libdvbv5.cfg include COPYING. - COPYING.libdvbv5 README.libv4l README.lib-multi-threading TODO.libdvbv5 \ - doc/libdvbv5-index.doc +@@ -10,7 +10,7 @@ + + EXTRA_DIST = android-config.h sync-with-kernel.sh bootstrap.sh \ + doxygen_libdvbv5.cfg include COPYING.libv4l \ + COPYING.libdvbv5 README.libv4l README.lib-multi-threading \ + TODO.libdvbv5 doc/libdvbv5-index.doc -include $(top_srcdir)/aminclude.am +# include $(top_srcdir)/aminclude.am - - # custom targets - -- 2.20.1 diff --git a/packages/sysutils/v4l-utils/patches/v4l-utils-002-enable-bpf-without-clang.patch b/packages/sysutils/v4l-utils/patches/v4l-utils-002-enable-bpf-without-clang.patch index 79d8c328e2..2541015db6 100644 --- a/packages/sysutils/v4l-utils/patches/v4l-utils-002-enable-bpf-without-clang.patch +++ b/packages/sysutils/v4l-utils/patches/v4l-utils-002-enable-bpf-without-clang.patch @@ -13,12 +13,12 @@ diff --git a/configure.ac b/configure.ac index 3bb1d2a5..7b633473 100644 --- a/configure.ac +++ b/configure.ac -@@ -549,7 +549,7 @@ AM_CONDITIONAL([WITH_V4L2_CTL_32], [test x${enable_v4l2_ctl_32} = xyes]) - AM_CONDITIONAL([WITH_V4L2_COMPLIANCE], [test x$ac_cv_func_fork = xyes]) +@@ -565,7 +565,7 @@ AM_CONDITIONAL([WITH_V4L2_COMPLIANCE_LIBV4L], [test x$ac_cv_func_fork = xyes -a x${enable_v4l2_compliance_libv4l} != xno]) AM_CONDITIONAL([WITH_V4L2_COMPLIANCE_32], [test x$ac_cv_func_fork = xyes -a x${enable_v4l2_compliance_32} = xyes]) --AM_CONDITIONAL([WITH_BPF], [test x$enable_bpf != xno -a x$libelf_pkgconfig = xyes -a x$CLANG = xclang]) -+AM_CONDITIONAL([WITH_BPF], [test x$enable_bpf != xno -a x$libelf_pkgconfig = xyes]) + PKG_CHECK_MODULES([LIBBPF], [libbpf], [bpf_pc=yes], [bpf_pc=no]) +-AM_CONDITIONAL([WITH_BPF], [test x$enable_bpf != xno -a x$libelf_pkgconfig = xyes -a x$CLANG = xclang -a x$bpf_pc = xyes]) ++AM_CONDITIONAL([WITH_BPF], [test x$enable_bpf != xno -a x$libelf_pkgconfig = xyes -a x$bpf_pc = xyes]) # append -static to libtool compile and link command to enforce static libs AS_IF([test x$enable_libdvbv5 = xno], [AC_SUBST([ENFORCE_LIBDVBV5_STATIC], ["-static"])]) @@ -26,10 +26,10 @@ diff --git a/utils/keytable/Makefile.am b/utils/keytable/Makefile.am index 4724897e..1c209fe2 100644 --- a/utils/keytable/Makefile.am +++ b/utils/keytable/Makefile.am -@@ -18,7 +18,7 @@ ir_keytable_LDFLAGS = $(ARGP_LIBS) - +@@ -23,7 +23,7 @@ if WITH_BPF - ir_keytable_LDFLAGS += $(LIBELF_LIBS) + ir_keytable_LDFLAGS += $(LIBELF_LIBS) $(LIBBPF_LIBS) + ir_keytable_CFLAGS = $(LIBBPF_CFLAGS) -SUBDIRS = bpf_protocols +# SUBDIRS = bpf_protocols endif From 924de6e341c425a7e5accc19a549e35256d56673 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Sun, 17 Oct 2021 11:46:00 +0200 Subject: [PATCH 3/3] ir-bpf-decoders: update to 1.22.0 Signed-off-by: Matthias Reichl --- packages/sysutils/ir-bpf-decoders/package.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/sysutils/ir-bpf-decoders/package.mk b/packages/sysutils/ir-bpf-decoders/package.mk index 4e2a8f2101..ab9cfe8220 100644 --- a/packages/sysutils/ir-bpf-decoders/package.mk +++ b/packages/sysutils/ir-bpf-decoders/package.mk @@ -2,8 +2,8 @@ # Copyright (C) 2020-present Team LibreELEC (https://libreelec.tv) PKG_NAME="ir-bpf-decoders" -PKG_VERSION="1.20.0" -PKG_SHA256="aaf2b3d0cf3086317a4ee9c2a80af2520b59b303a71238742ee8bc20c4f2bbb6" +PKG_VERSION="1.22.0" +PKG_SHA256="9743e49dd725f9fb7d0410f3481931156d69fd8305184baa883ed94038fc79fc" PKG_LICENSE="GPLv2+" PKG_SITE="https://linuxtv.org/" PKG_URL="https://github.com/LibreELEC/ir-bpf-decoders/archive/v4l-utils-${PKG_VERSION}.tar.gz"