diff --git a/alarm/marvell-ipp/PKGBUILD b/alarm/marvell-ipp/PKGBUILD new file mode 100644 index 000000000..b3363b022 --- /dev/null +++ b/alarm/marvell-ipp/PKGBUILD @@ -0,0 +1,51 @@ + +# Armada 510/Dove Marvell IPP headers and CODECs. + +buildarch=4 + +pkgname="marvell-ipp" +pkgdesc="Marvell IPP headers and CODECs." +pkgver=0.2.1 +pkgrel=2 +arch=("armv7h") +url="http://www.marvell.com/" +license=("custom:MARVELL Software") +source=("http://sources.openbricks.org/devel/marvell-ipp_0.2.1-0ubuntu1~ppa10.tar.gz") +md5sums=("87fb47c4ce1236eba5730e2c9b7500b0") +depends=("marvell-libvmeta") + +MAKEFLAGS=-j1 + +build() { + cd "${srcdir}/marvell-ipp/" + sed -r \ + -e "s|^(PATH_GNU_BIN=).+|\1/usr/bin|" \ + -e "s|^(TOOLCHAIN_PREFIX=).+|\1${CHOST}|" \ + -e "s|^(CFLAGS=).*|\1 -mcpu=cortex-a9|" \ + -e "s|^(AR=).+|\1/usr/bin/ar|" \ + -i example/Rules.make + cd example/misc/build/wmmx2_linux/ + make -f makefile_miscGen +} + +package() { + cd "${srcdir}/marvell-ipp/" + + install -Dm644 bin/License.txt \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + install -Dm644 etc/99-uio.rules \ + "${pkgdir}/usr/lib/udev/rules.d/99-uio.rules" + install -d "${pkgdir}/usr/lib" "${pkgdir}/usr/include/marvell-ipp" + install -m644 include/*.h "${pkgdir}/usr/include/marvell-ipp" + find bin lib -not -type d \( -name "*.so" -o -name "*.a" \) \ + -not -path "*libcodecvmetadec.a" \ + -not -path "*libvmetahal.a" \ + -not -path "*libvmetahal.so" \ + -not -path "*libcodecvmetadec.so" \ + -not -path "bin/libmiscgen.so" \ + -exec install -m644 "{}" "${pkgdir}/usr/lib/" \; + + install -d "${pkgdir}/usr/include/OpenMAX/IL/" + install -m644 openmax/include/* "${pkgdir}/usr/include/OpenMAX/IL/" + install -m644 openmax/*.a "${pkgdir}/usr/lib/" +} diff --git a/alarm/xbmc-cubox-git/PKGBUILD b/alarm/xbmc-cubox-git/PKGBUILD new file mode 100644 index 000000000..af2132c51 --- /dev/null +++ b/alarm/xbmc-cubox-git/PKGBUILD @@ -0,0 +1,191 @@ + +buildarch=4 + +pkgname="xbmc-cubox-git" +pkgver=20121106 +pkgrel=1 +pkgdesc="A software media player and entertainment hub for digital media" +arch=("armv7h") +url="http://xbmc.org" +license=("GPL" "LGPL") +depends=("faac" "faad2" "jasper" "hicolor-icon-theme" "libass" "libcdio" \ + "libgl" "libmad" "libmicrohttpd" "libplist" "libmodplug" "libmpeg2" \ + "libmysqlclient" "libsamplerate" "libxtst" "lzo2" "python2" \ + "sdl_image>=1.2.10" "sdl_mixer" "smbclient" "unzip" "wavpack" "mesa-demos" \ + "xorg-xdpyinfo" "yajl" "glew" "tinyxml" "marvell-libgfx" "marvell-ipp" \ + "avahi" "bluez" "libssh" "ffmpeg" "taglib>=1.8" "libnfs" "libdvdcss" \ + "libbluray" "libdvdread" "libcec-cubox") +makedepends=("boost" "cmake" "git" "gperf" "nasm" "zip" "swig" "java-runtime") +optdepends=("pulseaudio: pulseaudio support" \ + "lirc: remote controller support" \ + "udisks: automount external drives" \ + "upower: used to trigger suspend functionality" \ + "unrar: access compressed files without unpacking them" \ + "xorg-xinit: autostart xbmc") +conflict=("xbmc" "xbmc-git") +provides=("xbmc" "xbmc-git") +replaces=("marvell-xbmc-git") +source=("https://dl.dropbox.com/u/38673799/XbmcCuBoxPatches-Rev10.tar.xz" \ + "http://alunamation.com/archlinux/arm/AdditionalXbmcCuBoxPatches-Rev10.1.tar.xz" \ + "xbmc.service" \ + "xbmc.install" \ + "https://archvdr.svn.sourceforge.net/svnroot/archvdr/trunk/archvdr/xbmc-git/pulse_fix.patch") +md5sums=("55813f68e1ab05405451f9791e59e68b" \ + "966deb0b02155153d72445b461b3e952" \ + "f5d227faaac16d08035e0dc849649cb5" \ + "46db2069b75b23809bd7c760650618dd" \ + "b09721b962e591abb3f4b39a641ded15") +install="xbmc.install" + +_gitroot="git://github.com/xbmc/xbmc.git" +_gitname="xbmc" + +_prefix=/usr +_patches=( + "Xbmc-git-Python-2.7-2.patch" \ + "Lircmap_xml.patch" \ + "Xbmc-git-force-vdpau.patch" \ + "Xbmc-git-force-vdpau-2.patch" \ + "Xbmc-git-UDisksProvider-iso9660.patch" \ + "Xbmc-git-libmpeg2-vdpau-vertical-green-bars-fix.patch" \ + "01-Xbmc-Add-Marvell-Dove.patch" \ + "02.1-Xbmc-MathUtils_h-TARGET_MARVELL_DOVE-20120809.patch" \ + "03-Xbmc-Add-VMETA-Codec-20120927.patch" \ + "04-Xbmc-Add-Dove-Overlay-20120912.patch" \ + "05-Xbmc-VMeta-Fixups.patch" \ + "06-Xbmc-Configure-platform-Marvell-Dove-20120925.patch" \ + "07-Xbmc-libsquish-arm-20120925.patch" \ +# "09-Xbmc-WinSystemGLES_cpp.patch" \ + "10-Xbmc-ManageDisplayDove.patch" \ + "11-Xbmc-Marvell-use-Pulse.patch" \ + "12-Xbmc-Marvell-Dove-cortex-a9.patch" \ + "13-Xbmc-Marvell-Dove-force-iwmmxt.patch" \ + "14-Xbmc-Marvell-Dove-force-iwmmxt-2.patch" \ + "15-Xbmc-Marvell-Dove-enable-armv5te.patch" \ + "Xbmc-git-PulseAudio-Updates-20120926.patch" \ + "41-Xbmc-VMETA-Updates-2.patch" \ + "36-Xbmc-VMETA-use-ffmpeg-for-thumbs.patch" \ + "Xbmc-git-CJobWorker-THREAD_PRIORITY_LOWEST.patch" \ + "Xbmc-git-pthread-SetThreadInfo-20120806.patch" \ + "Xbmc-git-linux-Thread-Name-20120806.patch" \ + "xbmc-frodo-433f681-811.12-smoother-page-flip.patch" \ + "xbmc-frodo-433f681-811.13-change-email-address.patch" \ + "Xbmc-git-JobManager-Force-exit-after-2.patch" \ + "Xbmc-git-AnnouncementManager-Locks.patch" \ + "34-Xbmc-Dove-Gpu-Backoff-20120818.patch" \ + "38-Xbmc-RenderManager.patch" \ + "Xbmc-projectM-selectPreset-avoid-abort.patch" \ + "Xbmc-git-Thread-StopThread-20120809.patch" \ + "Xbmc-git-DVDPlayer-StopThread.patch" \ + "Xbmc-git-CDVDAudio-Drain.patch" \ + "Xbmc-git-VideoReferenceClock-NvidiaWrapper.patch" \ + "Xbmc-git-WinSystemX11-SDL_CreateRGBSurfaceFrom-20120817.patch" \ + "Xbmc-git-WinSystemX11-SDL_CreateRGBSurfaceFrom-no-Dove.patch" \ + "XbmcPvr-PvrManager-StopUpdateThread.patch" \ + "Xbmc-git-BandwidthRequester-20120723.patch" \ + "Xbmc-git-enable-systemd-power-management.patch" \ + "Xbmc-git-enable-systemd-power-management-2.patch" \ + # "Xbmc-git-arm-linux.patch" \ + # "Xbmc-git-VMETA-TimeStamp.patch" \ +# "Xbmc-git-VMETA-No-Prebuf.patch" \ + "Xbmc-git-LinuxTimezone-systemd.patch" \ + "Xbmc-git-DoveOverlay-20120806.patch" \ + "Xbmc-git-Event-Constructor.patch" \ + "Xbmc-git-EventGroup-Constructor.patch" \ + "Xbmc-git-Thread-Constructor.patch" \ + "Xbmc-git-FileCache-Constructor.patch" \ + "Xbmc-git-FileCache-Constructor-2.patch" \ + "Xbmc-git-Database-Constructor.patch" \ + "Xbmc-git-Event-groupListMutex-SharedSection.patch" \ + "Xbmc-git-RecursiveMutex.patch" \ + "Xbmc-git-PrintStackSize.patch" \ +# "Xbmc-git-no-WinEGLPlatformAndroid-20120926.patch" \ + "Xbmc-git-TexturePacker-Makefile.patch" \ + "Xbmc-git-dove-dont-specify-audio.patch" \ + "Xbmc-git-Repository-checksum-segfault-20120927.patch" \ + "Xbmc-git-DVDStreamInfo-cap-channels-at-8.patch" \ + "Xbmc-git-DVDAudioCodecFFmpeg-Constructor-20120906.patch" \ + "Xbmc-git-SDL_PollEvent.patch" \ + # "Xbmc-git-no-error-without-java.patch" \ + # "08-Xbmc-WinbindingEGL_cpp.patch" \ + # "XbmcPvr-git-debug-tvheadend.patch" \ + # "XbmcPvr-git-HTSPDemux-GetSignalStatus-20120906.patch" \ + # "XbmcPvr-git-pvr-addons-DESTDIR.patch" \ + # "37-Xbmc-debug-BitstreamConverter.patch" \ +) + +build() { + msg "Connecting to GIT server..." + if [ -d $_gitname ]; then + cd "${_gitname}" + git clean -dxf + git reset --hard + git pull origin + else + git clone --depth 1 "${_gitroot}" "${_gitname}" + cd "${_gitname}" + fi + msg2 "checkout done or server timeout" + + # fix lsb_release dependency + sed -i -e "s:/usr/bin/lsb_release -d:cat /etc/arch-release:" xbmc/utils/SystemInfo.cpp + + msg "Applying patchs" + for _patch in ${_patches[@]}; do + patch -p1 -i "${srcdir}/XbmcCuBoxPatches-Rev10/${_patch}" + done + + for _patch in "${srcdir}"/AdditionalXbmcCuBoxPatches-Rev10.1/* "${srcdir}/pulse_fix.patch"; do + patch -p1 -i "${_patch}" + done + + sed -i -e "s/softfp/hard/g" configure.in + + msg "Bootstrapping" + ./bootstrap + + msg "Configuring" + export PYTHON_VERSION=2 + + ./configure --prefix="${_prefix}" \ + --with-platform=marvell-dove \ + --enable-external-libraries \ + --enable-gles \ + --enable-pulse \ + --disable-debug \ + --disable-vaapi \ + --disable-hal + + msg "make" + make +} + +package() { + cd "${srcdir}/${_gitname}" + # 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}/${_gitname}/xbmc-xrandr" "${pkgdir}/${_prefix}/share/xbmc/xbmc-xrandr" + install -D -m 0755 "${srcdir}/${_gitname}/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 + + # systemd stuff + install -Dm0644 "${srcdir}/xbmc.service" \ + "${pkgdir}/usr/lib/systemd/system/xbmc.service" +} + +# vim:set noet: diff --git a/alarm/xbmc-cubox-git/xbmc.install b/alarm/xbmc-cubox-git/xbmc.install new file mode 100644 index 000000000..9e9d4f4b7 --- /dev/null +++ b/alarm/xbmc-cubox-git/xbmc.install @@ -0,0 +1,16 @@ +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 + getent group xbmc > /dev/null || groupadd xbmc + getent passwd xbmc > /dev/null || useradd -d /var/empty -g xbmc xbmc + usermod -a -G xbmc,audio,video,power,network,optical,storage,disk xbmc +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 + echo "You may want to remove xbmc user and group" +} diff --git a/alarm/xbmc-cubox-git/xbmc.service b/alarm/xbmc-cubox-git/xbmc.service new file mode 100644 index 000000000..b66e35c80 --- /dev/null +++ b/alarm/xbmc-cubox-git/xbmc.service @@ -0,0 +1,13 @@ +[Unit] +Description = Starts instance of XBMC using xinit +After = remote-fs.target + +[Service] +User = xbmc +Group = xbmc +Type = simple +ExecStart = /usr/bin/xinit /usr/bin/xbmc-standalone -- :0 +Restart = on-failure + +[Install] +WantedBy = multi-user.target diff --git a/core/linux-cubox/PKGBUILD b/core/linux-cubox/PKGBUILD index 76e7e1deb..d6a9951bd 100644 --- a/core/linux-cubox/PKGBUILD +++ b/core/linux-cubox/PKGBUILD @@ -8,16 +8,19 @@ pkgname=('linux-cubox' 'linux-headers-cubox') _kernelname=${pkgname#linux} _basekernel=3.5 pkgver=${_basekernel}.7 -pkgrel=3 +pkgrel=4 +cryptover=1.4 arch=('arm') url="http://www.kernel.org/" license=('GPL2') makedepends=('xmlto' 'docbook-xsl' 'uboot-mkimage' 'git' 'python2') options=('!strip') source=('config' - 'change-default-console-loglevel.patch') -md5sums=('004ab6ff32c7ada65f33d241e8d5b515' - '9d3c56a4b999c8bfbd4018089a62f662') + 'change-default-console-loglevel.patch' + "http://download.gna.org/cryptodev-linux/cryptodev-linux-${cryptover}.tar.gz") +md5sums=('64f271dbdde04963c91092c88bce50e8' + '9d3c56a4b999c8bfbd4018089a62f662' + '7b0ac1c0a88d8fbe7316db02f21666e6') __gitroot="git://github.com/vDorst/linux.git" __gitname="linux" @@ -75,13 +78,17 @@ build() { # build! make ${MAKEFLAGS} modules uImage + + # build cryptodev module + cd "${srcdir}/cryptodev-linux-${cryptover}" + make KERNEL_DIR="${srcdir}/${__gitname}" } package_linux-cubox() { pkgdesc="The Linux Kernel and modules for the Cubox" depends=('coreutils' 'linux-firmware' 'module-init-tools>=3.16' 'mkinitcpio>=0.7') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26-cubox' 'linux=${pkgver}') + provides=('kernel26-cubox' 'linux=${pkgver}' 'cryptodev_friendly') conflicts=('kernel26' 'linux') replaces=('kernel26') backup=("etc/mkinitcpio.d/${pkgname}.preset") @@ -116,6 +123,12 @@ package_linux-cubox() { mkdir -p "${pkgdir}/lib/modules/extramodules-${pkgver}-${_kernelname:-ARCH}" echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${pkgver}-${_kernelname:-ARCH}/version" + # install cryptodev module + cd "${srcdir}/cryptodev-linux-${cryptover}" + make -C "${srcdir}/${__gitname}" INSTALL_MOD_PATH="${pkgdir}" SUBDIRS=`pwd` modules_install + + cd "${srcdir}/${__gitname}" + # Now we call depmod... depmod -b "$pkgdir" -F System.map "$_kernver" @@ -236,6 +249,10 @@ package_linux-headers-cubox() { mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners" cp drivers/media/common/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/" + # install cryptodev header + install -Dm644 "${srcdir}/cryptodev-linux-${cryptover}/crypto/cryptodev.h" \ + "${pkgdir}/usr/src/linux-${_kernver}/crypto/cryptodev.h" + # copy in Kconfig files for i in `find . -name "Kconfig*"`; do mkdir -p "${pkgdir}"/usr/src/linux-${_kernver}/`echo ${i} | sed 's|/Kconfig.*||'` diff --git a/core/openssl-cryptodev/PKGBUILD b/core/openssl-cryptodev/PKGBUILD index 76d66da7e..ef0377372 100644 --- a/core/openssl-cryptodev/PKGBUILD +++ b/core/openssl-cryptodev/PKGBUILD @@ -16,11 +16,15 @@ pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}} #pkgver=$_ver pkgrel=1 pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security' -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'armv7h') url='https://www.openssl.org' license=('custom:BSD') depends=('perl' 'cryptodev_friendly') -makedepends=('linux-headers') +if [ "${CARCH}" == 'armv7h' ]; then + makedepends=('linux-headers-cubox') +else + makedepends=('linux-headers') +fi optdepends=('ca-certificates') options=('!makeflags') backup=('etc/ssl/openssl.cnf') @@ -31,7 +35,7 @@ source=("https://www.openssl.org/source/${_pkgname}-${_ver}.tar.gz" 'no-rpath.patch' 'ca-dir.patch') md5sums=('ae412727c8c15b67880aef7bd2999b2e' - 'a3d90bc42253def61cd1c4237f1ce5f7' + '5bbc0655bda2af95bc8eb568963ce8ba' 'dc78d3d06baffc16217519242ce92478' '3bf51be3a1bbd262be46dc619f92aa90') @@ -46,6 +50,12 @@ build() { openssltarget='linux-armv4' fi + if [ "${CARCH}" == 'armv7h' ]; then + _kernel_release="$(pacman -Q linux-headers-cubox | grep -Eo "[^\ ]+$")-ARCH+" + else + _kernel_release="$(uname -r)" + fi + # avoid conflicts with other man pages # see http://www.linuxfromscratch.org/patches/downloads/openssl/ patch -p1 -i $srcdir/fix-manpages.patch @@ -58,7 +68,7 @@ build() { -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS -DHASH_MAX_LEN=64 \ shared threads zlib enable-md2 \ "${openssltarget}" \ - -Wa,--noexecstack "${CFLAGS} -I/usr/src/linux-`uname -r`" \ + -Wa,--noexecstack "${CFLAGS} -I/usr/src/linux-${_kernel_release}" \ -DOPENSSL_NO_TLS1_2_CLIENT make depend