From e3437e3d77b05b4d8d65f7ee55e8d7fe1fdf90d0 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Sat, 10 Mar 2018 01:56:31 +0000 Subject: [PATCH] extra/vlc: fixes --- ...embler-functions-compatible-with-non.patch | 65 +++++++++++++++++++ extra/vlc/PKGBUILD | 11 +++- 2 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 extra/vlc/0001-arm-make-the-assembler-functions-compatible-with-non.patch diff --git a/extra/vlc/0001-arm-make-the-assembler-functions-compatible-with-non.patch b/extra/vlc/0001-arm-make-the-assembler-functions-compatible-with-non.patch new file mode 100644 index 000000000..6ea45d5ab --- /dev/null +++ b/extra/vlc/0001-arm-make-the-assembler-functions-compatible-with-non.patch @@ -0,0 +1,65 @@ +From: Janne Grunau +Date: Mon, 19 Feb 2018 00:47:53 +0100 +Subject: arm: make the assembler functions compatible with non ELF/gas + platforms +MIME-Version: 1.0 +Content-Type: text/plain; charset="utf-8" +Content-Transfer-Encoding: 8bit + +Allow assembling arm neon functions for IOS and arm windows. + +Signed-off-by: Martin Storsjö +(cherry picked from commit ec4d9649d1c03fe8f578db38b41dccdf5e11b005) +Signed-off-by: Thomas Guillem + +[Add modules/arm_neon/asm.S missing from orig tarball.] +--- + modules/arm_neon/asm.S | 39 +++++++++++++++++++++++++++++++++++++++ + 1 file changed, 39 insertions(+) + create mode 100644 modules/arm_neon/asm.S + +diff --git a/modules/arm_neon/asm.S b/modules/arm_neon/asm.S +new file mode 100644 +index 0000000..728391e +--- /dev/null ++++ b/modules/arm_neon/asm.S +@@ -0,0 +1,39 @@ ++/* ++ * Copyright (c) 2018 Janne Grunau ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2.1 of the License, or (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this program; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ++ */ ++ ++#ifdef __APPLE__ ++# define EXTERN_ASM _ ++#else ++# define EXTERN_ASM ++#endif ++ ++#if defined(__APPLE__) || defined(_WIN32) ++# define HAVE_AS_ARCH_DIRECTIVE 0 ++# define HAVE_AS_FPU_DIRECTIVE 0 ++#else ++# define HAVE_AS_ARCH_DIRECTIVE 1 ++# define HAVE_AS_FPU_DIRECTIVE 1 ++#endif ++ ++.macro function name ++ .globl EXTERN_ASM\name ++#ifdef __ELF__ ++ .type EXTERN_ASM\name, %function ++#endif ++EXTERN_ASM\name: ++.endm diff --git a/extra/vlc/PKGBUILD b/extra/vlc/PKGBUILD index 673e7ef0c..5b3b8f1f5 100644 --- a/extra/vlc/PKGBUILD +++ b/extra/vlc/PKGBUILD @@ -5,6 +5,8 @@ # ALARM: Kevin Mihelich # - enable gles2 +# - add valgrind makedepend for v7/v8 (libdrm dep) +# - patch for missing ARM assembly file pkgname=vlc pkgver=3.0.1 @@ -29,6 +31,8 @@ makedepends=('gst-plugins-base-libs' 'live-media' 'libnotify' 'libbluray' 'libx265.so' 'libx264.so' 'zvbi' 'libass' 'libkate' 'libtiger' 'sdl_image' 'libpulse' 'alsa-lib' 'jack' 'libsamplerate' 'libsoxr' 'lirc' 'libgoom2' 'projectm' 'chromaprint') +makedepends_armv7h=('valgrind') +makedepends_aarch64=('valgrind') optdepends=('avahi: service discovery using bonjour protocol' 'gst-plugins-base-libs: for libgst plugins' 'libdvdcss: decoding encrypted DVDs' @@ -96,11 +100,13 @@ replaces=('vlc-plugin') options=('!emptydirs') source=(https://download.videolan.org/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.xz{,.asc} update-vlc-plugin-cache.hook - lua53_compat.patch) + lua53_compat.patch + 0001-arm-make-the-assembler-functions-compatible-with-non.patch) sha512sums=('f2ba7586e8fb8c04484e62809265ec998e875b1eff03262bbf463370277a318816cbb8d260901c774e59443393b16b040cb714019c80e051578008abbf91b13c' 'SKIP' '80357bae69e32b353d3784932d854e294906798e14faffb87c3383c3b6f6bdc57cbabb9c6e3f3c1adf0f8ddbb24153e72104c963cf1934970c2983c96daef9df' - '33cda373aa1fb3ee19a78748e2687f2b93c8662c9fda62ecd122a2e649df8edaceb54dda3991bc38c80737945a143a9e65baa2743a483bb737bb94cd590dc25f') + '33cda373aa1fb3ee19a78748e2687f2b93c8662c9fda62ecd122a2e649df8edaceb54dda3991bc38c80737945a143a9e65baa2743a483bb737bb94cd590dc25f' + '85ab0a39e989dc09402dbaa807ffb392ab9b66caa0689ac0352bb01897ee664eb238aa8b390a3b41c1259a650ea1b859dcacc3104679cc65b7f2d0f283539e54') validpgpkeys=('65F7C6B4206BD057A7EB73787180713BE58D1ADC') # VideoLAN Release Signing Key prepare() { @@ -110,6 +116,7 @@ prepare() { patch -Np1 < "${srcdir}/lua53_compat.patch" sed 's|whoami|echo builduser|g' -i configure sed 's|hostname -f|echo arch|g' -i configure + patch -p1 -i ../0001-arm-make-the-assembler-functions-compatible-with-non.patch } build() {