mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
using theirs
This commit is contained in:
commit
efd8e60242
158 changed files with 7489 additions and 3889 deletions
|
@ -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.
|
||||
|
|
99
alarm/ioquake3-rbp/PKGBUILD
Normal file
99
alarm/ioquake3-rbp/PKGBUILD
Normal 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:
|
25
alarm/ioquake3-rbp/ioquake3-build.sh.patch
Normal file
25
alarm/ioquake3-rbp/ioquake3-build.sh.patch
Normal 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
|
34
alarm/ioquake3-rbp/ioquake3-rbp.install
Normal file
34
alarm/ioquake3-rbp/ioquake3-rbp.install
Normal 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 $*
|
||||
|
||||
|
12
alarm/ioquake3-rbp/quake3.desktop
Normal file
12
alarm/ioquake3-rbp/quake3.desktop
Normal 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;
|
||||
|
5
alarm/ioquake3-rbp/quake3.launcher
Normal file
5
alarm/ioquake3-rbp/quake3.launcher
Normal file
|
@ -0,0 +1,5 @@
|
|||
#!/bin/bash
|
||||
|
||||
cd "/opt/IOQ3_PATH"
|
||||
exec ./IOQ3_BINARY $*
|
||||
|
5
alarm/ioquake3-rbp/quake3ded.launcher
Normal file
5
alarm/ioquake3-rbp/quake3ded.launcher
Normal file
|
@ -0,0 +1,5 @@
|
|||
#!/bin/bash
|
||||
|
||||
cd "/opt/IOQ3_PATH"
|
||||
exec ./IOQ3_BINARY $*
|
||||
|
30
alarm/libbcm2835/PKGBUILD
Normal file
30
alarm/libbcm2835/PKGBUILD
Normal 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
|
||||
}
|
|
@ -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
|
||||
|
|
@ -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"
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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
|
||||
}
|
|
@ -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"
|
||||
}
|
|
@ -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
|
||||
}
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
post_upgrade() {
|
||||
|
||||
}
|
|
@ -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')
|
||||
|
|
|
@ -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
24
aur/cower/PKGBUILD
Normal 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
33
aur/dfc/PKGBUILD
Normal 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
7
aur/dfc/dfc.install
Normal 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
|
||||
}
|
41
aur/flashbench-git/PKGBUILD
Normal file
41
aur/flashbench-git/PKGBUILD
Normal 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/
|
||||
}
|
|
@ -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')
|
||||
|
|
|
@ -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"
|
||||
|
|
10
aur/hd-idle/hd-idle.service
Normal file
10
aur/hd-idle/hd-idle.service
Normal 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
39
aur/knockd/PKGBUILD
Normal 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
37
aur/knockd/knockd
Normal 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
|
5
aur/knockd/knockd.logrotate
Normal file
5
aur/knockd/knockd.logrotate
Normal file
|
@ -0,0 +1,5 @@
|
|||
/var/log/knockd.log {
|
||||
missingok
|
||||
notifempty
|
||||
delaycompress
|
||||
}
|
10
aur/knockd/knockd.service
Normal file
10
aur/knockd/knockd.service
Normal 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
10
aur/knockd/limits.h.patch
Normal 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";
|
|
@ -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')
|
||||
|
|
|
@ -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
|
|
@ -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
|
||||
|
|
|
@ -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
27
aur/monkey/PKGBUILD
Normal 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
32
aur/monkey/monkey
Executable 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
14
aur/monkey/monkey.install
Normal 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}"
|
||||
}
|
|
@ -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
|
||||
|
|
|
@ -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 :
|
||||
|
|
|
@ -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
37
aur/netctl/PKGBUILD
Normal 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
149
aur/netctl/zsh-completion
Normal 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
9
aur/owfs/PKGBUILD
Executable file → Normal 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"
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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')
|
||||
|
|
|
@ -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")
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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')
|
|
@ -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"
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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=""
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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"
|
||||
}
|
||||
|
||||
|
|
11
aur/sickbeard-git/sickbeard-system.service
Normal file
11
aur/sickbeard-git/sickbeard-system.service
Normal 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
|
8
aur/sickbeard-git/sickbeard-user.service
Normal file
8
aur/sickbeard-git/sickbeard-user.service
Normal 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
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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
207
aur/uuid/ossp.patch
Normal 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";
|
|
@ -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
|
||||
}
|
|
@ -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
|
|
@ -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
|
||||
}
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -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 {} \;
|
||||
|
||||
|
|
|
@ -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
|
|
@ -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
|
|
@ -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() {
|
||||
|
|
|
@ -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'
|
||||
|
|
|
@ -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:
|
||||
|
|
12
community/yaws/yaws.service
Normal file
12
community/yaws/yaws.service
Normal 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
|
|
@ -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
|
||||
}
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
||||
|
|
|
@ -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'
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -21,6 +21,7 @@ http:::
|
|||
games:::
|
||||
lock:::
|
||||
uuidd:!::
|
||||
dbus:x::
|
||||
network:x::
|
||||
video:x::
|
||||
audio:::
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -5,4 +5,5 @@ mail:x:14871::::::
|
|||
ftp:x:14871::::::
|
||||
http:x:14871::::::
|
||||
uuidd:x:14871::::::
|
||||
dbus:x:14871::::::
|
||||
nobody:x:14871::::::
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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...):
|
||||
|
|
|
@ -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
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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");
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
||||
|
|
@ -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
|
|
@ -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
|
||||
}
|
||||
|
|
110
core/linux-cubox-headless/Kirkwood_SPDIF.conf
Normal file
110
core/linux-cubox-headless/Kirkwood_SPDIF.conf
Normal 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 ]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
158
core/linux-cubox-headless/PKGBUILD
Normal file
158
core/linux-cubox-headless/PKGBUILD
Normal 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"
|
||||
}
|
||||
|
||||
|
3830
core/linux-cubox-headless/config
Normal file
3830
core/linux-cubox-headless/config
Normal file
File diff suppressed because it is too large
Load diff
54
core/linux-cubox-headless/dovefb_patch1.patch
Normal file
54
core/linux-cubox-headless/dovefb_patch1.patch
Normal 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
Loading…
Reference in a new issue