using theirs

This commit is contained in:
moonman 2013-01-14 17:48:35 -07:00
commit efd8e60242
158 changed files with 7489 additions and 3889 deletions

View file

@ -1,4 +1,4 @@
# pkgbuilds.git - README - 11/28/2012
# pkgbuilds.git - README - 2012-12-03
This repository hosts
[PKGBUILDs](https://wiki.archlinux.org/index.php/PKGBUILD) that have been
modified from the upstream [Arch Linux](http://archlinux.org) release in order
@ -37,7 +37,7 @@ you would on Arch, and we have included Yaourt to compile and install directly
from AUR (`yaourt -AS packagename`).
### alarm
Contains packages we have created or that have been submitted to us, to enable
Contains packages we have created or have been submitted to us, to enable
functionality on ARM systems in use by the community. These are our own or
have changed significantly enough from upstream or AUR to no longer qualify as
being in those respective locations here.

View file

@ -0,0 +1,99 @@
# Maintainer: Jason Plum <jplum@archlinuxarm.org>
buildarch=16 # only rbp
pkgname=ioquake3-rbp
pkgver=20130111
pkgrel=1
pkgdesc='ioquake3 for Raspberry Pi'
arch=('armv6h')
url='http://ioquake3.org/'
license=('GPLv2')
makedepends=('raspberrypi-firmware' 'sdl' 'git')
depends=('sdl')
conflicts=('quake3' 'quake3-icculus-svn' 'quake3-svn' 'ioquake3-svn')
provides=('quake3')
replaces=('quake3')
install=ioquake3-rbp.install
source=("ioquake3-build.sh.patch"
'pointrelease::http://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b-3.x86.run'
'quake3.desktop'
'quake3.launcher'
'quake3ded.launcher'
)
md5sums=('c403c68e59caaaefcccd8ef765528f7c'
'c71fdddccb20e8fc393d846e9c61d685'
'9eca51e2b3ee3e0100944cba436a2a4c'
'eb58a71452a6f1940baa7f3dc9d25c26'
'eb58a71452a6f1940baa7f3dc9d25c26'
)
_gitroot='git://github.com/raspberrypi/quake3.git'
_gitname='master'
build() {
cd "${srcdr}"
# clone, depth 1
git clone $_gitroot $pkgname --depth=1
cd "${srcdir}/${pkgname}"
# patch the build.sh
patch build.sh < "${srcdir}/ioquake3-build.sh.patch"
# Extract Patch Files
chmod +x ${srcdir}/pointrelease
${srcdir}/pointrelease --tar xf
./build.sh
}
package() {
cd "${srcdir}/${pkgname}"
# make the target ..
mkdir -p "${pkgdir}/opt/${pkgname}/baseq3"
mkdir -p "${pkgdir}/opt/${pkgname}/missionpack"
# Copy the executables
install -m 755 ${srcdir}/${pkgname}/build/release-linux-arm/*.arm \
"${pkgdir}/opt/${pkgname}/"
install -D -m 755 ${srcdir}/${pkgname}/build/release-linux-arm/baseq3/*.so \
${pkgdir}/opt/${pkgname}/baseq3/
install -D -m 755 ${srcdir}/${pkgname}/build/release-linux-arm/missionpack/*.so \
${pkgdir}/opt/${pkgname}/missionpack/
# modify launcher scripts
/bin/sed -i "s:IOQ3_BINARY:ioquake3.arm:" $srcdir/quake3.launcher
/bin/sed -i "s:IOQ3_BINARY:ioq3ded.arm:" $srcdir/quake3ded.launcher
/bin/sed -i "s:IOQ3_PATH:ioquake3-rbp:" $srcdir/quake3.launcher
/bin/sed -i "s:IOQ3_PATH:ioquake3-rbp:" $srcdir/quake3ded.launcher
# Install Quake 3 Patch Files
install -m 644 ${srcdir}/${pkgname}/baseq3/*.pk3 \
${pkgdir}/opt/${pkgname}/baseq3/
# Install Quake 3 Expansion Pack Patch Files
install -m 644 ${srcdir}/${pkgname}/missionpack/*.pk3 \
${pkgdir}/opt/${pkgname}/missionpack/
# Install Launcher (Client)
install -D -m 755 ${srcdir}/quake3.launcher \
${pkgdir}/usr/bin/quake3
# Install Launcher (Server)
install -D -m 755 ${srcdir}/quake3ded.launcher \
${pkgdir}/usr/bin/quake3ded
# Install Desktop File
install -D -m 644 ${srcdir}/quake3.desktop \
${pkgdir}/usr/share/applications/quake3.desktop
# Install Icon File
install -D -m 644 ${srcdir}/${pkgname}/misc/quake3.png \
${pkgdir}/usr/share/pixmaps/quake3.png
}
# vim:set ts=2 sw=2 et:

View file

@ -0,0 +1,25 @@
--- build.sh.org 2013-01-11 16:52:50.064204113 +0000
+++ build.sh 2013-01-11 18:14:24.595441089 +0000
@@ -5,18 +5,18 @@
# directory containing the ARM shared libraries (rootfs, lib/ of SD card)
# specifically libEGL.so and libGLESv2.so
-ARM_LIBS=/opt/bcm-rootfs/opt/vc/lib
+ARM_LIBS=/opt/vc/lib
SDL_LIB=lib
# directory containing baseq3/ containing .pk3 files - baseq3 on CD
-BASEQ3_DIR="/home/${USER}/"
+BASEQ3_DIR="/opt/ioquake3-rbp/"
# directory to find khronos linux make files (with include/ containing
# headers! Make needs them.)
-INCLUDES="-I/opt/bcm-rootfs/opt/vc/include -I/opt/bcm-rootfs/opt/vc/include/interface/vcos/pthreads"
+INCLUDES="-I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads"
# prefix of arm cross compiler installed
-CROSS_COMPILE=bcm2708-
+CROSS_COMPILE=
# clean
if [ $# -ge 1 ] && [ $1 = clean ]; then

View file

@ -0,0 +1,34 @@
post_install() {
echo ">>>"
echo ">>>>To play Q3 with the Retail Version:"
echo ">>> Move the pak0.pk3 file from the original game CD to"
echo ">>> /opt/ioquake3-rbp/baseq3/"
echo ">>>"
echo ">>>>To play Q3 with the Demo Version:"
echo ">>> You need the demoq3/pak0.pk3 from the demo installerto "
echo ">>> /opt/ioquake3-rbp/baseq3/"
echo ">>>"
echo ">>>>To play Q3 Team Arena:"
echo ">>> Move the pak0.pk3 file from the Team Arena game CD to"
echo ">>> /opt/ioquake3-rbp/baseq3/"
echo ">>>"
echo ">>>>When you have the .pk3 file(s) installed, run the game:"
echo ">>> quake3"
echo ">>>"
echo ">>>Psst: curl https://dl.dropbox.com/u/1816557/Q3%20Demo%20Paks.zip"
}
post_upgrade() {
post_install $1
}
pre_remove() {
/bin/true
}
op=$1
shift
$op $*

View file

@ -0,0 +1,12 @@
[Desktop Entry]
Encoding=UTF-8
Name=Quake III Arena
GenericName=Quake III
Comment=ioQuake3 - Quake III Open Source Engine
Exec=/usr/bin/quake3
Icon=/usr/share/pixmaps/quake3.png
StartupNotify=true
Terminal=false
Type=Application
Categories=Qt;KDE;GNOME;Application;Game;

View file

@ -0,0 +1,5 @@
#!/bin/bash
cd "/opt/IOQ3_PATH"
exec ./IOQ3_BINARY $*

View file

@ -0,0 +1,5 @@
#!/bin/bash
cd "/opt/IOQ3_PATH"
exec ./IOQ3_BINARY $*

30
alarm/libbcm2835/PKGBUILD Normal file
View file

@ -0,0 +1,30 @@
# Maintainer: <nico.nell@gmail.com>
buildarch=16
_pkgbasename=bcm2835
pkgname=libbcm2835
pkgver=1.15
pkgrel=1
pkgdesc="C library for Broadcom BCM 2835 as used in Raspberry Pi"
url="http://www.open.com.au/mikem/bcm2835/"
arch=('armv6h')
license=('GPL')
depends=()
makedepends=()
conflicts=()
replaces=()
backup=()
source=(http://www.open.com.au/mikem/${_pkgbasename}/${_pkgbasename}-${pkgver}.tar.gz)
md5sums=('49bd399cf085111fd894635ccea060bc')
build() {
cd ${srcdir}/${_pkgbasename}-${pkgver}
./configure --prefix=/usr
make
}
package() {
cd ${srcdir}/${_pkgbasename}-${pkgver}
make DESTDIR="${pkgdir}" install
}

View file

@ -1,34 +0,0 @@
From 71fa379cb561f66d60e3507cd823ce3b438b4454 Mon Sep 17 00:00:00 2001
From: warped-rudi <r.ihle@s-t.de>
Date: Fri, 19 Oct 2012 07:56:19 +0200
Subject: [PATCH] Added adapter ID interface
---
src/lib/adapter/CuBox/NxpCECAdapterCommunication.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/lib/adapter/CuBox/NxpCECAdapterCommunication.h b/src/lib/adapter/CuBox/NxpCECAdapterCommunication.h
index 066c032..42e611a 100644
--- a/src/lib/adapter/CuBox/NxpCECAdapterCommunication.h
+++ b/src/lib/adapter/CuBox/NxpCECAdapterCommunication.h
@@ -39,6 +39,8 @@
#include "lib/adapter/AdapterCommunication.h"
#include <map>
+#define NXP_ADAPTER_VID 0x0471
+#define NXP_ADAPTER_PID 0x1001
namespace PLATFORM
{
@@ -84,6 +86,8 @@ namespace CEC
cec_vendor_id GetVendorId(void);
bool SupportsSourceLogicalAddress(const cec_logical_address address) { return address > CECDEVICE_TV && address <= CECDEVICE_BROADCAST; }
cec_adapter_type GetAdapterType(void) { return ADAPTERTYPE_TDA995x; }
+ uint16_t GetAdapterVendorId(void) const { return NXP_ADAPTER_VID; }
+ uint16_t GetAdapterProductId(void) const { return NXP_ADAPTER_PID; }
void HandleLogicalAddressLost(cec_logical_address oldAddress);
///}
--
1.7.12

View file

@ -3,7 +3,7 @@
buildarch=4
pkgname="libcec-cubox"
pkgver=2.0.1
pkgver=2.0.4
pkgrel=1
pkgdesc="Pulse-Eight's libcec for the Pulse-Eight USB-CEC adapter with support for cubox"
arch=('armv7h')
@ -13,11 +13,9 @@ depends=('udev' 'lockdev')
makedepends=('linux-headers-cubox')
conflicts=('libcec')
provides=('libcec')
source=("libcec-2.0.1.tar.gz::https://github.com/Pulse-Eight/libcec/tarball/libcec-2.0.1" \
"0001-Added-adapter-ID-interface.patch")
_srcfolder=Pulse-Eight-libcec-6be84fc
sha256sums=('3dc6d7080a98dbfddcab4605a1267c24751b4334a95f845583f34d9f24c9269a' \
'4dd4a93d9cf29f383ae9ae10fd35c730160518caff9582fb4cc01cf0d316cd2c')
source=("libcec-${pkgver}.tar.gz::https://github.com/Pulse-Eight/libcec/tarball/libcec-${pkgver}")
sha256sums=('652f8bddf8629eb4d14c93bc97efbeb7406482f69626302c8489df8e1fd8431f')
_srcfolder=Pulse-Eight-libcec-178d498
options=(!libtool)
build() {
@ -26,7 +24,6 @@ build() {
_kernel_release="$(pacman -Q linux-headers-cubox | grep -Eo "[^\ ]+$")-ARCH+"
cd "$pkgname-$pkgver"
patch -p1 -i "${srcdir}/${source[1]}"
autoreconf -vif
./configure --prefix=/usr --enable-cubox --enable-shared=lockdev \
--with-tda995x-toolkit-path="/usr/src/linux-${_kernel_release}/include/nxp_hdmi"

View file

@ -5,7 +5,7 @@
buildarch=16
pkgname=libcec-rpi
pkgver=2.0.4
pkgver=2.0.5
pkgrel=1
pkgdesc="Pulse-Eight's libcec for the Pulse-Eight USB-CEC adapter with support for raspberry pi"
arch=('armv6h')
@ -14,10 +14,10 @@ license=('GPL')
depends=('udev' 'lockdev' 'raspberrypi-firmware')
conflicts=('libcec')
provides=('libcec')
source=("libcec-2.0.4.tar.gz::https://github.com/Pulse-Eight/libcec/tarball/libcec-2.0.4" "fix-boot_t.patch")
_srcfolder=Pulse-Eight-libcec-178d498
sha256sums=('652f8bddf8629eb4d14c93bc97efbeb7406482f69626302c8489df8e1fd8431f'
source=("libcec-$pkgver.tar.gz::https://github.com/Pulse-Eight/libcec/tarball/libcec-$pkgver" "fix-boot_t.patch")
sha256sums=('83d99cf759531d8c8a217f360f4748159cb9cedac98d77a4615450bad6d570c4'
'ba9b4030f3c2aa092a7c513629b60e82eeca7daf044576fa89b117409a8e883f')
_srcfolder=Pulse-Eight-libcec-e1599e0
options=(!libtool)
build() {

View file

@ -1,34 +0,0 @@
buildarch=16
pkgname=raspberrypi-firmware-next
pkgver=20121128
pkgrel=3
pkgdesc="Firmware files for Raspberry Pi"
arch=('any')
url="https://github.com/raspberrypi/firmware"
makedepends=('git')
license=('custom')
options=(!strip)
install=${pkgname}.install
_gitroot=git://github.com/raspberrypi/firmware.git
_gitname=firmware
provides=('raspberrypi-firmware')
conflicts=('raspberrypi-firmware')
install=${pkgname}.install
build() {
msg "Connecting to GIT server...."
git clone --depth 1 -b next "$_gitroot"
rm -f "${srcdir}"/firmware/boot/kernel.img
}
package() {
cp -R "${srcdir}"/firmware/boot "${pkgdir}"/boot
mkdir -p "${pkgdir}"/opt/vc
if [[ $CARCH == "arm" ]]; then
cp -R "${srcdir}"/firmware/opt/vc/{bin,include,lib,sbin,LICENCE} "${pkgdir}"/opt/vc
elif [[ $CARCH == "armv6h" ]]; then
cp -R "${srcdir}"/firmware/hardfp/opt/vc/{bin,include,lib,sbin,LICENCE} "${pkgdir}"/opt/vc
fi
}

View file

@ -1,4 +0,0 @@
post_upgrade() {
echo ">>see http://www.raspberrypi.org/phpBB3/viewtopic.php?f=29&t=19334&start=100#p216838"
echo ">>on how to use new firmware, must be matched to 3.6.x kernel"
}

View file

@ -1,7 +1,7 @@
buildarch=18
pkgname=raspberrypi-firmware
pkgver=20121127
pkgver=20130109
pkgrel=1
pkgdesc="Firmware files for Raspberry Pi"
arch=('any')
@ -9,7 +9,6 @@ url="https://github.com/raspberrypi/firmware"
makedepends=('git')
license=('custom')
options=(!strip)
install=${pkgname}.install
_gitroot=git://github.com/raspberrypi/firmware.git
_gitname=firmware
provides=('raspberrypi-firmware')
@ -34,8 +33,14 @@ package() {
mkdir -p "${pkgdir}"/opt/vc
if [[ $CARCH == "arm" ]]; then
cp -R "${srcdir}"/firmware/opt/vc/{bin,include,lib,sbin,LICENCE} "${pkgdir}"/opt/vc
cp -R "${srcdir}"/firmware/opt/vc/{bin,include,lib,sbin,src,LICENCE} "${pkgdir}"/opt/vc
elif [[ $CARCH == "armv6h" ]]; then
cp -R "${srcdir}"/firmware/hardfp/opt/vc/{bin,include,lib,sbin,LICENCE} "${pkgdir}"/opt/vc
cp -R "${srcdir}"/firmware/hardfp/opt/vc/{bin,include,lib,sbin,src,LICENCE} "${pkgdir}"/opt/vc
fi
# Create lib links
mkdir -p "${pkgdir}"/etc/ld.so.conf.d/
# ensure we can load libs
echo "/opt/vc/lib/" > "${pkgdir}"/etc/ld.so.conf.d/raspberrypi-firmware.conf
}

View file

@ -1,3 +0,0 @@
post_upgrade() {
}

View file

@ -9,7 +9,6 @@ depends=('glibc')
makedepends=('xorg-server-devel' 'resourceproto' 'scrnsaverproto')
conflicts=('xorg-server<1.11.99.903'
'xf86-video-fbdev')
groups=('xorg-drivers' 'xorg')
options=('!libtool')
source=("${url}/releases/individual/driver/xf86-video-fbdev-${pkgver}.tar.bz2"
'damage.patch')

View file

@ -6,7 +6,7 @@
pkgname=cherokee
pkgver=1.2.101
pkgrel=5
pkgrel=6
pkgdesc="A very fast, flexible and easy to configure Web Server"
arch=('i686' 'x86_64')
url="http://www.cherokee-project.com/"
@ -91,7 +91,7 @@ package() {
install -d -o http -g http "$pkgdir/var/log/$pkgname"
install -D "$srcdir/$pkgname.rc" "$pkgdir/etc/rc.d/$pkgname"
install -Dm644 "$srcdir/$pkgname.logrotate" "$pkgdir/etc/logrotate.d/$pkgname"
install -Dm644 "$srcdir/$pkgname.logrotate" "$pkgdir/usr/lib/systemd/system/$pkgname.service"
install -Dm644 "$srcdir/$pkgname.service" "$pkgdir/usr/lib/systemd/system/$pkgname.service"
# Cleanup
rm -rf "$pkgdir/srv"

24
aur/cower/PKGBUILD Normal file
View file

@ -0,0 +1,24 @@
# Maintainer: Dave Reisner <d@falconindy.com>
pkgname=cower
pkgver=7
pkgrel=1
pkgdesc="A simple AUR agent with a pretentious name"
arch=('i686' 'x86_64')
url="http://github.com/falconindy/cower"
license=('MIT')
depends=('curl' 'yajl' 'pacman')
makedepends=('perl')
source=("https://github.com/downloads/falconindy/$pkgname/$pkgname-$pkgver.tar.gz"{,.sig})
md5sums=('d046a8a5278eb2788c8fb4019455be32'
'1cb4248bf4302bd152f69fff5ffaa457')
build() {
make -C "$pkgname-$pkgver"
}
package() {
make -C "$pkgname-$pkgver" PREFIX=/usr DESTDIR="$pkgdir" install
}
# vim: ft=sh syn=sh

33
aur/dfc/PKGBUILD Normal file
View file

@ -0,0 +1,33 @@
# Maintainer: Rolinh <robinDOThahlingATgw-computingDOTnet>
pkgname=dfc
pkgver=3.0.1
pkgrel=1
pkgdesc="Display file system space usage using graphs and colors"
arch=('x86_64' 'i686')
url="http://projects.gw-computing.net/projects/dfc"
license=('BSD')
depends=('glibc')
makedepends=('cmake')
provides=('dfc')
conflicts=('dfc-git')
source=(http://projects.gw-computing.net/attachments/download/67/${pkgname}-${pkgver}.tar.gz)
install='dfc.install'
md5sums=('bb3452662d43a51eb541c66d6fbad576')
build() {
cd ${pkgname}-${pkgver}
cmake . -DPREFIX=/usr -DSYSCONFDIR=/etc -DCMAKE_BUILD_TYPE=RELEASE
make
}
package() {
cd ${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
# vim:set ts=2 sw=2 et:

7
aur/dfc/dfc.install Normal file
View file

@ -0,0 +1,7 @@
post_install() {
echo 'Optional configuration file is located in /etc/xdg/dfc/'
echo 'Copy it to ~/.config/dfc/ (create this folder if necessary) if you want to use it.'
}
post_upgrade() {
post_install
}

View file

@ -0,0 +1,41 @@
# Maintainer: Marti Raudsepp <marti@juffo.org>
pkgname=flashbench-git
pkgver=20110219
pkgrel=1
pkgdesc="Tool for benchmarking and classifying flash memory drives"
arch=(i686 x86_64)
license=('unknown')
url="https://lwn.net/SubscriberLink/428584/354d16fe00c90072/"
depends=()
makedepends=()
replaces=('flashbench')
provides=('flashbench')
conflicts=('flashbench')
source=()
_gitroot="git://git.linaro.org/people/arnd/flashbench.git"
_gitname="flashbench"
build() {
cd "$srcdir"
msg "Connecting to GIT server...."
if [ -d $_gitname ] ; then
cd $_gitname && git pull origin
msg "The local files are updated."
else
git clone $_gitroot $_gitname
fi
msg "GIT checkout done or server timeout"
msg "Starting make..."
rm -rf "$srcdir/$_gitname-build"
git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build"
cd "$srcdir/$_gitname-build"
make
mkdir -p $pkgdir/usr/bin
install -m755 flashbench erase $pkgdir/usr/bin/
}

View file

@ -2,16 +2,17 @@
# Maintainer: Nathan Owe <ndowens.aur at gmail dot com>
pkgname=flexget
_pkgname=FlexGet
pkgver=1.0r3122
pkgrel=1
pkgver=1.0r3214
pkgrel=2
pkgdesc="Automate downloading or processing content (torrents, podcasts, etc.)"
arch=(any)
url="http://flexget.com/"
depends=('python2' 'python2-cherrypy' 'python2-progressbar' \
'python2-pynzb' 'pyrss2gen' 'python2-sqlalchemy' 'python2-html5lib' \
'python2-beautifulsoup3' 'python2-yaml' 'python2-feedparser'
'python2-flask' 'python2-requests-0.10.0' 'python2-certifi>=0.0.7'
'python2-beautifulsoup4>=4.1' 'python2-beautifulsoup3>=3.2' 'python2-yaml' 'python2-feedparser'
'python2-flask' 'python2-requests-0.14' 'python2-certifi>=0.0.7'
'python2-chardet>=1.0.0' 'python2-dateutil')
optdepends=('pytransmissionrpc: Transmission support')
makedepends=('python2-distribute')
license=('MIT')
#install=('flexget.install')
@ -27,4 +28,5 @@ package() {
install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
md5sums=('64ada54e313415f0235b81bd8b7b3573')
md5sums=('60a6ca61dc34ba2d0cde44eb13cbca38')

View file

@ -3,7 +3,7 @@
pkgname=hd-idle
pkgver=1.04
pkgrel=1
pkgrel=2
pkgdesc='Utility program for spinning-down external disks after a period of idle time.'
arch=(i686 x86_64)
backup=(etc/conf.d/hd-idle)
@ -11,9 +11,11 @@ url="http://hd-idle.sourceforge.net/"
license=('GPL')
install="hd-idle.install"
source=("http://downloads.sf.net/$pkgname/$pkgname-$pkgver.tgz"
"hd-idle.init")
"hd-idle.init"
"hd-idle.service")
md5sums=('41e52e669fc59fa82ee0c2bcce1336d3'
'19c07682085d7fa99527c0f35073d331')
'19c07682085d7fa99527c0f35073d331'
'82cd5beede4cd11f94e61f6c8332d07c')
build() {
cd "$srcdir/$pkgname"
@ -29,6 +31,7 @@ package() {
# Install custom init script and stock defaults file:
install -Do 0 -g 0 "$srcdir/hd-idle.init" "$pkgdir/etc/rc.d/hd-idle"
install -Dpm 644 -o 0 -g 0 debian/hd-idle.default "$pkgdir/etc/conf.d/hd-idle"
install -Dm 644 "$srcdir/hd-idle.service" "$pkgdir/usr/lib/systemd/system/hd-idle.service"
# Install README:
install -Dm 644 -o 0 -g 0 README "$pkgdir/usr/share/doc/$pkgname/README"

View file

@ -0,0 +1,10 @@
[Unit]
Description=Hard drive idling daemon
[Service]
Type=forking
EnvironmentFile=/etc/conf.d/hd-idle
ExecStart=/usr/sbin/hd-idle $HD_IDLE_OPTS
[Install]
WantedBy=multi-user.target

39
aur/knockd/PKGBUILD Normal file
View file

@ -0,0 +1,39 @@
# $Id: PKGBUILD 20410 2008-12-03 09:44:51Z tom $
# Maintainer: Mike Sampson <mike at sambodata dot com>
# Contriburor: Steven <steven at stebalien dot com>
# Contributor: Aaron Griffin <aaron@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
pkgname=knockd
pkgver=0.5
pkgrel=10
pkgdesc="A simple port-knocking daemon"
arch=('i686' 'x86_64')
url="http://www.zeroflux.org/projects/knock"
license=(GPL)
depends=('libpcap>=1.0.0')
backup=('etc/knockd.conf')
source=(http://www.zeroflux.org/proj/knock/files/knock-$pkgver.tar.gz
knockd knockd.logrotate knockd.service limits.h.patch)
md5sums=('ca09d61458974cff90a700aba6120891'
'72302d899887996694586c3d479de245'
'56a4113ec89ba2e96f79ab23c914d52a'
'0329ca17267d03f06216d1fe00bd16a9'
'e56dc7359f36c3b07da6710c404d671e')
build() {
cd "$srcdir/knock-$pkgver"
patch -Np0 -i "$srcdir/limits.h.patch"
./configure --prefix=/usr
make
}
package() {
cd "$srcdir/knock-$pkgver"
make DESTDIR="$pkgdir" MANDIR=/usr/share/man install
#install -D -m755 "$srcdir/knockd" "$pkgdir/etc/rc.d/knockd"
install -D -m755 "$srcdir/knockd.service" "$pkgdir/usr/lib/systemd/system/knockd.service"
install -D -m644 "$srcdir/knockd.logrotate" "$pkgdir/etc/logrotate.d/knockd"
}

37
aur/knockd/knockd Normal file
View file

@ -0,0 +1,37 @@
#!/bin/bash
. /etc/rc.conf
. /etc/rc.d/functions
PID=`pidof -o %PPID /usr/sbin/knockd`
case "$1" in
start)
stat_busy "Starting Port-Knocking Daemon"
if [ -z "$PID" ]; then
/usr/sbin/knockd -d
fi
if [ ! -z "$PID" -o $? -gt 0 ]; then
stat_fail
else
add_daemon knockd
stat_done
fi
;;
stop)
stat_busy "Stopping Port-Knocking Daemon"
[ ! -z "$PID" ] && kill $PID &> /dev/null
if [ $? -gt 0 ]; then
stat_fail
else
rm_daemon knockd
stat_done
fi
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "usage: $0 {start|stop|restart}"
esac

View file

@ -0,0 +1,5 @@
/var/log/knockd.log {
missingok
notifempty
delaycompress
}

10
aur/knockd/knockd.service Normal file
View file

@ -0,0 +1,10 @@
[Unit]
Description=Port-Knocking Daemon
After=network.target
[Service]
ExecStart=/usr/sbin/knockd -d
Type=forking
[Install]
WantedBy=multi-user.target

10
aur/knockd/limits.h.patch Normal file
View file

@ -0,0 +1,10 @@
--- src/knockd.c.orig 2008-12-03 07:21:14.643255773 +0000
+++ src/knockd.c 2008-12-03 07:24:59.606701396 +0000
@@ -46,6 +46,7 @@
#include <syslog.h>
#include <pcap.h>
#include <errno.h>
+#include <limits.h>
#include "list.h"
static char version[] = "0.5";

View file

@ -1,7 +1,7 @@
#Mantainer: M0Rf30
pkgname=lightdm
pkgver=1.4.0
pkgrel=1
pkgrel=6
pkgdesc="A lightweight display manager"
arch=('i686' 'x86_64')
url="https://launchpad.net/lightdm"
@ -9,7 +9,6 @@ license=('GPL3' 'LGPL3')
source=("https://launchpad.net/lightdm/1.4/$pkgver/+download/$pkgname-$pkgver.tar.gz"
lightdm.rc
lightdm.service
lightdm-plymouth.service
lightdm.tmpfiles
xsession
lightdm-autologin.pam
@ -18,11 +17,13 @@ depends=('dbus-glib' 'libxklavier')
options=(!libtool)
install=lightdm.install
optdepends=('accountsservice'
optdepends=('xorg-server-xephyr: run lightdm in test mode'
'accountsservice: limit account shown by the greeter'
'lightdm-kde: Qt lightdm greeter'
'lightdm-gtk-greeter: You need this package to test the default greeter'
'xorg-server-xephyr: run lightdm in test mode'
'lightdm-webkit-greeter-bzr: webkit lightdm greeter'
'lightdm-crowd-greeter: 3d lightdm greeter')
'lightdm-crowd-greeter: 3d lightdm greeter'
'lightdm-pantheon-greeter: ElementaryOS greeter writtern in vala')
makedepends=('gobject-introspection' 'pkg-config' 'intltool' 'patch' 'itstool')
@ -49,7 +50,6 @@ package() {
# init services file
install -D -m755 ../lightdm.rc $pkgdir/etc/rc.d/lightdm
install -D -m644 ../lightdm.service $pkgdir/usr/lib/systemd/system/lightdm.service
install -D -m644 ../lightdm-plymouth.service $pkgdir/usr/lib/systemd/system/lightdm-plymouth.service
install -D -m644 ../lightdm.tmpfiles $pkgdir/usr/lib/tmpfiles.d/lightdm.conf
# some tweaks
@ -70,9 +70,8 @@ package() {
md5sums=('622d9087ec773dd0626a250a5868f88c'
'6699eb35f65ff498d1d05e6782f4f902'
'b9781cdb3aaae3755f21c7852dcc76bf'
'e6d573b1913f3aa020cbde3863ee80f0'
'737c6f27488517c6320bfc797954b400'
'b1e1baf7351ff58c7b3b9b204472f6bb'
'683bc8bc3f423157065dc6295f9fecef'
'9e39da461e36f9d3fdd4447a80ebd878'
'94b407926e12db7c79932a127e778a30')
'a5c60ec8739a698e4127b47ef417e517')

View file

@ -1,25 +1,12 @@
#%PAM-1.0
# Block login if they are disabled
auth required pam_nologin.so
# Load environment from /etc/environment and ~/.pam_environment
auth required pam_env.so
# Use /etc/passwd and /etc/shadow for passwords
auth required pam_unix.so
# Check account is active, change password if required
account required pam_unix.so
# Allow password to be changed
password required pam_unix.so
# Setup session
session required pam_unix.so
-session optional pam_systemd.so
session required pam_limits.so
# Allow user to automatically unlock the default gnome-keyring
auth requisite pam_nologin.so
auth required pam_env.so
auth required pam_unix.so
-auth optional pam_gnome_keyring.so
-session optional pam_gnome_keyring.so auto_start
account required pam_unix.so
session required pam_limits.so
session required pam_unix.so
password required pam_unix.so
-session optional pam_loginuid.so
-session optional pam_systemd.so
-session optional pam_gnome_keyring.so auto_start

View file

@ -1,11 +1,14 @@
[Unit]
Description=LightDM Display Manager
Documentation=man:lightdm(1)
After=systemd-user-sessions.service
[Service]
ExecStart=/usr/sbin/lightdm
StandardOutput=syslog
Restart=always
IgnoreSIGPIPE=no
BusName=org.freedesktop.DisplayManager
[Install]
WantedBy=graphical.target
Alias=display-manager.service

View file

@ -6,12 +6,13 @@
pkgname=mediatomb
pkgver=0.12.1
pkgrel=9
pkgrel=11
pkgdesc="Free UPnP/DLNA media server"
arch=('i686' 'x86_64')
url="http://mediatomb.cc/"
license=('GPL')
depends=('file' 'curl' 'ffmpegthumbnailer' 'js' 'libexif' 'libmp4v2' 'sqlite3' 'taglib')
depends=('file' 'curl' 'ffmpegthumbnailer' 'js' 'libexif' 'libmp4v2' 'sqlite3' 'taglib' 'libmysqlclient')
optdepends=('mysql: to store your music database in mysql')
backup=('etc/conf.d/mediatomb')
install=mediatomb.install
source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz"
@ -34,7 +35,7 @@ build() {
patch -Np1 -i "$srcdir/libavformat.patch"
./configure --prefix=/usr \
--disable-mysql \
--enable-mysql \
--enable-libmagic \
--enable-libjs \
--enable-ffmpeg

27
aur/monkey/PKGBUILD Normal file
View file

@ -0,0 +1,27 @@
#Maintainer: Christian Stankowic <info at stankowic hypen development dot net>
#Contributor: Gary Wright <wriggary at gmail dot com>
pkgname=monkey
pkgver=1.1.1
pkgrel=1
pkgdesc="A very small and fast open source web server for Linux"
arch=('i686' 'x86_64')
url="http://www.monkey-project.com/"
license=('GPL2')
depends=('gcc-libs')
optdepends=('php')
source=("http://www.monkey-project.com/releases/1.1/$pkgname-$pkgver.tar.gz"
monkey)
install=monkey.install
md5sums=('958d74ddcc595ae01b1d3916e9e7753c'
'1527d1fbddddcfd69ad328639dcd0eed')
build() {
cd $srcdir/$pkgname-$pkgver
./configure --prefix=/usr --bindir=/usr/bin --sysconfdir=/etc/$pkgname \
--datadir=/srv/http --logdir=/var/log/$pkgname \
--plugdir=/usr/lib/$pkgname
make
make DESTDIR=$pkgdir install
install -d $pkgdir/etc/rc.d/
install -m 755 ../monkey $pkgdir/etc/rc.d/monkey
}

32
aur/monkey/monkey Executable file
View file

@ -0,0 +1,32 @@
#!/bin/bash
. /etc/rc.conf
. /etc/rc.d/functions
DAEMON=monkey
PID=$(get_pid $DAEMON)
case "$1" in
start)
stat_busy "Starting $DAEMON"
[[ -z "$PID" ]] && /usr/bin/monkey -D &>/dev/null \
&& { add_daemon $DAEMON; stat_done; } \
|| { stat_fail; exit 1; }
;;
stop)
stat_busy "Stopping $DAEMON"
[[ ! -z "$PID" ]] && kill $PID &>/dev/null \
&& { rm_daemon $DAEMON; stat_done; } \
|| { stat_fail; exit 1; }
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "usage: $0 {start|stop|restart}"
;;
esac
exit 0

14
aur/monkey/monkey.install Normal file
View file

@ -0,0 +1,14 @@
post_install() {
env echo
env echo " Running Monkey :"
env echo " ----------------"
env echo
env echo " # /usr/bin/monkey"
env echo
env echo " For more help use '-h' option"
env echo
env echo " System wide rc script located at:"
env echo
env echo " # /etc/rc.d/monkey {start|stop|restart}"
}

View file

@ -6,7 +6,7 @@
pkgname=netatalk
pkgver=3.0.1
pkgrel=3
pkgrel=5
pkgdesc='A kernel-level implementation of AFP services'
arch=('i686' 'x86_64')
url='http://netatalk.sourceforge.net'
@ -25,7 +25,9 @@ build() {
msg2 'Fixing...'
sed -i 's/x"linux/x"generic/' macros/netatalk.m4
sed -i 's:/lib:/usr/lib:' distrib/initscripts/Makefile.{am,in}
autoreconf &>/dev/null
sed -i 's:model=%s:model:' etc/afpd/afp_mdns.c
sed -i 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' {configure.ac,libevent/configure.in}
autoreconf -i >/dev/null
msg2 'Configuring...'
CFLAGS="-Wno-unused-result" ./configure --prefix=/usr --localstatedir=/var/state --sysconfdir=/etc --with-init-style=systemd \
--with-cracklib --with-cnid-cdb-backend --enable-pgp-uam --without-libevent-header --without-libevent-lib

View file

@ -1,3 +1,14 @@
2013-01-05 SJ_UnderWater
* 3.0.1-5:
fixed AM deprecations
minor install fix
2012-11-28 SJ_UnderWater
* 3.0.1-4 :
fixed mimic model
2012-10-08 SJ_UnderWater
* 3.0.1-3 :

View file

@ -2,12 +2,13 @@ post_install() {
post_upgrade
}
post_upgrade() {
if [ -f /etc/rc.conf ] && [ "`grep -E '(cnid|atalkd|afpd)' /etc/rc.conf`" ];then
if [ -f /etc/rc.conf ];then
if [ "`grep -E '(cnid|atalkd|afpd)' /etc/rc.conf`" ];then
echo '>>> Detected old netatalk daemon entries in';
echo '>>> /etc/rc.conf, please replace these with';
echo '>>> "netatalk" before restarting!';
else echo '>>> Add "netatalk" to your DAEMONS list';fi
echo '>>>';
fi
if [ -f /etc/avahi/services/adisk.service ] ||
[ -f /etc/avahi/services/afpd.service ];then
echo '>>> Detected old netatalk service files in';

37
aur/netctl/PKGBUILD Normal file
View file

@ -0,0 +1,37 @@
# Maintainer: Jouke Witteveen <j.witteveen@gmail.com>
pkgname=netctl
pkgver=0.2
pkgrel=1
arch=(any)
pkgdesc="Network configuration and profile scripts"
url="http://archlinux.org/netctl/"
license=("GPL")
depends=("coreutils" "iproute2" "openresolv")
makedepends=('asciidoc')
optdepends=('dialog: for the menu based wifi assistant'
'dhclient: for DHCP support, or use dhcpcd'
'dhcpcd: for DHCP support, or use dhclient'
'wpa_supplicant: for wireless networking support'
'ifplugd: for automatic wired connections through netctl-ifplugd'
'wpa_actiond: for automatic wireless connections through netctl-auto'
'ifenslave: for bond connections'
'bridge-utils: for bridge connections'
)
conflicts=("netcfg" "netctl")
provides=("netctl")
source=("https://github.com/joukewitteveen/$pkgname/archive/$pkgver.tar.gz"
'zsh-completion')
md5sums=('cb144eda0e5dd09f5b07db00421a429f'
'3428e0e7f061bbcde41f2fe64d8d96dd')
package() {
cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install
# Shell Completion
install -D -m644 contrib/bash-completion "$pkgdir/usr/share/bash-completion/completions/netctl"
install -Dm644 "$srcdir/zsh-completion" "$pkgdir/usr/share/zsh/site-functions/_netctl"
}

149
aur/netctl/zsh-completion Normal file
View file

@ -0,0 +1,149 @@
#compdef netctl netctl-auto
local -a _long_opts _profile_opts
_long_opts=(
'--help[Show help message]'
'--version[Show version]'
)
_profile_opts=(
'start' 'stop' 'restart'
'switch-to' 'status' 'enable'
'disable' 'reenable'
)
__systemctl()
{
systemctl --full --no-legend --no-pager "$@"
}
for fun in start switch-to; do
(( $+function[_netctl_$fun] )) || _netctl_$fun(){
local -a _profiles
_profiles=( ${${${(f)"$(_call_program profiles "$service list 2>/dev/null")"}:#\**}## })
[[ -z "$_profiles" ]] && _message "No More Options." && return 0
_describe 'Stopped Profiles' _profiles
}
done
(( $+functions[_netctl_stop] )) || _netctl_stop(){
local -a _profiles
_profiles=( ${${(M)${(f)"$(_call_program profiles "$service list 2>/dev/null")"}:#\**}##\* })
[[ -z "$_profiles" ]] && _message "No More Options." && return 0
_describe 'Running Profiles' _profiles
}
(( $+functions[_netctl_restart] )) || _netctl_restart(){
local -a _profiles
_profiles=( ${${(M)${(f)"$(_call_program profiles "$service list 2>/dev/null")"}:#\**}##\* })
[[ -z "$_profiles" ]] && _message "No More Options." && return 0
_describe 'profiles' _profiles
}
(( $+functions[_netctl_enable] )) || _netctl_enable(){
local -a _profiles
_profiles=( ${${(f)"$(_call_program profiles "$service list 2>/dev/null")"}##[\* ] })
[[ -z "$_profiles" ]] && _message "No More Options."
_describe "Disabled Netctl Units" _profiles
}
(( $+functions[_netctl_disable] )) || _netctl_disable(){
local -a _profiles
_profiles=(${${${(M)${(f)"$(_call_program "Enabled Netctl Units" "__systemctl list-unit-files 2>/dev/null")"}:#netctl@*enabled*}%%.service *}#netctl@})
[[ -z "$_profiles" ]] && _message "No More Options."
_describe 'Enabled Netctl Units' _profiles
}
(( $+function[_netctl_reenable] )) || _netctl_reenable(){
local -a _profiles
_profiles=(${${${(M)${(f)"$(_call_program "Netctl Units" "__systemctl list-unit-files 2>/dev/null")"}:#netctl@*}%%.service *}#netctl@})
[[ -z "$_profiles" ]] && _message "No More Options."
_describe "Netctl Units" _profiles
}
for fun in $_profile_opts[@]; do
(( $+functions[_netctl_$fun] )) || _netctl_$fun () {
local -a _profiles
_profiles=( $(find -L /etc/network.d -maxdepth 1 -type f -not -name '.*' -not -name '*~' -not -name '*.conf' -not -name '*.service' -printf "%f\n") )
for f in $words[@]; do
_profiles=(${_profiles:#$f})
done
[[ -z "$_profiles" ]] && _message "No More Options."
compadd "$_profiles[@]"
}
done
_netctl_command(){
local -a _command_opts
_command_opts=(
'list:List available profiles'
'store:Save which profiles are active'
'restore:Load saved profiles'
'stop-all:Stops all profiles'
'start:Start a profile'
'stop:Stop a profile'
'restart:Restart a profile'
'switch-to:Switch to a profile'
'status:Show runtime status of a profile'
'enable:Enable the systemd unit for a profile'
'disable:Disable the systemd unit for a profile'
'reenable:Reenable the systemd unit for a profile'
)
if (( CURRENT == 1 )); then
_describe "Netctl Commands" _command_opts
else
cmd="${${_command_opts[(r)$words[1]:*]%%:*}}"
if (( $#cmd )); then
if ((CURRENT < 3 )); then
_call_function ret _netctl_$cmd || _message "no more options"
else
_message "No More Options."
fi
else
_message "Unknown netctl command: $words[1]"
fi
return ret;
fi
}
(( $+functions[_auto_command] )) || _auto_command(){
local -a _interfaces _command_opts
_interfaces=(${${${(M)${(f)"$(_call_program interfaces "ip l 2>/dev/null")"}:#(0|1|2|3|4|5|6|7|8|9)*}#* }%%:*})
_command_opts=(
'start:start interface'
'stop:stop interface'
)
if (( CURRENT == 1 )); then
_describe "netctl-auto Commands" _command_opts
else
cmd="${${_command_opts[(r)$words[1]:*]%%:*}}"
if (( $#cmd )); then
if ((CURRENT < 3 )); then
_describe interfaces _interfaces
else
_message "No More Options."
fi
else
_message "Unknown netctl command: $words[1]"
fi
return ret;
fi
}
case $service in
netctl)
_arguments \
"$_long_opts[@]" \
'*::netctl commands:_netctl_command'
;;
netctl-auto)
_arguments \
'--help[Show Help Message]' \
'*::network interfaces:_auto_command'
;;
*)
_message "Unknown Command: $words[0]"
;;
esac

9
aur/owfs/PKGBUILD Executable file → Normal file
View file

@ -1,10 +1,7 @@
# Maintainer: tzervo <tzervo@gmail.com>
# Contributor: plut0nium <charles(DOT)fourneau(AT)gmail(DOT)com >
plugrel=1
# tzervo <tzervo@gmail.com>
pkgname="owfs"
pkgver=2.8p14
pkgver=2.8p20
pkgrel=1
pkgdesc="An easy way to use the powerful 1-wire system of Dallas/Maxim."
arch=('any')
@ -24,7 +21,7 @@ options=()
install=
source=(http://downloads.sourceforge.net/sourceforge/owfs/$pkgname-$pkgver.tar.gz)
noextract=()
md5sums=('cd213fd9bbfed95cca2c833c0f14dd72')
md5sums=('9aebee6c0e724553f5be6a542494eae5')
build() {
cd "$srcdir/$pkgname-$pkgver"

View file

@ -2,7 +2,7 @@
# Based on owncloud-git PKGBUILD by Alexander Ovsyannikov
pkgname=owncloud
pkgver=4.5.2
pkgver=4.5.5
pkgrel=1
pkgdesc="A cloud server to store your files centrally on a hardware controlled by you"
arch=('any')
@ -14,7 +14,7 @@ makedepends=()
source=("http://owncloud.org/releases/$pkgname-$pkgver.tar.bz2" 'owncloud.conf')
backup=('etc/httpd/conf/extra/owncloud.conf')
install=owncloud.install
md5sums=('a23cd7567a35d7c0d3b5e50566ca3853'
md5sums=('5fd4b51c282ef7262377386cefb939b3'
'7a08e1fee098615ea24fcdb1f4bd82d9')
package() {

View file

@ -1,12 +1,9 @@
# Contributor: tuxce <tuxce.net@gmail.com>
plugrel=1
pkgname=package-query
pkgver=1.0.1
pkgrel=1
pkgver=1.1
pkgrel=2
pkgdesc="Query ALPM and AUR"
arch=('i686' 'x86_64')
arch=('i686' 'x86_64' 'mips64el' 'armv6h' 'armv7h')
url="http://gitweb.archlinux.fr/package-query.git/"
license=('GPL')
depends=('pacman>=4.0' 'pacman<4.1' curl 'yajl>=2.0')
@ -14,7 +11,7 @@ source=(http://mir.archlinux.fr/~tuxce/releases/$pkgname/$pkgname-$pkgver.tar.gz
build() {
cd "$srcdir/$pkgname-$pkgver"
./configure --localstatedir=/var --prefix=/usr --sysconfdir=/etc
./configure --localstatedir=/var --prefix=/usr --sysconfdir=/etc --with-aur-url=https://aur.archlinux.org
make
}
@ -26,4 +23,4 @@ package ()
# vim:set ts=2 sw=2 et:
md5sums=('c7d0c242437f8efd5de41a59b7b67f8c')
md5sums=('becb5734dd531631cbe2e1c9cf82ae9e')

View file

@ -3,16 +3,15 @@
_pkgname=pithos
pkgname=pithos-git
pkgver=20121024
pkgver=20130108
pkgrel=1
pkgdesc='Pandora Internet Radio player for GNOME'
arch=('any')
url="http://kevinmehall.net/p/pithos/"
license=('GPL3')
depends=('python2' 'pygtk' 'python2-notify' 'dbus-python' 'gstreamer0.10-python' 'gstreamer0.10-good-plugins' 'gstreamer0.10-bad-plugins' 'gstreamer0.10-base-plugins' 'pyxdg' 'hicolor-icon-theme')
depends=('python2' 'pygtk' 'python2-notify' 'python2-dbus' 'gstreamer0.10-python' 'gstreamer0.10-good-plugins' 'gstreamer0.10-bad-plugins' 'gstreamer0.10-base-plugins' 'python2-xdg' 'hicolor-icon-theme')
makedepends=('git' 'python2-distribute' 'python2-distutils-extra')
#makedepends=('git' 'python2-distribute')
optdepends=('python-keybinder: for media keys plugin'
optdepends=('python2-keybinder2: for media keys plugin'
'gstreamer0.10-ugly-plugins: MP3 playback support')
provides=("$_pkgname")
conflicts=("$_pkgname-bzr" "$_pkgname")

View file

@ -1,20 +1,20 @@
# Maintainer: Mihai Militaru <mihai militaru at xmpp dot ro>
pkgname=polarssl
pkgver=1.1.4
pkgver=1.2.3
pkgrel=1
pkgdesc="Portable cryptographic and SSL/TLS library"
arch=('i686' 'x86_64')
url="http://www.polarssl.org/"
license=('GPL2')
source=(http://www.polarssl.org/code/releases/polarssl-"$pkgver"-gpl.tgz)
sha1sums=('3dd10bd1a8f7f58e0ef8c91cfa5ea7efd5d5f4bc')
sha1sums=('b47b3db19c4487c5930eaec23dda0dbd24851146')
depends=('glibc')
build() {
cd "$pkgname"-"$pkgver"
sed -i 's^# CFLAGS += -fPIC^CFLAGS += -fPIC^g' library/Makefile
sed -i 's^CFLAGS +=^CFLAGS += -fPIC^g' library/Makefile
sed -i 's#all: static#all: static shared#g' library/Makefile
make

View file

@ -1,8 +1,5 @@
pkgname=python2-requests-0.10.0
plugrel=1
pkgver=0.10.0
pkgname=python2-requests-0.14
pkgver=0.14.2
pkgrel=2
pkgdesc="Python HTTP for Humans."
url="http://python-requests.org"
@ -20,6 +17,8 @@ build() {
package() {
cd $srcdir/requests-$pkgver
python2 setup.py install --root="$pkgdir" --optimize=1
python2 setup.py install --root="$pkgdir"
}
md5sums=('c90a48af18eb4170dbe4832c1104440c')
md5sums=('488508ba3e8270992ad5b3fb54d364ca')

View file

@ -1,31 +1,28 @@
pkgname=sabnzbd
_pkgname=SABnzbd
pkgver=0.7.4
pkgver=0.7.9
pkgrel=1
pkgdesc="A web-interface based binary newsgrabber with NZB file support"
url="http://www.sabnzbd.org"
arch=("any")
license=("GPL")
depends=("curl" "par2cmdline"
"python2" "python2-cheetah" "python2-feedparser" "python2-pyopenssl" "python2-yenc"
"sqlite" "unrar" "unzip" "xdg-utils")
"python2" "python2-cheetah" "python2-yenc"
"sqlite" "unrar" "unzip")
optdepends=("xdg-utils: registration of .nzb files" "python2-feedparser: rss support" "python2-pyopenssl: ssl support")
install="${pkgname}.install"
backup=("etc/conf.d/${pkgname}" "opt/${pkgname}/${pkgname}.ini")
backup=("etc/conf.d/sabnzbd" "opt/${pkgname}/${pkgname}.ini")
source=("http://downloads.sourceforge.net/sabnzbdplus/${_pkgname}-${pkgver}-src.tar.gz"
"${pkgname}" "${pkgname}.confd" "${pkgname}.init" "${pkgname}.desktop"
"addnzb.sh" "nzb-2.png" "sab2_64.png" "x-nzb.xml" "${pkgname}.service" "${pkgname}_systemd.confd" "${pkgname}.tmp")
md5sums=('6c5e24b4dc9fa3004e4724845afe2cae'
"${pkgname}" "${pkgname}.desktop" "addnzb.sh" "nzb-2.png" "sab2_64.png" "x-nzb.xml" "${pkgname}.service" "${pkgname}.confd")
md5sums=('175edddbdcc8b2be51f0987c19bff0ae'
'48d60a1c626503c7fef1bc5374390513'
'7d7ae7cca08e90582587773da3b55de8'
'848c7b117388671f243bd0833ff41f89'
'f9bd5485072714b11f8c30a28024dc4d'
'c0d52ba8d47f731790cd717fde46b829'
'69b9bcbcf67ff3e7a4cdd9f26e001341'
'2a49c07b1e3e6448eabe92644315f983'
'fdc878dd0f6f25617e627b04409abbbd'
'11fb2cd1451e3725b08bfc2bd045be54'
'7c2971c330fc131e75ad55979231edff'
'321a56d66a971c833677a54bc3f1060d'
'1ced962fabe7f5392e32828429b93d04')
'd64b7a6609279a6ba1fcb04e8f36dcd1'
'8fc2607a7961fc643ef4f6640166322a')
package() {
mkdir -p "${pkgdir}/opt/${pkgname}"
@ -40,10 +37,7 @@ package() {
chmod 755 "${pkgdir}/opt/${pkgname}/Sample-PostProc.sh"
install -Dm755 "${srcdir}/${pkgname}" "${pkgdir}/usr/bin/${pkgname}"
install -Dm755 "${srcdir}/${pkgname}.init" "${pkgdir}/etc/rc.d/${pkgname}"
install -Dm644 "${srcdir}/${pkgname}.confd" "${pkgdir}/etc/conf.d/${pkgname}"
install -Dm644 "${srcdir}/${pkgname}_systemd.confd" "${pkgdir}/etc/conf.d/${pkgname}_systemd"
install -Dm644 "${srcdir}/${pkgname}.tmp" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"
install -Dm644 "${srcdir}/${pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service"
install -Dm755 "${srcdir}/${pkgname}.desktop" \
"${pkgdir}/usr/share/applications/${pkgname}.desktop"

View file

@ -1,14 +1,4 @@
#!/bin/bash
set -a # export all variables
#!/bin/sh
. /etc/conf.d/sabnzbd
# SABnzbd must be able to read the file, so we copy it to a directory where it
# certainly has rights.
nzbname=$(basename "$1")
TEMP_NZB="/var/tmp/$nzbname"
curl -s $(python2 -c 'import urlparse,urllib,sys; print sys.argv[1] if urlparse.urlparse(sys.argv[1]).scheme else urlparse.urlparse(urllib.pathname2url(sys.argv[1]),"file").geturl()' "$1") -o "$TEMP_NZB"
curl -f $(python2 -c 'import urllib,os; print os.environ["SABNZBD_PROTOCOL"]+"://"+urllib.quote(os.environ["SABNZBD_USPW"]+os.environ["SABNZBD_IP"])+":"+os.environ["SABNZBD_PORT"]+"/sabnzbd/api?mode=addlocalfile&name="+urllib.quote(os.environ["TEMP_NZB"])+"&apikey="+urllib.quote(os.environ["NZB_KEY"])')
rm "$TEMP_NZB"
exit 0
. /etc/conf.d/sabnzbd
curl -s -F apikey="$API_KEY" -F mode="addfile" -F name=@"$1" $URL/sabnzbd/api &> /dev/null

View file

@ -1,23 +1,8 @@
# Set the protocol, IP and port
SABNZBD_PROTOCOL="http"
SABNZBD_IP="127.0.0.1"
SABNZBD_PORT="8080"
# This file is used to make association of .nzb files with SABnzbd possible.
# If you do not want this feature, you do no have to fill in these settings.
# Set your default user/group(id), startarguments and your configfile
USE_SYSTEM_IDS="1"
SABNZBD_DIR="/opt/sabnzbd"
#SABNZBD_UID="423"
#SABNZBD_GID="423"
SABNZBD_USER="sabnzbd"
SABNZBD_GROUP="sabnzbd"
#SABNZBD_AGROUP="users" # separate groups by ,
SABNZBD_CONF="${SABNZBD_DIR}/sabnzbd.ini"
SABNZBD_ARGS="-f ${SABNZBD_CONF} -s ${SABNZBD_IP}:${SABNZBD_PORT} -d"
# The SABnzbd url. Make sure to add a username and password if required
URL="http://127.0.0.1:8080"
# Put the session keys from Config > General here
SABNZBD_KEY=""
NZB_KEY=""
# If you use a username and password, change the following variable to
# "user:pass@"
SABNZBD_USPW=""
# Put the API key from Config > General here
API_KEY=""

View file

@ -1,7 +1,13 @@
# Change these to modify the ownership of sabnzbd
# If you change this here, you also have to change
# the user and group in the systemd service file.
SABNZBD_USER="sabnzbd"
SABNZBD_GROUP="sabnzbd"
SABNZBD_DIR="/opt/sabnzbd" # should not be changed
## arg 1: the new package version
post_install() {
. /etc/conf.d/sabnzbd
# add x-nzb mimetype
xdg-mime install --mode system "${SABNZBD_DIR}/x-nzb.xml"
xdg-icon-resource install --context mimetypes --size 64 "${SABNZBD_DIR}/nzb-2.png" application-x-nzb
@ -9,8 +15,6 @@ post_install() {
post_upgrade
cat << "EOM"
==> Don't forget to edit /etc/conf.d/sabnzbd or /etc/conf.d/sabnzbd_systemd!
==> Add your Session key and if necessary your username and password to ensure a proper shutdown.
==> If you want to associate .nzb-files with SABnzbd, run 'xdg-mime default sabnzbd.desktop applications/x-nzb'
EOM
}
@ -19,76 +23,31 @@ EOM
## arg 2: the old package version
pre_upgrade() {
PID="$(pgrep -f SABnzbd.py)"
if [ -f /run/daemons/sabnzbd ]; then
/etc/rc.d/sabnzbd stop # kill the daemon
if [ -n "${PID}" ];then
kill "${PID}" # kill the daemon finaly
fi
fi
if [[ -d "/run/sabnzbd/" && "$(ls -A /run/sabnzbd/)" ]]; then
if [ -n "${PID}" ];then
systemctl stop sabnzbd.service
fi
}
## arg 1: the new package version
## arg 2: the old package version
post_upgrade() {
. /etc/conf.d/sabnzbd
# if the group or user already exists, the request will be denied
# and all original settings will be retained
if [ "$SABNZBD_GROUP" == "sabnzbd" ]; then
groupadd -r sabnzbd &> /dev/null
fi
if [ "${USE_SYSTEM_IDS}" == "1" ]; then
if grep -q "^sabnzbd:" /etc/group &> /dev/null; then
if grep -q "^SABNZBD_GID=" /etc/conf.d/sabnzbd &> /dev/null; then
groupmod -g "${SABNZBD_GID}" -n sabnzbd sabnzbd &> /dev/null
else
groupmod -r -n sabnzbd sabnzbd &> /dev/null
fi
else
if grep -q "^SABNZBD_GID=" /etc/conf.d/sabnzbd &> /dev/null; then
groupadd -g "${SABNZBD_GID}" sabnzbd &> /dev/null
else
groupadd -r sabnzbd &> /dev/null
fi
fi
if grep -q "^SABNZBD_AGROUP=" /etc/conf.d/sabnzbd &> /dev/null; then
SABNZBD_GS="-G ${SABNZBD_AGROUP}"
else
SABNZBD_GS=""
fi
if grep -q "^sabnzbd:" /etc/passwd 2> /dev/null; then
if grep -q "^SABNZBD_UID=" /etc/conf.d/sabnzbd &> /dev/null; then
usermod -s /sbin/nologin -c "SABnzbd user" -d "${SABNZBD_DIR}" \
-u "${SABNZBD_UID}" -g sabnzbd ${SABNZBD_GS} sabnzbd &> /dev/null
else
usermod -s /sbin/nologin -c "SABnzbd user" -d "${SABNZBD_DIR}" \
-g sabnzbd ${SABNZBD_GS} -r sabnzbd &> /dev/null
fi
else
if grep -q "^SABNZBD_UID=" /etc/conf.d/sabnzbd &> /dev/null; then
useradd -s /sbin/nologin -c "SABnzbd user" -d "${SABNZBD_DIR}" \
-u ${SABNZBD_UID} -g sabnzbd "${SABNZBD_GS}" -r sabnzbd &> /dev/null
else
useradd -s /sbin/nologin -c "SABnzbd user" -d "${SABNZBD_DIR}" \
-g sabnzbd ${SABNZBD_GS} -r sabnzbd &> /dev/null
fi
fi
if [ "$SABNZBD_USER" == "sabnzbd" ]; then
useradd -s /sbin/nologin -c "SABnzbd user" -d "${SABNZBD_DIR}" \
-g sabnzbd -r sabnzbd &> /dev/null
fi
chown -R "${SABNZBD_USER}:${SABNZBD_GROUP}" "${SABNZBD_DIR}"
if command -v "systemd-tmpfiles" &> /dev/null; then
systemd-tmpfiles --create /usr/lib/tmpfiles.d/sabnzbd.conf
fi
}
## arg 1: the old package version
pre_remove() {
. /etc/conf.d/sabnzbd
pre_upgrade
xdg-mime uninstall --mode system "${SABNZBD_DIR}/x-nzb.xml"
@ -97,9 +56,10 @@ pre_remove() {
## arg 1: the old package version
post_remove() {
userdel sabnzbd &> /dev/null
# only delete if user is sabnzbd
userdel sabnzbd &> /dev/null
groupdel sabnzbd &> /dev/null || /bin/true
echo "==> There may be some files left in /opt/sabnzbd."
echo "==> There may be some files left in ${SABNZBD_DIR}."
}
# vim:set ts=2 sw=2 et:

View file

@ -1,12 +1,10 @@
[Unit]
Description=SABnzbd binary newsreader
After=network.target
[Service]
EnvironmentFile=/etc/conf.d/sabnzbd_systemd
ExecStart=/bin/sh/ -c "python2 ${SABNZBD_DIR}/SABnzbd.py ${SABNZBD_ARGS} --pid /run/sabnzbd"
ExecStop=/usr/bin/curl -f "${SABNZBD_PROTOCOL}://${SABNZBD_USPW}${SABNZBD_IP}:${SABNZBD_PORT}/sabnzbd/api?mode=shutdown&apikey=${SABNZBD_KEY}"
Type=forking
PIDFile=/run/sabnzbd/sabnzbd-8080.pid
Type=simple
ExecStart=/bin/sh -c "python2 /opt/sabnzbd/SABnzbd.py -l0"
User=sabnzbd
Group=sabnzbd

View file

@ -1,11 +1,11 @@
# Maintainer: sudokode <sudokode@gmail.com>>
# Maintainer: sudokode <sudokode@gmail.com>
# Previous Maintainer: Crass00 <crass00 at hotmail dot com>
# Previous Maintainer: Superstar655 <choman000 at hotmail dot com>
# Contributor: Augusto Born de Oliveira <augustoborn at gmail dot com>
pkgname=sickbeard-git
pkgver=20120724
pkgrel=1
pkgver=20121109
pkgrel=2
pkgdesc="A PVR application that downloads and manages your TV shows"
arch=(any)
url="http://code.google.com/p/sickbeard/"
@ -13,15 +13,15 @@ license=(GPL3)
depends=(python2 python2-cheetah)
makedepends=(git)
optdepends=('sabnzbd: NZB downloader'
'python-notify: desktop notifications')
'python-notify: desktop notifications')
install=sickbeard.install
backup=('etc/conf.d/sickbeard')
conflicts=(sickbeard)
source=('sickbeard' 'sickbeard.init' 'sickbeard.confd' 'sickbeard.service' 'sickbeard.tmpfile')
md5sums=('67f346e3e217c38db3f5f9250a2f3fa2'
'276747cb646524bbee02e1b1c7cd537c'
'b9ab9c22027905338b8edda3531f48f2'
'17964f6ca27e2fe7936888edd447d2d7'
source=('sickbeard.init' 'sickbeard.confd' 'sickbeard-system.service' 'sickbeard-user.service' 'sickbeard.tmpfile')
md5sums=('276747cb646524bbee02e1b1c7cd537c'
'b98110609108a554e8349552dc84ea9f'
'a80cd5ff963fd75b5d65a8671b21d831'
'2455963553a4ca61957fc61e509a9d15'
'08bbd75c6cf2ef3e4797d9221f0ce385')
_gitroot="git://github.com/midgetspy/Sick-Beard.git"
@ -45,14 +45,15 @@ build() {
package() {
mkdir -p "${pkgdir}/opt/"
cp -r "$srcdir/$_gitname" "${pkgdir}/opt/sickbeard"
chmod 775 "${pkgdir}/opt/sickbeard"
sed -i 's/python/python2/g' "${pkgdir}/opt/sickbeard/autoProcessTV/sabToSickBeard.py"
sed -i 's/python/python2/g' "${pkgdir}/opt/sickbeard/autoProcessTV/hellaToSickBeard.py"
install -D -m755 "${srcdir}/sickbeard" "${pkgdir}/usr/bin/sickbeard"
install -D -m755 "${srcdir}/sickbeard.init" "${pkgdir}/etc/rc.d/sickbeard"
install -D -m644 "${srcdir}/sickbeard.confd" "${pkgdir}/etc/conf.d/sickbeard"
install -D -m644 "${srcdir}/sickbeard.service" "${pkgdir}/usr/lib/systemd/system/sickbeard.service"
install -D -m644 "${srcdir}/sickbeard-system.service" "${pkgdir}/usr/lib/systemd/system/sickbeard.service"
install -D -m644 "${srcdir}/sickbeard-user.service" "${pkgdir}/usr/lib/systemd/user/sickbeard.service"
install -D -m644 "${srcdir}/sickbeard.tmpfile" "${pkgdir}/usr/lib/tmpfiles.d/sickbeard.conf"
}

View file

@ -0,0 +1,11 @@
[Unit]
Description=SickBeard Daemon
After=network.target
[Service]
User=sickbeard
Group=sickbeard
ExecStart=/usr/bin/env python2 /opt/sickbeard/SickBeard.py --config /opt/sickbeard/config.ini --datadir /opt/sickbeard
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1,8 @@
[Unit]
Description=SickBeard Daemon
[Service]
ExecStart=/usr/bin/env python2 /opt/sickbeard/SickBeard.py --config %h/.sickbeard/config.ini --datadir %h/.sickbeard
[Install]
WantedBy=default.target

View file

@ -4,6 +4,7 @@
# Leave blank to run as the current user (likely root).
# If you change the user, you must now modify the sickbeard tmpfiles config file.
# To do that, copy /usr/lib/tmpfiles.d/sickbeard.conf to /etc/tmpfiles.d/sickbeard.conf and modify the user in that file.
# You also need to change the datadir to somewhere writable by that user by adding it to the SB_ARGS, e.g. --datadir=/home/$USER/.sickbeard
SB_USER="sickbeard"
# Sick Beard arguments

View file

@ -13,7 +13,7 @@ post_install() {
groupadd sickbeard &> /dev/null
useradd -g sickbeard -d /opt/sickbeard -s /bin/false sickbeard &> /dev/null
chown -R sickbeard:sickbeard /opt/sickbeard
chgrp -R sickbeard /opt/sickbeard
# sed -i 's/^if isinstance(sys.version_info, tuple):$/if isinstance(sys.version_info[:], tuple):/g' "/usr/lib/python2.7/site-packages/Cheetah/Template.py"
# Create a directory in /run if it does not exist
@ -22,11 +22,17 @@ post_install() {
chown sickbeard:sickbeard /run/sickbeard
chmod 775 /run/sickbeard
fi
echo "You can now run sickbeard as a user service with 'systemctl --user start sickbeard'."
echo "To make this work, first run 'mkdir ~/.sickbeard'. This will run sickbeard as your user."
echo "The system service will run it as the sickbeard user."
echo "If you have a previous install and want to keep the same show database, cache, etc., you can"
echo "run 'cp -r /opt/sickbeard/{Logs,cache,cache.db,config.ini,sickbeard.db} ~/.sickbeard'."
}
## arg 1: the new package version
## arg 2: the old package version
post_upgrade() {
chown -R sickbeard:sickbeard /opt/sickbeard
chgrp -R sickbeard /opt/sickbeard
sed -i 's/^if isinstance(sys.version_info, tuple):$/if isinstance(sys.version_info[:], tuple):/g' "/usr/lib/python2.7/site-packages/Cheetah/Template.py"
# Create a directory in /run if it does not exist
@ -36,6 +42,11 @@ post_upgrade() {
chmod 775 /run/sickbeard
fi
echo "You can now run sickbeard as a user service with 'systemctl --user start sickbeard'."
echo "To make this work, first run 'mkdir ~/.sickbeard'. This will run sickbeard as your user."
echo "The system service will run it as the sickbeard user."
echo "If you have a previous install and want to keep the same show database, cache, etc., you can"
echo "run 'cp -r /opt/sickbeard/{Logs,cache,cache.db,config.ini,sickbeard.db} ~/.sickbeard'."
}
## arg 1: the old package version

View file

@ -1,13 +1,13 @@
# Maintainer: Michael Frey <mail@mfrey.net>
pkgname=uthash
pkgver=1.9.6
pkgver=1.9.7
pkgrel=1
pkgdesc="uthash provides C preprocessor implementations of a hash table and a linked list"
arch=('any')
url="http://uthash.sourceforge.net/"
license=('BSD')
source=(http://downloads.sourceforge.net/uthash/$pkgname-$pkgver.tar.bz2)
sha512sums=('ff03644b5e7cdf59a87e856052c84f68ee15c343b6d83a286f68a1b5aabed40e1f4bebc063602e0840954db391354c9078a29811a47aa901aac1cc23ab35018f')
sha512sums=('8c02f9ac846a6bfd7292724a3683ae360ff37bba8e3ca98fca106da84976cac9c61766069989ee2c633b20bf82b64658400687a7cfbccab5e98e5fb6cb2e5caa')
package() {
cd "${srcdir}/${pkgname}-${pkgver}/src"

View file

@ -1,34 +1,45 @@
buildarch=6
# Maintainer: Jeff Cook <jeff@deserettechnology.com>
# Contributor: Jeff Cook <jeff@deserettechnology.com>
# Contributor: Michael Asher < michael at we solve every thing dot com >
# Contributor: William Díaz <wdiaz@archlinux.us>
# Contributor: William Díaz <wdiaz@archlinux.us>
# Maintainer: vwyodajl <donjuansjiz GmaIL com>
### I AM ONLY THE PACKAGER, NOT THE DEVELOPER
### Please ask support questions about this software in one of:
### 1) The AUR comments; OR
### 2) Upstream forums/maillist etc; OR
### 3) The ArchLinux forums
### I do not always know enough about the software itself, or don't have the
### time to promptly respond to direct emails.
### If you have found a problem with the package/PKGBUILD (as opposed to
### the software) then please do email me or post an AUR comment.
pkgname=uuid
pkgver=1.6.2
pkgrel=8
pkgrel=11
pkgdesc="OSSP Universally Unique Identifier"
arch=('i686' 'x86_64')
url="http://www.ossp.org/pkg/lib/uuid"
license=('MIT')
depends=('sh')
makedepends=('perl')
options=('libtool')
options=('!libtool')
source=("http://old-www.mirrorservice.org/sites/ftp.ossp.org/pkg/lib/${pkgname}/${pkgname}-${pkgver}.tar.gz"
makefile.patch)
ossp.patch)
md5sums=('5db0d43a9022a6ebbbc25337ae28942f'
'6936c429a4ed735ebc36adcf66bb1637')
'6f0591cfa3e6d5f70c290963d2c5a0a0')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
patch -p1 < ${srcdir}/makefile.patch
cd ${pkgname}-${pkgver}
# Rename because conflicts with util-linux
patch -p1 -i "${srcdir}"/ossp.patch
./configure --prefix=/usr --with-perl
make
}
package() {
cd ${srcdir}/${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
install -Dm644 README \
"${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}

207
aur/uuid/ossp.patch Normal file
View file

@ -0,0 +1,207 @@
diff -up uuid-1.6.1/uuid-config.in.BAD uuid-1.6.1/uuid-config.in
--- uuid-1.6.1/uuid-config.in.BAD 2008-03-06 11:56:13.000000000 -0500
+++ uuid-1.6.1/uuid-config.in 2008-03-06 11:56:25.000000000 -0500
@@ -121,7 +121,7 @@ do
output_extra="$output_extra $uuid_ldflags"
;;
--libs)
- output="$output -luuid"
+ output="$output -lossp-uuid"
output_extra="$output_extra $uuid_libs"
;;
* )
diff -up uuid-1.6.1/Makefile.in.BAD uuid-1.6.1/Makefile.in
--- uuid-1.6.1/Makefile.in.BAD 2008-03-06 11:10:13.000000000 -0500
+++ uuid-1.6.1/Makefile.in 2008-03-06 11:11:39.000000000 -0500
@@ -62,13 +62,13 @@ PERL = @PERL@
PHP = @PHP@
PG_CONFIG = @PG_CONFIG@
-LIB_NAME = libuuid.la
+LIB_NAME = libossp-uuid.la
LIB_OBJS = uuid.lo uuid_md5.lo uuid_sha1.lo uuid_prng.lo uuid_mac.lo uuid_time.lo uuid_ui64.lo uuid_ui128.lo uuid_str.lo
-DCE_NAME = libuuid_dce.la
+DCE_NAME = libossp-uuid_dce.la
DCE_OBJS = uuid_dce.lo $(LIB_OBJS)
-CXX_NAME = libuuid++.la
+CXX_NAME = libossp-uuid++.la
CXX_OBJS = uuid++.lo $(LIB_OBJS)
PRG_NAME = uuid
@@ -79,10 +79,10 @@ MAN_NAME = uuid.3 uuid++.3 uuid.1
PERL_NAME = $(S)/perl/blib/lib/OSSP/uuid.pm
PERL_OBJS = $(S)/perl/uuid.pm
-PHP_NAME = $(S)/php/modules/uuid.so
+PHP_NAME = $(S)/php/modules/ossp-uuid.so
PHP_OBJS = $(S)/php/uuid.c
-PGSQL_NAME = $(S)/pgsql/libuuid.so
+PGSQL_NAME = $(S)/pgsql/libossp-uuid.so
PGSQL_OBJS = $(S)/pgsql/uuid.c
TARGETS = $(LIB_NAME) @DCE_NAME@ @CXX_NAME@ $(PRG_NAME) @PERL_NAME@ @PHP_NAME@ @PGSQL_NAME@
@@ -231,7 +231,7 @@ install:
$(SHTOOL) mkdir -f -p -m 755 $(DESTDIR)$(mandir)/man1
$(SHTOOL) install -c -m 755 uuid-config $(DESTDIR)$(bindir)/
$(SHTOOL) install -c -m 644 $(S)/uuid-config.1 $(DESTDIR)$(mandir)/man1/
- $(SHTOOL) install -c -m 644 $(S)/uuid.pc $(DESTDIR)$(libdir)/pkgconfig/
+ $(SHTOOL) install -c -m 644 $(S)/uuid.pc $(DESTDIR)$(libdir)/pkgconfig/ossp-uuid.pc
$(SHTOOL) install -c -m 644 uuid.h $(DESTDIR)$(includedir)/
-@if [ ".$(WITH_DCE)" = .yes ]; then \
echo "$(SHTOOL) install -c -m 644 $(S)/uuid_dce.h $(DESTDIR)$(includedir)/"; \
@@ -241,7 +241,7 @@ install:
echo "$(SHTOOL) install -c -m 644 $(S)/uuid++.hh $(DESTDIR)$(includedir)/"; \
$(SHTOOL) install -c -m 644 $(S)/uuid++.hh $(DESTDIR)$(includedir)/; \
fi
- $(SHTOOL) install -c -m 644 $(S)/uuid.3 $(DESTDIR)$(mandir)/man3/
+ $(SHTOOL) install -c -m 644 $(S)/uuid.3 $(DESTDIR)$(mandir)/man3/ossp-uuid.3
-@if [ ".$(WITH_CXX)" = .yes ]; then \
echo "$(SHTOOL) install -c -m 644 $(S)/uuid++.3 $(DESTDIR)$(mandir)/man3/"; \
$(SHTOOL) install -c -m 644 $(S)/uuid++.3 $(DESTDIR)$(mandir)/man3/; \
@@ -276,7 +276,7 @@ uninstall:
-@if [ ".$(WITH_CXX)" = .yes ]; then \
$(LIBTOOL) --mode=uninstall $(RM) $(DESTDIR)$(libdir)/$(CXX_NAME); \
fi
- -$(RM) $(DESTDIR)$(mandir)/man3/uuid.3
+ -$(RM) $(DESTDIR)$(mandir)/man3/ossp-uuid.3
-@if [ ".$(WITH_CXX)" = .yes ]; then \
echo "$(RM) $(DESTDIR)$(mandir)/man3/uuid++.3"; \
$(RM) $(DESTDIR)$(mandir)/man3/uuid++.3; \
@@ -290,7 +290,7 @@ uninstall:
echo "$(RM) $(DESTDIR)$(includedir)/uuid++.hh"; \
$(RM) $(DESTDIR)$(includedir)/uuid++.hh; \
fi
- -$(RM) $(DESTDIR)$(libdir)/pkgconfig/uuid.pc
+ -$(RM) $(DESTDIR)$(libdir)/pkgconfig/ossp-uuid.pc
-$(RM) $(DESTDIR)$(mandir)/man1/uuid-config.1
-$(RM) $(DESTDIR)$(bindir)/uuid-config
-$(RMDIR) $(DESTDIR)$(mandir)/man1 >/dev/null 2>&1 || $(TRUE)
diff -up uuid-1.6.1/pgsql/Makefile.BAD uuid-1.6.1/pgsql/Makefile
--- uuid-1.6.1/pgsql/Makefile.BAD 2008-03-06 11:53:26.000000000 -0500
+++ uuid-1.6.1/pgsql/Makefile 2008-03-06 11:54:14.000000000 -0500
@@ -18,13 +18,13 @@ POSTGRES := $(shell $(PG_CONFIG
top_builddir := $(dir $(PGXS))../..
include $(top_builddir)/src/Makefile.global
-NAME = uuid
+NAME = ossp-uuid
OBJS = uuid.o
SO_MAJOR_VERSION = 1
SO_MINOR_VERSION = 0
override CPPFLAGS := -I.. $(CPPFLAGS)
-SHLIB_LINK := -L../.libs -luuid
+SHLIB_LINK := -L../.libs -lossp-uuid
SHLIB_LINK += $(shell test $(shell uname -s) = FreeBSD && echo "-Wl,-Bsymbolic")
SHLIB_LINK += $(shell test $(shell uname -s) = Darwin && echo "-bundle_loader $(POSTGRES)")
rpath :=
@@ -35,16 +35,16 @@ enable_shared = yes
include $(top_builddir)/src/Makefile.shlib
uuid.sql: uuid.sql.in
- sed -e 's;MODULE_PATHNAME;$(DESTDIR)$(pkglibdir)/uuid$(DLSUFFIX);g' <uuid.sql.in >uuid.sql
+ sed -e 's;MODULE_PATHNAME;$(DESTDIR)$(pkglibdir)/ossp-uuid$(DLSUFFIX);g' <uuid.sql.in >uuid.sql
install: all
$(mkinstalldirs) $(DESTDIR)$(pkglibdir)
$(mkinstalldirs) $(DESTDIR)$(datadir)
- $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/uuid$(DLSUFFIX)
+ $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/ossp-uuid$(DLSUFFIX)
$(INSTALL_DATA) uuid.sql $(DESTDIR)$(datadir)/uuid.sql
uninstall:
- -rm -f $(DESTDIR)$(pkglibdir)/uuid$(DLSUFFIX)
+ -rm -f $(DESTDIR)$(pkglibdir)/ossp-uuid$(DLSUFFIX)
-rm -f $(DESTDIR)$(datadir)/uuid.sql
clean distclean: clean-lib
diff -up uuid-1.6.1/uuid.pc.in.BAD uuid-1.6.1/uuid.pc.in
--- uuid-1.6.1/uuid.pc.in.BAD 2008-03-06 11:57:29.000000000 -0500
+++ uuid-1.6.1/uuid.pc.in 2008-03-06 11:57:36.000000000 -0500
@@ -37,6 +37,6 @@ Description: Universally Unique Identifi
Version: @UUID_VERSION_RAW@
URL: http://www.ossp.org/pkg/lib/uuid/
Cflags: -I${includedir}
-Libs: -L${libdir} -luuid
+Libs: -L${libdir} -lossp-uuid
Libs.private: @LIBS@
diff -up uuid-1.6.1/perl/Makefile.PL.BAD uuid-1.6.1/perl/Makefile.PL
--- uuid-1.6.1/perl/Makefile.PL.BAD 2008-03-06 11:12:05.000000000 -0500
+++ uuid-1.6.1/perl/Makefile.PL 2008-03-06 11:49:25.000000000 -0500
@@ -33,9 +33,9 @@ use Config;
use ExtUtils::MakeMaker;
# determine source directory
-my ($srcdir) = map { my $d = $_; $d =~ s/\/libuuid\.la$//; $d }
- grep { -f $_ } ("../libuuid.la", glob("../*/libuuid.la"))
- or die "no source directory found (where libuuid.la is located)";
+my ($srcdir) = map { my $d = $_; $d =~ s/\/libossp-uuid\.la$//; $d }
+ grep { -f $_ } ("../libossp-uuid.la", glob("../*/libossp-uuid.la"))
+ or die "no source directory found (where libossp-uuid.la is located)";
# determine extra build options
my $compat = 0;
@@ -47,7 +47,7 @@ WriteMakefile(
VERSION_FROM => 'uuid.pm',
ABSTRACT_FROM => 'uuid.pod',
PREREQ_PM => {},
- LIBS => [ "-L$srcdir/.libs -L$srcdir -luuid" ],
+ LIBS => [ "-L$srcdir/.libs -L$srcdir -lossp-uuid" ],
DEFINE => '',
INC => "-I. -I$srcdir",
PM => { 'uuid.pm' => '$(INST_LIBDIR)/uuid.pm',
diff -up uuid-1.6.1/Makefile.PL.BAD uuid-1.6.1/Makefile.PL
--- uuid-1.6.1/Makefile.PL.BAD 2008-03-06 11:09:49.000000000 -0500
+++ uuid-1.6.1/Makefile.PL 2008-03-06 11:10:01.000000000 -0500
@@ -44,7 +44,7 @@ ARGS = $ARGS
all pure_all:
\@if [ ! -d build ]; then mkdir build; fi
\@if [ ! -f build/Makefile ]; then (cd build && ../configure --disable-shared); fi
- \@if [ ! -f build/libuuid.la ]; then (cd build && \$(MAKE) \$(MFLAGS) libuuid.la); fi
+ \@if [ ! -f build/libossp-uuid.la ]; then (cd build && \$(MAKE) \$(MFLAGS) libossp-uuid.la); fi
\@if [ ! -f perl/Makefile ]; then (cd perl && \$(PERL) Makefile.PL \$(ARGS)); fi
\@cd perl && \$(MAKE) \$(MFLAGS) \$\@
diff -up uuid-1.6.1/php/config.m4.BAD uuid-1.6.1/php/config.m4
--- uuid-1.6.1/php/config.m4.BAD 2008-03-06 11:54:55.000000000 -0500
+++ uuid-1.6.1/php/config.m4 2008-03-06 11:55:07.000000000 -0500
@@ -34,7 +34,7 @@ if test "$PHP_UUID" != "no"; then
PHP_NEW_EXTENSION(uuid, uuid.c, $ext_shared)
AC_DEFINE(HAVE_UUID, 1, [Have OSSP uuid library])
PHP_ADD_LIBPATH([..], )
- PHP_ADD_LIBRARY([uuid],, UUID_SHARED_LIBADD)
+ PHP_ADD_LIBRARY([ossp-uuid],, UUID_SHARED_LIBADD)
PHP_ADD_INCLUDE([..])
PHP_SUBST(UUID_SHARED_LIBADD)
diff -up uuid-1.6.1/php/Makefile.local.BAD uuid-1.6.1/php/Makefile.local
--- uuid-1.6.1/php/Makefile.local.BAD 2008-03-06 11:54:39.000000000 -0500
+++ uuid-1.6.1/php/Makefile.local 2008-03-06 11:54:49.000000000 -0500
@@ -48,7 +48,7 @@ install: build
@version=`$(PHP)-config --version | sed -e 's;^\([0-9]\).*$$;\1;'`; extdir="$(EXTDIR)"; \
echo "installing PHP$$version API into $$extdir"; \
./build/shtool mkdir -f -p -m 755 $(DESTDIR)$$extdir; \
- ./build/shtool install -c -m 755 modules/uuid.so $(DESTDIR)$$extdir/uuid.so; \
+ ./build/shtool install -c -m 755 modules/uuid.so $(DESTDIR)$$extdir/ossp-uuid.so; \
./build/shtool install -c -m 644 uuid.php$$version $(DESTDIR)$$extdir/uuid.php
clean:
diff -up uuid-1.6.1/php/uuid.ts.BAD uuid-1.6.1/php/uuid.ts
--- uuid-1.6.1/php/uuid.ts.BAD 2008-03-06 11:55:38.000000000 -0500
+++ uuid-1.6.1/php/uuid.ts 2008-03-06 11:56:03.000000000 -0500
@@ -34,9 +34,9 @@
$php_version = $argv[1];
-print "++ loading DSO uuid.so (low-level API)\n";
+print "++ loading DSO ossp-uuid.so (low-level API)\n";
if (!extension_loaded('uuid')) {
- dl('modules/uuid.so');
+ dl('modules/ossp-uuid.so');
}
print "++ loading PHP uuid.php${php_version} (high-level API)\n";

View file

@ -1,102 +0,0 @@
# Contributor tomasgroth at yahoo.dk
# Contributor WarheadsSE <max@warheads.net>
pkgname=xbmc-rbp-git-next
pkgver=20121130
pkgrel=1
buildarch=16
pkgdesc="A software media player and entertainment hub for digital media for the Raspberry Pi"
arch=('armv6h')
url="http://xbmc.org"
license=('GPL' 'custom')
depends=('hicolor-icon-theme' 'fribidi' 'lzo2' 'smbclient' 'libtiff' 'libva' 'libpng' 'libcdio' 'yajl' 'libmysqlclient' 'libjpeg-turbo' 'libsamplerate' 'libssh' 'libmicrohttpd' 'sdl_image' 'python2' 'libass' 'libmpeg2' 'libmad' 'libmodplug' 'jasper' 'rtmpdump' 'unzip' 'xorg-xdpyinfo' 'libbluray' 'libnfs' 'afpfs-ng' 'libshairport' 'avahi' 'bluez' 'tinyxml' 'raspberrypi-firmware-next' 'libcec-rpi' 'libplist' 'swig' 'taglib' 'ffmpeg')
makedepends=('boost' 'cmake' 'gperf' 'nasm' 'zip' 'udisks' 'upower' 'bluez' 'git' 'autoconf' 'openjdk6' 'raspberrypi-firmware-next')
optdepends=(
'lirc: remote controller support'
'udisks: automount external drives'
'upower: used to trigger suspend functionality'
'unrar: access compressed files without unpacking them'
)
source=(xbmc-ae04d99-321-texturepacker-hostflags-and-rework.patch)
md5sums=('fc6a925a09ba1b13d84daf1121b42ab9')
_gitroot="git://github.com/xbmc"
_gitname="xbmc"
_prefix=/usr
provides=('xbmc-rbp-git')
conflicts=('xbmc-rbp-git')
build() {
cd "${srcdir}"
msg2 "Connecting to GIT server..."
if [[ -d "${_gitname}" ]]; then
cd "${_gitname}" && git pull origin
msg2 "The local files are updated."
else
git clone --depth 1 "${_gitroot}/${_gitname}"
fi
msg2 "GIT checkout done or server timeout."
cd "${srcdir}/${_gitname}"
# fix lsb_release dependency
sed -i -e 's:/usr/bin/lsb_release -d:cat /etc/arch-release:' xbmc/utils/SystemInfo.cpp
# Patch to fix TexturePacker build.
patch -i ${srcdir}/xbmc-ae04d99-321-texturepacker-hostflags-and-rework.patch -p1
# Bootstrapping XBMC
./bootstrap
# Configuring XBMC
export PYTHON_VERSION=2 # external python v2
# we need to compile for armv6 instead of armv5 to avoid problems compiling assembler code
export CFLAGS="-O3 -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -mabi=aapcs-linux -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -I/opt/vc/include/ -I/opt/vc/include/IL -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux/"
export CXXFLAGS="-O3 -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -mabi=aapcs-linux -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -I/opt/vc/include/ -I/opt/vc/include/IL -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux/"
export LDFLAGS="$LDFLAGS -L/opt/vc/lib"
# export MAKEFLAGS="-j1"
./configure --prefix=$_prefix --exec-prefix=$_prefix \
--enable-gles --disable-sdl --disable-x11 --disable-xrandr --disable-openmax \
--disable-optical-drive --disable-dvdcss --disable-joystick --disable-debug \
--disable-crystalhd --disable-vtbdecoder --disable-vaapi --disable-vdpau \
--disable-pulse --disable-projectm --with-platform=raspberry-pi --enable-optimizations \
--enable-libcec --enable-player=omxplayer --enable-external-ffmpeg
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
# Remove checks that doesn't apply to the raspberry pi
head -n 171 "${pkgdir}${_prefix}/share/xbmc/FEH.py" > "${pkgdir}${_prefix}/share/xbmc/FEH.py.new"
mv "${pkgdir}${_prefix}/share/xbmc/FEH.py.new" "${pkgdir}${_prefix}/share/xbmc/FEH.py"
# 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}/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
# Create lib links
mkdir -p "${pkgdir}"/etc/ld.so.conf.d/
# ensure we can load libs
echo "/opt/vc/lib/" > "${pkgdir}"/etc/ld.so.conf.d/xbmc-rbp-git.conf
}

View file

@ -1,169 +0,0 @@
diff -Naur xbmc-frodo-0ff0d2e/configure.in xbmc-frodo-0ff0d2e.patch/configure.in
--- xbmc-frodo-0ff0d2e/configure.in 2012-10-11 15:45:44.000000000 +0200
+++ xbmc-frodo-0ff0d2e.patch/configure.in 2012-10-11 16:49:08.872850880 +0200
@@ -452,6 +452,12 @@
[use_texturepacker=$enableval],
[use_texturepacker=auto])
+AC_ARG_WITH([texturepacker-root],
+ [AS_HELP_STRING([--with-texturepacker-root],
+ [root dir to search for librarys and includes if building native TexturePacker (default is \$prefix)])],
+ [use_texturepacker_root=$withval],
+ [use_texturepacker_root=$prefix])
+
AC_ARG_WITH([lirc-device],
[AS_HELP_STRING([--with-lirc-device=file],
[specify the default LIRC device (default is /dev/lircd)])],
@@ -2000,13 +2006,13 @@
USE_TEXTUREPACKER_NATIVE=0
if test "x$use_texturepacker" != "xno"; then
- final_message="$final_message\n TexturePacker:Yes"
USE_TEXTUREPACKER=1
- if test "x$use_texturepacker_native" = "xyes"; then
+ if test "x$cross_compiling" = "xyes"; then
USE_TEXTUREPACKER_NATIVE=1
- if [[ ! -d "$USE_TEXTUREPACKER_NATIVE_ROOT" ]]; then
- USE_TEXTUREPACKER_NATIVE_ROOT=
- fi
+ USE_TEXTUREPACKER_NATIVE_ROOT="$use_texturepacker_root"
+ final_message="$final_message\n TexturePacker:Native ($USE_TEXTUREPACKER_NATIVE_ROOT)"
+ else
+ final_message="$final_message\n TexturePacker:Yes"
fi
else
final_message="$final_message\n TexturePacker:No"
diff -Naur xbmc-frodo-0ff0d2e/lib/libsquish/Makefile.in xbmc-frodo-0ff0d2e.patch/lib/libsquish/Makefile.in
--- xbmc-frodo-0ff0d2e/lib/libsquish/Makefile.in 2012-10-11 15:47:26.000000000 +0200
+++ xbmc-frodo-0ff0d2e.patch/lib/libsquish/Makefile.in 2012-10-11 16:49:08.873850900 +0200
@@ -11,26 +11,25 @@
singlecolourfit.cpp \
squish.cpp
-CXXFLAGS+=-I.
-
-LIB=libsquish.a
-
-ifeq (@USE_TEXTUREPACKER_NATIVE@,1)
-NATIVE_LIB=libsquish-native.so
-CLEAN_FILES+=$(NATIVE_LIB)
+LIB = libsquish.a
+NATIVE_LIB = libsquish-native.so
+CLEAN_FILES += $(NATIVE_LIB)
+
+HOST_CXX ?= g++
+CXXFLAGS += -I.
+HOST_CXXFLAGS += -I.
ifeq ($(findstring Darwin,$(shell uname -s)),Darwin)
-NATIVE_ARCH=@DARWIN_NATIVE_ARCH@
+ HOST_CXXFLAGS += @DARWIN_NATIVE_ARCH@
endif
-all: $(LIB) $(NATIVE_LIB)
+$(LIB): $(SRCS)
# TexturePacker links to libsquish and needs to run on build system, so make a native flavor.
$(NATIVE_LIB): $(SRCS)
ifeq ($(findstring Darwin,$(shell uname -s)),Darwin)
- g++ $(NATIVE_ARCH) -I. $(SRCS) -dynamiclib -install_name `pwd`/libsquish-native.so -o $@
+ $(HOST_CXX) $(HOST_CXXFLAGS) $(SRCS) -dynamiclib -install_name `pwd`/libsquish-native.so -o $@
else
- g++ -I. $(SRCS) -shared -fPIC -Wl,-soname,`pwd`/libsquish-native.so -o $@
-endif
+ $(HOST_CXX) $(HOST_CXXFLAGS) $(SRCS) -shared -fPIC -Wl,-soname,`pwd`/libsquish-native.so -o $@
endif
include ../../Makefile.include
diff -Naur xbmc-frodo-0ff0d2e/tools/TexturePacker/Makefile.in xbmc-frodo-0ff0d2e.patch/tools/TexturePacker/Makefile.in
--- xbmc-frodo-0ff0d2e/tools/TexturePacker/Makefile.in 2012-10-11 15:47:05.000000000 +0200
+++ xbmc-frodo-0ff0d2e.patch/tools/TexturePacker/Makefile.in 2012-10-11 16:49:08.874850920 +0200
@@ -1,56 +1,54 @@
-DEFINES += -D_LINUX -DUSE_LZO_PACKING
+DEFINES += -D_LINUX -DUSE_LZO_PACKING
ifneq ($(or $(findstring powerpc,@ARCH@),$(findstring ppc, @ARCH@)),)
-DEFINES += -DHOST_BIGENDIAN
+DEFINES += -DHOST_BIGENDIAN
endif
-CXXFLAGS+= \
+SRCS = \
+ md5.cpp \
+ SDL_anigif.cpp \
+ XBTFWriter.cpp \
+ XBMCTex.cpp \
+ @abs_top_srcdir@/xbmc/guilib/XBTF.cpp
+
+TARGET = TexturePacker
+CLEAN_FILES = $(TARGET)
+
+all: $(TARGET)
+
+HOST_CXX ?= g++
+HOST_ROOT_PATH = @USE_TEXTUREPACKER_NATIVE_ROOT@
+
+LIBS += -lSDL_image -lSDL -llzo2
+LIBS += -L@abs_top_srcdir@/lib/libsquish -lsquish
+HOST_LIBS += -L$(HOST_ROOT_PATH)/lib -lSDL_image -lSDL -llzo2
+HOST_LIBS += -L@abs_top_srcdir@/lib/libsquish -lsquish-native
+
+CXXFLAGS += \
-I. \
-I@abs_top_srcdir@/lib \
-I@abs_top_srcdir@/xbmc \
-I@abs_top_srcdir@/xbmc/linux
-RPATH=-Wl,-rpath=$(NATIVE_ROOT_PATH)/lib
+HOST_CXXFLAGS += \
+ -I. \
+ -I@abs_top_srcdir@/lib \
+ -I@abs_top_srcdir@/xbmc \
+ -I@abs_top_srcdir@/xbmc/linux \
+ -I$(HOST_ROOT_PATH)/include
+
+RPATH=-Wl,-rpath=$(HOST_ROOT_PATH)/lib
-ifeq (@USE_TEXTUREPACKER_NATIVE@,1)
-NATIVE_ROOT_PATH=@USE_TEXTUREPACKER_NATIVE_ROOT@
-ifdef NATIVE_ROOT_PATH
ifeq ($(findstring Darwin,$(shell uname -s)),Darwin)
DEFINES += -DTARGET_DARWIN
NATIVE_ARCH=@DARWIN_NATIVE_ARCH@
RPATH=
endif
-NATIVE_CXXFLAGS+= -I. \
- -I$(NATIVE_ROOT_PATH)/include \
- -I@abs_top_srcdir@/lib \
- -I@abs_top_srcdir@/xbmc \
- -I@abs_top_srcdir@/xbmc/linux
-NATIVE_LIBS += -L$(NATIVE_ROOT_PATH)/lib
-endif
-NATIVE_LIBS += -lSDL_image -lSDL -llzo2
-NATIVE_LIBS += -L@abs_top_srcdir@/lib/libsquish -lsquish-native
-else
-LIBS += -L@abs_top_srcdir@/lib/libsquish -lsquish
-endif
-
-LIBS += -lSDL_image -lSDL -llzo2
-
-SRCS = \
- md5.cpp \
- SDL_anigif.cpp \
- XBTFWriter.cpp \
- XBMCTex.cpp \
- @abs_top_srcdir@/xbmc/guilib/XBTF.cpp
-
-
-TARGET = TexturePacker
-CLEAN_FILES=$(TARGET)
-
-all: $(TARGET)
ifeq (@USE_TEXTUREPACKER_NATIVE@,1)
# TexturePacker run native on build system, build it with native tools
$(TARGET): $(SRCS) @abs_top_srcdir@/xbmc/guilib/XBTF.h
- g++ $(DEFINES) $(NATIVE_ARCH) $(NATIVE_CXXFLAGS) $(SRCS) $(NATIVE_LIBS) $(RPATH) -o $(TARGET)
+ make -C @abs_top_srcdir@/lib/libsquish libsquish-native.so
+ $(HOST_CXX) $(DEFINES) $(NATIVE_ARCH) $(HOST_CXXFLAGS) $(SRCS) $(HOST_LIBS) $(RPATH) -o $(TARGET)
clean:
rm -f $(TARGET)
else

View file

@ -1,7 +1,7 @@
# Contributor tomasgroth at yahoo.dk
# Contributor WarheadsSE <max@warheads.net>
pkgname=xbmc-rbp-git
pkgver=20121125
pkgver=20130110
pkgrel=1
buildarch=16
@ -9,7 +9,7 @@ pkgdesc="A software media player and entertainment hub for digital media for the
arch=('armv6h')
url="http://xbmc.org"
license=('GPL' 'custom')
depends=('hicolor-icon-theme' 'fribidi' 'lzo2' 'smbclient' 'libtiff' 'libva' 'libpng' 'libcdio' 'yajl' 'libmysqlclient' 'libjpeg-turbo' 'libsamplerate' 'libssh' 'libmicrohttpd' 'sdl_image' 'python2' 'libass' 'libmpeg2' 'libmad' 'libmodplug' 'jasper' 'rtmpdump' 'unzip' 'xorg-xdpyinfo' 'libbluray' 'libnfs' 'afpfs-ng' 'libshairport' 'avahi' 'bluez' 'tinyxml' 'raspberrypi-firmware' 'libcec-rpi' 'libplist' 'swig' 'taglib' 'ffmpeg')
depends=('hicolor-icon-theme' 'fribidi' 'lzo2' 'smbclient' 'libtiff' 'libva' 'libpng' 'libcdio' 'yajl' 'libmysqlclient' 'libjpeg-turbo' 'libsamplerate' 'libssh' 'libmicrohttpd' 'sdl_image' 'python2' 'libass' 'libmpeg2' 'libmad' 'libmodplug' 'jasper' 'rtmpdump' 'unzip' 'xorg-xdpyinfo' 'libbluray' 'libnfs' 'afpfs-ng' 'libshairport' 'avahi' 'bluez' 'tinyxml' 'raspberrypi-firmware' 'libcec-rpi' 'libplist' 'swig' 'taglib')
makedepends=('boost' 'cmake' 'gperf' 'nasm' 'zip' 'udisks' 'upower' 'bluez' 'git' 'autoconf' 'openjdk6')
optdepends=(
@ -47,14 +47,17 @@ build() {
# Patch to fix TexturePacker build.
patch -i ${srcdir}/xbmc-ae04d99-321-texturepacker-hostflags-and-rework.patch -p1
# Change outdated macro use
find . -name 'configure*' | xargs grep -l M_CONFIG_HEADER | xargs sed -i -e 's/M_CONFIG_HEADER/AC_CONFIG_HEADERS/g'
# Bootstrapping XBMC
./bootstrap
# Configuring XBMC
export PYTHON_VERSION=2 # external python v2
# we need to compile for armv6 instead of armv5 to avoid problems compiling assembler code
export CFLAGS="-O3 -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -mabi=aapcs-linux -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -I/opt/vc/include/ -I/opt/vc/include/IL -I/opt/vc/include/interface/vcos/pthreads"
export CXXFLAGS="-O3 -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -mabi=aapcs-linux -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -I/opt/vc/include/ -I/opt/vc/include/IL -I/opt/vc/include/interface/vcos/pthreads"
export CFLAGS="-O3 -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -mabi=aapcs-linux -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -I/opt/vc/include/ -I/opt/vc/include/IL -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux"
export CXXFLAGS="-O3 -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -mabi=aapcs-linux -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -I/opt/vc/include/ -I/opt/vc/include/IL -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux"
export LDFLAGS="$LDFLAGS -L/opt/vc/lib"
# export MAKEFLAGS="-j1"
./configure --prefix=$_prefix --exec-prefix=$_prefix \
@ -62,7 +65,7 @@ build() {
--disable-optical-drive --disable-dvdcss --disable-joystick --disable-debug \
--disable-crystalhd --disable-vtbdecoder --disable-vaapi --disable-vdpau \
--disable-pulse --disable-projectm --with-platform=raspberry-pi --enable-optimizations \
--enable-libcec --enable-player=omxplayer --enable-external-ffmpeg
--enable-libcec --enable-player=omxplayer
make
}
@ -92,9 +95,4 @@ package() {
mv "${pkgdir}${_prefix}/share/doc/xbmc/${licensef}" "${pkgdir}${_prefix}/share/licenses/${pkgname}"
done
# Create lib links
mkdir -p "${pkgdir}"/etc/ld.so.conf.d/
# ensure we can load libs
echo "/opt/vc/lib/" > "${pkgdir}"/etc/ld.so.conf.d/xbmc-rbp-git.conf
}

View file

@ -1,10 +1,8 @@
# Author: Julien MISCHKOWITZ <wain@archlinux.fr>
# Author: tuxce <tuxce.net@gmail.com>
plugrel=1
pkgname=yaourt
pkgver=1.1
pkgver=1.2.2
pkgrel=1
pkgdesc="A pacman wrapper with extended features and AUR support"
arch=('any')
@ -28,5 +26,5 @@ package() {
make PREFIX=/usr sysconfdir=/etc localstatedir=/var DESTDIR=$pkgdir install
}
md5sums=('e8c0d29828ba21eafc27490fb786d14c')
md5sums=('b6341eec9b247c1cb9c743af80d190c2')
# vim:set ts=2 sw=2 et:

View file

@ -10,15 +10,16 @@
pkgname=distcc
pkgver=3.1
pkgrel=8
pkgrel=10
pkgdesc="A distributed C, C++, Obj C compiler"
arch=('i686' 'x86_64')
url="http://code.google.com/p/distcc/"
license=('GPL')
depends=('gcc' 'popt')
makedepends=('pkgconfig' 'python2')
makedepends=('pkgconfig' 'python2' 'dbus')
optdepends=('python2')
backup=(etc/conf.d/distccd)
backup=('etc/conf.d/distccd'
'etc/distcc/hosts')
source=(http://distcc.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2
distccd
distccd.conf.d
@ -26,8 +27,8 @@ source=(http://distcc.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2
alarm.patch)
md5sums=('a1a9d3853df7133669fffec2a9aab9f3'
'1c918474372c09304772c20c4de484fa'
'89aaf6e9072092e283465a14e83f0f94'
'bb24748257d9b0739e18b494cae08633'
'239aae53250e3e35288cba566bc0bbf1'
'09f0688da9c1840e518d2593bd5c3830'
'5cdf2b5be232a9da1d473e36dda978a0')
build() {

View file

@ -4,5 +4,4 @@
# You must explicitly add IPs (or subnets) that are allowed to connect,
# using the --allow switch. See the distccd manpage for more info.
#
DISTCC_ARGS="--user nobody --allow 127.0.0.1"
DISTCC_ARGS="--allow 127.0.0.1"

View file

@ -1,10 +1,12 @@
[Unit]
Description=A distributed C/C++ compiler
Documentation=man:distccd(1)
After=network.target
[Service]
User=nobody
EnvironmentFile=/etc/conf.d/distccd
ExecStart=/usr/bin/distccd --daemon --no-detach $DISTCC_ARGS
ExecStart=/usr/bin/distccd --no-detach --daemon $DISTCC_ARGS
[Install]
WantedBy=multi-user.target

View file

@ -1,13 +1,13 @@
# $Id: PKGBUILD 75410 2012-08-22 13:10:25Z seblu $
# $Id$
# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - removed x86_energy_perf_policy build/package, uses x86 asm
pkgbase=linux-tools
pkgname=('perf' 'cpupower' 'usbip')
pkgver=3.6
pkgrel=1
pkgname=('libtraceevent' 'perf' 'cpupower' 'usbip')
pkgver=3.7
pkgrel=3
license=('GPL2')
arch=('i686' 'x86_64')
url='http://www.kernel.org'
@ -16,14 +16,14 @@ options=('!strip')
# kernel source deps
makedepends=('asciidoc' 'xmlto')
# perf deps
makedepends+=('perl' 'python2' 'libnewt' 'elfutils')
makedepends+=('perl' 'python2' 'libnewt' 'elfutils' 'audit' 'libunwind')
# cpupower deps
makedepends+=('pciutils')
# usbip deps
makedepends+=('glib2' 'sysfsutils')
groups=("$pkgbase")
source=("http://ftp.kernel.org/pub/linux/kernel/v3.x/linux-$pkgver.tar.xz"
# "http://ftp.kernel.org/pub/linux/kernel/v3.x/patch-$pkgver.4.xz"
"http://ftp.kernel.org/pub/linux/kernel/v3.x/patch-$pkgver.1.xz"
'cpupower.conf'
'cpupower.rc'
'cpupower.systemd'
@ -31,7 +31,8 @@ source=("http://ftp.kernel.org/pub/linux/kernel/v3.x/linux-$pkgver.tar.xz"
'usbipd.conf'
'usbipd.rc'
'usbipd.service')
md5sums=('1a1760420eac802c541a20ab51a093d1'
md5sums=('21223369d682bcf44bcdfe1521095983'
'48f5f530b048e387e978e3e49de7742a'
'56883c159381ba89e50ab8ea65efec77'
'5fc1fcda4cef93f16e752b1931db23e3'
'c0d17b5295fe964623c772a2dd981771'
@ -47,6 +48,11 @@ build() {
patch -N -p1 -i "$srcdir"/patch-*
fi
msg2 'Build libtraceevent'
pushd linux-$pkgver/tools/lib/traceevent
make
popd
msg2 'Build perf'
pushd linux-$pkgver/tools/perf
make \
@ -68,15 +74,26 @@ build() {
msg2 'Build usbip'
pushd linux-$pkgver/drivers/staging/usbip/userspace
# fix missing man page
sed -i 's/usbip_bind_driver.8//' Makefile.am
./autogen.sh
./configure --prefix=/usr
make
popd
}
package_libtraceevent() {
pkgdesc='Linux kernel trace event library'
depends=('glibc')
cd linux-$pkgver/tools/lib/traceevent
install -dm 755 "$pkgdir/usr/lib"
install -m 644 libtraceevent.a libtraceevent.so "$pkgdir/usr/lib"
}
package_perf() {
pkgdesc='Linux kernel performance auditing tool'
depends=('perl' 'python2' 'libnewt' 'elfutils')
depends=('perl' 'python2' 'libnewt' 'elfutils' 'audit' 'libunwind')
cd linux-$pkgver/tools/perf
make \
@ -127,4 +144,4 @@ package_usbip() {
install -Dm 644 usbipd.service "$pkgdir/usr/lib/systemd/system/usbipd.service"
}
# vim:set ts=2 sw=2 ft=sh et:
# vim:set ts=2 sw=2 et:

View file

@ -1,4 +1,4 @@
# $Id: PKGBUILD 80199 2012-11-17 14:55:11Z bpiotrowski $
# $Id$
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Martin Panter <vadmium+aur@gmail.com>
# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
@ -7,8 +7,8 @@
# - removed --enable-runtime-cpudetection - not supported on ARM
pkgname=mplayer2
pkgver=20120729
pkgrel=2
pkgver=20121128
pkgrel=1
pkgdesc='Advanced general-purpose media player. A fork of the original MPlayer project'
arch=('i686' 'x86_64')
license=('GPL')
@ -23,19 +23,12 @@ backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf')
provides=('mplayer')
conflicts=('mplayer')
options=(!emptydirs)
source=(ftp://ftp.archlinux.org/other/community/$pkgname/$pkgname-$pkgver.tar.xz
mplayer2-20120729-fix-vf_lavc-compilation.patch
mplayer2-20120729-libquvi-support.patch)
md5sums=('53a266106f4c0dd687af3f807727812c'
'b1e9188001d31b066488aa35401b62bc'
'd5a23b19d1f84399526bd0dd9bae0e90')
source=(ftp://ftp.archlinux.org/other/community/$pkgname/$pkgname-$pkgver.tar.xz)
md5sums=('696adb2503b2202fe39de6c98b573cd6')
build() {
cd $srcdir/$pkgname-$pkgver
patch -Np1 -i $srcdir/mplayer2-20120729-libquvi-support.patch
patch -Np1 -i $srcdir/mplayer2-20120729-fix-vf_lavc-compilation.patch
sed 's/gmplayer/mplayer/g' -i etc/mplayer.desktop
find -type f -exec sed -e 's/python3/python/' -i {} \;

View file

@ -1,31 +0,0 @@
From f5e0365c8e76e2ef797027134f1819e613764d7e Mon Sep 17 00:00:00 2001
From: Anton Khirnov <anton@khirnov.net>
Date: Wed, 19 Sep 2012 12:00:01 +0000
Subject: vf_lavc: fix compilation with latest libav
Remove a pointless and broken check for avctx->codec->encode.
1) The check does not test for anything useful.
2) AVCodecContext.encode is a private field and is not supposed to be
accessed from outside of lavc.
2a) AVCodecContext.encode does not exist anymore in latest libavcodec,
so this block fails to build.
---
diff --git a/libmpcodecs/vf_lavc.c b/libmpcodecs/vf_lavc.c
index b2c1dd7..65e93a1 100644
--- a/libmpcodecs/vf_lavc.c
+++ b/libmpcodecs/vf_lavc.c
@@ -76,11 +76,6 @@ static int config(struct vf_instance *vf,
return 0;
}
- if (lavc_venc_context.codec->encode == NULL) {
- mp_msg(MSGT_VFILTER,MSGL_ERR,"avcodec init failed (ctx->codec->encode == NULL)!\n");
- return 0;
- }
-
return vf_next_config(vf,width,height,d_width,d_height,flags,IMGFMT_MPEGPES);
}
--
cgit v0.9

View file

@ -1,277 +0,0 @@
From 37c124805c00ae0f2570c95f9543e39ce69793a6 Mon Sep 17 00:00:00 2001
From: wm4 <wm4@mplayer2.org>
Date: Fri, 02 Mar 2012 19:24:34 +0000
Subject: quvi: Add support for streaming sites using libquvi
This enables playing URLs from libquvi supported streaming sites
directly, e.g. "mplayer http://www.youtube.com/watch?v=...."
Anything opened with mplayer is checked with libquvi. If it looks like
a URL of a supported streaming site, libquvi is used to extract the
media URL, which is then passed to the lower level mplayer code
instead of the HTML URL. Hopefully the libquvi URL checker works well
enough that it doesn't cause any problems with normal URLs, files, or
whatever else mplayer's stream layer accepts.
Add the --quvi-format option. The option value is directly passed
to libquvi as requested format. The only values that seem to work for
any streaming site seem to be "best" (best quality) and "default"
(lowest quality). The mplayer option defaults to "best" (overriding
libquvi's default).
Outstanding issues:
- Does libquvi checking every opened file really not cause problems?
Should there be a runtime option to disable libquvi use?
(Probably not an issue.)
- Should we check/set the supported protocol? By default libquvi has
support for all protocols enabled. In the worst case, it might
return an URL using a protocol not supported by mplayer, even though
it could extract URLs with other protocols too.
(Probably not an issue.)
- Somehow export metadata (like media title) to the mplayer frontend?
---
diff --git a/cfg-mplayer.h b/cfg-mplayer.h
index 5440de9..d8d556a 100644
--- a/cfg-mplayer.h
+++ b/cfg-mplayer.h
@@ -517,6 +517,8 @@ const m_option_t common_opts[] = {
OPT_MAKE_FLAGS("hr-mp3-seek", hr_mp3_seek, 0),
+ OPT_STRING("quvi-format", quvi_format, 0),
+
{ "rawaudio", (void *)&demux_rawaudio_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
{ "rawvideo", (void *)&demux_rawvideo_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
diff --git a/configure b/configure
index 5c1e288..18bc404 100755
--- a/configure
+++ b/configure
@@ -335,6 +335,7 @@ Optional features:
--enable-winsock2_h enable winsock2_h [autodetect]
--enable-smb enable Samba (SMB) input [autodetect]
--enable-live enable LIVE555 Streaming Media [disable]
+ --enable-libquvi enable libquvi [autodetect]
--enable-nemesi enable Nemesi Streaming Media [autodetect]
--disable-vcd disable VCD support [autodetect]
--disable-bluray disable Blu-ray support [autodetect]
@@ -650,6 +651,7 @@ _pvr=auto
networking=yes
_winsock2_h=auto
_smb=auto
+_libquvi=auto
_joystick=no
_xvid=auto
_libnut=auto
@@ -1009,6 +1011,8 @@ for ac_option do
--disable-winsock2_h) _winsock2_h=no ;;
--enable-smb) _smb=yes ;;
--disable-smb) _smb=no ;;
+ --enable-libquvi) _libquvi=yes ;;
+ --disable-libquvi) _libquvi=no ;;
--enable-joystick) _joystick=yes ;;
--disable-joystick) _joystick=no ;;
--enable-xvid) _xvid=yes ;;
@@ -3610,6 +3614,19 @@ else
fi
echores "$_smb"
+echocheck "libquvi support"
+if test "$_libquvi" = auto ; then
+ _libquvi=no
+ if pkg_config_add libquvi ; then
+ _libquvi=yes
+ fi
+fi
+if test "$_libquvi" = yes; then
+ def_libquvi="#define CONFIG_LIBQUVI 1"
+else
+ def_libquvi="#undef CONFIG_LIBQUVI"
+fi
+echores "$_libquvi"
#########
# VIDEO #
@@ -6325,6 +6342,7 @@ LIBNEMESI = $_nemesi
LIBNUT = $_libnut
LIBPOSTPROC = $libpostproc
LIBSMBCLIENT = $_smb
+LIBQUVI = $_libquvi
LIBTHEORA = $_theora
LIRC = $_lirc
LIVE555 = $_live
@@ -6668,6 +6686,7 @@ $def_live
$def_nemesi
$def_networking
$def_smb
+$def_libquvi
$def_socklen_t
$def_vstream
diff --git a/options.h b/options.h
index 48f5c53..89324bd 100644
--- a/options.h
+++ b/options.h
@@ -78,6 +78,7 @@ typedef struct MPOpts {
char **audio_lang;
char **sub_lang;
int hr_mp3_seek;
+ char *quvi_format;
char *audio_stream;
int audio_stream_cache;
diff --git a/stream/open.c b/stream/open.c
index ce0a415..91e9ae2 100644
--- a/stream/open.c
+++ b/stream/open.c
@@ -26,12 +26,14 @@
#include "config.h"
#include "mp_msg.h"
+#include "talloc.h"
#ifdef __FreeBSD__
#include <sys/cdrio.h>
#endif
#include "m_option.h"
+#include "options.h"
#include "stream.h"
#include "libmpdemux/demuxer.h"
@@ -42,6 +44,62 @@ char* cdrom_device=NULL;
char* dvd_device=NULL;
int dvd_title=0;
+#ifdef CONFIG_LIBQUVI
+
+#include <quvi/quvi.h>
+
+static const char *resolve_quvi(const char *url, struct MPOpts *opts)
+{
+ char *media_title, *media_url;
+ quvi_media_t m;
+ QUVIcode rc;
+ quvi_t q;
+
+ rc = quvi_init(&q);
+ if (rc != QUVI_OK)
+ return NULL;
+
+ // Don't try to use quvi on an URL that's not directly supported, since
+ // quvi will do a network access anyway in order to check for HTTP
+ // redirections etc.
+ // The documentation says this will fail on "shortened" URLs.
+ if (quvi_supported(q, (char *)url) != QUVI_OK) {
+ quvi_close(&q);
+ return NULL;
+ }
+
+ mp_msg(MSGT_OPEN, MSGL_INFO, "[quvi] Checking URL...\n");
+
+ // Can use quvi_query_formats() to get a list of formats like this:
+ // "fmt05_240p|fmt18_360p|fmt34_360p|fmt35_480p|fmt43_360p|fmt44_480p"
+ // (This example is youtube specific.)
+ // That call requires an extra net access. quvi_next_media_url() doesn't
+ // seem to do anything useful. So we can't really do anything useful
+ // except pass through the user's format setting.
+ quvi_setopt(q, QUVIOPT_FORMAT, opts->quvi_format
+ ? opts->quvi_format : "best");
+
+ rc = quvi_parse(q, (char *)url, &m);
+ if (rc != QUVI_OK) {
+ mp_msg(MSGT_OPEN, MSGL_ERR, "[quvi] %s\n", quvi_strerror(q, rc));
+ quvi_close(&q);
+ return NULL;
+ }
+
+ quvi_getprop(m, QUVIPROP_PAGETITLE, &media_title);
+ quvi_getprop(m, QUVIPROP_MEDIAURL, &media_url);
+
+ mp_msg(MSGT_OPEN, MSGL_INFO, "[quvi] Site media title: '%s'\n",
+ media_title);
+ media_url = talloc_strdup(NULL, media_url);
+
+ quvi_parse_close(&m);
+ quvi_close(&q);
+
+ return media_url;
+}
+#endif
+
// Open a new stream (stdin/file/vcd/url)
stream_t* open_stream(const char *filename, struct MPOpts *options,
@@ -59,7 +117,16 @@ if(!filename) {
return NULL;
}
-//============ Open STDIN or plain FILE ============
+ const char *resolved = NULL;
+
+#ifdef CONFIG_LIBQUVI
+ resolved = resolve_quvi(filename, options);
+#endif
+
+ if (resolved)
+ filename = resolved;
- return open_stream_full(filename,STREAM_READ,options,file_format);
+ stream_t *res = open_stream_full(filename,STREAM_READ,options,file_format);
+ talloc_free((void *)resolved);
+ return res;
}
--
cgit v0.9
From 86f7fe1ba61a465fb25bc30deaaa4fcf12600a43 Mon Sep 17 00:00:00 2001
From: wm4 <wm4@nowhere>
Date: Sun, 02 Sep 2012 18:45:11 +0000
Subject: configure: add version check for libquvi
I do not know what exactly is the minimum working version. Require the
latest version currently released, which is about half a year old.
---
diff --git a/configure b/configure
index 2cf7aff..6a3298f 100755
--- a/configure
+++ b/configure
@@ -3445,7 +3445,7 @@ echores "$_smb"
echocheck "libquvi support"
if test "$_libquvi" = auto ; then
_libquvi=no
- if pkg_config_add libquvi ; then
+ if pkg_config_add 'libquvi >= 0.4.1' ; then
_libquvi=yes
fi
fi
--
cgit v0.9
diff --git a/cfg-mplayer.h b/cfg-mplayer.h
index b889661..8b07091 100644
--- a/cfg-mplayer.h
+++ b/cfg-mplayer.h
@@ -485,7 +485,7 @@ const m_option_t common_opts[] = {
OPT_MAKE_FLAGS("hr-mp3-seek", hr_mp3_seek, 0),
- OPT_STRING("quvi-format", quvi_format, 0),
+ OPT_STRING("quvi-format", quvi_format, 0, OPTDEF_STR("best")),
{ "rawaudio", (void *)&demux_rawaudio_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
{ "rawvideo", (void *)&demux_rawvideo_opts, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL},
diff --git a/stream/open.c b/stream/open.c
index 91e9ae2..16d0dc3 100644
--- a/stream/open.c
+++ b/stream/open.c
@@ -76,8 +76,7 @@ static const char *resolve_quvi(const char *url, struct MPOpts *opts)
// That call requires an extra net access. quvi_next_media_url() doesn't
// seem to do anything useful. So we can't really do anything useful
// except pass through the user's format setting.
- quvi_setopt(q, QUVIOPT_FORMAT, opts->quvi_format
- ? opts->quvi_format : "best");
+ quvi_setopt(q, QUVIOPT_FORMAT, opts->quvi_format);
rc = quvi_parse(q, (char *)url, &m);
if (rc != QUVI_OK) {
--
cgit v0.9

View file

@ -4,21 +4,22 @@
# Contributor: Dongsheng Cai <dongsheng at moodle dot com>
# Contributor: Masutu Subric <masutu.arch at googlemail dot com>
# Contributor: TIanyi Cui <tianyicui@gmail.com>
# Contributor: Jason Plum <max@warheads.net>
# Contributor: Jason Plum <jplum@archlinuxarm.org>
pkgname=nodejs
pkgver=0.8.15
pkgver=0.8.17
pkgrel=1
pkgdesc='Evented I/O for V8 javascript'
arch=('i686' 'x86_64' 'arm')
url='http://nodejs.org/'
license=('MIT')
depends=('python2')
makedepends=('v8' 'python2')
depends=('python2' 'v8')
checkdepends=('curl') # curl used for check()
optdepends=('openssl: TLS support')
options=('!emptydirs')
options=('!emptydirs !strip')
source=("http://nodejs.org/dist/v${pkgver}/node-v${pkgver}.tar.gz")
sha1sums=('a7874cde1a87497992f1f8ea0fdaa760f617a94f')
sha1sums=('65d22e4e183cee8888c797300d8fdbb5c530c740')
build() {
cd node-v${pkgver}
@ -68,14 +69,14 @@ fi
./configure \
--prefix=/usr \
--without-snapshot \
--with-arm-float-abi=$EABI
--with-arm-float-abi=$EABI \
--shared-v8 \
--shared-v8-libpath=/usr/lib \
--shared-v8-includes=/usr/include
# --shared-openssl \
# --shared-v8 \
# --shared-v8-libpath=/usr/lib \
# --shared-v8-includes=/usr/include \
make
make
}
check() {

View file

@ -4,8 +4,8 @@
# - added alarm.patch
pkgname=percona-server
pkgver=5.5.28_rel29.1
pkgrel=2
pkgver=5.5.28_rel29.3
pkgrel=1
pkgdesc="A backwards-compatible drop-in replacement for MySQL that provides improved performance, diagnostics and instrumentation"
arch=('i686' 'x86_64')
@ -106,7 +106,7 @@ package() {
install -dm700 "${pkgdir}"/var/lib/mysql
}
sha256sums=('2cacf3bd0f059c7ae3cb391bf2e4a2bdcbf490ed3465bfd4db9a02f0944f2d51'
sha256sums=('f131fb20de0a349cc354da7eb0156fe0d5c3c66506a99ea7d8edb8319e9e4922'
'e875fac56f69634b4f1720aec3b952fc63903414e9345af630e5fd74b5373eb4'
'dd5dc155de468d4ab26971109861ae19b53574f28785bac5ff7b717fb65c0760'
'4894d39605950d86841ad982e619daa6c8d5d60ca30928d7dbb582e8cb3ade32'

View file

@ -1,13 +1,14 @@
# $Id: PKGBUILD 69781 2012-04-23 09:18:39Z ibiru $
# $Id$
# Maintainer: Vesa Kaihlavirta
# Maintainer: Alexander Rødseth <rodseth@gmail.com>
# Maintainer: Alexander Rødseth <rodseth@gmail.com>
# Contributor: Patrick Smits <mail@patricksmits.net>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.com>
# - remove -m32 command from configure
pkgname=yaws
pkgver=1.95
pkgrel=1
pkgrel=3
pkgdesc='Yet Another Web Server, pure Erlang HTTP server/framework'
arch=('x86_64' 'i686')
url='http://yaws.hyber.org/'
@ -16,8 +17,10 @@ depends=('pam' 'erlang')
backup=('etc/yaws/yaws.conf')
options=('!emptydirs')
install=$pkgname.install
source=("http://yaws.hyber.org/download/$pkgname-$pkgver.tar.gz")
sha256sums=('e4efae836561f5e8a1324a5c9ab63fb82468e9dc93dc95cb4cb6248ab6b95406')
source=("http://yaws.hyber.org/download/$pkgname-$pkgver.tar.gz"
"$pkgname.service")
sha256sums=('e4efae836561f5e8a1324a5c9ab63fb82468e9dc93dc95cb4cb6248ab6b95406'
'cce672e0bc73f536186bdbb8ac139d8000db4bd67f5fdeff84fdc4b4f8bd84f9')
build() {
cd "$pkgname-$pkgver"
@ -38,6 +41,8 @@ package() {
install -d "$pkgdir/usr/lib/erlang/lib"
ln -s /usr/lib/yaws "$pkgdir/usr/lib/erlang/lib/$pkgname-$pkgver"
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
install -Dm644 "$srcdir/$pkgname.service" \
"$pkgdir/usr/lib/systemd/system/$pkgname.service"
}
# vim:set ts=2 sw=2 et:

View file

@ -0,0 +1,12 @@
[Unit]
Description=A fast lightweight webserver.
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/bin/yaws --daemon --heart
ExecReload=/usr/bin/yaws --hup
ExecStop=/usr/bin/yaws --stop
[Install]
WantedBy=multi-user.target

View file

@ -11,13 +11,13 @@ noautobuild=1
pkgname=binutils
pkgver=2.23.1
pkgrel=1
pkgrel=3
pkgdesc="A set of programs to assemble and manipulate binary and object files"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/binutils/"
license=('GPL')
groups=('base-devel')
depends=('glibc>=2.16' 'zlib')
depends=('glibc>=2.17' 'zlib')
checkdepends=('dejagnu')
options=('!libtool' '!distcc' '!ccache')
install=binutils.install
@ -38,30 +38,16 @@ build() {
${srcdir}/binutils-${pkgver}/configure --prefix=/usr \
--with-lib-path=/usr/lib:/usr/local/lib \
--with-bugurl=https://github.com/archlinuxarm/PKGBUILDs/issues \
--enable-ld=default --enable-gold \
--enable-plugins --enable-threads \
--enable-shared $CONFIGFLAG
--with-pic --enable-shared \
--disable-werror $CONFIGFLAG
# check the host environment and makes sure all the necessary tools are available
make configure-host
make tooldir=${pkgdir}/usr
# Rebuild libiberty.a with -fPIC
cp -a libiberty libiberty-pic
make -C libiberty-pic clean
make CFLAGS="$CFLAGS -fPIC" -C libiberty-pic
# Rebuild libbfd.a with -fPIC
# hidden visability prevent 3rd party shared libraries exporting bfd non-stable API
cp -a bfd bfd-pic
make -C bfd-pic clean
make CFLAGS="$CFLAGS -fPIC -fvisibility=hidden" -C bfd-pic
# Rebuild libopcodes.a with -fPIC
cp -a opcodes opcodes-pic
make -C opcodes-pic clean
make CFLAGS="$CFLAGS -fPIC" -C opcodes-pic
}
check() {
@ -79,20 +65,13 @@ package() {
install -m644 ${srcdir}/binutils-${pkgver}/include/libiberty.h ${pkgdir}/usr/include
install -m644 ${srcdir}/binutils-${pkgver}/include/demangle.h ${pkgdir}/usr/include
# install libraries rebuilt with -fPIC
install -m644 libiberty-pic/libiberty.a ${pkgdir}/usr/lib
install -m644 bfd-pic/libbfd.a ${pkgdir}/usr/lib
install -m644 opcodes/libopcodes.a ${pkgdir}/usr/lib
# Install PIC libiberty.a
install -m644 libiberty/pic/libiberty.a ${pkgdir}/usr/lib
# Remove Windows/Novell specific man pages
# Remove unwanted files
rm -f ${pkgdir}/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}*
# why are these distributed with binutils?
rm ${pkgdir}/usr/share/info/{configure,standards}.info
# Remove these symlinks, they are not ABI stable.
# Programs should compile static to the .a file.
# No shared linking to these files outside binutils
rm -f ${pkgdir}/usr/lib/lib{bfd,opcodes}.so
echo "INPUT ( /usr/lib/libbfd.a -liberty -lz )" >${pkgdir}/usr/lib/libbfd.so
echo "INPUT ( /usr/lib/libopcodes.a -lbfd )" >${pkgdir}/usr/lib/libopcodes.so
}

View file

@ -7,21 +7,20 @@
noautobuild=1
pkgname=cloog
pkgver=0.17.0
pkgrel=2
pkgver=0.18.0
pkgrel=1
pkgdesc="Library that generates loops for scanning polyhedra"
arch=('i686' 'x86_64')
url="http://www.bastoul.net/cloog/"
license=('GPL')
depends=('isl' 'gmp')
conflicts=('cloog-ppl<0.15.10-2')
options=('!libtool')
source=(http://www.bastoul.net/cloog/pages/download/$pkgname-$pkgver.tar.gz)
md5sums=('0aa3302c81f65ca62c114e5264f8a802')
md5sums=('be78a47bd82523250eb3e91646db5b3d')
build() {
cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr --with-isl=system --with-gmp=system
./configure --prefix=/usr --with-isl=system
make
}

View file

@ -1,11 +1,11 @@
# $Id: PKGBUILD 172086 2012-11-27 19:16:31Z dreisner $
# $Id$
# Maintainer: Tom Gundersen <teg@jklm.no>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - modifed os-release
pkgname=filesystem
pkgver=2012.11
pkgver=2012.12
pkgrel=1
pkgdesc='Base filesystem'
arch=('any')
@ -91,14 +91,14 @@ package() {
done
ln -s ../man usr/local/share/man
}
md5sums=('004013ac940ef3d3cdd8c596e7accfe1'
md5sums=('c61f6ac4f6377108e59879f203f18633'
'7813c481156f6b280a3ba91fc6236368'
'9e4533df61f0c82d6b2e2371f7376282'
'4c4540eeb748bf1f71d631b8c1dcf0b3'
'f28150d4c0b22a017be51b9f7f9977ed'
'6e488ffecc8ba142c0cf7e2d7aeb832e'
'455b78cada80f40b6f6968f5cbd97a2e'
'01249bb0ba4468f95e2cc3a627f5e6e3'
'1cfd310dff0804a7d21958487c32a3b1'
'2ef2429c2c98d0883906aa6f5363be80'
'693c97f2c9a519bb97a17008e92c2b74'
'1745349eb24ed21b4cfaa6f423bddb76'
'7bc65f234dfb6abf24e7c3b03e86f4ff'
@ -106,7 +106,7 @@ md5sums=('004013ac940ef3d3cdd8c596e7accfe1'
'52db9503314f639b8f47bd9a251a6ea9'
'6f48288b6fcaf0065fcb7b0e525413e0'
'22518e922891f9359f971f4f5b4e793c'
'677523dbe94b79299aa91b35ed8203b6'
'ffe983034b8004989b8c3df97ec91095'
'f3b6ae7db8adffaaa4bffc6099dcbd50'
'a8a962370cd0128465d514e6a1f74130'
'2e193c4a37245f2323ebe87f1a673563'

View file

@ -42,7 +42,9 @@ post_upgrade() {
_addgroup rfkill -g 24
_addgroup lock -g 54
_addgroup uuidd -g 68
_adduser uuidd -u 68 -d / -g uuidd -s /sbin/nologin
_adduser uuidd -u 68 -d / -g uuidd -s /sbin/nologin
_addgroup dbus -g 81
_adduser dbus -u 81 -d / -g dbus -s /sbin/nologin
# sync gshadow to group (fixes FS#19869)
if ! grep -q '^lock:' etc/gshadow; then

View file

@ -21,6 +21,7 @@ http:x:33:
games:x:50:
lock:x:54:
uuidd:x:68:
dbus:x:81:
network:x:90:
video:x:91:
audio:x:92:

View file

@ -21,6 +21,7 @@ http:::
games:::
lock:::
uuidd:!::
dbus:x::
network:x::
video:x::
audio:::

View file

@ -5,4 +5,5 @@ mail:x:8:12:mail:/var/spool/mail:/bin/false
ftp:x:14:11:ftp:/srv/ftp:/bin/false
http:x:33:33:http:/srv/http:/bin/false
uuidd:x:68:68:uuidd:/:/sbin/nologin
dbus:x:81:81:dbus:/:/sbin/nologin
nobody:x:99:99:nobody:/:/bin/false

View file

@ -5,4 +5,5 @@ mail:x:14871::::::
ftp:x:14871::::::
http:x:14871::::::
uuidd:x:14871::::::
dbus:x:14871::::::
nobody:x:14871::::::

View file

@ -15,7 +15,7 @@ noautobuild=1
pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc')
pkgver=4.7.2
pkgrel=2
pkgrel=3
#_snapshot=4.7-20120721
pkgdesc="The GNU Compiler Collection"
arch=('i686' 'x86_64')
@ -103,7 +103,7 @@ package_gcc-libs()
{
pkgdesc="Runtime libraries shipped by GCC"
groups=('base')
depends=('glibc>=2.16')
depends=('glibc>=2.17')
install=gcc-libs.install
cd ${srcdir}/gcc-build
@ -115,7 +115,6 @@ package_gcc-libs()
make -j1 -C $CHOST/libgomp DESTDIR=${pkgdir} install-info
make -j1 -C $CHOST/libitm DESTDIR=${pkgdir} install-info
make -j1 DESTDIR=${pkgdir} install-target-libquadmath
make -j1 DESTDIR=${pkgdir} install-target-libgfortran
make -j1 DESTDIR=${pkgdir} install-target-libobjc
@ -147,13 +146,13 @@ package_gcc()
# unfortunately it is much, much easier to install the lot and clean-up the mess...
rm -f $pkgdir/usr/bin/{$CHOST-,}gfortran
rm -f $pkgdir/usr/lib/*.so*
rm -f $pkgdir/usr/lib/lib{ffi,gfortran,,objc,quadmath}.a
rm -f $pkgdir/usr/lib/lib{ffi,gfortran,objc}.a
rm -f $pkgdir/usr/lib/libgfortran.spec
rm -f -r $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{finclude,include/objc}
rm -f $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/include/{ffi{,target}.h,quadmath{,_weak}.h}
rm -f $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/include/{ffi{,target}.h}
rm -f $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{cc1obj{,plus},f951}
rm -f $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{libcaf_single,libgfortranbegin}.a
rm -f $pkgdir/usr/share/info/{gfortran,libgomp,libquadmath,libitm}.info
rm -f $pkgdir/usr/share/info/{gfortran,libgomp,libitm}.info
rm -f $pkgdir/usr/share/locale/{de,fr}/LC_MESSAGES/libstdc++.mo
rm -f $pkgdir/usr/share/man/man1/gfortran.1
rm -f $pkgdir/usr/share/man/man3/ffi*
@ -208,18 +207,15 @@ package_gcc-fortran()
install=gcc-fortran.install
cd ${srcdir}/gcc-build
make -j1 DESTDIR=${pkgdir} install-target-libquadmath
make -j1 DESTDIR=$pkgdir install-target-libgfortran
make -j1 -C $CHOST/libgomp DESTDIR=$pkgdir install-nodist_fincludeHEADERS
make -j1 -C gcc DESTDIR=$pkgdir fortran.install-{common,man,info}
install -Dm755 gcc/f951 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/f951
# remove libraries included in gcc-libs
rm -f ${pkgdir}/usr/lib/lib{gfortran,quadmath}.so*
rm -f ${pkgdir}/usr/share/info/libquadmath.info
ln -s gfortran ${pkgdir}/usr/bin/f95
rm -f ${pkgdir}/usr/lib/libgfortran.so*
# Install Runtime Library Exception
install -Dm644 ${_basedir}/COPYING.RUNTIME \
${pkgdir}/usr/share/licenses/gcc-fortran/RUNTIME.LIBRARY.EXCEPTION

View file

@ -5,8 +5,6 @@
# NOTE: valgrind requires rebuilt with each major glibc version
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - Added source file for glibc-ports, needed for building on ARM
# - Symlink glibc-ports source dir to ports dir in glibc directory
# - Patch glibc for ld-linux-armhf.so.3 and symlink ld-linux.so.3
# - Changed configure to enable ports add-on, specify our build host type
# - Disabled distcc
@ -14,14 +12,14 @@
noautobuild=1
pkgname=glibc
pkgver=2.16.0
pkgrel=5
pkgver=2.17
pkgrel=1
pkgdesc="GNU C Library"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/libc"
license=('GPL' 'LGPL')
groups=('base')
depends=('linux-api-headers>=3.5' 'tzdata')
depends=('linux-api-headers>=3.7' 'tzdata')
makedepends=('gcc>=4.7')
backup=(etc/gai.conf
etc/locale.gen
@ -29,31 +27,12 @@ backup=(etc/gai.conf
options=('!strip')
install=glibc.install
source=(http://ftp.gnu.org/gnu/libc/${pkgname}-${pkgver}.tar.xz{,.sig}
http://ftp.gnu.org/gnu/libc/glibc-ports-${pkgver}.tar.bz2
glibc-2.15-fix-res_query-assert.patch
glibc-2.16-unlock-mutex.patch
glibc-2.16-rpcgen-cpp-path.patch
glibc-2.16-strncasecmp-segfault.patch
glibc-2.16-strtod-overflow.patch
glibc-2.16-detect-fma.patch
glibc-2.16-glob-use-size_t.patch
local-soname-hack.diff
nscd.rcd
nscd.service
nscd.tmpfiles
locale.gen.txt
locale-gen)
md5sums=('80b181b02ab249524ec92822c0174cf7'
'2a1221a15575820751c325ef4d2fbb90'
'668bcd584718ff0c6aa2f14b668595b6'
'31f415b41197d85d3bbee3d1eecd06a3'
'0afcd8c6020d61684aba63ed5f26bd91'
'8f26740c248d8b0de68eef8a00f09583'
'05f163ec80e6b5b5e38e4eb15ecaa211'
'198f366c0b1c18d5a201aa27e8bc76f0'
'2426f593bc43f5499c41d21b57ee0e30'
'a441353901992feda4b15a11a20140a1'
'fa192d063312907797eb48f59da99588'
md5sums=('87bf675c8ee523ebda4803e8e1cec638'
'589d79041aa767a5179eaa4e2737dd3f'
'ad8a9af15ab7eeaa23dc7ee85024af9f'
'bccbe5619e75cf1d97312ec3681c605c'
@ -63,38 +42,9 @@ md5sums=('80b181b02ab249524ec92822c0174cf7'
build() {
cd ${srcdir}/${pkgname}-${pkgver}
# ALARM: Symlink ports dir, patch for hard-float ld-linux soname
ln -s ${srcdir}/${pkgname}-ports-${pkgver} ./ports
# ALARM: patch for hard-float ld-linux soname
[[ $CARCH == "armv6h" || $CARCH == "armv7h" ]] && patch -p1 -i ${srcdir}/local-soname-hack.diff
# fix res_query assertion
# http://sourceware.org/bugzilla/show_bug.cgi?id=13013
patch -p1 -i ${srcdir}/glibc-2.15-fix-res_query-assert.patch
# prevent hang by locked mutex
# http://sourceware.org/git/?p=glibc.git;a=patch;h=c30e8edf
patch -p1 -i ${srcdir}/glibc-2.16-unlock-mutex.patch
# prevent need for /lib/cpp symlink
# http://sourceware.org/git/?p=glibc.git;a=commit;h=bf9b740a
patch -p1 -i ${srcdir}/glibc-2.16-rpcgen-cpp-path.patch
# strncasecmp segfault on i686
# http://sourceware.org/git/?p=glibc.git;a=commit;h=6db8f737
patch -p1 -i ${srcdir}/glibc-2.16-strncasecmp-segfault.patch
# strtod integer/buffer overflow
# http://sourceware.org/git/?p=glibc.git;a=commit;h=da1f4319
patch -p1 -i ${srcdir}/glibc-2.16-strtod-overflow.patch
# detect FMA supprt
# http://sourceware.org/git/?p=glibc.git;a=commit;h=a5cfcf08
patch -p1 -i ${srcdir}/glibc-2.16-detect-fma.patch
# prevent overflow in globc
# http://sourceware.org/git/?p=glibc.git;a=commit;h=6c62f108
patch -p1 -i ${srcdir}/glibc-2.16-glob-use-size_t.patch
cd ${srcdir}
mkdir glibc-build
cd glibc-build
@ -119,6 +69,7 @@ build() {
${srcdir}/${pkgname}-${pkgver}/configure --prefix=/usr \
--libdir=/usr/lib --libexecdir=/usr/lib \
--with-headers=/usr/include \
--with-bugurl=https://github.com/archlinuxarm/PKGBUILDs/issues \
--enable-add-ons=nptl,libidn,ports \
--enable-obsolete-rpc \
--enable-kernel=2.6.27 \
@ -141,6 +92,9 @@ build() {
}
check() {
# bug to file - the linker commands need to be reordered
LDFLAGS=${LDFLAGS/--as-needed,/}
cd ${srcdir}/glibc-build
#make -k check
}
@ -161,8 +115,6 @@ package() {
install -dm755 ${pkgdir}/{etc/rc.d,usr/{sbin,lib/{,locale,systemd/system,tmpfiles.d}}}
install -m644 ${srcdir}/${pkgname}-${pkgver}/nscd/nscd.conf ${pkgdir}/etc/nscd.conf
sed -i -e 's/^\tserver-user/#\tserver-user/' ${pkgdir}/etc/nscd.conf
install -m755 ${srcdir}/nscd.rcd ${pkgdir}/etc/rc.d/nscd
install -m644 ${srcdir}/nscd.service ${pkgdir}/usr/lib/systemd/system
install -m644 ${srcdir}/nscd.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/nscd.conf
@ -173,7 +125,7 @@ package() {
# create /etc/locale.gen
install -m644 ${srcdir}/locale.gen.txt ${pkgdir}/etc/locale.gen
sed -e '1,3d' -e 's|/| |g' -e 's|\\| |g' -e 's|^|#|g' \
${srcdir}/glibc-2.16.0/localedata/SUPPORTED >> ${pkgdir}/etc/locale.gen
${srcdir}/glibc-${pkgver}/localedata/SUPPORTED >> ${pkgdir}/etc/locale.gen
if [[ ${CARCH} = "x86_64" ]]; then
# fix paths and compliance with binary blobs...
@ -182,7 +134,7 @@ package() {
fi
# ALARM: symlink ld-linux.so.3 for hard-float
[[ $CARCH == "armv6h" || $CARCH == "armv7h" ]] && ln -s /lib/ld-2.16.so ${pkgdir}/lib/ld-linux.so.3
[[ $CARCH == "armv6h" || $CARCH == "armv7h" ]] && ln -s /lib/ld-2.17.so ${pkgdir}/lib/ld-linux.so.3
# Do not strip the following files for improved debugging support
# ("improved" as in not breaking gdb and valgrind...):

View file

@ -1,51 +0,0 @@
--- a/resolv/res_query.c
+++ a/resolv/res_query.c
@@ -122,6 +122,7 @@ __libc_res_nquery(res_state statp,
int *resplen2)
{
HEADER *hp = (HEADER *) answer;
+ HEADER *hp2;
int n, use_malloc = 0;
u_int oflags = statp->_flags;
@@ -239,26 +240,25 @@ __libc_res_nquery(res_state statp,
/* __libc_res_nsend might have reallocated the buffer. */
hp = (HEADER *) *answerp;
- /* We simplify the following tests by assigning HP to HP2. It
- is easy to verify that this is the same as ignoring all
- tests of HP2. */
- HEADER *hp2 = answerp2 ? (HEADER *) *answerp2 : hp;
-
- if (n < (int) sizeof (HEADER) && answerp2 != NULL
- && *resplen2 > (int) sizeof (HEADER))
+ /* We simplify the following tests by assigning HP to HP2 or
+ vice versa. It is easy to verify that this is the same as
+ ignoring all tests of HP or HP2. */
+ if (answerp2 == NULL || *resplen2 < (int) sizeof (HEADER))
{
- /* Special case of partial answer. */
- assert (hp != hp2);
- hp = hp2;
+ hp2 = hp;
}
- else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER)
- && n > (int) sizeof (HEADER))
+ else
{
- /* Special case of partial answer. */
- assert (hp != hp2);
- hp2 = hp;
+ hp2 = (HEADER *) *answerp2;
+ if (n < (int) sizeof (HEADER))
+ {
+ hp = hp2;
+ }
}
+ /* Make sure both hp and hp2 are defined */
+ assert((hp != NULL) && (hp2 != NULL));
+
if ((hp->rcode != NOERROR || ntohs(hp->ancount) == 0)
&& (hp2->rcode != NOERROR || ntohs(hp2->ancount) == 0)) {
#ifdef DEBUG

View file

@ -1,72 +0,0 @@
diff --git a/sysdeps/x86_64/multiarch/init-arch.c b/sysdeps/x86_64/multiarch/init-arch.c
index fb44dcf..fed5ab8 100644
--- a/sysdeps/x86_64/multiarch/init-arch.c
+++ b/sysdeps/x86_64/multiarch/init-arch.c
@@ -156,6 +156,9 @@ __init_cpu_features (void)
/* Determine if AVX is usable. */
if (CPUID_AVX)
__cpu_features.feature[index_AVX_Usable] |= bit_AVX_Usable;
+ /* Determine if FMA is usable. */
+ if (CPUID_FMA)
+ __cpu_features.feature[index_FMA_Usable] |= bit_FMA_Usable;
/* Determine if FMA4 is usable. */
if (CPUID_FMA4)
__cpu_features.feature[index_FMA4_Usable] |= bit_FMA4_Usable;
diff --git a/sysdeps/x86_64/multiarch/init-arch.h b/sysdeps/x86_64/multiarch/init-arch.h
index 45e2651..f33f1c8 100644
--- a/sysdeps/x86_64/multiarch/init-arch.h
+++ b/sysdeps/x86_64/multiarch/init-arch.h
@@ -22,7 +22,8 @@
#define bit_Fast_Unaligned_Load (1 << 4)
#define bit_Prefer_PMINUB_for_stringop (1 << 5)
#define bit_AVX_Usable (1 << 6)
-#define bit_FMA4_Usable (1 << 7)
+#define bit_FMA_Usable (1 << 7)
+#define bit_FMA4_Usable (1 << 8)
/* CPUID Feature flags. */
#define bit_SSE2 (1 << 26)
@@ -56,6 +57,7 @@
# define index_Fast_Unaligned_Load FEATURE_INDEX_1*FEATURE_SIZE
# define index_Prefer_PMINUB_for_stringop FEATURE_INDEX_1*FEATURE_SIZE
# define index_AVX_Usable FEATURE_INDEX_1*FEATURE_SIZE
+# define index_FMA_Usable FEATURE_INDEX_1*FEATURE_SIZE
# define index_FMA4_Usable FEATURE_INDEX_1*FEATURE_SIZE
#else /* __ASSEMBLER__ */
@@ -131,6 +133,8 @@ extern const struct cpu_features *__get_cpu_features (void)
HAS_CPUID_FLAG (COMMON_CPUID_INDEX_1, ecx, bit_OSXSAVE)
# define CPUID_AVX \
HAS_CPUID_FLAG (COMMON_CPUID_INDEX_1, ecx, bit_AVX)
+# define CPUID_FMA \
+ HAS_CPUID_FLAG (COMMON_CPUID_INDEX_1, ecx, bit_FMA)
# define CPUID_FMA4 \
HAS_CPUID_FLAG (COMMON_CPUID_INDEX_80000001, ecx, bit_FMA4)
@@ -140,7 +144,6 @@ extern const struct cpu_features *__get_cpu_features (void)
# define HAS_SSSE3 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_SSSE3)
# define HAS_SSE4_1 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_SSE4_1)
# define HAS_SSE4_2 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_SSE4_2)
-# define HAS_FMA HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_FMA)
# define index_Fast_Rep_String FEATURE_INDEX_1
# define index_Fast_Copy_Backward FEATURE_INDEX_1
@@ -148,6 +151,7 @@ extern const struct cpu_features *__get_cpu_features (void)
# define index_Prefer_SSE_for_memop FEATURE_INDEX_1
# define index_Fast_Unaligned_Load FEATURE_INDEX_1
# define index_AVX_Usable FEATURE_INDEX_1
+# define index_FMA_Usable FEATURE_INDEX_1
# define index_FMA4_Usable FEATURE_INDEX_1
# define HAS_ARCH_FEATURE(name) \
@@ -159,6 +163,7 @@ extern const struct cpu_features *__get_cpu_features (void)
# define HAS_PREFER_SSE_FOR_MEMOP HAS_ARCH_FEATURE (Prefer_SSE_for_memop)
# define HAS_FAST_UNALIGNED_LOAD HAS_ARCH_FEATURE (Fast_Unaligned_Load)
# define HAS_AVX HAS_ARCH_FEATURE (AVX_Usable)
+# define HAS_FMA HAS_ARCH_FEATURE (FMA_Usable)
# define HAS_FMA4 HAS_ARCH_FEATURE (FMA4_Usable)
#endif /* __ASSEMBLER__ */
--
1.7.3.4

View file

@ -1,52 +0,0 @@
diff --git a/posix/glob.c b/posix/glob.c
index 68ea205..87d4f1b 100644
--- a/posix/glob.c
+++ b/posix/glob.c
@@ -217,7 +217,7 @@ static int collated_compare (const void *, const void *) __THROW;
static const char *
next_brace_sub (const char *cp, int flags)
{
- unsigned int depth = 0;
+ size_t depth = 0;
while (*cp != '\0')
if ((flags & GLOB_NOESCAPE) == 0 && *cp == '\\')
{
@@ -960,7 +960,7 @@ glob (pattern, flags, errfunc, pglob)
&& S_ISDIR (st.st_mode))
: (__stat64 (dirname, &st64) == 0 && S_ISDIR (st64.st_mode)))))
{
- int newcount = pglob->gl_pathc + pglob->gl_offs;
+ size_t newcount = pglob->gl_pathc + pglob->gl_offs;
char **new_gl_pathv;
if (newcount > UINTPTR_MAX - (1 + 1)
@@ -1059,7 +1059,7 @@ glob (pattern, flags, errfunc, pglob)
appending the results to PGLOB. */
for (i = 0; i < dirs.gl_pathc; ++i)
{
- int old_pathc;
+ size_t old_pathc;
#ifdef SHELL
{
@@ -1114,7 +1114,7 @@ glob (pattern, flags, errfunc, pglob)
/* No matches. */
if (flags & GLOB_NOCHECK)
{
- int newcount = pglob->gl_pathc + pglob->gl_offs;
+ size_t newcount = pglob->gl_pathc + pglob->gl_offs;
char **new_gl_pathv;
if (newcount > UINTPTR_MAX - 2
@@ -1158,7 +1158,7 @@ glob (pattern, flags, errfunc, pglob)
}
else
{
- int old_pathc = pglob->gl_pathc;
+ size_t old_pathc = pglob->gl_pathc;
int orig_flags = flags;
if (meta & 2)
--
1.7.3.4

View file

@ -1,68 +0,0 @@
diff --git a/sunrpc/rpc_main.c b/sunrpc/rpc_main.c
index 06d951a..2103b10 100644
--- a/sunrpc/rpc_main.c
+++ b/sunrpc/rpc_main.c
@@ -75,12 +75,9 @@ struct commandline
static const char *cmdname;
-#define SVR4_CPP "/usr/ccs/lib/cpp"
-#define SUNOS_CPP "/lib/cpp"
-
static const char *svcclosetime = "120";
static int cppDefined; /* explicit path for C preprocessor */
-static const char *CPP = SUNOS_CPP;
+static const char *CPP = "/lib/cpp";
static const char CPPFLAGS[] = "-C";
static char *pathbuf;
static int cpp_pid;
@@ -327,23 +324,17 @@ find_cpp (void)
{
struct stat buf;
- if (stat (CPP, &buf) < 0)
- { /* /lib/cpp or explicit cpp does not exist */
- if (cppDefined)
- {
- fprintf (stderr, _ ("cannot find C preprocessor: %s \n"), CPP);
- crash ();
- }
- else
- { /* try the other one */
- CPP = SVR4_CPP;
- if (stat (CPP, &buf) < 0)
- { /* can't find any cpp */
- fputs (_ ("cannot find any C preprocessor (cpp)\n"), stdout);
- crash ();
- }
- }
+ if (stat (CPP, &buf) == 0)
+ return;
+
+ if (cppDefined) /* user specified cpp but it does not exist */
+ {
+ fprintf (stderr, _ ("cannot find C preprocessor: %s\n"), CPP);
+ crash ();
}
+
+ /* fall back to system CPP */
+ CPP = "cpp";
}
/*
@@ -374,8 +365,13 @@ open_input (const char *infile, const char *define)
close (1);
dup2 (pd[1], 1);
close (pd[0]);
- execv (arglist[0], (char **) arglist);
- perror ("execv");
+ execvp (arglist[0], (char **) arglist);
+ if (errno == ENOENT)
+ {
+ fprintf (stderr, _ ("cannot find C preprocessor: %s\n"), CPP);
+ exit (1);
+ }
+ perror ("execvp");
exit (1);
case -1:
perror ("fork");

View file

@ -1,64 +0,0 @@
diff --git a/string/test-strncasecmp.c b/string/test-strncasecmp.c
index 6c17530..acfe668 100644
--- a/string/test-strncasecmp.c
+++ b/string/test-strncasecmp.c
@@ -1,5 +1,5 @@
/* Test and measure strncasecmp functions.
- Copyright (C) 1999, 2002, 2003, 2005, 2010 Free Software Foundation, Inc.
+ Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Jakub Jelinek <jakub@redhat.com>, 1999.
@@ -251,9 +251,9 @@ do_random_tests (void)
}
}
-
+/* Regression test for BZ #12205 */
static void
-check1 (void)
+bz12205 (void)
{
static char cp [4096+16] __attribute__ ((aligned(4096)));
static char gotrel[4096] __attribute__ ((aligned(4096)));
@@ -270,6 +270,15 @@ check1 (void)
check_result (impl, s1, s2, n, exp_result);
}
+/* Regression test for BZ #14195 */
+static void
+bz14195 (void)
+{
+ const char *empty_string = "";
+ FOR_EACH_IMPL (impl, 0)
+ check_result (impl, empty_string, "", 5, 0);
+}
+
int
test_main (void)
{
@@ -277,7 +286,8 @@ test_main (void)
test_init ();
- check1 ();
+ bz12205 ();
+ bz14195 ();
printf ("%23s", "");
FOR_EACH_IMPL (impl, 0)
diff --git a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
index 5e6321e..9735ad0 100644
--- a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
+++ b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
@@ -2445,7 +2445,7 @@ L(less16bytes_sncmp):
# endif
jne L(neq_sncmp)
test %cl, %cl
- je L(eq)
+ je L(eq_sncmp)
cmp $1, REM
je L(eq_sncmp)
--
1.7.3.4

View file

@ -1,388 +0,0 @@
diff --git a/stdlib/Makefile b/stdlib/Makefile
index f7811c5..79c9acb 100644
--- a/stdlib/Makefile
+++ b/stdlib/Makefile
@@ -68,7 +68,8 @@ tests := tst-strtol tst-strtod testmb testrand testsort testdiv \
tst-atof1 tst-atof2 tst-strtod2 tst-strtod3 tst-rand48-2 \
tst-makecontext tst-strtod4 tst-strtod5 tst-qsort2 \
tst-makecontext2 tst-strtod6 tst-unsetenv1 \
- tst-makecontext3 bug-getcontext bug-fmtmsg1
+ tst-makecontext3 bug-getcontext bug-fmtmsg1 \
+ tst-strtod-overflow
include ../Makeconfig
diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
index 2166a08..a8a7ea8 100644
--- a/stdlib/strtod_l.c
+++ b/stdlib/strtod_l.c
@@ -60,6 +60,7 @@ extern unsigned long long int ____strtoull_l_internal (const char *, char **,
#include <math.h>
#include <stdlib.h>
#include <string.h>
+#include <stdint.h>
/* The gmp headers need some configuration frobs. */
#define HAVE_ALLOCA 1
@@ -72,7 +73,6 @@ extern unsigned long long int ____strtoull_l_internal (const char *, char **,
#include "longlong.h"
#include "fpioconst.h"
-#define NDEBUG 1
#include <assert.h>
@@ -174,19 +174,19 @@ extern const mp_limb_t _tens_in_limb[MAX_DIG_PER_LIMB + 1];
/* Return a floating point number of the needed type according to the given
multi-precision number after possible rounding. */
static FLOAT
-round_and_return (mp_limb_t *retval, int exponent, int negative,
+round_and_return (mp_limb_t *retval, intmax_t exponent, int negative,
mp_limb_t round_limb, mp_size_t round_bit, int more_bits)
{
if (exponent < MIN_EXP - 1)
{
- mp_size_t shift = MIN_EXP - 1 - exponent;
-
- if (shift > MANT_DIG)
+ if (exponent < MIN_EXP - 1 - MANT_DIG)
{
__set_errno (ERANGE);
return 0.0;
}
+ mp_size_t shift = MIN_EXP - 1 - exponent;
+
more_bits |= (round_limb & ((((mp_limb_t) 1) << round_bit) - 1)) != 0;
if (shift == MANT_DIG)
/* This is a special case to handle the very seldom case where
@@ -233,6 +233,9 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
__set_errno (ERANGE);
}
+ if (exponent > MAX_EXP)
+ goto overflow;
+
if ((round_limb & (((mp_limb_t) 1) << round_bit)) != 0
&& (more_bits || (retval[0] & 1) != 0
|| (round_limb & ((((mp_limb_t) 1) << round_bit) - 1)) != 0))
@@ -258,6 +261,7 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
}
if (exponent > MAX_EXP)
+ overflow:
return negative ? -FLOAT_HUGE_VAL : FLOAT_HUGE_VAL;
return MPN2FLOAT (retval, exponent, negative);
@@ -271,7 +275,7 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
factor for the resulting number (see code) multiply by it. */
static const STRING_TYPE *
str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
- int *exponent
+ intmax_t *exponent
#ifndef USE_WIDE_CHAR
, const char *decimal, size_t decimal_len, const char *thousands
#endif
@@ -301,6 +305,7 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
cy += __mpn_add_1 (n, n, *nsize, low);
if (cy != 0)
{
+ assert (*nsize < MPNSIZE);
n[*nsize] = cy;
++(*nsize);
}
@@ -335,7 +340,7 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
}
while (--digcnt > 0);
- if (*exponent > 0 && cnt + *exponent <= MAX_DIG_PER_LIMB)
+ if (*exponent > 0 && *exponent <= MAX_DIG_PER_LIMB - cnt)
{
low *= _tens_in_limb[*exponent];
start = _tens_in_limb[cnt + *exponent];
@@ -355,7 +360,10 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
cy = __mpn_mul_1 (n, n, *nsize, start);
cy += __mpn_add_1 (n, n, *nsize, low);
if (cy != 0)
- n[(*nsize)++] = cy;
+ {
+ assert (*nsize < MPNSIZE);
+ n[(*nsize)++] = cy;
+ }
}
return str;
@@ -413,7 +421,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
{
int negative; /* The sign of the number. */
MPN_VAR (num); /* MP representation of the number. */
- int exponent; /* Exponent of the number. */
+ intmax_t exponent; /* Exponent of the number. */
/* Numbers starting `0X' or `0x' have to be processed with base 16. */
int base = 10;
@@ -435,7 +443,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
/* Points at the character following the integer and fractional digits. */
const STRING_TYPE *expp;
/* Total number of digit and number of digits in integer part. */
- int dig_no, int_no, lead_zero;
+ size_t dig_no, int_no, lead_zero;
/* Contains the last character read. */
CHAR_TYPE c;
@@ -767,7 +775,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
are all or any is really a fractional digit will be decided
later. */
int_no = dig_no;
- lead_zero = int_no == 0 ? -1 : 0;
+ lead_zero = int_no == 0 ? (size_t) -1 : 0;
/* Read the fractional digits. A special case are the 'american
style' numbers like `16.' i.e. with decimal point but without
@@ -789,12 +797,13 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
(base == 16 && ({ CHAR_TYPE lo = TOLOWER (c);
lo >= L_('a') && lo <= L_('f'); })))
{
- if (c != L_('0') && lead_zero == -1)
+ if (c != L_('0') && lead_zero == (size_t) -1)
lead_zero = dig_no - int_no;
++dig_no;
c = *++cp;
}
}
+ assert (dig_no <= (uintmax_t) INTMAX_MAX);
/* Remember start of exponent (if any). */
expp = cp;
@@ -817,24 +826,80 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
if (c >= L_('0') && c <= L_('9'))
{
- int exp_limit;
+ intmax_t exp_limit;
/* Get the exponent limit. */
if (base == 16)
- exp_limit = (exp_negative ?
- -MIN_EXP + MANT_DIG + 4 * int_no :
- MAX_EXP - 4 * int_no + 4 * lead_zero + 3);
+ {
+ if (exp_negative)
+ {
+ assert (int_no <= (uintmax_t) (INTMAX_MAX
+ + MIN_EXP - MANT_DIG) / 4);
+ exp_limit = -MIN_EXP + MANT_DIG + 4 * (intmax_t) int_no;
+ }
+ else
+ {
+ if (int_no)
+ {
+ assert (lead_zero == 0
+ && int_no <= (uintmax_t) INTMAX_MAX / 4);
+ exp_limit = MAX_EXP - 4 * (intmax_t) int_no + 3;
+ }
+ else if (lead_zero == (size_t) -1)
+ {
+ /* The number is zero and this limit is
+ arbitrary. */
+ exp_limit = MAX_EXP + 3;
+ }
+ else
+ {
+ assert (lead_zero
+ <= (uintmax_t) (INTMAX_MAX - MAX_EXP - 3) / 4);
+ exp_limit = (MAX_EXP
+ + 4 * (intmax_t) lead_zero
+ + 3);
+ }
+ }
+ }
else
- exp_limit = (exp_negative ?
- -MIN_10_EXP + MANT_DIG + int_no :
- MAX_10_EXP - int_no + lead_zero + 1);
+ {
+ if (exp_negative)
+ {
+ assert (int_no
+ <= (uintmax_t) (INTMAX_MAX + MIN_10_EXP - MANT_DIG));
+ exp_limit = -MIN_10_EXP + MANT_DIG + (intmax_t) int_no;
+ }
+ else
+ {
+ if (int_no)
+ {
+ assert (lead_zero == 0
+ && int_no <= (uintmax_t) INTMAX_MAX);
+ exp_limit = MAX_10_EXP - (intmax_t) int_no + 1;
+ }
+ else if (lead_zero == (size_t) -1)
+ {
+ /* The number is zero and this limit is
+ arbitrary. */
+ exp_limit = MAX_10_EXP + 1;
+ }
+ else
+ {
+ assert (lead_zero
+ <= (uintmax_t) (INTMAX_MAX - MAX_10_EXP - 1));
+ exp_limit = MAX_10_EXP + (intmax_t) lead_zero + 1;
+ }
+ }
+ }
+
+ if (exp_limit < 0)
+ exp_limit = 0;
do
{
- exponent *= 10;
- exponent += c - L_('0');
-
- if (__builtin_expect (exponent > exp_limit, 0))
+ if (__builtin_expect ((exponent > exp_limit / 10
+ || (exponent == exp_limit / 10
+ && c - L_('0') > exp_limit % 10)), 0))
/* The exponent is too large/small to represent a valid
number. */
{
@@ -843,7 +908,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
/* We have to take care for special situation: a joker
might have written "0.0e100000" which is in fact
zero. */
- if (lead_zero == -1)
+ if (lead_zero == (size_t) -1)
result = negative ? -0.0 : 0.0;
else
{
@@ -862,6 +927,9 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
/* NOTREACHED */
}
+ exponent *= 10;
+ exponent += c - L_('0');
+
c = *++cp;
}
while (c >= L_('0') && c <= L_('9'));
@@ -930,7 +998,14 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
}
#endif
startp += lead_zero + decimal_len;
- exponent -= base == 16 ? 4 * lead_zero : lead_zero;
+ assert (lead_zero <= (base == 16
+ ? (uintmax_t) INTMAX_MAX / 4
+ : (uintmax_t) INTMAX_MAX));
+ assert (lead_zero <= (base == 16
+ ? ((uintmax_t) exponent
+ - (uintmax_t) INTMAX_MIN) / 4
+ : ((uintmax_t) exponent - (uintmax_t) INTMAX_MIN)));
+ exponent -= base == 16 ? 4 * (intmax_t) lead_zero : (intmax_t) lead_zero;
dig_no -= lead_zero;
}
@@ -972,7 +1047,10 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
}
/* Adjust the exponent for the bits we are shifting in. */
- exponent += bits - 1 + (int_no - 1) * 4;
+ assert (int_no <= (uintmax_t) (exponent < 0
+ ? (INTMAX_MAX - bits + 1) / 4
+ : (INTMAX_MAX - exponent - bits + 1) / 4));
+ exponent += bits - 1 + ((intmax_t) int_no - 1) * 4;
while (--dig_no > 0 && idx >= 0)
{
@@ -1024,13 +1102,15 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
really integer digits or belong to the fractional part; i.e. we normalize
123e-2 to 1.23. */
{
- register int incr = (exponent < 0 ? MAX (-int_no, exponent)
- : MIN (dig_no - int_no, exponent));
+ register intmax_t incr = (exponent < 0
+ ? MAX (-(intmax_t) int_no, exponent)
+ : MIN ((intmax_t) dig_no - (intmax_t) int_no,
+ exponent));
int_no += incr;
exponent -= incr;
}
- if (__builtin_expect (int_no + exponent > MAX_10_EXP + 1, 0))
+ if (__builtin_expect (exponent > MAX_10_EXP + 1 - (intmax_t) int_no, 0))
{
__set_errno (ERANGE);
return negative ? -FLOAT_HUGE_VAL : FLOAT_HUGE_VAL;
@@ -1215,7 +1295,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
digits we should have enough bits for the result. The remaining
decimal digits give us the information that more bits are following.
This can be used while rounding. (Two added as a safety margin.) */
- if (dig_no - int_no > (MANT_DIG - bits + 2) / 3 + 2)
+ if ((intmax_t) dig_no > (intmax_t) int_no + (MANT_DIG - bits + 2) / 3 + 2)
{
dig_no = int_no + (MANT_DIG - bits + 2) / 3 + 2;
more_bits = 1;
@@ -1223,7 +1303,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
else
more_bits = 0;
- neg_exp = dig_no - int_no - exponent;
+ neg_exp = (intmax_t) dig_no - (intmax_t) int_no - exponent;
/* Construct the denominator. */
densize = 0;
diff --git a/stdlib/tst-strtod-overflow.c b/stdlib/tst-strtod-overflow.c
new file mode 100644
index 0000000..668d55b
--- /dev/null
+++ b/stdlib/tst-strtod-overflow.c
@@ -0,0 +1,48 @@
+/* Test for integer/buffer overflow in strtod.
+ Copyright (C) 2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library 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.
+
+ The GNU C Library 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 the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#define EXPONENT "e-2147483649"
+#define SIZE 214748364
+
+static int
+do_test (void)
+{
+ char *p = malloc (1 + SIZE + sizeof (EXPONENT));
+ if (p == NULL)
+ {
+ puts ("malloc failed, cannot test for overflow");
+ return 0;
+ }
+ p[0] = '1';
+ memset (p + 1, '0', SIZE);
+ memcpy (p + 1 + SIZE, EXPONENT, sizeof (EXPONENT));
+ double d = strtod (p, NULL);
+ if (d != 0)
+ {
+ printf ("strtod returned wrong value: %a\n", d);
+ return 1;
+ }
+ return 0;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
--
1.7.3.4

View file

@ -1,775 +0,0 @@
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -206,7 +206,7 @@ tests = tst-typesizes \
tst-cond1 tst-cond2 tst-cond3 tst-cond4 tst-cond5 tst-cond6 tst-cond7 \
tst-cond8 tst-cond9 tst-cond10 tst-cond11 tst-cond12 tst-cond13 \
tst-cond14 tst-cond15 tst-cond16 tst-cond17 tst-cond18 tst-cond19 \
- tst-cond20 tst-cond21 tst-cond22 tst-cond23 \
+ tst-cond20 tst-cond21 tst-cond22 tst-cond23 tst-cond24 \
tst-robust1 tst-robust2 tst-robust3 tst-robust4 tst-robust5 \
tst-robust6 tst-robust7 tst-robust8 tst-robust9 \
tst-robustpi1 tst-robustpi2 tst-robustpi3 tst-robustpi4 tst-robustpi5 \
@@ -274,6 +275,7 @@ gen-as-const-headers = pthread-errnos.sym
LDFLAGS-pthread.so = -Wl,--enable-new-dtags,-z,nodelete,-z,initfirst
+LDFLAGS-tst-cond24 = $(no-as-needed) -lrt
include ../Makeconfig
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
index d14d7de..6761c13 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
@@ -212,8 +212,23 @@ __pthread_cond_timedwait:
sete 24(%esp)
je 41f
- /* Normal and PI futexes dont mix. Use normal futex functions only
- if the kernel does not support the PI futex functions. */
+ /* When a futex syscall with FUTEX_WAIT_REQUEUE_PI returns
+ successfully, it has already locked the mutex for us and the
+ pi_flag (24(%esp)) is set to denote that fact. However, if another
+ thread changed the futex value before we entered the wait, the
+ syscall may return an EAGAIN and the mutex is not locked. We go
+ ahead with a success anyway since later we look at the pi_flag to
+ decide if we got the mutex or not. The sequence numbers then make
+ sure that only one of the threads actually wake up. We retry using
+ normal FUTEX_WAIT only if the kernel returned ENOSYS, since normal
+ and PI futexes don't mix.
+
+ Note that we don't check for EAGAIN specifically; we assume that the
+ only other error the futex function could return is EAGAIN (barring
+ the ETIMEOUT of course, for the timeout case in futex) since
+ anything else would mean an error in our function. It is too
+ expensive to do that check for every call (which is quite common in
+ case of a large number of threads), so it has been skipped. */
cmpl $-ENOSYS, %eax
jne 41f
xorl %ecx, %ecx
@@ -273,9 +288,24 @@ __pthread_cond_timedwait:
jne 9f
15: cmpl $-ETIMEDOUT, %esi
- jne 8b
+ je 28f
+
+ /* We need to go back to futex_wait. If we're using requeue_pi, then
+ release the mutex we had acquired and go back. */
+ movl 24(%esp), %edx
+ test %edx, %edx
+ jz 8b
+
+ /* Adjust the mutex values first and then unlock it. The unlock
+ should always succeed or else the kernel did not lock the mutex
+ correctly. */
+ movl dep_mutex(%ebx), %eax
+ call __pthread_mutex_cond_lock_adjust
+ xorl %edx, %edx
+ call __pthread_mutex_unlock_usercnt
+ jmp 8b
- addl $1, wakeup_seq(%ebx)
+28: addl $1, wakeup_seq(%ebx)
adcl $0, wakeup_seq+4(%ebx)
addl $1, cond_futex(%ebx)
movl $ETIMEDOUT, %esi
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
index 366de69..0af06ac 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
@@ -136,7 +136,6 @@ __pthread_cond_wait:
cmpl $PI_BIT, %eax
jne 18f
-90:
movl $(FUTEX_WAIT_REQUEUE_PI|FUTEX_PRIVATE_FLAG), %ecx
movl %ebp, %edx
xorl %esi, %esi
@@ -152,11 +151,22 @@ __pthread_cond_wait:
sete 16(%esp)
je 19f
- cmpl $-EAGAIN, %eax
- je 91f
-
- /* Normal and PI futexes dont mix. Use normal futex functions only
- if the kernel does not support the PI futex functions. */
+ /* When a futex syscall with FUTEX_WAIT_REQUEUE_PI returns
+ successfully, it has already locked the mutex for us and the
+ pi_flag (16(%esp)) is set to denote that fact. However, if another
+ thread changed the futex value before we entered the wait, the
+ syscall may return an EAGAIN and the mutex is not locked. We go
+ ahead with a success anyway since later we look at the pi_flag to
+ decide if we got the mutex or not. The sequence numbers then make
+ sure that only one of the threads actually wake up. We retry using
+ normal FUTEX_WAIT only if the kernel returned ENOSYS, since normal
+ and PI futexes don't mix.
+
+ Note that we don't check for EAGAIN specifically; we assume that the
+ only other error the futex function could return is EAGAIN since
+ anything else would mean an error in our function. It is too
+ expensive to do that check for every call (which is quite common in
+ case of a large number of threads), so it has been skipped. */
cmpl $-ENOSYS, %eax
jne 19f
xorl %ecx, %ecx
@@ -206,12 +216,12 @@ __pthread_cond_wait:
cmpl 8(%esp), %edx
jne 7f
cmpl 4(%esp), %edi
- je 8b
+ je 22f
7: cmpl %ecx, %edx
jne 9f
cmp %eax, %edi
- je 8b
+ je 22f
9: addl $1, woken_seq(%ebx)
adcl $0, woken_seq+4(%ebx)
@@ -287,6 +297,22 @@ __pthread_cond_wait:
jmp 20b
cfi_adjust_cfa_offset(-FRAME_SIZE);
+
+ /* We need to go back to futex_wait. If we're using requeue_pi, then
+ release the mutex we had acquired and go back. */
+22: movl 16(%esp), %edx
+ test %edx, %edx
+ jz 8b
+
+ /* Adjust the mutex values first and then unlock it. The unlock
+ should always succeed or else the kernel did not lock the mutex
+ correctly. */
+ movl dep_mutex(%ebx), %eax
+ call __pthread_mutex_cond_lock_adjust
+ xorl %edx, %edx
+ call __pthread_mutex_unlock_usercnt
+ jmp 8b
+
/* Initial locking failed. */
1:
#if cond_lock == 0
@@ -400,77 +426,6 @@ __pthread_cond_wait:
call __lll_unlock_wake
jmp 11b
-91:
-.LcleanupSTART2:
- /* FUTEX_WAIT_REQUEUE_PI returned EAGAIN. We need to
- call it again. */
-
- /* Get internal lock. */
- movl $1, %edx
- xorl %eax, %eax
- LOCK
-#if cond_lock == 0
- cmpxchgl %edx, (%ebx)
-#else
- cmpxchgl %edx, cond_lock(%ebx)
-#endif
- jz 92f
-
-#if cond_lock == 0
- movl %ebx, %edx
-#else
- leal cond_lock(%ebx), %edx
-#endif
-#if (LLL_SHARED-LLL_PRIVATE) > 255
- xorl %ecx, %ecx
-#endif
- cmpl $-1, dep_mutex(%ebx)
- setne %cl
- subl $1, %ecx
- andl $(LLL_SHARED-LLL_PRIVATE), %ecx
-#if LLL_PRIVATE != 0
- addl $LLL_PRIVATE, %ecx
-#endif
- call __lll_lock_wait
-
-92:
- /* Increment the cond_futex value again, so it can be used as a new
- expected value. */
- addl $1, cond_futex(%ebx)
- movl cond_futex(%ebx), %ebp
-
- /* Unlock. */
- LOCK
-#if cond_lock == 0
- subl $1, (%ebx)
-#else
- subl $1, cond_lock(%ebx)
-#endif
- je 93f
-#if cond_lock == 0
- movl %ebx, %eax
-#else
- leal cond_lock(%ebx), %eax
-#endif
-#if (LLL_SHARED-LLL_PRIVATE) > 255
- xorl %ecx, %ecx
-#endif
- cmpl $-1, dep_mutex(%ebx)
- setne %cl
- subl $1, %ecx
- andl $(LLL_SHARED-LLL_PRIVATE), %ecx
-#if LLL_PRIVATE != 0
- addl $LLL_PRIVATE, %ecx
-#endif
- call __lll_unlock_wake
-
-93:
- /* Set the rest of SYS_futex args for FUTEX_WAIT_REQUEUE_PI. */
- xorl %ecx, %ecx
- movl dep_mutex(%ebx), %edi
- jmp 90b
-.LcleanupEND2:
-
.size __pthread_cond_wait, .-__pthread_cond_wait
versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait,
GLIBC_2_3_2)
@@ -651,10 +606,6 @@ __condvar_w_cleanup:
.long .LcleanupEND-.Lsub_cond_futex
.long __condvar_w_cleanup-.LSTARTCODE
.uleb128 0
- .long .LcleanupSTART2-.LSTARTCODE
- .long .LcleanupEND2-.LcleanupSTART2
- .long __condvar_w_cleanup-.LSTARTCODE
- .uleb128 0
.long .LcallUR-.LSTARTCODE
.long .LENDCODE-.LcallUR
.long 0
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
index a1c8ca8..b669abb 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
@@ -103,7 +103,7 @@ __pthread_cond_timedwait:
mov %RSI_LP, dep_mutex(%rdi)
22:
- xorl %r15d, %r15d
+ xorb %r15b, %r15b
#ifndef __ASSUME_FUTEX_CLOCK_REALTIME
# ifdef PIC
@@ -190,18 +190,39 @@ __pthread_cond_timedwait:
movl $SYS_futex, %eax
syscall
- movl $1, %r15d
+ cmpl $0, %eax
+ sete %r15b
+
#ifdef __ASSUME_REQUEUE_PI
jmp 62f
#else
- cmpq $-4095, %rax
- jnae 62f
+ je 62f
+
+ /* When a futex syscall with FUTEX_WAIT_REQUEUE_PI returns
+ successfully, it has already locked the mutex for us and the
+ pi_flag (%r15b) is set to denote that fact. However, if another
+ thread changed the futex value before we entered the wait, the
+ syscall may return an EAGAIN and the mutex is not locked. We go
+ ahead with a success anyway since later we look at the pi_flag to
+ decide if we got the mutex or not. The sequence numbers then make
+ sure that only one of the threads actually wake up. We retry using
+ normal FUTEX_WAIT only if the kernel returned ENOSYS, since normal
+ and PI futexes don't mix.
+
+ Note that we don't check for EAGAIN specifically; we assume that the
+ only other error the futex function could return is EAGAIN (barring
+ the ETIMEOUT of course, for the timeout case in futex) since
+ anything else would mean an error in our function. It is too
+ expensive to do that check for every call (which is quite common in
+ case of a large number of threads), so it has been skipped. */
+ cmpl $-ENOSYS, %eax
+ jne 62f
subq $cond_futex, %rdi
#endif
61: movl $(FUTEX_WAIT_BITSET|FUTEX_PRIVATE_FLAG), %esi
-60: xorl %r15d, %r15d
+60: xorb %r15b, %r15b
xorl %eax, %eax
/* The following only works like this because we only support
two clocks, represented using a single bit. */
@@ -248,7 +269,23 @@ __pthread_cond_timedwait:
ja 39f
45: cmpq $-ETIMEDOUT, %r14
- jne 38b
+ je 99f
+
+ /* We need to go back to futex_wait. If we're using requeue_pi, then
+ release the mutex we had acquired and go back. */
+ test %r15b, %r15b
+ jz 38b
+
+ /* Adjust the mutex values first and then unlock it. The unlock
+ should always succeed or else the kernel did not lock the
+ mutex correctly. */
+ movq %r8, %rdi
+ callq __pthread_mutex_cond_lock_adjust
+ xorl %esi, %esi
+ callq __pthread_mutex_unlock_usercnt
+ /* Reload cond_var. */
+ movq 8(%rsp), %rdi
+ jmp 38b
99: incq wakeup_seq(%rdi)
incl cond_futex(%rdi)
@@ -298,7 +335,7 @@ __pthread_cond_timedwait:
/* If requeue_pi is used the kernel performs the locking of the
mutex. */
41: movq 16(%rsp), %rdi
- testl %r15d, %r15d
+ testb %r15b, %r15b
jnz 64f
callq __pthread_mutex_cond_lock
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
index 6194852..ec403cd 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
@@ -136,19 +136,36 @@ __pthread_cond_wait:
cmpl $PI_BIT, %eax
jne 61f
-90:
movl $(FUTEX_WAIT_REQUEUE_PI|FUTEX_PRIVATE_FLAG), %esi
movl $SYS_futex, %eax
syscall
- movl $1, %r8d
- cmpq $-EAGAIN, %rax
- je 91f
+ cmpl $0, %eax
+ sete %r8b
+
#ifdef __ASSUME_REQUEUE_PI
jmp 62f
#else
- cmpq $-4095, %rax
- jnae 62f
+ je 62f
+
+ /* When a futex syscall with FUTEX_WAIT_REQUEUE_PI returns
+ successfully, it has already locked the mutex for us and the
+ pi_flag (%r8b) is set to denote that fact. However, if another
+ thread changed the futex value before we entered the wait, the
+ syscall may return an EAGAIN and the mutex is not locked. We go
+ ahead with a success anyway since later we look at the pi_flag to
+ decide if we got the mutex or not. The sequence numbers then make
+ sure that only one of the threads actually wake up. We retry using
+ normal FUTEX_WAIT only if the kernel returned ENOSYS, since normal
+ and PI futexes don't mix.
+
+ Note that we don't check for EAGAIN specifically; we assume that the
+ only other error the futex function could return is EAGAIN since
+ anything else would mean an error in our function. It is too
+ expensive to do that check for every call (which is quite common in
+ case of a large number of threads), so it has been skipped. */
+ cmpl $-ENOSYS, %eax
+ jne 62f
# ifndef __ASSUME_PRIVATE_FUTEX
movl $FUTEX_WAIT, %esi
@@ -161,7 +178,7 @@ __pthread_cond_wait:
#else
orl %fs:PRIVATE_FUTEX, %esi
#endif
-60: xorl %r8d, %r8d
+60: xorb %r8b, %r8b
movl $SYS_futex, %eax
syscall
@@ -191,10 +208,10 @@ __pthread_cond_wait:
jne 16f
cmpq 24(%rsp), %r9
- jbe 8b
+ jbe 19f
cmpq %rax, %r9
- jna 8b
+ jna 19f
incq woken_seq(%rdi)
@@ -236,7 +253,7 @@ __pthread_cond_wait:
/* If requeue_pi is used the kernel performs the locking of the
mutex. */
11: movq 16(%rsp), %rdi
- testl %r8d, %r8d
+ testb %r8b, %r8b
jnz 18f
callq __pthread_mutex_cond_lock
@@ -253,6 +270,23 @@ __pthread_cond_wait:
xorl %eax, %eax
jmp 14b
+ /* We need to go back to futex_wait. If we're using requeue_pi, then
+ release the mutex we had acquired and go back. */
+19: testb %r8b, %r8b
+ jz 8b
+
+ /* Adjust the mutex values first and then unlock it. The unlock
+ should always succeed or else the kernel did not lock the mutex
+ correctly. */
+ movq 16(%rsp), %rdi
+ callq __pthread_mutex_cond_lock_adjust
+ movq %rdi, %r8
+ xorl %esi, %esi
+ callq __pthread_mutex_unlock_usercnt
+ /* Reload cond_var. */
+ movq 8(%rsp), %rdi
+ jmp 8b
+
/* Initial locking failed. */
1:
#if cond_lock != 0
@@ -331,69 +365,6 @@ __pthread_cond_wait:
13: movq %r10, %rax
jmp 14b
-91:
-.LcleanupSTART2:
- /* FUTEX_WAIT_REQUEUE_PI returned EAGAIN. We need to
- call it again. */
- movq 8(%rsp), %rdi
-
- /* Get internal lock. */
- movl $1, %esi
- xorl %eax, %eax
- LOCK
-#if cond_lock == 0
- cmpxchgl %esi, (%rdi)
-#else
- cmpxchgl %esi, cond_lock(%rdi)
-#endif
- jz 92f
-
-#if cond_lock != 0
- addq $cond_lock, %rdi
-#endif
- LP_OP(cmp) $-1, dep_mutex-cond_lock(%rdi)
- movl $LLL_PRIVATE, %eax
- movl $LLL_SHARED, %esi
- cmovne %eax, %esi
- callq __lll_lock_wait
-#if cond_lock != 0
- subq $cond_lock, %rdi
-#endif
-92:
- /* Increment the cond_futex value again, so it can be used as a new
- expected value. */
- incl cond_futex(%rdi)
- movl cond_futex(%rdi), %edx
-
- /* Release internal lock. */
- LOCK
-#if cond_lock == 0
- decl (%rdi)
-#else
- decl cond_lock(%rdi)
-#endif
- jz 93f
-
-#if cond_lock != 0
- addq $cond_lock, %rdi
-#endif
- LP_OP(cmp) $-1, dep_mutex-cond_lock(%rdi)
- movl $LLL_PRIVATE, %eax
- movl $LLL_SHARED, %esi
- cmovne %eax, %esi
- /* The call preserves %rdx. */
- callq __lll_unlock_wake
-#if cond_lock != 0
- subq $cond_lock, %rdi
-#endif
-93:
- /* Set the rest of SYS_futex args for FUTEX_WAIT_REQUEUE_PI. */
- xorq %r10, %r10
- mov dep_mutex(%rdi), %R8_LP
- leaq cond_futex(%rdi), %rdi
- jmp 90b
-.LcleanupEND2:
-
.size __pthread_cond_wait, .-__pthread_cond_wait
versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait,
GLIBC_2_3_2)
@@ -547,10 +518,6 @@ __condvar_cleanup1:
.uleb128 .LcleanupEND-.LcleanupSTART
.uleb128 __condvar_cleanup1-.LSTARTCODE
.uleb128 0
- .uleb128 .LcleanupSTART2-.LSTARTCODE
- .uleb128 .LcleanupEND2-.LcleanupSTART2
- .uleb128 __condvar_cleanup1-.LSTARTCODE
- .uleb128 0
.uleb128 .LcallUR-.LSTARTCODE
.uleb128 .LENDCODE-.LcallUR
.uleb128 0
diff --git a/nptl/tst-cond24.c b/nptl/tst-cond24.c
new file mode 100644
index 0000000..2eb2df1
--- /dev/null
+++ b/nptl/tst-cond24.c
@@ -0,0 +1,249 @@
+/* Verify that condition variables synchronized by PI mutexes don't hang.
+ Copyright (C) 2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library 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.
+
+ The GNU C Library 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 the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <errno.h>
+#include <sys/types.h>
+#include <sys/syscall.h>
+#include <unistd.h>
+#include <sys/time.h>
+#include <time.h>
+
+#define THREADS_NUM 5
+#define MAXITER 50000
+
+static pthread_mutex_t mutex;
+static pthread_mutexattr_t mutex_attr;
+static pthread_cond_t cond;
+static pthread_t threads[THREADS_NUM];
+static int pending = 0;
+
+typedef void * (*threadfunc) (void *);
+
+void *
+thread_fun_timed (void *arg)
+{
+ int *ret = arg;
+ int rv, i;
+
+ printf ("Started thread_fun_timed[%d]\n", *ret);
+
+ for (i = 0; i < MAXITER / THREADS_NUM; i++)
+ {
+ rv = pthread_mutex_lock (&mutex);
+ if (rv)
+ {
+ printf ("pthread_mutex_lock: %s(%d)\n", strerror (rv), rv);
+ *ret = 1;
+ goto out;
+ }
+
+ while (!pending)
+ {
+ struct timespec ts;
+ clock_gettime(CLOCK_REALTIME, &ts);
+ ts.tv_sec += 20;
+ rv = pthread_cond_timedwait (&cond, &mutex, &ts);
+
+ /* There should be no timeout either. */
+ if (rv)
+ {
+ printf ("pthread_cond_wait: %s(%d)\n", strerror (rv), rv);
+ *ret = 1;
+ goto out;
+ }
+ }
+
+ pending--;
+
+ rv = pthread_mutex_unlock (&mutex);
+ if (rv)
+ {
+ printf ("pthread_mutex_unlock: %s(%d)\n", strerror (rv), rv);
+ *ret = 1;
+ goto out;
+ }
+ }
+
+ *ret = 0;
+
+out:
+ return ret;
+}
+
+void *
+thread_fun (void *arg)
+{
+ int *ret = arg;
+ int rv, i;
+
+ printf ("Started thread_fun[%d]\n", *ret);
+
+ for (i = 0; i < MAXITER / THREADS_NUM; i++)
+ {
+ rv = pthread_mutex_lock (&mutex);
+ if (rv)
+ {
+ printf ("pthread_mutex_lock: %s(%d)\n", strerror (rv), rv);
+ *ret = 1;
+ goto out;
+ }
+
+ while (!pending)
+ {
+ rv = pthread_cond_wait (&cond, &mutex);
+
+ if (rv)
+ {
+ printf ("pthread_cond_wait: %s(%d)\n", strerror (rv), rv);
+ *ret = 1;
+ goto out;
+ }
+ }
+
+ pending--;
+
+ rv = pthread_mutex_unlock (&mutex);
+ if (rv)
+ {
+ printf ("pthread_mutex_unlock: %s(%d)\n", strerror (rv), rv);
+ *ret = 1;
+ goto out;
+ }
+ }
+
+ *ret = 0;
+
+out:
+ return ret;
+}
+
+static int
+do_test_wait (threadfunc f)
+{
+ int i;
+ int rv;
+ int counter = 0;
+ int retval[THREADS_NUM];
+
+ puts ("Starting test");
+
+ rv = pthread_mutexattr_init (&mutex_attr);
+ if (rv)
+ {
+ printf ("pthread_mutexattr_init: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+
+ rv = pthread_mutexattr_setprotocol (&mutex_attr, PTHREAD_PRIO_INHERIT);
+ if (rv)
+ {
+ printf ("pthread_mutexattr_setprotocol: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+
+ rv = pthread_mutex_init (&mutex, &mutex_attr);
+ if (rv)
+ {
+ printf ("pthread_mutex_init: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+
+ rv = pthread_cond_init (&cond, NULL);
+ if (rv)
+ {
+ printf ("pthread_cond_init: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+
+ for (i = 0; i < THREADS_NUM; i++)
+ {
+ retval[i] = i;
+ rv = pthread_create (&threads[i], NULL, f, &retval[i]);
+ if (rv)
+ {
+ printf ("pthread_create: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+ }
+
+ for (; counter < MAXITER; counter++)
+ {
+ rv = pthread_mutex_lock (&mutex);
+ if (rv)
+ {
+ printf ("pthread_mutex_lock: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+
+ if (!(counter % 100))
+ printf ("counter: %d\n", counter);
+ pending += 1;
+
+ rv = pthread_cond_signal (&cond);
+ if (rv)
+ {
+ printf ("pthread_cond_signal: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+
+ rv = pthread_mutex_unlock (&mutex);
+ if (rv)
+ {
+ printf ("pthread_mutex_unlock: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+ }
+
+ for (i = 0; i < THREADS_NUM; i++)
+ {
+ void *ret;
+ rv = pthread_join (threads[i], &ret);
+ if (rv)
+ {
+ printf ("pthread_join: %s(%d)\n", strerror (rv), rv);
+ return 1;
+ }
+ if (ret && *(int *)ret)
+ {
+ printf ("Thread %d returned with an error\n", i);
+ return 1;
+ }
+ }
+
+ return 0;
+}
+
+static int
+do_test (void)
+{
+ puts ("Testing pthread_cond_wait");
+ int ret = do_test_wait (thread_fun);
+ if (ret)
+ return ret;
+
+ puts ("Testing pthread_cond_timedwait");
+ return do_test_wait (thread_fun_timed);
+}
+
+#define TIMEOUT 10
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
--
1.7.3.4

View file

@ -1,65 +0,0 @@
#!/bin/bash
daemon_name="nscd"
. /etc/rc.conf
. /etc/rc.d/functions
get_pid() {
pidof -o %PPID $daemon_name
}
case "$1" in
start)
stat_busy "Starting $daemon_name daemon"
PID=$(get_pid)
if [[ -z $PID ]]; then
rm -f /run/$daemon_name.pid
mkdir -p /run/nscd /var/db/nscd
rm -f /run/nscd/* /var/db/nscd/*
$daemon_name
if (( $? > 0 )); then
stat_fail
exit 1
else
echo $(get_pid) > /var/run/$daemon_name.pid
add_daemon $daemon_name
stat_done
fi
else
stat_fail
exit 1
fi
;;
stop)
stat_busy "Stopping $daemon_name daemon"
PID=$(get_pid)
[[ -n $PID ]] && nscd --shutdown &> /dev/null
if (( $? > 0 )); then
stat_fail
exit 1
else
rm -f /run/$daemon_name.pid &> /dev/null
rm_daemon $daemon_name
stat_done
fi
;;
restart)
$0 stop
sleep 3
$0 start
;;
status)
stat_busy "Checking $daemon_name status";
ck_status $daemon_name
;;
*)
echo "usage: $0 {start|stop|restart|status}"
esac
exit 0

View file

@ -7,15 +7,15 @@
noautobuild=1
pkgname=isl
pkgver=0.10
pkgver=0.11.1
pkgrel=1
pkgdesc="Library for manipulating sets and relations of integer points bounded by linear constraints"
arch=('i686' 'x86_64')
url="http://www.kotnet.org/~skimo/isl/"
license=('LGPL2.1')
license=('MIT')
options=('!libtool')
source=(http://www.kotnet.org/~skimo/isl/$pkgname-$pkgver.tar.bz2)
md5sums=('c1ece653891bb2a5f55ca25e3f4e8f35')
md5sums=('bce1586384d8635a76d2f017fb067cd2')
build() {
cd "$srcdir/$pkgname-$pkgver"
@ -33,5 +33,7 @@ package() {
make -j1 DESTDIR="$pkgdir/" install
install -dm755 $pkgdir/usr/share/gdb/auto-load/usr/lib/
mv $pkgdir/{,/usr/share/gdb/auto-load/}usr/lib/libisl.so.10.0.0-gdb.py
mv $pkgdir/{,/usr/share/gdb/auto-load/}usr/lib/libisl.so.10.1.1-gdb.py
install -Dm644 LICENSE $pkgdir/usr/share/licenses/isl/LICENSE
}

View file

@ -0,0 +1,110 @@
#
# Configuration for Cubox - /usr/share/alsa/cards/Kirkwood_SPDIF.conf
#
<confdir:pcm/front.conf>
Kirkwood_SPDIF.pcm.front.0 {
@args [ CARD ]
@args.CARD {
type string
}
type softvol
slave.pcm {
type hw
card $CARD
}
control {
name "PCM Playback Volume"
card $CARD
}
}
Kirkwood_SPDIF.pcm.default {
@args [ CARD ]
@args.CARD {
type string
}
type asym
playback.pcm {
type plug
slave.pcm {
type softvol
slave.pcm {
@func concat
strings [ "dmix:" $CARD ]
}
control {
name = "PCM Playback Volume"
card $CARD
}
}
}
capture.pcm {
type plug
slave.pcm {
@func concat
strings [ "dnsoop:" $CARD ]
}
}
}
<confdir:pcm/iec958.conf>
Kirkwood_SPDIF.pcm.iec958.0 {
@args [ CARD AES0 AES1 AES2 AES3 ]
@args.CARD { type string }
@args.AES0 { type integer }
@args.AES1 { type integer }
@args.AES2 { type integer }
@args.AES3 { type integer }
type hooks
slave.pcm {
type hw
card $CARD
}
hooks.0 {
type ctl_elems
hook_args [
{
interface PCM
name "IEC958 Playback Default"
lock true
preserve true
optional true
value [ 0x06 0x82 0x00 0x01 ]
# value [ $AES0 $AES1 $AES2 $AES3 ]
}
]
}
}
<confdir:pcm/hdmi.conf>
Kirkwood_SPDIF.pcm.hdmi.0 {
@args [ CARD AES0 AES1 AES2 AES3 ]
@args.CARD { type string }
@args.AES0 { type integer }
@args.AES1 { type integer }
@args.AES2 { type integer }
@args.AES3 { type integer }
type hooks
slave.pcm {
type hw
card $CARD
}
hooks.0 {
type ctl_elems
hook_args [
{
interface PCM
name "IEC958 Playback Default"
lock true
preserve true
optional true
value [ 0x06 0x82 0x00 0x01 ]
# value [ $AES0 $AES1 $AES2 $AES3 ]
}
]
}
}

View file

@ -0,0 +1,158 @@
# Maintainer: Kevin Mihelich <kevin@archlinuxarm.org>
# Maintainer: Dave ... <pepdog@archlinuxarm.org>
buildarch=4
pkgbase=linux-cubox-headless
pkgname=('linux-cubox-headless')
_kernelname=${pkgname#linux}
_basekernel=3.5
pkgver=${_basekernel}.7
pkgrel=7
cryptover=1.5
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'
"http://download.gna.org/cryptodev-linux/cryptodev-linux-${cryptover}.tar.gz"
'dovefb_patch1'.patch
'dovefb_patch2'.patch
"kirkwood-spdif-name.patch"
"Kirkwood_SPDIF.conf")
md5sums=('05dde562a417c40ec002451168c9f171'
'9d3c56a4b999c8bfbd4018089a62f662'
'3a4b8d23c1708283e29477931d63ffb8'
'f1a0a82c5a957c45d3a118e4f7c2a80e'
'778d87956820ce7bffe8bb1a45416d2e'
'9757a7460741b5284cadd0b12a2d7df6'
'a746383e6ce46bcecb662acb3ac21b3f')
__gitroot="git://github.com/vDorst/linux.git"
__gitname="linux"
build() {
cd "${srcdir}"
msg "Connecting to GIT server...."
if [ -d $__gitname ] ; then
cd $__gitname && git pull origin
msg "The local files are updated."
else
git clone --depth 1 $__gitroot
fi
msg "GIT checkout done or server timeout"
cd "${srcdir}/${__gitname}"
# set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param)
# remove this when a Kconfig knob is made available by upstream
# (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
#video patches
patch -Np1 -i "${srcdir}/dovefb_patch1.patch"
patch -Np1 -i "${srcdir}/dovefb_patch2.patch"
# Changed kirkwood spdif name to SPDIF instead of S/PDIF.
patch -Np1 -i "${srcdir}/kirkwood-spdif-name.patch"
cat "${srcdir}/config" > ./.config
# set extraversion to pkgrel
sed -ri "s|^(EXTRAVERSION =).*|\1 -${pkgrel}|" Makefile
# don't run depmod on 'make install'. We'll do this ourselves in packaging
sed -i '2iexit 0' scripts/depmod.sh
# get kernel version
make prepare
# load configuration
# Configure the kernel. Replace the line below with one of your choice.
#make menuconfig # CLI menu for configuration
#make nconfig # new CLI menu for configuration
#make xconfig # X-based configuration
#make oldconfig # using old config from previous kernel version
# ... or manually edit .config
# Copy back our configuration (use with new kernel version)
#cp ./.config ../${pkgver}.config
####################
# stop here
# this is useful to configure the kernel
#msg "Stopping build"
#return 1
####################
#yes "" | make config
# build!
make ${MAKEFLAGS} modules uImage
# build cryptodev module
cd "${srcdir}/cryptodev-linux-${cryptover}"
make KERNEL_DIR="${srcdir}/${__gitname}"
}
package_linux-cubox-headless() {
pkgdesc="The Linux Kernel and modules for the Cubox using maximum ram but has console fb still"
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}' 'cryptodev_friendly')
conflicts=('kernel26' 'linux')
replaces=('kernel26')
backup=("etc/mkinitcpio.d/${pkgname}.preset")
install=${pkgname}.install
cd "${srcdir}/${__gitname}"
KARCH=arm
# get kernel version
_kernver="$(make kernelrelease)"
mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot}
cd "${srcdir}/linux"
make INSTALL_MOD_PATH="${pkgdir}" modules_install
cp arch/$KARCH/boot/uImage "${pkgdir}/boot/uImage"
# set correct depmod command for install
sed \
-e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/g" \
-e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \
-i "${startdir}/${pkgname}.install"
# remove build and source links
rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build}
# remove the firmware
rm -rf "${pkgdir}/lib/firmware"
# gzip -9 all modules to save 100MB of space
find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
# make room for external modules
ln -s "../extramodules-${pkgver}-${_kernelname:-ARCH}" "${pkgdir}/lib/modules/${_kernver}/extramodules"
# add real version for building modules and running depmod from post_install/upgrade
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"
# move module tree /lib -> /usr/lib
mkdir -p "${pkgdir}/usr"
mv "$pkgdir/lib" "$pkgdir/usr"
install -Dm644 "${srcdir}/Kirkwood_SPDIF.conf" \
"${pkgdir}/usr/share/alsa/cards/Kirkwood_SPDIF.conf"
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,54 @@
From: Jean-Francois Moine <moinejf@free.fr>
Date: Thu Nov 15 18:14:43 CET 2012
Stop the dovefb irq's after video display
This patch is to be applied to René van Dorst's linux kernel
git://github.com/vDorst/linux.git
branch
CuBox-v3.5.7-Patched
diff --git a/drivers/video/dovefb/dovefb_ovly.c b/drivers/video/dovefb/dovefb_ovly.c
index 68cfdd2..d640ac7 100644
--- a/drivers/video/dovefb/dovefb_ovly.c
+++ b/drivers/video/dovefb/dovefb_ovly.c
@@ -322,7 +322,7 @@ static int dovefb_ovly_ioctl(struct fb_info *fi, unsigned int cmd,
{
void __user *argp = (void __user *)arg;
struct dovefb_layer_info *dfli = fi->par;
- u32 x;
+ u32 x, irq_ena;
int vmode = 0;
int gfx_on = 1;
int vid_on = 1;
@@ -528,19 +528,19 @@ static int dovefb_ovly_ioctl(struct fb_info *fi, unsigned int cmd,
case DOVEFB_IOCTL_SWITCH_VID_OVLY:
if (copy_from_user(&vid_on, argp, sizeof(int)))
return -EFAULT;
+ x = readl(dfli->reg_base + LCD_SPU_DMA_CTRL0);
+ irq_ena = readl(dfli->reg_base + SPU_IRQ_ENA);
if (0 == vid_on) {
- x = readl(dfli->reg_base + LCD_SPU_DMA_CTRL0) &
- ~CFG_DMA_ENA_MASK;
- writel(x, dfli->reg_base + LCD_SPU_DMA_CTRL0);
+ x &= ~CFG_DMA_ENA_MASK;
+ irq_ena &= ~(DOVEFB_VID_INT_MASK | DOVEFB_VSYNC_INT_MASK);
} else {
- x = readl(dfli->reg_base + LCD_SPU_DMA_CTRL0) |
- CFG_DMA_ENA(0x1);
- writel(x, dfli->reg_base + LCD_SPU_DMA_CTRL0);
+ x |= CFG_DMA_ENA(0x1);
+
/* Enable VID & VSync. */
- x = readl(dfli->reg_base + SPU_IRQ_ENA) |
- DOVEFB_VID_INT_MASK | DOVEFB_VSYNC_INT_MASK;
- writel(x, dfli->reg_base + SPU_IRQ_ENA);
+ irq_ena |= DOVEFB_VID_INT_MASK | DOVEFB_VSYNC_INT_MASK;
}
+ writel(x, dfli->reg_base + LCD_SPU_DMA_CTRL0);
+ writel(irq_ena, dfli->reg_base + SPU_IRQ_ENA);
break;
case DOVEFB_IOCTL_SWITCH_GRA_OVLY:
if (copy_from_user(&gfx_on, argp, sizeof(int)))

Some files were not shown because too many files have changed in this diff Show more