[oe] [meta-multimedia][PATCH v2 3/3] vlc: update to 2.1.2

Walter Goossens waltergoossens at home.nl
Thu Feb 27 19:28:40 UTC 2014


On 02/27/14 18:18, Timothy Orling wrote:
> On Feb 26, 2014, at 4:48 AM, Walter Goossens <waltergoossens at home.nl> wrote:
>
>> Hi Tim,
>>
>> I've been working on slimmed down version of this recipe for audio only
>> and I got stuck on the lua scripts being incorrectly compiled, have you
>> looked at the scripts for this recipe?
>> It's not entirely clear to me how (in)portable lua bytecode is as the
>> documentation seems inconclusive about this. It seems the word-size
>> should at least be the same, but I've also read the endianness should be
>> the same.
>> Anyway, I'm using an x86_64 machine to compile for a raspberry pi
>> (arm-le) and it doesn't work out of the box, and also when using a 32bit
>> lua compiler (as suggested
>> https://wiki.videolan.org/Win32Compile_Under_Fedora/#Install_32-bit_Lua)
>> I'll be trying your recipe soon but I fear it'll have the same problem.
>>
> I have not looked into the lua/scripts yet. I was just happy to get it to compile!
>
> Any feedback is welcomed.

Well... to be quite honest, I haven't found a _real_ solution yet...
right now I create a script to compile the lua file on the target at
first boot but that really shouldn't be needed. There should be a way to
do decent lua cross-compiles but I have zero experience with lua, and
this error seemed so obvious to me that I'm still looking at what I've
done wrong. The llvm-lua stuff seems to be able to crosscompile but that
seemed like a hassle as well.
I was just wondering if compiling a lua script can be for the target
_really_ isn't possible and no-one has ever noticed or that I'm missing
something.
Keep you posted!

Walter
 

>> Walter
>>
>> On 02/26/14 06:39, Tim Orling wrote:
>>> From: Tim Orling <TicoTimo at gmail.com>
>>>
>>> Signed-off-by: Tim Orling <TicoTimo at gmail.com>
>>> ---
>>> .../vlc/files/0001-enable-subdir-objects.patch        | 13 +++++++++++++
>>> .../files/0002-glibc-does-not-provide-strlcpy.patch   | 17 +++++++++++++++++
>>> meta-multimedia/recipes-multimedia/vlc/vlc.inc        | 10 +++++++---
>>> meta-multimedia/recipes-multimedia/vlc/vlc_1.1.11.bb  | 19 -------------------
>>> meta-multimedia/recipes-multimedia/vlc/vlc_2.1.2.bb   | 17 +++++++++++++++++
>>> 5 files changed, 54 insertions(+), 22 deletions(-)
>>> create mode 100644 meta-multimedia/recipes-multimedia/vlc/files/0001-enable-subdir-objects.patch
>>> create mode 100644 meta-multimedia/recipes-multimedia/vlc/files/0002-glibc-does-not-provide-strlcpy.patch
>>> delete mode 100644 meta-multimedia/recipes-multimedia/vlc/vlc_1.1.11.bb
>>> create mode 100644 meta-multimedia/recipes-multimedia/vlc/vlc_2.1.2.bb
>>>
>>> diff --git a/meta-multimedia/recipes-multimedia/vlc/files/0001-enable-subdir-objects.patch b/meta-multimedia/recipes-multimedia/vlc/files/0001-enable-subdir-objects.patch
>>> new file mode 100644
>>> index 0000000..9f0e708
>>> --- /dev/null
>>> +++ b/meta-multimedia/recipes-multimedia/vlc/files/0001-enable-subdir-objects.patch
>>> @@ -0,0 +1,13 @@
>>> +Index: vlc-2.1.2/configure.ac
>>> +===================================================================
>>> +--- vlc-2.1.2.orig/configure.ac
>>> ++++ vlc-2.1.2/configure.ac
>>> +@@ -24,7 +24,7 @@ AC_CANONICAL_BUILD
>>> + AC_CANONICAL_HOST
>>> + AC_PRESERVE_HELP_ORDER
>>> + 
>>> +-AM_INIT_AUTOMAKE(tar-ustar color-tests foreign)
>>> ++AM_INIT_AUTOMAKE(tar-ustar color-tests foreign subdir-objects)
>>> + AC_CONFIG_HEADERS([config.h])
>>> + 
>>> + # Disable with "./configure --disable-silent-rules" or "make V=1"
>>> diff --git a/meta-multimedia/recipes-multimedia/vlc/files/0002-glibc-does-not-provide-strlcpy.patch b/meta-multimedia/recipes-multimedia/vlc/files/0002-glibc-does-not-provide-strlcpy.patch
>>> new file mode 100644
>>> index 0000000..6d2a46f
>>> --- /dev/null
>>> +++ b/meta-multimedia/recipes-multimedia/vlc/files/0002-glibc-does-not-provide-strlcpy.patch
>>> @@ -0,0 +1,17 @@
>>> +Index: vlc-2.1.2/src/input/subtitles.c
>>> +===================================================================
>>> +--- vlc-2.1.2.orig/src/input/subtitles.c
>>> ++++ vlc-2.1.2/src/input/subtitles.c
>>> +@@ -44,6 +44,12 @@
>>> + #include "input_internal.h"
>>> + 
>>> + /**
>>> ++ * Drepper's alternative 
>>> ++ * http://en.wikibooks.org/wiki/C_Programming/C_Reference/nonstandard/strlcpy
>>> ++ */
>>> ++#define strlcpy(dst, src, n) *((char* ) mempcpy(dst, src, n)) = '\0'
>>> ++
>>> ++/**
>>> +  * We are not going to autodetect more subtitle files than this.
>>> +  */
>>> + #define MAX_SUBTITLE_FILES 128
>>> diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc.inc b/meta-multimedia/recipes-multimedia/vlc/vlc.inc
>>> index 6400719..976c3bf 100644
>>> --- a/meta-multimedia/recipes-multimedia/vlc/vlc.inc
>>> +++ b/meta-multimedia/recipes-multimedia/vlc/vlc.inc
>>> @@ -5,13 +5,13 @@ SECTION = "multimedia"
>>>
>>> DEPENDS = "libfribidi libtool libgcrypt gst-plugins-bad virtual/libsdl qt4-x11-free dbus libxml2 gnutls tremor faad2 ffmpeg flac libxpm fluidsynth alsa-lib"
>>>
>>> -SRC_URI = "http://download.videolan.org/pub/videolan/vlc/${PV}/vlc-${PV}.tar.bz2"
>>> +SRC_URI = "http://download.videolan.org/pub/videolan/vlc/${PV}/vlc-${PV}.tar.xz"
>>>
>>> inherit autotools gettext
>>>
>>> ARM_INSTRUCTION_SET = "arm"
>>>
>>> -DEPENDS += "libdvdcss libdvdread lua5.1-native lua5.1"
>>> +DEPENDS += "libdvdcss libdvdread lua-native lua"
>>>
>>> LEAD_SONAME = "libvlc.so.5"
>>>
>>> @@ -36,6 +36,8 @@ FILES_libvlc-dbg = "\
>>>
>>> FILES_libvlc = "${libdir}/lib*.so.*"
>>>
>>> +FILES_libvlc-staticdev = "${libdir}/vlc/plugins/*/*.a"
>>> +
>>> FILES_${PN} += "${bindir}/vlc \
>>>     ${datadir}/applications \
>>>     ${datadir}/vlc/ \
>>> @@ -71,6 +73,7 @@ PACKAGECONFIG[id3tag] = "--enable-id3tag,--disable-id3tag,libid3tag"
>>> PACKAGECONFIG[a52] = "--enable-a52,--disable-a52,liba52"
>>> PACKAGECONFIG[mpeg2dec] = "--enable-mpeg2dec,--disable-mpeg2dec,mpeg2dec"
>>> PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack"
>>> +PACKAGECONFIG[live555] = "--enable-live555,--disable-live555,live555"
>>>
>>> do_configure() {
>>>     cp ${STAGING_DATADIR}/aclocal/libgcrypt.m4 ${S}/m4/ 
>>> @@ -81,6 +84,7 @@ do_configure() {
>>>     cp ${STAGING_DATADIR}/libtool/config.* ${S}/autotools/ || true
>>>     oe_runconf
>>>     rm config.log
>>> -    sed -i -e s:-L/usr/lib:-L${STAGING_LIBDIR}/:g vlc-config
>>> +    #sed -i -e s:-L/usr/lib:-L${STAGING_LIBDIR}/:g vlc-config
>>>     sed -i -e s:'$(MOC) $(DEFS) $(CPPFLAGS)':'$(MOC) $(DEFS)'\ -I${S}/include\ -DSYS_LINUX:g ${S}/modules/gui/qt4/Makefile
>>> +    sed -i -e s:'${top_builddir_slash}libtool':${TARGET_ARCH}-${DISTRO}-${TARGET_OS}-libtool:g doltlibtool
>>> }
>>> diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc_1.1.11.bb b/meta-multimedia/recipes-multimedia/vlc/vlc_1.1.11.bb
>>> deleted file mode 100644
>>> index 368db59..0000000
>>> --- a/meta-multimedia/recipes-multimedia/vlc/vlc_1.1.11.bb
>>> +++ /dev/null
>>> @@ -1,19 +0,0 @@
>>> -# This recipe packages vlc as a library as well, so qt4 dependencies
>>> -# can be avoided when only the library is installed.
>>> -
>>> -LIC_FILES_CHKSUM = "file://COPYING;md5=ed7e492ee44e70125a5d42e118354a13"
>>> -
>>> -require vlc.inc
>>> -
>>> -SRC_URI += "file://0001-V4L2-mark-horizontal-and-vertical-center-controls-ob.patch"
>>> -SRC_URI += "file://0002-fix-build-with-newer-freetype.patch"
>>> -SRC_URI += "file://0003-fix-build-with-newer-flac-1.3.0.patch"
>>> -
>>> -PR = "r4"
>>> -
>>> -# work around build failure
>>> -EXTRA_OECONF += " --enable-libxml2=no"
>>> -
>>> -SRC_URI[md5sum] = "a64846d6f21ea179ae8e8bfb6f9447fe"
>>> -SRC_URI[sha256sum] = "682560be08b82bedfaf30d8a611d80093c5883c1de72fcbcf05715b8e9f4e1cb"
>>> -
>>> diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc_2.1.2.bb b/meta-multimedia/recipes-multimedia/vlc/vlc_2.1.2.bb
>>> new file mode 100644
>>> index 0000000..a33f93f
>>> --- /dev/null
>>> +++ b/meta-multimedia/recipes-multimedia/vlc/vlc_2.1.2.bb
>>> @@ -0,0 +1,17 @@
>>> +# This recipe packages vlc as a library as well, so qt4 dependencies
>>> +# can be avoided when only the library is installed.
>>> +
>>> +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
>>> +
>>> +require vlc.inc
>>> +
>>> +# work around build failure
>>> +EXTRA_OECONF += " --enable-libxml2=no"
>>> +
>>> +SRC_URI += "file://0001-enable-subdir-objects.patch \
>>> +            file://0002-glibc-does-not-provide-strlcpy.patch \
>>> +"
>>> +
>>> +SRC_URI[md5sum] = "fb6787ad749aadcfaeab3471939b3426"
>>> +SRC_URI[sha256sum] = "219b812be1bc2eba40faa86419d0aa2c479a7380af8af216e8bfa22eb6fc8ec4"
>>> +
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel at lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> --Tim
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>




More information about the Openembedded-devel mailing list