diff options
| -rw-r--r-- | meta-multimedia/recipes-multimedia/vlc/vlc/0001-taglib-Fix-build-on-x86-32-bit.patch | 50 | ||||
| -rw-r--r-- | meta-multimedia/recipes-multimedia/vlc/vlc/taglib-2.patch | 67 | ||||
| -rw-r--r-- | meta-multimedia/recipes-multimedia/vlc/vlc_3.0.23.bb (renamed from meta-multimedia/recipes-multimedia/vlc/vlc_3.0.21.bb) | 16 |
3 files changed, 8 insertions, 125 deletions
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc/0001-taglib-Fix-build-on-x86-32-bit.patch b/meta-multimedia/recipes-multimedia/vlc/vlc/0001-taglib-Fix-build-on-x86-32-bit.patch deleted file mode 100644 index 2dff9b63ce..0000000000 --- a/meta-multimedia/recipes-multimedia/vlc/vlc/0001-taglib-Fix-build-on-x86-32-bit.patch +++ /dev/null | |||
| @@ -1,50 +0,0 @@ | |||
| 1 | From 5b921009b0db2c5c15aef7ce241d3c81f9c272c9 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Sat, 9 Mar 2024 12:26:39 -0800 | ||
| 4 | Subject: [PATCH] taglib: Fix build on x86 32-bit | ||
| 5 | |||
| 6 | While compiling with clang, there are errors seen such as | ||
| 7 | on function override signature mismatches | ||
| 8 | |||
| 9 | 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')) | ||
| 10 | 240 | long tell() const | ||
| 11 | | ~~~~ ^ | ||
| 12 | /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 | ||
| 13 | 156 | virtual offset_t tell() const = 0; | ||
| 14 | | ~~~~~~~~ ^ | ||
| 15 | 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')) | ||
| 16 | 245 | long length() | ||
| 17 | | ~~~~ ^ | ||
| 18 | /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 | ||
| 19 | 161 | virtual offset_t length() = 0; | ||
| 20 | | ~~~~~~~~ ^ | ||
| 21 | |||
| 22 | Upstream-Status: Submitted [https://mailman.videolan.org/pipermail/vlc-devel/2024-March/143639.html] | ||
| 23 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 24 | --- | ||
| 25 | modules/meta_engine/taglib.cpp | 6 +++--- | ||
| 26 | 1 file changed, 3 insertions(+), 3 deletions(-) | ||
| 27 | |||
| 28 | diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp | ||
| 29 | index f371485008..129fdf55f1 100644 | ||
| 30 | --- a/modules/meta_engine/taglib.cpp | ||
| 31 | +++ b/modules/meta_engine/taglib.cpp | ||
| 32 | @@ -237,12 +237,12 @@ public: | ||
| 33 | return; | ||
| 34 | } | ||
| 35 | |||
| 36 | - long tell() const | ||
| 37 | + offset_t tell() const | ||
| 38 | { | ||
| 39 | - return m_previousPos; | ||
| 40 | + return (offset_t)m_previousPos; | ||
| 41 | } | ||
| 42 | |||
| 43 | - long length() | ||
| 44 | + offset_t length() | ||
| 45 | { | ||
| 46 | uint64_t i_size; | ||
| 47 | if (vlc_stream_GetSize( m_stream, &i_size ) != VLC_SUCCESS) | ||
| 48 | -- | ||
| 49 | 2.44.0 | ||
| 50 | |||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc/taglib-2.patch b/meta-multimedia/recipes-multimedia/vlc/vlc/taglib-2.patch deleted file mode 100644 index f238ff4244..0000000000 --- a/meta-multimedia/recipes-multimedia/vlc/vlc/taglib-2.patch +++ /dev/null | |||
| @@ -1,67 +0,0 @@ | |||
| 1 | Fix build with taglib 2.0 | ||
| 2 | |||
| 3 | Source: https://gitlab.archlinux.org/archlinux/packaging/packages/vlc/-/blob/main/taglib-2.patch?ref_type=heads | ||
| 4 | Upstream-Status: Pending | ||
| 5 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 6 | |||
| 7 | --- a/modules/meta_engine/taglib.cpp | ||
| 8 | +++ b/modules/meta_engine/taglib.cpp | ||
| 9 | @@ -185,7 +185,7 @@ public: | ||
| 10 | ByteVector res(length, 0); | ||
| 11 | ssize_t i_read = vlc_stream_Read( m_stream, res.data(), length); | ||
| 12 | if (i_read < 0) | ||
| 13 | - return ByteVector::null; | ||
| 14 | + return ByteVector(); | ||
| 15 | else if ((size_t)i_read != length) | ||
| 16 | res.resize(i_read); | ||
| 17 | return res; | ||
| 18 | @@ -465,7 +465,7 @@ static void ReadMetaFromASF( ASF::Tag* t | ||
| 19 | static void ReadMetaFromBasicTag(const Tag* tag, vlc_meta_t *dest) | ||
| 20 | { | ||
| 21 | #define SET( accessor, meta ) \ | ||
| 22 | - if( !tag->accessor().isNull() && !tag->accessor().isEmpty() ) \ | ||
| 23 | + if( !tag->accessor().isEmpty() ) \ | ||
| 24 | vlc_meta_Set##meta( dest, tag->accessor().toCString(true) ) | ||
| 25 | #define SETINT( accessor, meta ) \ | ||
| 26 | if( tag->accessor() ) \ | ||
| 27 | @@ -806,15 +806,15 @@ static void ReadMetaFromMP4( MP4::Tag* t | ||
| 28 | { | ||
| 29 | MP4::Item list; | ||
| 30 | #define SET( keyName, metaName ) \ | ||
| 31 | - if( tag->itemListMap().contains(keyName) ) \ | ||
| 32 | + if( tag->itemMap().contains(keyName) ) \ | ||
| 33 | { \ | ||
| 34 | - list = tag->itemListMap()[keyName]; \ | ||
| 35 | + list = tag->itemMap()[keyName]; \ | ||
| 36 | vlc_meta_Set##metaName( p_meta, list.toStringList().front().toCString( true ) ); \ | ||
| 37 | } | ||
| 38 | #define SET_EXTRA( keyName, metaName ) \ | ||
| 39 | - if( tag->itemListMap().contains(keyName) ) \ | ||
| 40 | + if( tag->itemMap().contains(keyName) ) \ | ||
| 41 | { \ | ||
| 42 | - list = tag->itemListMap()[keyName]; \ | ||
| 43 | + list = tag->itemMap()[keyName]; \ | ||
| 44 | vlc_meta_AddExtra( p_meta, metaName, list.toStringList().front().toCString( true ) ); \ | ||
| 45 | } | ||
| 46 | |||
| 47 | @@ -824,9 +824,9 @@ static void ReadMetaFromMP4( MP4::Tag* t | ||
| 48 | #undef SET | ||
| 49 | #undef SET_EXTRA | ||
| 50 | |||
| 51 | - if( tag->itemListMap().contains("covr") ) | ||
| 52 | + if( tag->itemMap().contains("covr") ) | ||
| 53 | { | ||
| 54 | - MP4::CoverArtList list = tag->itemListMap()["covr"].toCoverArtList(); | ||
| 55 | + MP4::CoverArtList list = tag->itemMap()["covr"].toCoverArtList(); | ||
| 56 | const char *psz_format = list[0].format() == MP4::CoverArt::PNG ? "image/png" : "image/jpeg"; | ||
| 57 | |||
| 58 | msg_Dbg( p_demux_meta, "Found embedded art (%s) is %i bytes", | ||
| 59 | @@ -1337,7 +1337,7 @@ static int WriteMeta( vlc_object_t *p_th | ||
| 60 | if( RIFF::AIFF::File* riff_aiff = dynamic_cast<RIFF::AIFF::File*>(f.file()) ) | ||
| 61 | WriteMetaToId3v2( riff_aiff->tag(), p_item ); | ||
| 62 | else if( RIFF::WAV::File* riff_wav = dynamic_cast<RIFF::WAV::File*>(f.file()) ) | ||
| 63 | - WriteMetaToId3v2( riff_wav->tag(), p_item ); | ||
| 64 | + WriteMetaToId3v2( riff_wav->ID3v2Tag(), p_item ); | ||
| 65 | } | ||
| 66 | else if( TrueAudio::File* trueaudio = dynamic_cast<TrueAudio::File*>(f.file()) ) | ||
| 67 | { | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.21.bb b/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.23.bb index 2d2ecc63b9..d17357b727 100644 --- a/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.21.bb +++ b/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.23.bb | |||
| @@ -23,10 +23,8 @@ SRC_URI = "https://get.videolan.org/${BPN}/${PV}/${BP}.tar.xz \ | |||
| 23 | file://0004-Use-packageconfig-to-detect-mmal-support.patch \ | 23 | file://0004-Use-packageconfig-to-detect-mmal-support.patch \ |
| 24 | file://0005-ioctl-does-not-have-same-signature-between-glibc-and.patch \ | 24 | file://0005-ioctl-does-not-have-same-signature-between-glibc-and.patch \ |
| 25 | file://0006-configure-Disable-incompatible-function-pointer-type.patch \ | 25 | file://0006-configure-Disable-incompatible-function-pointer-type.patch \ |
| 26 | file://taglib-2.patch \ | ||
| 27 | file://0001-taglib-Fix-build-on-x86-32-bit.patch \ | ||
| 28 | " | 26 | " |
| 29 | SRC_URI[sha256sum] = "24dbbe1d7dfaeea0994d5def0bbde200177347136dbfe573f5b6a4cee25afbb0" | 27 | SRC_URI[sha256sum] = "e891cae6aa3ccda69bf94173d5105cbc55c7a7d9b1d21b9b21666e69eff3e7e0" |
| 30 | inherit autotools-brokensep features_check gettext pkgconfig mime-xdg | 28 | inherit autotools-brokensep features_check gettext pkgconfig mime-xdg |
| 31 | 29 | ||
| 32 | REQUIRED_DISTRO_FEATURES = "x11" | 30 | REQUIRED_DISTRO_FEATURES = "x11" |
| @@ -44,7 +42,6 @@ EXTRA_OECONF = "\ | |||
| 44 | --without-contrib \ | 42 | --without-contrib \ |
| 45 | --without-kde-solid \ | 43 | --without-kde-solid \ |
| 46 | --enable-realrtsp \ | 44 | --enable-realrtsp \ |
| 47 | --disable-libtar \ | ||
| 48 | --enable-avcodec \ | 45 | --enable-avcodec \ |
| 49 | ac_cv_path_MOC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/moc \ | 46 | ac_cv_path_MOC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/moc \ |
| 50 | ac_cv_path_RCC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/rcc \ | 47 | ac_cv_path_RCC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/rcc \ |
| @@ -94,7 +91,12 @@ PACKAGECONFIG[vnc] = "--enable-vnc,--disable-vnc, libvncserver" | |||
| 94 | PACKAGECONFIG[x11] = "--with-x --enable-xcb,--without-x --disable-xcb, xcb-util-keysyms libxpm libxinerama" | 91 | PACKAGECONFIG[x11] = "--with-x --enable-xcb,--without-x --disable-xcb, xcb-util-keysyms libxpm libxinerama" |
| 95 | PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng" | 92 | PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng" |
| 96 | PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau" | 93 | PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau" |
| 97 | PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native" | 94 | PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland wayland-native wayland-protocols" |
| 95 | |||
| 96 | do_configure:prepend() { | ||
| 97 | # use wayland-scanner from native sysroot instead of build host | ||
| 98 | sed -i 's,\(WAYLAND_SCANNER=\).*,\1${STAGING_BINDIR_NATIVE}/wayland-scanner,' configure.ac | ||
| 99 | } | ||
| 98 | 100 | ||
| 99 | do_configure:append() { | 101 | do_configure:append() { |
| 100 | # moc needs support: precreate build paths | 102 | # moc needs support: precreate build paths |
| @@ -117,7 +119,7 @@ FILES:${PN} += "\ | |||
| 117 | ${datadir}/applications \ | 119 | ${datadir}/applications \ |
| 118 | ${datadir}/vlc/ \ | 120 | ${datadir}/vlc/ \ |
| 119 | ${datadir}/icons \ | 121 | ${datadir}/icons \ |
| 120 | ${datadir}/metainfo/vlc.appdata.xml \ | 122 | ${datadir}/metainfo/org.videolan.vlc.appdata.xml \ |
| 121 | " | 123 | " |
| 122 | 124 | ||
| 123 | FILES:${PN}-dbg += "\ | 125 | FILES:${PN}-dbg += "\ |
| @@ -132,5 +134,3 @@ FILES:${PN}-staticdev += "\ | |||
| 132 | INSANE_SKIP:${PN} = "dev-so" | 134 | INSANE_SKIP:${PN} = "dev-so" |
| 133 | 135 | ||
| 134 | EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "0", "1", d)}" | 136 | EXCLUDE_FROM_WORLD = "${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "0", "1", d)}" |
| 135 | |||
| 136 | SKIP_RECIPE[vlc] = "requires porting to ffmpeg >= 7 as of ffmpeg >= 5 it requires extensive changes disabling VAAPI (only supported with vlc >= 4)" | ||
