mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-03-19 00:21:40 +00:00
added community/xmbc for armv7h
This commit is contained in:
parent
b6c8e8bd37
commit
b76c75dbc5
4 changed files with 334 additions and 0 deletions
69
community/xbmc/ChangeLog
Normal file
69
community/xbmc/ChangeLog
Normal file
|
@ -0,0 +1,69 @@
|
|||
2010-04-10 BlackEagle <ike DOT devolder AT gmail DOT com>
|
||||
* 9.11-15 :
|
||||
Made it back compliant with FHS ( thx pierre for pointing that out )
|
||||
namcap checked and modified to fit its needs as far as it was possible
|
||||
|
||||
2009-03-07 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-10 :
|
||||
Try and fix some autoconf issues (thanks Gentoo ebuild).
|
||||
|
||||
2009-02-08 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-9 :
|
||||
Replace some libtool 'ltmain.sh' scripts with the one from libtool
|
||||
installed with Arch.
|
||||
Make sure XBMCTex isn't linked to OpenGL libraries or it will segfault
|
||||
on systems using the nvidia driver.
|
||||
|
||||
2009-01-30 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-8 :
|
||||
Fix some include's so that gcc 4.3.x is happy, shouldn't complain about
|
||||
undefined '::realloc' anymore.
|
||||
Remove Mac OS X specific files.
|
||||
|
||||
2009-01-25 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-7 :
|
||||
Moved libcdio, pmount, smbclient and unrar to optdepends.
|
||||
Removed unneeded dependency on sdl_gfx.
|
||||
Removed dependency on libpng as sdl_image depends on it.
|
||||
|
||||
2008-12-14 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-6 :
|
||||
Added libpng to dependency list.
|
||||
Added gawk to dependency list.
|
||||
Removed '--disable-mms' and '--enable-halmount' configure flags as they
|
||||
are not mentioned as supported in the configure script.
|
||||
|
||||
2008-12-06 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-5 :
|
||||
Added libmad to the dependency list.
|
||||
Streamripper 1.64.0+ does not include tre anymore, removed streamripper
|
||||
and added tre instead.
|
||||
Removed subversion from makedepends.
|
||||
|
||||
2008-12-06 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-4 :
|
||||
Fix permissions for some more scripts, ffmpeg/texi2doc.pl should not
|
||||
fail any longer.
|
||||
|
||||
2008-12-05 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-3 :
|
||||
Added lirc to the optdepends array.
|
||||
|
||||
2008-11-26 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-2 :
|
||||
Added install file which informs users that a display depth of at
|
||||
least 24-bit is required.
|
||||
|
||||
2008-11-17 [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
|
||||
* 8.10-1 :
|
||||
Initial package, based on previous work by Zeqadious.
|
115
community/xbmc/PKGBUILD
Normal file
115
community/xbmc/PKGBUILD
Normal file
|
@ -0,0 +1,115 @@
|
|||
# $Id: PKGBUILD 71695 2012-06-01 13:05:36Z dreisner $
|
||||
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
|
||||
# Contributor: Brad Fanella <bradfanella@archlinux.us>
|
||||
# Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com>
|
||||
# Contributor: Zeqadious <zeqadious.at.gmail.dot.com>
|
||||
# Contributor: BlackIkeEagle < ike DOT devolder AT gmail DOT com >
|
||||
|
||||
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
# - --disable-vdpau, remove from makedepends
|
||||
# - specify our C/CXXFLAGS in configure
|
||||
# - patch to remove very wrong XBMC code trying to assert its own ARM CFLAGS, MathUtils.h ARM fix
|
||||
# - commented TexturePacker install, doesn't appear to want to build
|
||||
|
||||
buildarch=4
|
||||
|
||||
_prefix=/usr
|
||||
|
||||
pkgname=xbmc
|
||||
pkgver=11.0
|
||||
pkgrel=4
|
||||
pkgdesc="A software media player and entertainment hub for digital media"
|
||||
arch=('i686' 'x86_64')
|
||||
url="http://xbmc.org"
|
||||
license=('GPL' 'custom')
|
||||
depends=('libpulse' 'hicolor-icon-theme' 'fribidi' 'lzo2' 'smbclient' 'libtiff' 'libva' 'libpng' 'libcdio' 'yajl' 'libmysqlclient' 'libjpeg-turbo' 'libsamplerate' 'glew' 'libssh' 'libmicrohttpd' 'libxrandr' 'sdl_mixer' 'sdl_image' 'python2' 'libass' 'libmpeg2' 'libmad' 'libmodplug' 'jasper' 'rtmpdump' 'unzip' 'mesa-demos' 'xorg-xdpyinfo' 'libbluray' 'libnfs' 'afpfs-ng' 'libshairport' 'avahi' 'bluez')
|
||||
makedepends=('boost' 'cmake' 'gperf' 'nasm' 'libxinerama' 'zip' 'libcec' 'udisks' 'upower' 'bluez')
|
||||
optdepends=(
|
||||
'libcec: support for Pulse-Eight USB-CEC adapter'
|
||||
'xvba-video: accelerated video playback for amd cards'
|
||||
'pulseaudio: pulseaudio support'
|
||||
'lirc: remote controller support'
|
||||
'udisks: automount external drives'
|
||||
'upower: used to trigger suspend functionality'
|
||||
'unrar: access compressed files without unpacking them'
|
||||
)
|
||||
install="${pkgname}.install"
|
||||
source=("http://mirrors.xbmc.org/releases/source/xbmc-$pkgver.tar.gz"
|
||||
"alarm.patch")
|
||||
sha256sums=('1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19'
|
||||
'6e4934e8d1bf82890679eca2fa78b3bc5942feedd9c012728a8d04c59be1651d')
|
||||
|
||||
build() {
|
||||
cd "${srcdir}/xbmc-$pkgver"
|
||||
|
||||
# fix retard code
|
||||
patch -p1 -i "${srcdir}/alarm.patch"
|
||||
|
||||
# fix lsb_release dependency
|
||||
sed -i -e 's:/usr/bin/lsb_release -d:cat /etc/arch-release:' xbmc/utils/SystemInfo.cpp
|
||||
|
||||
# Bootstrapping XBMC
|
||||
./bootstrap
|
||||
|
||||
# Configuring XBMC
|
||||
export PYTHON_VERSION=2 # external python v2
|
||||
./configure --prefix=$_prefix --exec-prefix=$_prefix \
|
||||
--disable-debug \
|
||||
--enable-optimizations \
|
||||
--enable-gl \
|
||||
--enable-sdl \
|
||||
--enable-vaapi \
|
||||
--disable-vdpau \
|
||||
--enable-xvba \
|
||||
--enable-joystick \
|
||||
--enable-xrandr \
|
||||
--enable-rsxs \
|
||||
--enable-projectm \
|
||||
--enable-x11 \
|
||||
--enable-pulse \
|
||||
--enable-rtmp \
|
||||
--enable-samba \
|
||||
--enable-nfs \
|
||||
--enable-afpclient \
|
||||
--enable-airplay \
|
||||
--enable-airtunes \
|
||||
--enable-ffmpeg-libvorbis \
|
||||
--enable-dvdcss \
|
||||
--disable-hal \
|
||||
--enable-avahi \
|
||||
--enable-webserver \
|
||||
--enable-optical-drive \
|
||||
--enable-libbluray \
|
||||
--enable-texturepacker \
|
||||
--enable-udev \
|
||||
--enable-libusb \
|
||||
--enable-libcec \
|
||||
--enable-external-libraries \
|
||||
--disable-external-ffmpeg \
|
||||
CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
|
||||
# Now (finally) build
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "${srcdir}/xbmc-$pkgver"
|
||||
# Running make install
|
||||
make DESTDIR="${pkgdir}" install
|
||||
|
||||
# run feh with python2
|
||||
sed -i -e 's/python/python2/g' ${pkgdir}${_prefix}/bin/xbmc
|
||||
|
||||
# lsb_release fix
|
||||
sed -i -e 's/which lsb_release &> \/dev\/null/\[ -f \/etc\/arch-release ]/g' "${pkgdir}${_prefix}/bin/xbmc"
|
||||
sed -i -e "s/lsb_release -a 2> \/dev\/null | sed -e 's\/\^\/ \/'/cat \/etc\/arch-release/g" "${pkgdir}${_prefix}/bin/xbmc"
|
||||
|
||||
# Tools
|
||||
install -D -m 0755 "${srcdir}/xbmc-$pkgver/xbmc-xrandr" "${pkgdir}${_prefix}/share/xbmc/xbmc-xrandr"
|
||||
#install -D -m 0755 "${srcdir}/xbmc-$pkgver/tools/TexturePacker/TexturePacker" "${pkgdir}${_prefix}/share/xbmc/"
|
||||
|
||||
# Licenses
|
||||
install -d -m 0755 "${pkgdir}${_prefix}/share/licenses/${pkgname}"
|
||||
for licensef in LICENSE.GPL copying.txt; do
|
||||
mv "${pkgdir}${_prefix}/share/doc/xbmc/${licensef}" "${pkgdir}${_prefix}/share/licenses/${pkgname}"
|
||||
done
|
||||
}
|
135
community/xbmc/alarm.patch
Normal file
135
community/xbmc/alarm.patch
Normal file
|
@ -0,0 +1,135 @@
|
|||
diff -urN a/configure b/configure
|
||||
--- a/configure 2012-03-24 13:06:47.000000000 -0600
|
||||
+++ b/configure 2012-06-08 14:37:25.504009179 -0600
|
||||
@@ -15984,38 +15984,9 @@
|
||||
LIBS="$LIBS -framework ApplicationServices"
|
||||
fi
|
||||
elif test "$use_arch" = "arm"; then
|
||||
- CFLAGS="$CFLAGS -mfloat-abi=softfp -mno-apcs-stack-check"
|
||||
- CXXFLAGS="$CXXFLAGS -mfloat-abi=softfp -mno-apcs-stack-check"
|
||||
- FFMPEG_EXTRACFLAGS="-mfloat-abi=softfp"
|
||||
- if test "$use_tegra" = "yes"; then
|
||||
- # Compile for ARMv7a architecture, need to test gcc for vfpv3-d16 support
|
||||
- SAVE_CFLAGS="$CFLAGS"
|
||||
- CFLAGS="-mfpu=vfpv3-d16"
|
||||
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
-/* end confdefs.h. */
|
||||
-int foo;
|
||||
-_ACEOF
|
||||
-if ac_fn_c_try_compile "$LINENO"; then :
|
||||
- CFLAGS="$SAVE_CFLAGS -Wno-psabi -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork"
|
||||
- CXXFLAGS="$CXXFLAGS -Wno-psabi -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork"
|
||||
- FFMPEG_EXTRACFLAGS="$FFMPEG_EXTRACFLAGS -mtune=cortex-a9 -mfpu=vfpv3-d16"
|
||||
- use_cpu=cortex-a9
|
||||
-else
|
||||
- CFLAGS="$SAVE_CFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"
|
||||
- CXXFLAGS="$CXXFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"
|
||||
- use_cpu=cortex-a8
|
||||
-fi
|
||||
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
- else
|
||||
- # Compile for ARMv7a architecture, CortexA8 cpu and check for enabled NEON coprocessor
|
||||
- CFLAGS="$CFLAGS -Wa,-march=armv7a -mcpu=cortex-a8"
|
||||
- CXXFLAGS="$CXXFLAGS -Wa,-march=armv7a -mcpu=cortex-a8"
|
||||
- if test "$use_neon" = "yes"; then
|
||||
- CFLAGS="$CFLAGS -mfpu=neon -mvectorize-with-neon-quad"
|
||||
- CXXFLAGS="$CXXFLAGS -mfpu=neon -mvectorize-with-neon-quad"
|
||||
- FFMPEG_EXTRACFLAGS="$FFMPEG_EXTRACFLAGS -mfpu=neon"
|
||||
- fi
|
||||
- fi
|
||||
+ CFLAGS="$CFLAGS"
|
||||
+ CXXFLAGS="$CXXFLAGS"
|
||||
+ FFMPEG_EXTRACFLAGS=""
|
||||
fi
|
||||
|
||||
# Checks for library functions.
|
||||
diff -urN a/configure.in b/configure.in
|
||||
--- a/configure.in 2012-03-21 16:07:50.000000000 -0600
|
||||
+++ b/configure.in 2012-06-08 14:46:52.687054825 -0600
|
||||
@@ -572,32 +572,9 @@
|
||||
LIBS="$LIBS -framework ApplicationServices"
|
||||
fi
|
||||
elif test "$use_arch" = "arm"; then
|
||||
- CFLAGS="$CFLAGS -mfloat-abi=softfp -mno-apcs-stack-check"
|
||||
- CXXFLAGS="$CXXFLAGS -mfloat-abi=softfp -mno-apcs-stack-check"
|
||||
- FFMPEG_EXTRACFLAGS="-mfloat-abi=softfp"
|
||||
- if test "$use_tegra" = "yes"; then
|
||||
- # Compile for ARMv7a architecture, need to test gcc for vfpv3-d16 support
|
||||
- SAVE_CFLAGS="$CFLAGS"
|
||||
- CFLAGS="-mfpu=vfpv3-d16"
|
||||
- AC_COMPILE_IFELSE(
|
||||
- [AC_LANG_SOURCE([int foo;])],
|
||||
- [ CFLAGS="$SAVE_CFLAGS -Wno-psabi -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork"
|
||||
- CXXFLAGS="$CXXFLAGS -Wno-psabi -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork"
|
||||
- FFMPEG_EXTRACFLAGS="$FFMPEG_EXTRACFLAGS -mtune=cortex-a9 -mfpu=vfpv3-d16"
|
||||
- use_cpu=cortex-a9],
|
||||
- [ CFLAGS="$SAVE_CFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"
|
||||
- CXXFLAGS="$CXXFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"
|
||||
- use_cpu=cortex-a8])
|
||||
- else
|
||||
- # Compile for ARMv7a architecture, CortexA8 cpu and check for enabled NEON coprocessor
|
||||
- CFLAGS="$CFLAGS -Wa,-march=armv7a -mcpu=cortex-a8"
|
||||
- CXXFLAGS="$CXXFLAGS -Wa,-march=armv7a -mcpu=cortex-a8"
|
||||
- if test "$use_neon" = "yes"; then
|
||||
- CFLAGS="$CFLAGS -mfpu=neon -mvectorize-with-neon-quad"
|
||||
- CXXFLAGS="$CXXFLAGS -mfpu=neon -mvectorize-with-neon-quad"
|
||||
- FFMPEG_EXTRACFLAGS="$FFMPEG_EXTRACFLAGS -mfpu=neon"
|
||||
- fi
|
||||
- fi
|
||||
+ CFLAGS="$CFLAGS"
|
||||
+ CXXFLAGS="$CXXFLAGS"
|
||||
+ FFMPEG_EXTRACFLAGS=""
|
||||
fi
|
||||
|
||||
# Checks for library functions.
|
||||
diff -urN a/xbmc/utils/MathUtils.h b/xbmc/utils/MathUtils.h
|
||||
--- a/xbmc/utils/MathUtils.h 2012-03-21 16:07:50.000000000 -0600
|
||||
+++ b/xbmc/utils/MathUtils.h 2012-06-08 15:43:59.044891727 -0600
|
||||
@@ -63,46 +63,8 @@
|
||||
sar i, 1
|
||||
}
|
||||
#else
|
||||
-#if defined(__powerpc__) || defined(__ppc__)
|
||||
+#if defined(__powerpc__) || defined(__ppc__) || defined(__arm__)
|
||||
i = floor(x + round_to_nearest);
|
||||
-#elif defined(__arm__)
|
||||
- // From 'ARM®v7-M Architecture Reference Manual' page A7-569:
|
||||
- // "The floating-point to integer operation (vcvt) [normally] uses the Round towards Zero rounding mode"
|
||||
- // Because of this...we must use some less-than-straightforward logic to perform this operation without
|
||||
- // changing the rounding mode flags
|
||||
-
|
||||
- /* The assembly below implements the following logic:
|
||||
- if (x < 0)
|
||||
- inc = -0.5f
|
||||
- else
|
||||
- inc = 0.5f
|
||||
- int_val = trunc(x+inc);
|
||||
- err = x - int_val;
|
||||
- if (err == 0.5f)
|
||||
- int_val++;
|
||||
- return int_val;
|
||||
- */
|
||||
-
|
||||
- __asm__ __volatile__ (
|
||||
- "vmov.F64 d1,%[rnd_val] \n\t" // Copy round_to_nearest into a working register (d1 = 0.5)
|
||||
- "fcmpezd %P[value] \n\t" // Check value against zero (value == 0?)
|
||||
- "fmstat \n\t" // Copy the floating-point status flags into the general-purpose status flags
|
||||
- "it mi \n\t"
|
||||
- "vnegmi.F64 d1, d1 \n\t" // if N-flag is set, negate round_to_nearest (if (value < 0) d1 = -1 * d1)
|
||||
- "vadd.F64 d1,%P[value],d1 \n\t" // Add round_to_nearest to value, store result in working register (d1 += value)
|
||||
- "vcvt.S32.F64 s3,d1 \n\t" // Truncate(round towards zero) (s3 = (int)d1)
|
||||
- "vmov %[result],s3 \n\t" // Store the integer result in a general-purpose register (result = s3)
|
||||
- "vcvt.F64.S32 d1,s3 \n\t" // Convert back to floating-point (d1 = (double)s3)
|
||||
- "vsub.F64 d1,%P[value],d1 \n\t" // Calculate the error (d1 = value - d1)
|
||||
- "vmov.F64 d2,%[rnd_val] \n\t" // d2 = 0.5;
|
||||
- "fcmped d1, d2 \n\t" // (d1 == 0.5?)
|
||||
- "fmstat \n\t" // Copy the floating-point status flags into the general-purpose status flags
|
||||
- "it eq \n\t"
|
||||
- "addeq %[result],#1 \n\t" // (if (d1 == d2) result++;)
|
||||
- : [result] "=r"(i) // Outputs
|
||||
- : [rnd_val] "Dv" (round_to_nearest), [value] "w"(x) // Inputs
|
||||
- : "d1", "d2", "s3" // Clobbers
|
||||
- );
|
||||
#else
|
||||
__asm__ __volatile__ (
|
||||
"fadd %%st\n\t"
|
15
community/xbmc/xbmc.install
Normal file
15
community/xbmc/xbmc.install
Normal file
|
@ -0,0 +1,15 @@
|
|||
post_install() {
|
||||
[[ $(type -p gtk-update-icon-cache) ]] && /usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor
|
||||
[[ $(type -p update-desktop-database) ]] && /usr/bin/update-desktop-database -q usr/share/applications
|
||||
/bin/true
|
||||
}
|
||||
|
||||
post_upgrade() {
|
||||
post_install $1
|
||||
/bin/true
|
||||
}
|
||||
|
||||
post_remove() {
|
||||
post_install $1
|
||||
/bin/true
|
||||
}
|
Loading…
Reference in a new issue