diff options
Diffstat (limited to 'meta-openembedded/meta-multimedia/recipes-multimedia')
20 files changed, 546 insertions, 116 deletions
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-ipu3-Use-posix-basename.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-ipu3-Use-posix-basename.patch new file mode 100644 index 0000000000..9e4adf3d8d --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-ipu3-Use-posix-basename.patch @@ -0,0 +1,71 @@ +From 35d2acc61b1b27c0810a80cd21de65f29dc79df7 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sun, 24 Mar 2024 11:27:21 -0700 +Subject: [PATCH] ipu3: Use posix basename + +musl does not implement GNU basename extention and with latest musl +the prototype from string.h is also removed [1] which now results in +compile errors e.g. + +../git/utils/ipu3/ipu3-pack.c:21:47: error: call to undeclared function 'basename'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + +These utilities are using this function in usage() which is used just +before program exit. Always use the basename APIs from libgen.h which is +posix implementation + +[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7 + +Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2024-March/041180.html] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + utils/ipu3/ipu3-pack.c | 4 ++-- + utils/ipu3/ipu3-unpack.c | 3 ++- + 2 files changed, 4 insertions(+), 3 deletions(-) + +diff --git a/utils/ipu3/ipu3-pack.c b/utils/ipu3/ipu3-pack.c +index decbfc6c..23d2db8b 100644 +--- a/utils/ipu3/ipu3-pack.c ++++ b/utils/ipu3/ipu3-pack.c +@@ -8,6 +8,7 @@ + + #include <errno.h> + #include <fcntl.h> ++#include <libgen.h> + #include <stdint.h> + #include <stdio.h> + #include <string.h> +@@ -15,9 +16,8 @@ + #include <sys/types.h> + #include <unistd.h> + +-static void usage(const char *argv0) ++static void usage(char *argv0) + { +- + printf("Usage: %s input-file output-file\n", basename(argv0)); + printf("Convert unpacked RAW10 Bayer data to the IPU3 packed Bayer formats\n"); + printf("If the output-file '-', output data will be written to standard output\n"); +diff --git a/utils/ipu3/ipu3-unpack.c b/utils/ipu3/ipu3-unpack.c +index 9d2c1200..1505a970 100644 +--- a/utils/ipu3/ipu3-unpack.c ++++ b/utils/ipu3/ipu3-unpack.c +@@ -8,6 +8,7 @@ + + #include <errno.h> + #include <fcntl.h> ++#include <libgen.h> + #include <stdint.h> + #include <stdio.h> + #include <string.h> +@@ -15,7 +16,7 @@ + #include <sys/types.h> + #include <unistd.h> + +-static void usage(const char *argv0) ++static void usage(char *argv0) + { + printf("Usage: %s input-file output-file\n", basename(argv0)); + printf("Unpack the IPU3 raw Bayer format to 16-bit Bayer\n"); +-- +2.44.0 + diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-rpi-Use-alloca-instead-of-variable-length-arrays.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-rpi-Use-alloca-instead-of-variable-length-arrays.patch index a6526d5903..c336e92548 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-rpi-Use-alloca-instead-of-variable-length-arrays.patch +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-rpi-Use-alloca-instead-of-variable-length-arrays.patch @@ -1,7 +1,7 @@ -From 7982e55ce3a8b3c60a47258ff7d37d0dd78c303d Mon Sep 17 00:00:00 2001 +From 11cc6dbd45f0880beea64cdc514f57484b90bc39 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Tue, 20 Feb 2024 18:44:23 -0800 -Subject: [PATCH] rpi: Use alloca instead of variable length arrays +Subject: [PATCH] rpi: Use malloc instead of variable length arrays Clang-18+ diagnoses this as error @@ -10,12 +10,14 @@ Clang-18+ diagnoses this as error Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2024-February/040529.html] Signed-off-by: Khem Raj <raj.khem@gmail.com> + +s --- - src/ipa/rpi/controller/rpi/alsc.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) + src/ipa/rpi/controller/rpi/alsc.cpp | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/ipa/rpi/controller/rpi/alsc.cpp b/src/ipa/rpi/controller/rpi/alsc.cpp -index 8a205c60..8c0ae8eb 100644 +index 8a205c60..a7d42614 100644 --- a/src/ipa/rpi/controller/rpi/alsc.cpp +++ b/src/ipa/rpi/controller/rpi/alsc.cpp @@ -496,8 +496,8 @@ void resampleCalTable(const Array2D<double> &calTableIn, @@ -24,11 +26,18 @@ index 8a205c60..8c0ae8eb 100644 */ - int xLo[X], xHi[X]; - double xf[X]; -+ int *xLo = (int*)alloca(X), *xHi = (int*)alloca(X); -+ double *xf = (double*)alloca(X); ++ int *xLo = (int*)malloc(X), *xHi = (int*)malloc(X); ++ double *xf = (double*)malloc(X); double scaleX = cameraMode.sensorWidth / (cameraMode.width * cameraMode.scaleX); double xOff = cameraMode.cropX / (double)cameraMode.sensorWidth; --- -2.43.2 - +@@ -539,6 +539,9 @@ void resampleCalTable(const Array2D<double> &calTableIn, + *(out++) = above * (1 - yf) + below * yf; + } + } ++ free(xf); ++ free(xHi); ++ free(xLo); + } + + /* Calculate chrominance statistics (R/G and B/G) for each region. */ diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0002-options-Replace-use-of-VLAs-in-C.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0002-options-Replace-use-of-VLAs-in-C.patch index 95f321782e..473820653e 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0002-options-Replace-use-of-VLAs-in-C.patch +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0002-options-Replace-use-of-VLAs-in-C.patch @@ -1,7 +1,7 @@ -From c80d273a57547aec9353d888aa316bf6560cf1ba Mon Sep 17 00:00:00 2001 +From 6e4736180fcaffdb06acf52fd3eb50ba5baa3d2a Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 31 Jan 2024 21:04:28 -0800 -Subject: [PATCH 2/2] options: Replace use of VLAs in C++ +Subject: [PATCH] options: Replace use of VLAs in C++ Clang++ 18 is fussy about this with new warning checks. @@ -14,12 +14,12 @@ Therefore replace using VLAs with alloca and malloc/free Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2024-February/040381.html] Signed-off-by: Khem Raj <raj.khem@gmail.com> --- - src/apps/common/options.cpp | 4 ++-- - src/libcamera/ipc_unixsocket.cpp | 12 ++++++++---- - 2 files changed, 10 insertions(+), 6 deletions(-) + src/apps/common/options.cpp | 12 ++++++++++-- + src/libcamera/ipc_unixsocket.cpp | 13 +++++++++---- + 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/src/apps/common/options.cpp b/src/apps/common/options.cpp -index 4f7e8691..b020f603 100644 +index 4f7e8691..3656f3c1 100644 --- a/src/apps/common/options.cpp +++ b/src/apps/common/options.cpp @@ -879,8 +879,8 @@ OptionsParser::Options OptionsParser::parse(int argc, char **argv) @@ -28,16 +28,56 @@ index 4f7e8691..b020f603 100644 */ - char shortOptions[optionsMap_.size() * 3 + 2]; - struct option longOptions[optionsMap_.size() + 1]; -+ char *shortOptions = (char*)alloca(optionsMap_.size() * 3 + 2); -+ struct option *longOptions = (struct option*)alloca(optionsMap_.size() + 1); ++ char *shortOptions = (char*)malloc(optionsMap_.size() * 3 + 2); ++ struct option *longOptions = (struct option*)malloc(sizeof(struct option) * (optionsMap_.size() + 1)); unsigned int ids = 0; unsigned int idl = 0; +@@ -935,12 +935,16 @@ OptionsParser::Options OptionsParser::parse(int argc, char **argv) + std::cerr << argv[optind - 1] << std::endl; + + usage(); ++ free(shortOptions); ++ free(longOptions); + return options; + } + + const Option &option = *optionsMap_[c]; + if (!parseValue(option, optarg, &options)) { + usage(); ++ free(shortOptions); ++ free(longOptions); + return options; + } + } +@@ -949,10 +953,14 @@ OptionsParser::Options OptionsParser::parse(int argc, char **argv) + std::cerr << "Invalid non-option argument '" << argv[optind] + << "'" << std::endl; + usage(); ++ free(shortOptions); ++ free(longOptions); + return options; + } + + options.valid_ = true; ++ free(shortOptions); ++ free(longOptions); + return options; + } + diff --git a/src/libcamera/ipc_unixsocket.cpp b/src/libcamera/ipc_unixsocket.cpp -index 1980d374..3a7f8ee6 100644 +index 1980d374..3bd861cb 100644 --- a/src/libcamera/ipc_unixsocket.cpp +++ b/src/libcamera/ipc_unixsocket.cpp -@@ -247,8 +247,8 @@ int IPCUnixSocket::sendData(const void *buffer, size_t length, +@@ -8,6 +8,7 @@ + #include "libcamera/internal/ipc_unixsocket.h" + + #include <array> ++#include <cstdint> + #include <poll.h> + #include <string.h> + #include <sys/socket.h> +@@ -247,8 +248,8 @@ int IPCUnixSocket::sendData(const void *buffer, size_t length, iov[0].iov_base = const_cast<void *>(buffer); iov[0].iov_len = length; @@ -48,19 +88,19 @@ index 1980d374..3a7f8ee6 100644 struct cmsghdr *cmsg = (struct cmsghdr *)buf; cmsg->cmsg_len = CMSG_LEN(num * sizeof(uint32_t)); -@@ -270,9 +270,11 @@ int IPCUnixSocket::sendData(const void *buffer, size_t length, +@@ -270,9 +271,11 @@ int IPCUnixSocket::sendData(const void *buffer, size_t length, int ret = -errno; LOG(IPCUnixSocket, Error) << "Failed to sendmsg: " << strerror(-ret); -+ free(buf); ++ free(buf); return ret; } -+ free(buf); ++ free(buf); return 0; } -@@ -283,8 +285,8 @@ int IPCUnixSocket::recvData(void *buffer, size_t length, +@@ -283,8 +286,8 @@ int IPCUnixSocket::recvData(void *buffer, size_t length, iov[0].iov_base = buffer; iov[0].iov_len = length; @@ -71,21 +111,18 @@ index 1980d374..3a7f8ee6 100644 struct cmsghdr *cmsg = (struct cmsghdr *)buf; cmsg->cmsg_len = CMSG_LEN(num * sizeof(uint32_t)); -@@ -305,12 +307,14 @@ int IPCUnixSocket::recvData(void *buffer, size_t length, +@@ -305,12 +308,14 @@ int IPCUnixSocket::recvData(void *buffer, size_t length, if (ret != -EAGAIN) LOG(IPCUnixSocket, Error) << "Failed to recvmsg: " << strerror(-ret); -+ free(buf); ++ free(buf); return ret; } if (fds) memcpy(fds, CMSG_DATA(cmsg), num * sizeof(uint32_t)); -+ free(buf); ++ free(buf); return 0; } --- -2.43.0 - diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.2.0.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.2.0.bb index b96e69eeb4..45d6be31ec 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.2.0.bb +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.2.0.bb @@ -13,6 +13,7 @@ SRC_URI = " \ file://0001-media_device-Add-bool-return-type-to-unlock.patch \ file://0002-options-Replace-use-of-VLAs-in-C.patch \ file://0001-rpi-Use-alloca-instead-of-variable-length-arrays.patch \ + file://0001-ipu3-Use-posix-basename.patch \ " SRCREV = "89227a428a82e724548399d35c98ea89566f9045" diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb index e8b10bc680..2b373d31e5 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb @@ -7,7 +7,7 @@ DEPENDS = "expat libxml2 libxml2-native neon neon-native libmusicbrainz-native" PV = "5.1.0+git" -SRCREV = "8be45b12a86bc0e46f2f836c8ac88e1e98d82aee" +SRCREV = "4655b571a70d73d41467091f59c518517c956198" SRC_URI = "git://github.com/metabrainz/libmusicbrainz.git;branch=master;protocol=https \ file://0001-http-fetch-Pass-a-non-null-buffer-to-ne_set_request_.patch \ " diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/openal/openal-soft/0001-Use-BUILD_CC-to-compile-native-tools.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/openal/openal-soft/0001-Use-BUILD_CC-to-compile-native-tools.patch deleted file mode 100644 index 2bffd65c6e..0000000000 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/openal/openal-soft/0001-Use-BUILD_CC-to-compile-native-tools.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 29217932c34d7e3368764ab64879dc6f1edab1a6 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Mon, 14 Jan 2019 11:19:44 -0800 -Subject: [PATCH] Use host compiler to compile native tools - -Helps in cross compiling - -Upstream-Status: Inappropriate [OE-Specific] - -Signed-off-by: Khem Raj <raj.khem@gmail.com> - ---- - CMakeLists.txt | 5 ++--- - 1 file changed, 2 insertions(+), 3 deletions(-) - ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1085,11 +1085,10 @@ ELSE() - SET(BIN2H_COMMAND "${NATIVE_BIN_DIR}/bin2h") - SET(BSINCGEN_COMMAND "${NATIVE_BIN_DIR}/bsincgen") - ADD_CUSTOM_COMMAND(OUTPUT "${BIN2H_COMMAND}" "${BSINCGEN_COMMAND}" -- COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" "${NATIVE_SRC_DIR}" - COMMAND ${CMAKE_COMMAND} -E remove "${BIN2H_COMMAND}" "${BSINCGEN_COMMAND}" -- COMMAND ${CMAKE_COMMAND} --build . --config "Release" -+ COMMAND gcc "${NATIVE_SRC_DIR}/bin2h.c" -o "${BIN2H_COMMAND}" -lm -+ COMMAND gcc "${NATIVE_SRC_DIR}/bsincgen.c" -o "${BSINCGEN_COMMAND}" -lm - WORKING_DIRECTORY "${NATIVE_BIN_DIR}" -- DEPENDS "${NATIVE_SRC_DIR}/CMakeLists.txt" - IMPLICIT_DEPENDS - C "${NATIVE_SRC_DIR}/bin2h.c" - C "${NATIVE_SRC_DIR}/bsincgen.c" diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/openal/openal-soft/0002-makehrtf-Disable-Wstringop-truncation.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/openal/openal-soft/0002-makehrtf-Disable-Wstringop-truncation.patch deleted file mode 100644 index 607ddab8d6..0000000000 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/openal/openal-soft/0002-makehrtf-Disable-Wstringop-truncation.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 07ef86e33ed6f7585f0dfaa1732ea17c816655a4 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Mon, 14 Jan 2019 11:45:42 -0800 -Subject: [PATCH] makehrtf: Disable Wstringop-truncation - -Upstream-Status: Inappropriate [Should be fixed in code] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - utils/makemhr/makemhr.cpp | 2 ++ - 1 file changed, 2 insertions(+) - ---- a/utils/makemhr/makemhr.cpp -+++ b/utils/makemhr/makemhr.cpp -@@ -161,6 +161,7 @@ enum ChannelIndex : uint { - * pattern string are replaced with the replacement string. The result is - * truncated if necessary. - */ -+#pragma GCC diagnostic ignored "-Wstringop-truncation" - static int StrSubst(const char *in, const char *pat, const char *rep, const size_t maxLen, char *out) - { - size_t inLen, patLen, repLen; -@@ -199,6 +200,7 @@ static int StrSubst(const char *in, cons - return !truncated; - } - -+#pragma GCC diagnostic pop - - /********************* - *** Math routines *** diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_1.0.3.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_1.0.4.bb index f1c9f85569..e9c83dd236 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_1.0.3.bb +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_1.0.4.bb @@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = " \ DEPENDS = "dbus ncurses" -SRCREV = "6ab86209f23a841de7eac6bc0c1009aceb9ffd87" +SRCREV = "f2874ad1c2f7f0b9a1da05cc4f402b3ea3761ee6" SRC_URI = "git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=1.0;protocol=https" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp/configure.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp/configure.patch new file mode 100644 index 0000000000..af504be766 --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp/configure.patch @@ -0,0 +1,56 @@ +From: =?UTF-8?q?J=C3=B6rg=20Sommer?= <joerg.sommer@navimatix.de> +Date: Thu, 14 Mar 2024 09:41:57 +0100 +Subject: [PATCH 2/2] configure: Replace manual search for libxml by + AC_CHECK_LIB +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The manual search fails if the include directories (and build environment) +are located somewhere else. + +Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de> +Upstream-Status: Submitted [https://github.com/freeswitch/spandsp/pull/74] +--- + +ERROR: spandsp-3.0.0+git-r0 do_configure: QA Issue: This autoconf log indicates errors, it looked at host include and/or library paths while determining system capabilities. + + configure.ac | 22 +++++----------------- + 1 file changed, 5 insertions(+), 17 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 2140837..b5138d6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -185,23 +185,11 @@ then + fi + + # Determine XML2 include path +-AC_MSG_CHECKING(for libxml/xmlmemory.h) +- +-# Can we include headers using system include dirs? +-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <libxml/xmlmemory.h>]], [[int a = 1;]])],[XML2_INCLUDE=" "],[XML2_INCLUDE=]) +- +-# Hunt through several possible directories to find the includes for libxml2 +-if test "x$XML2_INCLUDE" = "x"; then +- old_CPPFLAGS="$CPPFLAGS" +- for i in $xml2_include_dir /usr/include /usr/local/include /usr/include/libxml2 /usr/local/include/libxml2 ; do +- CPPFLAGS="$old_CPPFLAGS -I$i" +- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <libxml/xmlmemory.h>]], [[int a = 1;]])],[XML2_INCLUDE="-I$i"],[XML2_INCLUDE= +- ]) +- if test "x$XML2_INCLUDE" != "x"; then +- break; +- fi +- done +- CPPFLAGS="$old_CPPFLAGS $XML2_INCLUDE" ++AC_CHECK_LIB([xml2], [xmlParseFile], [libxml2_found=yes]) ++if test "$libxml2_found" = "yes" ; then ++ AC_DEFINE(HAVE_LIBXML2,1,[defined when libxml2 is available]) ++else ++ AC_MSG_WARN([libxml2 not found. Disabling cache.]) + fi + + AC_CHECK_HEADERS([libxml/xmlmemory.h]) +-- +2.34.1 + diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp/makefile.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp/makefile.patch new file mode 100644 index 0000000000..d3eb047fe5 --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp/makefile.patch @@ -0,0 +1,161 @@ +From: =?UTF-8?q?J=C3=B6rg=20Sommer?= <joerg.sommer@navimatix.de> +Date: Thu, 14 Mar 2024 08:08:13 +0100 +Subject: [PATCH 1/2] configure: Use AX_PROG_CC_FOR_BUILD for cross compiling +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The macro AX_PROG_CC_FOR_BUILD [1] sets the variables CC_FOR_BUILD and +..._FLAGS_FOR_BUILD they can be used [2] to build binaries used at compile +time. + +[1]: https://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html +[2]: https://stackoverflow.com/questions/24201260/autotools-cross-compilation-and-generated-sources/24208587#24208587 + +Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de> +Upstream-Status: Submitted [https://github.com/freeswitch/spandsp/pull/74] +--- + configure.ac | 49 +------------------------------------------- + src/Makefile.am | 54 +++++++++++++++++++++++++------------------------ + 2 files changed, 29 insertions(+), 74 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 96fd022..2140837 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -55,54 +55,7 @@ AC_LANG([C]) + + AX_COMPILER_VENDOR + +-if test "${build}" != "${host}" +-then +- # If we are doing a Canadian Cross, in which the host and build systems +- # are not the same, we set reasonable default values for the tools. +- +- CC_FOR_BUILD=${CC_FOR_BUILD-gcc} +- CPPFLAGS_FOR_BUILD="\$(CPPFLAGS)" +- CC=${CC-${host_alias}-gcc} +- CFLAGS=${CFLAGS-"-g -O2"} +- CXX=${CXX-${host_alias}-c++} +- CXXFLAGS=${CXXFLAGS-"-g -O2"} +-else +- # Set reasonable default values for some tools even if not Canadian. +- # Of course, these are different reasonable default values, originally +- # specified directly in the Makefile. +- # We don't export, so that autoconf can do its job. +- # Note that all these settings are above the fragment inclusion point +- # in Makefile.in, so can still be overridden by fragments. +- # This is all going to change when we autoconfiscate... +- CC_FOR_BUILD="\$(CC)" +- CPPFLAGS_FOR_BUILD="\$(CPPFLAGS)" +- AC_PROG_CC +- +- # We must set the default linker to the linker used by gcc for the correct +- # operation of libtool. If LD is not defined and we are using gcc, try to +- # set the LD default to the ld used by gcc. +- if test -z "$LD" +- then +- if test "$GCC" = yes +- then +- case $build in +- *-*-mingw*) +- gcc_prog_ld=`$CC -print-prog-name=ld 2>&1 | tr -d '\015'` ;; +- *) +- gcc_prog_ld=`$CC -print-prog-name=ld 2>&1` ;; +- esac +- case $gcc_prog_ld in +- # Accept absolute paths. +- [[\\/]* | [A-Za-z]:[\\/]*)] +- LD="$gcc_prog_ld" ;; +- esac +- fi +- fi +- +- CXX=${CXX-"c++"} +- CFLAGS=${CFLAGS-"-g -O2"} +- CXXFLAGS=${CXXFLAGS-"-g -O2"} +-fi ++AX_PROG_CC_FOR_BUILD + + AC_DEFUN([REMOVE_FROM_VAR],[ + new_val="" +diff --git a/src/Makefile.am b/src/Makefile.am +index e05fad5..9b409a1 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -386,44 +386,46 @@ noinst_HEADERS = cielab_luts.h \ + v34_tx_pre_emphasis_filters.h \ + v34_tables.h + +-make_at_dictionary$(EXEEXT): $(top_srcdir)/src/make_at_dictionary.c +- $(CC_FOR_BUILD) -o make_at_dictionary$(EXEEXT) $(top_srcdir)/src/make_at_dictionary.c -DHAVE_CONFIG_H -I$(top_builddir)/src ++LINK_FOR_BUILD.c = $(CC_FOR_BUILD) -DHAVE_CONFIG_H -I$(top_builddir)/src $(CFLAGS_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) $(TARGET_ARCH_FOR_BUILD) + +-make_cielab_luts$(EXEEXT): $(top_srcdir)/src/make_cielab_luts.c +- $(CC_FOR_BUILD) -o make_cielab_luts$(EXEEXT) $(top_srcdir)/src/make_cielab_luts.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_at_dictionary$(BUILD_EXEEXT): $(top_srcdir)/src/make_at_dictionary.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ + +-make_math_fixed_tables$(EXEEXT): $(top_srcdir)/src/make_math_fixed_tables.c +- $(CC_FOR_BUILD) -o make_math_fixed_tables$(EXEEXT) $(top_srcdir)/src/make_math_fixed_tables.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_cielab_luts$(BUILD_EXEEXT): $(top_srcdir)/src/make_cielab_luts.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_modem_filter$(EXEEXT): $(top_srcdir)/src/make_modem_filter.c $(top_srcdir)/src/filter_tools.c +- $(CC_FOR_BUILD) -o make_modem_filter$(EXEEXT) $(top_srcdir)/src/make_modem_filter.c $(top_srcdir)/src/filter_tools.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_math_fixed_tables$(BUILD_EXEEXT): $(top_srcdir)/src/make_math_fixed_tables.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_modem_godard_coefficients$(EXEEXT): $(top_srcdir)/src/make_modem_godard_coefficients.c $(top_srcdir)/src/filter_tools.c +- $(CC_FOR_BUILD) -o make_modem_godard_coefficients$(EXEEXT) $(top_srcdir)/src/make_modem_godard_coefficients.c $(top_srcdir)/src/filter_tools.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_modem_filter$(BUILD_EXEEXT): $(top_srcdir)/src/make_modem_filter.c $(top_srcdir)/src/filter_tools.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_t43_gray_code_tables$(EXEEXT): $(top_srcdir)/src/make_t43_gray_code_tables.c +- $(CC_FOR_BUILD) -o make_t43_gray_code_tables$(EXEEXT) $(top_srcdir)/src/make_t43_gray_code_tables.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_modem_godard_coefficients$(BUILD_EXEEXT): $(top_srcdir)/src/make_modem_godard_coefficients.c $(top_srcdir)/src/filter_tools.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_v17_v32_constellation_map$(EXEEXT): $(top_srcdir)/src/make_v17_v32_constellation_map.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c +- $(CC_FOR_BUILD) -o make_v17_v32_constellation_map$(EXEEXT) $(top_srcdir)/src/make_v17_v32_constellation_map.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_t43_gray_code_tables$(BUILD_EXEEXT): $(top_srcdir)/src/make_t43_gray_code_tables.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_v17_v32_convolutional_encoder$(EXEEXT): $(top_srcdir)/src/make_v17_v32_convolutional_encoder.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c +- $(CC_FOR_BUILD) -o make_v17_v32_convolutional_encoder$(EXEEXT) $(top_srcdir)/src/make_v17_v32_convolutional_encoder.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_v17_v32_constellation_map$(BUILD_EXEEXT): $(top_srcdir)/src/make_v17_v32_constellation_map.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_v29_constellation_map$(EXEEXT): $(top_srcdir)/src/make_v29_constellation_map.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c +- $(CC_FOR_BUILD) -o make_v29_constellation_map$(EXEEXT) $(top_srcdir)/src/make_v29_constellation_map.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_v17_v32_convolutional_encoder$(BUILD_EXEEXT): $(top_srcdir)/src/make_v17_v32_convolutional_encoder.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_v34_convolutional_coders$(EXEEXT): $(top_srcdir)/src/make_v34_convolutional_coders.c +- $(CC_FOR_BUILD) -o make_v34_convolutional_coders$(EXEEXT) $(top_srcdir)/src/make_v34_convolutional_coders.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_v29_constellation_map$(BUILD_EXEEXT): $(top_srcdir)/src/make_v29_constellation_map.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_v34_probe_signals$(EXEEXT): $(top_srcdir)/src/make_v34_probe_signals.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c +- $(CC_FOR_BUILD) -o make_v34_probe_signals$(EXEEXT) $(top_srcdir)/src/make_v34_probe_signals.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c -DHAVE_CONFIG_H -I$(top_builddir)/src -lm ++make_v34_convolutional_coders$(BUILD_EXEEXT): $(top_srcdir)/src/make_v34_convolutional_coders.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -lm + +-make_v34_shell_map$(EXEEXT): $(top_srcdir)/src/make_v34_shell_map.c +- $(CC_FOR_BUILD) -o make_v34_shell_map$(EXEEXT) $(top_srcdir)/src/make_v34_shell_map.c -DHAVE_CONFIG_H -I$(top_builddir)/src ++make_v34_probe_signals$(BUILD_EXEEXT): $(top_srcdir)/src/make_v34_probe_signals.c $(top_srcdir)/src/g711.c $(top_srcdir)/src/alloc.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -I$(top_srcdir)/src -lm + +-make_v34_tx_pre_emphasis_filters$(EXEEXT): $(top_srcdir)/src/make_v34_tx_pre_emphasis_filters.c $(top_srcdir)/tools/meteor-engine.c +- $(CC_FOR_BUILD) -o make_v34_tx_pre_emphasis_filters$(EXEEXT) $(top_srcdir)/src/make_v34_tx_pre_emphasis_filters.c $(top_srcdir)/tools/meteor-engine.c -DHAVE_CONFIG_H -I$(top_builddir)/src -I$(top_builddir)/tools -lm ++make_v34_shell_map$(BUILD_EXEEXT): $(top_srcdir)/src/make_v34_shell_map.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ ++ ++make_v34_tx_pre_emphasis_filters$(BUILD_EXEEXT): $(top_srcdir)/src/make_v34_tx_pre_emphasis_filters.c $(top_srcdir)/tools/meteor-engine.c ++ $(LINK_FOR_BUILD.c) -o $@ $^ -I$(top_srcdir)/tools -lm + + # We need to run make_at_dictionary, so it generates the + # at_interpreter_dictionary.h file +-- +2.34.1 + diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp_git.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp_git.bb new file mode 100644 index 0000000000..f115553fd1 --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/spandsp/spandsp_git.bb @@ -0,0 +1,50 @@ +SUMMARY = "A DSP library for telephony" +DESCRIPTION = "\ + SpanDSP is a low-level signal processing library that modulates and \ + demodulates signals commonly used in telephony, such as the \"noise\" \ + generated by a fax modem or DTMF touchpad. \ +" +HOMEPAGE = "https://www.soft-switch.org/" +BUGTRACKER = "https://github.com/freeswitch/spandsp/issues" +SECTION = "libs" +LICENSE = "LGPL-2.1-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=8791c23ddf418deb5be264cffb5fa6bc" + +DEPENDS = "\ + libxml2 \ + tiff \ + tiff-native \ +" + +PV = "3.0.0+git" + +SRC_URI = "\ + git://github.com/freeswitch/spandsp.git;protocol=https;branch=master \ + file://configure.patch \ + file://makefile.patch \ +" +# Fails to build with Clang since 5394b2cae6c482ccb835335b769469977e6802ae +# https://github.com/freeswitch/spandsp/issues/67 +# https://lists.openembedded.org/g/openembedded-devel/message/109325 +SRCREV = "df1282eb9af538ab1aadb6d66146e258451d4fe4" + +S = "${WORKDIR}/git" + +inherit autotools + +PACKAGECONFIG ?= "" + +PACKAGECONFIG[mmx] = "--enable-mmx,--disable-mmx" +PACKAGECONFIG[sse] = "--enable-sse,--disable-sse" +PACKAGECONFIG[sse2] = "--enable-sse2,--disable-sse2" +PACKAGECONFIG[sse3] = "--enable-sse3,--disable-sse3" +PACKAGECONFIG[ssse3] = "--enable-ssse3,--disable-ssse3" +PACKAGECONFIG[sse4-1] = "--enable-sse4-1,--disable-sse4-1" +PACKAGECONFIG[sse4-2] = "--enable-sse4-2,--disable-sse4-2" +PACKAGECONFIG[avx] = "--enable-avx,--disable-avx" +PACKAGECONFIG[avx2] = "--enable-avx2,--disable-avx2" +PACKAGECONFIG[neon] = "--enable-neon,--disable-neon" +PACKAGECONFIG[fixed-point] = "--enable-fixed-point,--disable-fixed-point" +PACKAGECONFIG[v32bis] = "--enable-v32bis,--disable-v32bis" +PACKAGECONFIG[v34] = "--enable-v34,--disable-v34" +PACKAGECONFIG[sslfax] = "--enable-sslfax,--disable-sslfax" diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch index cc65af009b..d6ff0b2dba 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch @@ -7,7 +7,7 @@ Signed-off-by: Tim Orling <TicoTimo@gmail.com> --- a/configure.ac +++ b/configure.ac -@@ -1892,7 +1892,16 @@ PKG_ENABLE_MODULES_VLC([BLURAY], [libblu +@@ -1891,7 +1891,16 @@ PKG_ENABLE_MODULES_VLC([BLURAY], [libblu dnl dnl OpenCV wrapper and example filters dnl diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-taglib-Fix-build-on-x86-32-bit.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-taglib-Fix-build-on-x86-32-bit.patch new file mode 100644 index 0000000000..2dff9b63ce --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-taglib-Fix-build-on-x86-32-bit.patch @@ -0,0 +1,50 @@ +From 5b921009b0db2c5c15aef7ce241d3c81f9c272c9 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 9 Mar 2024 12:26:39 -0800 +Subject: [PATCH] taglib: Fix build on x86 32-bit + +While compiling with clang, there are errors seen such as +on function override signature mismatches + +meta_engine/taglib.cpp:240:10: error: virtual function 'tell' has a different return type ('long') than the function it overrides (which has return type 'offset_t' (aka 'long long')) + 240 | long tell() const + | ~~~~ ^ +/mnt/b/yoe/master/build/tmp/work/core2-32-yoe-linux/vlc/3.0.20/recipe-sysroot/usr/include/taglib/tiostream.h:156:22: note: overridden virtual function is here + 156 | virtual offset_t tell() const = 0; + | ~~~~~~~~ ^ +meta_engine/taglib.cpp:245:10: error: virtual function 'length' has a different return type ('long') than the function it overrides (which has return type 'offset_t' (aka 'long long')) + 245 | long length() + | ~~~~ ^ +/mnt/b/yoe/master/build/tmp/work/core2-32-yoe-linux/vlc/3.0.20/recipe-sysroot/usr/include/taglib/tiostream.h:161:22: note: overridden virtual function is here + 161 | virtual offset_t length() = 0; + | ~~~~~~~~ ^ + +Upstream-Status: Submitted [https://mailman.videolan.org/pipermail/vlc-devel/2024-March/143639.html] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + modules/meta_engine/taglib.cpp | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp +index f371485008..129fdf55f1 100644 +--- a/modules/meta_engine/taglib.cpp ++++ b/modules/meta_engine/taglib.cpp +@@ -237,12 +237,12 @@ public: + return; + } + +- long tell() const ++ offset_t tell() const + { +- return m_previousPos; ++ return (offset_t)m_previousPos; + } + +- long length() ++ offset_t length() + { + uint64_t i_size; + if (vlc_stream_GetSize( m_stream, &i_size ) != VLC_SUCCESS) +-- +2.44.0 + diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch index 8ecddd33c6..f68da33607 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch @@ -6,7 +6,7 @@ Signed-off-by: Tim Orling <TicoTimo@gmail.com> --- a/modules/codec/Makefile.am +++ b/modules/codec/Makefile.am -@@ -321,7 +321,7 @@ codec_LTLIBRARIES += $(LTLIBdaala) +@@ -324,7 +324,7 @@ codec_LTLIBRARIES += $(LTLIBdaala) libtremor_plugin_la_SOURCES = codec/vorbis.c libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)' diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch index b9f5ad591c..6659a44a0a 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch @@ -16,7 +16,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> --- a/configure.ac +++ b/configure.ac -@@ -3461,27 +3461,18 @@ AC_ARG_ENABLE(mmal, +@@ -3460,27 +3460,18 @@ AC_ARG_ENABLE(mmal, AS_HELP_STRING([--enable-mmal], [Multi-Media Abstraction Layer (MMAL) hardware plugin (default enable)])) if test "${enable_mmal}" != "no"; then diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-ioctl-does-not-have-same-signature-between-glibc-and.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-ioctl-does-not-have-same-signature-between-glibc-and.patch index cbf4f2b911..89e7d585d7 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-ioctl-does-not-have-same-signature-between-glibc-and.patch +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-ioctl-does-not-have-same-signature-between-glibc-and.patch @@ -10,11 +10,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> modules/access/v4l2/v4l2.h | 4 ++++ 2 files changed, 8 insertions(+) -diff --git a/modules/access/v4l2/lib.c b/modules/access/v4l2/lib.c -index b212e1bc5f..ff7c66bf35 100644 --- a/modules/access/v4l2/lib.c +++ b/modules/access/v4l2/lib.c -@@ -43,7 +43,11 @@ int (*v4l2_fd_open) (int, int) = fd_open; +@@ -49,7 +49,11 @@ int (*v4l2_fd_open) (int, int) = fd_open //int (*v4l2_open) (const char *, int, ...) = open; //int (*v4l2_dup) (const char *, int, ...) = dup; int (*v4l2_close) (int) = close; @@ -26,11 +24,9 @@ index b212e1bc5f..ff7c66bf35 100644 ssize_t (*v4l2_read) (int, void *, size_t) = read; //ssize_t (*v4l2_write) (int, const void *, size_t) = write; void * (*v4l2_mmap) (void *, size_t, int, int, int, int64_t) = mmap; -diff --git a/modules/access/v4l2/v4l2.h b/modules/access/v4l2/v4l2.h -index ac4562e269..727e83e9b1 100644 --- a/modules/access/v4l2/v4l2.h +++ b/modules/access/v4l2/v4l2.h -@@ -23,7 +23,11 @@ +@@ -28,7 +28,11 @@ /* libv4l2 functions */ extern int (*v4l2_fd_open) (int, int); extern int (*v4l2_close) (int); @@ -42,6 +38,3 @@ index ac4562e269..727e83e9b1 100644 extern ssize_t (*v4l2_read) (int, void *, size_t); extern void * (*v4l2_mmap) (void *, size_t, int, int, int, int64_t); extern int (*v4l2_munmap) (void *, size_t); --- -2.39.2 - diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0006-configure-Disable-incompatible-function-pointer-type.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0006-configure-Disable-incompatible-function-pointer-type.patch index 4128db1aea..b158328aa2 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0006-configure-Disable-incompatible-function-pointer-type.patch +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0006-configure-Disable-incompatible-function-pointer-type.patch @@ -10,11 +10,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> configure.ac | 5 +++++ 1 file changed, 5 insertions(+) -diff --git a/configure.ac b/configure.ac -index 9f1c099e13..8e45a05808 100644 --- a/configure.ac +++ b/configure.ac -@@ -98,6 +98,11 @@ AS_IF([test -n "${with_binary_version}"],[ +@@ -98,6 +98,11 @@ AS_IF([test -n "${with_binary_version}"] dnl Prevent clang from accepting unknown flags with a mere warning AX_APPEND_COMPILE_FLAGS([-Werror=unknown-warning-option -Werror=invalid-command-line-argument], [CFLAGS]) AX_APPEND_COMPILE_FLAGS([-Werror=unknown-warning-option -Werror=invalid-command-line-argument], [CXXFLAGS]) @@ -26,6 +24,3 @@ index 9f1c099e13..8e45a05808 100644 dnl dnl Check the operating system --- -2.39.2 - diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/taglib-2.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/taglib-2.patch new file mode 100644 index 0000000000..f238ff4244 --- /dev/null +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/taglib-2.patch @@ -0,0 +1,67 @@ +Fix build with taglib 2.0 + +Source: https://gitlab.archlinux.org/archlinux/packaging/packages/vlc/-/blob/main/taglib-2.patch?ref_type=heads +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- a/modules/meta_engine/taglib.cpp ++++ b/modules/meta_engine/taglib.cpp +@@ -185,7 +185,7 @@ public: + ByteVector res(length, 0); + ssize_t i_read = vlc_stream_Read( m_stream, res.data(), length); + if (i_read < 0) +- return ByteVector::null; ++ return ByteVector(); + else if ((size_t)i_read != length) + res.resize(i_read); + return res; +@@ -465,7 +465,7 @@ static void ReadMetaFromASF( ASF::Tag* t + static void ReadMetaFromBasicTag(const Tag* tag, vlc_meta_t *dest) + { + #define SET( accessor, meta ) \ +- if( !tag->accessor().isNull() && !tag->accessor().isEmpty() ) \ ++ if( !tag->accessor().isEmpty() ) \ + vlc_meta_Set##meta( dest, tag->accessor().toCString(true) ) + #define SETINT( accessor, meta ) \ + if( tag->accessor() ) \ +@@ -806,15 +806,15 @@ static void ReadMetaFromMP4( MP4::Tag* t + { + MP4::Item list; + #define SET( keyName, metaName ) \ +- if( tag->itemListMap().contains(keyName) ) \ ++ if( tag->itemMap().contains(keyName) ) \ + { \ +- list = tag->itemListMap()[keyName]; \ ++ list = tag->itemMap()[keyName]; \ + vlc_meta_Set##metaName( p_meta, list.toStringList().front().toCString( true ) ); \ + } + #define SET_EXTRA( keyName, metaName ) \ +- if( tag->itemListMap().contains(keyName) ) \ ++ if( tag->itemMap().contains(keyName) ) \ + { \ +- list = tag->itemListMap()[keyName]; \ ++ list = tag->itemMap()[keyName]; \ + vlc_meta_AddExtra( p_meta, metaName, list.toStringList().front().toCString( true ) ); \ + } + +@@ -824,9 +824,9 @@ static void ReadMetaFromMP4( MP4::Tag* t + #undef SET + #undef SET_EXTRA + +- if( tag->itemListMap().contains("covr") ) ++ if( tag->itemMap().contains("covr") ) + { +- MP4::CoverArtList list = tag->itemListMap()["covr"].toCoverArtList(); ++ MP4::CoverArtList list = tag->itemMap()["covr"].toCoverArtList(); + const char *psz_format = list[0].format() == MP4::CoverArt::PNG ? "image/png" : "image/jpeg"; + + msg_Dbg( p_demux_meta, "Found embedded art (%s) is %i bytes", +@@ -1337,7 +1337,7 @@ static int WriteMeta( vlc_object_t *p_th + if( RIFF::AIFF::File* riff_aiff = dynamic_cast<RIFF::AIFF::File*>(f.file()) ) + WriteMetaToId3v2( riff_aiff->tag(), p_item ); + else if( RIFF::WAV::File* riff_wav = dynamic_cast<RIFF::WAV::File*>(f.file()) ) +- WriteMetaToId3v2( riff_wav->tag(), p_item ); ++ WriteMetaToId3v2( riff_wav->ID3v2Tag(), p_item ); + } + else if( TrueAudio::File* trueaudio = dynamic_cast<TrueAudio::File*>(f.file()) ) + { diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.18.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.20.bb index 12b32879a7..d25a20ae01 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.18.bb +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.20.bb @@ -16,17 +16,17 @@ DEPENDS = "coreutils-native fribidi libtool libgcrypt libgcrypt-native bison-nat LDFLAGS:append:riscv64 = " -latomic" LDFLAGS:append:riscv32 = " -latomic" -SRC_URI = "git://github.com/videolan/vlc.git;protocol=https;branch=3.0.x \ +SRC_URI = "https://get.videolan.org/${BPN}/${PV}/${BP}.tar.xz \ file://0001-make-opencv-configurable.patch \ file://0002-use-vorbisidec.patch \ file://0003-fix-luaL-checkint.patch \ file://0004-Use-packageconfig-to-detect-mmal-support.patch \ file://0005-ioctl-does-not-have-same-signature-between-glibc-and.patch \ file://0006-configure-Disable-incompatible-function-pointer-type.patch \ - file://0001-po-Fix-invalid-.oc-translation-format-string.patch \ + file://taglib-2.patch \ + file://0001-taglib-Fix-build-on-x86-32-bit.patch \ " -SRCREV = "e9eceaed4d838dbd84638bfb2e4bdd08294163b1" -S = "${WORKDIR}/git" +SRC_URI[sha256sum] = "adc7285b4d2721cddf40eb5270cada2aaa10a334cb546fd55a06353447ba29b5" inherit autotools-brokensep features_check gettext pkgconfig mime-xdg diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.17.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.5.0.bb index 3959cd7f81..8aa95a3e97 100644 --- a/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.17.bb +++ b/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.5.0.bb @@ -10,7 +10,7 @@ DEPENDS = "glib-2.0 glib-2.0-native lua pipewire \ ${@bb.utils.contains("DISTRO_FEATURES", "gobject-introspection-data", "python3-native python3-lxml-native doxygen-native", "", d)} \ " -SRCREV = "d3eb77b292655cef333a8f4cab4e861415bc37c2" +SRCREV = "59d190a2bd400f3b093f99b16fc0fb06f6cb2cfe" SRC_URI = " \ git://gitlab.freedesktop.org/pipewire/wireplumber.git;branch=master;protocol=https \ file://90-OE-disable-session-dbus-dependent-features.lua \ @@ -50,7 +50,7 @@ PACKAGECONFIG[dbus] = "" PACKAGESPLITFUNCS:prepend = " split_dynamic_packages " PACKAGESPLITFUNCS:append = " set_dynamic_metapkg_rdepends " -WP_MODULE_SUBDIR = "wireplumber-0.4" +WP_MODULE_SUBDIR = "wireplumber-0.5" do_install:append() { if ${@bb.utils.contains('PACKAGECONFIG', 'dbus', 'false', 'true', d)}; then |