diff options
author | James Meyer <james.meyer@operamail.com> | 2013-02-19 21:10:18 (GMT) |
---|---|---|
committer | James Meyer <james.meyer@operamail.com> | 2013-02-19 21:10:18 (GMT) |
commit | 2648e999d277eac5c3d331a3609bcc73fafbea71 (patch) | |
tree | 40951fb8e7fdbe28a0baa324ae615055203f1e2e /abs/extra | |
parent | c759b5e0c4aa6fc37412b4dee2cf9ad993fd376d (diff) | |
parent | 7e6f7ca174e1af67178dc5293a312a4a733eb095 (diff) | |
download | linhes_pkgbuild-2648e999d277eac5c3d331a3609bcc73fafbea71.zip linhes_pkgbuild-2648e999d277eac5c3d331a3609bcc73fafbea71.tar.gz linhes_pkgbuild-2648e999d277eac5c3d331a3609bcc73fafbea71.tar.bz2 |
Merge branch 'testing'
# By James Meyer (1091) and others
# Via James Meyer (5) and others
* testing: (1148 commits)
LinHES-config: during install don't kill off lirc. This keeps the remote active all the way to the finish
Change version numbers to 8.0 to match the release number. LinHES-conifg LinHES-system mythdb-initial runit-scripts supplemental-web
LinHES-conifig: mv_install.py for the last partition don't go all the way to the end. Gotta leave room for gpt tables.
xf86-video-ati: xorg ati driver.
LinHES-config: timezip.py add syncing up of parental lvl passwords and starting level with MBE.
LinHES-system: correct the logic for breaking out of the wmctrl loop. As written it would break out of the inner loop..but not the 60 iteration loop.
e16_theme_settings: remove slide-in prop for new windows. For whatever reason this was preventing mplayer from being positioned correctly for appletrailers.
LinHES-config, mythinstall: change case of hd_pvr and serial to all lower refs #902
zilog-firmware: firmware for TX support of the hdpvr and pvr-150 In general I can't recommend anybody using these transmitters but including the firmware just in case someone really wants to
linhes-udev-rules: added hdprv_lirc rule. All of these lirc rules are limited to exactly one device. If more then one device is present then only the last device in init will get the symlink
runit-scripts: fix logging for igdeamon, add support to remote init script so that the blaster is always the first device in the chain. added support specificly for hd_pvr
LinHES-system: add lh_system_restore and lh_system_backup. These scripts are called from the mythmenu. refs #900
iguanair: rebuild with python 2.7
LinHES-system: msg_daemon.py fix init and nasty bug related to timeout. In a nutshell timeout wouldn't work unless a msg without a timeout was called first.
linhes-udev-rules: add rules for mce,streamzap,serial lirc devices.
mythinstall: recompile for matching libs
mythtv: latest .25-fixes and change mythbackup/restore call lh_system_$op to replace mythbackup/mythrestore. mythbackup no longer works correctly with the new windowmanager
linhes-scripts: myth2mp3, myth2x264, myth2xvid: use mythutil to get cutlist
LinHES-config, supplimental-web: Fix proxy numbering for Ceton infiniTV
linhes-system: add additional stuff to the system backup and also introduced an exclude file. The exclude/include files are locate in /home/mythtv/backup_config/
...
Diffstat (limited to 'abs/extra')
1089 files changed, 25767 insertions, 31588 deletions
diff --git a/abs/extra/aacskeys/PKGBUILD b/abs/extra/aacskeys/PKGBUILD new file mode 100644 index 0000000..977aef5 --- /dev/null +++ b/abs/extra/aacskeys/PKGBUILD @@ -0,0 +1,51 @@ +# Submitter: Paul Burton <paulburton89@gmail.com> +# Maintainer: Zebulon <zeb@zebulon.org.uk> +pkgname=aacskeys +pkgver="0.4.0e" +pkgrel=2 +pkgdesc="A library and program to retrieve decryption keys for HD discs" +arch=('i686' 'x86_64') +url="http://forum.doom9.org/showthread.php?t=123311" +license=('custom') +depends=('openssl') +makedepends=('java-environment' 'premake') +source=(http://debian-multimedia.org/pool/main/a/aacskeys/${pkgname}_0.4.0e.orig.tar.gz + http://deb-multimedia.org/pool/main/a/aacskeys/aacskeys_0.4.0e-dmo2.diff.gz) +sha1sums=('8790f0d4098d6bc83304ad2136cc9681374df83a' + '325504f38a5ac1e9f7be740a602faa2c8d4b812c') + +build() { + + cd "${srcdir}/$pkgname-$pkgver" + patch -Np1 -i ../${pkgname}_$pkgver-dmo2.diff + + # Paranoia: remove binaries, make sure they aren't used + rm -rf bin lib + + # If java-environement is installed for the first time + # we need to source profile to set JAVA_HOME + # source /etc/profile + + sed -i 's|/usr/local/ssl/include|/usr/include|' premake.lua + sed -i 's|/usr/local/ssl/lib|/usr/lib|' premake.lua + sed -i "s|/usr/lib/jvm/java-6-sun/include|$JAVA_HOME/include|" premake.lua + + make || return 1 +} + +package() { + cd "${srcdir}/$pkgname-$pkgver" + + # Install lib + mkdir -p ${pkgdir}/usr/lib + cp lib/linux/libaacskeys.so ${pkgdir}/usr/lib/ || return 1 + + # Install program + mkdir -p ${pkgdir}/usr/bin + cp bin/linux/aacskeys ${pkgdir}/usr/bin || return 1 + + # Install resources + mkdir -p ${pkgdir}/usr/share/$pkgname + cp ./debian/HostKeyCertificate_PS3.txt ${pkgdir}/usr/share/$pkgname/HostKeyCertificate.txt || return 1 + cp ./debian/ProcessingDeviceKeysSimple.txt ${pkgdir}/usr/share/$pkgname/ || return 1 +} diff --git a/abs/extra/abs/PKGBUILD b/abs/extra/abs/PKGBUILD deleted file mode 100644 index 4273e8a..0000000 --- a/abs/extra/abs/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 65230 2010-01-25 13:11:11Z allan $ -# Maintainer: Allan McRae <allan@archlinux.org> - -pkgname=abs -pkgver=2.3.4.1 -pkgrel=1 -pkgdesc="Utilities to download and work with the Arch Build System (ABS)" -arch=('i686' 'x86_64') -url="http://projects.archlinux.org/abs.git/" -license=('GPL') -depends=('bash' 'rsync') -backup=(etc/abs.conf) -install=abs.install -source=(ftp://ftp.archlinux.org/other/abs/${pkgname}-${pkgver}.tar.gz) -md5sums=('286825d64f19f801d510ff1f7cc05ea6') - -build() { - cd ${srcdir}/${pkgname} - - make CONFDIR=/etc/ || return 1 - make CONFDIR=/etc/ DESTDIR=${pkgdir} install || return 1 - - # Add readme file, and make base /var/abs path - install -dm0755 ${pkgdir}/var/abs/local/ - install -Dm0644 ${srcdir}/abs/README ${pkgdir}/var/abs/README - - # change ABS tags for x86_64 to correct values - if [ "$CARCH" = "x86_64" ]; then - sed -i 's|"i686"|"x86_64"|g' ${pkgdir}/etc/abs.conf - fi -} diff --git a/abs/extra/abs/abs.install b/abs/extra/abs/abs.install deleted file mode 100644 index c16a8d7..0000000 --- a/abs/extra/abs/abs.install +++ /dev/null @@ -1,12 +0,0 @@ -pre_upgrade() { - if [ "$(vercmp $2 2.3.2-1)" -lt 0 ]; then - echo "==> Fixing potential ABS tree permission issues (this may take a while...)" - - for dir in core extra community testing; do - if [ -d /var/abs/$dir ]; then - find /var/abs/$dir -type d -exec chown root:root {} \; - find /var/abs/$dir -type d -exec chmod 755 {} \; - fi - done - fi -} diff --git a/abs/extra/community/afpfs-ng/01-gcrypt.patch b/abs/extra/afpfs-ng/01-gcrypt.patch index 7bcace2..7bcace2 100644 --- a/abs/extra/community/afpfs-ng/01-gcrypt.patch +++ b/abs/extra/afpfs-ng/01-gcrypt.patch diff --git a/abs/extra/community/afpfs-ng/02-pointer.patch b/abs/extra/afpfs-ng/02-pointer.patch index 80507b5..80507b5 100644 --- a/abs/extra/community/afpfs-ng/02-pointer.patch +++ b/abs/extra/afpfs-ng/02-pointer.patch diff --git a/abs/extra/community/afpfs-ng/10-fix-errno.patch b/abs/extra/afpfs-ng/10-fix-errno.patch index ff7ce44..ff7ce44 100644 --- a/abs/extra/community/afpfs-ng/10-fix-errno.patch +++ b/abs/extra/afpfs-ng/10-fix-errno.patch diff --git a/abs/extra/community/afpfs-ng/20-build-error-fixes.patch b/abs/extra/afpfs-ng/20-build-error-fixes.patch index 303e264..303e264 100644 --- a/abs/extra/community/afpfs-ng/20-build-error-fixes.patch +++ b/abs/extra/afpfs-ng/20-build-error-fixes.patch diff --git a/abs/extra/community/afpfs-ng/21-header-path-fix.patch b/abs/extra/afpfs-ng/21-header-path-fix.patch index fe79b1f..fe79b1f 100644 --- a/abs/extra/community/afpfs-ng/21-header-path-fix.patch +++ b/abs/extra/afpfs-ng/21-header-path-fix.patch diff --git a/abs/extra/community/afpfs-ng/30-include-fixes.patch b/abs/extra/afpfs-ng/30-include-fixes.patch index de4f883..de4f883 100644 --- a/abs/extra/community/afpfs-ng/30-include-fixes.patch +++ b/abs/extra/afpfs-ng/30-include-fixes.patch diff --git a/abs/extra/afpfs-ng/PKGBUILD b/abs/extra/afpfs-ng/PKGBUILD new file mode 100644 index 0000000..f8dc2d6 --- /dev/null +++ b/abs/extra/afpfs-ng/PKGBUILD @@ -0,0 +1,66 @@ +# $Id: PKGBUILD 68567 2012-03-28 10:22:57Z idevolder $ +# Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com> +# Contributor: slubman <slubman.dndd@laposte.net> + +pkgname=afpfs-ng +pkgver=0.8.1 +pkgrel=5 +pkgdesc="A client for the Apple Filing Protocol (AFP)" +url="http://alexthepuffin.googlepages.com/" +license=('GPL') +depends=('gmp' 'fuse' 'libgcrypt') +arch=('i686' 'x86_64') +options=(!libtool) +source=( + "http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2" + 'fix_afpfs-ng_includes.patch' + '01-gcrypt.patch' + '02-pointer.patch' + '10-fix-errno.patch' + '20-build-error-fixes.patch' + '21-header-path-fix.patch' + '30-include-fixes.patch' +) +sha256sums=( + '688560de1cde57ab8d9e0ef7dc6436dbf0267fe8884f9014e50ff92b297b01a8' + '627d94ab3c1cbc002b18839f514c6fa980b0a25dfc21e8761b389fcd39f32755' + '18dc77b064fc02c229e0cfa071a7e31cde6d0243671ebde2f561ebdf09dc38bb' + '8537b086c496e776be2a6757325717cb15dee6dcf2aedccebed6b4b2332d3dc1' + '0e1c0c0e3a9ff6e55ccbbbc1b4de630c874ff058e2ea94360b7d90e650d04811' + '393662da1bcd5d3aba180a2add37d9006e0a487c3bb7bf157a15aa492f4d6a87' + 'f551ae9debe8ce2c4ed1d7a8bce497801ace995473876a5fefa0443353232477' + '71b8f52923cef39f0cccb8fdff610575958fd5dbed66e5aa4413ae6aceeec656' +) + +build() { + cd "$pkgname-$pkgver" + # apply patches + msg2 'fix_afpfs-ng_includes.patch' + patch -Np1 -i "$srcdir/fix_afpfs-ng_includes.patch" + msg2 '01-gcrypt.patch' + patch -Np1 -i "$srcdir/01-gcrypt.patch" + msg2 '02-pointer.patch' + patch -Np1 -i "$srcdir/02-pointer.patch" + msg2 '10-fix-errno.patch' + patch -Np1 -i "$srcdir/10-fix-errno.patch" + msg2 '20-build-error-fixes.patch' + patch -Np1 -i "$srcdir/20-build-error-fixes.patch" + msg2 '21-header-path-fix.patch' + patch -Np1 -i "$srcdir/21-header-path-fix.patch" + msg2 '30-include-fixes.patch' + patch -Np1 -i "$srcdir/30-include-fixes.patch" + + ./configure --prefix=/usr + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + + # install headers + cd include + for header in afpfs-ng/*.h; do + install -Dm644 "$header" "$pkgdir/usr/include/$header" + done +} diff --git a/abs/extra/community/afpfs-ng/fix_afpfs-ng_includes.patch b/abs/extra/afpfs-ng/fix_afpfs-ng_includes.patch index f507a48..f507a48 100644 --- a/abs/extra/community/afpfs-ng/fix_afpfs-ng_includes.patch +++ b/abs/extra/afpfs-ng/fix_afpfs-ng_includes.patch diff --git a/abs/extra/alpine/2.00-lpam.patch b/abs/extra/alpine/2.00-lpam.patch deleted file mode 100644 index 69e66d7..0000000 --- a/abs/extra/alpine/2.00-lpam.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- alpine-2.00.orig/alpine/Makefile.in -+++ alpine-2.00/alpine/Makefile.in -@@ -169,7 +169,7 @@ - LIBICONV = @LIBICONV@ - LIBINTL = @LIBINTL@ - LIBOBJS = @LIBOBJS@ --LIBS = @LIBS@ -+LIBS = @LIBS@ -lpam - LIBTOOL = @LIBTOOL@ - LN = @LN@ - LN_S = @LN_S@ - LTLIBICONV = @LTLIBICONV@ - LTLIBINTL = @LTLIBINTL@ diff --git a/abs/extra/alpine/CVE-2008-5514.patch b/abs/extra/alpine/CVE-2008-5514.patch deleted file mode 100644 index 594bea0..0000000 --- a/abs/extra/alpine/CVE-2008-5514.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- alpine-2.00/imap/src/c-client/rfc822.c -+++ alpine-2.00/imap/src/c-client/rfc822.c -@@ -1351,6 +1351,7 @@ - - static long rfc822_output_char (RFC822BUFFER *buf,int c) - { -+ if ((buf->cur == buf->end) && !rfc822_output_flush (buf)) return NIL; - *buf->cur++ = c; /* add character, soutr buffer if full */ - return (buf->cur == buf->end) ? rfc822_output_flush (buf) : LONGT; - } -@@ -1374,7 +1375,8 @@ - len -= i; - } - /* soutr buffer now if full */ -- if (len && !rfc822_output_flush (buf)) return NIL; -+ if ((len || (buf->cur == buf->end)) && !rfc822_output_flush (buf)) -+ return NIL; - } - return LONGT; - } diff --git a/abs/extra/alpine/ChangeLog b/abs/extra/alpine/ChangeLog deleted file mode 100644 index 4c3bf81..0000000 --- a/abs/extra/alpine/ChangeLog +++ /dev/null @@ -1,43 +0,0 @@ -2010-01-23 Eric Belanger <eric@archlinux.org> - - * alpine 2.00-7 - * Updated patchset to level 53 - -2009-09-18 Eric Belanger <eric@archlinux.org> - - * alpine 2.00-6 - * libldap-2.4 rebuild - -2009-09-18 Eric Belanger <eric@archlinux.org> - - * alpine 2.00-5 - * Updated patchset to level 52 - * Security fix - -2009-09-17 Allan McRae <allan@archlinux.org> - - * alpine 2.00-4 - * libldap-2.4 rebuild - -2009-02-07 Eric Belanger <eric@archlinux.org> - - * alpine 2.00-3 - * Updated patchset to level 20 - -2008-12-05 Eric Belanger <eric@archlinux.org> - - * alpine 2.00-2 - * Rebuilt against heimdal 1.2.1 - * Placed copy of all.patch.gz patch on local ftp (close FS#11964) - -2008-09-04 Eric Belanger <eric@archlinux.org> - - * alpine 2.00-1 - * Upstream update - * Replaced install scriptlet with optdepends - -2008-03-26 Eric Belanger <eric@archlinux.org> - - * alpine 1.10-1 - * Upstream update - * Added ChangeLog diff --git a/abs/extra/alpine/PKGBUILD b/abs/extra/alpine/PKGBUILD deleted file mode 100644 index 1d75c85..0000000 --- a/abs/extra/alpine/PKGBUILD +++ /dev/null @@ -1,37 +0,0 @@ -# $Id: PKGBUILD 64978 2010-01-23 22:24:15Z eric $ -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: Fabio Scotoni <fabio@esse.ch> - -pkgname=alpine -pkgver=2.00 -pkgrel=7 -_patchlevel=53 -pkgdesc="The Apache-licensed PINE (a tool for reading, sending, and managing electronic messages)" -arch=('i686' 'x86_64') -url="http://www.washington.edu/alpine/" -license=('APACHE') -depends=('libldap>=2.4.11' 'heimdal>=1.2.1' 'gettext') -optdepends=('aspell: for spell-checking support') -provides=('pine') -conflicts=('pine') -replaces=('pine') -options=('!makeflags') -source=(ftp://ftp.cac.washington.edu/${pkgname}/${pkgname}.tar.bz2 \ - http://staff.washington.edu/chappa/alpine/patches/alpine-${pkgver}/all_${_patchlevel}.patch.gz \ - 2.00-lpam.patch CVE-2008-5514.patch) -md5sums=('84e44cbf71ed674800a5d57eed9c1c52' 'c4a85b865f59c095f838617d08b1b123'\ - 'cd3911c16fc6a072e853c0ccfc35857c' '1b52a54a656979116c09fb1d948a4325') -sha1sums=('dcbd3c5419954f484ccf706feaba31ce48cdebc4' '7396ed92062924c126087dc32b98ccebf98e17cc'\ - '1b39525f91ebd5a9de5a1e04f5554f6fa5f58ae3' 'bc61d76a237ff42b00b3f60f2e6fc5c45e261dbb') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 < ../all_${_patchlevel}.patch || return 1 - patch -p1 < ../2.00-lpam.patch || return 1 - patch -p1 < ../CVE-2008-5514.patch || return 1 - ./configure --prefix=/usr --without-passfile --without-tcl \ - --disable-shared --with-system-pinerc=/etc/alpine.d/pine.conf \ - --with-system-fixed-pinerc=/etc/alpine.d/pine.conf.fixed || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/abs/extra/alsa-driver/PKGBUILD b/abs/extra/alsa-driver/PKGBUILD deleted file mode 100644 index c4c3624..0000000 --- a/abs/extra/alsa-driver/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# Syco <SycoLTH at gmail dot com> - -pkgname=alsa-driver -_pkgname=alsa-driver -pkgver=1.0.24 -pkgrel=0 -pkgdesc="An alternative implementation of Linux sound support" -arch=('i686' 'x86_64') -provides=(alsa-driver) -install='alsa-driver.install' -url="http://www.alsa-project.org" -license=('GPL') -options=(!libtool) -#source=(ftp://ftp.alsa-project.org/pub/driver/${_pkgname}-${pkgver}.tar.bz2) -source=(http://mirrors.zerg.biz/alsa/driver/${_pkgname}-${pkgver}.tar.bz2) -md5sums=('a4ffd80745ce5098dfd48d83c2769e0e') - -build() { - k_updates=${pkgdir}/lib/modules/$(uname -r)/updates - install -d ${k_updates} - cd ${srcdir}/${_pkgname}-${pkgver} - ./configure --with-cards=all - make || return 1 - install -D -m644 modules/*.ko ${k_updates} || return 1 -} diff --git a/abs/extra/alsa-driver/alsa-driver.install b/abs/extra/alsa-driver/alsa-driver.install deleted file mode 100644 index 912055c..0000000 --- a/abs/extra/alsa-driver/alsa-driver.install +++ /dev/null @@ -1,8 +0,0 @@ -_kernver=`uname -r` - post_remove() { - depmod -a $_kernver -} - -post_install() { - depmod -a $_kernver -} diff --git a/abs/extra/alsa-firmware/PKGBUILD b/abs/extra/alsa-firmware/PKGBUILD deleted file mode 100644 index af2c544..0000000 --- a/abs/extra/alsa-firmware/PKGBUILD +++ /dev/null @@ -1,37 +0,0 @@ -# $Id$ -# Contributor: Jochen Immendörfer <jochen dot immendoerfer at gmail dot com> -# Package Maintainer: Tobias Powalowski <tpowa@archlinux.org> -pkgname=alsa-firmware -pkgver=1.0.24.1 -pkgrel=1 -pkgdesc="ALSA firmware package" -arch=('i686' 'x86_64') -url="http://alsa-project.org/" -license=('GPL') -source=(ftp://ftp.alsa-project.org/pub/firmware/$pkgname-$pkgver.tar.bz2) -options=(!strip) - -build() { - cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr - make -} - -package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install - # remove files which conflicts with kernel26-firmware - rm -rf ${pkgdir}/lib/firmware/ess/maestro3_assp_kernel.fw - rm -rf ${pkgdir}/lib/firmware/ess/maestro3_assp_minisrc.fw - rm -rf ${pkgdir}/lib/firmware/korg/k1212.dsp - rm -rf ${pkgdir}/lib/firmware/sb16/alaw_main.csp - rm -rf ${pkgdir}/lib/firmware/sb16/ima_adpcm_capture.csp - rm -rf ${pkgdir}/lib/firmware/sb16/ima_adpcm_init.csp - rm -rf ${pkgdir}/lib/firmware/sb16/ima_adpcm_playback.csp - rm -rf ${pkgdir}/lib/firmware/sb16/mulaw_main.csp - rm -rf ${pkgdir}/lib/firmware/yamaha/ds1_ctrl.fw - rm -rf ${pkgdir}/lib/firmware/yamaha/ds1_dsp.fw - rm -rf ${pkgdir}/lib/firmware/yamaha/ds1e_ctrl.fw - rm -rf ${pkgdir}/lib/firmware/yamaha/yss225_registers.bin -} -md5sums=('d37434dfcfececd8581d2f0bbe2fcf1b') diff --git a/abs/extra/apache-ant/PKGBUILD b/abs/extra/apache-ant/PKGBUILD index eaafed4..d8982e8 100644 --- a/abs/extra/apache-ant/PKGBUILD +++ b/abs/extra/apache-ant/PKGBUILD @@ -1,53 +1,74 @@ -# $Id$ +# $Id: PKGBUILD 160040 2012-05-28 13:39:12Z guillaume $ +# Maintainer: Guillaume ALAUX <guillaume@archlinux.org> # Contributor: Andrew Wright <andreww@photism.org> -# Maintainer: Paul Mattal <paul@archlinux.org> - +# Contributor: Paul Mattal <paul@archlinux.org> pkgname=apache-ant -pkgver=1.8.2 -pkgrel=2 +pkgver=1.8.4 +pkgrel=1 pkgdesc="A java-based build tool" arch=('any') -license=('APACHE') url="http://ant.apache.org/" +license=('APACHE') depends=('java-environment') +makedepends=('java-environment' 'xalan-java' 'junit' 'apache-ant') optdepends=('junit: to jave junit on the classpath in javac tasks') -source=(http://archive.apache.org/dist/ant/binaries/${pkgname}-${pkgver}-bin.tar.bz2 - ${pkgname}.sh ${pkgname}.csh - ant_diagnostics.patch) -md5sums=('9e9ae9fc7352960191489a1286fb0928' - '593ee6ebd9b8ec321534a028e686880f' - '475b684eb8202c09cbb51496cd8ee1e0' - 'cbaab423be40a6e63f0fde901b91eb50') +#http://apache.org/dist/ant/source/${pkgname}-${pkgver}-src.tar.bz2 +source=(http://apache.org/dist/ant/binaries/${pkgname}-${pkgver}-bin.tar.bz2 + ${pkgname}.sh + ${pkgname}.csh) +md5sums=('561838e665e5dc185dde9d220fce1336' + 'dbfa1e8dd4bab2f5821f5abe50835c83' + 'b3f67824043b6fb00667bb7a4007af42') -package() { - # install profile.d script - install -dm755 "${pkgdir}"/etc/profile.d - install -m755 "${srcdir}"/${pkgname}.{csh,sh} "${pkgdir}"/etc/profile.d/ +_ant_home=/usr/share/${pkgname} + +#build() { +# cd "${srcdir}/${pkgname}-${pkgver}" + +# ant -Ddest=optional -f fetch.xml - # Get the ANT_HOME env var - source "${srcdir}"/${pkgname}.sh +# ln -s /usr/share/java/junit.jar lib/optional/junit.jar +# ./bootstrap.sh - cd "${srcdir}"/${pkgname}-${pkgver} - install -dm755 "${pkgdir}"/${ANT_HOME}/{bin,lib} +# mkdir ${srcdir}/.m2 +# ./bootstrap/bin/ant -Ddest=optional -Ddest.dir=${srcdir}/.m2 -f fetch.xml +# ./bootstrap/bin/ant -f fetch.xml -nouserlib -Ddest=optional - install -m644 ./lib/*.jar "${pkgdir}"/${ANT_HOME}/lib - cp -Rp ./etc "${pkgdir}"/${ANT_HOME} +# sh build.sh dist - # Do not copy Windows .bat/.cmd files +# ant dist +#} + +package() { +# cd "${srcdir}/${pkgname}-${pkgver}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgname}-${pkgver}" + + install -dm755 ${pkgdir}/${_ant_home}/bin + cp -Rp etc ${pkgdir}/${_ant_home} find ./bin -type f -a ! -name \*.bat -a ! -name \*.cmd \ - -exec install -m755 {} "${pkgdir}"/${ANT_HOME}/bin \; + -exec install -m755 {} ${pkgdir}/${_ant_home}/bin \; + + install -dm755 ${pkgdir}/usr/bin + ln -s ${_ant_home}/bin/ant ${pkgdir}/usr/bin/ant - # symlink to junit so it's on the javac build path for ant - # matches behavior on ubuntu 9 and makes sense for compatibility + install -dm755 ${pkgdir}/usr/share/java/${pkgname} + install -m644 lib/*.jar ${pkgdir}/usr/share/java/${pkgname} + ln -s /usr/share/java/${pkgname} ${pkgdir}/${_ant_home}/lib + + # Symlink to junit so it's on the javac build path # http://bugs.archlinux.org/task/15229 - ln -sf /usr/share/java/junit.jar "${pkgdir}"/usr/share/java/apache-ant/lib/ + # http://ant.apache.org/manual/install.html#optionalTasks + ln -sf ../junit.jar ${pkgdir}/usr/share/java/apache-ant/ # fix python2 path - sed -i 's|/usr/bin/python|/usr/bin/python2|' "${pkgdir}"/usr/share/java/apache-ant/bin/runant.py + sed -i 's|/usr/bin/python|/usr/bin/python2|' ${pkgdir}${_ant_home}/bin/runant.py + + # install profile.d script + install -dm755 ${pkgdir}/etc/profile.d + install -m755 "${srcdir}"/${pkgname}.{csh,sh} ${pkgdir}/etc/profile.d/ - # The license says the NOTICE file should be redistributed for derivative - # works, so lets supply it. - cd "${srcdir}"/${pkgname}-${pkgver} - install -dm755 "${pkgdir}"/usr/share/licenses/${pkgname} - install -m644 LICENSE NOTICE "${pkgdir}"/usr/share/licenses/${pkgname} + # License says NOTICE file should be redistributed for derivative works + cd ${srcdir}/${pkgname}-${pkgver} + install -dm755 ${pkgdir}/usr/share/licenses/${pkgname} + install -m644 LICENSE NOTICE ${pkgdir}/usr/share/licenses/${pkgname} } diff --git a/abs/extra/apache-ant/apache-ant.csh b/abs/extra/apache-ant/apache-ant.csh index b6a6d58..a19392b 100644 --- a/abs/extra/apache-ant/apache-ant.csh +++ b/abs/extra/apache-ant/apache-ant.csh @@ -1,2 +1 @@ -setenv ANT_HOME /usr/share/java/apache-ant -setenv PATH ${PATH}:${ANT_HOME}/bin +setenv ANT_HOME /usr/share/apache-ant diff --git a/abs/extra/apache-ant/apache-ant.sh b/abs/extra/apache-ant/apache-ant.sh index ab602fb..eaa8a54 100644 --- a/abs/extra/apache-ant/apache-ant.sh +++ b/abs/extra/apache-ant/apache-ant.sh @@ -1,3 +1 @@ -export ANT_HOME=/usr/share/java/apache-ant -export PATH=$PATH:$ANT_HOME/bin - +export ANT_HOME=/usr/share/apache-ant diff --git a/abs/extra/apcupsd/PKGBUILD b/abs/extra/apcupsd/PKGBUILD deleted file mode 100644 index ad57d1a..0000000 --- a/abs/extra/apcupsd/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# $Id: PKGBUILD,v 1.17 2009/01/19 10:34:32 sergej Exp $ -# Maintainer: Sergej Pupykin <sergej@aur.archlinux.org> -# Maintainer: Todd Musall <tmusall@comcast.net> - -pkgname=apcupsd -pkgver=3.14.8 -pkgrel=1 -pkgdesc="Apcupsd can be used for power mangement and controlling most of APC's UPS models on Unix and Windows machines." -arch=(i686 x86_64) -url="http://www.apcupsd.org" -license=('GPL') -depends=('gcc-libs' 'gd' 'gconf') -makedepends=('pkgconfig') -backup=(etc/apcupsd/apcupsd.conf etc/apcupsd/hosts.conf \ - etc/apcupsd/multimon.conf) -source=(http://switch.dl.sf.net/sourceforge/apcupsd/$pkgname-$pkgver.tar.gz \ - apcupsd - apcupsd.conf - run) - -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr --enable-cgi --enable-usb --enable-net \ - --with-upstype=usb --with-upscable=usb \ - --with-serial-dev=/dev/usb/hid/hiddev[0-9] \ - --enable-pthreads --enable-gapcmon - make || return 1 - make DESTDIR=$startdir/pkg install || return 1 - install -D -m755 ../apcupsd $startdir/pkg/etc/rc.d/apcupsd && \ - chmod 755 $startdir/pkg/sbin/* - cp ../apcupsd.conf $startdir/pkg/etc/apcupsd/ - mkdir -p $startdir/pkg/etc/sv/apcupsd/supervise - install -D -m755 ../run $startdir/pkg/etc/sv/apcupsd -} -md5sums=('cd17f0a903dc2220e55ed54e242359d2' - '5eae3c4d921eeb81798a0250fe3dd111' - '2f533aec32c9445510bb2127b453b175' - '32ae73bc096c1d0982c12d8ec46abee2') diff --git a/abs/extra/apcupsd/apcupsd b/abs/extra/apcupsd/apcupsd deleted file mode 100755 index 3cd5c9d..0000000 --- a/abs/extra/apcupsd/apcupsd +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /sbin/apcupsd` -case "$1" in - start) - stat_busy "Starting APCUPSD Daemon" - rm -f /etc/apcupsd/powerfail - rm -f /etc/nologin - [ -z "$PID" ] && /sbin/apcupsd -f /etc/apcupsd/apcupsd.conf - if [ $? -gt 0 ]; then - stat_fail - else - PID=`pidof -o %PPID /sbin/apcupsd` - echo $PID > /var/run/apcupsd.pid - add_daemon apcupsd - stat_done - fi - ;; - stop) - stat_busy "Stopping APCUPSD Daemon" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm /var/run/apcupsd.pid - rm_daemon apcupsd - stat_done - fi - ;; - restart) - $0 stop - sleep 2 - $0 start - ;; - status) - /sbin/apcaccess status - ;; - *) - echo "usage: $0 {start|stop|restart|status}" -esac -exit 0 diff --git a/abs/extra/apcupsd/apcupsd.conf b/abs/extra/apcupsd/apcupsd.conf deleted file mode 100644 index dd60889..0000000 --- a/abs/extra/apcupsd/apcupsd.conf +++ /dev/null @@ -1,325 +0,0 @@ -## apcupsd.conf v1.1 ## -# -# for apcupsd release 3.14.5 (10 January 2009) - unknown -# -# "apcupsd" POSIX config file - -# -# ========= General configuration parameters ============ -# - -# UPSNAME xxx -# Use this to give your UPS a name in log files and such. This -# is particulary useful if you have multiple UPSes. This does not -# set the EEPROM. It should be 8 characters or less. -#UPSNAME - -# UPSCABLE <cable> -# Defines the type of cable connecting the UPS to your computer. -# -# Possible generic choices for <cable> are: -# simple, smart, ether, usb -# -# Or a specific cable model number may be used: -# 940-0119A, 940-0127A, 940-0128A, 940-0020B, -# 940-0020C, 940-0023A, 940-0024B, 940-0024C, -# 940-1524C, 940-0024G, 940-0095A, 940-0095B, -# 940-0095C, M-04-02-2000 -# -UPSCABLE usb - -# To get apcupsd to work, in addition to defining the cable -# above, you must also define a UPSTYPE, which corresponds to -# the type of UPS you have (see the Description for more details). -# You must also specify a DEVICE, sometimes referred to as a port. -# For USB UPSes, please leave the DEVICE directive blank. For -# other UPS types, you must specify an appropriate port or address. -# -# UPSTYPE DEVICE Description -# apcsmart /dev/tty** Newer serial character device, -# appropriate for SmartUPS models using -# a serial cable (not USB). -# -# usb <BLANK> Most new UPSes are USB. A blank DEVICE -# setting enables autodetection, which is -# the best choice for most installations. -# -# net hostname:port Network link to a master apcupsd -# through apcupsd's Network Information -# Server. This is used if you don't have -# a UPS directly connected to your computer. -# -# snmp hostname:port:vendor:community -# SNMP Network link to an SNMP-enabled -# UPS device. Vendor is the MIB used by -# the UPS device: can be "APC", "APC_NOTRAP" -# or "RFC" where APC is the powernet MIB, -# "APC_NOTRAP" is powernet with SNMP trap -# catching disabled, and RFC is the IETF's -# rfc1628 UPS-MIB. You usually want "APC". -# Port is usually 161. Community is usually -# "private". -# -# dumb /dev/tty** Old serial character device for use -# with simple-signaling UPSes. -# -# pcnet ipaddr:username:passphrase -# PowerChute Network Shutdown protocol -# which can be used as an alternative to SNMP -# with AP9617 family of smart slot cards. -# ipaddr is the IP address of the UPS mgmt -# card. username and passphrase are the -# credentials for which the card has been -# configured. -# -UPSTYPE usb -DEVICE /dev/usb/hid/hiddev[0-9] - -# POLLTIME <int> -# Interval (in seconds) at which apcupsd polls the UPS for status. This -# setting applies both to directly-attached UPSes (UPSTYPE apcsmart, usb, -# dumb) and networked UPSes (UPSTYPE net, snmp). Lowering this setting -# will improve apcupsd's responsiveness to certain events at the cost of -# higher CPU utilization. The default of 60 is appropriate for most -# situations. -#POLLTIME 60 - -# LOCKFILE <path to lockfile> -# Path for device lock file. Not used on Win32. -LOCKFILE /var/lock - -# SCRIPTDIR <path to script directory> -# Directory in which apccontrol and event scripts are located. -SCRIPTDIR /etc/apcupsd - -# PWRFAILDIR <path to powerfail directory> -# Directory in which to write the powerfail flag file. This file -# is created when apcupsd initiates a system shutdown and is -# checked in the OS halt scripts to determine if a killpower -# (turning off UPS output power) is required. -PWRFAILDIR /etc/apcupsd - -# NOLOGINDIR <path to nologin directory> -# Directory in which to write the nologin file. The existence -# of this flag file tells the OS to disallow new logins. -NOLOGINDIR /etc - - -# -# ======== Configuration parameters used during power failures ========== -# - -# The ONBATTERYDELAY is the time in seconds from when a power failure -# is detected until we react to it with an onbattery event. -# -# This means that, apccontrol will be called with the powerout argument -# immediately when a power failure is detected. However, the -# onbattery argument is passed to apccontrol only after the -# ONBATTERYDELAY time. If you don't want to be annoyed by short -# powerfailures, make sure that apccontrol powerout does nothing -# i.e. comment out the wall. -ONBATTERYDELAY 6 - -# -# Note: BATTERYLEVEL, MINUTES, and TIMEOUT work in conjunction, so -# the first that occurs will cause the initation of a shutdown. -# - -# If during a power failure, the remaining battery percentage -# (as reported by the UPS) is below or equal to BATTERYLEVEL, -# apcupsd will initiate a system shutdown. -BATTERYLEVEL 5 - -# If during a power failure, the remaining runtime in minutes -# (as calculated internally by the UPS) is below or equal to MINUTES, -# apcupsd, will initiate a system shutdown. -MINUTES 3 - -# If during a power failure, the UPS has run on batteries for TIMEOUT -# many seconds or longer, apcupsd will initiate a system shutdown. -# A value of 0 disables this timer. -# -# Note, if you have a Smart UPS, you will most likely want to disable -# this timer by setting it to zero. That way, you UPS will continue -# on batteries until either the % charge remaing drops to or below BATTERYLEVEL, -# or the remaining battery runtime drops to or below MINUTES. Of course, -# if you are testing, setting this to 60 causes a quick system shutdown -# if you pull the power plug. -# If you have an older dumb UPS, you will want to set this to less than -# the time you know you can run on batteries. -TIMEOUT 0 - -# Time in seconds between annoying users to signoff prior to -# system shutdown. 0 disables. -ANNOY 300 - -# Initial delay after power failure before warning users to get -# off the system. -ANNOYDELAY 60 - -# The condition which determines when users are prevented from -# logging in during a power failure. -# NOLOGON <string> [ disable | timeout | percent | minutes | always ] -NOLOGON disable - -# If KILLDELAY is non-zero, apcupsd will continue running after a -# shutdown has been requested, and after the specified time in -# seconds attempt to kill the power. This is for use on systems -# where apcupsd cannot regain control after a shutdown. -# KILLDELAY <seconds> 0 disables -KILLDELAY 0 - -# -# ==== Configuration statements for Network Information Server ==== -# - -# NETSERVER [ on | off ] on enables, off disables the network -# information server. If netstatus is on, a network information -# server process will be started for serving the STATUS and -# EVENT data over the network (used by CGI programs). -NETSERVER on - -# NISIP <dotted notation ip address> -# IP address on which NIS server will listen for incoming connections. -# This is useful if your server is multi-homed (has more than one -# network interface and IP address). Default value is 0.0.0.0 which -# means any incoming request will be serviced. Alternatively, you can -# configure this setting to any specific IP address of your server and -# NIS will listen for connections only on that interface. Use the -# loopback address (127.0.0.1) to accept connections only from the -# local machine. -NISIP 0.0.0.0 - -# NISPORT <port> default is 3551 as registered with the IANA -# port to use for sending STATUS and EVENTS data over the network. -# It is not used unless NETSERVER is on. If you change this port, -# you will need to change the corresponding value in the cgi directory -# and rebuild the cgi programs. -NISPORT 3551 - -# If you want the last few EVENTS to be available over the network -# by the network information server, you must define an EVENTSFILE. -EVENTSFILE /var/log/apcupsd.events - -# EVENTSFILEMAX <kilobytes> -# By default, the size of the EVENTSFILE will be not be allowed to exceed -# 10 kilobytes. When the file grows beyond this limit, older EVENTS will -# be removed from the beginning of the file (first in first out). The -# parameter EVENTSFILEMAX can be set to a different kilobyte value, or set -# to zero to allow the EVENTSFILE to grow without limit. -EVENTSFILEMAX 10 - -# -# ========== Configuration statements used if sharing ============= -# a UPS with more than one machine - -# -# Remaining items are for ShareUPS (APC expansion card) ONLY -# - -# UPSCLASS [ standalone | shareslave | sharemaster ] -# Normally standalone unless you share an UPS using an APC ShareUPS -# card. -UPSCLASS standalone - -# UPSMODE [ disable | share ] -# Normally disable unless you share an UPS using an APC ShareUPS card. -UPSMODE disable - -# -# ===== Configuration statements to control apcupsd system logging ======== -# - -# Time interval in seconds between writing the STATUS file; 0 disables -STATTIME 300 - -# Location of STATUS file (written to only if STATTIME is non-zero) -STATFILE /var/log/apcupsd.status - -# LOGSTATS [ on | off ] on enables, off disables -# Note! This generates a lot of output, so if -# you turn this on, be sure that the -# file defined in syslog.conf for LOG_NOTICE is a named pipe. -# You probably do not want this on. -LOGSTATS off - -# Time interval in seconds between writing the DATA records to -# the log file. 0 disables. -DATATIME 0 - -# FACILITY defines the logging facility (class) for logging to syslog. -# If not specified, it defaults to "daemon". This is useful -# if you want to separate the data logged by apcupsd from other -# programs. -#FACILITY DAEMON - -# -# ========== Configuration statements used in updating the UPS EPROM ========= -# - -# -# These statements are used only by apctest when choosing "Set EEPROM with conf -# file values" from the EEPROM menu. THESE STATEMENTS HAVE NO EFFECT ON APCUPSD. -# - -# UPS name, max 8 characters -#UPSNAME UPS_IDEN - -# Battery date - 8 characters -#BATTDATE mm/dd/yy - -# Sensitivity to line voltage quality (H cause faster transfer to batteries) -# SENSITIVITY H M L (default = H) -#SENSITIVITY H - -# UPS delay after power return (seconds) -# WAKEUP 000 060 180 300 (default = 0) -#WAKEUP 60 - -# UPS Grace period after request to power off (seconds) -# SLEEP 020 180 300 600 (default = 20) -#SLEEP 180 - -# Low line voltage causing transfer to batteries -# The permitted values depend on your model as defined by last letter -# of FIRMWARE or APCMODEL. Some representative values are: -# D 106 103 100 097 -# M 177 172 168 182 -# A 092 090 088 086 -# I 208 204 200 196 (default = 0 => not valid) -#LOTRANSFER 208 - -# High line voltage causing transfer to batteries -# The permitted values depend on your model as defined by last letter -# of FIRMWARE or APCMODEL. Some representative values are: -# D 127 130 133 136 -# M 229 234 239 224 -# A 108 110 112 114 -# I 253 257 261 265 (default = 0 => not valid) -#HITRANSFER 253 - -# Battery charge needed to restore power -# RETURNCHARGE 00 15 50 90 (default = 15) -#RETURNCHARGE 15 - -# Alarm delay -# 0 = zero delay after pwr fail, T = power fail + 30 sec, L = low battery, N = never -# BEEPSTATE 0 T L N (default = 0) -#BEEPSTATE T - -# Low battery warning delay in minutes -# LOWBATT 02 05 07 10 (default = 02) -#LOWBATT 2 - -# UPS Output voltage when running on batteries -# The permitted values depend on your model as defined by last letter -# of FIRMWARE or APCMODEL. Some representative values are: -# D 115 -# M 208 -# A 100 -# I 230 240 220 225 (default = 0 => not valid) -#OUTPUTVOLTS 230 - -# Self test interval in hours 336=2 weeks, 168=1 week, ON=at power on -# SELFTEST 336 168 ON OFF (default = 336) -#SELFTEST 336 diff --git a/abs/extra/apcupsd/run b/abs/extra/apcupsd/run deleted file mode 100644 index bc5c22b..0000000 --- a/abs/extra/apcupsd/run +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -exec 2>&1 - stat_runit "Starting APC UPS Daemon" - exec /sbin/apcupsd -b -f /etc/apcupsd/apcupsd.conf diff --git a/abs/extra/asciidoc/ChangeLog b/abs/extra/asciidoc/ChangeLog deleted file mode 100644 index e9e5156..0000000 --- a/abs/extra/asciidoc/ChangeLog +++ /dev/null @@ -1,10 +0,0 @@ - -2009-11-07 Chris Brannon <cmbrannon79@gmail.com> - - * Fixed optdepends, converted to arch=('any'). - - -2008-07-06 Douglas Soares de Andrade <douglas@archlinux.org> - - * Updated for x86_64 - 8.2.7 - diff --git a/abs/extra/asciidoc/PKGBUILD b/abs/extra/asciidoc/PKGBUILD index e7ab081..a333a43 100644 --- a/abs/extra/asciidoc/PKGBUILD +++ b/abs/extra/asciidoc/PKGBUILD @@ -1,36 +1,61 @@ -# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> +# $Id: PKGBUILD 73972 2012-07-17 22:26:29Z bluewind $ # Contributor: Chris Brannon <cmbrannon79@gmail.com> # Contributor: Geoffroy Carrier <geoffroy@archlinux.org> # Contributor: Dan McGee <dan@archlinux.org> # Contributor: Jaroslaw Rosiek <philosoph@interia.pl> # Contributor: Darwin Bautista <djclue917@gmail.com> +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> +# Maintainer: Florian Pritz <flo@xinu.at> pkgname=asciidoc -pkgver=8.6.3 +pkgver=8.6.8 pkgrel=1 -pkgdesc="Text document format for short documents, articles, books and UNIX man pages" +pkgdesc='Text document format for short documents, articles, books and UNIX man pages.' arch=('any') -url="http://www.methods.co.nz/asciidoc/" +url='http://www.methods.co.nz/asciidoc/' license=('GPL') depends=('python2' 'libxslt' 'docbook-xsl') optdepends=('lilypond: music-filter' - 'imagemagick: music-filter (used in conjunction with lilypond)' - 'source-highlight: source-highlight-filter' - 'fop: pdf generation' - 'lynx: text generation' - 'w3m: text generation (alternative to lynx)') -source=(http://downloads.sourceforge.net/asciidoc/asciidoc-${pkgver}.tar.gz) + 'imagemagick: music-filter (used in conjunction with lilypond)' + 'source-highlight: source-highlight-filter' + 'dblatex: pdf generation' + 'fop: alternative pdf generation' + 'lynx: text generation' + 'w3m: text generation (alternative to lynx)') +source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz") +md5sums=('6ffff1ab211f30481741ce4d1e4b12bf') build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --sysconfdir=/etc || return 1 + cd ${pkgname}-${pkgver} + + # python2 fix + for file in asciidocapi.py a2x.py asciidoc.py filters/music/music2png.py filters/latex/latex2png.py \ + filters/code/code-filter.py filters/graphviz/graphviz2png.py; do + sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' $file + done + sed -i -e 's_sys:python_sys:python2_g' -e 's_sys3:python_sys3:python2_g' xhtml11.conf + sed -i 's_sys:python_sys:python2_g' xhtml11-quirks.conf + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc } + package() { - cd ${srcdir}/${pkgname}-${pkgver} - make install DESTDIR="${pkgdir}" || return 1 - install -Dm644 asciidocapi.py ${pkgdir}/usr/lib/python2.7/site-packages/asciidocapi.py + cd ${pkgname}-${pkgver} + + make install DESTDIR=${pkgdir} + + install -Dm644 asciidocapi.py \ + ${pkgdir}/usr/lib/python2.7/site-packages/asciidocapi.py + + install -Dm644 vim/syntax/asciidoc.vim \ + ${pkgdir}/usr/share/vim/vimfiles/syntax/asciidoc.vim + + install -Dm644 vim/ftdetect/asciidoc_filetype.vim \ + ${pkgdir}/usr/share/vim/vimfiles/ftdetect/asciidoc.vim - find "$pkgdir/" -name '*.py' | \ - xargs sed -i "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" + # fix FS#21579 - [asciidoc] 8.6.2-2 "asciidoc" table style doesn't work (mismatched python version) + sed -i 's/python/python2/' \ + ${pkgdir}/etc/asciidoc/asciidoc.conf } -md5sums=('1ef39786ee1b4c8a788584e73db2c55a') diff --git a/abs/extra/atomicparsley/PKGBUILD b/abs/extra/atomicparsley/PKGBUILD index 4108fa9..2cbe7ce 100644 --- a/abs/extra/atomicparsley/PKGBUILD +++ b/abs/extra/atomicparsley/PKGBUILD @@ -1,18 +1,28 @@ # Contributor: Baptiste Daroussin <baptiste.daroussin@gmail.com> pkgname=atomicparsley -pkgver=0.9.0 -pkgrel=2 +pkgver=0.9.2 +pkgrel=1 pkgdesc="command line program for reading, parsing and setting iTunes-style metadata in MPEG4 files" arch=(i686 x86_64) url="http://atomicparsley.sourceforge.net/" license=('GPL') -source=(http://ftp.knoppmyth.net/R6/sources/$pkgname/AtomicParsley-source-$pkgver.tar.bz2) -md5sums=('dfe6700089ca20c87f7f5293dee5df6c') +#source=(http://ftp.knoppmyth.net/R6/sources/$pkgname/AtomicParsley-source-$pkgver.tar.bz2) +source=(http://dl.dropbox.com/u/33732973/AtomicParsley/build_x86_64/AtomicParsley) +# build() { +# cd $startdir/src/ +# unzip AtomicParsley-source-$pkgver +# cd $startdir/src/AtomicParsley-source-$pkgver +# ./build +# install -D -m 755 AtomicParsley $startdir/pkg/usr/bin/AtomicParsley +# } build() { - cd $startdir/src/ - unzip AtomicParsley-source-$pkgver - cd $startdir/src/AtomicParsley-source-$pkgver - ./build - install -D -m 755 AtomicParsley $startdir/pkg/usr/bin/AtomicParsley -} + cd $startdir/src/ + #unzip AtomicParsley-source-$pkgver + #cd $startdir/src/AtomicParsley-source-$pkgver + #./build + install -D -m 755 AtomicParsley $startdir/pkg/usr/bin/AtomicParsley + } + + +md5sums=('188062560a32c17f32e7262c67801de7') diff --git a/abs/extra/autofs/0001-autofs-5.0.5-include-krb5-library.patch b/abs/extra/autofs/0001-autofs-5.0.5-include-krb5-library.patch new file mode 100644 index 0000000..572ca97 --- /dev/null +++ b/abs/extra/autofs/0001-autofs-5.0.5-include-krb5-library.patch @@ -0,0 +1,206 @@ +From e467755fac27630730be25c4b41e5d0cfcd89c67 Mon Sep 17 00:00:00 2001 +From: Ian Kent <raven@themaw.net> +Date: Tue, 10 Aug 2010 15:48:21 +0800 +Subject: [PATCH 1/2] autofs-5.0.5 - include krb5 library + +Since the Cyrus SASL module calls Kerberos directly we should be +linking against the Kerberos librarys. +--- + Makefile.conf.in | 2 + + aclocal.m4 | 19 +++++++++++++++ + configure | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++- + configure.in | 5 +++- + modules/Makefile | 4 +- + 5 files changed, 93 insertions(+), 4 deletions(-) + +diff --git a/Makefile.conf.in b/Makefile.conf.in +index f0287c3..a9bcf8c 100644 +--- a/Makefile.conf.in ++++ b/Makefile.conf.in +@@ -31,6 +31,8 @@ XML_FLAGS = @XML_FLAGS@ + SASL = @HAVE_SASL@ + LIBSASL= @LIBSASL@ + SASL_FLAGS = @SASL_FLAGS@ ++KRB5_LIBS=@KRB5_LIBS@ ++KRB5_FLAGS=@KRB5_FLAGS@ + + # NIS+ support: yes (1) no (0) + NISPLUS = @HAVE_NISPLUS@ +diff --git a/aclocal.m4 b/aclocal.m4 +index e7f1a30..750a159 100644 +--- a/aclocal.m4 ++++ b/aclocal.m4 +@@ -215,6 +215,25 @@ else + fi]) + + dnl -------------------------------------------------------------------------- ++dnl AF_CHECK_KRB5 ++dnl ++dnl Check for Kerberos 5 ++dnl -------------------------------------------------------------------------- ++AC_DEFUN([AF_CHECK_KRB5], ++[AC_PATH_PROGS(KRB5_CONFIG, krb5-config, no) ++AC_MSG_CHECKING(for Kerberos library) ++if test "$KRB5_CONFIG" = "no" ++then ++ AC_MSG_RESULT(no) ++ HAVE_KRB5=0 ++else ++ AC_MSG_RESULT(yes) ++ HAVE_KRB5=1 ++ KRB5_LIBS=`$KRB5_CONFIG --libs` ++ KRB5_FLAGS=`$KRB5_CONFIG --cflags` ++fi]) ++ ++dnl -------------------------------------------------------------------------- + dnl AF_CHECK_LIBHESIOD + dnl + dnl Check for lib hesiod +diff --git a/configure b/configure +index 159f25f..500411c 100755 +--- a/configure ++++ b/configure +@@ -640,6 +640,8 @@ ac_subst_vars='LTLIBOBJS + LIBOBJS + DAEMON_LDFLAGS + DAEMON_CFLAGS ++KRB5_FLAGS ++KRB5_LIBS + LIBSASL + HAVE_SASL + SASL_FLAGS +@@ -657,6 +659,7 @@ LIBHESIOD + HAVE_HESIOD + LIBRESOLV + LIBNSL ++KRB5_CONFIG + XML_CONFIG + PATH_RPCGEN + RPCGEN +@@ -3723,7 +3726,7 @@ $as_echo "no" >&6; } + fi + fi + +-# LDAP SASL auth need libxml ++# LDAP SASL auth needs libxml and Kerberos + for ac_prog in xml2-config + do + # Extract the first word of "$ac_prog", so it can be a program name with args. +@@ -3801,6 +3804,66 @@ _ACEOF + fi + fi + fi ++for ac_prog in krb5-config ++do ++ # Extract the first word of "$ac_prog", so it can be a program name with args. ++set dummy $ac_prog; ac_word=$2 ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } ++if test "${ac_cv_path_KRB5_CONFIG+set}" = set; then ++ $as_echo_n "(cached) " >&6 ++else ++ case $KRB5_CONFIG in ++ [\\/]* | ?:[\\/]*) ++ ac_cv_path_KRB5_CONFIG="$KRB5_CONFIG" # Let the user override the test with a path. ++ ;; ++ *) ++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ++ ac_cv_path_KRB5_CONFIG="$as_dir/$ac_word$ac_exec_ext" ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++done ++IFS=$as_save_IFS ++ ++ ;; ++esac ++fi ++KRB5_CONFIG=$ac_cv_path_KRB5_CONFIG ++if test -n "$KRB5_CONFIG"; then ++ { $as_echo "$as_me:$LINENO: result: $KRB5_CONFIG" >&5 ++$as_echo "$KRB5_CONFIG" >&6; } ++else ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } ++fi ++ ++ ++ test -n "$KRB5_CONFIG" && break ++done ++test -n "$KRB5_CONFIG" || KRB5_CONFIG="no" ++ ++{ $as_echo "$as_me:$LINENO: checking for Kerberos library" >&5 ++$as_echo_n "checking for Kerberos library... " >&6; } ++if test "$KRB5_CONFIG" = "no" ++then ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } ++ HAVE_KRB5=0 ++else ++ { $as_echo "$as_me:$LINENO: result: yes" >&5 ++$as_echo "yes" >&6; } ++ HAVE_KRB5=1 ++ KRB5_LIBS=`$KRB5_CONFIG --libs` ++ KRB5_FLAGS=`$KRB5_CONFIG --cflags` ++fi + + # + # glibc/libc 6 new libraries +@@ -5178,6 +5241,8 @@ fi + + + ++ ++ + LDFLAGS="${AF_tmp_ldflags}" + + # +diff --git a/configure.in b/configure.in +index f649a58..70b45e8 100644 +--- a/configure.in ++++ b/configure.in +@@ -144,8 +144,9 @@ AF_CHECK_PROG(RPCGEN, rpcgen, , $searchpath) + # + AF_SLOPPY_MOUNT() + +-# LDAP SASL auth need libxml ++# LDAP SASL auth needs libxml and Kerberos + AF_CHECK_LIBXML() ++AF_CHECK_KRB5() + + # + # glibc/libc 6 new libraries +@@ -274,6 +275,8 @@ AC_SUBST(XML_LIBS) + AC_SUBST(SASL_FLAGS) + AC_SUBST(HAVE_SASL) + AC_SUBST(LIBSASL) ++AC_SUBST(KRB5_LIBS) ++AC_SUBST(KRB5_FLAGS) + LDFLAGS="${AF_tmp_ldflags}" + + # +diff --git a/modules/Makefile b/modules/Makefile +index 13b3bd8..2389196 100644 +--- a/modules/Makefile ++++ b/modules/Makefile +@@ -42,8 +42,8 @@ ifeq ($(LDAP), 1) + MODS += lookup_ldap.so + ifeq ($(SASL), 1) + SASL_OBJ = cyrus-sasl.o +- LDAP_FLAGS += $(SASL_FLAGS) $(XML_FLAGS) -DLDAP_THREAD_SAFE +- LIBLDAP += $(LIBSASL) $(XML_LIBS) ++ LDAP_FLAGS += $(SASL_FLAGS) $(XML_FLAGS) $(KRB5_FLAGS) -DLDAP_THREAD_SAFE ++ LIBLDAP += $(LIBSASL) $(XML_LIBS) $(KRB5_LIBS) + endif + endif + +-- +1.7.5.1 + diff --git a/abs/extra/autofs/0002-autofs-5.0.5-remove-ERR_remove_state-openssl-call.patch b/abs/extra/autofs/0002-autofs-5.0.5-remove-ERR_remove_state-openssl-call.patch new file mode 100644 index 0000000..e4e480e --- /dev/null +++ b/abs/extra/autofs/0002-autofs-5.0.5-remove-ERR_remove_state-openssl-call.patch @@ -0,0 +1,59 @@ +From 205c305922cdbded91ff8fadbaad7959bdb497bc Mon Sep 17 00:00:00 2001 +From: Ian Kent <raven@themaw.net> +Date: Wed, 11 Aug 2010 09:33:09 +0800 +Subject: [PATCH 2/2] autofs-5.0.5 - remove ERR_remove_state() openssl call + +autofs should never have had to use ERR_remove_state() so remove that call. + +Lukas: Resolve a conflict in "CHANGELOG" that occured due to cherry +picking Kerberos related patches from the 5.0.6 development branch. + +Conflicts: + + CHANGELOG + +Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de> +--- + CHANGELOG | 4 ++++ + modules/lookup_ldap.c | 12 +----------- + 2 files changed, 5 insertions(+), 11 deletions(-) + +diff --git a/CHANGELOG b/CHANGELOG +index e734cb3..1a20a81 100644 +--- a/CHANGELOG ++++ b/CHANGELOG +@@ -1,3 +1,7 @@ ++??/??/20?? autofs-5.0.6 ++----------------------- ++- remove ERR_remove_state() openssl call. ++ + 03/09/2009 autofs-5.0.5 + ----------------------- + - fix dumb libxml2 check +diff --git a/modules/lookup_ldap.c b/modules/lookup_ldap.c +index 2ecf5fe..1221c2c 100644 +--- a/modules/lookup_ldap.c ++++ b/modules/lookup_ldap.c +@@ -168,18 +168,8 @@ int unbind_ldap_connection(unsigned logopt, LDAP *ldap, struct lookup_context *c + int rv; + + #ifdef WITH_SASL +- /* +- * The OpenSSL library can't handle having its message and error +- * string database loaded multiple times and segfaults if the +- * TLS environment is not reset at the right times. As there +- * is no ldap_stop_tls call in the openldap library we have +- * to do the job ourselves, here and in lookup_done when the +- * module is closed. +- */ +- if (ctxt->use_tls == LDAP_TLS_RELEASE) { +- ERR_remove_state(0); ++ if (ctxt->use_tls == LDAP_TLS_RELEASE) + ctxt->use_tls = LDAP_TLS_INIT; +- } + autofs_sasl_unbind(ctxt); + #endif + +-- +1.7.5.1 + diff --git a/abs/extra/autofs/Changelog b/abs/extra/autofs/Changelog deleted file mode 100755 index d8df4dc..0000000 --- a/abs/extra/autofs/Changelog +++ /dev/null @@ -1,6 +0,0 @@ -5.0.4-5 4/29/09 -Cecil - Added run and finish files for runit. -6/28/10 -Britney - Updated run to manage automount; removed finish and /etc/rc.d/autofs; added logger -5.0.5-1 6/12/10 -Britney - Updated to 5.0.5 based on arch autofs 5.0.5 PKGBUILD and heimdal.patch with runit support added. diff --git a/abs/extra/autofs/PKGBUILD b/abs/extra/autofs/PKGBUILD index ae04100..3663f03 100755..100644 --- a/abs/extra/autofs/PKGBUILD +++ b/abs/extra/autofs/PKGBUILD @@ -1,50 +1,55 @@ -# $Id: PKGBUILD 75323 2010-04-01 10:16:24Z allan $ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# $Id: PKGBUILD 75188 2012-08-15 18:36:09Z lfleischer $ +# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> +# Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Dale Blount <dale@archlinux.org> # Contributor: Manolis Tzanidakis pkgname=autofs -pkgver=5.0.5 -pkgrel=3 -pkgdesc="A kernel-based automounter for Linux" +pkgver=5.0.7 +pkgrel=1 +pkgdesc='A kernel-based automounter for Linux.' arch=('i686' 'x86_64') -url="http://wiki.autofs.net/FrontPage" +url='http://freshmeat.net/projects/autofs' license=('GPL2') -depends=('libldap' 'libxml2' 'heimdal') -backup=(etc/autofs/auto.master etc/autofs/auto.misc etc/conf.d/autofs) -install=${pkgname}.install +depends=('libxml2') +makedepends=('libldap' 'krb5') +optdepends=('krb5: for LDAP support') +backup=('etc/autofs/auto.master' + 'etc/autofs/auto.misc' + 'etc/conf.d/autofs') +options=(!makeflags) +install='autofs.install' source=("http://www.kernel.org/pub/linux/daemons/${pkgname}/v5/${pkgname}-${pkgver}.tar.bz2" - 'autofs' 'autofs.conf.d' 'auto.master' 'auto.misc' - 'heimdal.patch') -md5sums=('a1d262cb6ebef0c2dd0fe22232fb3d5a' - 'e307bf6d2638e46eeb916cf42fe029b2' - '47f597c870410055e0fdb66103daf928' - 'a6cefb591e77b31b79dbb7243646c96b' - 'd8a15ec9186c5c0b36e5cea1e2739e8a' - 'efd46b6406b940cb48f7c6197790fb8e') + 'autofs' + 'autofs.conf.d' + 'auto.master' + 'auto.misc') build() { - export MAKEFLAGS="-j1" - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" - sed -i "s:SUBDIRS = lib daemon modules man samples:SUBDIRS = lib daemon modules man:" Makefile.rules - patch -Np1 -i ${srcdir}/heimdal.patch + sed -i "s:SUBDIRS = lib daemon modules man samples:SUBDIRS = lib daemon modules man:" \ + Makefile.rules - ./configure --prefix=/usr \ - --sysconfdir=/etc/autofs \ - --with-mapdir=/etc/autofs \ - --without-hesiod - make || return 1 - - sed -i "s:/etc:/etc/autofs:g" man/auto.master.5 + ./configure --prefix=/usr --sysconfdir=/etc/autofs --with-mapdir=/etc/autofs --without-hesiod \ + --enable-ignore-busy --with-systemd + make } -package(){ - cd ${srcdir}/${pkgname}-${pkgver} - make INSTALLROOT=${pkgdir} install - - install -Dm644 ${srcdir}/auto.master ${pkgdir}/etc/autofs/auto.master || return 1 - install -Dm644 ${srcdir}/auto.misc ${pkgdir}/etc/autofs/auto.misc || return 1 - install -Dm755 ${srcdir}/autofs ${pkgdir}/etc/rc.d/autofs || return 1 - install -Dm644 ${srcdir}/autofs.conf.d ${pkgdir}/etc/conf.d/autofs || return 1 +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make INSTALLROOT="${pkgdir}" install + + install -Dm0644 "${srcdir}/auto.master" "${pkgdir}/etc/autofs/auto.master" + install -Dm0644 "${srcdir}/auto.misc" "${pkgdir}/etc/autofs/auto.misc" + install -Dm0755 "${srcdir}/autofs" "${pkgdir}/etc/rc.d/autofs" + install -Dm0644 "${srcdir}/autofs.conf.d" "${pkgdir}/etc/conf.d/autofs" + + install -Dm0644 "samples/autofs.service" "${pkgdir}/usr/lib/systemd/system/autofs.service" } +md5sums=('bc46838dece83c02d800ff144ed9f431' + 'e307bf6d2638e46eeb916cf42fe029b2' + '47f597c870410055e0fdb66103daf928' + 'a6cefb591e77b31b79dbb7243646c96b' + 'd8a15ec9186c5c0b36e5cea1e2739e8a') diff --git a/abs/extra/autofs/autofs.install b/abs/extra/autofs/autofs.install index 7806efa..34ae75f 100644 --- a/abs/extra/autofs/autofs.install +++ b/abs/extra/autofs/autofs.install @@ -1,5 +1,4 @@ post_install(){ - echo "#########################################################" - echo "In autofs5 --ghost option isn't valid. In order to start autofs" - echo "you must remove that option from your /etc/conf.d/autofs. " + echo "> In autofs5 --ghost option isn't valid. In order to start autofs you" + echo "> must remove that option from your /etc/conf.d/autofs." } diff --git a/abs/extra/autofs/finish b/abs/extra/autofs/finish deleted file mode 100755 index 40d2fdc..0000000 --- a/abs/extra/autofs/finish +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -exec 2>&1 - -. /etc/rc.conf -. /etc/rc.d/functions - -stat_runit "Stopping autofs4 kernel module" && echo "" -set -e # barf if modprobe fails -/sbin/modprobe -r autofs4 diff --git a/abs/extra/autofs/heimdal.patch b/abs/extra/autofs/heimdal.patch deleted file mode 100644 index 4aa3218..0000000 --- a/abs/extra/autofs/heimdal.patch +++ /dev/null @@ -1,44 +0,0 @@ ---- autofs-5.0.5/modules/cyrus-sasl.c~ 2010-03-03 01:38:41.582901786 +0100 -+++ autofs-5.0.5/modules/cyrus-sasl.c 2010-03-03 01:41:32.313704755 +0100 -@@ -66,6 +66,15 @@ - #endif - #endif - -+/** -+ * The type of a principal is different for MIT Krb5 and Heimdal. -+ * These macros are provided by Heimdal, and introduced here for MIT. -+ */ -+#ifndef krb5_realm_length -+#define krb5_realm_length(r) ((r).length) -+#define krb5_realm_data(r) ((r).data) -+#endif -+ - /* - * Once a krb5 credentials cache is setup, we need to set the KRB5CCNAME - * environment variable so that the library knows where to find it. -@@ -452,11 +452,11 @@ - - /* setup a principal for the ticket granting service */ - ret = krb5_build_principal_ext(ctxt->krb5ctxt, &tgs_princ, -- krb5_princ_realm(ctxt->krb5ctxt, krb5_client_princ)->length, -- krb5_princ_realm(ctxt->krb5ctxt, krb5_client_princ)->data, -+ krb5_realm_length(*krb5_principal_get_realm(ctxt->krb5ctxt, krb5_client_princ)), -+ krb5_realm_data(*krb5_principal_get_realm(ctxt->krb5ctxt, krb5_client_princ)), - strlen(KRB5_TGS_NAME), KRB5_TGS_NAME, -- krb5_princ_realm(ctxt->krb5ctxt, krb5_client_princ)->length, -- krb5_princ_realm(ctxt->krb5ctxt, krb5_client_princ)->data, -+ krb5_realm_length(*krb5_principal_get_realm(ctxt->krb5ctxt, krb5_client_princ)), -+ krb5_realm_data(*krb5_principal_get_realm(ctxt->krb5ctxt, krb5_client_princ)), - 0); - if (ret) { - error(logopt, ---- autofs-5.0.5/modules/Makefile~ 2010-03-03 01:42:18.532868539 +0100 -+++ autofs-5.0.5/modules/Makefile 2010-03-03 01:42:35.360367371 +0100 -@@ -43,7 +43,7 @@ - ifeq ($(SASL), 1) - SASL_OBJ = cyrus-sasl.o - LDAP_FLAGS += $(SASL_FLAGS) $(XML_FLAGS) -DLDAP_THREAD_SAFE -- LIBLDAP += $(LIBSASL) $(XML_LIBS) -+ LIBLDAP += $(LIBSASL) $(XML_LIBS) -lkrb5 - endif - endif
\ No newline at end of file diff --git a/abs/extra/autofs/log.run b/abs/extra/autofs/log.run deleted file mode 100755 index d184328..0000000 --- a/abs/extra/autofs/log.run +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -/usr/bin/logger -p info -i -t autofs diff --git a/abs/extra/autogen/PKGBUILD b/abs/extra/autogen/PKGBUILD index eea072e..dda533b 100644 --- a/abs/extra/autogen/PKGBUILD +++ b/abs/extra/autogen/PKGBUILD @@ -1,24 +1,29 @@ -# $Id: PKGBUILD 54700 2009-10-11 18:35:07Z jgc $ +# $Id: PKGBUILD 157991 2012-04-30 17:51:02Z dan $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Arjan Timmerman <arjan@soufly.nl> # Contributor: Tor Krill pkgname=autogen -pkgver=5.11.5 +pkgver=5.15 pkgrel=1 pkgdesc="A tool designed to simplify the creation and maintenance of programs that contain large amounts of repetitious text" -arch=(i686 x86_64) +arch=('i686' 'x86_64') url="http://autogen.sourceforge.net/" license=('GPL3') -depends=('guile>=1.8.6' 'libxml2>=2.7.3' 'libtool>=2.2.6a') -options=('!libtool' '!makeflags') +depends=('guile' 'libxml2') +options=('!libtool') install=autogen.install -source=(http://downloads.sourceforge.net/autogen/${pkgname}-${pkgver}.tar.bz2) +source=(http://ftp.gnu.org/gnu/${pkgname}/rel${pkgver}/${pkgname}-${pkgver}.tar.xz{,.sig}) +md5sums=('5fba3c0e1ec0965061f27e8e79bd6da2' + 'ed74e586ade1a61f753d391f3849c25b') build() { cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install } -md5sums=('51c841eab6114de22b55f77a1c4f85b8') diff --git a/abs/extra/automoc4/PKGBUILD b/abs/extra/automoc4/PKGBUILD index ece3a62..4e13090 100644 --- a/abs/extra/automoc4/PKGBUILD +++ b/abs/extra/automoc4/PKGBUILD @@ -1,31 +1,33 @@ -# $ Id: $ -# Maintainer: Pierre Schmitz <pierre@archlinux.de> +# $Id: PKGBUILD 149006 2012-02-05 13:49:43Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=automoc4 pkgver=0.9.88 -pkgrel=1 -pkgdesc="KDE automoc4" +pkgrel=3 +pkgdesc="Automatic moc for Qt4" arch=('i686' 'x86_64') -url='http://www.kde.org' +url='http://www.kde.org/' license=('custom') -depends=('qt>=4.4') +depends=('qt') makedepends=('pkgconfig' 'cmake') -source=("ftp://ftp.archlinux.org/other/automoc4/automoc4-${pkgver}.tar.bz2") -md5sums=('adffb45ea2b550f284b1e3455f525176') +source=("http://download.kde.org/stable/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2" + 'license.txt') +md5sums=('91bf517cb940109180ecd07bc90c69ec' + '9014edbb7e2f02fe90b2db8707487bce') build() { - cd ${srcdir} - mkdir build - cd build - cmake ../${pkgname}-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr - make || return 1 + cd "${srcdir}" + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr + make } -package() { - cd ${srcdir}/build - make DESTDIR=$pkgdir install || return 1 - grep -A 21 '^ Copyright' ${srcdir}/${pkgname}-${pkgver}/kde4automoc.cpp > license.txt - install -D license.txt ${pkgdir}/usr/share/licenses/automoc4/license.txt +package() { + cd "${srcdir}/build" + make DESTDIR="${pkgdir}" install + install -Dm644 "${srcdir}/license.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/abs/extra/automoc4/license.txt b/abs/extra/automoc4/license.txt new file mode 100644 index 0000000..f9db603 --- /dev/null +++ b/abs/extra/automoc4/license.txt @@ -0,0 +1,31 @@ +Upstream Authors: + + Mathias Kretz <kretz@kde.org> + Alexander Neundorff <neundorff@kde.org> + +Copyright: + + Copyright (c) 2007 Mathias Kretz <kretz@kde.org> + +License: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/abs/extra/bash-completion/PKGBUILD b/abs/extra/bash-completion/PKGBUILD deleted file mode 100644 index a20fa08..0000000 --- a/abs/extra/bash-completion/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 95183 2010-10-16 21:57:23Z eric $ -# Maintainer: Aaron Griffin <aaron@archlinux.org> - -pkgname=bash-completion -pkgver=1.2 -pkgrel=2 -pkgdesc="Programmable completion for the bash shell" -arch=('any') -url="http://bash-completion.alioth.debian.org/" -license=('GPL') -depends=('bash') -source=(http://bash-completion.alioth.debian.org/files/$pkgname-$pkgver.tar.bz2) -md5sums=('88c022a98a02a02293716f840eadd884') -sha1sums=('47e6fb919ae227e74172870379b0fe999a2ae70d') - -build() { - cd "$srcdir/$pkgname-$pkgver" - - # fixes for archlinux - sed -i 's#/sbin" lsmod#/bin" lsmod#' bash_completion - - ./configure --prefix=/usr --sysconfdir=/etc - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" install - -# Doesn't work on Arch Linux and cause problems (FS#20112) - rm "$pkgdir/etc/bash_completion.d/service" -} - diff --git a/abs/extra/bdf-unifont/PKGBUILD b/abs/extra/bdf-unifont/PKGBUILD index 2df7993..bc82824 100644 --- a/abs/extra/bdf-unifont/PKGBUILD +++ b/abs/extra/bdf-unifont/PKGBUILD @@ -3,22 +3,19 @@ pkgname=bdf-unifont pkgver=5.1.20080820 -pkgrel=1 +pkgrel=2 pkgdesc="GNU Unifont Glyphs" -arch=('i686' 'x86_64') +arch=('any') license=('custom' 'GPL2') url="http://unifoundry.com/unifont.html" depends=('fontconfig' 'xorg-fonts-encodings' 'xorg-font-utils') install=unifont.install -source=('http://unifoundry.com/unifont-5.1.20080820.bdf.gz' 'LICENSE') +source=("http://unifoundry.com/unifont-${pkgver}.bdf.gz" 'LICENSE') md5sums=('6b8263ceccef33bd633aa019d74b7943' '64da5a96d6789d29d485cd67a43bc547') -build() { - install -Dm644 ${srcdir}/unifont-5.1.20080820.bdf \ - ${pkgdir}/usr/share/fonts/misc/unifont.bdf - - # install LICENSE file +package() { + install -Dm644 ${srcdir}/unifont-${pkgver}.bdf \ + ${pkgdir}/usr/share/fonts/misc/unifont.bdf install -Dm644 ${srcdir}/LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE } - diff --git a/abs/extra/beautiful-soup/PKGBUILD b/abs/extra/beautiful-soup/PKGBUILD deleted file mode 100644 index f604804..0000000 --- a/abs/extra/beautiful-soup/PKGBUILD +++ /dev/null @@ -1,19 +0,0 @@ -# Maintainer: Douglas Soares de Andrade <dsa@aur.archlinux.org> -# Contributor: phrakture < aaron m griffin * gmail::com > -# Contributor: tardo <tardo@nagi-fanboi.net> - -pkgname=beautiful-soup -pkgver=3.1.0 -pkgrel=2 -pkgdesc="A Python HTML/XML parser designed for quick turnaround projects like screen-scraping" -arch=('i686' 'x86_64') -url="http://www.crummy.com/software/BeautifulSoup/index.html" -license=('PSF') -depends=('python2') -source=(http://www.crummy.com/software/BeautifulSoup/download/3.x/BeautifulSoup-$pkgver.tar.gz) - -build() { - cd $srcdir/BeautifulSoup-$pkgver - python2 setup.py install --root=$pkgdir -} -md5sums=('6c0dae06f9f7e1fe8181d0d1a105cf72') diff --git a/abs/extra/blas/LICENSE.blas b/abs/extra/blas/LICENSE.blas new file mode 100644 index 0000000..79f3838 --- /dev/null +++ b/abs/extra/blas/LICENSE.blas @@ -0,0 +1,19 @@ +From: http://www.netlib.org/blas/faq.html + + 2) Are there legal restrictions on the use of BLAS reference + implementation software? + +The reference BLAS is a freely-available software package. It is +available from netlib via anonymous ftp and the World Wide Web. Thus, +it can be included in commercial software packages (and has been). We +only ask that proper credit be given to the authors. + +Like all software, it is copyrighted. It is not trademarked, but we do +ask the following: + +If you modify the source for these routines we ask that you change the +name of the routine and comment the changes made to the original. + +We will gladly answer any questions regarding the software. If a +modification is done, however, it is the responsibility of the person +who modified the routine to provide support. diff --git a/abs/extra/blas/Makefile.blas b/abs/extra/blas/Makefile.blas new file mode 100644 index 0000000..0c6cd06 --- /dev/null +++ b/abs/extra/blas/Makefile.blas @@ -0,0 +1,149 @@ +include ../../make.inc + +####################################################################### +# This is the makefile to create a library for the BLAS. +# The files are grouped as follows: +# +# SBLAS1 -- Single precision real BLAS routines +# CBLAS1 -- Single precision complex BLAS routines +# DBLAS1 -- Double precision real BLAS routines +# ZBLAS1 -- Double precision complex BLAS routines +# +# CB1AUX -- Real BLAS routines called by complex routines +# ZB1AUX -- D.P. real BLAS routines called by d.p. complex +# routines +# +# ALLBLAS -- Auxiliary routines for Level 2 and 3 BLAS +# +# SBLAS2 -- Single precision real BLAS2 routines +# CBLAS2 -- Single precision complex BLAS2 routines +# DBLAS2 -- Double precision real BLAS2 routines +# ZBLAS2 -- Double precision complex BLAS2 routines +# +# SBLAS3 -- Single precision real BLAS3 routines +# CBLAS3 -- Single precision complex BLAS3 routines +# DBLAS3 -- Double precision real BLAS3 routines +# ZBLAS3 -- Double precision complex BLAS3 routines +# +# The library can be set up to include routines for any combination +# of the four precisions. To create or add to the library, enter make +# followed by one or more of the precisions desired. Some examples: +# make single +# make single complex +# make single double complex complex16 +# Note that these commands are not safe for parallel builds. +# +# Alternatively, the commands +# make all +# or +# make +# without any arguments creates a library of all four precisions. +# The name of the library is held in BLASLIB, which is set in the +# top-level make.inc +# +# To remove the object files after the library is created, enter +# make clean +# To force the source files to be recompiled, enter, for example, +# make single FRC=FRC +# +#--------------------------------------------------------------------- +# +# Edward Anderson, University of Tennessee +# March 26, 1990 +# Susan Ostrouchov, Last updated September 30, 1994 +# ejr, May 2006. +# +####################################################################### + +all: $(BLASLIB) + +#--------------------------------------------------------- +# Comment out the next 6 definitions if you already have +# the Level 1 BLAS. +#--------------------------------------------------------- +SBLAS1 = isamax.o sasum.o saxpy.o scopy.o sdot.o snrm2.o \ + srot.o srotg.o sscal.o sswap.o sdsdot.o srotmg.o srotm.o +$(SBLAS1): $(FRC) + +CBLAS1 = scabs1.o scasum.o scnrm2.o icamax.o caxpy.o ccopy.o \ + cdotc.o cdotu.o csscal.o crotg.o cscal.o cswap.o csrot.o +$(CBLAS1): $(FRC) + +DBLAS1 = idamax.o dasum.o daxpy.o dcopy.o ddot.o dnrm2.o \ + drot.o drotg.o dscal.o dsdot.o dswap.o drotmg.o drotm.o +$(DBLAS1): $(FRC) + +ZBLAS1 = dcabs1.o dzasum.o dznrm2.o izamax.o zaxpy.o zcopy.o \ + zdotc.o zdotu.o zdscal.o zrotg.o zscal.o zswap.o zdrot.o +$(ZBLAS1): $(FRC) + +CB1AUX = isamax.o sasum.o saxpy.o scopy.o snrm2.o sscal.o +$(CB1AUX): $(FRC) + +ZB1AUX = idamax.o dasum.o daxpy.o dcopy.o dnrm2.o dscal.o +$(ZB1AUX): $(FRC) + +#--------------------------------------------------------------------- +# The following line defines auxiliary routines needed by both the +# Level 2 and Level 3 BLAS. Comment it out only if you already have +# both the Level 2 and 3 BLAS. +#--------------------------------------------------------------------- +ALLBLAS = lsame.o xerbla.o xerbla_array.o +$(ALLBLAS) : $(FRC) + +#--------------------------------------------------------- +# Comment out the next 4 definitions if you already have +# the Level 2 BLAS. +#--------------------------------------------------------- +SBLAS2 = sgemv.o sgbmv.o ssymv.o ssbmv.o sspmv.o \ + strmv.o stbmv.o stpmv.o strsv.o stbsv.o stpsv.o \ + sger.o ssyr.o sspr.o ssyr2.o sspr2.o +$(SBLAS2): $(FRC) + +CBLAS2 = cgemv.o cgbmv.o chemv.o chbmv.o chpmv.o \ + ctrmv.o ctbmv.o ctpmv.o ctrsv.o ctbsv.o ctpsv.o \ + cgerc.o cgeru.o cher.o chpr.o cher2.o chpr2.o +$(CBLAS2): $(FRC) + +DBLAS2 = dgemv.o dgbmv.o dsymv.o dsbmv.o dspmv.o \ + dtrmv.o dtbmv.o dtpmv.o dtrsv.o dtbsv.o dtpsv.o \ + dger.o dsyr.o dspr.o dsyr2.o dspr2.o +$(DBLAS2): $(FRC) + +ZBLAS2 = zgemv.o zgbmv.o zhemv.o zhbmv.o zhpmv.o \ + ztrmv.o ztbmv.o ztpmv.o ztrsv.o ztbsv.o ztpsv.o \ + zgerc.o zgeru.o zher.o zhpr.o zher2.o zhpr2.o +$(ZBLAS2): $(FRC) + +#--------------------------------------------------------- +# Comment out the next 4 definitions if you already have +# the Level 3 BLAS. +#--------------------------------------------------------- +SBLAS3 = sgemm.o ssymm.o ssyrk.o ssyr2k.o strmm.o strsm.o +$(SBLAS3): $(FRC) + +CBLAS3 = cgemm.o csymm.o csyrk.o csyr2k.o ctrmm.o ctrsm.o \ + chemm.o cherk.o cher2k.o +$(CBLAS3): $(FRC) + +DBLAS3 = dgemm.o dsymm.o dsyrk.o dsyr2k.o dtrmm.o dtrsm.o +$(DBLAS3): $(FRC) + +ZBLAS3 = zgemm.o zsymm.o zsyrk.o zsyr2k.o ztrmm.o ztrsm.o \ + zhemm.o zherk.o zher2k.o +$(ZBLAS3): $(FRC) + +ALLOBJ=$(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3) \ + $(CBLAS1) $(CBLAS2) $(CBLAS3) $(ZBLAS1) \ + $(ZBLAS2) $(ZBLAS3) $(ALLBLAS) + +clean: + rm -f *.o libblas.a libblas.so* + +static: $(ALLOBJ) + ar ruv libblas.a $(ALLOBJ) + ranlib libblas.a + +shared: $(ALLOBJ) + cc $(CFLAGS) -shared -Wl,-soname,libblas.so.3 -o libblas.so.3.4.0 $(ALLOBJ) -lm -lgfortran -lc + diff --git a/abs/extra/blas/PKGBUILD b/abs/extra/blas/PKGBUILD new file mode 100755 index 0000000..94dd1c4 --- /dev/null +++ b/abs/extra/blas/PKGBUILD @@ -0,0 +1,52 @@ +# $Id: PKGBUILD 130989 2011-07-09 12:22:58Z ronald $ +# Maintainer: Ronald van Haren <ronald.archlinux.org> +# Contributor: Jan de Groot <jgc@archlinux.org> +# Contributor: damir <damir@archlinux.org> +# Contributor: Jason Taylor <jftaylor21@gmail.com> + +pkgname=blas +pkgver=3.4.0 +pkgrel=1 +url="http://www.netlib.org/blas" +makedepends=('gcc-fortran') +depends=('gcc-libs') +pkgdesc="Basic Linear Algebra Subprograms" +arch=('i686' 'x86_64') +license=("custom") +source=(http://www.netlib.org/lapack/lapack-${pkgver}.tgz + Makefile.blas + LICENSE.blas) +sha1sums=('910109a931524f8dcc2734ce23fe927b00ca199f' + '85996f56c13991fc69481c0e88ef905a0dcefb49' + '2491a151a37f0162b25fc4e4e9a8ac444b574a76') + +build() { + cd "${srcdir}/lapack-${pkgver}" + cp -f "${srcdir}/Makefile.blas" BLAS/SRC/Makefile + cp -f INSTALL/make.inc.gfortran make.inc + + export FC=gfortran + + pushd BLAS/SRC + make clean + FFLAGS="${CFLAGS/-O?/-O0}" make dcabs1.o + FFLAGS="${CFLAGS} -fPIC" CFLAGS="${CFLAGS} -fPIC" make shared + cp libblas.so.${pkgver} "${srcdir}/lapack-${pkgver}/" + + popd + ln -s libblas.so.${pkgver} libblas.so + +} + +package_blas() { + install -m755 -d "${pkgdir}/usr/lib" + install -m755 "${srcdir}/lapack-${pkgver}/libblas.so.${pkgver}" \ + "${pkgdir}/usr/lib/" + ln -sf libblas.so.${pkgver} "${pkgdir}/usr/lib/libblas.so" + ln -sf libblas.so.${pkgver} "${pkgdir}/usr/lib/libblas.so.3" + + install -m755 -d "${pkgdir}/usr/share/licenses/blas" + install -m644 "${srcdir}/LICENSE.blas" \ + "${pkgdir}/usr/share/licenses/blas/LICENSE" +} + diff --git a/abs/extra/blas/lapack-3.1.1-make.inc.patch b/abs/extra/blas/lapack-3.1.1-make.inc.patch new file mode 100644 index 0000000..c807ccb --- /dev/null +++ b/abs/extra/blas/lapack-3.1.1-make.inc.patch @@ -0,0 +1,23 @@ +--- lapack-3.1.1/INSTALL/make.inc.gfortran.BAD 2007-05-25 15:34:55.000000000 -0500 ++++ lapack-3.1.1/INSTALL/make.inc.gfortran 2007-05-25 15:35:51.000000000 -0500 +@@ -8,7 +8,7 @@ SHELL = /bin/sh + # + # The machine (platform) identifier to append to the library names + # +-PLAT = _LINUX ++PLAT = + # + # Modify the FORTRAN and OPTS definitions to refer to the + # compiler and desired compiler options for your machine. NOOPT +@@ -17,9 +17,9 @@ PLAT = _LINUX + # desired load options for your machine. + # + FORTRAN = gfortran +-OPTS = -O2 ++#OPTS = -O2 + DRVOPTS = $(OPTS) +-NOOPT = -O0 ++NOOPT = + LOADER = gfortran + LOADOPTS = + # diff --git a/abs/extra/bluez-firmware/PKGBUILD b/abs/extra/bluez-firmware/PKGBUILD deleted file mode 100644 index 4a3617f..0000000 --- a/abs/extra/bluez-firmware/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id: $ -# Contributor: Geoffroy Carrier <geoffroy@archlinux.org> -# Contributor: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Stefano Zamprogno <stefano.zamprogno@gmail.com> - -pkgname=bluez-firmware -pkgver=1.2 -pkgrel=5 -pkgdesc="Firmware for Broadcom BCM203x and STLC2300 Bluetooth chips" -url="http://www.bluez.org/" -arch=('i686' 'x86_64') -license=('GPL2') -source=("http://bluez.sf.net/download/${pkgname}-${pkgver}.tar.gz") -md5sums=('1cc3cefad872e937e05de5a0a2b390dd') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --libdir=/lib -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="$pkgdir" install -} diff --git a/abs/extra/bluez-hcidump/PKGBUILD b/abs/extra/bluez-hcidump/PKGBUILD deleted file mode 100644 index ab4047c..0000000 --- a/abs/extra/bluez-hcidump/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id$ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Geoffroy carrier <geoffroy@archlinux.org> -# Contributor: Giovanni Scafora <giovanni@archlinux.org> - -pkgname=bluez-hcidump -pkgver=2.2 -pkgrel=1 -pkgdesc="Bluetooth HCI package analyzer" -url="http://www.bluez.org/" -arch=('i686' 'x86_64') -license=('GPL2') -depends=('glibc' 'bluez') -source=(http://www.kernel.org/pub/linux/bluetooth/${pkgname}-${pkgver}.tar.gz) - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} - -md5sums=('3c298a8be67099fe227f3e4d9de539d5') diff --git a/abs/extra/bluez/PKGBUILD b/abs/extra/bluez/PKGBUILD index a26b874..758e858 100644 --- a/abs/extra/bluez/PKGBUILD +++ b/abs/extra/bluez/PKGBUILD @@ -4,7 +4,7 @@ # Contributor: Geoffroy Carrier <geoffroy@archlinux.org> pkgname=bluez -pkgver=4.100 +pkgver=4.101 pkgrel=1 pkgdesc="Libraries and tools for the Bluetooth protocol stack" url="http://www.bluez.org/" @@ -82,7 +82,7 @@ package() { "${pkgdir}"/usr/bin/bluez-test-device \ "${pkgdir}"/usr/bin/bluez-test-input } -md5sums=('54809d476c52665ff64594b6828016b5' +md5sums=('902b390af95c6c5d6d1a17d94c8344ab' '7412982b440f29fa7f76a41a87fef985' '54c7de598327bf11d56592235d0702f4' 'cc9c86af1ced7ad46fc7be114d32adfb') diff --git a/abs/extra/bmp/0.9.7-visualization.patch b/abs/extra/bmp/0.9.7-visualization.patch deleted file mode 100644 index ac03323..0000000 --- a/abs/extra/bmp/0.9.7-visualization.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- beep/vis.c 2004-12-04 10:04:29.000000000 +0100 -+++ beep/vis.c 2005-02-17 12:02:25.391044008 +0100 -@@ -223,7 +223,8 @@ vis_draw(Widget * w) - /* FIXME: The check "shouldn't" be neccessary? */ - /* if (GTK_IS_WINDOW(vis->vs_window)) { */ - GDK_THREADS_ENTER(); -- gdk_draw_indexed_image(vis->vs_window, vis->vs_widget.gc, -+ if (GDK_IS_DRAWABLE(vis->vs_window)) -+ gdk_draw_indexed_image(vis->vs_window, vis->vs_widget.gc, - vis->vs_widget.x, vis->vs_widget.y, - vis->vs_widget.width, vis->vs_widget.height, - GDK_RGB_DITHER_NORMAL, (guchar *) rgb_data, diff --git a/abs/extra/bmp/0.9.7.1-visualization.patch b/abs/extra/bmp/0.9.7.1-visualization.patch deleted file mode 100644 index ac03323..0000000 --- a/abs/extra/bmp/0.9.7.1-visualization.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- beep/vis.c 2004-12-04 10:04:29.000000000 +0100 -+++ beep/vis.c 2005-02-17 12:02:25.391044008 +0100 -@@ -223,7 +223,8 @@ vis_draw(Widget * w) - /* FIXME: The check "shouldn't" be neccessary? */ - /* if (GTK_IS_WINDOW(vis->vs_window)) { */ - GDK_THREADS_ENTER(); -- gdk_draw_indexed_image(vis->vs_window, vis->vs_widget.gc, -+ if (GDK_IS_DRAWABLE(vis->vs_window)) -+ gdk_draw_indexed_image(vis->vs_window, vis->vs_widget.gc, - vis->vs_widget.x, vis->vs_widget.y, - vis->vs_widget.width, vis->vs_widget.height, - GDK_RGB_DITHER_NORMAL, (guchar *) rgb_data, diff --git a/abs/extra/bmp/PKGBUILD b/abs/extra/bmp/PKGBUILD deleted file mode 100644 index ffcc1bf..0000000 --- a/abs/extra/bmp/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id: PKGBUILD 9914 2008-08-21 00:36:16Z eric $ -# Maintainer: Kevin Piche <kevin@archlinux.org> -# Contributor: Ben <contrasutra@myrealbox.com> - -pkgname=bmp -pkgver=0.9.7.1 -pkgrel=4 -pkgdesc="gtk2 port of xmms" -arch=(i686 x86_64) -url="http://bmp.beep-media-player.org/" -depends=('esd' 'id3lib' 'libglade' 'libsm' 'libvorbis' 'unzip') -source=(http://voxel.dl.sourceforge.net/sourceforge/beepmp/bmp-$pkgver.tar.gz $pkgver-visualization.patch bmp-${pkgver}-crossfade-0.3.9.patch) -md5sums=('c25d5a8d49cc5851d13d525a20023c4c' 'fa1bdf5a8d03e8539a6bed5caa471176'\ - '42ad4109ddb66024d4c6d1f3e572ab86') - -build() { - cd $startdir/src/$pkgname-$pkgver - patch -p0 -i ../${pkgver}-visualization.patch - patch -p1 -i ../${pkgname}-${pkgver}-crossfade-0.3.9.patch - ./configure --prefix=/usr - /usr/bin/make || return 1 - /usr/bin/make DESTDIR=$startdir/pkg install - find $startdir/pkg -name '*.la' -exec rm {} \; -} -# vim: ts=2 sw=2 et ft=sh diff --git a/abs/extra/bmp/bmp-0.9.7.1-crossfade-0.3.9.patch b/abs/extra/bmp/bmp-0.9.7.1-crossfade-0.3.9.patch deleted file mode 100644 index 4c1e46d..0000000 --- a/abs/extra/bmp/bmp-0.9.7.1-crossfade-0.3.9.patch +++ /dev/null @@ -1,108 +0,0 @@ -Patch taken from xmms-crossfade 3.10 tarball. Required for crossfade to -work. http://www.eisenlohr.org/xmms-crossfade/ - -diff -ur bmp-0.9.7.1/beep/mainwin.c bmp-0.9.7.1.patched/beep/mainwin.c ---- bmp-0.9.7.1/beep/mainwin.c 2005-05-09 10:45:39.000000000 +0200 -+++ bmp-0.9.7.1.patched/beep/mainwin.c 2005-11-25 00:03:59.000000000 +0100 -@@ -655,9 +655,11 @@ - mainwin_set_shade(!cfg.player_shaded); - } - -+gboolean is_quitting = FALSE; - void - mainwin_quit_cb(void) - { -+ is_quitting = TRUE; - gtk_widget_hide(equalizerwin); - gtk_widget_hide(playlistwin); - gtk_widget_hide(mainwin); -@@ -1318,7 +1320,7 @@ - change_song(guint pos) - { - if (bmp_playback_get_playing()) -- bmp_playback_stop(); -+ bmp_playback_stop_for_restart(); - - playlist_set_position(pos); - bmp_playback_initiate(); -diff -ur bmp-0.9.7.1/beep/playback.c bmp-0.9.7.1.patched/beep/playback.c ---- bmp-0.9.7.1/beep/playback.c 2005-01-26 06:56:15.000000000 +0100 -+++ bmp-0.9.7.1.patched/beep/playback.c 2005-11-25 00:03:59.000000000 +0100 -@@ -89,7 +89,7 @@ - return; - - if (bmp_playback_get_playing()) -- bmp_playback_stop(); -+ bmp_playback_stop_for_restart(); - - vis_clear_data(mainwin_vis); - vis_clear_data(playlistwin_vis); -@@ -135,6 +135,15 @@ - get_current_input_plugin()->pause(ip_data.paused); - } - -+gboolean input_stopped_for_restart = FALSE; -+void -+bmp_playback_stop_for_restart(void) -+{ -+ input_stopped_for_restart = TRUE; -+ bmp_playback_stop(); -+ input_stopped_for_restart = FALSE; -+} -+ - void - bmp_playback_stop(void) - { -diff -ur bmp-0.9.7.1/beep/playback.h bmp-0.9.7.1.patched/beep/playback.h ---- bmp-0.9.7.1/beep/playback.h 2004-12-04 10:04:26.000000000 +0100 -+++ bmp-0.9.7.1.patched/beep/playback.h 2005-11-25 00:03:59.000000000 +0100 -@@ -26,6 +26,7 @@ - void bmp_playback_initiate(void); - void bmp_playback_pause(void); - void bmp_playback_stop(void); -+void bmp_playback_stop_for_restart(void); - gboolean bmp_playback_play_file(const gchar * filename); - gboolean bmp_playback_get_playing(void); - gboolean bmp_playback_get_paused(void); -diff -ur bmp-0.9.7.1/beep/playlist.c bmp-0.9.7.1.patched/beep/playlist.c ---- bmp-0.9.7.1/beep/playlist.c 2005-08-11 09:25:51.000000000 +0200 -+++ bmp-0.9.7.1.patched/beep/playlist.c 2005-11-25 00:03:59.000000000 +0100 -@@ -817,7 +817,7 @@ - if (bmp_playback_get_playing()) { - /* We need to stop before changing playlist_position */ - PLAYLIST_UNLOCK(); -- bmp_playback_stop(); -+ bmp_playback_stop_for_restart(); - PLAYLIST_LOCK(); - restart_playing = TRUE; - } -@@ -868,7 +868,7 @@ - if (bmp_playback_get_playing()) { - /* We need to stop before changing playlist_position */ - PLAYLIST_UNLOCK(); -- bmp_playback_stop(); -+ bmp_playback_stop_for_restart(); - PLAYLIST_LOCK(); - restart_playing = TRUE; - } -@@ -1018,7 +1018,7 @@ - if (bmp_playback_get_playing()) { - /* We need to stop before changing playlist_position */ - PLAYLIST_UNLOCK(); -- bmp_playback_stop(); -+ bmp_playback_stop_for_restart(); - PLAYLIST_LOCK(); - restart_playing = TRUE; - } -@@ -1047,7 +1047,10 @@ - { - GList *plist_pos_list; - -- bmp_playback_stop(); -+ if (cfg.repeat) -+ bmp_playback_stop_for_restart(); -+ else -+ bmp_playback_stop(); - - PLAYLIST_LOCK(); - plist_pos_list = find_playlist_position_list(); diff --git a/abs/extra/boost/PKGBUILD b/abs/extra/boost/PKGBUILD index f9502a9..7629843 100644 --- a/abs/extra/boost/PKGBUILD +++ b/abs/extra/boost/PKGBUILD @@ -1,4 +1,4 @@ -# $Id$ +# $Id: PKGBUILD 163703 2012-07-18 01:05:09Z ibiru $ # Maintainer: kevin <kevin@archlinux.org> # Contributor: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Kritoke <kritoke@gamebox.net> @@ -6,28 +6,26 @@ pkgbase=boost pkgname=('boost-libs' 'boost') -pkgver=1.49.0 +pkgver=1.50.0 _boostver=${pkgver//./_} pkgrel=1 arch=('i686' 'x86_64') url="http://www.boost.org/" -makedepends=('icu' 'python2' 'bzip2' 'zlib' 'openmpi') -source=(http://downloads.sourceforge.net/sourceforge/${pkgbase}/${pkgbase}_${_boostver}.tar.gz - exceptions.patch) +makedepends=('icu' 'python2' 'bzip2' 'zlib' 'openmpi') +source=(http://downloads.sourceforge.net/${pkgbase}/${pkgbase}_${_boostver}.tar.gz) license=('custom') +md5sums=('dbc07ab0254df3dda6300fd737b3f264') _stagedir="${srcdir}/stagedir" build() { # set python path for bjam cd "${srcdir}/${pkgbase}_${_boostver}/tools" - echo "using python : 2.6 : /usr/bin/python2 ;" >> build/v2/user-config.jam + echo "using python : 2.7 : /usr/bin/python2 ;" >> build/v2/user-config.jam #echo "using python : 3.2 : /usr/bin/python : /usr/include/python3.2mu : /usr/lib ;" >> build/v2/user-config.jam echo "using mpi ;" >> build/v2/user-config.jam cd "${srcdir}"/${pkgbase}_${_boostver} - # https://svn.boost.org/trac/boost/ticket/5731 - patch -p0 -i "${srcdir}/exceptions.patch" # build bjam cd "${srcdir}/${pkgbase}_${_boostver}/tools/build/v2/engine" @@ -78,7 +76,9 @@ build() { package_boost() { pkgdesc="Free peer-reviewed portable C++ source libraries - Development" depends=("boost-libs=${pkgver}") - optdepends=('python2: for python2 bindings') + optdepends=(#'python: for python bindings' + 'python2: for python2 bindings' + 'boost-build: to use boost jam for building your project.') install -d "${pkgdir}"/usr/{include,lib,share} # headers/source files @@ -111,5 +111,3 @@ package_boost-libs() { install -D -m644 "${srcdir}/${pkgbase}_${_boostver}/LICENSE_1_0.txt" \ "${pkgdir}"/usr/share/licenses/boost-libs/LICENSE_1_0.txt } -md5sums=('e0defc8c818e4f1c5bbb29d0292b76ca' - 'bedd276510b6ad1ff2b4d143de21373e') diff --git a/abs/extra/boost/__changelog b/abs/extra/boost/__changelog deleted file mode 100644 index f0c532d..0000000 --- a/abs/extra/boost/__changelog +++ /dev/null @@ -1,3 +0,0 @@ -* remove 'python' dep (aka python3) -* change python 2.7 refrence to 2.6 -* remove python optdep for the libs package diff --git a/abs/extra/boost/exceptions.patch b/abs/extra/boost/exceptions.patch deleted file mode 100644 index 0322db6..0000000 --- a/abs/extra/boost/exceptions.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -up boost/numeric/conversion/converter_policies.hpp\~ boost/numeric/conversion/converter_policies.hpp ---- boost/numeric/conversion/converter_policies.hpp~ 2008-10-13 11:00:03.000000000 +0200 -+++ boost/numeric/conversion/converter_policies.hpp 2011-07-22 11:46:40.961876274 +0200 -@@ -20,6 +20,7 @@ - - #include "boost/mpl/if.hpp" - #include "boost/mpl/integral_c.hpp" -+#include "boost/throw_exception.hpp" - - namespace boost { namespace numeric - { -@@ -159,9 +160,9 @@ struct def_overflow_handler - void operator() ( range_check_result r ) // throw(negative_overflow,positive_overflow) - { - if ( r == cNegOverflow ) -- throw negative_overflow() ; -+ boost::throw_exception( negative_overflow() ) ; - else if ( r == cPosOverflow ) -- throw positive_overflow() ; -+ boost::throw_exception( positive_overflow() ) ; - } - } ; - - -Diff finished. Fri Jul 22 11:46:49 2011 diff --git a/abs/extra/ca-certificates-java/PKGBUILD b/abs/extra/ca-certificates-java/PKGBUILD new file mode 100644 index 0000000..ff1a341 --- /dev/null +++ b/abs/extra/ca-certificates-java/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 162732 2012-06-29 08:16:24Z pierre $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgname=ca-certificates-java +pkgver=20120721 +pkgrel=1 +pkgdesc='Common CA certificates (JKS keystore)' +arch=('any') +url='http://packages.qa.debian.org/c/ca-certificates-java.html' +license=('GPL') +depends=('ca-certificates') +makedepends=('jdk7-openjdk') +install='ca-certificates-java.install' +backup=('etc/default/cacerts') +source=("http://ftp.debian.org/debian/pool/main/c/${pkgname}/${pkgname}_${pkgver}.tar.gz" + 'init-jks-keystore' 'jks-keystore.hook') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + javac -target 1.6 -source 1.6 UpdateCertificates.java + jar cfe ca-certificates-java.jar UpdateCertificates *.class +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + + install -d -m755 ${pkgdir}/etc/ssl/certs/java + install -D -m600 debian/default ${pkgdir}/etc/default/cacerts + install -D -m644 ca-certificates-java.jar ${pkgdir}/usr/share/ca-certificates-java/ca-certificates-java.jar + install -D -m755 ${srcdir}/init-jks-keystore ${pkgdir}/usr/sbin/init-jks-keystore + install -D -m755 ${srcdir}/jks-keystore.hook ${pkgdir}/etc/ca-certificates/update.d/jks-keystore +} +md5sums=('a4c17590cc91a498b611c2dc62795273' + '75eeca3f443f4b5a17ed5ac81875f1e9' + '6dd4f915aee0df51260083e00b7fa012') diff --git a/abs/extra/ca-certificates-java/ca-certificates-java.install b/abs/extra/ca-certificates-java/ca-certificates-java.install new file mode 100644 index 0000000..f5ce35e --- /dev/null +++ b/abs/extra/ca-certificates-java/ca-certificates-java.install @@ -0,0 +1,18 @@ +post_install() { + if [ ! -f etc/ssl/certs/java/cacerts ]; then + if which java >/dev/null 2>&1; then + usr/sbin/init-jks-keystore + fi + fi +} + +post_upgrade() { + if [ $(vercmp $2 20110426-2) -lt 0 ]; then + mv etc/ssl/certs/java/cacerts etc/ssl/certs/java/cacerts.pacsave + fi + post_install +} + +post_remove() { + rm -rf etc/ssl/certs/java +} diff --git a/abs/extra/ca-certificates-java/init-jks-keystore b/abs/extra/ca-certificates-java/init-jks-keystore new file mode 100755 index 0000000..0758420 --- /dev/null +++ b/abs/extra/ca-certificates-java/init-jks-keystore @@ -0,0 +1,10 @@ +#!/bin/sh + +storepass='changeit' +. /etc/default/cacerts + +JAR=/usr/share/ca-certificates-java/ca-certificates-java.jar + +find /etc/ssl/certs -name '*.pem' -printf "+%p\n" | \ + java -jar $JAR -storepass "$storepass" >/dev/null +echo "done." diff --git a/abs/extra/ca-certificates-java/jks-keystore.hook b/abs/extra/ca-certificates-java/jks-keystore.hook new file mode 100644 index 0000000..67d9eda --- /dev/null +++ b/abs/extra/ca-certificates-java/jks-keystore.hook @@ -0,0 +1,15 @@ +#! /bin/sh + +storepass='changeit' +. /etc/default/cacerts + +echo "" +if [ "$cacerts_updates" != yes ] || [ "$CACERT_UPDATES" = disabled ]; then + echo "updates of cacerts keystore disabled." + exit 0 +fi + +JAR=/usr/share/ca-certificates-java/ca-certificates-java.jar + +java -jar $JAR -storepass "$storepass" +echo "done." diff --git a/abs/extra/cabextract/PKGBUILD b/abs/extra/cabextract/PKGBUILD deleted file mode 100644 index 4e7b2cf..0000000 --- a/abs/extra/cabextract/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# $Id: PKGBUILD 86106 2010-07-25 21:30:58Z giovanni $ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> - -pkgname=cabextract -pkgver=1.3 -pkgrel=1 -pkgdesc="A program to extract Microsoft cabinet (.CAB) files." -arch=('i686' 'x86_64') -license=('GPL') -url="http://www.cabextract.org.uk/" -depends=('glibc') -source=(http://www.cabextract.org.uk/${pkgname}-${pkgver}.tar.gz) -md5sums=('cb9a4a38470d2a71a0275968e7eb64d3') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/abs/extra/ccache/PKGBUILD b/abs/extra/ccache/PKGBUILD deleted file mode 100644 index 95c0788..0000000 --- a/abs/extra/ccache/PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# $Id: PKGBUILD 98352 2010-11-08 08:19:09Z giovanni $ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> - -pkgname=ccache -pkgver=3.1.1 -pkgrel=1 -pkgdesc="A compiler cache" -url="http://ccache.samba.org/" -source=(http://samba.org/ftp/${pkgname}/$pkgname-$pkgver.tar.bz2) -license=('GPL') -arch=('i686' 'x86_64') -depends=('zlib') -md5sums=('7dbd668c79d78c0b32c13214b2b35b70') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr - make || return 1 - install -Dm 755 ccache ${pkgdir}/usr/bin/ccache - install -Dm 644 ccache.1 ${pkgdir}/usr/share/man/man1/ccache.1 - - mkdir -p ${pkgdir}/usr/lib/ccache/bin - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/cc - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/gcc - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/g++ - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/cpp - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/c++ - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/${CHOST}-cc - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/${CHOST}-gcc - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/${CHOST}-g++ - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/${CHOST}-cpp - ln -sf /usr/bin/ccache ${pkgdir}/usr/lib/ccache/bin/${CHOST}-c++ -} diff --git a/abs/extra/celt-0.7/PKGBUILD b/abs/extra/celt-0.7/PKGBUILD deleted file mode 100644 index 59b9e9c..0000000 --- a/abs/extra/celt-0.7/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id$ -# Maintainer: Ray Rashif <schiv@archlinux.org> -# Contributor: Sven-Hendrik Haase <sh@lutzhaase.com> -# Contributor: Lauri Niskanen <ape@ape3000.com> - -pkgname=celt-0.7 -_realname=celt -pkgver=0.7.1 -pkgrel=2 -pkgdesc="Low-latency audio communication codec" -arch=('i686' 'x86_64') -url="http://www.celt-codec.org" -license=('BSD') -depends=('libogg') -provides=('celt=$pkgver') -conflicts=('celt') -options=('!libtool') -source=(http://downloads.xiph.org/releases/celt/$_realname-$pkgver.tar.gz) -md5sums=('c7f6b8346e132b1a48dae0eff77ea9f0') - -build() { - cd "$srcdir/$_realname-$pkgver" - - ./configure --prefix=/usr - make - make DESTDIR="$pkgdir/" install -} - -package() { - cd "$srcdir/$_realname-$pkgver" - - install -Dm644 COPYING \ - "$pkgdir/usr/share/licenses/$pkgname/BSD" -} - -# vim:set ts=2 sw=2 et: diff --git a/abs/extra/chromium/PKGBUILD b/abs/extra/chromium/PKGBUILD new file mode 100644 index 0000000..821ba39 --- /dev/null +++ b/abs/extra/chromium/PKGBUILD @@ -0,0 +1,139 @@ +# $Id: PKGBUILD 170409 2012-11-07 11:29:05Z foutrelis $ +# Maintainer: Evangelos Foutras <evangelos@foutrelis.com> +# Contributor: Pierre Schmitz <pierre@archlinux.de> +# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> + +pkgname=chromium +pkgver=23.0.1271.64 +pkgrel=1 +pkgdesc="The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser" +arch=('i686' 'x86_64') +url="http://www.chromium.org/" +license=('BSD') +depends=('gtk2' 'dbus-glib' 'nss' 'alsa-lib' 'xdg-utils' 'bzip2' 'libevent' + 'libxss' 'libgcrypt' 'ttf-dejavu' 'desktop-file-utils' + 'hicolor-icon-theme') +makedepends=('python2' 'perl' 'gperf' 'yasm' 'mesa' 'libgnome-keyring' + 'elfutils' 'subversion' 'nacl-toolchain-newlib') +optdepends=('kdebase-kdialog: needed for file dialogs in KDE') +backup=('etc/chromium/default') +install=chromium.install +source=(http://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.bz2 + chromium.desktop + chromium.default + chromium.sh + chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch + chromium-ppapi-r0.patch) +sha256sums=('e894bb22d4747c69fc34b181be3a25e20fd9599ed93f08779df600fe3402ffe7' + '09bfac44104f4ccda4c228053f689c947b3e97da9a4ab6fa34ce061ee83d0322' + '478340d5760a9bd6c549e19b1b5d1c5b4933ebf5f8cfb2b3e2d70d07443fe232' + '4999fded897af692f4974f0a3e3bbb215193519918a1fa9b31ed51e74a2dccb9' + 'c1baf14121502efbc2a31b64029dcafa0e28ca5b71ad0e28a3c6342d18198615' + '1f4b57670d317959bc2dc60e5d2a44aa8fc6028f7ed540cdb502fa0aa99c81bd') + +build() { + cd "$srcdir/chromium-$pkgver" + + # Fix build with glibc 2.16 + patch -Np1 -i "$srcdir/chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch" + + # Fix build without NaCl glibc toolchain (patch from Gentoo) + patch -Np0 -i "$srcdir/chromium-ppapi-r0.patch" + + # http://code.google.com/p/chromium/issues/detail?id=109527 + sed -i 's|glib/gutils.h|glib.h|' ui/base/l10n/l10n_util.cc + + # Missing gyp files in tarball (http://crbug.com/144823) + sed -i '/nacl_test_data\.gyp/d' chrome/chrome_tests.gypi + + # Use Python 2 + find . -type f -exec sed -i -r \ + -e 's|/usr/bin/python$|&2|g' \ + -e 's|(/usr/bin/python2)\.4$|\1|g' \ + {} + + # There are still a lot of relative calls which need a workaround + mkdir "$srcdir/python2-path" + ln -s /usr/bin/python2 "$srcdir/python2-path/python" + export PATH="$srcdir/python2-path:$PATH" + + # Prepare NaCL toolchain + mkdir -p sdk native_client/toolchain/.tars + cp -a /usr/lib/nacl-toolchain-newlib sdk/nacl-sdk + tar czf native_client/toolchain/.tars/naclsdk_linux_x86.tgz sdk + rm -r sdk + + # CFLAGS are passed through release_extra_cflags below + export -n CFLAGS CXXFLAGS + + # Silence "identifier 'nullptr' is a keyword in C++11" warnings + CFLAGS+=' -Wno-c++0x-compat' + + build/gyp_chromium --depth=. \ + -Dwerror= \ + -Dlinux_sandbox_path=/usr/lib/chromium/chromium-sandbox \ + -Dlinux_strip_binary=1 \ + -Dlinux_use_gold_binary=0 \ + -Dlinux_use_gold_flags=0 \ + -Drelease_extra_cflags="$CFLAGS" \ + -Dffmpeg_branding=Chrome \ + -Dproprietary_codecs=1 \ + -Duse_system_bzip2=1 \ + -Duse_system_ffmpeg=0 \ + -Duse_system_libevent=1 \ + -Duse_system_libjpeg=1 \ + -Duse_system_libpng=1 \ + -Duse_system_libxml=0 \ + -Duse_system_ssl=0 \ + -Duse_system_yasm=1 \ + -Duse_system_zlib=0 \ + -Duse_gconf=0 \ + -Ddisable_glibc=1 \ + -Ddisable_pnacl=1 \ + -Ddisable_sse2=1 + + make chrome chrome_sandbox BUILDTYPE=Release +} + +package() { + cd "$srcdir/chromium-$pkgver" + + install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium" + + install -Dm4755 -o root -g root out/Release/chrome_sandbox \ + "$pkgdir/usr/lib/chromium/chromium-sandbox" + + cp out/Release/{*.pak,libffmpegsumo.so,nacl_helper{,_bootstrap}} \ + out/Release/{libppGoogleNaClPluginChrome.so,nacl_irt_*.nexe} \ + "$pkgdir/usr/lib/chromium/" + + if [[ $CARCH == i686 ]]; then + rm "$pkgdir/usr/lib/chromium/nacl_irt_x86_64.nexe" + fi + + # Allow users to override command-line options + install -Dm644 "$srcdir/chromium.default" "$pkgdir/etc/chromium/default" + + cp -a out/Release/locales "$pkgdir/usr/lib/chromium/" + + install -Dm644 out/Release/chrome.1 "$pkgdir/usr/share/man/man1/chromium.1" + + install -Dm644 "$srcdir/chromium.desktop" \ + "$pkgdir/usr/share/applications/chromium.desktop" + + for size in 22 24 48 64 128 256; do + install -Dm644 "chrome/app/theme/chromium/product_logo_$size.png" \ + "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png" + done + + for size in 16 32; do + install -Dm644 "chrome/app/theme/default_100_percent/chromium/product_logo_$size.png" \ + "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png" + done + + install -D "$srcdir/chromium.sh" "$pkgdir/usr/bin/chromium" + + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/chromium/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/chromium/chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch b/abs/extra/chromium/chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch new file mode 100644 index 0000000..1d11a39 --- /dev/null +++ b/abs/extra/chromium/chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch @@ -0,0 +1,35 @@ +diff -upr chromium-20.0.1132.57.orig/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h chromium-20.0.1132.57/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h +--- chromium-20.0.1132.57.orig/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2012-07-10 10:48:31.000000000 +0300 ++++ chromium-20.0.1132.57/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2012-07-11 23:44:11.000000000 +0300 +@@ -243,14 +243,13 @@ struct kernel_rusage { + long ru_nivcsw; + }; + +-struct siginfo; + #if defined(__i386__) || defined(__arm__) || defined(__PPC__) + + /* include/asm-{arm,i386,mips,ppc}/signal.h */ + struct kernel_old_sigaction { + union { + void (*sa_handler_)(int); +- void (*sa_sigaction_)(int, struct siginfo *, void *); ++ void (*sa_sigaction_)(int, siginfo_t *, void *); + }; + unsigned long sa_mask; + unsigned long sa_flags; +@@ -287,13 +286,13 @@ struct kernel_sigaction { + unsigned long sa_flags; + union { + void (*sa_handler_)(int); +- void (*sa_sigaction_)(int, struct siginfo *, void *); ++ void (*sa_sigaction_)(int, siginfo_t *, void *); + }; + struct kernel_sigset_t sa_mask; + #else + union { + void (*sa_handler_)(int); +- void (*sa_sigaction_)(int, struct siginfo *, void *); ++ void (*sa_sigaction_)(int, siginfo_t *, void *); + }; + unsigned long sa_flags; + void (*sa_restorer)(void); diff --git a/abs/extra/chromium/chromium-ppapi-r0.patch b/abs/extra/chromium/chromium-ppapi-r0.patch new file mode 100644 index 0000000..fb7e160 --- /dev/null +++ b/abs/extra/chromium/chromium-ppapi-r0.patch @@ -0,0 +1,11 @@ +--- ppapi/ppapi_untrusted.gyp.orig 2012-06-12 10:20:16.000000000 +0200 ++++ ppapi/ppapi_untrusted.gyp 2012-06-12 10:20:52.000000000 +0200 +@@ -80,7 +80,7 @@ + ], + }, + 'conditions': [ +- ['target_arch!="arm"', { ++ ['target_arch!="arm" and disable_glibc==0', { + 'variables': { + 'build_glibc': 1, + # NOTE: Use /lib, not /lib64 here; it is a symbolic link which diff --git a/abs/extra/chromium/chromium.default b/abs/extra/chromium/chromium.default new file mode 100644 index 0000000..2632024 --- /dev/null +++ b/abs/extra/chromium/chromium.default @@ -0,0 +1,4 @@ +# Default settings for chromium. This file is sourced by /usr/bin/chromium + +# Options to pass to chromium +CHROMIUM_FLAGS="" diff --git a/abs/extra/community/chromium/chromium.desktop b/abs/extra/chromium/chromium.desktop index 18446d4..18446d4 100644 --- a/abs/extra/community/chromium/chromium.desktop +++ b/abs/extra/chromium/chromium.desktop diff --git a/abs/extra/community/chromium/chromium.install b/abs/extra/chromium/chromium.install index d43ea7c..d43ea7c 100644 --- a/abs/extra/community/chromium/chromium.install +++ b/abs/extra/chromium/chromium.install diff --git a/abs/extra/chromium/chromium.sh b/abs/extra/chromium/chromium.sh new file mode 100755 index 0000000..ba8a7e6 --- /dev/null +++ b/abs/extra/chromium/chromium.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +# Allow users to override command-line options +# Based on Gentoo's chromium package (and by extension, Debian's) +if [[ -f /etc/chromium/default ]]; then + . /etc/chromium/default +fi + +# Prefer user defined CHROMIUM_USER_FLAGS (from env) over system +# default CHROMIUM_FLAGS (from /etc/chromium/default) +CHROMIUM_FLAGS=${CHROMIUM_USER_FLAGS:-$CHROMIUM_FLAGS} + +export CHROME_WRAPPER=$(readlink -f "$0") +export CHROME_DESKTOP=chromium.desktop + +exec /usr/lib/chromium/chromium $CHROMIUM_FLAGS "$@" diff --git a/abs/extra/cifs-utils/PKGBUILD b/abs/extra/cifs-utils/PKGBUILD new file mode 100644 index 0000000..f220fa4 --- /dev/null +++ b/abs/extra/cifs-utils/PKGBUILD @@ -0,0 +1,25 @@ +# $Id: PKGBUILD 161430 2012-06-11 13:06:12Z tpowa $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +pkgname=cifs-utils +pkgver=5.5 +pkgrel=1 +pkgdesc="CIFS filesystem user-space tools" +arch=(i686 x86_64) +url="http://wiki.samba.org/index.php/LinuxCIFS_utils" +license=('GPL') +depends=('libcap-ng' 'keyutils' 'krb5' 'talloc' 'libwbclient') +source=(ftp://ftp.samba.org/pub/linux-cifs/cifs-utils/$pkgname-$pkgver.tar.bz2) + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" ROOTSBINDIR=/usr/bin install + # set mount.cifs uid, to enable none root mounting form fstab + chmod +s $pkgdir/usr/bin/mount.cifs +} +md5sums=('4de6c660ccdb9506d0e2cff4f37b8707') diff --git a/abs/extra/colord/PKGBUILD b/abs/extra/colord/PKGBUILD new file mode 100644 index 0000000..68479bb --- /dev/null +++ b/abs/extra/colord/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 161614 2012-06-12 13:49:01Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Ionut Biru <ibiru@archlinux.org> + +pkgname=colord +pkgver=0.1.21 +pkgrel=2 +pkgdesc="Color daemon" +arch=('i686' 'x86_64') +url="http://www.freedesktop.org/software/colord" +license=('GPL2') +depends=('lcms2' 'libgusb' 'polkit' 'shared-color-profiles' 'sqlite' 'udev') +makedepends=('intltool' 'gobject-introspection' 'vala' 'docbook2x') +source=($url/releases/$pkgname-$pkgver.tar.xz) +options=('!libtool') +sha1sums=('dbf981beec70e81c45cf46b150f426fc1eb56c24') + +build() { + cd "$pkgname-$pkgver" + + # put udev files in /usr/lib + sed -i "/slashlibdir=/s#/lib#/usr/lib#" configure + + ./configure --prefix=/usr \ + --sysconfdir=/etc --libexecdir=/usr/lib/colord \ + --localstatedir=/var --disable-static \ + --with-systemdsystemunitdir=/usr/lib/systemd/system + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install \ + bashcompletiondir=/usr/share/bash-completion/completions +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/community/afpfs-ng/PKGBUILD b/abs/extra/community/afpfs-ng/PKGBUILD deleted file mode 100644 index 4538db9..0000000 --- a/abs/extra/community/afpfs-ng/PKGBUILD +++ /dev/null @@ -1,66 +0,0 @@ -# $Id$ -# Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com> -# Contributor: slubman <slubman.dndd@laposte.net> - -pkgname=afpfs-ng -pkgver=0.8.1 -pkgrel=5 -pkgdesc="A client for the Apple Filing Protocol (AFP)" -url="http://alexthepuffin.googlepages.com/" -license=('GPL') -depends=('gmp' 'fuse' 'libgcrypt') -arch=('i686' 'x86_64') -options=(!libtool) -source=( - "http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2" - 'fix_afpfs-ng_includes.patch' - '01-gcrypt.patch' - '02-pointer.patch' - '10-fix-errno.patch' - '20-build-error-fixes.patch' - '21-header-path-fix.patch' - '30-include-fixes.patch' -) -sha256sums=( - '688560de1cde57ab8d9e0ef7dc6436dbf0267fe8884f9014e50ff92b297b01a8' - '627d94ab3c1cbc002b18839f514c6fa980b0a25dfc21e8761b389fcd39f32755' - '18dc77b064fc02c229e0cfa071a7e31cde6d0243671ebde2f561ebdf09dc38bb' - '8537b086c496e776be2a6757325717cb15dee6dcf2aedccebed6b4b2332d3dc1' - '0e1c0c0e3a9ff6e55ccbbbc1b4de630c874ff058e2ea94360b7d90e650d04811' - '393662da1bcd5d3aba180a2add37d9006e0a487c3bb7bf157a15aa492f4d6a87' - 'f551ae9debe8ce2c4ed1d7a8bce497801ace995473876a5fefa0443353232477' - '71b8f52923cef39f0cccb8fdff610575958fd5dbed66e5aa4413ae6aceeec656' -) - -build() { - cd "$pkgname-$pkgver" - # apply patches - msg2 'fix_afpfs-ng_includes.patch' - patch -Np1 -i "$srcdir/fix_afpfs-ng_includes.patch" - msg2 '01-gcrypt.patch' - patch -Np1 -i "$srcdir/01-gcrypt.patch" - msg2 '02-pointer.patch' - patch -Np1 -i "$srcdir/02-pointer.patch" - msg2 '10-fix-errno.patch' - patch -Np1 -i "$srcdir/10-fix-errno.patch" - msg2 '20-build-error-fixes.patch' - patch -Np1 -i "$srcdir/20-build-error-fixes.patch" - msg2 '21-header-path-fix.patch' - patch -Np1 -i "$srcdir/21-header-path-fix.patch" - msg2 '30-include-fixes.patch' - patch -Np1 -i "$srcdir/30-include-fixes.patch" - - ./configure --prefix=/usr - make -} - -package() { - cd "$pkgname-$pkgver" - make DESTDIR="$pkgdir" install - - # install headers - cd include - for header in afpfs-ng/*.h; do - install -Dm644 "$header" "$pkgdir/usr/include/$header" - done -} diff --git a/abs/extra/community/agg/PKGBUILD b/abs/extra/community/agg/PKGBUILD deleted file mode 100644 index b0d6d40..0000000 --- a/abs/extra/community/agg/PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# $Id: PKGBUILD 49798 2009-08-16 14:04:06Z jgc $ -# Maintainer: - -pkgname=agg -pkgver=2.5 -pkgrel=3 -pkgdesc="A High Quality Rendering Engine for C++" -arch=('i686' 'x86_64') -url="http://www.antigrain.com/" -license=('GPL') -depends=('gcc-libs>=4.4.1' 'sdl>=1.2.13' 'freetype2>=2.3.9') -makedepends=('automake') -provides=('antigrain') -replaces=('antigrain') -options=('!libtool' '!makeflags') -source=(http://www.antigrain.com/${pkgname}-${pkgver}.tar.gz - agg-2.4-depends.patch - agg-2.5-pkgconfig.patch) -md5sums=('0229a488bc47be10a2fee6cf0b2febd6' - '22f8e48c137d25038181c86d5e40b110' - '43a19a7b1564c591e56c8d09a0fd8da5') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/agg-2.4-depends.patch" || return 1 - patch -Np1 -i "${srcdir}/agg-2.5-pkgconfig.patch" || return 1 - sh ./autogen.sh || return 1 - ./configure --prefix=/usr --disable-static || return 1 - make || return 1 -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/abs/extra/community/agg/agg-2.4-depends.patch b/abs/extra/community/agg/agg-2.4-depends.patch deleted file mode 100644 index 9d4f6e3..0000000 --- a/abs/extra/community/agg/agg-2.4-depends.patch +++ /dev/null @@ -1,48 +0,0 @@ ---- agg-2.4.orig/font_freetype/Makefile.am 2005-10-18 11:45:40.000000000 +0100 -+++ agg-2.4/font_freetype/Makefile.am 2006-07-10 15:11:55.000000000 +0100 -@@ -4,8 +4,9 @@ - agginclude_HEADERS = agg_font_freetype.h - lib_LTLIBRARIES = libaggfontfreetype.la - --libaggfontfreetype_la_LDFLAGS = -version-info @AGG_LIB_VERSION@ @FREETYPE_LIBS@ -+libaggfontfreetype_la_LDFLAGS = -version-info @AGG_LIB_VERSION@ - libaggfontfreetype_la_SOURCES = agg_font_freetype.cpp - libaggfontfreetype_la_CXXFLAGS = -I$(top_srcdir)/include @FREETYPE_CFLAGS@ -+libaggfontfreetype_la_LIBADD = ../src/libagg.la @FREETYPE_LIBS@ - endif - ---- agg-2.4.orig/src/platform/sdl/Makefile.am 2005-10-17 23:49:35.000000000 +0100 -+++ agg-2.4/src/platform/sdl/Makefile.am 2006-07-10 15:11:55.000000000 +0100 -@@ -5,6 +5,6 @@ - libaggplatformsdl_la_LDFLAGS = -version-info @AGG_LIB_VERSION@ - libaggplatformsdl_la_SOURCES = agg_platform_support.cpp - libaggplatformsdl_la_CXXFLAGS = -I$(top_srcdir)/include @SDL_CFLAGS@ --libaggplatformsdl_la_LIBADD = @SDL_LIBS@ -+libaggplatformsdl_la_LIBADD = ../../libagg.la @SDL_LIBS@ - endif - ---- agg-2.5.orig/configure.in 2006-10-09 05:06:36.000000000 +0100 -+++ agg-2.5/configure.in 2007-01-07 14:07:39.000000000 +0000 -@@ -122,7 +122,8 @@ - fi - AM_CONDITIONAL(ENABLE_X11,[test x$no_x = x -a xno != x$enable_platform -a x$win32_host != xyes]) - AC_SUBST(x_includes) --AC_SUBST(x_libraries) -+test -n "$x_libraries" && X_LDFLAGS="-L$x_libraries" -+AC_SUBST(X_LDFLAGS) - dnl ############################################### - - dnl Settung up library version ---- agg-2.5.orig/src/platform/X11/Makefile.am 2006-12-11 00:59:45.000000000 +0000 -+++ agg-2.5/src/platform/X11/Makefile.am 2007-01-07 14:07:39.000000000 +0000 -@@ -1,8 +1,8 @@ - if ENABLE_X11 - lib_LTLIBRARIES = libaggplatformX11.la - --libaggplatformX11_la_LDFLAGS = -version-info @AGG_LIB_VERSION@ -L@x_libraries@ -+libaggplatformX11_la_LDFLAGS = -version-info @AGG_LIB_VERSION@ @X_LDFLAGS@ - libaggplatformX11_la_SOURCES = agg_platform_support.cpp - libaggplatformX11_la_CXXFLAGS = -I$(top_srcdir)/include -I@x_includes@ --libaggplatformX11_la_LIBADD = -lX11 -+libaggplatformX11_la_LIBADD = ../../libagg.la -lX11 - endif diff --git a/abs/extra/community/agg/agg-2.5-pkgconfig.patch b/abs/extra/community/agg/agg-2.5-pkgconfig.patch deleted file mode 100644 index a303bfb..0000000 --- a/abs/extra/community/agg/agg-2.5-pkgconfig.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- agg-2.5/libagg.pc.in.orig 2007-01-07 13:58:28.000000000 +0000 -+++ agg-2.5/libagg.pc.in 2007-01-07 14:02:40.000000000 +0000 -@@ -6,5 +6,6 @@ - Name: libagg - Description: Anti Grain Geometry - A High Quality Rendering Engine for C++ - Version: @VERSION@ --Libs: -L${libdir} -Wl,-rpath,${exec_prefix}/lib -lagg -+Requires.private: freetype2 -+Libs: -L${libdir} -lagg - Cflags: -I${includedir} diff --git a/abs/extra/community/amule/PKGBUILD b/abs/extra/community/amule/PKGBUILD deleted file mode 100644 index 47cc580..0000000 --- a/abs/extra/community/amule/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# $Id: PKGBUILD 98336 2010-11-07 18:59:29Z giovanni $ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Henrik Ronellenfitsch <searinox@web.de> -# Contributor: Alessio Sergi <sergi.alessio {at} gmail.com> -# Contributor: Dario 'Dax' Vilardi <dax [at] deelab [dot] org> - -pkgname=amule -pkgver=10365 -pkgrel=1 -pkgdesc="An eMule-like client for ed2k p2p network" -arch=('i686' 'x86_64') -url="http://www.amule.org" -license=('GPL') -depends=('wxgtk' 'gd' 'geoip' 'libupnp') -makedepends=('crypto++') -source=(http://amule.sourceforge.net/tarballs/aMule-SVN-r${pkgver}.tar.bz2) -md5sums=('fa19689a81616d066f8f7bdcddd771ac') - -build() { - cd "${srcdir}/aMule-SVN-r${pkgver}" - - ./configure --prefix=/usr \ - --mandir=/usr/share/man \ - --enable-cas \ - --enable-wxcas \ - --enable-amule-daemon \ - --enable-amulecmd \ - --enable-amule-gui \ - --enable-alc \ - --enable-alcc \ - --enable-webserver \ - --disable-debug \ - --enable-optimize \ - --enable-ccache \ - --enable-geoip \ - --enable-upnp - - make || return 1 -} - -package() { - cd "${srcdir}/aMule-SVN-r${pkgver}" - make DESTDIR=${pkgdir}/ install || return 1 -} diff --git a/abs/extra/community/athcool/PKGBUILD b/abs/extra/community/athcool/PKGBUILD index fb24df1..58d7c21 100644 --- a/abs/extra/community/athcool/PKGBUILD +++ b/abs/extra/community/athcool/PKGBUILD @@ -6,7 +6,7 @@ url="http://members.jcom.home.ne.jp/jacobi/linux/softwares.html" depends=('pciutils') license=('GPL') install=athcool.install -arch=('i686') +arch=('i686' 'x86_64') source=(http://members.jcom.home.ne.jp/jacobi/linux/files/$pkgname-$pkgver.tar.gz athcool run finish) @@ -17,7 +17,7 @@ build() { package() { cd ${srcdir}/${pkgname}-${pkgver} make DESTDIR=${pkgdir} install - /bin/install -D -m0755 ../athcool ${pkgdir}/etc/rc.d/athcool + install -D -m0755 ../athcool ${pkgdir}/etc/rc.d/athcool mkdir -p ${pkgdir}/etc/sv/athcool/supervise install -D -m0755 ../run ${pkgdir}/etc/sv/athcool install -D -m0755 ../finish ${pkgdir}/etc/sv/athcool diff --git a/abs/extra/community/blockcontrol/PKGBUILD b/abs/extra/community/blockcontrol/PKGBUILD deleted file mode 100644 index 2507adc..0000000 --- a/abs/extra/community/blockcontrol/PKGBUILD +++ /dev/null @@ -1,37 +0,0 @@ -# Contributor: Daniele Marinello <marinz at email dot it> - -pkgname=blockcontrol -pkgver=1.6.9 -pkgrel=3 -pkgdesc="blockcontrol is designed to do all tasks related to IP block daemons (MoBlock or NFBlock). They check internet traffic based on large lists of IP address ranges in order to protect your privacy." -arch=('i686' 'x86_64') -url="http://moblock-deb.sourceforge.net/" -license=('GPL2' 'BSD') -depends=('moblock' 'wget') -conflicts=('moblockcontrol') -source=(http://downloads.sourceforge.net/moblock-deb/$pkgname-$pkgver.tar.gz \ - blockcontrol.lib.patch) -backup=('etc/blockcontrol/blockcontrol.conf' 'etc/blockcontrol/blocklists.list') - -build() { - cd "$startdir/src/$pkgname-$pkgver" - patch -Np1 -i ../blockcontrol.lib.patch || return 1 - - install -D -m 755 $startdir/src/$pkgname-$pkgver/blockcontrol ${pkgdir}/usr/bin/blockcontrol - install -D -m 755 $startdir/src/$pkgname-$pkgver/blockcontrol.main ${pkgdir}/usr/lib/blockcontrol/blockcontrol.main - install -D -m 644 $startdir/src/$pkgname-$pkgver/blockcontrol.defaults ${pkgdir}/usr/lib/blockcontrol/blockcontrol.defaults - install -D -m 644 $startdir/src/$pkgname-$pkgver/blockcontrol.lib ${pkgdir}/usr/lib/blockcontrol/blockcontrol.lib - install -D -m 755 $startdir/src/$pkgname-$pkgver/blockcontrol.wd ${pkgdir}/usr/bin/blockcontrol.wd - install -D -m 644 $startdir/src/$pkgname-$pkgver/allow.p2p ${pkgdir}/etc/blockcontrol/allow.p2p - install -D -m 644 $startdir/src/$pkgname-$pkgver/blockcontrol.conf ${pkgdir}/etc/blockcontrol/blockcontrol.conf - install -D -m 644 $startdir/src/$pkgname-$pkgver/blocklists.list ${pkgdir}/etc/blockcontrol/blocklists.list -# install -D -m 755 $startdir/src/$pkgname-$pkgver/if-up ${pkgdir}/etc/network/if-up.d/blockcontrol - install -D -m 755 $startdir/src/$pkgname-$pkgver/cron.daily ${pkgdir}/etc/cron.daily/blockcontrol - install -D -m 755 $startdir/src/$pkgname-$pkgver/init ${pkgdir}/etc/rc.d/blockcontrol - install -D -m 644 $startdir/src/$pkgname-$pkgver/logrotate ${pkgdir}/etc/logrotate.d/blockcontrol - install -d ${pkgdir}/var/lib/blockcontrol - install -d ${pkgdir}/var/spool/blockcontrol -} - -md5sums=('d02002745aacf6100ff9057bdc80adf3' - 'efcca84e52ea98cc10610830f9c2ba37') diff --git a/abs/extra/community/blockcontrol/blockcontrol.lib.patch b/abs/extra/community/blockcontrol/blockcontrol.lib.patch deleted file mode 100644 index 4be1c75..0000000 --- a/abs/extra/community/blockcontrol/blockcontrol.lib.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- blockcontrol/blockcontrol_old.lib 2009-09-14 19:35:24.000000000 +0200 -+++ blockcontrol/blockcontrol.lib 2009-11-05 20:29:50.000000000 +0100 -@@ -1344,10 +1344,10 @@ - DAEMON_OPTS="$CUSTOM_DAEMON_OPTS" - elif [ "$NAME" = moblock ] ; then - # The options MoBlock is started with -- DAEMON_OPTS="-$BLOCKLIST_FORMAT $BLOCKLIST $NFQUEUE_NUMBER_OPT $LOG_SYSLOG_OPT $LOG_TIMESTAMP_OPT $REJECT_OPT $ACCEPT_OPT $DAEMON_LOG" -+ DAEMON_OPTS="-$BLOCKLIST_FORMAT $BLOCKLIST $NFQUEUE_NUMBER_OPT $LOG_SYSLOG_OPT $DAEMON_LOG" - elif [ "$NAME" = nfblockd ] ; then - # The options NFBlock is started with -- DAEMON_OPTS="-d -f $BLOCKLIST -p $PIDFILE $NFQUEUE_NUMBER_OPT $REJECT_OPT $ACCEPT_OPT $LOG_SYSLOG_OPT" -+ DAEMON_OPTS="-d -f $BLOCKLIST -p $PIDFILE $NFQUEUE_NUMBER_OPT $LOG_SYSLOG_OPT" - fi - - # Test NICE_LEVEL setting. diff --git a/abs/extra/community/chromium/PKGBUILD b/abs/extra/community/chromium/PKGBUILD deleted file mode 100644 index df239af..0000000 --- a/abs/extra/community/chromium/PKGBUILD +++ /dev/null @@ -1,145 +0,0 @@ -# $Id: PKGBUILD 150259 2012-02-16 02:37:46Z foutrelis $ -# Maintainer: Evangelos Foutras <evangelos@foutrelis.com> -# Contributor: Pierre Schmitz <pierre@archlinux.de> -# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> -# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> - -# Building for x86_64 requires lib32-glibc & lib32-zlib from [multilib]. These -# libraries are linked from the NaCl toolchain, and are only needed during -# build time. - -pkgname=chromium -pkgver=17.0.963.56 -pkgrel=2 -pkgdesc="The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser" -arch=('i686' 'x86_64') -url="http://www.chromium.org/" -license=('BSD') -depends=('gtk2' 'dbus-glib' 'nss' 'alsa-lib' 'xdg-utils' 'bzip2' 'libevent' - 'libxss' 'libgcrypt' 'ttf-dejavu' 'desktop-file-utils' - 'hicolor-icon-theme') -makedepends=('python2' 'perl' 'gperf' 'yasm' 'mesa' 'libgnome-keyring' - 'elfutils') -optdepends=('kdebase-kdialog: needed for file dialogs in KDE' - 'mozplugger-chromium: A Mozilla multimedia plugin for Chromium') -# Needed for the NaCl toolchain -[[ $CARCH == x86_64 ]] && makedepends+=('lib32-zlib') -provides=('chromium-browser') -conflicts=('chromium-browser') -replaces=('firefox' 'firefox-i18n' 'mozplugger') -install=chromium.install -source=(http://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.bz2 - http://commondatastorage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/nacl_sdk.zip - chromium.desktop - chromium.sh - gcc-4.6.patch - nacl-cflags-remove-fstack-protector.patch - chromium-media-no-sse-r0.patch) -sha256sums=('270be138d499c6c2092644af69acab8310cb05c3d06c3afe7891e488c29b020f' - '964fe3a5ec56f2505649aba00f900abe4205674b7fdaa16772647d347173bb01' - '09bfac44104f4ccda4c228053f689c947b3e97da9a4ab6fa34ce061ee83d0322' - 'c53bfc4db9dde684fbaed6a4bbecb207e3e7a0a2703233426fe076a6d3c557f3' - '9c5e0803904d1a0e71ab7444c92a7046a34a9518eeba7a70f2eec7abecb8bf4e' - '59e732880314333d6e9acf6ac99de467c98e8a92aa5c5292ae808a805e0f8d76' - '71751bf5913da1eec3c88c433044224c869b0abd5a29172cf239bddbb4eff761') - -build() { - cd "$srcdir/chromium-$pkgver" - - # Fix build with gcc 4.6 - # http://code.google.com/p/chromium/issues/detail?id=80071 - patch -Np0 -i "$srcdir/gcc-4.6.patch" - - # Filter -fstack-protector out of cflags for nacl_helper_bootstrap - # http://code.google.com/p/chromium/issues/detail?id=104569 - patch -d native_client -Np1 -i \ - "$srcdir/nacl-cflags-remove-fstack-protector.patch" - - # Remove unconditional use of SSE3 (patch from Gentoo) - patch -Np0 -i "$srcdir/chromium-media-no-sse-r0.patch" - - # Use Python 2 - find . -type f -exec sed -i -r \ - -e 's|/usr/bin/python$|&2|g' \ - -e 's|(/usr/bin/python2)\.4$|\1|g' \ - {} + - # There are still a lot of relative calls which need a workaround - mkdir "$srcdir/python2-path" - ln -s /usr/bin/python2 "$srcdir/python2-path/python" - export PATH="$srcdir/python2-path:$PATH" - - pushd "$srcdir/nacl_sdk" - ./naclsdk update pepper_16 - popd - - ln -s "$srcdir/nacl_sdk/pepper_16/toolchain/linux_x86_newlib" \ - native_client/toolchain/linux_x86_newlib - - # We need to disable system_ssl until "next protocol negotiation" support is - # available in our nss package. - # (See https://bugzilla.mozilla.org/show_bug.cgi?id=547312) - - # CFLAGS are passed through release_extra_cflags below - export -n CFLAGS CXXFLAGS - - build/gyp_chromium -f make build/all.gyp --depth=. \ - -Dno_strict_aliasing=1 \ - -Dwerror= \ - -Dlinux_sandbox_path=/usr/lib/chromium/chromium-sandbox \ - -Dlinux_strip_binary=1 \ - -Drelease_extra_cflags="$CFLAGS" \ - -Dffmpeg_branding=Chrome \ - -Dproprietary_codecs=1 \ - -Duse_system_bzip2=1 \ - -Duse_system_ffmpeg=0 \ - -Duse_system_libevent=1 \ - -Duse_system_libjpeg=0 \ - -Duse_system_libpng=1 \ - -Duse_system_libxml=0 \ - -Duse_system_ssl=0 \ - -Duse_system_yasm=1 \ - -Duse_system_zlib=1 \ - -Duse_gconf=0 \ - $([[ $CARCH == i686 ]] && echo '-Ddisable_sse2=1') - - make chrome chrome_sandbox BUILDTYPE=Release -} - -package() { - cd "$srcdir/chromium-$pkgver" - - install -D out/Release/chrome ${pkgdir}/usr/lib/chromium/chromium - - install -Dm4755 -o root -g root out/Release/chrome_sandbox \ - "$pkgdir/usr/lib/chromium/chromium-sandbox" - - cp out/Release/{{chrome,resources}.pak,libffmpegsumo.so} \ - out/Release/nacl_helper{,_bootstrap} \ - out/Release/{libppGoogleNaClPluginChrome.so,nacl_irt_x86_*.nexe} \ - "$pkgdir/usr/lib/chromium/" - - # These links are only needed when building with system ffmpeg - #ln -s /usr/lib/libavcodec.so.52 ${pkgdir}/usr/lib/chromium/ - #ln -s /usr/lib/libavformat.so.52 ${pkgdir}/usr/lib/chromium/ - #ln -s /usr/lib/libavutil.so.50 ${pkgdir}/usr/lib/chromium/ - - cp -a out/Release/locales out/Release/resources "$pkgdir/usr/lib/chromium/" - - find "$pkgdir/usr/lib/chromium/" -name '*.d' -type f -delete - - install -Dm644 out/Release/chrome.1 "$pkgdir/usr/share/man/man1/chromium.1" - - install -Dm644 "$srcdir/chromium.desktop" \ - "$pkgdir/usr/share/applications/chromium.desktop" - - for size in 16 22 24 32 48 64 128 256; do - install -Dm644 "chrome/app/theme/chromium/product_logo_$size.png" \ - "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png" - done - - install -D "$srcdir/chromium.sh" "$pkgdir/usr/bin/chromium" - - install -Dm644 LICENSE "$pkgdir/usr/share/licenses/chromium/LICENSE" -} - -# vim:set ts=2 sw=2 et: diff --git a/abs/extra/community/chromium/__changelog b/abs/extra/community/chromium/__changelog deleted file mode 100644 index 0b5b4c8..0000000 --- a/abs/extra/community/chromium/__changelog +++ /dev/null @@ -1,2 +0,0 @@ -* Add replaces=('firefox' 'firefox-i18n' 'mozplugger') array -* Add optdepends=('mozplugger-chromium: A Mozilla multimedia plugin for Chromium') diff --git a/abs/extra/community/chromium/chromium-media-no-sse-r0.patch b/abs/extra/community/chromium/chromium-media-no-sse-r0.patch deleted file mode 100644 index 07cda2d..0000000 --- a/abs/extra/community/chromium/chromium-media-no-sse-r0.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- media/media.gyp.orig 2012-02-02 10:03:41.000000000 +0100 -+++ media/media.gyp 2012-02-02 10:04:09.000000000 +0100 -@@ -467,14 +467,6 @@ - [ 'os_posix == 1 and OS != "mac" and OS != "android"', { - 'cflags': [ - '-msse2', -- '-msse3', -- '-mssse3', -- ], -- }], -- [ 'OS == "openbsd"', { -- # OpenBSD's gcc (4.2.1) does not support -mssse3 -- 'cflags!': [ -- '-mssse3', - ], - }], - [ 'OS == "mac"', { diff --git a/abs/extra/community/chromium/chromium.sh b/abs/extra/community/chromium/chromium.sh deleted file mode 100755 index e1c3388..0000000 --- a/abs/extra/community/chromium/chromium.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -export CHROME_WRAPPER=/usr/lib/chromium/chromium -export CHROME_DESKTOP=chromium.desktop -exec /usr/lib/chromium/chromium "$@" diff --git a/abs/extra/community/chromium/gcc-4.6.patch b/abs/extra/community/chromium/gcc-4.6.patch deleted file mode 100644 index b5e61dc..0000000 --- a/abs/extra/community/chromium/gcc-4.6.patch +++ /dev/null @@ -1,99 +0,0 @@ -diff -u -r chrome/browser/search_engines/template_url_prepopulate_data.h chrome/browser/search_engines/template_url_prepopulate_data.h ---- chrome/browser/search_engines/template_url_prepopulate_data.h 2011-04-13 13:23:41.000000000 +0400 -+++ chrome/browser/search_engines/template_url_prepopulate_data.h 2011-04-20 19:32:58.000000000 +0400 -@@ -7,6 +7,7 @@ - #pragma once - - #include <vector> -+#include <cstddef> - - class GURL; - class PrefService; -diff -u -r gpu/command_buffer/common/types.h gpu/command_buffer/common/types.h ---- gpu/command_buffer/common/types.h 2011-04-13 13:22:57.000000000 +0400 -+++ gpu/command_buffer/common/types.h 2011-04-20 19:32:58.000000000 +0400 -@@ -11,6 +11,7 @@ - #include <stdint.h> - #endif - #include <string> -+#include <cstddef> - - typedef signed char schar; - typedef signed char int8; -diff -u -r ppapi/cpp/paint_aggregator.h ppapi/cpp/paint_aggregator.h ---- ppapi/cpp/paint_aggregator.h 2011-04-13 13:22:58.000000000 +0400 -+++ ppapi/cpp/paint_aggregator.h 2011-04-20 20:11:44.000000000 +0400 -@@ -9,6 +9,7 @@ - - #include "ppapi/cpp/point.h" - #include "ppapi/cpp/rect.h" -+#include <cstddef> - - namespace pp { - -diff -u -r third_party/ots/src/os2.cc third_party/ots/src/os2.cc ---- third_party/ots/src/os2.cc 2011-04-13 13:24:06.000000000 +0400 -+++ third_party/ots/src/os2.cc 2011-04-20 19:45:44.000000000 +0400 -@@ -5,6 +5,7 @@ - #include "os2.h" - - #include "head.h" -+#include <cstddef> - - // OS/2 - OS/2 and Windows Metrics - // http://www.microsoft.com/opentype/otspec/os2.htm -diff -u -r third_party/tcmalloc/chromium/src/base/stl_allocator.h third_party/tcmalloc/chromium/src/base/stl_allocator.h ---- third_party/tcmalloc/chromium/src/base/stl_allocator.h 2011-04-13 13:23:04.000000000 +0400 -+++ third_party/tcmalloc/chromium/src/base/stl_allocator.h 2011-04-20 19:32:58.000000000 +0400 -@@ -38,6 +38,7 @@ - #include <config.h> - - #include <limits> -+#include <cstddef> - - #include "base/basictypes.h" - #include "base/logging.h" -diff -u -r third_party/tcmalloc/chromium/src/base/vdso_support.h third_party/tcmalloc/chromium/src/base/vdso_support.h ---- third_party/tcmalloc/chromium/src/base/vdso_support.h 2011-04-13 13:23:04.000000000 +0400 -+++ third_party/tcmalloc/chromium/src/base/vdso_support.h 2011-04-20 19:32:58.000000000 +0400 -@@ -37,6 +37,7 @@ - - #define HAVE_VDSO_SUPPORT 1 - -+#include <cstddef> - #include <stdlib.h> // for NULL - #include <link.h> // for ElfW - #include "base/basictypes.h" -diff -u -r third_party/tcmalloc/chromium/src/common.cc third_party/tcmalloc/chromium/src/common.cc ---- third_party/tcmalloc/chromium/src/common.cc 2011-04-13 13:23:04.000000000 +0400 -+++ third_party/tcmalloc/chromium/src/common.cc 2011-04-20 19:32:58.000000000 +0400 -@@ -34,6 +34,7 @@ - #include "config.h" - #include "common.h" - #include "system-alloc.h" -+#include <cstddef> - - namespace tcmalloc { - -diff -u -r third_party/tcmalloc/chromium/src/symbolize.h third_party/tcmalloc/chromium/src/symbolize.h ---- third_party/tcmalloc/chromium/src/symbolize.h 2011-04-13 13:23:04.000000000 +0400 -+++ third_party/tcmalloc/chromium/src/symbolize.h 2011-04-20 19:32:58.000000000 +0400 -@@ -38,6 +38,7 @@ - #include <stdint.h> // for uintptr_t - #endif - #include <map> -+#include <cstddef> - - using std::map; - -diff -u -r ui/gfx/codec/jpeg_codec.h ui/gfx/codec/jpeg_codec.h ---- ui/gfx/codec/jpeg_codec.h 2011-04-13 13:23:45.000000000 +0400 -+++ ui/gfx/codec/jpeg_codec.h 2011-04-20 19:32:58.000000000 +0400 -@@ -7,6 +7,7 @@ - #pragma once - - #include <vector> -+#include <cstddef> - - class SkBitmap; - diff --git a/abs/extra/community/chromium/nacl-cflags-remove-fstack-protector.patch b/abs/extra/community/chromium/nacl-cflags-remove-fstack-protector.patch deleted file mode 100644 index 0e4f7cf..0000000 --- a/abs/extra/community/chromium/nacl-cflags-remove-fstack-protector.patch +++ /dev/null @@ -1,17 +0,0 @@ -Index: src/trusted/service_runtime/linux/nacl_bootstrap.gyp -diff --git a/src/trusted/service_runtime/linux/nacl_bootstrap.gyp b/src/trusted/service_runtime/linux/nacl_bootstrap.gyp -index 66d95ca4dc98653219c965b899dbd5ad35d2960c..083e3fdd24ff4562d2037f8d17a06540e05357b8 100644 ---- a/src/trusted/service_runtime/linux/nacl_bootstrap.gyp -+++ b/src/trusted/service_runtime/linux/nacl_bootstrap.gyp -@@ -84,6 +84,11 @@ - '-fasan', - '-faddress-sanitizer', - '-w', -+ # We filter these out because release_extra_cflags or another -+ # such thing might be adding them in, and those options wind up -+ # coming after the -fno-stack-protector we added above. -+ '-fstack-protector', -+ '-fstack-protector-all', - ], - 'conditions': [ - ['clang==1', { diff --git a/abs/extra/community/chrpath/ChangeLog b/abs/extra/community/chrpath/ChangeLog deleted file mode 100644 index dabc6f9..0000000 --- a/abs/extra/community/chrpath/ChangeLog +++ /dev/null @@ -1,10 +0,0 @@ -2009-05-21 Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> - - * 0.13-2 : - Replaced in my '# Contributor:' line by '# Maintainer:' - - -2009-03-19 Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> - - * 0.13-1 : - Initial release. diff --git a/abs/extra/community/chrpath/PKGBUILD b/abs/extra/community/chrpath/PKGBUILD deleted file mode 100644 index 2fefddf..0000000 --- a/abs/extra/community/chrpath/PKGBUILD +++ /dev/null @@ -1,20 +0,0 @@ -# Contributor: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> - -pkgname=chrpath -pkgver=0.13 -pkgrel=2 -pkgdesc="Change or delete the rpath or runpath in ELF files" -arch=('i686' 'x86_64') -url="http://packages.debian.org/chrpath" -license=('GPL2') -depends=('glibc') -source=(http://ftp.debian.org/debian/pool/main/c/${pkgname}/${pkgname}_${pkgver}.orig.tar.gz) -md5sums=('b73072a8fbba277558c50364b65bb407') - -build() { - cd $srcdir/$pkgname-$pkgver - - ./configure --prefix=/usr --mandir=/usr/share/man - make || return 1 - make DESTDIR=$pkgdir docdir=/usr/share/doc/chrpath install -} diff --git a/abs/extra/community/cksfv/PKGBUILD b/abs/extra/community/cksfv/PKGBUILD deleted file mode 100644 index da4ba00..0000000 --- a/abs/extra/community/cksfv/PKGBUILD +++ /dev/null @@ -1,21 +0,0 @@ -# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> -# Contributor: Wijnand Modderman <wijanand+aur@archlinux.nl> - -pkgname=cksfv -pkgver=1.3.14 -pkgrel=1 -pkgdesc="SFV (Simple File Verification) Checker" -arch=('i686' 'x86_64') -url="http://zakalwe.virtuaalipalvelin.net/~shd/foss/cksfv/" -license=('GPL') -depends=('glibc') -source=(http://zakalwe.fi/~shd/foss/cksfv/files/$pkgname-$pkgver.tar.gz) -md5sums=('2e15289753ea0b90b6ea86993f93b383') - -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr --package-prefix=$startdir/pkg - make || return 1 - make install - chmod 644 $startdir/pkg/usr/share/man/man1/$pkgname.1 -} diff --git a/abs/extra/community/codecs/PKGBUILD b/abs/extra/community/codecs/PKGBUILD deleted file mode 100644 index 416ff37..0000000 --- a/abs/extra/community/codecs/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> - -pkgname=codecs -pkgver=20100303 -pkgrel=4 -pkgdesc="Non-linux native codec pack." -arch=('i686') -url="http://www.mplayerhq.hu/design7/dload.html" -license=('unknown') -depends=('libstdc++5') -conflicts=('codecs-extra') -replaces=('codecs-extra') -options=('!strip') -source=(http://www.mplayerhq.hu/MPlayer/releases/codecs/all-$pkgver.tar.bz2) -md5sums=('4a7eb1a706f4ed9950bf6dd7f063ef68') - -build() { - install -d $pkgdir/usr/lib/codecs - ln -s codecs ${pkgdir}/usr/lib/win32 - install -m644 $srcdir/all-$pkgver/* $pkgdir/usr/lib/codecs -} - diff --git a/abs/extra/community/cpulimit/PKGBUILD b/abs/extra/community/cpulimit/PKGBUILD index 28a3b55..cb73d72 100644 --- a/abs/extra/community/cpulimit/PKGBUILD +++ b/abs/extra/community/cpulimit/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD,v 1.6 2009/02/09 18:02:27 abhidg Exp $ -# Maintainer: Sergej Pupykin <sergej@aur.archlinux.org> -# Contributor: Sergej Pupykin <sergej@aur.archlinux.org> +# $Id: PKGBUILD 65094 2012-02-20 03:37:27Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=cpulimit pkgver=1.1 -pkgrel=1 +pkgrel=3 pkgdesc="Limit cpu usage in %. Actualy sends SIGSTOP/SIGCONT" arch=('i686' 'x86_64') url="http://cpulimit.sourceforge.net/" license=("GPL") +depends=(glibc) source=("http://downloads.sourceforge.net/sourceforge/cpulimit/cpulimit-$pkgver.tar.gz") md5sums=('f4ff6d4bfaef1258e8f5cd2041e2e2a3') -build () { - cd $startdir/src/$pkgname-$pkgver +build() { + cd $srcdir/$pkgname-$pkgver make - install -D -m0755 cpulimit $startdir/pkg/usr/bin/cpulimit + install -D -m0755 cpulimit $pkgdir/usr/bin/cpulimit } - diff --git a/abs/extra/community/cwiid-git/PKGBUILD b/abs/extra/community/cwiid-git/PKGBUILD deleted file mode 100644 index 2a88d26..0000000 --- a/abs/extra/community/cwiid-git/PKGBUILD +++ /dev/null @@ -1,67 +0,0 @@ -#Contributor:Andrea Tarocchi <valdar@email.it> -pkgname=cwiid-git -#pkgver=`date +%Y%m%d` -pkgver=20111102 -pkgrel=1 -pkgdesc="Cwiid-git is the bleeding edge version of a wiimote's driver and utility tools" -arch=('i686' 'x86_64') -url="http://github.com/abstrakraft/cwiid" -license=('GPL') - -depends=('bluez>=4' 'gtk2' 'python2') -makedepends=('git' 'make' 'automake' 'autoconf') -replaces=('cwiid' 'cwiid-svn') -provides=('cwiid' 'cwiid-git') -install=('cwiid.install') -source=() - -_gitroot=git://github.com/abstrakraft/cwiid.git -_gitname=cwiid -_builddir=$srcdir/$_gitname-build - -build() { - - export LDFLAGS="" - - cd $srcdir/ - msg "Connecting to github.com GIT server...." - if [ -d $srcdir/$_gitname ] ; then - pushd $_gitname && git pull origin && popd - msg "The local files are updated." - else - git clone $_gitroot - fi - msg "GIT checkout done or server timeout" - msg "Starting make..." - rm -rf $_gitname-build - git clone $_gitname $_gitname-build - - cd $_builddir - - aclocal - autoreconf - ./configure --prefix=/usr --sysconfdir=/etc --with-python=python2 --disable-ldconfig - - make || return 1 -} - -package() { - cd ${_builddir} - make DESTDIR="${pkgdir}" install || return 1 - -# aclocal -# autoreconf - -# ./configure --disable-ldconfig --prefix=/usr --sysconfdir=/etc --with-cwiid-plugins-dir=/lib/cwiid/plugins -# make LDFLAGS=-L../libcwiid || return 1 - -# install -d $startdir/pkg/usr/bin -# install -d $startdir/pkg/etc -# install -d $startdir/pkg/usr/lib -# install -d $startdir/pkg/usr/include - -# make install LDFLAGS=-L../libcwiid prefix=$startdir/pkg/usr sysconfdir=$startdir/pkg/etc install - -# install -D -m644 ./wminput/README $pkgdir/usr/share/doc/cwiid/wminput -} -md5sums=() diff --git a/abs/extra/community/cwiid-git/cwiid.install b/abs/extra/community/cwiid-git/cwiid.install deleted file mode 100644 index 5dc5faf..0000000 --- a/abs/extra/community/cwiid-git/cwiid.install +++ /dev/null @@ -1,16 +0,0 @@ -# arg 1: the new package version -post_install() { -echo -e "Note:" -echo -e "\033[1;31m==> In order to use wminput you have to load the uinput kernel module:\033[0m" -echo -e "\033[1;31m==> modprobe uinput (as root)\033[0m" -echo -e "\033[1;31m==> and you have to assign correct right acces to /dev/uinput\033[0m" -echo -e "\033[1;31m==> PLEAS READ THE DOC FILE /usr/share/doc/cwiid/wminput\033[0m" -} - -post_upgrade() { - post_install $1 -} - -op=$1 -shift -$op $*
\ No newline at end of file diff --git a/abs/extra/community/deluge/PKGBUILD b/abs/extra/community/deluge/PKGBUILD deleted file mode 100644 index 3d36405..0000000 --- a/abs/extra/community/deluge/PKGBUILD +++ /dev/null @@ -1,40 +0,0 @@ -# $Id: PKGBUILD 97661 2010-10-31 22:31:52Z ibiru $ -# Maintainer : Ionut Biru <ibiru@archlinux.org> -# Contributor: Hugo Doria <hugo@archlinux.org> - -pkgname=deluge -pkgver=1.3.1 -pkgrel=1 -pkgdesc="A bittorrent client written with python and pygtk" -arch=('any') -url="http://deluge-torrent.org/" -license=('GPL3') -depends=('pyxdg' 'python2-distribute' 'libtorrent-rasterbar>=0.15.0' 'twisted' 'pyopenssl' 'xdg-utils' 'python-chardet') -makedepends=( 'intltool' 'pygtk' 'librsvg' 'python-mako') -optdepends=('python-notify: libnotify notifications' - 'pygtk: needed for gtk ui' - 'librsvg: needed for gtk ui' - 'python-mako: needed for web ui') -source=(http://download.deluge-torrent.org/source/${pkgname}-${pkgver}.tar.bz2 deluged deluged.conf.d deluge-web) -backup=(etc/conf.d/deluged) -install=deluge.install -md5sums=('496a9cfaf01e6cf7ab141498acf2d1f1' - '7d5790eeb14cd0b47d1bb3e0a19c9935' - '332d23fe0d21ce92b494efd73322856c' - '6c913ec7322eaa60494ac9d53103005f') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - python2 setup.py build -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - python2 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 - - install -d -m755 "${pkgdir}"/srv/deluge - install -D -m644 deluge/data/pixmaps/deluge.svg "${pkgdir}"/usr/share/pixmaps/deluge.svg - install -D -m755 "${srcdir}"/deluged "${pkgdir}"/etc/rc.d/deluged - install -D -m755 "${srcdir}"/deluge-web "${pkgdir}"/etc/rc.d/deluge-web - install -D -m644 "${srcdir}"/deluged.conf.d "${pkgdir}"/etc/conf.d/deluged -} diff --git a/abs/extra/community/deluge/__changelog b/abs/extra/community/deluge/__changelog deleted file mode 100644 index c5602d9..0000000 --- a/abs/extra/community/deluge/__changelog +++ /dev/null @@ -1 +0,0 @@ -change 'setuptools' dep to 'python2-distribute' diff --git a/abs/extra/community/deluge/deluge-web b/abs/extra/community/deluge/deluge-web deleted file mode 100644 index 587496f..0000000 --- a/abs/extra/community/deluge/deluge-web +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/deluged - -[[ -f /var/run/deluge-web.pid ]] && PID=$(cat /var/run/deluge-web.pid) -[[ -d /proc/$PID ]] || PID= - -case "$1" in - start) - stat_busy "Starting Deluge WebUI" - [[ -z $PID ]] && su -l -s /bin/sh -c "/usr/bin/deluge-web -f >/dev/null" $DELUGE_USER - if [ $? -gt 0 ]; then - stat_fail - else - sleep 1 - echo $(pgrep -u $DELUGE_USER deluge-web) > /var/run/deluge-web.pid - add_daemon deluge-web - stat_done - fi - ;; - stop) - stat_busy "Stopping Deluge WebUI" - [[ ! -z $PID ]] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm /var/run/deluge-web.pid - rm_daemon deluge-web - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/abs/extra/community/deluge/deluge.install b/abs/extra/community/deluge/deluge.install deleted file mode 100644 index 9377a63..0000000 --- a/abs/extra/community/deluge/deluge.install +++ /dev/null @@ -1,29 +0,0 @@ -post_install() { - getent group deluge >/dev/null 2>&1 || usr/sbin/groupadd -g 125 deluge - if getent passwd deluge > /dev/null 2>&1; then - usr/sbin/usermod -c 'Deluge user' -d /srv/deluge -s /bin/false deluge > /dev/null 2>&1 - else - usr/sbin/useradd -c 'Deluge user' -u 125 -g deluge -d /srv/deluge -s /bin/false deluge - fi - usr/bin/passwd -l deluge &>/dev/null - - chown deluge.deluge srv/deluge - xdg-icon-resource forceupdate --theme hicolor &> /dev/null - -cat << _EOF ->>> Deluge's daemon is running default with the "deluge" user. The default download directory is /srv/deluge/. - You can change the user by editing /etc/conf.d/deluged -_EOF -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - getent passwd deluge >/dev/null 2>&1 && userdel deluge - getent group deluge >/dev/null 2>&1 && groupdel deluge - - xdg-icon-resource forceupdate --theme hicolor &> /dev/null -} - diff --git a/abs/extra/community/deluge/deluged b/abs/extra/community/deluge/deluged deleted file mode 100644 index 096d36a..0000000 --- a/abs/extra/community/deluge/deluged +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/deluged - -[[ -f /var/run/deluged.pid ]] && PID=$(cat /var/run/deluged.pid) -[[ -d /proc/$PID ]] || PID= - -case "$1" in - start) - stat_busy "Starting Deluge Daemon" - [[ -z $PID ]] && su -l -s /bin/sh -c "/usr/bin/deluged >/dev/null" $DELUGE_USER - if [ $? -gt 0 ]; then - stat_fail - else - sleep 1 - echo $(pgrep -u $DELUGE_USER deluged) > /var/run/deluged.pid - add_daemon deluged - stat_done - fi - ;; - stop) - stat_busy "Stopping Deluge Daemon" - [[ ! -z $PID ]] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm /var/run/deluged.pid - rm_daemon deluged - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 - diff --git a/abs/extra/community/deluge/deluged.conf.d b/abs/extra/community/deluge/deluged.conf.d deleted file mode 100644 index 7f4e873..0000000 --- a/abs/extra/community/deluge/deluged.conf.d +++ /dev/null @@ -1 +0,0 @@ -DELUGE_USER="deluge" diff --git a/abs/extra/community/desktop-file-utils/PKGBUILD b/abs/extra/community/desktop-file-utils/PKGBUILD index 8673057..1588bfc 100644 --- a/abs/extra/community/desktop-file-utils/PKGBUILD +++ b/abs/extra/community/desktop-file-utils/PKGBUILD @@ -1,20 +1,24 @@ -# $Id: PKGBUILD 73005 2010-03-21 18:23:06Z jgc $ +# $Id: PKGBUILD 161386 2012-06-10 16:51:40Z jgc $ # Maintainer: Alexander Fehr <pizzapunk gmail com> pkgname=desktop-file-utils -pkgver=0.16 +pkgver=0.20 pkgrel=1 pkgdesc="Command line utilities for working with desktop entries" arch=('i686' 'x86_64') url="http://www.freedesktop.org/wiki/Software/desktop-file-utils" license=('GPL') depends=('glib2') -source=(http://www.freedesktop.org/software/desktop-file-utils/releases/desktop-file-utils-${pkgver}.tar.bz2) +source=(http://www.freedesktop.org/software/desktop-file-utils/releases/desktop-file-utils-${pkgver}.tar.xz) +md5sums=('8c85cbc13632ba69077c6bc41ce4d0ac') build() { cd "${srcdir}/desktop-file-utils-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/desktop-file-utils-${pkgver}" + make DESTDIR="${pkgdir}" install } -md5sums=('6811712bced796d025d1a8a0f728d941') diff --git a/abs/extra/community/djmount/PKGBUILD b/abs/extra/community/djmount/PKGBUILD deleted file mode 100644 index a3648dc..0000000 --- a/abs/extra/community/djmount/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# Contributor: Michele Schäuble <mschaeuble@swissonline.ch> - -pkgname=djmount -pkgver=0.71 -pkgrel=1 -pkgdesc="A UPnP AV client that mounts media server contents as a filesystem." -arch=('i686') -url="http://djmount.sourceforge.net/" -license=('GPL') -depends=('fuse') -source=(http://voxel.dl.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz \ - djmount.rcd djmount.confd) -md5sums=('c922753e706c194bf82a8b6ca77e6a9a' \ - 'f473b5150df385447f2f58049bfb6199' \ - '21de4c947c17e8558f1007a20757f254') - -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make DESTDIR=$startdir/pkg install - - install -D -m755 $startdir/src/djmount.rcd $startdir/pkg/etc/rc.d/djmount - install -D -m644 $startdir/src/djmount.confd $startdir/pkg/etc/conf.d/djmount -} diff --git a/abs/extra/community/djmount/djmount.confd b/abs/extra/community/djmount/djmount.confd deleted file mode 100644 index 079100e..0000000 --- a/abs/extra/community/djmount/djmount.confd +++ /dev/null @@ -1,2 +0,0 @@ -OPTIONS="-o ro,allow_other" -MOUNTPOINT="/media/upnp" diff --git a/abs/extra/community/djmount/djmount.rcd b/abs/extra/community/djmount/djmount.rcd deleted file mode 100755 index 84899dd..0000000 --- a/abs/extra/community/djmount/djmount.rcd +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash - - . /etc/rc.conf - . /etc/rc.d/functions - -# source application-specific settings -[ -f /etc/conf.d/djmount ] && . /etc/conf.d/djmount - - case "$1" in - - start) - stat_busy "Starting djmount" - /usr/bin/djmount $OPTIONS $MOUNTPOINT &>/dev/null - if [ $? -ne 0 ]; then - stat_fail - else - add_daemon djmount - stat_done - fi - ;; - - stop) - stat_busy "Stopping djmount" - fusermount -u $MOUNTPOINT - kill -9 `pidof /usr/bin/djmount` &>/dev/null - rm_daemon djmount - stat_done - ;; - - restart) - stat_busy "Restarting djmount ..." - $0 stop - $0 start - stat_done - ;; - - *) - echo "usage: $0 {start|stop|restart}" - esac diff --git a/abs/extra/community/dolphin-emu/PKGBUILD b/abs/extra/community/dolphin-emu/PKGBUILD deleted file mode 100644 index 2c4d3b6..0000000 --- a/abs/extra/community/dolphin-emu/PKGBUILD +++ /dev/null @@ -1,87 +0,0 @@ -# Maintainer: schuay <jakob.gruber@gmail.com> -# Contributor: Jeremy Newton (Mystro256) -# Special thanks to the contributors of dolphin-emu-svn: for the icon, desktop file and some lines from the PKGBUILD -# Thanks to all that contributed! :) - -pkgname=dolphin-emu -pkgver=3.0 -pkgrel=11 -epoch=1 -pkgdesc="A GameCube and Wii emulator (stable git branch)" -arch=('i686' 'x86_64') -url="http://www.dolphin-emulator.com/" -license=('GPL2') - -makedepends=('git' 'cmake' 'glproto' 'opencl-headers') -depends=('sdl' 'libxxf86vm' 'libao' 'wxgtk' 'wiiuse' 'nvidia-cg-toolkit' \ - 'glew' 'mesa' 'libgl' 'openal' 'portaudio' 'lzo2') - -# Cannot be BUILT with sfml later than 1.6 -# IF YOU NEED SFML>=1.7 FOR SOMETHING ELSE, TRY REMOVING THE CONFLICT -# BELOW AND ONLY TEMPORARY UNINSTALLING SFML TO BUILD/INSTALL DOLPHIN -conflicts=('dolphin-emu-git' 'sfml>=1.7' 'sfml-git') -install="${pkgname}.install" -source=('dolphin-emu.desktop' - 'unistd.diff' - 'Dolphin_Logo.png' - 'dolphin-emu.xml' - 'dolphin-emu_games.xml' - 'dolphin-emu_scan.sh') - -_gitroot=https://code.google.com/p/dolphin-emu/ -_gitname=dolphin-emu-3.0 - -build() { - cd "$srcdir" - msg "Connecting to GIT server...." - - if [[ -d "$_gitname" ]]; then - cd "$_gitname" && git pull origin 3.0 - msg "The local files are updated." - else - git clone "$_gitroot" "$_gitname" - fi - - msg "GIT checkout done or server timeout" - msg "Starting build..." - - rm -rf "$srcdir/$_gitname-build" - git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build" - cd "$srcdir/$_gitname-build" - - msg "Checking out at stable 3.0 branch" - git checkout 3.0 - - msg "GIT checkout done or server timeout" - - patch -Np2 < ${srcdir}/unistd.diff - - mkdir build && cd build - export CXXFLAGS="$CXXFLAGS -fpermissive" - cmake .. -DCMAKE_INSTALL_PREFIX=/usr - make -} - -package() { - cd "${srcdir}/dolphin-emu-3.0-build/build" - - make DESTDIR=${pkgdir} install - - mkdir -p "${pkgdir}"/usr/share/mythtv/themes/defaultmenu - mkdir -p "${pkgdir}"/usr/LH/bin - - install -Dm644 "${srcdir}/dolphin-emu.desktop" "${pkgdir}/usr/share/applications/dolphin-emu.desktop" - install -Dm644 "${srcdir}/Dolphin_Logo.png" "${pkgdir}/usr/share/pixmaps/dolphin-emu.png" - cp "${srcdir}/dolphin-emu.xml" "${pkgdir}/usr/share/mythtv/themes/defaultmenu" - cp "${srcdir}/dolphin-emu_games.xml" "${pkgdir}/usr/share/mythtv/themes/defaultmenu" - install -m755 "${srcdir}/dolphin-emu_scan.sh" "${pkgdir}/usr/LH/bin" -} - -# vim:set ts=2 sw=2 et: - -md5sums=('feed4580c2e6bfbc7f6c67dad861daae' - 'a463b96d02462b5f6b0894f6ced821ab' - 'd15c51f547b4bd47e510faac40bcc9d6' - 'ab7a9b9cfe03db65c881134c0f02bda0' - '1d03499e0abab56285bc97176d311bf1' - 'af44dd20626ce26d0a07dadc37c20233') diff --git a/abs/extra/community/dolphin-emu/__changelog b/abs/extra/community/dolphin-emu/__changelog deleted file mode 100644 index cdd8871..0000000 --- a/abs/extra/community/dolphin-emu/__changelog +++ /dev/null @@ -1,2 +0,0 @@ -6/9/12 -chw- -Added install file, and mythtv menu files. diff --git a/abs/extra/community/dolphin-emu/dolphin-emu.install b/abs/extra/community/dolphin-emu/dolphin-emu.install deleted file mode 100644 index 6acdd50..0000000 --- a/abs/extra/community/dolphin-emu/dolphin-emu.install +++ /dev/null @@ -1,36 +0,0 @@ -post_install() { - mv /usr/share/mythtv/themes/defaultmenu/game.xml /tmp - grep -v -e /mythmenu /tmp/game.xml > /tmp/game.xml.tmp - echo "<!--#Dolphin-Emu-->" >> /tmp/game.xml.tmp - echo " <button>" >> /tmp/game.xml.tmp - echo " <type>MENU_GAME</type>" >> /tmp/game.xml.tmp - echo " <text>Dolphin Emulator</text>" >> /tmp/game.xml.tmp - echo " <action>MENU dolphin-emu.xml</action>" >> /tmp/game.xml.tmp - echo " </button>" >> /tmp/game.xml.tmp - echo "<!--#Dolphin-Emu-->" >> /tmp/game.xml.tmp - echo "" >> /tmp/game.xml.tmp - echo "</mythmenu>" >> /tmp/game.xml.tmp - mv /tmp/game.xml.tmp /usr/share/mythtv/themes/defaultmenu/game.xml -} - -post_upgrade() { - mv /usr/share/mythtv/themes/defaultmenu/game.xml /tmp/game.xml.tmp - sed -e '/\#Dolphin-Emu/,/\#Dolphin-Emu/d' < /tmp/game.xml.tmp > /usr/share/mythtv/themes/defaultmenu/game.xml - mv /usr/share/mythtv/themes/defaultmenu/game.xml /tmp - grep -v -e /mythmenu /tmp/game.xml > /tmp/game.xml.tmp - echo "<!--#Dolphin-Emu-->" >> /tmp/game.xml.tmp - echo " <button>" >> /tmp/game.xml.tmp - echo " <type>MENU_GAME</type>" >> /tmp/game.xml.tmp - echo " <text>Dolphin Emulator</text>" >> /tmp/game.xml.tmp - echo " <action>MENU dolphin-emu.xml</action>" >> /tmp/game.xml.tmp - echo " </button>" >> /tmp/game.xml.tmp - echo "<!--#Dolphin-Emu-->" >> /tmp/game.xml.tmp - echo "" >> /tmp/game.xml.tmp - echo "</mythmenu>" >> /tmp/game.xml.tmp - mv /tmp/game.xml.tmp /usr/share/mythtv/themes/defaultmenu/game.xml -} - -post_remove() { - mv /usr/share/mythtv/themes/defaultmenu/game.xml /tmp/game.xml.tmp - sed -e '/\#Dolphin-Emu/,/\#Dolphin-Emu/d' < /tmp/game.xml.tmp > /usr/share/mythtv/themes/defaultmenu/game.xml -} diff --git a/abs/extra/community/enca/PKGBUILD b/abs/extra/community/enca/PKGBUILD index e398023..fdcea7c 100644 --- a/abs/extra/community/enca/PKGBUILD +++ b/abs/extra/community/enca/PKGBUILD @@ -1,17 +1,17 @@ -# $Id$ +# $Id: PKGBUILD 143739 2011-11-28 18:10:34Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Filip Dvorak <fila@pruda.com> pkgname=enca pkgver=1.13 -pkgrel=1 +pkgrel=2 pkgdesc="Charset analyser and converter" arch=('i686' 'x86_64') url="http://freshmeat.net/projects/enca/" options=('!libtool') license=('GPL') -depends=('recode' 'sh') -source=(http://dl.cihar.com/${pkgname}/${pkgname}-${pkgver}.tar.bz2) +depends=('recode' 'bash') +source=("http://dl.cihar.com/${pkgname}/${pkgname}-${pkgver}.tar.bz2") md5sums=('762bead5d9a0a5e55024e1102baaa89d') build() { @@ -22,6 +22,11 @@ build() { --mandir=/usr/share/man \ --with-librecode=/usr \ --enable-external - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/community/flashplugin/PKGBUILD b/abs/extra/community/flashplugin/PKGBUILD index 92a7caa..59f78f5 100644 --- a/abs/extra/community/flashplugin/PKGBUILD +++ b/abs/extra/community/flashplugin/PKGBUILD @@ -1,15 +1,15 @@ -# $Id$ +# $Id: PKGBUILD 161290 2012-06-08 23:27:45Z ibiru $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> pkgname=flashplugin _licensefile='PlatformClients_PC_WWEULA_Combined_20100108_1657.pdf' -pkgver=11.2.202.228 +pkgver=11.2.202.236 pkgrel=1 pkgdesc='Adobe Flash Player' url='http://get.adobe.com/flashplayer' arch=('i686' 'x86_64') -depends=('mozilla-common' 'libxt' 'gtk2' 'nss' 'curl' 'hicolor-icon-theme') +depends=('mozilla-common' 'libxt' 'libxpm' 'gtk2' 'nss' 'curl' 'hicolor-icon-theme') optdepends=('libvdpau: GPU acceleration on Nvidia card') provides=('flashplayer') license=('custom') @@ -21,20 +21,19 @@ if [ "$CARCH" = "i686" ]; then source=("http://fpdownload.macromedia.com/get/flashplayer/pdc/$pkgver/install_flash_player_11_linux.i386.tar.gz" "http://www.adobe.com/products/eulas/pdfs/${_licensefile}" mms.cfg) - md5sums=('174a9e778a11559d65f66290b16e2088' + md5sums=('00b3dd02b9ac600272440ebadda724e1' '94ca2aecb409abfe36494d1a7ec7591d' 'f34aae6279b40e0bd2abfb0d9963d7b8') elif [ "$CARCH" = "x86_64" ]; then source=("http://fpdownload.macromedia.com/get/flashplayer/pdc/$pkgver/install_flash_player_11_linux.x86_64.tar.gz" "http://www.adobe.com/products/eulas/pdfs/${_licensefile}" mms.cfg) - md5sums=('01e4ddb6e87ea8439f4955e83422f82e' + md5sums=('f3cec2b9b38bd58f5e20f543d957bc17' '94ca2aecb409abfe36494d1a7ec7591d' 'f34aae6279b40e0bd2abfb0d9963d7b8') fi package () { - cd "$srcdir" install -Dm755 libflashplayer.so "$pkgdir/usr/lib/mozilla/plugins/libflashplayer.so" if [ "$CARCH" = x86_64 ]; then install -Dm755 usr/lib64/kde4/kcm_adobe_flash_player.so "$pkgdir/usr/lib/kde4/kcm_adobe_flash_player.so" @@ -51,6 +50,6 @@ package () { install -Dm644 "${_licensefile}" "$pkgdir/usr/share/licenses/$pkgname/LICENSE.pdf" install -Dm644 "$srcdir/mms.cfg" "$pkgdir/etc/adobe/mms.cfg" } -md5sums=('174a9e778a11559d65f66290b16e2088' +md5sums=('f3cec2b9b38bd58f5e20f543d957bc17' '94ca2aecb409abfe36494d1a7ec7591d' 'f34aae6279b40e0bd2abfb0d9963d7b8') diff --git a/abs/extra/community/fluidsynth/PKGBUILD b/abs/extra/community/fluidsynth/PKGBUILD deleted file mode 100644 index 944222e..0000000 --- a/abs/extra/community/fluidsynth/PKGBUILD +++ /dev/null @@ -1,45 +0,0 @@ -# $Id: PKGBUILD 94804 2010-10-11 11:48:58Z schiv $ -# Maintainer: Ray Rashif <schiv@archlinux.org> -# Contributor: damir <damir@archlinux.org> - -pkgname=fluidsynth -pkgver=1.1.3 -pkgrel=1 -pkgdesc="A real-time software synthesizer based on the SoundFont 2 specifications" -arch=(i686 x86_64) -url="http://www.fluidsynth.org/" -depends=('glib2' 'jack' 'dbus-core') -makedepends=('cmake' 'ladspa' 'doxygen') -optdepends=('bash: init script') -license=('LGPL') -backup=('etc/conf.d/fluidsynth') -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz - fluidsynth.conf - fluidsynthd) -md5sums=('0d3e3cc770b4da413010dfb7dfdce9c8' - '16c5f4d4cbdddc6c5fcbd4fd4cc142f1' - 'b296dbfb524c2164f552f68bd9abe2ec') - -build() { - cd "$srcdir/$pkgname-$pkgver" - - cmake . -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release \ - -Denable-ladspa=ON \ - -DLIB_SUFFIX="" - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - - make DESTDIR="$pkgdir/" install - - install -Dm644 "$srcdir/fluidsynth.conf" \ - "$pkgdir/etc/conf.d/fluidsynth" - - install -Dm755 "$srcdir/fluidsynthd" \ - "$pkgdir/etc/rc.d/fluidsynth" -} - -# vim:set ts=2 sw=2 et: diff --git a/abs/extra/community/fluidsynth/fluidsynth.conf b/abs/extra/community/fluidsynth/fluidsynth.conf deleted file mode 100644 index 5267d58..0000000 --- a/abs/extra/community/fluidsynth/fluidsynth.conf +++ /dev/null @@ -1,2 +0,0 @@ -FSYNTH_OPTS="-a alsa -m alsa_seq -r 48000" -FSYNTH_SOUNDFONT=""
\ No newline at end of file diff --git a/abs/extra/community/fluxconf/PKGBUILD b/abs/extra/community/fluxconf/PKGBUILD deleted file mode 100644 index 9d9220f..0000000 --- a/abs/extra/community/fluxconf/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: Aaron Griffin <aaron@archlinux.org> -# Contributor: Jochem Kossen <j.kossen@home.nl> - -pkgname=fluxconf -pkgver=0.9.9 -pkgrel=1 -pkgdesc="Configuration utility for the Fluxbox windowmanager" -arch=(i686 x86_64) -depends=('gtk2') -source=(http://devaux.fabien.free.fr/flux/$pkgname-$pkgver.tar.gz) -url="http://devaux.fabien.free.fr/flux/" -md5sums=('ac37b12410daa06128f8eb29163a741d') - -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - /usr/bin/make || return 1 - /usr/bin/make prefix=$startdir/pkg/usr install - cd $startdir/pkg/usr/bin - /bin/ln -sf $pkgname fluxbare - /bin/ln -sf $pkgname fluxkeys - /bin/ln -sf $pkgname fluxmenu -} diff --git a/abs/extra/community/foldingathome/PKGBUILD b/abs/extra/community/foldingathome/PKGBUILD deleted file mode 100644 index 6f00936..0000000 --- a/abs/extra/community/foldingathome/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# Contributor: Jason Taylor <jftaylor21@gmail.com> -# Contributor: seratne -# Contributor: Nick B <Shirakawasuna at gmail _dot_com> - -pkgname=foldingathome -pkgver=6.02 -pkgrel=7 -pkgdesc="Folding@Home is a distributed computing project which studies protein folding, misfolding, aggregation, and related diseases." -arch=('i686') -url="http://folding.stanford.edu/" -license=('custom') -depends=('bash') -backup=('etc/conf.d/foldingathome') -install=foldingathome.install -source=(http://www.stanford.edu/group/pandegroup/folding/release/FAH$pkgver-Linux.tgz - run) - -build() { - cd $startdir/src/ - - tar zxf FAH${pkgver}-Linux.tgz - - # At this stage, the mpiexec is not included because it requires x86_64. - install -D -c -m755 fah6 $startdir/pkg/usr/bin/fah6 || return 1 - install -D -m755 run $startdir/pkg/etc/sv/fah/run -} -md5sums=('112b3d66909050f1bb990993a1464cb9' - 'cefaf5ba2f3e2fe81533b5ee4795dc78') diff --git a/abs/extra/community/foldingathome/foldingathome.install b/abs/extra/community/foldingathome/foldingathome.install deleted file mode 100644 index 20e48d1..0000000 --- a/abs/extra/community/foldingathome/foldingathome.install +++ /dev/null @@ -1,47 +0,0 @@ -post_install() { - # Check for an R5.5 fah installation. - r5_fah_dir=/myth/folding@home - r6_fah_dir=/myth/foldingathome/$(hostname) - if [ -d "$r5_fah_dir" ] ; then - if [ -d "$r6_fah_dir" ] ; then - cat << 'EOM' - --> You have an R5.5 and an R6 folding directory at the same time! - --> you should manually delete the R5.5 directory: - --> $r5_fah_dir - --> The directroy used on R6 will be: - --> $r6_fah_dir -EOM - else - mkdir -p /myth/foldingathome - mv $r5_fah_dir $r6_fah_dir - fi - else - if [ ! -d "$r6_fah_dir" ] ; then - mkdir -p $r6_fah_dir - cat > $r6_fah_dir/client.cfg << 'EOM' -[settings] -username=LinHES -team=50975 -passkey= -asknet=no -bigpackets=normal -machineid=1 - -[http] -active=no -host=localhost -port=8080 -EOM - fi - fi - rm -fr $r6_fah_dir/index.html - ln -s $r6_fah_dir/MyFolding.html $r6_fah_dir/index.html - ln -s $r6_fah_dir /data/srv/httpd/htdocs/foldingathome - /sbin/add_service.sh fah -} - -pre_remove() { - sv stop fah - /sbin/remove_service.sh fah -} - diff --git a/abs/extra/community/foldingathome/run b/abs/extra/community/foldingathome/run deleted file mode 100644 index cd4a072..0000000 --- a/abs/extra/community/foldingathome/run +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -export TERM=linux -. /etc/rc.conf -. /etc/rc.d/functions -stat_runit "Starting folding@home" - -FOLDING_DIR=/myth/foldingathome/$(hostname) - -if [ -d $FOLDING_DIR ] ; then - cd $FOLDING_DIR - # Ensure that the client configuration file has the same details as /etc/systemconfig - - source /etc/systemconfig - - if [ -n "$foldingusername" ] ; then - sed -i 's/username=.*$/username='$foldingusername'/g' $FOLDING_DIR/client.cfg - fi - - if [ -n "$foldingworksize" ] ; then - sed -i 's/bigpackets=.*$/bigpackets='$foldingworksize'/g' $FOLDING_DIR/client.cfg - fi - - # No need to direct output to a log file becase a log file - # will automatically be placed in $FOLDING_DIR - exec /usr/bin/fah6 &> /dev/null < /dev/null -fi diff --git a/abs/extra/community/fuzemux/PKGBUILD b/abs/extra/community/fuzemux/PKGBUILD deleted file mode 100644 index aa542a5..0000000 --- a/abs/extra/community/fuzemux/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# Contributor: Michael Hanson <hansonorders@verizon.net> -# Maintainer: Michael Hanson <hansonorders@verizon.net> -pkgname=fuzemux -pkgver=0.1.2 -pkgrel=1 -pkgdesc="A tool to remux AVI video files for the San Disk Sansa Fuze portable media player" -arch=('i686' 'x86_64') -url="http://code.google.com/p/fuzemux" -license=('cc-by-sa-3.0') -source=("http://${pkgname}.googlecode.com/files/${pkgname}-${pkgver}-fixed.tar.gz") -provides=('fuzemux') -replaces=('fuzemux-svn') -install=fuzemux.install - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - ./configure --prefix=/usr - make || return 1 -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir}/ install -} -md5sums=('6c7323e9b98620b39644e4d652b3f8ad') diff --git a/abs/extra/community/fuzemux/fuzemux.install b/abs/extra/community/fuzemux/fuzemux.install deleted file mode 100644 index 877ec1b..0000000 --- a/abs/extra/community/fuzemux/fuzemux.install +++ /dev/null @@ -1,5 +0,0 @@ -post_install() { - echo ">>>" - echo ">>> A user job script is supplied at /usr/LH/bin/myth2fuze" - echo ">>>" -} diff --git a/abs/extra/community/gnash/PKGBUILD b/abs/extra/community/gnash/PKGBUILD deleted file mode 100644 index daed440..0000000 --- a/abs/extra/community/gnash/PKGBUILD +++ /dev/null @@ -1,59 +0,0 @@ -# $Id: PKGBUILD 82896 2010-06-18 18:30:20Z ibiru $ -# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com> - -pkgbase=gnash -pkgname=(gnash-common gnash-gtk) -pkgver=0.8.8 -pkgrel=1 -arch=('i686' 'x86_64') -url="http://www.gnu.org/software/gnash/" -license=(GPL3) -makedepends=(curl giflib boost-libs libldap sdl agg libjpeg libpng libtool - speex fontconfig libva ffmpeg libxinerama - gstreamer0.10-base gstreamer0.10-ffmpeg - gtk2 libldap - pkgconfig boost) -options=(!libtool !emptydirs) -source=(http://ftp.gnu.org/gnu/gnash/${pkgver}/gnash-${pkgver}.tar.bz2) -md5sums=('ce57f66e222f7eb1adf7f7b4a1274612') - -build() { - cd "$srcdir/gnash-$pkgver" - - ./configure \ - --prefix=/usr \ - --sysconfdir=/etc \ - --with-plugins-install=system \ - --with-npapi-plugindir=/usr/lib/mozilla/plugins \ - --enable-gui=sdl,gtk \ - --enable-renderer=agg \ - --enable-media=gst,ffmpeg \ - --enable-hwaccel=vaapi - - make -} - -package_gnash-common() { - pkgdesc="A GNU Flash movie player" - depends=(curl giflib boost-libs libldap ffmpeg sdl agg libjpeg libpng - speex fontconfig libva libxinerama - gstreamer0.10-base gstreamer0.10-ffmpeg) - backup=(etc/gnashrc etc/gnashpluginrc) - - cd "$srcdir/gnash-$pkgver" - - make DESTDIR="$pkgdir" install - - mv "$pkgdir/usr/bin/gtk-gnash" "$srcdir" -} - -package_gnash-gtk() { - pkgdesc="A GNU Flash movie player" - depends=("gnash-common=$pkgver" gtk2 libldap) - - cd "$srcdir/gnash-$pkgver" - - make DESTDIR="$pkgdir" install-plugin - - install -D "$srcdir/gtk-gnash" "$pkgdir/usr/bin/gtk-gnash" -} diff --git a/abs/extra/community/gpac/PKGBUILD b/abs/extra/community/gpac/PKGBUILD deleted file mode 100644 index 69717e2..0000000 --- a/abs/extra/community/gpac/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# Maintainer: Brad Fanella <bradfanella@archlinux.us -# Contributor: Allan McRae <allan@archlinux.org> -# Contributor: niQo -# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> - -pkgname=gpac -pkgver=0.4.5 -pkgrel=7 -pkgdesc="A multimedia framework based on the MPEG-4 Systems standard" -arch=('i686' 'x86_64') -url="http://gpac.sourceforge.net" -depends=('libxml2' 'wxgtk' 'alsa-lib' 'sdl' 'js' 'libmad' \ - 'faad2' 'xvidcore' 'ffmpeg' 'freeglut') -license=('LGPL') -options=('!makeflags') # Multiple build jobs aren't handled correctly -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz - libpng14-infopp-null.patch) -md5sums=('755e8c438a48ebdb13525dd491f5b0d1' - '14d6483c9eb84434aea68596f243e0ca') - -build() { - cd ${srcdir}/${pkgname} - chmod +x configure - sed -i 's|--warn-common||' configure - sed -i 's#osmozilla##g' applications/Makefile - sed -i 's#"$(prefix)#"$(DESTDIR)$(prefix)#' applications/osmo4_wx/Makefile - sed -i 's#ldconfig || true##g' Makefile - - #FS#14506 - sed -i 's#lib64#lib#g' configure - patch -Np1 -i ${srcdir}/libpng14-infopp-null.patch - - # Was getting "symbol lookup error: /usr/lib/gpac/gm_x11_out.so: undefined - # symbol: XvQueryExtension" with our LDFLAGS :\ - unset LDFLAGS - - ./configure --prefix=/usr --mandir=/usr/share/man --use-js=no - make -} - -package() { - cd ${srcdir}/${pkgname} - make DESTDIR=${pkgdir} install install-lib -} diff --git a/abs/extra/community/gpac/libpng14-infopp-null.patch b/abs/extra/community/gpac/libpng14-infopp-null.patch deleted file mode 100644 index b024565..0000000 --- a/abs/extra/community/gpac/libpng14-infopp-null.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -upr gpac.orig/src/media_tools/img.c gpac/src/media_tools/img.c ---- gpac.orig/src/media_tools/img.c 2010-01-24 19:03:28.000000000 +0200 -+++ gpac/src/media_tools/img.c 2010-01-24 19:04:07.000000000 +0200 -@@ -551,7 +551,7 @@ GF_Err gf_img_png_enc(char *data, u32 wi - /* Allocate/initialize the image information data. REQUIRED */ - info_ptr = png_create_info_struct(png_ptr); - if (info_ptr == NULL) { -- png_destroy_write_struct(&png_ptr, png_infopp_NULL); -+ png_destroy_write_struct(&png_ptr, NULL); - return GF_IO_ERR; - } - diff --git a/abs/extra/community/gstreamer0.10-base/PKGBUILD b/abs/extra/community/gstreamer0.10-base/PKGBUILD index 8b115a1..5bfea48 100644 --- a/abs/extra/community/gstreamer0.10-base/PKGBUILD +++ b/abs/extra/community/gstreamer0.10-base/PKGBUILD @@ -1,46 +1,53 @@ -# $Id: PKGBUILD 87769 2010-08-18 09:20:05Z jgc $ +# $Id: PKGBUILD 153257 2012-03-12 15:48:41Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgbase=('gstreamer0.10-base') pkgname=('gstreamer0.10-base' 'gstreamer0.10-base-plugins') -pkgver=0.10.30 +pkgver=0.10.36 pkgrel=1 arch=('i686' 'x86_64') license=('LGPL') -makedepends=('pkgconfig' 'gstreamer0.10>=0.10.30' 'orc>=0.4.6' 'libsm>=1.1.1' 'libxv>=1.0.5' 'alsa-lib>=1.0.23' 'cdparanoia>=10.2' 'libvisual>=0.4.0' 'libvorbis>=1.3.1' 'libtheora>=1.1.1' 'pango>=1.28.1' 'udev>=151' 'gobject-introspection') +makedepends=('pkgconfig' 'gstreamer0.10>=0.10.35' 'orc' 'libxv' 'alsa-lib' 'cdparanoia' 'libvisual' 'libvorbis' 'libtheora' 'pango' 'gobject-introspection') options=(!libtool !emptydirs) url="http://gstreamer.freedesktop.org/" -source=(${url}/src/gst-plugins-base/gst-plugins-base-${pkgver}.tar.bz2) -sha256sums=('63938641380be9935c804ae8d55acdcfd93920ed2deb72dcf70f027a78b085d7') +source=(${url}/src/gst-plugins-base/gst-plugins-base-${pkgver}.tar.xz) +sha256sums=('1fe45c3894903001d4d008b0713dab089f53726dcb5842d5b40c2595a984e64a') build() { cd "${srcdir}/gst-plugins-base-${pkgver}" + sed -i '/AC_PATH_XTRA/d' configure.ac + autoreconf ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --disable-static --enable-experimental --disable-gnome_vfs \ --with-package-name="GStreamer Base Plugins (Archlinux)" \ - --with-package-origin="http://www.archlinux.org/" || return 1 + --with-package-origin="http://www.archlinux.org/" - make || return 1 - sed -e 's/^SUBDIRS_EXT =.*/SUBDIRS_EXT =/' -i Makefile || return 1 + make + sed -e 's/^SUBDIRS_EXT =.*/SUBDIRS_EXT =/' -i Makefile +} + +check() { + cd "${srcdir}/gst-plugins-base-${pkgver}" + make check } package_gstreamer0.10-base() { pkgdesc="GStreamer Multimedia Framework Base plugin libraries" - depends=('gstreamer0.10>=0.10.30' 'orc>=0.4.6' 'libsm>=1.1.1' 'libxv>=1.0.5' 'udev>=151') + depends=('gstreamer0.10>=0.10.35' 'orc' 'libxv') cd "${srcdir}/gst-plugins-base-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 + make DESTDIR="${pkgdir}" install } package_gstreamer0.10-base-plugins() { pkgdesc="GStreamer Multimedia Framework Base Plugins (gst-plugins-base)" - depends=("gstreamer0.10-base=${pkgver}" 'alsa-lib>=1.0.23' 'cdparanoia>=10.2' 'libvisual>=0.4.0' 'libvorbis>=1.3.1' 'libtheora>=1.1.1' 'pango>=1.28.1') + depends=("gstreamer0.10-base=${pkgver}" 'alsa-lib' 'cdparanoia' 'libvisual' 'libvorbis' 'libtheora' 'pango') replaces=('gstreamer0.10-alsa' 'gstreamer0.10-theora' 'gstreamer0.10-libvisual' 'gstreamer0.10-pango' 'gstreamer0.10-cdparanoia' 'gstreamer0.10-vorbis' 'gstreamer0.10-ogg') conflicts=('gstreamer0.10-alsa' 'gstreamer0.10-theora' 'gstreamer0.10-libvisual' 'gstreamer0.10-pango' 'gstreamer0.10-cdparanoia' 'gstreamer0.10-vorbis' 'gstreamer0.10-ogg') groups=('gstreamer0.10-plugins') cd "${srcdir}/gst-plugins-base-${pkgver}" - make -C gst-libs DESTDIR="${pkgdir}" install || return 1 - make -C ext DESTDIR="${pkgdir}" install || return 1 - make -C gst-libs DESTDIR="${pkgdir}" uninstall || return 1 + make -C gst-libs DESTDIR="${pkgdir}" install + make -C ext DESTDIR="${pkgdir}" install + make -C gst-libs DESTDIR="${pkgdir}" uninstall } diff --git a/abs/extra/community/gstreamer0.10-base/__changelog b/abs/extra/community/gstreamer0.10-base/__changelog new file mode 100644 index 0000000..05c3a3b --- /dev/null +++ b/abs/extra/community/gstreamer0.10-base/__changelog @@ -0,0 +1 @@ +removed jack and libpulse diff --git a/abs/extra/community/gstreamer0.10-ffmpeg/PKGBUILD b/abs/extra/community/gstreamer0.10-ffmpeg/PKGBUILD index 7922430..e6a0dc3 100644 --- a/abs/extra/community/gstreamer0.10-ffmpeg/PKGBUILD +++ b/abs/extra/community/gstreamer0.10-ffmpeg/PKGBUILD @@ -1,28 +1,32 @@ -# $Id: PKGBUILD 72240 2010-03-13 20:27:01Z ibiru $ +# $Id: PKGBUILD 147131 2012-01-22 11:26:07Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gstreamer0.10-ffmpeg -pkgver=0.10.10 +pkgver=0.10.13 pkgrel=1 pkgdesc="Gstreamer FFMpeg Plugin" arch=('i686' 'x86_64') license=('GPL') -depends=('gstreamer0.10-base>=0.10.30' 'bzip2') -makedepends=('pkgconfig') +depends=('gstreamer0.10-base' 'bzip2') +makedepends=('pkgconfig' 'yasm' 'sdl') url="http://www.gstreamer.net" groups=('gstreamer0.10-plugins') -source=(http://gstreamer.freedesktop.org/src/gst-ffmpeg/gst-ffmpeg-${pkgver}.tar.bz2) -sha256sums=('697114483444a0a469028857a1d58145c99e6f5d2cd7edd8cb04cdc3fc72ad94') +options=('!libtool') +source=(http://gstreamer.freedesktop.org/src/gst-ffmpeg/gst-ffmpeg-${pkgver}.tar.bz2 cmp_error.patch) build() { cd "${srcdir}/gst-ffmpeg-${pkgver}" + patch -Np1 < $srcdir/cmp_error.patch unset CFLAGS unset CXXFLAGS - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var || return 1 - make || return 1 + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --disable-static --with-ffmpeg-extra-configure="--enable-runtime-cpudetect" + make } + package() { cd "${srcdir}/gst-ffmpeg-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 - rm -f ${pkgdir}/usr/lib/gstreamer-0.10/*.{l,}a + + make DESTDIR="${pkgdir}" install } +md5sums=('7f5beacaf1312db2db30a026b36888c4' + 'eebcd022f3057c65fb3d0320831af6fe') diff --git a/abs/extra/community/gstreamer0.10-ffmpeg/cmp_error.patch b/abs/extra/community/gstreamer0.10-ffmpeg/cmp_error.patch new file mode 100644 index 0000000..602a57f --- /dev/null +++ b/abs/extra/community/gstreamer0.10-ffmpeg/cmp_error.patch @@ -0,0 +1,39 @@ +=================================================================== +--- gst-ffmpeg-0.10.13.orig/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c 2012-03-30 11:39:41.324522051 -0700 ++++ gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c 2012-03-30 11:54:08.152564075 -0700 +@@ -398,7 +398,7 @@ + "2: \n\t"\ + \ + : "+a"(src), "+c"(dst)\ +- : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\ ++ : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\ + : "memory"\ + );\ + src += 4-(h+5)*srcStride;\ +@@ -446,7 +446,7 @@ + QPEL_H264HV(%%mm3, %%mm4, %%mm5, %%mm0, %%mm1, %%mm2, 15*48)\ + "2: \n\t"\ + : "+a"(src)\ +- : "c"(tmp), "S"((x86_reg)srcStride), "g"(size)\ ++ : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size)\ + : "memory"\ + );\ + tmp += 4;\ +@@ -823,7 +823,7 @@ + "2: \n\t"\ + \ + : "+a"(src), "+c"(dst)\ +- : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\ ++ : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\ + : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3", \ + "%xmm4", "%xmm5", "%xmm6", "%xmm7",)\ + "memory"\ +@@ -878,7 +878,7 @@ + QPEL_H264HV_XMM(%%xmm3, %%xmm4, %%xmm5, %%xmm0, %%xmm1, %%xmm2, 15*48) + "2: \n\t" + : "+a"(src) +- : "c"(tmp), "S"((x86_reg)srcStride), "g"(size) ++ : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size) + : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3", + "%xmm4", "%xmm5", "%xmm6", "%xmm7",) + "memory" diff --git a/abs/extra/community/gstreamer0.10-good/PKGBUILD b/abs/extra/community/gstreamer0.10-good/PKGBUILD index a77d52d..1f3b841 100644 --- a/abs/extra/community/gstreamer0.10-good/PKGBUILD +++ b/abs/extra/community/gstreamer0.10-good/PKGBUILD @@ -1,24 +1,29 @@ -# $Id: PKGBUILD 87774 2010-08-18 09:32:26Z jgc $ +# $Id: PKGBUILD 153259 2012-03-12 16:05:31Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgbase=gstreamer0.10-good pkgname=('gstreamer0.10-good' 'gstreamer0.10-good-plugins') -pkgver=0.10.24 +pkgver=0.10.31 pkgrel=1 arch=('i686' 'x86_64') license=('LGPL') -makedepends=('intltool' 'pkgconfig' 'gstreamer0.10-base>=0.10.30' 'libavc1394>=0.5.3-3' 'libiec61883>=1.2.0' 'aalib>=1.4rc5-6' 'libshout>=2.2.2' 'libdv>=1.0.0' 'esound>=0.2.41' 'flac>=1.2.1' 'gconf>=2.28.1' 'wavpack>=4.60.1' 'taglib>=1.6.3' 'libsoup-gnome>=2.30.1' 'libv4l>=0.6.4' 'libcaca>=0.99.beta17' 'bzip2>=1.0.5' 'gtk2>=2.20.1') +makedepends=('intltool' 'pkgconfig' 'gstreamer0.10-base>=0.10.34' 'libavc1394' 'libiec61883' 'aalib' 'libshout' 'libdv' 'flac' 'gconf' 'wavpack' 'taglib' 'libsoup-gnome' 'v4l-utils' 'libcaca' 'bzip2' 'gdk-pixbuf2' 'udev') url="http://gstreamer.freedesktop.org/" options=(!libtool !emptydirs) -source=(${url}/src/gst-plugins-good/gst-plugins-good-${pkgver}.tar.bz2) -sha256sums=('f274aac9c5b8efc66833c33cfad353209c785ac111465b37146680ee0de2d0be') +source=(${url}/src/gst-plugins-good/gst-plugins-good-${pkgver}.tar.xz) +sha256sums=('77a8436a7c0a15f876bad29616835046890df2bcaf72da02151bd91e3d292b64') build() { cd "${srcdir}/gst-plugins-good-${pkgver}" + sed -i '/AC_PATH_XTRA/d' configure.ac + autoreconf ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --disable-static --enable-experimental \ --disable-schemas-install \ --disable-hal \ + --disable-esd \ + --disable-pusle \ + --disable-jack \ --with-package-name="GStreamer Good Plugins (Archlinux)" \ --with-package-origin="http://www.archlinux.org/" @@ -26,10 +31,14 @@ build() { sed -e 's/gst sys ext/gst/' -i Makefile } +_check() { + cd "${srcdir}/gst-plugins-good-${pkgver}" + make check +} + package_gstreamer0.10-good() { - depends=('gstreamer0.10-base>=0.10.30' 'bzip2>=1.0.5') + depends=('gstreamer0.10-base>=0.10.34' 'bzip2') pkgdesc="GStreamer Multimedia Framework Good plugin libraries" - conflicts=('gstreamer0.10-bad<=0.10.17') cd "${srcdir}/gst-plugins-good-${pkgver}" make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install @@ -37,16 +46,16 @@ package_gstreamer0.10-good() { } package_gstreamer0.10-good-plugins() { - depends=("gstreamer0.10-good=${pkgver}" 'libavc1394>=0.5.3-3' 'libiec61883>=1.2.0' 'aalib>=1.4rc5-6' 'libshout>=2.2.2' 'libdv>=1.0.0' 'esound>=0.2.41' 'flac>=1.2.1' 'gconf>=2.28.1' 'wavpack>=4.60.1' 'taglib>=1.6.3' 'libsoup-gnome>=2.30.1' 'libv4l>=0.6.3' 'libcaca>=0.99.beta17' 'libpng>=1.4.1' 'libjpeg>=8.0.1') + depends=("gstreamer0.10-good=${pkgver}" 'libavc1394' 'libiec61883' 'aalib' 'libshout' 'libdv' 'flac' 'gconf' 'wavpack' 'taglib' 'libsoup-gnome' 'v4l-utils' 'libcaca' 'libpng' 'libjpeg' 'udev') pkgdesc="GStreamer Multimedia Framework Good Plugins (gst-plugins-good)" groups=('gstreamer0.10-plugins') - replaces=('gstreamer0.10-aalib' 'gstreamer0.10-wavpack' 'gstreamer0.10-shout2' 'gstreamer0.10-taglib' 'gstreamer0.10-libcaca' 'gstreamer0.10-libpng' 'gstreamer0.10-jpeg' 'gstreamer0.10-cairo' 'gstreamer0.10-flac' 'gstreamer0.10-speex' 'gstreamer0.10-gdkpixbuf' 'gstreamer0.10-dv1394' 'gstreamer0.10-annodex' 'gstreamer0.10-gconf' 'gstreamer0.10-esd' 'gstreamer0.10-cdio' 'gstreamer0.10-dv' 'gstreamer0.10-soup') - conflicts=('gstreamer0.10-aalib' 'gstreamer0.10-wavpack' 'gstreamer0.10-shout2' 'gstreamer0.10-taglib' 'gstreamer0.10-libcaca' 'gstreamer0.10-libpng' 'gstreamer0.10-jpeg' 'gstreamer0.10-cairo' 'gstreamer0.10-flac' 'gstreamer0.10-speex' 'gstreamer0.10-gdkpixbuf' 'gstreamer0.10-dv1394' 'gstreamer0.10-annodex' 'gstreamer0.10-gconf' 'gstreamer0.10-esd' 'gstreamer0.10-cdio' 'gstreamer0.10-dv' 'gstreamer0.10-bad-plugins<0.10.7' 'gstreamer0.10-soup') + replaces=('gstreamer0.10-aalib' 'gstreamer0.10-wavpack' 'gstreamer0.10-shout2' 'gstreamer0.10-taglib' 'gstreamer0.10-libcaca' 'gstreamer0.10-libpng' 'gstreamer0.10-jpeg' 'gstreamer0.10-cairo' 'gstreamer0.10-flac' 'gstreamer0.10-speex' 'gstreamer0.10-gdkpixbuf' 'gstreamer0.10-dv1394' 'gstreamer0.10-annodex' 'gstreamer0.10-gconf' 'gstreamer0.10-esd' 'gstreamer0.10-cdio' 'gstreamer0.10-dv' 'gstreamer0.10-soup' 'gstreamer0.10-pulse') + conflicts=('gstreamer0.10-aalib' 'gstreamer0.10-wavpack' 'gstreamer0.10-shout2' 'gstreamer0.10-taglib' 'gstreamer0.10-libcaca' 'gstreamer0.10-libpng' 'gstreamer0.10-jpeg' 'gstreamer0.10-cairo' 'gstreamer0.10-flac' 'gstreamer0.10-speex' 'gstreamer0.10-gdkpixbuf' 'gstreamer0.10-dv1394' 'gstreamer0.10-annodex' 'gstreamer0.10-gconf' 'gstreamer0.10-esd' 'gstreamer0.10-cdio' 'gstreamer0.10-dv' 'gstreamer0.10-bad-plugins<0.10.7' 'gstreamer0.10-soup' 'gstreamer0.10-pulse') install=gstreamer0.10-good-plugins.install cd "${srcdir}/gst-plugins-good-${pkgver}" - make -C sys DESTDIR="${pkgdir}" install || return 1 + make -C sys DESTDIR="${pkgdir}" install make -C ext GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/gconf/schemas" - install -m644 gconf/gstreamer-0.10.schemas "${pkgdir}/usr/share/gconf/schemas/gstreamer0.10-good-plugins.schemas" || return 1 + install -m644 gconf/gstreamer-0.10.schemas "${pkgdir}/usr/share/gconf/schemas/gstreamer0.10-good-plugins.schemas" } diff --git a/abs/extra/community/gstreamer0.10-good/gstreamer0.10-good-plugins.install b/abs/extra/community/gstreamer0.10-good/gstreamer0.10-good-plugins.install index bcb0039..e343bee 100644 --- a/abs/extra/community/gstreamer0.10-good/gstreamer0.10-good-plugins.install +++ b/abs/extra/community/gstreamer0.10-good/gstreamer0.10-good-plugins.install @@ -6,12 +6,12 @@ post_install() { pre_upgrade() { if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then - pre_remove $1 + pre_remove fi } post_upgrade() { - post_install $1 + post_install } pre_remove() { diff --git a/abs/extra/community/gstreamer0.10-python/PKGBUILD b/abs/extra/community/gstreamer0.10-python/PKGBUILD index c9cb0db..2af9448 100644 --- a/abs/extra/community/gstreamer0.10-python/PKGBUILD +++ b/abs/extra/community/gstreamer0.10-python/PKGBUILD @@ -1,21 +1,22 @@ -# $Id: PKGBUILD 94427 2010-10-07 08:56:26Z remy $ +# $Id: PKGBUILD 147133 2012-01-22 11:30:42Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gstreamer0.10-python -pkgver=0.10.18 -pkgrel=3 +pkgver=0.10.22 +pkgrel=1 pkgdesc="Python bindings for GStreamer 0.10" arch=('i686' 'x86_64') license=('LGPL') url="http://gstreamer.freedesktop.org/" -depends=('pygobject>=2.20.0' 'gstreamer0.10-base>=0.10.28') +depends=('pygobject>=2.20.0' 'gstreamer0.10-base>=0.10.32') makedepends=('pkgconfig') options=('!libtool') source=(http://gstreamer.freedesktop.org/src/gst-python/gst-python-${pkgver}.tar.bz2) -sha256sums=('21a6a13736bd4c2cdcbde7d9c2791f1e47085d161eda84f8ee901bb744ddb897') +md5sums=('937152fe896241f827689f4b53e79b22') build() { cd "${srcdir}/gst-python-${pkgver}" + export PYTHON=python2 sed -i -e 's%^#!.*env python$%#!/usr/bin/env python2%' examples/* gst/extend/*.py ./configure --prefix=/usr make diff --git a/abs/extra/community/gstreamer0.10/PKGBUILD b/abs/extra/community/gstreamer0.10/PKGBUILD index 0a52614..07299a4 100644 --- a/abs/extra/community/gstreamer0.10/PKGBUILD +++ b/abs/extra/community/gstreamer0.10/PKGBUILD @@ -1,32 +1,40 @@ -# $Id: PKGBUILD 87764 2010-08-18 09:05:27Z jgc $ +# $Id: PKGBUILD 153252 2012-03-12 14:53:39Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gstreamer0.10 -pkgver=0.10.30 +pkgver=0.10.36 pkgrel=1 pkgdesc="GStreamer Multimedia Framework" arch=('i686' 'x86_64') license=('LGPL') url="http://gstreamer.freedesktop.org/" -depends=('libxml2>=2.7.7' 'glib2>=2.24.1') +depends=('libxml2' 'glib2') +optdepends=('sh: feedback script') makedepends=('intltool' 'pkgconfig' 'gtk-doc' 'gobject-introspection') options=('!libtool') -source=(${url}/src/gstreamer/gstreamer-${pkgver}.tar.bz2) -sha256sums=('e8ef301be423797ff36a0bb3615930b112b4175634051d19fd655e0ed974532a') +source=(${url}/src/gstreamer/gstreamer-${pkgver}.tar.xz) +md5sums=('15389c73e091b1dda915279c388b9cb2') build() { cd "${srcdir}/gstreamer-${pkgver}" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir=/usr/lib \ --with-package-name="GStreamer (Archlinux)" \ - --with-package-origin="http://www.archlinux.org/" + --with-package-origin="http://www.archlinux.org/" \ + --enable-gtk-doc --disable-static make } + +check() { + cd "${srcdir}/gstreamer-${pkgver}" + make check +} + package() { cd "${srcdir}/gstreamer-${pkgver}" make DESTDIR="${pkgdir}" install - cd "${pkgdir}/usr/bin" #Remove unversioned gst-* binaries to get rid of conflicts + cd "${pkgdir}/usr/bin" for bins in `ls *-0.10`; do rm -f ${bins/-0.10/} done diff --git a/abs/extra/community/gtkglext/PKGBUILD b/abs/extra/community/gtkglext/PKGBUILD deleted file mode 100644 index a310af6..0000000 --- a/abs/extra/community/gtkglext/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id: PKGBUILD 9958 2008-08-21 02:56:50Z eric $ -# Maintainer: damir <damir@archlinux.org> -# Contributor: Ben <ben@benmazer.net> - -pkgname=gtkglext -pkgver=1.2.0 -pkgrel=1 -pkgdesc="opengl extensions for gtk2" -arch=('i686' 'x86_64') -url="http://gtkglext.sourceforge.net/" -depends=('gtk2' 'pango') -makedepends=('gcc>=4.0.3') -options=('!libtool') -source=("http://downloads.sourceforge.net/sourceforge/gtkglext/$pkgname-$pkgver.tar.bz2") # $pkgname-$pkgver-pangox.patch) -md5sums=('ed7ba24ce06a8630c07f2d0ee5f04ab4') - -build() { - cd $startdir/src/$pkgname-$pkgver - # fix "undefined reference to `pango_x_font*" trouble - #cat $startdir/src/$pkgname-$pkgver-pangox.patch | patch -p1 || return 1 - autoconf --force - ./configure --prefix=/usr - make || return 1 - make prefix=$startdir/pkg/usr install -} diff --git a/abs/extra/community/gtkglext/gtkglext-1.0.6-pangox.patch b/abs/extra/community/gtkglext/gtkglext-1.0.6-pangox.patch deleted file mode 100644 index 8cd589e..0000000 --- a/abs/extra/community/gtkglext/gtkglext-1.0.6-pangox.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- gtkglext-1.0.6/configure.in 2005-09-10 16:45:06.000000000 +0200 -+++ gtkglext-1.0.6.az/configure.in 2005-09-10 16:46:01.000000000 +0200 -@@ -59,6 +59,10 @@ - m4_define([pango_pkg], [pango]) - m4_define([pango_required_version], [1.0.0]) - -+# Pangox -+m4_define([pangox_pkg], [pangox]) -+m4_define([pangox_required_version], [1.0.0]) -+ - # PangoFT2 - m4_define([pangoft2_pkg], [pangoft2]) - m4_define([pangoft2_required_version], [1.0.0]) -@@ -345,6 +349,7 @@ - gtk_pkg >= gtk_required_version \ - gdk_pkg >= gdk_required_version \ - pango_pkg >= pango_required_version \ -+pangox_pkg >= pango_required_version \ - gmodule_pkg >= gmodule_required_version \ - ]) - -@@ -789,7 +794,7 @@ - # CFLAGS and LIBS - ################################################## - --GDKGLEXT_PACKAGES="gdk_pkg pango_pkg gmodule_pkg" -+GDKGLEXT_PACKAGES="gdk_pkg pango_pkg pangox_pkg gmodule_pkg" - GDKGLEXT_EXTRA_CFLAGS="$GL_CFLAGS $GDKGLEXT_WIN_CFLAGS" - GDKGLEXT_EXTRA_LIBS="$GL_LIBS $GDKGLEXT_WIN_LIBS" - GDKGLEXT_DEP_CFLAGS="$GDKGLEXT_EXTRA_CFLAGS `$PKG_CONFIG --cflags $GDKGLEXT_PACKAGES`" diff --git a/abs/extra/community/ircii/PKGBUILD b/abs/extra/community/ircii/PKGBUILD deleted file mode 100644 index 2eb8ad6..0000000 --- a/abs/extra/community/ircii/PKGBUILD +++ /dev/null @@ -1,16 +0,0 @@ -# Contributor: Mateusz Herych <heniekk@gmail.com> -pkgname=ircii -pkgver=20060725 -pkgrel=1 -pkgdesc="IRC Client" -arch=('i686') -url="http://www.eterna.com.au/ircii/" -license=('BSD') -source=(ftp://ircii.warped.com/pub/ircII/ircii-$pkgver.tar.bz2) -md5sums=('280ae54367627591c1c43c765eb9d59b') -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make install DESTDIR=$startdir/pkg || return 1 -} diff --git a/abs/extra/community/js/PKGBUILD b/abs/extra/community/js/PKGBUILD deleted file mode 100644 index d55295c..0000000 --- a/abs/extra/community/js/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -pkgname=js -pkgver=1.7.0 -pkgrel=1 -epoch=1 -pkgdesc="Mozilla's C implementation of JavaScript." -arch=("i686" "x86_64") -url="http://www.mozilla.org/js/spidermonkey/" -license=('MPL' 'GPL' 'LGPL') -depends=('nspr') -options=('!makeflags') -replaces=('spidermonkey') -conflicts=('spidermonkey') -source=("http://ftp.mozilla.org/pub/mozilla.org/js/js-$pkgver.tar.gz" \ - "spidermonkey-1.7-threadsafe.patch" "spidermonkey-Makefile.patch") -md5sums=('5571134c3863686b623ebe4e6b1f6fe6' - 'b2ef9be017b6aa1857354b5223975a4f' - '161d4c0f2c604d15cba29dab60b1f7a7') - -build() { - cd "$srcdir/js/src" - patch -p0 < "$srcdir/spidermonkey-Makefile.patch" || return 1 - sed -i 's|include|include/js|' rules.mk || return 1 - # fix for the lib location - [ "$CARCH" = "x86_64" ] && (sed -i -e "s:lib64:lib:g" config.mk || return 1) - # patch Makefile for threadsafe support with native nspr - patch -p2 -i "$srcdir/spidermonkey-1.7-threadsafe.patch" || return 1 - # FS#16673 - export CFLAGS="${CFLAGS} -DJS_C_STRINGS_ARE_UTF8" - # build - threadsafe - make -f Makefile.ref BUILD_OPT=1 JS_THREADSAFE=1 DIST="$pkgdir/usr" all export || return 1 -} diff --git a/abs/extra/community/js/spidermonkey-1.7-threadsafe.patch b/abs/extra/community/js/spidermonkey-1.7-threadsafe.patch deleted file mode 100644 index da6c78d..0000000 --- a/abs/extra/community/js/spidermonkey-1.7-threadsafe.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- js/src/Makefile.ref.orig 2008-05-28 19:51:32.000000000 -0400 -+++ js/src/Makefile.ref 2008-05-28 19:52:17.000000000 -0400 -@@ -63,11 +63,11 @@ - - ifdef JS_THREADSAFE - DEFINES += -DJS_THREADSAFE --INCLUDES += -I$(DIST)/include/nspr -+INCLUDES += -I/usr/include/nspr - ifdef USE_MSVC - OTHER_LIBS += $(DIST)/lib/libnspr$(NSPR_LIBSUFFIX).lib - else --OTHER_LIBS += -L$(DIST)/lib -lnspr$(NSPR_LIBSUFFIX) -+OTHER_LIBS += -L/usr/$(LIBDIR)/nspr -lnspr${NSPR_LIBSUFFIX} - endif - endif - diff --git a/abs/extra/community/js/spidermonkey-Makefile.patch b/abs/extra/community/js/spidermonkey-Makefile.patch deleted file mode 100644 index abf1f31..0000000 --- a/abs/extra/community/js/spidermonkey-Makefile.patch +++ /dev/null @@ -1,22 +0,0 @@ -*** Makefile.ref.orig 2009-02-16 09:56:29.000000000 -0600 ---- Makefile.ref 2009-02-16 09:58:59.000000000 -0600 -*************** -*** 169,184 **** ---- 169,185 ---- - jstypes.h \ - jsprvtd.h \ - jspubtd.h \ - jsregexp.h \ - jsscan.h \ - jsscope.h \ - jsscript.h \ - jsstr.h \ -+ jsutil.h \ - jsxdrapi.h \ - jsxml.h \ - $(NULL) - - API_HFILES = \ - jsapi.h \ - jsdbgapi.h \ - $(NULL) diff --git a/abs/extra/community/libcec/PKGBUILD b/abs/extra/community/libcec/PKGBUILD deleted file mode 100644 index e4b9821..0000000 --- a/abs/extra/community/libcec/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id$ -# Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com> -# Contributor: Philippe Cherel <philippe.cherel@mayenne.org> - -pkgname=libcec -pkgver=1.5.2 -pkgrel=1 -pkgdesc="Pulse-Eight's libcec for the Pulse-Eight USB-CEC adapter" -arch=('i686' 'x86_64') -url="https://github.com/Pulse-Eight/libcec" -license=('GPL') -depends=('udev') -source=("$pkgname-$pkgver.tar.gz::https://github.com/Pulse-Eight/libcec/tarball/$pkgname-$pkgver") -_srcfolder=Pulse-Eight-libcec-00a02d1 -sha256sums=('93990024d01da7c66e2c78ca23919fd83137f6b944a2dc82fb5cc6d58a46742f') -options=(!libtool) - -build() { - mv "$_srcfolder" "$pkgname-$pkgver" - - cd "$pkgname-$pkgver" - autoreconf -vif - ./configure --prefix=/usr - make -} - -package() { - cd "$pkgname-$pkgver" - make DESTDIR="$pkgdir" install -} diff --git a/abs/extra/community/libdnet/PKGBUILD b/abs/extra/community/libdnet/PKGBUILD deleted file mode 100644 index 70cf6e4..0000000 --- a/abs/extra/community/libdnet/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 27071 2010-09-17 12:26:08Z schuay $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: James Fryman <jfryman@gmail.com> - -pkgname=libdnet -pkgver=1.12 -pkgrel=5 -pkgdesc="A simplified, portable interface to several low-level networking routines" -arch=(i686 x86_64) -makedepends=(python2) -optdepends=(python2) -install=(libdnet.install) -license=("BSD") -url="http://code.google.com/p/libdnet/" -options=('!libtool') -source=(http://libdnet.googlecode.com/files/libdnet-$pkgver.tgz) -md5sums=('9253ef6de1b5e28e9c9a62b882e44cc9') - -build() { - mkdir -p $pkgdir/usr/bin - - [ $CARCH == "x86_64" ] && export CFLAGS=-fPIC - - cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr - make && make DESTDIR=$pkgdir install - - cd python && \ - python2 setup.py install --root=$pkgdir - - install -D -m0644 ../LICENSE $pkgdir/usr/share/licenses/libdnet/license - mv $pkgdir/usr/man $startdir/pkg/usr/share/ -} diff --git a/abs/extra/community/libdnet/libdnet.install b/abs/extra/community/libdnet/libdnet.install deleted file mode 100644 index cb8146f..0000000 --- a/abs/extra/community/libdnet/libdnet.install +++ /dev/null @@ -1,3 +0,0 @@ -post_install() { - /sbin/ldconfig -} diff --git a/abs/extra/community/libelf/PKGBUILD b/abs/extra/community/libelf/PKGBUILD deleted file mode 100644 index 18bd118..0000000 --- a/abs/extra/community/libelf/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id: PKGBUILD 20525 2008-12-05 13:31:11Z jgc $ -# Maintainer: arjan <arjan@archlinux.org> -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> - -pkgname=libelf -pkgver=0.8.13 -pkgrel=1 -pkgdesc="libelf is a free ELF object file access library" -arch=('i686' 'x86_64') -license=('GPL') -source=(http://www.mr511.de/software/${pkgname}-${pkgver}.tar.gz) -url="http://directory.fsf.org/libs/misc/libelf.html" -depends=('glibc') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --enable-shared \ - --enable-gnu-names --enable-compat || return 1 - make || return 1 -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make prefix="${pkgdir}/usr" install || return 1 -} -md5sums=('4136d7b4c04df68b686570afa26988ac') diff --git a/abs/extra/community/libmodplug/PKGBUILD b/abs/extra/community/libmodplug/PKGBUILD deleted file mode 100644 index 3065783..0000000 --- a/abs/extra/community/libmodplug/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ -# Maintainer: -# Contributor: Jan de Groot <jgc@archlinux.org> -# Contributor: Patrick Leslie Polzer <leslie.polzer@gmx.net> - -pkgname=libmodplug -pkgver=0.8.8.3 -pkgrel=1 -pkgdesc="A MOD playing library" -arch=('i686' 'x86_64') -url="http://modplug-xmms.sourceforge.net/" -license=('custom') -depends=('gcc-libs') -options=('!libtool') -source=("http://downloads.sourceforge.net/modplug-xmms/${pkgname}-${pkgver}.tar.gz") -md5sums=('8a9c713f0f56894163ddc61f9a0d1f71') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} diff --git a/abs/extra/community/libnetfilter_queue/PKGBUILD b/abs/extra/community/libnetfilter_queue/PKGBUILD deleted file mode 100644 index 0240b96..0000000 --- a/abs/extra/community/libnetfilter_queue/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id$ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: Kevin Edmonds <edmondskevin@hotmail.com> -# Maintainer: Filip Wojciechowski, filip at loka dot pl - -pkgname=libnetfilter_queue -pkgver=1.0.0 -pkgrel=1 -pkgdesc="userspace library providing an API to packets that have been queued by the kernel packet filter" -arch=('i686' 'x86_64') -url="http://www.netfilter.org/projects/libnetfilter_queue/index.html" -license=('GPL') -depends=(libnfnetlink) -makedepends=(pkgconfig) -options=('!libtool') -source=(http://www.netfilter.org/projects/$pkgname/files/$pkgname-$pkgver.tar.bz2) -md5sums=('af6a9ea350f63a13609bc3b47b5c395c') - -build() { - cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make DESTDIR=$pkgdir install -} diff --git a/abs/extra/community/libnfnetlink/PKGBUILD b/abs/extra/community/libnfnetlink/PKGBUILD deleted file mode 100644 index 7577f65..0000000 --- a/abs/extra/community/libnfnetlink/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id$ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: Kevin Edmonds <edmondskevin@hotmail.com> -# Maintainer: Filip Wojciechowski, filip at loka dot pl -pkgname=libnfnetlink -pkgver=1.0.0 -pkgrel=1 -pkgdesc="low-level library for netfilter related kernel/userspace communication" -depends=(glibc) -url="http://www.netfilter.org/projects/libnfnetlink/index.html" -license=('GPL') -arch=('i686' 'x86_64') -options=('!libtool') -source=(http://www.netfilter.org/projects/$pkgname/files/$pkgname-$pkgver.tar.bz2) -md5sums=('016fdec8389242615024c529acc1adb8') - -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make DESTDIR=$startdir/pkg install -} diff --git a/abs/extra/community/libnfs/PKGBUILD b/abs/extra/community/libnfs/PKGBUILD deleted file mode 100644 index 687a416..0000000 --- a/abs/extra/community/libnfs/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id$ -# Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com> - -pkgname=libnfs -pkgver=1.3.0 -pkgrel=1 -pkgdesc="client library for accessing NFS shares" -arch=('i686' 'x86_64') -url="https://github.com/sahlberg/libnfs" -license=('GPL') -depends=('glibc') -source=("$pkgname-$pkgver.tar.gz::https://github.com/sahlberg/libnfs/tarball/$pkgname-$pkgver") -_srcfolder=sahlberg-libnfs-47e5a2c -sha256sums=('0acda3029db699c3978684080843f71d222ad35b30a2ff0d220d144e98854948') -options=(!libtool) - -build() { - mv "$_srcfolder" "$pkgname-$pkgver" - - cd "$pkgname-$pkgver" - - autoreconf -vif - ./configure --prefix=/usr - make -} - -package() { - cd "$pkgname-$pkgver" - make DESTDIR="$pkgdir" install -} diff --git a/abs/extra/community/libshairport/PKGBUILD b/abs/extra/community/libshairport/PKGBUILD deleted file mode 100644 index 293e1cc..0000000 --- a/abs/extra/community/libshairport/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id$ -# Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com> - -pkgname=libshairport -_developer='amejia1' -_version=1.2.1 -_commithash='aeb4987' -pkgver=${_version} -pkgrel=2 -pkgdesc="emulates an AirPort Express" -arch=('i686' 'x86_64') -url='https://github.com/amejia1/libshairport' -license=('GPL') -depends=('openssl' 'libao') -source=("$pkgname-$pkgver.tar.gz::https://github.com/amejia1/libshairport/tarball/$_commithash") -sha256sums=('003c65f56123a7cb090b2d7249f0facbef668f7db6048f4b458713892a6911ca') -options=(!libtool) - -_srcfolder=$_developer-$pkgname-$_commithash - -build() { - mv "$_srcfolder" "$pkgname-$pkgver" - - cd "$pkgname-$pkgver" - autoreconf -vif - ./configure --prefix=/usr - make -} - -package() { - cd "$pkgname-$pkgver" - make DESTDIR="$pkgdir" install -} diff --git a/abs/extra/community/libstdc++5/PKGBUILD b/abs/extra/community/libstdc++5/PKGBUILD deleted file mode 100644 index 00bee17..0000000 --- a/abs/extra/community/libstdc++5/PKGBUILD +++ /dev/null @@ -1,41 +0,0 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libstdc++5 -pkgver=3.3.6 -pkgrel=2 -pkgdesc="GNU Standard C++ library version 3" -arch=(i686 x86_64) -url="http://gcc.gnu.org" -depends=('gcc-libs') -makedepends=('binutils' 'gcc') -options=(!libtool) -source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-{core,g++}-${pkgver}.tar.bz2 gcc-3.4.3-no_multilib_amd64.patch) -md5sums=(18c52e6fb8966b7700665dca289d077f 6b3d00b8d079805be1b895f7f6ce47a0 \ - 088e0807e677010cafe4e590e8711be1) - -build(){ - export MAKEFLAGS="-j1" - export CFLAGS=$(echo $CFLAGS | sed 's|-mtune=generic||') - export CXXFLAGS=$(echo $CXXFLAGS | sed 's|-mtune=generic||') - cd ${startdir}/src/gcc-${pkgver} - - if [ "$CARCH" = "x86_64" ]; then - patch -Np0 -i ../gcc-3.4.3-no_multilib_amd64.patch || return 1 - fi - - # No fixincludes - sed -i -e 's@\./fixinc\.sh@-c true@' gcc/Makefile.in - mkdir ../gcc-build - cd ../gcc-build - ../gcc-${pkgver}/configure --prefix=/usr --enable-shared \ - --enable-languages=c++ --enable-threads=posix --enable-__cxa_atexit \ - --disable-multilib --libdir=/usr/lib - make all-target-libstdc++-v3 BOOT_CFLAGS="${CFLAGS}" STAGE1_CFLAGS="-O" || return 1 - make DESTDIR=${startdir}/pkg install-target-libstdc++-v3 || return 1 - - # Remove includefiles and libs provided by gcc - rm -rf ${startdir}/pkg/usr/{include,share/locale} - rm -f ${startdir}/pkg/usr/lib/*.a - rm -f ${startdir}/pkg/usr/lib/libstdc++.so -} diff --git a/abs/extra/community/libstdc++5/gcc-3.4.3-no_multilib_amd64.patch b/abs/extra/community/libstdc++5/gcc-3.4.3-no_multilib_amd64.patch deleted file mode 100644 index dce10d4..0000000 --- a/abs/extra/community/libstdc++5/gcc-3.4.3-no_multilib_amd64.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gcc/config/i386/t-linux64.orig 2003-06-28 00:19:59.000000000 +0000 -+++ gcc/config/i386/t-linux64 2003-06-28 00:20:07.000000000 +0000 -@@ -6,7 +6,7 @@ - - MULTILIB_OPTIONS = m64/m32 - MULTILIB_DIRNAMES = 64 32 --MULTILIB_OSDIRNAMES = ../lib64 ../lib -+MULTILIB_OSDIRNAMES = . ../lib - - LIBGCC = stmp-multilib - INSTALL_LIBGCC = install-multilib diff --git a/abs/extra/community/libtorrent-rasterbar/PKGBUILD b/abs/extra/community/libtorrent-rasterbar/PKGBUILD index dc719f9..ea71f07 100644 --- a/abs/extra/community/libtorrent-rasterbar/PKGBUILD +++ b/abs/extra/community/libtorrent-rasterbar/PKGBUILD @@ -1,30 +1,31 @@ -# $Id: PKGBUILD 100316 2010-11-22 16:29:19Z ibiru $ +# $Id: PKGBUILD 163820 2012-07-20 21:36:20Z ibiru $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Hugo Doria <hugo@archlinux.org> -# Contributor: Andrea Scarpino <bash.lnx@gmail.com> pkgname=libtorrent-rasterbar -pkgver=0.15.4 -pkgrel=3 +pkgver=0.16.2 +pkgrel=1 +epoch=1 pkgdesc="A C++ library that aims to be a good alternative to all the other bittorrent implementations around" url="http://www.rasterbar.com/products/libtorrent/" arch=('i686' 'x86_64') license=('custom') -depends=('boost-libs>=1.44.0' 'python2') +depends=('boost-libs' 'geoip' 'python2') makedepends=('boost') -source=(http://libtorrent.googlecode.com/files/${pkgname}-${pkgver}.tar.gz) -md5sums=('58750b3a246d056335745f9e805bb949') +options=('!libtool' '!emptydirs') +source=(http://libtorrent.googlecode.com/files/$pkgname-$pkgver.tar.gz) +sha1sums=('04da641d21d0867fc103f4f57ffd41b3fce19ead') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --enable-python-binding \ - --with-boost-filesystem=mt \ - --with-boost-thread=mt + cd $pkgname-$pkgver + PYTHON2=/usr/bin/python2 ./configure --prefix=/usr \ + --enable-python-binding \ + --with-libgeoip=system make } + package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -D COPYING "${pkgdir}/usr/share/licenses/$pkgname/LICENSE" + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install + install -D COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } - diff --git a/abs/extra/community/libtorrent-rasterbar/__changelog b/abs/extra/community/libtorrent-rasterbar/__changelog deleted file mode 100644 index 6528095..0000000 --- a/abs/extra/community/libtorrent-rasterbar/__changelog +++ /dev/null @@ -1 +0,0 @@ -change boost-lib dep to >=1.44 diff --git a/abs/extra/community/lua/PKGBUILD b/abs/extra/community/lua/PKGBUILD deleted file mode 100644 index 9b30c5b..0000000 --- a/abs/extra/community/lua/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id: PKGBUILD 86292 2010-07-28 06:43:46Z juergen $ -# Maintainer: Juergen Hoetzel <juergen@archlinux.org> -# Contributor: Damir Perisa <damir.perisa@bluewin.ch> - -pkgname=lua -pkgver=5.1.4 -pkgrel=6 -pkgdesc="A powerful light-weight programming language designed for extending applications." -arch=('i686' 'x86_64') -url="http://www.lua.org/" -depends=('readline' 'ncurses') -license=('MIT') -options=('!makeflags') -source=(http://www.lua.org/ftp/${pkgname}-${pkgver}.tar.gz http://www.lua.org/ftp/patch-lua-5.1.4-2 lua-arch.patch lua-5.1-cflags.diff) -md5sums=('d0870f2de55d59c1c8419f36e8fac150' '1239310e0c4a581c7831e596f95cc6cd'\ - '6c5953f63904bf20a0183cdab05b80de' '249582bf1fd861ccf492d2c35a9fe732') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 -i "${srcdir}/lua-arch.patch" - patch -i ${srcdir}/patch-lua-5.1.4-2 -d src -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - [ "$CARCH" == "x86_64" ] && patch -Np1 -i ../lua-5.1-cflags.diff - [ "$CARCH" == "x86_64" ] && export CFLAGS="$CFLAGS -fPIC" - make INSTALL_DATA="cp -d" TO_LIB="liblua.a liblua.so liblua.so.5.1" LUA_SO=liblua.so INSTALL_TOP="${pkgdir}/usr" INSTALL_MAN="${pkgdir}/usr/share/man/man1" \ - linux install || return 1 - install -D -m 644 etc/lua.pc "${pkgdir}/usr/lib/pkgconfig/lua.pc" - install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/COPYRIGHT" - - # Install the documentation - mkdir -p "${pkgdir}/usr/share/doc/lua" - cp -R doc/* "${pkgdir}/usr/share/doc/lua" -} diff --git a/abs/extra/community/lua/lua-arch.patch b/abs/extra/community/lua/lua-arch.patch deleted file mode 100644 index cc1f3ce..0000000 --- a/abs/extra/community/lua/lua-arch.patch +++ /dev/null @@ -1,55 +0,0 @@ -diff -ur lua-5.1.orig/etc/lua.pc lua-5.1/etc/lua.pc ---- lua-5.1.orig/etc/lua.pc 2006-03-21 11:51:53.000000000 +0100 -+++ lua-5.1/etc/lua.pc 2006-03-21 11:52:05.000000000 +0100 -@@ -6,7 +6,7 @@ - V= 5.1 - - # grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/' --prefix= /usr/local -+prefix= /usr - INSTALL_BIN= ${prefix}/bin - INSTALL_INC= ${prefix}/include - INSTALL_LIB= ${prefix}/lib -diff -ur lua-5.1.orig/src/Makefile lua-5.1/src/Makefile ---- lua-5.1.orig/src/Makefile 2006-03-21 11:51:53.000000000 +0100 -+++ lua-5.1/src/Makefile 2006-03-21 11:52:09.000000000 +0100 -@@ -23,6 +23,7 @@ - PLATS= aix ansi bsd generic linux macosx mingw posix solaris - - LUA_A= liblua.a -+LUA_SO= liblua.so - CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \ - lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \ - lundump.o lvm.o lzio.o -@@ -36,7 +37,7 @@ - LUAC_O= luac.o print.o - - ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O) --ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) -+ALL_T= $(LUA_A) $(LUA_SO) $(LUA_T) $(LUAC_T) - ALL_A= $(LUA_A) - - default: $(PLAT) -@@ -51,6 +52,10 @@ - $(AR) $@ $? - $(RANLIB) $@ - -+$(LUA_SO): $(CORE_O) $(LIB_O) -+ $(CC) -shared -ldl -Wl,-soname,liblua.so -o $@.5.1 $? -lm $(MYLDFLAGS) -+ ln -s $@.5.1 $@ -+ - $(LUA_T): $(LUA_O) $(LUA_A) - $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) - -diff -ur lua-5.1.orig/src/luaconf.h lua-5.1/src/luaconf.h ---- lua-5.1.orig/src/luaconf.h 2006-03-21 11:51:53.000000000 +0100 -+++ lua-5.1/src/luaconf.h 2006-03-21 11:52:05.000000000 +0100 -@@ -82,7 +82,7 @@ - ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll" - - #else --#define LUA_ROOT "/usr/local/" -+#define LUA_ROOT "/usr/" - #define LUA_LDIR LUA_ROOT "share/lua/5.1/" - #define LUA_CDIR LUA_ROOT "lib/lua/5.1/" - #define LUA_PATH_DEFAULT \ diff --git a/abs/extra/community/mediatomb/PKGBUILD b/abs/extra/community/mediatomb/PKGBUILD deleted file mode 100644 index 606314a..0000000 --- a/abs/extra/community/mediatomb/PKGBUILD +++ /dev/null @@ -1,49 +0,0 @@ -# $Id$ -# Contributor: William Rea <sillywilly@gmail.com> -# Contributor: Nikhil Bysani <nikron@gmail.com> -# Contributor: Mika Hynnä <igheax@gmail.com> -# Maintainer: Jonathan Conder <jonno.conder@gmail.com> - -pkgname=mediatomb -pkgver=0.12.1 -pkgrel=5 -pkgdesc="Free UPnP/DLNA media server" -arch=('i686' 'x86_64') -url="http://mediatomb.cc/" -license=('GPL') -depends=('curl' 'ffmpegthumbnailer' 'js' 'libexif' 'libmp4v2' 'sqlite3' 'taglib') -backup=('etc/conf.d/mediatomb') -install=mediatomb.install -source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz" - 'mediatomb.rc' - 'mediatomb.conf' - 'gcc46.patch' - 'tonewjs.patch') -md5sums=('e927dd5dc52d3cfcebd8ca1af6f0d3c2' - 'aa1191ec508d8bd4b3b9a5fe48efc079' - 'bec297e4178332a26b42bbde873b94cd' - '0ae34c0d73b76e3d215887834c3c08cf' - 'd9e02a9956eecf5ff645bddf6dac0331') - -build() { - cd "$srcdir/$pkgname-$pkgver" - patch -Np1 -i $srcdir/gcc46.patch - patch -Np1 -i $srcdir/tonewjs.patch - - ./configure --prefix=/usr \ - --disable-mysql \ - --enable-libmagic \ - --enable-libjs \ - --enable-ffmpeg - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - - make DESTDIR="$pkgdir/" install - - install -D -m0755 "$srcdir/mediatomb.rc" "$pkgdir/etc/rc.d/mediatomb" - install -D -m0755 "$srcdir/mediatomb.conf" "$pkgdir/etc/conf.d/mediatomb" - install -d "$pkgdir/var/lib/mediatomb" -} diff --git a/abs/extra/community/mediatomb/gcc46.patch b/abs/extra/community/mediatomb/gcc46.patch deleted file mode 100644 index 0f4fe49..0000000 --- a/abs/extra/community/mediatomb/gcc46.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/src/zmm/object.h -+++ b/src/zmm/object.h -@@ -33,6 +33,7 @@ - #define __ZMM_OBJECT_H__ - - #include <new> // for size_t -+#include <cstddef> - #include "atomic.h" - - namespace zmm diff --git a/abs/extra/community/mediatomb/mediatomb.conf b/abs/extra/community/mediatomb/mediatomb.conf deleted file mode 100644 index 798018d..0000000 --- a/abs/extra/community/mediatomb/mediatomb.conf +++ /dev/null @@ -1,23 +0,0 @@ -# -# Parameters to be passed to mediatomb -# - -# Port to listen on -MT_PORT='50500' - -# User and group to run as -MT_USER='nobody' -MT_GROUP='nobody' - -# Location of the PID file -MT_PIDFILE='/var/run/mediatomb.pid' - -# Location of the log file -MT_LOGFILE='/var/log/mediatomb.log' - -# Location of the config file/database -MT_HOME='/var/lib/mediatomb' -MT_CFGDIR='.mediatomb' - -# User defined command line options -MT_OPTIONS='' diff --git a/abs/extra/community/mediatomb/mediatomb.install b/abs/extra/community/mediatomb/mediatomb.install deleted file mode 100644 index 56f6ef9..0000000 --- a/abs/extra/community/mediatomb/mediatomb.install +++ /dev/null @@ -1,9 +0,0 @@ -post_install() { - echo 'Warning: the MediaTomb web interface exposes your filesystem to the network' - echo 'For maximum security, set <ui enabled="no"> in your MediaTomb config file' -} - -post_upgrade() { - # TODO: disable next update - post_install -} diff --git a/abs/extra/community/mediatomb/mediatomb.rc b/abs/extra/community/mediatomb/mediatomb.rc deleted file mode 100644 index 7b93012..0000000 --- a/abs/extra/community/mediatomb/mediatomb.rc +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/mediatomb - -MT_OPTIONS="-p $MT_PORT -u $MT_USER -g $MT_GROUP -P $MT_PIDFILE \ - -l $MT_LOGFILE -m $MT_HOME -f $MT_CFGDIR $MT_OPTIONS" - -case "$1" in - start) - stat_busy "Starting Mediatomb UPnP Media Server" - - chown "$MT_USER:$MT_GROUP" "$MT_HOME" - - if ! pidof -o %PPID /usr/bin/mediatomb &> /dev/null; then - rm -f "$MT_PIDFILE" - fi - - PID="$(cat "$MT_PIDFILE" 2> /dev/null)" - - if [ -z "$PID" ] && /usr/bin/mediatomb -d $MT_OPTIONS; then - add_daemon mediatomb - stat_done - else - stat_fail - fi - ;; - - stop) - stat_busy "Stopping Mediatomb UPnP Media Server" - - PID="$(cat "$MT_PIDFILE" 2> /dev/null)" - - if [ -n "$PID" ] && kill "$PID" &> /dev/null; then - rm -f "$MT_PIDFILE" - rm_daemon mediatomb - stat_done - else - stat_fail - fi - ;; - - restart) - "$0" stop - sleep 1 - "$0" start - ;; - - *) - echo "usage: $0 {start|stop|restart}" - ;; -esac -exit 0 diff --git a/abs/extra/community/mediatomb/tonewjs.patch b/abs/extra/community/mediatomb/tonewjs.patch deleted file mode 100644 index 1159685..0000000 --- a/abs/extra/community/mediatomb/tonewjs.patch +++ /dev/null @@ -1,564 +0,0 @@ -diff -up mediatomb-0.12.1-back/build/Makefile.in.tonewjs mediatomb-0.12.1-back/build/Makefile.in ---- mediatomb-0.12.1-back/build/Makefile.in.tonewjs 2010-04-08 00:40:15.000000000 +0200 -+++ mediatomb-0.12.1-back/build/Makefile.in 2011-04-19 17:17:01.343509944 +0200 -@@ -257,7 +257,7 @@ CURL_LIBS = @CURL_LIBS@ - CXX = @CXX@ - CXXCPP = @CXXCPP@ - CXXDEPMODE = @CXXDEPMODE@ --CXXFLAGS = @CXXFLAGS@ -+CXXFLAGS = -fpermissive @CXXFLAGS@ - CYGPATH_W = @CYGPATH_W@ - DB_AUTOCREATE_OPTION_ENABLED = @DB_AUTOCREATE_OPTION_ENABLED@ - DB_AUTOCREATE_OPTION_REQUESTED = @DB_AUTOCREATE_OPTION_REQUESTED@ -diff -up mediatomb-0.12.1-back/src/scripting/import_script.cc.tonewjs mediatomb-0.12.1-back/src/scripting/import_script.cc ---- mediatomb-0.12.1-back/src/scripting/import_script.cc.tonewjs 2011-04-18 13:10:48.000000000 +0200 -+++ mediatomb-0.12.1-back/src/scripting/import_script.cc 2011-04-18 13:29:36.000000000 +0200 -@@ -53,8 +53,8 @@ ImportScript::ImportScript(Ref<Runtime> - try - { - load(scriptPath); -- root = JS_NewScriptObject(cx, script); -- JS_AddNamedRoot(cx, &root, "ImportScript"); -+ root = JS_NewObject(cx, NULL, script, NULL); -+ JS_AddNamedObjectRoot(cx, &root, "ImportScript"); - } - catch (Exception ex) - { -@@ -117,7 +117,7 @@ ImportScript::~ImportScript() - #endif - - if (root) -- JS_RemoveRoot(cx, &root); -+ JS_RemoveObjectRoot(cx, &root); - - #ifdef JS_THREADSAFE - JS_EndRequest(cx); -diff -up mediatomb-0.12.1-back/src/scripting/js_functions.cc.tonewjs mediatomb-0.12.1-back/src/scripting/js_functions.cc ---- mediatomb-0.12.1-back/src/scripting/js_functions.cc.tonewjs 2011-04-18 13:29:55.000000000 +0200 -+++ mediatomb-0.12.1-back/src/scripting/js_functions.cc 2011-04-19 16:48:04.009229611 +0200 -@@ -49,7 +49,7 @@ using namespace zmm; - extern "C" { - - JSBool --js_print(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+js_print(JSContext *cx, uintN argc, jsval *argv) - { - uintN i; - JSString *str; -@@ -60,19 +60,21 @@ js_print(JSContext *cx, JSObject *obj, u - if (!str) - return JS_TRUE; - argv[i] = STRING_TO_JSVAL(str); -- log_js("%s\n", JS_GetStringBytes(str)); -+ char * log_str = JS_EncodeString(cx, str); -+ log_js("%s\n", log_str); -+ JS_free(cx, log_str); - } - return JS_TRUE; - } - - JSBool --js_copyObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+js_copyObject(JSContext *cx, uintN argc, jsval *argv) - { - jsval arg; - JSObject *js_cds_obj; - JSObject *js_cds_clone_obj; - -- Script *self = (Script *)JS_GetPrivate(cx, obj); -+ Script *self = (Script *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv)); - - try - { -@@ -91,7 +93,7 @@ js_copyObject(JSContext *cx, JSObject *o - - self->cdsObject2jsObject(cds_obj, js_cds_clone_obj); - -- *rval = OBJECT_TO_JSVAL(js_cds_clone_obj); -+ JS_SET_RVAL(cx, argv, OBJECT_TO_JSVAL(js_cds_clone_obj)); - - return JS_TRUE; - -@@ -110,7 +112,7 @@ js_copyObject(JSContext *cx, JSObject *o - } - - JSBool --js_addCdsObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+js_addCdsObject(JSContext *cx, uintN argc, jsval *argv) - { - try - { -@@ -126,7 +128,7 @@ js_addCdsObject(JSContext *cx, JSObject - Ref<StringConverter> p2i; - Ref<StringConverter> i2i; - -- Script *self = (Script *)JS_GetPrivate(cx, obj); -+ Script *self = (Script *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv)); - - if (self == NULL) - { -@@ -156,20 +158,20 @@ js_addCdsObject(JSContext *cx, JSObject - if (!str) - path = _("/"); - else -- path = JS_GetStringBytes(str); -+ path = JS_EncodeString(cx, str); - - JSString *cont = JS_ValueToString(cx, argv[2]); - if (cont) - { -- containerclass = JS_GetStringBytes(cont); -+ containerclass = JS_EncodeString(cx, cont); - if (!string_ok(containerclass) || containerclass == "undefined") - containerclass = nil; - } - - if (self->whoami() == S_PLAYLIST) -- js_orig_obj = self->getObjectProperty(obj, _("playlist")); -+ js_orig_obj = self->getObjectProperty(JS_THIS_OBJECT(cx, argv), _("playlist")); - else if (self->whoami() == S_IMPORT) -- js_orig_obj = self->getObjectProperty(obj, _("orig")); -+ js_orig_obj = self->getObjectProperty(JS_THIS_OBJECT(cx, argv), _("orig")); - - if (js_orig_obj == NULL) - { -@@ -285,8 +287,7 @@ js_addCdsObject(JSContext *cx, JSObject - JSString *str2 = JS_NewStringCopyN(cx, tmp.c_str(), tmp.length()); - if (!str2) - return JS_TRUE; -- *rval = STRING_TO_JSVAL(str2); -- -+ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(str2)); - return JS_TRUE; - } - catch (ServerShutdownException se) -@@ -302,7 +303,7 @@ js_addCdsObject(JSContext *cx, JSObject - return JS_TRUE; - } - --static JSBool convert_charset_generic(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval, charset_convert_t chr) -+static JSBool convert_charset_generic(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, charset_convert_t chr) - { - try - { -@@ -321,7 +322,7 @@ static JSBool convert_charset_generic(JS - { - str = JS_ValueToString(cx, argv[0]); - if (str) -- result = JS_GetStringBytes(str); -+ result = JS_EncodeString(cx, str); - } - - if (result != nil) -@@ -330,7 +331,7 @@ static JSBool convert_charset_generic(JS - JSString *str2 = JS_NewStringCopyN(cx, result.c_str(), result.length()); - if (!str2) - return JS_TRUE; -- *rval = STRING_TO_JSVAL(str2); -+ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(str2)); - } - } - catch (ServerShutdownException se) -@@ -347,24 +348,23 @@ static JSBool convert_charset_generic(JS - } - - --JSBool js_f2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+JSBool js_f2i(JSContext *cx, uintN argc, jsval *argv) - { -- return convert_charset_generic(cx, obj, argc, argv, rval, F2I); -+ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, F2I); - } - --JSBool js_m2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+JSBool js_m2i(JSContext *cx, uintN argc, jsval *argv) - { -- return convert_charset_generic(cx, obj, argc, argv, rval, M2I); --} -+ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, M2I); } - --JSBool js_p2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+JSBool js_p2i(JSContext *cx, uintN argc, jsval *argv) - { -- return convert_charset_generic(cx, obj, argc, argv, rval, P2I); -+ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, P2I); - } - --JSBool js_j2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+JSBool js_j2i(JSContext *cx, uintN argc, jsval *argv) - { -- return convert_charset_generic(cx, obj, argc, argv, rval, J2I); -+ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, J2I); - } - - } // extern "C" -diff -up mediatomb-0.12.1-back/src/scripting/js_functions.h.tonewjs mediatomb-0.12.1-back/src/scripting/js_functions.h ---- mediatomb-0.12.1-back/src/scripting/js_functions.h.tonewjs 2010-03-25 15:58:05.000000000 +0100 -+++ mediatomb-0.12.1-back/src/scripting/js_functions.h 2011-04-18 13:59:29.000000000 +0200 -@@ -40,18 +40,18 @@ - extern "C" { - - /// \brief Log output. --JSBool js_print(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); -+JSBool js_print(JSContext *cx, uintN argc, jsval *argv); - - /// \brief Adds an object to the database. --JSBool js_addCdsObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); -+JSBool js_addCdsObject(JSContext *cx, uintN argc, jsval *argv); - - /// \brief Makes a copy of an CDS object. --JSBool js_copyObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); -+JSBool js_copyObject(JSContext *cx, uintN argc, jsval *argv); - --JSBool js_f2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); --JSBool js_m2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); --JSBool js_p2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); --JSBool js_j2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); -+JSBool js_f2i(JSContext *cx, uintN argc, jsval *argv); -+JSBool js_m2i(JSContext *cx, uintN argc, jsval *argv); -+JSBool js_p2i(JSContext *cx, uintN argc, jsval *argv); -+JSBool js_j2i(JSContext *cx, uintN argc, jsval *argv); - - } // extern "C" - -diff -up mediatomb-0.12.1-back/src/scripting/playlist_parser_script.cc.tonewjs mediatomb-0.12.1-back/src/scripting/playlist_parser_script.cc ---- mediatomb-0.12.1-back/src/scripting/playlist_parser_script.cc.tonewjs 2011-04-18 13:34:14.000000000 +0200 -+++ mediatomb-0.12.1-back/src/scripting/playlist_parser_script.cc 2011-04-18 13:51:59.000000000 +0200 -@@ -46,9 +46,9 @@ using namespace zmm; - extern "C" { - - static JSBool --js_readln(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) -+js_readln(JSContext *cx, uintN argc, jsval *argv) - { -- PlaylistParserScript *self = (PlaylistParserScript *)JS_GetPrivate(cx, obj); -+ PlaylistParserScript *self = (PlaylistParserScript *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv)); - - String line; - -@@ -69,7 +69,7 @@ js_readln(JSContext *cx, JSObject *obj, - - JSString *jsline = JS_NewStringCopyZ(cx, line.c_str()); - -- *rval = STRING_TO_JSVAL(jsline); -+ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(jsline)); - - return JS_TRUE; - } -@@ -93,8 +93,8 @@ PlaylistParserScript::PlaylistParserScri - - String scriptPath = ConfigManager::getInstance()->getOption(CFG_IMPORT_SCRIPTING_PLAYLIST_SCRIPT); - load(scriptPath); -- root = JS_NewScriptObject(cx, script); -- JS_AddNamedRoot(cx, &root, "PlaylistScript"); -+ root = JS_NewObject(cx, NULL, script, NULL); -+ JS_AddNamedObjectRoot(cx, &root, "PlaylistScript"); - } - catch (Exception ex) - { -@@ -245,7 +245,7 @@ PlaylistParserScript::~PlaylistParserScr - #endif - - if (root) -- JS_RemoveRoot(cx, &root); -+ JS_RemoveObjectRoot(cx, &root); - - #ifdef JS_THREADSAFE - JS_EndRequest(cx); -diff -up mediatomb-0.12.1-back/src/scripting/script.cc.tonewjs mediatomb-0.12.1-back/src/scripting/script.cc ---- mediatomb-0.12.1-back/src/scripting/script.cc.tonewjs 2011-04-18 13:53:07.000000000 +0200 -+++ mediatomb-0.12.1-back/src/scripting/script.cc 2011-04-19 18:26:34.460338804 +0200 -@@ -87,7 +87,7 @@ String Script::getProperty(JSObject *obj - str = JS_ValueToString(cx, val); - if (! str) - return nil; -- return JS_GetStringBytes(str); -+ return JS_EncodeString(cx, str); - } - - int Script::getBoolProperty(JSObject *obj, String name) -@@ -427,14 +427,14 @@ static JSFunctionSpec js_global_function - try - { - common_script = _load(common_scr_path); -- common_root = JS_NewScriptObject(cx, common_script); -- JS_AddNamedRoot(cx, &common_root, "common-script"); -+ common_root = JS_NewObject(cx, NULL, common_script, NULL); -+ JS_AddNamedObjectRoot(cx, &common_root, "common-script"); - _execute(common_script); - } - catch (Exception e) - { - if (common_root) -- JS_RemoveRoot(cx, &common_root); -+ JS_RemoveObjectRoot(cx, &common_root); - - log_js("Unable to load %s: %s\n", common_scr_path.c_str(), - e.getMessage().c_str()); -@@ -460,7 +460,7 @@ Script::~Script() - JS_BeginRequest(cx); - #endif - if (common_root) -- JS_RemoveRoot(cx, &common_root); -+ JS_RemoveObjectRoot(cx, &common_root); - - /* - * scripts are unrooted and will be cleaned up by GC -@@ -504,11 +504,11 @@ void Script::initGlobalObject() - static JSClass global_class = - { - "global", /* name */ -- JSCLASS_HAS_PRIVATE, /* flags */ -+ JSCLASS_HAS_PRIVATE | JSCLASS_GLOBAL_FLAGS,/* flags */ - JS_PropertyStub, /* add property */ - JS_PropertyStub, /* del property */ - JS_PropertyStub, /* get property */ -- JS_PropertyStub, /* set property */ -+ JS_StrictPropertyStub, /* set property */ - JS_EnumerateStandardClasses, /* enumerate */ - JS_ResolveStub, /* resolve */ - JS_ConvertStub, /* convert */ -@@ -517,7 +517,7 @@ void Script::initGlobalObject() - }; - - /* create the global object here */ -- glob = JS_NewObject(cx, &global_class, NULL, NULL); -+ glob = JS_NewCompartmentAndGlobalObject(cx, &global_class, NULL); - if (! glob) - throw _Exception(_("Scripting: could not initialize glboal class")); - -@@ -539,12 +539,12 @@ void Script::defineFunctions(JSFunctionS - throw _Exception(_("Scripting: JS_DefineFunctions failed")); - } - --JSScript *Script::_load(zmm::String scriptPath) -+JSObject *Script::_load(zmm::String scriptPath) - { - if (glob == NULL) - initGlobalObject(); - -- JSScript *scr; -+ JSObject *scr; - - String scriptText = read_text_file(scriptPath); - -@@ -571,14 +571,11 @@ JSScript *Script::_load(zmm::String scri - - void Script::load(zmm::String scriptPath) - { -- if (script) -- JS_DestroyScript(cx, script); -- - script = _load((scriptPath)); - } - - --void Script::_execute(JSScript *scr) -+void Script::_execute(JSObject *scr) - { - jsval ret_val; - -@@ -662,7 +659,7 @@ Ref<CdsObject> Script::jsObject2cdsObjec - JSObject *js_meta = getObjectProperty(js, _("meta")); - if (js_meta) - { -- JS_AddNamedRoot(cx, &js_meta, "meta"); -+ JS_AddNamedObjectRoot(cx, &js_meta, "meta"); - /// \todo: only metadata enumerated in MT_KEYS is taken - for (int i = 0; i < M_MAX; i++) - { -@@ -687,7 +684,7 @@ Ref<CdsObject> Script::jsObject2cdsObjec - } - } - } -- JS_RemoveRoot(cx, &js_meta); -+ JS_RemoveObjectRoot(cx, &js_meta); - } - - // stuff that has not been exported to js -diff -up mediatomb-0.12.1-back/src/scripting/script.h.tonewjs mediatomb-0.12.1-back/src/scripting/script.h ---- mediatomb-0.12.1-back/src/scripting/script.h.tonewjs 2011-04-18 12:56:14.000000000 +0200 -+++ mediatomb-0.12.1-back/src/scripting/script.h 2011-04-18 12:56:51.000000000 +0200 -@@ -66,8 +66,8 @@ public: - JSRuntime *rt; - JSContext *cx; - JSObject *glob; -- JSScript *script; -- JSScript *common_script; -+ JSObject *script; -+ JSObject *common_script; - - public: - Script(zmm::Ref<Runtime> runtime); -@@ -115,8 +115,8 @@ private: - JSObject *common_root; - - void initGlobalObject(); -- JSScript *_load(zmm::String scriptPath); -- void _execute(JSScript *scr); -+ JSObject *_load(zmm::String scriptPath); -+ void _execute(JSObject *scr); - zmm::Ref<StringConverter> _p2i; - zmm::Ref<StringConverter> _j2i; - zmm::Ref<StringConverter> _f2i; ---- mediatomb-0.12.1/configure.tonewjs 2011-07-04 20:20:00.290227110 +1200 -+++ mediatomb-0.12.1/configure 2011-07-04 20:20:28.186894644 +1200 -@@ -23784,14 +23784,14 @@ if test "x$ac_cv_lib_smjs_JS_NewObject" - - else - -- LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs $ADD_PTHREAD_CFLAGS" -- { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs" >&5 --$as_echo_n "checking for JS_NewObject in -lmozjs... " >&6; } --if test "${ac_cv_lib_mozjs_JS_NewObject+set}" = set; then -+ LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs185 $ADD_PTHREAD_CFLAGS" -+ { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs185" >&5 -+$as_echo_n "checking for JS_NewObject in -lmozjs185... " >&6; } -+if test "${ac_cv_lib_mozjs185_JS_NewObject+set}" = set; then - $as_echo_n "(cached) " >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lmozjs $LIBS" -+LIBS="-lmozjs185 $LIBS" - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ - _ACEOF -@@ -23835,12 +23835,12 @@ $as_echo "$ac_try_echo") >&5 - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then -- ac_cv_lib_mozjs_JS_NewObject=yes -+ ac_cv_lib_mozjs185_JS_NewObject=yes - else - $as_echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - -- ac_cv_lib_mozjs_JS_NewObject=no -+ ac_cv_lib_mozjs185_JS_NewObject=no - fi - - rm -rf conftest.dSYM -@@ -23848,12 +23848,12 @@ rm -f core conftest.err conftest.$ac_obj - conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs_JS_NewObject" >&5 --$as_echo "$ac_cv_lib_mozjs_JS_NewObject" >&6; } --if test "x$ac_cv_lib_mozjs_JS_NewObject" = x""yes; then -+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs185_JS_NewObject" >&5 -+$as_echo "$ac_cv_lib_mozjs185_JS_NewObject" >&6; } -+if test "x$ac_cv_lib_mozjs185_JS_NewObject" = x""yes; then - -- JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs" -- MOZLIB=mozjs -+ JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs185" -+ MOZLIB=mozjs185 - - else - -@@ -24020,13 +24020,13 @@ if test "x$ac_cv_lib_smjs_JS_NewObject" - else - - unset ac_cv_lib_smjs_JS_NewObject -- { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs" >&5 --$as_echo_n "checking for JS_NewObject in -lmozjs... " >&6; } --if test "${ac_cv_lib_mozjs_JS_NewObject+set}" = set; then -+ { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs185" >&5 -+$as_echo_n "checking for JS_NewObject in -lmozjs185... " >&6; } -+if test "${ac_cv_lib_mozjs185_JS_NewObject+set}" = set; then - $as_echo_n "(cached) " >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lmozjs $LIBS" -+LIBS="-lmozjs185 $LIBS" - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ - _ACEOF -@@ -24070,12 +24070,12 @@ $as_echo "$ac_try_echo") >&5 - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then -- ac_cv_lib_mozjs_JS_NewObject=yes -+ ac_cv_lib_mozjs185_JS_NewObject=yes - else - $as_echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - -- ac_cv_lib_mozjs_JS_NewObject=no -+ ac_cv_lib_mozjs185_JS_NewObject=no - fi - - rm -rf conftest.dSYM -@@ -24083,12 +24083,12 @@ rm -f core conftest.err conftest.$ac_obj - conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs_JS_NewObject" >&5 --$as_echo "$ac_cv_lib_mozjs_JS_NewObject" >&6; } --if test "x$ac_cv_lib_mozjs_JS_NewObject" = x""yes; then -+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs185_JS_NewObject" >&5 -+$as_echo "$ac_cv_lib_mozjs185_JS_NewObject" >&6; } -+if test "x$ac_cv_lib_mozjs185_JS_NewObject" = x""yes; then - -- MOZLIB=mozjs -- JS_LIBS="-lmozjs" -+ MOZLIB=mozjs185 -+ JS_LIBS="-lmozjs185" - - else - -@@ -24239,15 +24239,15 @@ if test "x$ac_cv_lib_smjs_JS_NewObject" - - else - -- LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs" -- unset ac_cv_lib_mozjs_JS_NewObject -- { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs" >&5 --$as_echo_n "checking for JS_NewObject in -lmozjs... " >&6; } --if test "${ac_cv_lib_mozjs_JS_NewObject+set}" = set; then -+ LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs185" -+ unset ac_cv_lib_mozjs185_JS_NewObject -+ { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs185" >&5 -+$as_echo_n "checking for JS_NewObject in -lmozjs185... " >&6; } -+if test "${ac_cv_lib_mozjs185_JS_NewObject+set}" = set; then - $as_echo_n "(cached) " >&6 - else - ac_check_lib_save_LIBS=$LIBS --LIBS="-lmozjs $LIBS" -+LIBS="-lmozjs185 $LIBS" - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ - _ACEOF -@@ -24291,12 +24291,12 @@ $as_echo "$ac_try_echo") >&5 - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then -- ac_cv_lib_mozjs_JS_NewObject=yes -+ ac_cv_lib_mozjs185_JS_NewObject=yes - else - $as_echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - -- ac_cv_lib_mozjs_JS_NewObject=no -+ ac_cv_lib_mozjs185_JS_NewObject=no - fi - - rm -rf conftest.dSYM -@@ -24304,12 +24304,12 @@ rm -f core conftest.err conftest.$ac_obj - conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs_JS_NewObject" >&5 --$as_echo "$ac_cv_lib_mozjs_JS_NewObject" >&6; } --if test "x$ac_cv_lib_mozjs_JS_NewObject" = x""yes; then -+{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs185_JS_NewObject" >&5 -+$as_echo "$ac_cv_lib_mozjs185_JS_NewObject" >&6; } -+if test "x$ac_cv_lib_mozjs185_JS_NewObject" = x""yes; then - -- JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs" -- MOZLIB=mozjs -+ JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs185" -+ MOZLIB=mozjs185 - - else - diff --git a/abs/extra/community/mmv/PKGBUILD b/abs/extra/community/mmv/PKGBUILD deleted file mode 100644 index 0ccec1b..0000000 --- a/abs/extra/community/mmv/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# Contributor: blue_lizard lizard@blue.dyn-o-saur.com - -pkgname=mmv -pkgver=1.01b.orig -pkgrel=1 -pkgdesc="multiple move files" -depends=('glibc' 'sed') -conflicts=() -backup=() -source=(http://ftp.de.debian.org/debian/pool/main/m/mmv/mmv_1.01b.orig.tar.gz http://ftp.de.debian.org/debian/pool/main/m/mmv/mmv_1.01b-14.diff.gz) -md5sums=('1b2135ab2f17bdfa9e08debbb3c46ad8' 'a69eff7501e63c0bd1fcd231bf6949f1') -url="http://linux.maruhn.com/sec/mmv.html" -license="GPL" -install=$pkgname.install -arch=('i686') - -build() { - cd $startdir/src/$pkgname-$pkgver - patch -p1 < ../mmv_1.01b-14.diff - cat Makefile | sed -e "s/LDFLAGS.\s=-s -N/LDFLAGS =-s/g" > /tmp/Makefile - mv /tmp/Makefile ./ - make || return 1 - mkdir -p $startdir/pkg/usr/bin - mkdir -p $startdir/pkg/usr/man/man1 - make DESTDIR=$startdir/pkg install - chmod 644 $startdir/pkg/usr/man/man1/mmv.1 - cd $startdir/pkg/usr/bin - ln -s mmv mcp - ln -s mmv mad - ln -s mmv mln - cd $startdir/pkg/usr/man/man1/ - ln -s mmv.1 mcp.1 - ln -s mmv.1 mad.1 - ln -s mmv.1 mln.1 -} diff --git a/abs/extra/community/mmv/mmv.install b/abs/extra/community/mmv/mmv.install deleted file mode 100644 index 9b23e48..0000000 --- a/abs/extra/community/mmv/mmv.install +++ /dev/null @@ -1,19 +0,0 @@ -# arg 1: the new package version -post_install() { - echo ">>>" - echo ">>>" - echo ">>>" - echo ">>> many thanks to the debian people who provide the sources" - echo ">>>" -} - -# arg 1: the old package version -post_remove() { - echo ">>>" - echo ">>>" - echo ">>>" -} - -op=$1 -shift -$op $* diff --git a/abs/extra/community/moblock/MoBlock-nfq.sh.patch b/abs/extra/community/moblock/MoBlock-nfq.sh.patch deleted file mode 100644 index f9136c3..0000000 --- a/abs/extra/community/moblock/MoBlock-nfq.sh.patch +++ /dev/null @@ -1,53 +0,0 @@ ---- MoBlock-0.8/MoBlock-nfq.sh.orig 2008-11-30 03:44:02.000000000 -0500 -+++ MoBlock-0.8/MoBlock-nfq.sh 2008-12-01 18:56:15.000000000 -0500 -@@ -3,14 +3,10 @@ - # MoBlock.sh - MoBlock start script - # --------------------------------- - --ACTIVATE_CHAINS=1 --WHITE_TCP_IN="" --WHITE_UDP_IN="" --WHITE_TCP_OUT="" --WHITE_UDP_OUT="" --WHITE_TCP_FORWARD="" --WHITE_UDP_FORWARD="" -+# Some configuration options have been moved to an external conf file -+# This should make maintenance and upgrading easier - -+. /etc/moblock/config - - PIDF=/var/run/moblock.pid - -@@ -78,6 +74,17 @@ - iptables -I MOBLOCK_FW -p udp --dport $PORT -j ACCEPT - done - -+# For added IP whitelisting support -+ -+for IP in $WHITE_IP_OUT; do -+ iptables -I MOBLOCK_OUT -p all -m iprange --dst-range $IP -j ACCEPT -+done -+for IP in $WHITE_IP_IN; do -+ iptables -I MOBLOCK_IN -p all -m iprange --src-range $IP -j ACCEPT -+done -+for IP in $WHITE_IP_FW; do -+ iptables -I MOBLOCK_FW -p all -m iprange --dst-range $IP -j ACCEPT -+done - - # Loopback traffic fix - -@@ -85,7 +92,8 @@ - iptables -I OUTPUT -p all -o lo -j ACCEPT - - # Here you can change block list and log files --./moblock -p /etc/guarding.p2p ./moblock.log -+#./moblock -p /etc/guarding.p2p ./moblock.log -+/usr/bin/moblock -p /etc/moblock/banned.list /var/log/moblock.log >/dev/null 2>&1 - - # On exit delete the rules we added - -@@ -108,3 +116,4 @@ - if [ -f $PIDF ]; then - rm $PIDF; - fi -+ diff --git a/abs/extra/community/moblock/PKGBUILD b/abs/extra/community/moblock/PKGBUILD deleted file mode 100755 index 0f3ff26..0000000 --- a/abs/extra/community/moblock/PKGBUILD +++ /dev/null @@ -1,57 +0,0 @@ -# Contributor: Kevin Edmonds <edmondskevin@hotmail.com> -# Maintainer: Filip Wojciechowski, filip at loka dot pl - -pkgname=moblock -pkgver=0.9rc2 -pkgrel=9 -pkgdesc="Console application that blocks connections from/to hosts listed in a file in peerguardian format" -arch=('i686' 'x86_64') -url="http://moblock.berlios.de/" -license=('GPL') -depends=(libnetfilter_queue iptables) -backup=(etc/moblock/config) -install=moblock.install -source=(http://download.berlios.de/moblock/MoBlock-0.8-i586.tar.bz2 \ - moblock_0.9_rc2.patch \ - MoBlock-nfq.sh.patch \ - moblock_include.patch \ - config \ - moblock-update \ - moblock \ - moblock.logrotate) - -build() { - cd ${srcdir}/MoBlock-0.8 - - # patch to update moblock to the latest cvs version - patch -Np1 -i ../moblock_0.9_rc2.patch || return 1 - # add IP whitelisting and move configs to a separate conf file - patch -Np1 -i ../MoBlock-nfq.sh.patch || return 1 - # necessary to make moblock build with recent kernels - patch -Np1 -i ../moblock_include.patch || return 1 - - # change the CFLAGS for both i686 and x84_64 builds - sed -i "s#-Wall -O.*-ffast-math#$CFLAGS#g" Makefile - - # build - make || return 1 -} - -package() { - cd ${srcdir}/MoBlock-0.8 - #move the files - install -D -m 755 ./MoBlock-nfq.sh ${pkgdir}/usr/bin/moblock-nfq || return 1 - install -D -m 744 ./moblock ${pkgdir}/usr/bin/moblock || return 1 - install -D -m 755 ../moblock-update ${pkgdir}/usr/bin/moblock-update || return 1 - install -D -m 744 ../moblock ${pkgdir}/etc/rc.d/moblock || return 1 - install -D -m 644 ../config ${pkgdir}/etc/moblock/config || return 1 - install -D -m 644 ../moblock.logrotate ${pkgdir}/etc/logrotate.d/moblock || return 1 -} -md5sums=('199967adb48b153be90db10fe21325c5' - 'e4e33c515677fa53eaca4616591d4e44' - 'e9f3c6b09f5e07dee948450780340ea3' - 'b23b5214965df59632de5cec317ddbde' - '840bb52a99529305e49212a69c9ced8a' - '49a16feb221d4d912cc7200313517f7b' - '1bdc949fcff0ce751a5096e489061513' - 'a8285fd3e68043cd8d21993d3dbbf9d4') diff --git a/abs/extra/community/moblock/config b/abs/extra/community/moblock/config deleted file mode 100644 index 7d7c287..0000000 --- a/abs/extra/community/moblock/config +++ /dev/null @@ -1,30 +0,0 @@ -# Original MoBlock configuration options from MoBlock-nfq.sh file -ACTIVATE_CHAINS=1 -WHITE_TCP_IN="" -WHITE_UDP_IN="" -WHITE_TCP_OUT="" # Add "http https" here to prevent moblock from blocking webpages -WHITE_UDP_OUT="" -WHITE_TCP_FORWARD="" -WHITE_UDP_FORWARD="" - -# Added IP whitelisting support -WHITE_IP_IN="" -WHITE_IP_OUT="" -WHITE_IP_FW="" - -# Individual lists can be disabled by prefixing them with '!' -# Bluetack blacklists (http://www.bluetack.co.uk) -BLUETACK=(level1 level2 !level3 !edu ads-trackers-and-bad-pr0n bogon spyware spider Microsoft !proxy hijacked templist !rangetest dshield) - -# blocklist.org lists (currently doesn't work) -#BLOCKLIST=(p2p gov spy ads edu) - -# backup lists (might be outdated) -#PHOENIXLABS=(!p2b.p2b edu.txt spider.txt spyware.txt level1.txt !level2.txt !level3.txt) - -# Change to 'yes' if you want to backup up the old list before writing -# a new one. Only one backup copy will be kept. -BACKUP_OLD_LIST="no" - -# Options passed to wget -WGET_OPTS="-q" diff --git a/abs/extra/community/moblock/moblock b/abs/extra/community/moblock/moblock deleted file mode 100755 index d88bd2e..0000000 --- a/abs/extra/community/moblock/moblock +++ /dev/null @@ -1,70 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -case "$1" in - start) - stat_busy "Starting MoBlock" - if [ ! -f /var/run/moblock.pid ] - then - /usr/bin/moblock-nfq & - if [ $? -gt 0 ] - then - stat_fail - else - add_daemon moblock - stat_done - fi - else - stat_fail - fi - ;; - update) - stat_busy "Updating MoBlock block list..." - error=0 - /usr/bin/moblock-update || error=1 - stat_busy "Updating MoBlock block list" - if [ $error -eq 1 ]; then - stat_fail - else - stat_done - fi - ;; - stats) - stat_busy "Logging stats to /var/log/MoBlock.stats" - PID=`cat /var/run/moblock.pid 2>/dev/null` - if [ ! -z "$PID" ]; then - /bin/kill -USR2 $PID - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - fi - else - stat_fail - fi - ;; - stop) - stat_busy "Stopping MoBlock" - PID=`cat /var/run/moblock.pid 2>/dev/null` - if [ ! -z "$PID" ]; then - /bin/kill $PID - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon moblock - stat_done - fi - else - stat_fail - fi - ;; - restart) - $0 stop - sleep 2 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart|update|stats}" -esac diff --git a/abs/extra/community/moblock/moblock-update b/abs/extra/community/moblock/moblock-update deleted file mode 100755 index aae861d..0000000 --- a/abs/extra/community/moblock/moblock-update +++ /dev/null @@ -1,174 +0,0 @@ -#!/bin/bash - -. /etc/moblock/config - -CONF_DIR=/etc/moblock -TEMP_DIR=$(/usr/bin/mktemp -t -d moblock-updateXXXXXXXX) -LIST_FILE=banned.list - -USECOLOR="no" -. /etc/rc.d/functions -PREFIX_REG=" >" -PREFIX_HL="::" - -function extract() -{ - /usr/bin/find $TEMP_DIR -type f -name '*.gz' -o -name '*.zip' |\ - while read N - do - case "$N" in - *.zip) /usr/bin/unzip -oqq "$N" 2>/dev/null - if [ $? -gt 0 ]; then - rm -f "$N" - return 1 - else - rm -f "$N" - fi - ;; - *.gz) /bin/gunzip -f "$N" 2>/dev/null - if [ $? -gt 0 ]; then - rm -f "$N" - return 1 - fi - ;; - *) continue - ;; - esac - done - return 0 -} - -cd $TEMP_DIR - -printf "${C_SEPARATOR} ------------------------------\n" -printhl "Downloading and extracting files:\n" - -# Bluetack lists (with fallback) -for i in ${BLUETACK[@]} -do - if [ $(echo $i | /bin/grep '^[^\!]' | /usr/bin/wc -l) -eq 1 ]; then - stat_busy "BLUETACK '${i}'... " - /usr/bin/wget ${WGET_OPTS} "http://www.bluetack.co.uk/config/${i}.gz" && extract - if [ $? -gt 0 ] || [ ! -f ${i} ]; then - stat_fail - bfile=$i - if [ "$bfile" = "ads-trackers-and-bad-pr0n" ]; then - bfile="ads" - elif [ "$bfile" = "Microsoft" ];then - bfile="microsoft" - fi - stat_busy "[!!] BLUETACK '${i}' (fallback link)... " - /usr/bin/wget ${WGET_OPTS} "http://list.iblocklist.com/?list=bt_${bfile%%-*}" -O "${i}.gz" && extract - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - fi - else - stat_done - fi - fi -done - -# Blocklist lists -for i in ${BLOCKLIST[@]} -do - if [ $(echo $i | /bin/grep '^[^\!]' | /usr/bin/wc -l) -eq 1 ]; then - stat_busy "BLOCKLIST '${i}'... " - /usr/bin/wget ${WGET_OPTS} "blocklist.org/${i}.p2b.gz" && extract - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - fi - fi -done - -# Old phoenixlabs.org lists -for i in ${PHOENIXLABS[@]} -do - if [ $(echo $i | /bin/grep '^[^\!]' | /usr/bin/wc -l) -eq 1 ]; then - stat_busy "PHOENIXLABS '${i}'... " - /usr/bin/wget ${WGET_OPTS} "fox.phoenixlabs.org/${i}" && extract - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - fi - fi -done - -if [ $(/bin/cat "$TEMP_DIR"/* | /usr/bin/wc -l) -eq 0 ]; then - printf "\n" - printhl "ERROR: No files were downloaded" - printf "${C_SEPARATOR} ------------------------------\n" - exit 1 -fi - -# Check files -printsep -printhl "Checking integrity of downloaded files:\n" - -/usr/bin/find -type f | while read N -do - stat_busy "File '$(echo $N | /bin/awk -F/ '{print $NF}')'... " - scan1=$(/bin/cat "$N" | /usr/bin/wc -l) - scan2=$(/bin/egrep -o ":[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*-[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" "$N" | /usr/bin/wc -l) - if [ $scan1 -eq $scan2 ]; then - stat_done - else - if [ $scan2 -gt 0 ]; then - if [ $scan1 -gt $scan2 ]; then - stat_append "$(($scan1-$scan2)) of $scan1 entries failed validation; keeping the file" - stat_done - fi - else - stat_fail - stat_busy "[!!] Removing corrupted file... " - rm "$N" 2>/dev/null - if [ $? -gt 0 ]; then - stat_fail - exit 1 - else - stat_done - fi - fi - fi -done - -printsep -printhl "Saving the list:\n" - -# Make backup -if [ "$BACKUP_OLD_LIST" = "yes" ] && [ -f "$CONF_DIR"/"$LIST_FILE" ]; then - stat_busy "Backing up old list to '$CONF_DIR/$LIST_FILE.gz'... " - /bin/gzip -f "$CONF_DIR"/"$LIST_FILE" 2>/dev/null - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - fi -fi - -# Save the list -stat_busy "Saving new list to '$CONF_DIR/$LIST_FILE'... " -/bin/cat "$TEMP_DIR"/* > "$CONF_DIR"/"$LIST_FILE" 2>&1 -if [ $? -gt 0 ]; then - stat_fail - exit 1 -else - stat_done - printf "\n" - printhl "Saved `cat "$CONF_DIR"/"$LIST_FILE" | wc -l` ranges" - printf "${C_SEPARATOR} ------------------------------\n" -fi - -rm -rf "$TEMP_DIR" - -# Restart MoBlock -if [ -f /var/run/moblock.pid ]; then - /bin/kill -HUP `cat /var/run/moblock.pid` >/dev/null 2>&1 -fi - -exit 0 - diff --git a/abs/extra/community/moblock/moblock.install b/abs/extra/community/moblock/moblock.install deleted file mode 100644 index 6afe1d5..0000000 --- a/abs/extra/community/moblock/moblock.install +++ /dev/null @@ -1,26 +0,0 @@ -post_install() { - #clean up after an old hack - if [ -h /usr/lib/libnfnetlink.so.1 ]; then - rm /usr/lib/libnfnetlink.so.1 - fi - echo "" - echo ">>> moblock-update script no longer uses /var/spool/moblock" - echo ">>> as a temporary directory. You can safely delete it." - echo "" -} - -post_upgrade() { - #clean up after an old hack - if [ -h /usr/lib/libnfnetlink.so.1 ]; then - rm /usr/lib/libnfnetlink.so.1 - fi - echo "" - echo ">>> moblock-update script no longer uses /var/spool/moblock" - echo ">>> as a temporary directory. You can safely delete it." - echo "" -} - -op=$1 -shift -$op $* - diff --git a/abs/extra/community/moblock/moblock.logrotate b/abs/extra/community/moblock/moblock.logrotate deleted file mode 100644 index 6ed64bb..0000000 --- a/abs/extra/community/moblock/moblock.logrotate +++ /dev/null @@ -1,11 +0,0 @@ -"/var/log/moblock.log" /var/log/MoBlock.stats { - daily - missingok - notifempty - sharedscripts - postrotate - /usr/bin/test -f /var/run/moblock.pid && /bin/kill -HUP `cat /var/run/moblock.pid 2>/dev/null` 2>/dev/null || exit 0 - endscript - compress -} - diff --git a/abs/extra/community/moblock/moblock_0.9_rc2.patch b/abs/extra/community/moblock/moblock_0.9_rc2.patch deleted file mode 100644 index 69994ff..0000000 --- a/abs/extra/community/moblock/moblock_0.9_rc2.patch +++ /dev/null @@ -1,912 +0,0 @@ -diff -Naur MoBlock-0.8_orig/Changelog MoBlock-0.8/Changelog ---- MoBlock-0.8_orig/Changelog 2006-03-22 12:44:31.000000000 -0500 -+++ MoBlock-0.8/Changelog 2008-02-10 11:56:08.000000000 -0500 -@@ -4,6 +4,23 @@ - - --- - -+0.9: - fix for kernel 2.6.23 -+ - support for MARKing packets instead of DROPping or -+ ACCEPTing -+ - example start script that REJECTs packets instead of -+ DROPping. -+ - Integrated a patch from David Walluck for proper loading -+ of p2b files (version 2) -+ - command line options for logging to syslog, stdout -+ and log timestamping -+ - fixed loading pg1 lists with comments (lines starting -+ with '#') -+ - fixed a bug in ranges merge -+ - applied patch 2223 by badfish99: "IPs logged with bytes -+ reversed on big-endian m/c" -+ -+--- -+ - 0.8: - support for NFQUEUE-ing from iptables FORWARD chain (thx to - hyakki for suggestions and testing!) - - included patches from Maximilian Mehnert to support log file -diff -Naur MoBlock-0.8_orig/Makefile MoBlock-0.8/Makefile ---- MoBlock-0.8_orig/Makefile 2006-03-22 12:44:31.000000000 -0500 -+++ MoBlock-0.8/Makefile 2007-11-22 08:10:44.000000000 -0500 -@@ -1,4 +1,3 @@ -- - # To use the old-soon-to-be-deprecated libipq interface - # uncomment the following line and comment the NFQUEUE one, - # then comment the gcc line with netfilter_queue and -@@ -7,7 +6,7 @@ - #QUEUE_LIB=LIBIPQ - QUEUE_LIB=NFQUEUE - --CFLAGS=-Wall -O2 -march=i586 -mtune=i686 -fomit-frame-pointer -ffast-math \ -+CFLAGS=-Wall -O3 -march=i586 -mtune=i686 -fomit-frame-pointer -ffast-math \ - -D_GNU_SOURCE -D$(QUEUE_LIB) -L/usr/include/libipq - CC=gcc - -diff -Naur MoBlock-0.8_orig/MoBlock-nfq-reject.sh MoBlock-0.8/MoBlock-nfq-reject.sh ---- MoBlock-0.8_orig/MoBlock-nfq-reject.sh 1969-12-31 19:00:00.000000000 -0500 -+++ MoBlock-0.8/MoBlock-nfq-reject.sh 2007-11-22 08:10:44.000000000 -0500 -@@ -0,0 +1,104 @@ -+#!/bin/sh -+# -+# MoBlock.sh - MoBlock start script -+# --------------------------------- -+ -+ACTIVATE_CHAINS=1 -+WHITE_TCP_IN="" -+WHITE_UDP_IN="" -+WHITE_TCP_OUT="" -+WHITE_UDP_OUT="" -+WHITE_TCP_FORWARD="" -+WHITE_UDP_FORWARD="" -+REJECT_MARK="10" -+ -+PIDF=/var/run/moblock.pid -+ -+FNAME=`basename $0 .sh` -+MODE=`echo $FNAME|awk -F- '{print $2}'` -+ -+if [ -f $PIDF ]; then -+ PID=`cat $PIDF` -+ if [ `ps -p $PID|wc -l` -gt 1 ]; then -+ echo "$0: $PIDF exists and processs seems to be running. Exiting." -+ exit 1; -+ fi; -+fi; -+ -+if [ $MODE == "ipq" ]; then -+ modprobe ip_queue -+ TARGET="QUEUE" -+elif [ $MODE == "nfq" ]; then -+ modprobe ipt_NFQUEUE -+ TARGET="NFQUEUE" -+fi; -+ -+modprobe ipt_state -+ -+# Filter all traffic, edit for your needs -+ -+iptables -N MOBLOCK_IN -+iptables -N MOBLOCK_OUT -+iptables -N MOBLOCK_FW -+ -+if [ $ACTIVATE_CHAINS -eq 1 ]; then -+ iptables -I INPUT -p all -m state --state NEW -j MOBLOCK_IN -+ iptables -I OUTPUT -p all -m state --state NEW -j MOBLOCK_OUT -+ iptables -I FORWARD -p all -m state --state NEW -j MOBLOCK_FW -+fi; -+ -+ -+iptables -I MOBLOCK_IN -p all -j $TARGET -+ -+iptables -I MOBLOCK_OUT -p all -j $TARGET -+ -+iptables -I MOBLOCK_FW -p all -j $TARGET -+ -+for PORT in $WHITE_TCP_OUT; do -+ iptables -I MOBLOCK_OUT -p tcp --dport $PORT -j ACCEPT -+done -+for PORT in $WHITE_UDP_OUT; do -+ iptables -I MOBLOCK_OUT -p udp --dport $PORT -j ACCEPT -+done -+ -+for PORT in $WHITE_TCP_IN; do -+ iptables -I MOBLOCK_IN -p tcp --dport $PORT -j ACCEPT -+done -+for PORT in $WHITE_UDP_IN; do -+ iptables -I MOBLOCK_IN -p udp --dport $PORT -j ACCEPT -+done -+ -+for PORT in $WHITE_TCP_FORWARD; do -+ iptables -I MOBLOCK_FW -p tcp --dport $PORT -j ACCEPT -+done -+for PORT in $WHITE_UDP_FORWARD; do -+ iptables -I MOBLOCK_FW -p udp --dport $PORT -j ACCEPT -+done -+ -+iptables -I OUTPUT -p all -m state --state NEW -m mark --mark $REJECT_MARK -j REJECT -+iptables -I FORWARD -p all -m state --state NEW -m mark --mark $REJECT_MARK -j REJECT -+ -+# Here you can change block list and log files -+./moblock -d /etc/ipfilter.dat -t -s -r $REJECT_MARK ./moblock.log -+ -+# On exit delete the rules we added -+ -+if [ $ACTIVATE_CHAINS -eq 1 ]; then -+ iptables -D INPUT -p all -m state --state NEW -j MOBLOCK_IN -+ iptables -D OUTPUT -p all -m state --state NEW -j MOBLOCK_OUT -+ iptables -D FORWARD -p all -m state --state NEW -j MOBLOCK_FW -+fi; -+ -+iptables -D OUTPUT -p all -m state --state NEW -m mark --mark $REJECT_MARK -j REJECT -+iptables -D FORWARD -p all -m state --state NEW -m mark --mark $REJECT_MARK -j REJECT -+ -+iptables -F MOBLOCK_IN -+iptables -X MOBLOCK_IN -+iptables -F MOBLOCK_OUT -+iptables -X MOBLOCK_OUT -+iptables -F MOBLOCK_FW -+iptables -X MOBLOCK_FW -+ -+if [ -f $PIDF ]; then -+ rm $PIDF; -+fi -diff -Naur MoBlock-0.8_orig/MoBlock.c MoBlock-0.8/MoBlock.c ---- MoBlock-0.8_orig/MoBlock.c 2006-03-22 12:44:31.000000000 -0500 -+++ MoBlock-0.8/MoBlock.c 2008-02-10 11:56:08.000000000 -0500 -@@ -35,6 +35,8 @@ - #include <linux/netfilter_ipv4.h>
- #include <signal.h>
- #include <regex.h>
-+#include <time.h>
-+#include <syslog.h>
-
- // in Makefile define LIBIPQ to use soon-to-be-deprecated ip_queue,
- // NFQUEUE for ipt_NFQUEUE (from kernel 2.6.14)
-@@ -46,7 +48,7 @@ - #include <libnetfilter_queue/libnetfilter_queue.h>
- #endif
-
--#define MB_VERSION "0.8"
-+#define MB_VERSION "0.9rc2"
-
- #define BUFSIZE 2048
- #define PAYLOADSIZE 21
-@@ -58,6 +60,9 @@ - #define SRC_ADDR(payload) (*(in_addr_t *)((payload)+12))
- #define DST_ADDR(payload) (*(in_addr_t *)((payload)+16))
-
-+#define likely(x) __builtin_expect((x),1)
-+#define unlikely(x) __builtin_expect((x),0)
-+
- // rbt datatypes/functions
-
- typedef enum {
-@@ -96,7 +101,8 @@ - char filename[100];
- } blocklist_info;
-
--int merged_ranges=0, skipped_ranges=0;
-+u_int32_t merged_ranges=0, skipped_ranges=0, accept_mark=0, reject_mark=0;
-+u_int8_t log2syslog=0, log2file=0, log2stdout=0, timestamp=0;
-
- #ifdef LIBIPQ
- static void die(struct ipq_handle *h)
-@@ -112,11 +118,13 @@ - static char buf[2][ sizeof("aaa.bbb.ccc.ddd") ];
- static short int index=0;
-
-+ ip = ntohl(ip);
-+
- sprintf(buf[index],"%d.%d.%d.%d",
-- (ip) & 0xff,
-- (ip >> 8) & 0xff,
-+ (ip >> 24) & 0xff,
- (ip >> 16) & 0xff,
-- (ip >> 24) & 0xff);
-+ (ip >> 8) & 0xff,
-+ (ip) & 0xff);
-
- if (index) {
- index=0;
-@@ -134,10 +142,38 @@ - fflush(stdout);
- }
-
-+void log_action(char *msg)
-+{
-+ char timestr[30];
-+ time_t tv;
-+
-+ if (timestamp) {
-+ tv = time(NULL);
-+ strncpy(timestr, ctime(&tv), 19);
-+ timestr[19] = '\0';
-+ strcat(timestr, "| ");
-+ }
-+ else strcpy(timestr, "");
-+
-+ if (log2syslog) {
-+ syslog(LOG_INFO, msg);
-+ }
-+
-+ if (log2file) {
-+ fprintf(logfile,"%s%s",timestr,msg);
-+ fflush(logfile);
-+ }
-+
-+ if (log2stdout) {
-+ fprintf(stdout,"%s%s",timestr,msg);
-+ }
-+}
-+
- inline void ranged_insert(char *name,char *ipmin,char *ipmax)
- {
- recType tmprec;
- int ret;
-+ char msgbuf[255];
-
- if ( strlen(name) > (BNAME_LEN-1) ) {
- strncpy(tmprec.blockname, name, BNAME_LEN);
-@@ -149,10 +185,11 @@ - if ( (ret=insert(ntohl(inet_addr(ipmin)),&tmprec)) != STATUS_OK )
- switch(ret) {
- case STATUS_MEM_EXHAUSTED:
-- fprintf(logfile,"Error inserting range, MEM_EXHAUSTED.\n");
-+ log_action("Error inserting range, MEM_EXHAUSTED.\n");
- break;
- case STATUS_DUPLICATE_KEY:
-- fprintf(logfile,"Duplicated range ( %s )\n",name);
-+ sprintf(msgbuf,"Duplicated range ( %s )\n",name);
-+ log_action(msgbuf);
- break;
- case STATUS_MERGED:
- merged_ranges++;
-@@ -161,8 +198,9 @@ - skipped_ranges++;
- break;
- default:
-- fprintf(logfile,"Unexpected return value from ranged_insert()!\n");
-- fprintf(logfile,"Return value was: %d\n",ret);
-+ log_action("Unexpected return value from ranged_insert()!\n");
-+ sprintf(msgbuf,"Return value was: %d\n",ret);
-+ log_action(msgbuf);
- break;
- }
- }
-@@ -177,15 +215,19 @@ - regex_t regmain;
- regmatch_t matches[4];
- int i;
-+ char msgbuf[255];
-
- regcomp(®main, "^(.*)[:]([0-9.]*)[-]([0-9.]*)$", REG_EXTENDED);
-
- fp=fopen(filename,"r");
- if ( fp == NULL ) {
-- fprintf(logfile,"Error opening %s, aborting...\n", filename);
-+ sprintf(msgbuf,"Error opening %s, aborting...\n", filename);
-+ log_action(msgbuf);
- exit(-1);
- }
- while ( (count=getline(&line,&len,fp)) != -1 ) {
-+ if ( line[0] == '#' ) //comment line, skip
-+ continue;
- for(i=count-1; i>=0; i--) {
- if ((line[i] == '\r') || (line[i] == '\n') || (line[i] == ' ')) {
- line[i] = 0;
-@@ -207,36 +249,78 @@ - line+matches[3].rm_so);
- ntot++;
- } else {
-- fprintf(logfile,"Short guarding.p2p line %s, skipping it...\n", line);
-+ sprintf(msgbuf,"Short guarding.p2p line %s, skipping it...\n", line);
-+ log_action(msgbuf);
- }
- }
- if (line)
- free(line);
- fclose(fp);
-- fprintf(logfile,"Ranges loaded: %d\n",ntot);
-- printf("* Ranges loaded: %d\n",ntot);
-+ sprintf(msgbuf, "* Ranges loaded: %d\n", ntot);
-+ log_action(msgbuf);
-+ if ( !log2stdout )
-+ printf(msgbuf);
- }
-
--void loadlist_pg2(char *filename) // experimental, no check for list sanity
-+void loadlist_pg2(char *filename) // supports only v2 files
- {
- FILE *fp;
-- int i,retval,ntot=0;
-- char name[100],ipmin[16]; // hope we don't have a list with longer names...
-+ int i, j, c, retval=0, ntot=0;
-+ char name[100],ipmin[16], msgbuf[255]; // hope we don't have a list with longer names...
- uint32_t start_ip, end_ip;
- struct in_addr startaddr,endaddr;
-+ size_t s;
-
- fp=fopen(filename,"r");
- if ( fp == NULL ) {
-- fprintf(logfile,"Error opening %s, aborting...\n", filename);
-+ sprintf(msgbuf, "Error opening %s, aborting...\n", filename);
-+ log_action(msgbuf);
- exit(-1);
- }
-
-- fgetc(fp); // skip first 4 bytes, don't know what they are
-- fgetc(fp);
-- fgetc(fp);
-- retval=fgetc(fp);
-+ for (j=0; j<4; j++) {
-+ c=fgetc(fp);
-+ if ( c != 0xff ) {
-+ sprintf(msgbuf,"Byte %d: 0x%x != 0xff, aborting...\n", j+1, c);
-+ log_action(msgbuf);
-+ fclose(fp);
-+ exit(-1);
-+ }
-+ }
-+
-+ c=fgetc(fp);
-+ if ( c != 'P' ) {
-+ sprintf(msgbuf,"Byte 5: %c != P, aborting...\n", c);
-+ log_action(msgbuf);
-+ fclose(fp);
-+ exit(-1);
-+ }
-+
-+ c=fgetc(fp);
-+ if ( c != '2' ) {
-+ sprintf(msgbuf,"Byte 6: %c != 2, aborting...\n", c);
-+ log_action(msgbuf);
-+ fclose(fp);
-+ exit(-1);
-+ }
-
-- while ( retval != EOF ) {
-+ c=fgetc(fp);
-+ if ( c != 'B' ) {
-+ sprintf(msgbuf,"Byte 7: %c != B, aborting...\n", c);
-+ log_action(msgbuf);
-+ fclose(fp);
-+ exit(-1);
-+ }
-+
-+ c=fgetc(fp);
-+ if ( c != 0x02 ) {
-+ sprintf(msgbuf,"Byte 8: version: %d != 2, aborting...\n", c);
-+ log_action(msgbuf);
-+ fclose(fp);
-+ exit(-1);
-+ }
-+
-+ do {
- i=0;
- do {
- name[i]=fgetc(fp);
-@@ -244,9 +328,22 @@ - } while ( name[i-1] != 0x00 && name[i-1] != EOF);
- if ( name[i-1] != EOF ) {
- name[i-1]='\0';
-- fread(&start_ip,4,1,fp);
-- fread(&end_ip,4,1,fp);
-- startaddr.s_addr=start_ip;
-+ s=fread(&start_ip,4,1,fp);
-+ if ( s != 1 ) {
-+ sprintf(msgbuf,"Failed to read start IP: %d != 1, aborting...\n", (int)s);
-+ log_action(msgbuf);
-+ fclose(fp);
-+ exit(-1);
-+ }
-+ s=fread(&end_ip,4,1,fp);
-+ if ( s != 1 ) {
-+ sprintf(msgbuf,"Failed to read end IP: %d != 1, aborting...\n", (int)s);
-+ log_action(msgbuf);
-+ fclose(fp);
-+ exit(-1);
-+ }
-+
-+ startaddr.s_addr=start_ip;
- endaddr.s_addr=end_ip;
- strcpy(ipmin,inet_ntoa(startaddr));
- ranged_insert(name,ipmin,inet_ntoa(endaddr));
-@@ -255,22 +352,25 @@ - else {
- retval=EOF;
- }
-- }
-+ } while ( retval != EOF );
- fclose(fp);
-- fprintf(logfile,"Ranges loaded: %d\n",ntot);
-- printf("* Ranges loaded: %d\n",ntot);
-+ sprintf(msgbuf, "* Ranges loaded: %d\n",ntot);
-+ log_action(msgbuf);
-+ if ( !log2stdout )
-+ printf(msgbuf);
- }
-
- void loadlist_dat(char *filename)
- {
- FILE *fp;
- int ntot=0;
-- char readbuf[200], *name, start_ip[16], end_ip[16];
-+ char readbuf[200], *name, start_ip[16], end_ip[16], msgbuf[255];
- unsigned short ip1_0, ip1_1, ip1_2, ip1_3, ip2_0, ip2_1, ip2_2, ip2_3;
-
- fp=fopen(filename,"r");
- if ( fp == NULL ) {
-- fprintf(logfile,"Error opening %s, aborting...\n", filename);
-+ sprintf(msgbuf,"Error opening %s, aborting...\n", filename);
-+ log_action(msgbuf);
- exit(-1);
- }
-
-@@ -286,38 +386,45 @@ - ntot++;
- }
- fclose(fp);
-- fprintf(logfile,"Ranges loaded: %d\n",ntot);
-- printf("* Ranges loaded: %d\n",ntot);
-+ sprintf(msgbuf, "* Ranges loaded: %d\n", ntot);
-+ log_action(msgbuf);
-+ if ( !log2stdout )
-+ printf(msgbuf);
- }
-
- void reopen_logfile(void)
- {
-+ char msgbuf[255];
-+
- if (logfile != NULL) {
- fclose(logfile);
- logfile=NULL;
- }
- logfile=fopen(logfile_name,"a");
- if (logfile == NULL) {
-- fprintf(stderr, "Unable to open logfile %s\n", logfile_name);
-+ sprintf(msgbuf, "Unable to open logfile %s\n", logfile_name);
-+ log_action(msgbuf);
- exit(-1);
- }
-- fprintf(logfile, "Reopening logfile.\n");
-+ log_action("Reopening logfile.\n");
- }
-
- void my_sahandler(int sig)
- {
-+ char msgbuf[255];
-+
- switch( sig ) {
- case SIGUSR1:
-- fprintf(logfile,"Got SIGUSR1! Dumping stats...\n");
-+ log_action("Got SIGUSR1! Dumping stats...\n");
- ll_show(logfile);
- reopen_logfile();
- break;
- case SIGUSR2:
-- fprintf(logfile,"Got SIGUSR2! Dumping stats to /var/log/MoBlock.stats\n");
-+ log_action("Got SIGUSR2! Dumping stats to /var/log/MoBlock.stats\n");
- ll_log();
- break;
- case SIGHUP:
-- fprintf(logfile,"\nGot SIGHUP! Dumping and resetting stats, reloading blocklist\n\n");
-+ log_action("Got SIGHUP! Dumping and resetting stats, reloading blocklist\n");
- ll_log();
- ll_clear(); // clear stats list
- destroy_tree(); // clear loaded ranges
-@@ -332,17 +439,18 @@ - loadlist_pg2(blocklist_info.filename);
- break;
- default:
-- fprintf(logfile,"Unknown blocklist type while reloading list, contact the developer!\n");
-+ log_action("Unknown blocklist type while reloading list, contact the developer!\n");
- break;
- }
- reopen_logfile();
- break;
- case SIGTERM:
-- fprintf(logfile,"Got SIGTERM! Dumping stats and exiting.\n");
-+ log_action("Got SIGTERM! Dumping stats and exiting.\n");
- ll_log();
- exit(0);
- default:
-- fprintf(logfile,"Received signal = %d but not handled\n",sig);
-+ sprintf(msgbuf,"Received signal = %d but not handled\n",sig);
-+ log_action(msgbuf);
- break;
- }
- }
-@@ -378,7 +486,7 @@ - {
- int id=0, status=0;
- struct nfqnl_msg_packet_hdr *ph;
-- char *payload;
-+ char *payload, msgbuf[255];
- recType tmprec;
-
- ph = nfq_get_msg_packet_hdr(nfa);
-@@ -389,34 +497,78 @@ - switch (ph->hook) {
- case NF_IP_LOCAL_IN:
- if ( find(ntohl(SRC_ADDR(payload)),&tmprec) == STATUS_OK ) {
-+ // we drop the packet instead of rejecting
-+ // we don't want the other host to know we are alive
- status=nfq_set_verdict(qh, id, NF_DROP, 0, NULL);
-- fprintf(logfile,"Blocked IN: %s,hits: %d,SRC: %s\n",tmprec.blockname,tmprec.hits,ip2str(SRC_ADDR(payload)));
-- } else status = nfq_set_verdict(qh, id, NF_ACCEPT, 0, NULL);
-+ sprintf(msgbuf,"Blocked IN: %s,hits: %d,SRC: %s\n",tmprec.blockname,tmprec.hits,ip2str(SRC_ADDR(payload)));
-+ log_action(msgbuf);
-+ }
-+ else if ( unlikely(accept_mark) ) {
-+ // we set the user-defined accept_mark and set NF_REPEAT verdict
-+ // it's up to other iptables rules to decide what to do with this marked packet
-+ status = nfq_set_verdict_mark(qh, id, NF_REPEAT, accept_mark, 0, NULL);
-+ }
-+ else {
-+ // no accept_mark, just NF_ACCEPT the packet
-+ status = nfq_set_verdict(qh, id, NF_ACCEPT, 0, NULL);
-+ }
- break;
- case NF_IP_LOCAL_OUT:
- if ( find(ntohl(DST_ADDR(payload)),&tmprec) == STATUS_OK ) {
-- status=nfq_set_verdict(qh, id, NF_DROP, 0, NULL);
-- fprintf(logfile,"Blocked OUT: %s,hits: %d,DST: %s\n",tmprec.blockname,tmprec.hits,ip2str(DST_ADDR(payload)));
-- } else status = nfq_set_verdict(qh, id, NF_ACCEPT, 0, NULL);
-+ if ( likely(reject_mark) ) {
-+ // we set the user-defined reject_mark and set NF_REPEAT verdict
-+ // it's up to other iptables rules to decide what to do with this marked packet
-+ status = nfq_set_verdict_mark(qh, id, NF_REPEAT, reject_mark, 0, NULL);
-+ }
-+ else {
-+ status = nfq_set_verdict(qh, id, NF_DROP, 0, NULL);
-+ }
-+ sprintf(msgbuf,"Blocked OUT: %s,hits: %d,DST: %s\n",tmprec.blockname,tmprec.hits,ip2str(DST_ADDR(payload)));
-+ log_action(msgbuf);
-+ }
-+ else if ( unlikely(accept_mark) ) {
-+ // we set the user-defined accept_mark and set NF_REPEAT verdict
-+ // it's up to other iptables rules to decide what to do with this marked packet
-+ status = nfq_set_verdict_mark(qh, id, NF_REPEAT, accept_mark, 0, NULL);
-+ }
-+ else {
-+ // no accept_mark, just NF_ACCEPT the packet
-+ status = nfq_set_verdict(qh, id, NF_ACCEPT, 0, NULL);
-+ }
- break;
- case NF_IP_FORWARD:
- if ( find2(ntohl(SRC_ADDR(payload)), ntohl(DST_ADDR(payload)), &tmprec) == STATUS_OK ) {
-- status=nfq_set_verdict(qh, id, NF_DROP, 0, NULL);
-- fprintf(logfile,"Blocked FWD: %s,hits: %d,SRC: %s, DST: %s\n",
-+ if ( likely(reject_mark) ) {
-+ // we set the user-defined reject_mark and set NF_REPEAT verdict
-+ // it's up to other iptables rules to decide what to do with this marked packet
-+ status = nfq_set_verdict_mark(qh, id, NF_REPEAT, reject_mark, 0, NULL);
-+ }
-+ else {
-+ status = nfq_set_verdict(qh, id, NF_DROP, 0, NULL);
-+ }
-+ sprintf(msgbuf,"Blocked FWD: %s,hits: %d,SRC: %s, DST: %s\n",
- tmprec.blockname, tmprec.hits, ip2str(SRC_ADDR(payload)), ip2str(DST_ADDR(payload)));
-- fflush(logfile);
-- } else status = nfq_set_verdict(qh, id, NF_ACCEPT, 0, NULL);
-+ log_action(msgbuf);
-+ }
-+ else if ( unlikely(accept_mark) ) {
-+ // we set the user-defined accept_mark and set NF_REPEAT verdict
-+ // it's up to other iptables rules to decide what to do with this marked packet
-+ status = nfq_set_verdict_mark(qh, id, NF_REPEAT, accept_mark, 0, NULL);
-+ }
-+ else {
-+ // no accept_mark, just NF_ACCEPT the packet
-+ status = nfq_set_verdict(qh, id, NF_ACCEPT, 0, NULL);
-+ }
- break;
- default:
-- fprintf(logfile,"Not NF_LOCAL_IN/OUT/FORWARD packet!\n");
-+ log_action("Not NF_LOCAL_IN/OUT/FORWARD packet!\n");
- break;
- }
- }
- else {
-- fprintf(logfile,"NFQUEUE: can't get msg packet header.\n");
-+ log_action("NFQUEUE: can't get msg packet header.\n");
- return(1); // from nfqueue source: 0 = ok, >0 = soft error, <0 hard error
- }
-- fflush(logfile);
- return(0);
- }
- #endif
-@@ -492,46 +644,48 @@ - struct nfq_q_handle *qh;
- struct nfnl_handle *nh;
- int fd,rv;
-- char buf[BUFSIZE];
-+ char buf[BUFSIZE], msgbuf[255];
-
- h = nfq_open();
- if (!h) {
-- fprintf(logfile, "Error during nfq_open()\n");
-+ log_action("Error during nfq_open()\n");
- exit(-1);
- }
-
- if (nfq_unbind_pf(h, AF_INET) < 0) {
-- fprintf(logfile, "error during nfq_unbind_pf()\n");
-- exit(-1);
-+ log_action("error during nfq_unbind_pf()\n");
-+ //exit(-1);
- }
-
- if (nfq_bind_pf(h, AF_INET) < 0) {
-- fprintf(logfile, "Error during nfq_bind_pf()\n");
-+ log_action("Error during nfq_bind_pf()\n");
- exit(-1);
- }
-
-- fprintf(logfile,"NFQUEUE: binding to queue '%hd'\n", queuenum);
-+ sprintf(msgbuf,"NFQUEUE: binding to queue '%hd'\n", queuenum);
-+ log_action(msgbuf);
- qh = nfq_create_queue(h, queuenum, &nfqueue_cb, NULL);
- if (!qh) {
-- fprintf(logfile, "error during nfq_create_queue()\n");
-+ log_action("error during nfq_create_queue()\n");
- exit(-1);
- }
-
- if (nfq_set_mode(qh, NFQNL_COPY_PACKET, PAYLOADSIZE) < 0) {
-- fprintf(logfile, "can't set packet_copy mode\n");
-+ log_action("can't set packet_copy mode\n");
- exit(-1);
- }
-
- nh = nfq_nfnlh(h);
- fd = nfnl_fd(nh);
-
-- while ((rv = recv(fd, buf, sizeof(buf), 0)) && rv >= 0) {
-+ while ((rv = recv(fd, buf, sizeof(buf), 0)) >= 0) {
- nfq_handle_packet(h, buf, rv);
- }
-
-- printf("NFQUEUE: unbinding from queue 0\n");
-+ log_action("NFQUEUE: unbinding from queue 0\n");
- nfq_destroy_queue(qh);
- nfq_close(h);
-+ nfq_unbind_pf(h, AF_INET);
- return(0);
- #endif
-
-@@ -540,11 +694,16 @@ - void print_options(void)
- {
- printf("\nMoBlock %s by Morpheus",MB_VERSION);
-- printf("\nSyntax: MoBlock -dnp <blocklist> [-b] [-q 0-65535] <logfile>\n\n");
-+ printf("\nSyntax: MoBlock -dnp <blocklist> [-q 0-65535] <logfile>\n\n");
- printf("\t-d\tblocklist is an ipfilter.dat file\n");
- printf("\t-n\tblocklist is a peerguardian 2.x file (.p2b)\n");
- printf("\t-p\tblocklist is a peerguardian file (.p2p)\n");
- printf("\t-q\t0-65535 NFQUEUE number (as specified in --queue-num with iptables)\n");
-+ printf("\t-r MARK\tmark packet with MARK instead of DROP\n");
-+ printf("\t-a MARK\tmark packet with MARK instead of ACCEPT\n");
-+ printf("\t-l\tlog to stdout\n");
-+ printf("\t-s\tlog to syslog\n");
-+ printf("\t-t\tlog timestamping\n\n");
- }
-
- void on_quit()
-@@ -556,6 +715,7 @@ - {
- int ret=0;
- unsigned short int queuenum=0;
-+ char msgbuf[255];
-
- if (argc < 3) {
- print_options();
-@@ -591,10 +751,11 @@ - }
- logfile_name=malloc(strlen(argv[argc-1])+1);
- strcpy(logfile_name,argv[argc-1]);
-+ log2file = 1;
- printf("* Logging to %s\n",logfile_name);
-
- while (1) { //scan command line options
-- ret=getopt(argc, argv, "d:n:p:q:");
-+ ret=getopt(argc, argv, "d:n:p:q:a:r:stl");
- if ( ret == -1 ) break;
-
- switch (ret) {
-@@ -619,6 +780,28 @@ - case 'q':
- queuenum=(unsigned short int)atoi(optarg);
- break;
-+ case 'r':
-+ reject_mark=(u_int32_t)atoi(optarg);
-+ printf("* DROP MARK: %d\n", reject_mark);
-+ reject_mark=htonl(reject_mark);
-+ break;
-+ case 'a':
-+ accept_mark=(u_int32_t)atoi(optarg);
-+ printf("* ACCEPT MARK: %d\n", accept_mark);
-+ accept_mark=htonl(accept_mark);
-+ break;
-+ case 's':
-+ log2syslog = 1;
-+ printf("* Logging to syslog\n");
-+ break;
-+ case 't':
-+ timestamp = 1;
-+ printf("* Log timestamp enabled\n");
-+ break;
-+ case 'l':
-+ log2stdout = 1;
-+ printf("* Log to stdout enabled\n");
-+ break;
- case '?': // unknown option
- print_options();
- exit(-1);
-@@ -626,10 +809,14 @@ - }
- }
-
-- printf("* Merged ranges: %d\n", merged_ranges);
-- fprintf(logfile, "Merged ranges: %d\n", merged_ranges);
-- printf("* Skipped useless ranges: %d\n", skipped_ranges);
-- fprintf(logfile,"Skipped useless ranges: %d\n", skipped_ranges);
-+ sprintf(msgbuf, "* Merged ranges: %d\n", merged_ranges);
-+ log_action(msgbuf);
-+ if ( !log2stdout )
-+ printf(msgbuf);
-+ sprintf(msgbuf,"* Skipped useless ranges: %d\n", skipped_ranges);
-+ log_action(msgbuf);
-+ if ( !log2stdout )
-+ printf(msgbuf);
- fflush(NULL);
-
- netlink_loop(queuenum);
-diff -Naur MoBlock-0.8_orig/README MoBlock-0.8/README ---- MoBlock-0.8_orig/README 2006-03-22 12:44:31.000000000 -0500 -+++ MoBlock-0.8/README 2007-11-22 08:10:44.000000000 -0500 -@@ -1,5 +1,5 @@ - --MoBlock README v0.8 -+MoBlock README v0.9 - http://moblock.berlios.de - - .Introduction. -@@ -47,6 +47,22 @@ - ip_conntrack 40044 1 ipt_state - iptable_filter 2176 1 - ip_tables 17600 3 ipt_NFQUEUE,ipt_state,iptable_filter -+ -+ ...and these with kernel 2.6.23 using NFQUEUE interface: -+ -+ nfnetlink_queue 9344 1 -+ nfnetlink 4568 2 nfnetlink_queue -+ ipt_REJECT 3520 2 -+ xt_mark 1600 2 -+ nf_conntrack_ipv4 12424 5 -+ iptable_filter 2308 1 -+ ip_tables 10328 1 iptable_filter -+ xt_state 1984 5 -+ nf_conntrack 48356 2 nf_conntrack_ipv4,xt_state -+ xt_NFQUEUE 1664 3 -+ x_tables 11396 5 ipt_REJECT,xt_mark,ip_tables,xt_state,xt_NFQUEUE -+ -+ (notice that ipt_NFQUEUE has changed to xt_NFQUEUE, same thing for other modules too) - - 2) A valid guarding.p2p/ipfilter.dat/p2p.p2b host file in /etc ( /etc/guarding.p2p ). - MoBlock tries to skip malformed or duplicate ranges but -@@ -140,8 +156,18 @@ - To specify a NFQUEUE queue number: - - ./moblock -p /etc/guarding.p2p -q 5 MoBlock.log -+ -+ From version 0.9 MoBlock supports MARKing packets and RETURN them to -+ iptables, there's an example start script (MoBlock-nfq-reject.sh) that -+ uses this feature to REJECT packet instead of dropping them. It can help -+ in complex firewall configuration where you need more control of packets -+ flow after MoBlock inspection. -+ See the mentioned start script for reference, you can set the MARK value -+ for packets that MoBlock would drop (ip in list) with the "-r" command line -+ option and for packets that MoBlock would accept (ip not in list) with -+ the "-a" command line option. - -- To stop it: -+ To stop MoBlock: - - kill -TERM <MoBlockPid> - -@@ -149,7 +175,7 @@ - To obtain stats about blocked ranges while it's running: - - kill -USR1 <MoBlockPid> # write stats to logfile -- kill -USR2 <MoBlockPid> # write stats to /var/log/MoBlock.stats -+ kill -USR2 <MoBlockPid> # write stats to /var/log/MoBlock.stats - - ** NEW: to reload the blocklist while MoBlock is running send to it the - HUP signal: -@@ -168,7 +194,10 @@ - took some code and ideas from his FTwall - - Andrew de Quincey (adq at lidskialf dot net) for regular expressions - and command line args patch --- Maximilian Mehnert (clessing at freenet dot de) for logfile rotation -+- clessing at freenet dot de for logfile rotation - patches, pid file creation, start script, fixes/files for debian packaging -+- David Walluck, patch for proper loading of p2b files -+- jre, for continuing clessing work on debian packaging and many other -+ contributions - --Last Updated: 20/Mar/2006 -+Last Updated: 15/Oct/2007 -diff -Naur MoBlock-0.8_orig/rbt.c MoBlock-0.8/rbt.c ---- MoBlock-0.8_orig/rbt.c 2006-03-22 12:44:31.000000000 -0500 -+++ MoBlock-0.8/rbt.c 2008-02-10 11:56:08.000000000 -0500 -@@ -19,7 +19,7 @@ - #include <stdarg.h> - #include <time.h> - --#define RBT_VERSION 0.8 -+#define RBT_VERSION 0.9 - #define BNAME_LEN 80 - - /* implementation dependend declarations */ -@@ -421,7 +421,7 @@ - - statusEnum insert(keyType key, recType *rec) { - nodeType *current, *parent, *x; -- keyType tmpkey; -+ //keyType tmpkey; - recType tmprec; - int ret; - -@@ -433,6 +433,23 @@ - current = root; - parent = 0; - while (current != NIL) { -+ if (compEQ2(current->key, key, rec->ipmax)) { // current node key is inside new range to be inserted -+ strcpy(tmprec.blockname, rec->blockname); // block name from new range -+ if (compLT(current->rec.ipmax, rec->ipmax)) -+ tmprec.ipmax = rec->ipmax; -+ else tmprec.ipmax = current->rec.ipmax; -+ tmprec.hits = 0; -+ //printf("deleting node :%lu\n", current->key); -+ ret=delete(current->key); -+ if ( ret != STATUS_OK ) -+ return(ret); -+ ret=insert(key, &tmprec); -+ if ( ret == STATUS_OK ) { -+ printf("new merge\n"); -+ return(STATUS_MERGED); -+ } -+ else return(ret); -+ } - if (compEQ(key, current->key)) { - if ( rec->ipmax > current->rec.ipmax ) { - current->rec.ipmax=rec->ipmax; -@@ -458,7 +475,7 @@ - } - } - //check if higher ip (ipmax) is already in a range -- if (compEQ2(rec->ipmax,current->key,current->rec.ipmax)) { -+ /*if (compEQ2(rec->ipmax,current->key,current->rec.ipmax)) { - fprintf(logfile,"higher ip in range\n"); - tmpkey=key; - strcpy(tmprec.blockname,current->rec.blockname); -@@ -470,7 +487,7 @@ - if ( ret == STATUS_OK ) - return(STATUS_MERGED); - else return(ret); -- } -+ }*/ - parent = current; - current = compLT(key, current->key) ? - current->left : current->right; -@@ -495,7 +512,7 @@ - } else { - root = x; - } -- -+ //printf("new node, key: %lu, parent: %lu\n", x->key, parent ? parent->key : 0); - insertFixup(x); - lastFind = NULL; - diff --git a/abs/extra/community/moblock/moblock_include.patch b/abs/extra/community/moblock/moblock_include.patch deleted file mode 100644 index 644e824..0000000 --- a/abs/extra/community/moblock/moblock_include.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- MoBlock-0.8/MoBlock.c.orig 2008-08-15 14:41:49.000000000 -0400 -+++ MoBlock-0.8/MoBlock.c 2008-08-15 14:43:45.000000000 -0400 -@@ -32,6 +32,7 @@ - #include <netinet/udp.h>
- #include <sys/socket.h>
- #include <arpa/inet.h>
-+#include <limits.h>
- #include <linux/netfilter_ipv4.h>
- #include <signal.h>
- #include <regex.h>
diff --git a/abs/extra/community/mobloquer/PKGBUILD b/abs/extra/community/mobloquer/PKGBUILD deleted file mode 100644 index b6254d5..0000000 --- a/abs/extra/community/mobloquer/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# Contributor: Daniele Marinello <marinz att email dot it> - -pkgname=mobloquer -pkgver=0.6 -pkgrel=6 -pkgdesc="A graphical front end for moblock" -arch=('i686' 'x86_64') -url="http://mobloquer.foutrelis.com/" -license=('GPL') -depends=('qt' 'blockcontrol') -source=(http://downloads.sourceforge.net/mobloquer/$pkgname-$pkgver.tar.gz) -md5sums=('6363ee4c42da1d85367fdd65d4bf42ca') - -build() { - - cd $startdir/src/$pkgname-$pkgver - - qmake - make || return 1 - - install -d ${pkgdir}/usr/share/applications ${pkgdir}/usr/bin ${pkgdir}/usr/share/pixmaps - install -m 644 -p $startdir/src/$pkgname-$pkgver/images/mobloquer.png $startdir/pkg/usr/share/pixmaps/ - install -m 644 -p $startdir/src/$pkgname-$pkgver/other/Mobloquer.desktop $startdir/pkg/usr/share/applications/ - install -m 755 -p $startdir/src/$pkgname-$pkgver/mobloquer $startdir/pkg/usr/bin/mobloquer -} - diff --git a/abs/extra/community/motion-svn/PKGBUILD b/abs/extra/community/motion-svn/PKGBUILD deleted file mode 100644 index dcbd162..0000000 --- a/abs/extra/community/motion-svn/PKGBUILD +++ /dev/null @@ -1,42 +0,0 @@ -# Contributor: Demind <demind@gmail.com> -pkgname=motion-svn -pkgver=1 -pkgrel=1 -pkgdesc="Motion is a software motion detector. It grabs images from video4linux devices and/or from webcams." -arch=('i686' 'x86_64') -url="http://www.lavrsen.dk/twiki/bin/view/Motion/WebHome" -license=('GPL2') -depends=('zlib' 'libjpeg') -makedepends=('subversion') -provides=('motion') -conflicts=('motion') -install="motion-svn.install" -source=('rc.motion') -md5sums=('fc09828564850824f8549d258053e0b6') - -_svntrunk=http://www.lavrsen.dk/svn/motion/trunk/ -_svnmod=motion - -build() { - cd $startdir/src - - msg "Retrieving sources" - svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod - - [ -d ./$_svnmod-build ] && rm -fr ./$_svnmod-build - cp -r ./$_svnmod ./$_svnmod-build - cd ./$_svnmod-build - - msg "SVN checkout done or server timeout" - msg "Starting build" - - ./configure \ - --prefix=/usr \ - --sysconfdir=/etc - - make || return 1 - make DESTDIR=$startdir/pkg/ install || return 1 - install -D -m755 $startdir/src/rc.motion $startdir/pkg/etc/rc.d/motion - rm -rf $startdir/src/$_svnmod-build -} - diff --git a/abs/extra/community/motion-svn/motion-svn.install b/abs/extra/community/motion-svn/motion-svn.install deleted file mode 100644 index f88a2fc..0000000 --- a/abs/extra/community/motion-svn/motion-svn.install +++ /dev/null @@ -1,11 +0,0 @@ -# arg 1: the new package version -post_install() { - echo "" - echo ">>> An example configuration has been saved to /etc/motion-dispatch.conf" -} - -op=$1 -shift -[ "$(type -t "$op")" = "function" ] && $op "$@" - -# vim:set ts=2 et: diff --git a/abs/extra/community/motion-svn/rc.motion b/abs/extra/community/motion-svn/rc.motion deleted file mode 100644 index 7dd027c..0000000 --- a/abs/extra/community/motion-svn/rc.motion +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/bin/motion` -case "$1" in - start) - stat_busy "Starting Motion" - [ -z "$PID" ] && /usr/bin/motion - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon motion - stat_done - fi - ;; - stop) - stat_busy "Stopping Motion" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon motion - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/abs/extra/community/mre/PKGBUILD b/abs/extra/community/mre/PKGBUILD deleted file mode 100644 index 4868d33..0000000 --- a/abs/extra/community/mre/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -pkgname=mre -pkgver=1.1.2 -pkgrel=6 -_kernver=2.6.36-LinHES -pkgdesc="Myth Recording Extender" -arch=('i686') -url="http://sourceforge.net/projects/mythtv-tools/" -license=('GPL-2') -depends=('peardb' 'pearlog') -source=('mre-1.1.2.tar.gz' 'patch.diff' 'run' 'mre.lr') -install=('mre.install') - -build() { - cd ${srcdir}/mre-1.1.2/ - patch -p0 < ../patch.diff - ./configure - make INST_ROOT=${pkgdir} install - cp ${srcdir}/mre-1.1.2/conf/mre.conf ${pkgdir}/etc/mre.conf - cp ${srcdir}/mre-1.1.2/test/test_title_subtitle.php\ - ${pkgdir}/usr/local/bin/ - chmod a+x ${pkgdir}/usr/local/bin/test_title_subtitle.php - rm -r ${pkgdir}/etc/init.d - mkdir -p ${pkgdir}/var/log/mre - chown root:log "${pkgdir}/var/log/mre" - touch ${pkgdir}/var/log/mre/mre.log - chown mythtv:mythtv "${pkgdir}/var/log/mre/mre.log" - mkdir -p ${pkgdir}/etc/sv/mre - cp ${srcdir}/run ${pkgdir}/etc/sv/mre/run - mkdir -p ${pkgdir}/etc/logrotate.d - cp ${srcdir}/mre.lr ${pkgdir}/etc/logrotate.d/mre.lr -} -md5sums=('8ab312e7597ae9413a57bd5e9a068096' - 'ed6cb9012c88d589e26132796132bf25' - '10e01d572b45ad718e49ff9ef5c230c5' - '6d71ab57afd974c5130c994b94e8746f') diff --git a/abs/extra/community/mre/mre-1.1.2.tar.gz b/abs/extra/community/mre/mre-1.1.2.tar.gz Binary files differdeleted file mode 100644 index 3846e4b..0000000 --- a/abs/extra/community/mre/mre-1.1.2.tar.gz +++ /dev/null diff --git a/abs/extra/community/mre/mre.install b/abs/extra/community/mre/mre.install deleted file mode 100755 index bb08427..0000000 --- a/abs/extra/community/mre/mre.install +++ /dev/null @@ -1,20 +0,0 @@ -# arg 1: the new package version -post_install() { - add_service.sh mre - sed -i.pacsave '/^open_basedir/s|$|:/var/log/mre:/usr/local/lib/mre|' /etc/php/php.ini -} - -post_upgrade() { - /bin/true -} - - -# arg 1: the old package version -post_remove() { - remove_service.sh mre - sed -i.pacsave '/^open_basedir/s|:/var/log/mre:/usr/local/lib/mre||' /etc/php/php.ini -} - -op=$1 -shift -$op $* diff --git a/abs/extra/community/mre/mre.lr b/abs/extra/community/mre/mre.lr deleted file mode 100644 index 3b54c23..0000000 --- a/abs/extra/community/mre/mre.lr +++ /dev/null @@ -1,9 +0,0 @@ -/var/log/mre/mre.log { - copytruncate - daily - size 10M - missingok - rotate 7 - compress - notifempty -} diff --git a/abs/extra/community/mre/patch.diff b/abs/extra/community/mre/patch.diff deleted file mode 100644 index 38a501a..0000000 --- a/abs/extra/community/mre/patch.diff +++ /dev/null @@ -1,293 +0,0 @@ ---- ../mre-1.1.2/class/MythClient.php.original 2006-04-05 17:39:13.000000000 -0500 -+++ ../mre-1.1.2/class/MythClient.php 2010-05-14 10:16:54.000000000 -0500 -@@ -112,7 +112,7 @@ - return '0'; - } - foreach($out as $line) -- if(preg_match('/^Library API version: (.*)$/', $line, $matches)) -+ if(preg_match('/^Library API *: (.*)$/', $line, $matches)) - return $matches[1]; - return '0'; - } ---- ../mre-1.1.2/conf/mre.conf.in.original 2006-08-13 16:48:57.000000000 -0500 -+++ ../mre-1.1.2/conf/mre.conf.in 2010-05-04 00:25:26.000000000 -0500 -@@ -28,9 +28,9 @@ - ; *** Application settings - ; Unprivledged user to run as, if started as root - ; This script will not run as root --user = nobody -+user = mythtv - ; Run MRE as daemon? Requires pcntl_* functions built into PHP --daemon = true -+daemon = false - ; Number of minutes to sleep between runs - sleep = 5 - ; Logging level (0 = normal, 1 = +error, 2 = +warning, 3 = +debug) ---- ../mre-1.1.2/class/EventFactory.php.original 2006-09-22 10:18:07.000000000 -0500 -+++ ../mre-1.1.2/class/EventFactory.php 2010-08-28 00:02:37.000000000 -0500 -@@ -50,7 +50,7 @@ - $obj = new NHLEvent($data['subtitle']); break; - case 'MLB Baseball': - $obj = new MLBEvent($data['subtitle']); break; -- case 'NFL Football': -+ case ($data['title']=='NFL Football' || $data['title']=='NFL Preseason Football'): - $obj = new NFLEvent($data['subtitle']); break; - case 'College Football': - $obj = new NCAAFEvent($data['subtitle']); break; ---- ../mre-1.1.2/class/MLBEvent.php.original 2006-11-05 17:06:57.000000000 -0600 -+++ ../mre-1.1.2/class/MLBEvent.php 2010-08-28 00:02:37.000000000 -0500 -@@ -27,7 +27,7 @@ - /** - * URL to grab game info from - */ -- const url = 'http://scores.espn.go.com/mlb/scoreboard'; -+ const url = 'http://sports.espn.go.com/mlb/bottomline/scores'; - - /** - * Class constructor. -@@ -43,41 +43,25 @@ - trigger_error("Unable to generate valid search terms! [$gameInfo]", E_USER_WARNING); - else - { -- $data = file(self::url); -- $games = array(); -- if($data !== FALSE) -- { -- // Split the huge string into individual game data -- foreach($data as $line) -- if(preg_match('/\<div id="allGames".*\>.*/', $line)) -- { -- while(($loc = strrpos($line, 'teamTop')) !== FALSE) -- { -- $games[] = substr($line, $loc); -- $line = substr($line, 0, $loc); -- } -- break; -- } -- if(!sizeof($games)) -- trigger_error("Unable to find valid game data within source!", E_USER_WARNING); -- foreach($criteria as $term) -- { -- foreach($games as $game) -- { -- if(preg_match('/' . preg_quote($term) . '/', $game)) -- if(preg_match('/teamTop.*\>(.*)\<\/td\>/U', $game, $matches)) -- { -- $this->setStatus($matches[1]); -- if(preg_match('/^(Final|Postponed)/', $matches[1])) -- $this->setEventOver(TRUE); -- else -- $this->setEventOver(FALSE); -- $this->setValid(TRUE); -- break 2; -- } -- } -+ $data = file(self::url); -+ if($data) -+ { -+ $data_array=explode("&", $data[0]); -+ foreach($data_array as $line) -+ { -+ $line=str_replace("%20", " ", $line); -+ $line=str_replace("Chicago Sox", "Chicago White Sox", $line); #Program guide gives Chicago White Sox, website gives Chicago Sox -+ if((strpos($line,$criteria[0]))&&(strpos($line,$criteria[1]))) -+ { -+ if((strpos($line,'FINAL'))or(strpos($line,'Postponed'))) -+ $this->setEventOver(TRUE); -+ else -+ $this->setEventOver(FALSE); -+ $this->setValid(TRUE); -+ break; -+ } - } -- } -+ } - } - if(!$this->isValid()) - trigger_error("Unable to find MLB info for '$gameInfo'! The MLB parser may need to be updated.", E_USER_WARNING); ---- ../mre-1.1.2/class/NFLEvent.php.original 2006-11-05 17:06:57.000000000 -0600 -+++ ../mre-1.1.2/class/NFLEvent.php 2010-08-28 00:06:56.000000000 -0500 -@@ -27,7 +27,7 @@ - /** - * URL to grab game info from - */ -- const url = 'http://scores.espn.go.com/nfl/scoreboard'; -+ const url = 'http://sports.espn.go.com/nfl/bottomline/scores'; - - /** - * Class constructor. -@@ -44,33 +44,23 @@ - else - { - $data = file(self::url); -- $games = array(); -- if($data !== FALSE) -- { -- // Split the huge string into individual game data -- foreach($data as $line) -- if(preg_match('/\<td class="teamTop.*".*\>.*/', $line)) -- $games[] = $line; -- if(!sizeof($games)) -- trigger_error("Unable to find valid game data within source!", E_USER_WARNING); -- foreach($criteria as $term) -- { -- foreach($games as $game) -- { -- if(preg_match('/' . preg_quote($term) . '/', $game)) -- if(preg_match('/teamTop.*\>(.*)\<\/td\>/U', $game, $matches)) -- { -- $this->setStatus($matches[1]); -- if(preg_match('/^(Final|Postponed)/', $matches[1])) -- $this->setEventOver(TRUE); -- else -- $this->setEventOver(FALSE); -- $this->setValid(TRUE); -- break 2; -- } -- } -- } -- } -+ if($data) -+ { -+ $data_array=explode("&", $data[0]); -+ foreach($data_array as $line) -+ { -+ $line=str_replace("%20", " ", $line); -+ if((strpos($line,$criteria[0]))&&(strpos($line,$criteria[1]))) -+ { -+ if(strpos($line,'FINAL')) -+ $this->setEventOver(TRUE); -+ else -+ $this->setEventOver(FALSE); -+ $this->setValid(TRUE); -+ break; -+ } -+ } -+ } - } - if(!$this->isValid()) - trigger_error("Unable to find NFL info for '$gameInfo'! The NFL parser may need to be updated.", E_USER_WARNING); ---- ../mre-1.1.2/class/NBAEvent.php.original 2006-11-05 17:06:57.000000000 -0600 -+++ ../mre-1.1.2/class/NBAEvent.php 2010-08-28 00:09:50.000000000 -0500 -@@ -27,7 +27,7 @@ - /** - * URL to grab game info from - */ -- const url = 'http://scores.espn.go.com/nba/scoreboard'; -+ const url = 'http://sports.espn.go.com/nba/bottomline/scores'; - - /** - * Class constructor. -@@ -44,35 +44,23 @@ - else - { - $data = file(self::url); -- if($data !== FALSE) -- foreach($criteria as $term) -- { -- $status = ''; -- $i = 0; -- while($i < sizeof($data)) -- { -- if(preg_match('/' . preg_quote($term) . '/', $data[$i])) -- { -- $status = $data[$i]; -- break; -- } -- ++$i; -- } -- if($i == sizeof($data)) -- --$i; -- -- if(preg_match('/id.*clock"\>(.*)\<\/div/U', $data[$i], $match) || -- preg_match('/id.*clock"\>(.*)\<\/div/U', $data[$i-1], $match)) -- { -- $this->setStatus($match[1]); -- if(preg_match('/^Final/', $match[1])) -- $this->setEventOver(TRUE); -- else -- $this->setEventOver(FALSE); -- $this->setValid(TRUE); -- break; -- } -+ if($data) -+ { -+ $data_array=explode("&", $data[0]); -+ foreach($data_array as $line) -+ { -+ $line=str_replace("%20", " ", $line); -+ if((strpos($line,$criteria[0]))&&(strpos($line,$criteria[1]))) -+ { -+ if(strpos($line,'FINAL')) -+ $this->setEventOver(TRUE); -+ else -+ $this->setEventOver(FALSE); -+ $this->setValid(TRUE); -+ break; -+ } - } -+ } - } - if(!$this->isValid()) - trigger_error("Unable to find NBA info for '$gameInfo'! The NBA parser may need to be updated.", E_USER_WARNING); ---- ../mre-1.1.2/class/NHLEvent.php.original 2006-11-05 17:06:57.000000000 -0600 -+++ ../mre-1.1.2/class/NHLEvent.php 2010-08-28 00:09:04.000000000 -0500 -@@ -27,7 +27,7 @@ - /** - * URL to grab game info from - */ -- const url = 'http://scores.espn.go.com/nhl/scoreboard'; -+ const url = 'http://sports.espn.go.com/nhl/bottomline/scores'; - - /** - * Class constructor. -@@ -39,32 +39,29 @@ - parent::__construct(); - - $criteria = $this->generateSearchTerms($gameInfo); -+ - if(!sizeof($criteria)) - trigger_error("Unable to generate valid search terms! [$gameInfo]", E_USER_WARNING); - else - { - $data = file(self::url); -- if($data !== FALSE) -- foreach($criteria as $term) -- { -- $status = ''; -- foreach($data as $line) -- if(preg_match('/' . preg_quote($term) . '/', $line)) -- { -- $status = $line; -- break; -- } -- if(preg_match('/id.*st"\>(.*)\<\/td/U', $status, $match)) -- { -- $this->setStatus($match[1]); -- if(preg_match('/^Final/', $match[1])) -- $this->setEventOver(TRUE); -- else -- $this->setEventOver(FALSE); -- $this->setValid(TRUE); -- break; -- } -+ if($data) -+ { -+ $data_array=explode("&", $data[0]); -+ foreach($data_array as $line) -+ { -+ $line=str_replace("%20", " ", $line); -+ if((strpos($line,$criteria[0]))&&(strpos($line,$criteria[1]))) -+ { -+ if(strpos($line,'FINAL')) -+ $this->setEventOver(TRUE); -+ else -+ $this->setEventOver(FALSE); -+ $this->setValid(TRUE); -+ break; -+ } - } -+ } - } - if(!$this->isValid()) - trigger_error("Unable to find NHL info for '$gameInfo'! The NHL parser may need to be updated.", E_USER_WARNING);
\ No newline at end of file diff --git a/abs/extra/community/mre/run b/abs/extra/community/mre/run deleted file mode 100755 index 94381b3..0000000 --- a/abs/extra/community/mre/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -export TERM=linux -. /etc/rc.conf -. /etc/rc.d/functions -stat_runit "Starting mythrecordingextender" - -export HOME=/home/mythtv - -sv start mythbackend || exit 1 -sleep 5 - -exec /usr/local/bin/mre.php diff --git a/abs/extra/community/mutagen/PKGBUILD b/abs/extra/community/mutagen/PKGBUILD new file mode 100644 index 0000000..5e3d7b0 --- /dev/null +++ b/abs/extra/community/mutagen/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 149368 2012-02-07 08:50:20Z eric $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> + +pkgname=mutagen +pkgver=1.20 +pkgrel=4 +pkgdesc="An audio metadata tag reader and writer" +arch=('any') +url="http://code.google.com/p/mutagen/" +license=('GPL2') +depends=('python2') +source=(http://mutagen.googlecode.com/files/${pkgname}-${pkgver}.tar.gz{,.sig}) +sha1sums=('7a8c1918160e6b5d24acd146f57c08ed942a2fa8' + '046c2d763cd59f86ee920a6dc28a32f86b555473') + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + python2 setup.py test +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + python2 setup.py install --root="${pkgdir}" + install -d "${pkgdir}/usr/bin" + install -m755 tools/* "${pkgdir}/usr/bin" + sed -i 's|^#!.*/usr/bin/env.*python|#!/usr/bin/env python2|' "${pkgdir}"/usr/bin/* \ + "${pkgdir}/usr/lib/python2.7/site-packages/mutagen/__init__.py" +} diff --git a/abs/extra/community/mythpywii/CONTROLS b/abs/extra/community/mythpywii/CONTROLS deleted file mode 100644 index d733964..0000000 --- a/abs/extra/community/mythpywii/CONTROLS +++ /dev/null @@ -1,25 +0,0 @@ - * Keypad : same as keypad on keyboard - * A : Enter (Accept, OK, next, .) - * Minus (-) : d (Delete) - * Home : escape (Exit to previous menu/exit mythfrontend) - * Plus (+) : p (Play/pause) - * 1 : Info - * 2 : Menu - * B + left : rewind to beginning of video - * B + twist wiimote : rewind (if twisted to the left) or fastforward - (otherwise) with speed dependant on twist amount. - * B + A + twist wiimote: timestretching . slower (if twisted left) or - faster (if twisted right) - -A comment on twisting: -Point the wii remote at the screen, and twist from the elbow so that it - continues to point at the screen. - -The maximum fastforward/rewind speed is 180x. The speeds are dictated by -mythfrontend itself. When you rotate the wiimote, you will feel a slight -vibration (0.05 seconds) to let you know you have gone up or down a speed -segment. To stop fastforwarding/rewinding, simply let go of B. - -Beware: there is no power saving built in. However you should be able to -turn the wiimote off (power button) when not in use, and turn it back on -by holding down 1 and 2 to make it sync. diff --git a/abs/extra/community/mythpywii/PKGBUILD b/abs/extra/community/mythpywii/PKGBUILD deleted file mode 100644 index 3d4cf92..0000000 --- a/abs/extra/community/mythpywii/PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# $Id: PKGBUILD 5936 2008-07-21 20:24:16Z thomas $ -# Maintainer: Cecil Watson<knoppmyth@gmail.com> - -pkgname=mythpywii -pkgver=17 -pkgrel=9 -pkgdesc="Control MythTV using Wiimote." -arch=('i686' 'x86_64') -license=('GPL2') -url="http://www.benjiegillam.com/" -depends=('bluez' 'python-pybluez' 'cwiid-git') -install=mythpywii.install -source=(http://www.benjiegillam.com/code/myth_py_wii.py \ - wiimote.rules mythpywii.install CONTROLS) - -build() { - - /bin/true - -} - -package() { - install -D -m755 ${srcdir}/myth_py_wii.py ${startdir}/pkg/usr/bin/myth_py_wii.py || return 1 - install -D -m644 ${srcdir}/wiimote.rules ${startdir}/pkg/etc/udev/rules.d/z90-wiimote.rules || return 1 - install -d -o mythtv -g mythtv ${startdir}/pkg/home/mythtv/.cwiid/wminput || return 1 - install -D -m755 -o mythtv -g mythtv /etc/cwiid/wminput/{acc_led,buttons,gamepad,neverball,nunchuk_stick2btn,acc_ptr,ir_ptr,nunchuk_acc_ptr} ${startdir}/pkg/home/mythtv/.cwiid/wminput || return 1 - install -D -m644 ${srcdir}/CONTROLS ${startdir}/pkg/usr/share/docs/mythpywii/CONTROLS || return 1 - cd ${startdir}/pkg/home/mythtv/.cwiid/wminput - ln -s acc_led default -} -md5sums=('52b756c403349640c3e66f485b6c0a54' - '0d817a971d414b9320587a4cf289386b' - '64fa8dbd324dac68f71753ebd828d358' - '0872cbdb3def3dd9aa2b97b191ad76d8') diff --git a/abs/extra/community/mythpywii/mythpywii.install b/abs/extra/community/mythpywii/mythpywii.install deleted file mode 100644 index 8d0b867..0000000 --- a/abs/extra/community/mythpywii/mythpywii.install +++ /dev/null @@ -1,59 +0,0 @@ -post_install() { - . /home/mythtv/.mythtv/mysql.txt - # Enable the Network Remote Control Interface for use with the wiimote. - # Get local machine's hostname - HOST=`cat /etc/hostname` - # Update mysql for Network Remote Control Support - mysql -u mythtv -pmythtv --host=${DBHostName} mythconverg -e \ - "UPDATE settings SET data = '1' WHERE value = 'NetworkControlEnabled' AND hostname = '${HOST}'"; - echo "------------------------------------------------------------" - echo "myth_py_wii.py expects the Network Control Port to be set to" - echo "mythtv's default port of 6546. It will not work if you have" - echo "changed it to something else." - echo "------------------------------------------------------------" - # Add myth_py_wii.py to ~/mythtv/.fluxbox/apps before LinHES-run - sed -i '/LinHES-run/ i [startup] {/usr/bin/myth_py_wii.py >/dev/null}' /home/mythtv/.fluxbox/apps - # udev needs to pick up our new rule for the mythpywii. - udevadm trigger --subsystem-match="misc" --subsystem-match="bluetooth" - # Add the uinput module - modprobe uinput - # Ensure this module is loaded across reboots - echo "# uinput is needed by mythpywii" >> /etc/modules.mythvantage - echo "uinput" >> /etc/modules.mythvantage - # Bring up the bluetooth interface -- udev will do this after reboot - /usr/sbin/hciconfig hci0 up - # Punting on the multiple bluetooth adapter question. - echo "It is assumed your bluetooth adapter will be hci0." - echo "If you have more than one bluetooth adapter, you" - echo "may need to edit /etc/udev/rules.d/z90-wiimote.rules" - echo "--------------------------------------------------------------" - echo "--------------------------------------------------------------" - # Unfortunately there does not seem to be a way to do this without - # the user manually intervening. - echo "To use your wiimote you will need to restart the frontend service." - echo "$ sudo sv restart frontend" - echo "or simply reboot your machine." - echo "--------------------------------------------------------------" - echo "--------------------------------------------------------------" - echo "After frontend restart, you should now be able to pair your" - echo "Wiimote with your bluetooth adapter by pressing 1 & 2 at the" - echo "same time. After a few seconds the wiimote should vibrate and the" - echo "LEDs will show [ # . . # ] where # is on and . is off." - echo "--------------------------------------------------------------" - echo "See /usr/share/docs/mythpywii/CONTROLS for more information." - echo "--------------------------------------------------------------" -} - -post_remove() { - . /home/mythtv/.mythtv/mysql.txt - # kill myth_py_wii.py - WIIPID=`pidof -o %PPID /usr/bin/myth_py_wii.py` - [ -n "$WIIPID" ] && kill $WIIPID - # Remove uinput - sed -i '/uinput/d' /etc/modules.mythvantage - # Remove line in .fluxbox/apps - sed -i '/myth_py_wii.py/d' /home/mythtv/.fluxbox/apps - # Remove network remote control support - mysql -u mythtv -pmythtv --host=${DBHostName} mythconverg -e \ - "UPDATE settings SET data = '0' WHERE value = 'NetworkControlEnabled' AND hostname = '${HOST}'"; -} diff --git a/abs/extra/community/mythpywii/wiimote.rules b/abs/extra/community/mythpywii/wiimote.rules deleted file mode 100644 index 4bb2d9d..0000000 --- a/abs/extra/community/mythpywii/wiimote.rules +++ /dev/null @@ -1,6 +0,0 @@ -# For Bluetooth/Wiimote - KERNEL=="uinput", MODE="0660", GROUP="mythtv" - -# Automaticly bring up/down the bluetooth interface - ACTION=="add", KERNEL=="hci%n", SUBSYSTEM=="bluetooth", RUN+="/usr/sbin/hciconfig hci%n up" - ACTION=="remove", KERNEL=="hci%n", SUBSYSTEM=="bluetooth", RUN+="/usr/sbin/hciconfig hci%n down" diff --git a/abs/extra/community/ncdu/PKGBUILD b/abs/extra/community/ncdu/PKGBUILD deleted file mode 100644 index a9f83e6..0000000 --- a/abs/extra/community/ncdu/PKGBUILD +++ /dev/null @@ -1,21 +0,0 @@ -# Contributor: lp76 <l.peduto@gmail.com> -# Maintainer: Daenyth <Daenyth+Arch AT gmail DOT com> -pkgname=ncdu -pkgver=1.7 -pkgrel=1 -pkgdesc="An NCurses version of the famous old 'du' unix command" -arch=('i686' 'x86_64') -url="http://dev.yorhel.nl/ncdu/" -license=('MIT') -depends=('ncurses') -source=(http://dev.yorhel.nl/download/$pkgname-$pkgver.tar.gz) -md5sums=('172047c29d232724cc62e773e82e592a') - -build() { - cd $srcdir/$pkgname-$pkgver - - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR=$pkgdir install || return 1 - install -Dm644 COPYING $pkgdir/usr/share/licenses/$pkgname/LICENSE -} diff --git a/abs/extra/community/network-ups-tools/PKGBUILD b/abs/extra/community/network-ups-tools/PKGBUILD deleted file mode 100644 index 1644c2e..0000000 --- a/abs/extra/community/network-ups-tools/PKGBUILD +++ /dev/null @@ -1,53 +0,0 @@ -# $Id: PKGBUILD 12757 2010-03-13 04:22:57Z dgriffiths $ -# Maintainer: Roman Kyrylych <roman@archlinux.org> -# Contributor: Giuseppe Lucarelli <luk@rebelsoft.org> - -pkgname=network-ups-tools -pkgver=2.4.3 -pkgrel=5 -pkgdesc="NUT is a collection of programs for monitoring and administering UPS hardware" -arch=('i686' 'x86_64') -url="http://www.networkupstools.org/" -license=('GPL2') -depends=('openssl' 'hal' 'gd') -makedepends=('libusb') -backup=(etc/ups/{ups.conf,upsd.conf,upsd.users,upsmon.conf,upssched.conf}) -install=nut.install -source=(http://www.networkupstools.org/source/2.4/nut-$pkgver.tar.gz run.upsd finish.upsd) -options=('!emptydirs' '!libtool') - -build() { -cd $srcdir/nut-$pkgver -./configure --with-user=nut \ ---prefix=/usr \ ---datadir=/usr/share/ups \ ---sysconfdir=/etc/ups \ ---with-group=nut \ ---with-hal \ ---with-usb \ ---with-cgi \ ---with-cgipath=/usr/share/webapps/nut \ ---with-htmlpath=/usr/share/webapps/nut \ ---with-udev-dir=/etc/udev || return 1 - - make || return 1 - make DESTDIR=$pkgdir install - #ugly hack because --with-pkgconfig-dir doesn't work - install -D -m644 lib/libupsclient.pc $pkgdir/usr/lib/pkgconfig - - install -D -m644 conf/ups.conf.sample $pkgdir/etc/ups/ups.conf - install -D -m640 conf/upsd.conf.sample $pkgdir/etc/ups/upsd.conf - install -D -m640 conf/upsd.users.sample $pkgdir/etc/ups/upsd.users - install -D -m640 conf/upsmon.conf.sample $pkgdir/etc/ups/upsmon.conf - install -D -m644 conf/upssched.conf.sample $pkgdir/etc/ups/upssched.conf - install -D -m755 ../run.upsd $pkgdir/etc/sv/upsd/run || return 1 - install -D -m755 ../finish.upsd $pkgdir/etc/sv/upsd/finish || return 1 - - # Fix udev rules - sed -i "s|SYSFS|ATTRS|g" $pkgdir/etc/udev/rules.d/52-nut-usbups.rules - install -dm755 ${pkgdir}/lib - mv ${pkgdir}/etc/udev ${pkgdir}/lib -} -md5sums=('6f893b61b07915e7a139324fa3f79121' - 'd7af81650a966660f6fd41f957c66165' - 'd50f13385848a9bb8f8cbc9ee5dd9fd5') diff --git a/abs/extra/community/network-ups-tools/nut.install b/abs/extra/community/network-ups-tools/nut.install deleted file mode 100644 index 1e6beee..0000000 --- a/abs/extra/community/network-ups-tools/nut.install +++ /dev/null @@ -1,21 +0,0 @@ -post_install() { - groupadd -g 55 nut &> /dev/null - useradd -u 55 -g nut -G tty -d /var/state/ups -s /bin/false nut >/dev/null 2>&1 - mkdir -p /var/state/ups/ - chmod 0770 /var/state/ups/ - chown root:nut /var/state/ups/ - chown root:nut /etc/ups/upsd.conf /etc/ups/upsd.users /etc/ups/upsmon.conf - echo ">>> Before starting your UPSd daemon, it is imperative" - echo ">>> that you read through and edit where needed these files:" - echo ">>> /etc/ups/{ups.conf,upsd.conf,upsmon.conf,upsd.users}" - echo ">>>" - echo ">>> Then add the the upsd service:" - echo ">>> $ sudo add_service.sh upsd" -} - -pre_remove() { - remove_service.sh upsd - userdel nut >/dev/null 2>&1 - groupdel nut >/dev/null 2>&1 - rm -rf /var/state/ups/ -} diff --git a/abs/extra/community/nvclock/PKGBUILD b/abs/extra/community/nvclock/PKGBUILD deleted file mode 100644 index d49f915..0000000 --- a/abs/extra/community/nvclock/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 23406 2009-01-09 22:39:57Z andyrtr $ -# Contributor: Markus Meissner <markus@meissna.de> -# Maintainer: Andreas Radke <andyrtr@archlinux.org> - -pkgname=nvclock -pkgver=0.8b4 -pkgrel=1 -pkgdesc="A small utility which allows users to overclock NVIDIA based video cards" -arch=('i686' 'x86_64') -license=('GPL') -depends=('gtk2') -source=(http://www.linuxhardware.org/$pkgname/${pkgname}${pkgver}.tar.gz - nvclock-0.8b4-buildfix.patch) -url="http://www.linuxhardware.org/nvclock/" -md5sums=('23f1b3ebf40f35d76d5fdac50f66ab11' - '1da24b50dd6a8c4704fa550a3e1a8b53') -options=('!makeflags') - -build(){ - cd ${srcdir}/$pkgname$pkgver - # build fix from Fedora - patch -Np1 -i $srcdir/nvclock-0.8b4-buildfix.patch || return 1 - sed -i 's:${prefix}/man:${prefix}\/share\/man:' ${srcdir}/$pkgname$pkgver/Makefile.in || return 1 - ./configure --prefix=/usr --bindir=/usr/bin - make || return 1 || return 1 - make DESTDIR=${pkgdir} install || return 1 -} diff --git a/abs/extra/community/nvclock/nvclock-0.8b4-buildfix.patch b/abs/extra/community/nvclock/nvclock-0.8b4-buildfix.patch deleted file mode 100644 index cdc9f5c..0000000 --- a/abs/extra/community/nvclock/nvclock-0.8b4-buildfix.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -upNr nvclock0.8b4.orign/src/Makefile.in nvclock0.8b4/src/Makefile.in ---- nvclock0.8b4.orign/src/Makefile.in 2009-01-03 18:02:54.000000000 +0100 -+++ nvclock0.8b4/src/Makefile.in 2009-01-07 11:37:39.000000000 +0100 -@@ -50,8 +50,8 @@ distclean: distclean-recursive clean-app - install: install-recursive install-app - install-app: - mkdir -p $(bindir) -- $(INSTALL) -c nvclock $(DESTDIR)$(bindir)/nvclock -- $(INSTALL) -c smartdimmer $(DESTDIR)$(bindir)/smartdimmer -+ $(INSTALL) -c nvclock $(bindir)/nvclock -+ $(INSTALL) -c smartdimmer $(bindir)/smartdimmer - - - uninstall: uninstall-recursive uninstall-app - - diff --git a/abs/extra/community/nxtvepg/PKGBUILD b/abs/extra/community/nxtvepg/PKGBUILD deleted file mode 100644 index 5de6bc7..0000000 --- a/abs/extra/community/nxtvepg/PKGBUILD +++ /dev/null @@ -1,45 +0,0 @@ -# Contributor: Perry3D <perry3d at gmail dot com> -# Previous: Gilles CHAUVIN <gcnweb at gmail dot com> - -pkgname=nxtvepg -pkgver=2.8.1 -pkgrel=2 -pkgdesc="A decoder for nexTView EPG an Electronic TV Programme Guide" -url="http://nxtvepg.sf.net/" -license="GPL" -depends=('tcl>=8.5.0' 'tk' 'libxmu') -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz \ -tcl_85.patch \ -$pkgname-icon-16.png $pkgname-icon-32.png $pkgname-icon-48.png \ -$pkgname.desktop) -arch=('i686' 'x86_64') - -build() { - cd $startdir/src/$pkgname-$pkgver - - msg "Applying patch for tcl/tk8.5..." - patch -p0 < ../tcl_85.patch - - make || return 1 - - make prefix=$startdir/pkg/usr/ \ - bindir=$startdir/pkg/usr/bin \ - resdir=$startdir/pkg/usr/share/X11 \ - INST_DB_DIR=$startdir/pkg/var/tmp/nxtvdb \ - cfgdir=$startdir/pkg/usr/share/nxtvepg \ - install - - # Icons - for size in 16 32 48; do - install $startdir/src/$pkgname-icon-$size.png -D -m644 $startdir/pkg/usr/share/pixmaps/$pkgname-icon-$size.png - done - - # .desktop file - install $startdir/src/$pkgname.desktop -D -m644 $startdir/pkg/usr/share/applications/$pkgname.desktop -} -md5sums=('0811b1b95537b3cbab9f8d18d1501411' - 'db5e77089204aeb35e84c7f5505664a6' - '5f7c220d3355b6f043a2bdd5acec8608' - '8988d3f33a90bd99f9a61d8f7e4f46c3' - '26d86bd935df1dc9328f07b879f30de2' - '5d14ff096ef811ccb7dc330e5d3a76fd') diff --git a/abs/extra/community/nxtvepg/nxtvepg-icon-16.png b/abs/extra/community/nxtvepg/nxtvepg-icon-16.png Binary files differdeleted file mode 100644 index e6d8a85..0000000 --- a/abs/extra/community/nxtvepg/nxtvepg-icon-16.png +++ /dev/null diff --git a/abs/extra/community/nxtvepg/nxtvepg-icon-32.png b/abs/extra/community/nxtvepg/nxtvepg-icon-32.png Binary files differdeleted file mode 100644 index 9071f10..0000000 --- a/abs/extra/community/nxtvepg/nxtvepg-icon-32.png +++ /dev/null diff --git a/abs/extra/community/nxtvepg/nxtvepg-icon-48.png b/abs/extra/community/nxtvepg/nxtvepg-icon-48.png Binary files differdeleted file mode 100644 index a5f991b..0000000 --- a/abs/extra/community/nxtvepg/nxtvepg-icon-48.png +++ /dev/null diff --git a/abs/extra/community/nxtvepg/nxtvepg.desktop b/abs/extra/community/nxtvepg/nxtvepg.desktop deleted file mode 100644 index 6703dfc..0000000 --- a/abs/extra/community/nxtvepg/nxtvepg.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Comment=Electronic TV Programme Guide -Icon=/usr/share/pixmaps/nxtvepg-icon-48.png -Exec=nxtvepg -Name=nexTView EPG -GenericName=electronic TV Programme Guide -Terminal=false -Type=Application -Categories=Application;AudioVideo; diff --git a/abs/extra/community/nxtvepg/tcl_85.patch b/abs/extra/community/nxtvepg/tcl_85.patch deleted file mode 100644 index 9059a6c..0000000 --- a/abs/extra/community/nxtvepg/tcl_85.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- Makefile.orig 2008-02-03 20:01:14.000000000 +0100 -+++ Makefile 2008-02-03 20:01:23.000000000 +0100 -@@ -58,8 +58,8 @@ - YACC = /usr/bin/yacc - - # select Tcl/Tk version (8.5 recommended due to modernized widget appearence) --TCL_VER := $(shell echo 'puts [package require Tcl]' | tclsh) --#TCL_VER = 8.5 -+#TCL_VER := $(shell echo 'puts [package require Tcl]' | tclsh) -+TCL_VER = 8.5 - - ifeq ($(shell test -d /usr/include/tcl$(TCL_VER) && echo YES),YES) - INCS += -I/usr/include/tcl$(TCL_VER) diff --git a/abs/extra/community/nzbperl/PKGBUILD b/abs/extra/community/nzbperl/PKGBUILD deleted file mode 100755 index bbfee00..0000000 --- a/abs/extra/community/nzbperl/PKGBUILD +++ /dev/null @@ -1,16 +0,0 @@ -#Contributor: Xavier Vierling <xavierling@free.fr> -pkgname=nzbperl -pkgver=0.6.8 -pkgrel=1 -pkgdesc="nzb based nntp/usenet downloader in perl" -arch=('i686' 'x86_64') -url="http://noisybox.net/computers/nzbperl/" -license="GPL" -depends=(perl-term-readkey perl-xml-dom uudeview) -source=(http://noisybox.net/computers/nzbperl/$pkgname-$pkgver.pl) -md5sums=('70e64b7cd4ff9c7c098bf8dffeb62578') - -build() { - cd $startdir/src - install -D nzbperl-$pkgver.pl $startdir/pkg/usr/bin/nzbperl -}
\ No newline at end of file diff --git a/abs/extra/community/patchutils/PKGBUILD b/abs/extra/community/patchutils/PKGBUILD deleted file mode 100644 index 8aedbf0..0000000 --- a/abs/extra/community/patchutils/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id$ -# Contributor: Aurelien Foret <orelien@chez.com> -# Maintainer: Douglas Soares de Andrade <douglas@archlinux.org> - -pkgname=patchutils -pkgver=0.3.2 -pkgrel=1 -pkgdesc="A small collection of programs that operate on patch files" -license=('GPL') -url="http://cyberelk.net/tim/patchutils/" -depends=('perl') -arch=('i686' 'x86_64') -source=(http://cyberelk.net/tim/data/patchutils/stable/$pkgname-$pkgver.tar.bz2) -md5sums=('74607b4a28c9009c6aeeed0e91098917') - -build() { - cd $srcdir/$pkgname-$pkgver - - ./configure --prefix=/usr - make -} - -package() { - cd $srcdir/$pkgname-$pkgver - - make DESTDIR=$pkgdir install -} diff --git a/abs/extra/community/peardb/PKGBUILD b/abs/extra/community/peardb/PKGBUILD deleted file mode 100755 index 01164eb..0000000 --- a/abs/extra/community/peardb/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -pkgname=peardb -pkgver=1.7.13 -pkgrel=2 -arch=('i686') -pkgdesc="Pear Database Abstraction Layer" -url="http://pear.php.net/" -license=('GPL2') -replaces=('PearDB') -source=(http://download.pear.php.net/package/DB-${pkgver}.tgz) - -build() { - /bin/true -} - -package() { - mkdir -p ${pkgdir}/usr/share/pear/ - cp -r ${srcdir}/DB-$pkgver/DB* ${pkgdir}/usr/share/pear/ - mkdir -p ${pkgdir}/usr/share/pear/docs/DB/ - cp -r ${srcdir}/DB-$pkgver/doc/* ${pkgdir}/usr/share/pear/docs/DB/ - mkdir -p ${pkgdir}/usr/share/pear/tests/DB/ - cp -r ${srcdir}/DB-$pkgver/tests/* ${pkgdir}/usr/share/pear/tests/DB/ -} - -md5sums=('39b451245941a7059511a852f18b4946') diff --git a/abs/extra/community/pearlog/PKGBUILD b/abs/extra/community/pearlog/PKGBUILD deleted file mode 100755 index 31ad2b3..0000000 --- a/abs/extra/community/pearlog/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -pkgname=pearlog -pkgver=1.12.3 -pkgrel=1 -pkgdesc="Pear Logging Framework" -arch=('i686') -url="http://pear.php.net/" -license=('GPL2') -replaces=('PearLog') -source=(http://download.pear.php.net/package/Log-${pkgver}.tgz) - -build() { - /bin/true -} - -package() { - mkdir -p ${pkgdir}/usr/share/pear/ - cp -r ${srcdir}/Log-${pkgver}/Log* ${pkgdir}/usr/share/pear/ - mkdir -p ${pkgdir}/usr/share/pear/docs/Log - cp -r ${srcdir}/Log-${pkgver}/docs/* ${pkgdir}/usr/share/pear/docs/Log/ - mkdir -p ${pkgdir}/usr/share/pear/examples/Log - cp -r ${srcdir}/Log-${pkgver}/examples/* ${pkgdir}/usr/share/pear/examples/Log/ - mkdir -p ${pkgdir}/usr/share/pear/misc/Log - cp -r ${srcdir}/Log-${pkgver}/misc/* ${pkgdir}/usr/share/pear/misc/Log/ - mkdir -p ${pkgdir}/usr/share/pear/tests/Log - cp -r ${srcdir}/Log-${pkgver}/tests/* ${pkgdir}/usr/share/pear/tests/Log/ -} -md5sums=('9930cb6d52b3af2ca6a24db267e237f0') diff --git a/abs/extra/community/portaudio/PKGBUILD b/abs/extra/community/portaudio/PKGBUILD deleted file mode 100644 index 1872b94..0000000 --- a/abs/extra/community/portaudio/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 55258 2011-09-07 18:41:32Z ebelanger $ -# Based on 'portaudio' package - Eric Belanger <eric@archlinux.org> -# Last/Most-Recent Contributor: Darwin Bautista <djclue917@gmail.com> -# Maintainer: Bob Finch <w9ya@qrparci.net> - -pkgname=portaudio -pkgver=19_20110326 -pkgrel=1 -pkgdesc="A free, cross-platform, open source, audio I/O library" -arch=('i686' 'x86_64') -url="http://www.portaudio.com/" -license=('custom') -depends=('jack') -options=('!libtool') -source=(http://www.portaudio.com/archives/pa_stable_v$pkgver.tgz) -md5sums=('8f266ce03638419ef46e4efcb0fabde6') - -build() { - cd "$srcdir/$pkgname" - ./configure --prefix=/usr - make -} - -package() { - cd "$srcdir/$pkgname" - make DESTDIR="$pkgdir" install - install -D -m644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE.txt" -} diff --git a/abs/extra/community/powernowd/PKGBUILD b/abs/extra/community/powernowd/PKGBUILD deleted file mode 100644 index f784523..0000000 --- a/abs/extra/community/powernowd/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# Contributor: kastor <kastor@fobos.org.ar> - -pkgname=powernowd -pkgver=1.00 -pkgrel=2 -pkgdesc="Program for powering down CPUs dynamicly" -arch=('i686' 'x86_64') -url="http://www.deater.net/john/powernowd.html" -license="GPL" -depends=('glibc') -source=(http://www.deater.net/john/$pkgname-$pkgver.tar.gz \ - run finish powernowd.install powernowd.conf.d) -install=($pkgname.install) - -build() { - cd $startdir/src/$pkgname-$pkgver - make || return 1 - install -D -m755 powernowd $startdir/pkg/usr/sbin/powernowd || return 1 - mkdir -p $startdir/pkg/etc/sv/powernowd || return 1 - install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/powernowd || return 1 - install -D -m755 $startdir/src/finish $startdir/pkg/etc/sv/powernowd || return 1 - install -D -m644 $startdir/src/powernowd.conf.d $startdir/pkg/etc/conf.d/powernowd || return 1 -} -md5sums=('abc48b690d104e9e71a85400ba19d799' - 'ffd9b939665f74dac2220b4311482e04' - '13c6591ffc27d0b16f41f7892671302f' - 'dcbf8e98425b208c29f4c06b687dd0d0' - 'c9385af22c7c74e6cd6bdc982f94644f') diff --git a/abs/extra/community/powernowd/finish b/abs/extra/community/powernowd/finish deleted file mode 100644 index 97e3034..0000000 --- a/abs/extra/community/powernowd/finish +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash - -# AUR Credits: -# simple init script the ARCH-way for Powernowd -# Made by, CyberTron, packages@linuxportalen.com - -# Modifications by Alexander Baldeck <alexander@archlinux.org> - -# general config -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/sbin/powernowd` - -[ -f /etc/conf.d/powernowd ] && source /etc/conf.d/powernowd - - stat_runit "Stopping Powernowd" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm /var/run/powernowd.pid - rm_daemon powernowd - stat_done - fi diff --git a/abs/extra/community/powernowd/powernowd.conf.d b/abs/extra/community/powernowd/powernowd.conf.d deleted file mode 100644 index 287c2bc..0000000 --- a/abs/extra/community/powernowd/powernowd.conf.d +++ /dev/null @@ -1,6 +0,0 @@ -# Configuration file for powernowd - -# If no options given, powernowd should be able to autodetect -# a sane setup. So most users will not have to put anything -# here. -OPTIONS="-d" diff --git a/abs/extra/community/powernowd/powernowd.install b/abs/extra/community/powernowd/powernowd.install deleted file mode 100644 index af218af..0000000 --- a/abs/extra/community/powernowd/powernowd.install +++ /dev/null @@ -1,19 +0,0 @@ -post_install() { - add_service.sh powernowd - - echo "Be sure to modprobe the proper module for your CPU and then add it - echo "to /etc/rc.conf in the MODULES section." - echo "i.e. for a Core2Duo modprobe/add acpi_cpufreq" - echo "Then restart the powernowd service: sudo sv restart powernowd" -} - -post_upgrade() { - echo "Be sure to modprobe the proper module for your CPU and then add it - echo "to /etc/rc.conf in the MODULES section." - echo "i.e. for a Core2Duo modprobe/add acpi_cpufreq" - echo "Then restart the powernowd service: sudo sv restart powernowd" -} - -pre_remove() { - remove_service.sh powernowd -} diff --git a/abs/extra/community/powernowd/run b/abs/extra/community/powernowd/run deleted file mode 100644 index 0e83b98..0000000 --- a/abs/extra/community/powernowd/run +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash - -# AUR Credits: -# simple init script the ARCH-way for Powernowd -# Made by, CyberTron, packages@linuxportalen.com - -# Modifications by Alexander Baldeck <alexander@archlinux.org> - -# general config -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/sbin/powernowd` - -[ -f /etc/conf.d/powernowd ] && source /etc/conf.d/powernowd - - stat_runit "Starting Powernowd" - [ -z "$PID" ] && /usr/sbin/powernowd $OPTIONS 2>/dev/null - if [ $? -gt 0 ]; then - stat_fail - else - echo $PID > /var/run/powernowd.pid - add_daemon powernowd - stat_done - fi diff --git a/abs/extra/community/projectx/PKGBUILD b/abs/extra/community/projectx/PKGBUILD deleted file mode 100644 index 62092a4..0000000 --- a/abs/extra/community/projectx/PKGBUILD +++ /dev/null @@ -1,45 +0,0 @@ -# Contributer: Sebastian Sareyko <public@nooms.de> - -pkgname=projectx -pkgver=0.90.4.00 -pkgrel=8 -license=('GPL') -arch=('i686' 'x86_64') -pkgdesc="DVB demux tool for repairing and analyzing different stream types" -makedepends=('java-environment') -depends=('java-runtime') -url="http://sourceforge.net/projects/project-x" -source=(http://dl.sourceforge.net/sourceforge/project-x/ProjectX_Source_eng_$pkgver.zip \ - http://dl.sourceforge.net/sourceforge/project-x/ProjectX_LanguagePack_$pkgver.zip \ - projectx) - -md5sums=('92d7b5aea50b8811307f27b6e01ceb5c' - 'edfe8d04bd3d403eec4d9e27d1b976d2' - '0c88b15884a0c997e3386d15e207cd30') - -build() { - cd $startdir/src/ProjectX_Source_0.90.4 - - sed -i 's,^Exec=.*,Exec=projectx,' projectx.desktop - - mkdir -p build - - javac -encoding "ISO-8859-1" -O -g:none \ - -classpath lib/commons-net-1.3.0.jar:lib/jakarta-oro-2.0.8.jar \ - -d build @sources.lst || return 1 - - mv resources/* ./build - sed -i -e 's/ReleaseNotes_0.90.1.txt/ReleaseNotes_0.90.4.txt/' htmls/index.html - mv htmls build - mv ReadMe.txt build - mv ReleaseNotes_0.90.4.txt build - jar cvfm ProjectX.jar MANIFEST.MF -C build . - - install -D -m0755 $startdir/projectx $startdir/pkg/usr/bin/projectx - install -D -m0644 ProjectX.jar $startdir/pkg/opt/projectx/ProjectX.jar - install -D -m0644 lib/commons-net-1.3.0.jar \ - $startdir/pkg/opt/projectx/lib/commons-net-1.3.0.jar - install -D -m0644 lib/jakarta-oro-2.0.8.jar \ - $startdir/pkg/opt/projectx/lib/jakarta-oro-2.0.8.jar - install -D -m0644 projectx.desktop $startdir/pkg/usr/share/applications/projectx.desktop -} diff --git a/abs/extra/community/projectx/projectx b/abs/extra/community/projectx/projectx deleted file mode 100644 index 1d540bc..0000000 --- a/abs/extra/community/projectx/projectx +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -if [ ! -d ~/.projectx ] ; then - mkdir ~/.projectx -fi - -if [ "$#" -eq 0 ] ; then - cd ~/.projectx -fi -java -jar /opt/projectx/ProjectX.jar "$@" diff --git a/abs/extra/community/smplayer/ChangeLog b/abs/extra/community/smplayer/ChangeLog deleted file mode 100644 index e8397b3..0000000 --- a/abs/extra/community/smplayer/ChangeLog +++ /dev/null @@ -1,74 +0,0 @@ -2010-02-23 Ionut Biru <ibiru@archlinux.org> - * smplayer 0.6.9-2 - * changed exec argument from %U to %F in smplayer.desktop - -2010-02-22 Ionut Biru <ibiru@archlinux.org> - * smplayer 0.6.9-1 - * Upstream update - -2009-07-25 Allan McRae <allan@archlinux.org> - * smplayer 0.6.8-1 - * Upstream update - -2009-03-13 Allan McRae <allan@archlinux.org> - * smplayer 0.6.7-1 - * Upstream update - -2009-01-01 Allan McRae <allan@archlinux.org> - * smplayer 0.6.6-1 - * Upstream update - -2008-11-14 Allan McRae <allan@archlinux.org> - * smplayer 0.6.5.1-1 - * Upstream update - -2008-10-27 Allan McRae <allan@archlinux.org> - * smplayer 0.6.4-1 - * Upstream update - -2008-09-27 Allan McRae <allan@archlinux.org> - * smplayer 0.6.3-1 - * Upstream update - -2008-06-21 Allan McRae <allan@archlinux.org> - - * smplayer 0.6.2-1 - * Upstream update - * Removed install message - -2008-06-21 Allan McRae <allan@archlinux.org> - - * smplayer 0.6.1-1 - * Upstream update - * Removed provides/conflicts/replaces - -2008-05-23 Eric Belanger <eric@archlinux.org> - - * smplayer 0.6.0-1 - * Upstream update - * Updated .install file - -2008-01-32 Varun Acharya <varun@archlinux.org> - - * smplayer-0.5.62-1 moved to extra, thanks molok - * PKGBUILD cleanup - -2007-11-27 Alessio 'mOLOk' Bolognino <themolok@gmail.com> - - * smplayer-0.5.62-1 - * version bump - -2007-10-24 Alessio 'mOLOk' Bolognino <themolok@gmail.com> - - * smplayer-0.5.61-1 - * build against qt4 - * removed post_upgrade message - -2007-07-12 Alessio 'mOLOk' Bolognino <themolok@gmail.com> - - * smplayer-0.5.21-1 - * version bump - -2007-05-30 Alessio 'mOLOk' Bolognino <themolok@gmail.com> - * smplayer-0.5.0-1 - * version bump diff --git a/abs/extra/community/smplayer/PKGBUILD b/abs/extra/community/smplayer/PKGBUILD deleted file mode 100644 index 0928e4b..0000000 --- a/abs/extra/community/smplayer/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id$ -# Maintainer : Ionut Biru <ibiru@archlinux.org> -# Contributor: Allan McRae <allan@archlinux.org> -# Contributor: Alessio 'mOLOk' Bolognino <themolok@gmail.com> -# Contributor: shamrok <szamrok@gmail.com> - -pkgname=smplayer -pkgver=0.6.9 -pkgrel=3 -pkgdesc="A complete front-end for MPlayer" -arch=('i686' 'x86_64') -url="http://smplayer.sourceforge.net/" -license=('GPL') -depends=('qt>=4.7.1' 'mplayer') -source=(http://downloads.sourceforge.net/sourceforge/smplayer/${pkgname}-${pkgver}.tar.bz2) -md5sums=('dfe874b386509de5df78537489f95004') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - # remove broken translation - sed -i "s|translations/smplayer_gl.ts|#translations/smplayer_gl.ts|" src/smplayer.pro - - make PREFIX=/usr - make PREFIX=${pkgdir}/usr install - - install -dm755 ${pkgdir}/usr/share/pixmaps - ln -s /usr/share/icons/hicolor/64x64/apps/smplayer.png \ - ${pkgdir}/usr/share/pixmaps/ - - sed -i 's|Exec=smplayer %U|Exec=smplayer %F|' ${pkgdir}/usr/share/applications/smplayer.desktop - sed -i 's|Exec=smplayer -add-to-playlist %U|Exec=smplayer -add-to-playlist %F|' \ - ${pkgdir}/usr/share/applications/smplayer_enqueue.desktop -} - diff --git a/abs/extra/community/squeezeboxserver/PKGBUILD b/abs/extra/community/squeezeboxserver/PKGBUILD deleted file mode 100644 index 45db11f..0000000 --- a/abs/extra/community/squeezeboxserver/PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# Contributor: Anton Prins <uar at prinsonline dot demon dot nl> - -pkgname=squeezeboxserver -pkgver=7.4.1 -pkgrel=1 -pkgdesc="Powerful streaming audio server from Slim Devices" -depends=( -# unknown to me, default arch install + openssh handles it - ) - -source=(http://downloads.slimdevices.com/SqueezeboxServer_v${pkgver}/squeezeboxserver-${pkgver}.tgz - $pkgname.rc - $pkgname.conf.d - ) - -url="http://www.slimdevices.com/pi_features.html" -license=('GPL') -arch=('i686' 'x86_64') -install=squeezeboxserver.install - -#not sure how to handle the build number -28947? -build() { -cd $startdir/src/squeezeboxserver-${pkgver}-28947 || return 1 - -mkdir -p $startdir/pkg/home/squeezeboxserver || return 1 -cp -a * $startdir/pkg/home/squeezeboxserver || return 1 -install -D -m755 ../squeezeboxserver.rc $startdir/pkg/etc/rc.d/squeezeboxserver || return 1 -install -D -m644 ../squeezeboxserver.conf.d $startdir/pkg/etc/conf.d/squeezeboxserver || return 1 -mkdir $startdir/pkg/home/squeezeboxserver/prefs -} - -md5sums=('fa65636e7df75ae7af884a2efa184639' - '5e57982c257797badbf72c2ae04994f7' - 'aa65896541958e119e63ee7c96be39af') diff --git a/abs/extra/community/squeezeboxserver/squeezeboxserver.conf.d b/abs/extra/community/squeezeboxserver/squeezeboxserver.conf.d deleted file mode 100644 index d14a2e9..0000000 --- a/abs/extra/community/squeezeboxserver/squeezeboxserver.conf.d +++ /dev/null @@ -1,7 +0,0 @@ -# Configuration file for SqueezeCenter on Arch Linux. -# Save this as /etc/conf.d/squeezeboxserver - -# Enter space-delimited options on the following line. -# e.g. SQUEEZEBOXSERVER_OPTS="--diag --d_scan --d_command" -# See "/home/squeezeboxserver/slimserver.pl --help" for a full list of possible options. -SQUEEZEBOXSERVER_OPTS="" diff --git a/abs/extra/community/squeezeboxserver/squeezeboxserver.install b/abs/extra/community/squeezeboxserver/squeezeboxserver.install deleted file mode 100644 index 058de02..0000000 --- a/abs/extra/community/squeezeboxserver/squeezeboxserver.install +++ /dev/null @@ -1,56 +0,0 @@ -post_install() { -echo -n "adding squeezeboxserver user... " -useradd -c "SqueezeBoxServer" -g users -s /bin/false squeezeboxserver && echo "done." -passwd -l squeezeboxserver &>/dev/null - -chown -R squeezeboxserver:users /home/squeezeboxserver - -install -o squeezeboxserver -d /var/cache/squeezeboxserver -touch /var/log/squeezeboxserver.log -chown squeezeboxserver:users /var/log/squeezeboxserver.log - -cat << 'EOM' - -==> SqueezeBoxServer uses MySQL instead of sqlite. If you have MySQL up and running -==> you can configure SqueezeBoxServer to use that server as described here: -==> http://wiki.slimdevices.com/index.php/ExistingMySQLInstance - -==> PLEASE NOTE: SqueezeBoxServer should always be run as the user 'squeezeboxserver'. -==> This is easily done by adding squeezeboxserver to the DAEMONS array in rc.conf, -==> after network and mysql. - -==> Additional run-time options can be added to /etc/conf.d/squeezeboxserver. -==> Please refer to "/home/squeezeboxserver/slimserver.pl --help" for full details. - -EOM -} - -post_upgrade() { -chown -R squeezeboxserver:users /home/squeezeboxserver - -cat << 'EOM' - -==> SqueezeBoxServer uses MySQL instead of sqlite. If you have MySQL up and running -==> you can configure SqueezeBoxServer to use that server as described here: -==> http://wiki.slimdevices.com/index.php/ExistingMySQLInstance - -EOM -} - -pre_remove() { -# pre_remove gets called whenever post_remove is defined. -true -} - -post_remove() { -# post_remove doesn't start at a newline like the other post_* functions, -# so we'll have to make one for ourselves. -echo -n -e "\nremoving squeezeboxserver user... " -userdel squeezeboxserver && echo "done." - -rm -r /var/cache/squeezeboxserver /var/log/squeezeboxserver.log -} - -op=$1 -shift -$op $* diff --git a/abs/extra/community/squeezeboxserver/squeezeboxserver.rc b/abs/extra/community/squeezeboxserver/squeezeboxserver.rc deleted file mode 100644 index d33db16..0000000 --- a/abs/extra/community/squeezeboxserver/squeezeboxserver.rc +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/bash - -# source application-specific settings -[ -f /etc/conf.d/squeezeboxserver ] && . /etc/conf.d/squeezeboxserver - -# general config -. /etc/rc.conf -. /etc/rc.d/functions - -squeezehome=/home/squeezeboxserver -pidfile=/var/run/squeezeboxserver.pid -logfile=/var/log/squeezeboxserver.log -prefsdir=/home/squeezeboxserver/prefs -cachedir=/var/cache/squeezeboxserver - - -case "$1" in - start) - stat_busy "Starting SqueezeBoxServer" - cd $squeezehome - ./slimserver.pl --daemon --user squeezeboxserver --prefsdir $prefsdir \ - --cachedir $cachedir --pidfile $pidfile --logfile $logfile $SQUEEZEBOXSERVER_OPTS - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon squeezeboxserver - stat_done - fi - ;; - stop) - stat_busy "Stopping SqueezeBoxServer" - kill `cat $pidfile` &>/dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon squeezeboxserver - stat_done - fi - ;; - restart) - $0 stop - sleep 3 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac diff --git a/abs/extra/community/tig/PKGBUILD b/abs/extra/community/tig/PKGBUILD deleted file mode 100644 index 87e5e4d..0000000 --- a/abs/extra/community/tig/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# Maintainer: Loui Chang <louipc dot ist at gmail company> -# Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr> -# Contributor: Nathan Jones <nathanj@insightbb.com> - -pkgname=tig -pkgver=0.18 -pkgrel=1 -pkgdesc="Text-mode interface for git" -depends=('git' 'ncurses') -url="http://jonas.nitro.dk/tig/" -license=('GPL') -arch=('i686' 'x86_64') -source=("http://jonas.nitro.dk/${pkgname}/releases/${pkgname}-${pkgver}.tar.gz") -md5sums=('4fa9e33c5daa76b6fed11e068405356f') - -build() { - cd "$srcdir"/$pkgname-$pkgver - - ./configure --prefix=/usr -} - -package() { - cd "$srcdir"/$pkgname-$pkgver - make DESTDIR="$pkgdir" install install-doc-man - install -D -m644 contrib/tigrc "$pkgdir"/etc/tigrc.sample - install -D -m644 contrib/tig-completion.bash "$pkgdir"/etc/bash_completion.d/tig -} diff --git a/abs/extra/community/transmission-cli/PKGBUILD b/abs/extra/community/transmission-cli/PKGBUILD deleted file mode 100644 index 4980466..0000000 --- a/abs/extra/community/transmission-cli/PKGBUILD +++ /dev/null @@ -1,45 +0,0 @@ -# $Id: PKGBUILD 23076 2009-01-02 11:33:41Z alexanderf $ -# Maintainer: Alexander Fehr <pizzapunk gmail com> -# Contributor: Alessio 'mOLOk' Bolognino <themolok@gmail.com> - -pkgname=transmission-cli -pkgver=2.51 -pkgrel=1 -pkgdesc="Fast, easy, and free BitTorrent client (CLI tools, daemon and web client)" -arch=('i686' 'x86_64') -url="http://www.transmissionbt.com/" -license=('MIT') -depends=('curl' 'libevent>=2.0.10') -makedepends=('intltool' 'libcroco') -replaces=('transmission') -backup=('etc/conf.d/transmissiond') -install=transmission-cli.install -source=(http://mirrors.m0k.org/transmission/files/transmission-$pkgver.tar.bz2 - run.transmissiond - transmission-cli.install - transmission.include - transmissiond.conf) - -build() { - cd "$srcdir/transmission-$pkgver" - - ./configure --prefix=/usr --disable-gtk || return 1 - make || return 1 -} - -package() { - cd "$srcdir/transmission-$pkgver" - make DESTDIR="$pkgdir" install || return 1 - - mkdir -p -m744 "$pkgdir/etc/sv/transmissiond" || return 1 - mkdir -p -m777 "$pkgdir/myth/transmission" || return 1 - install -D -m755 "$srcdir/run.transmissiond" "$pkgdir/etc/sv/transmissiond/run" || return 1 - install -D -m644 "$srcdir/transmissiond.conf" "$pkgdir/etc/conf.d/transmissiond" || return 1 - install -D -m644 "$srcdir/transmission.include" "$pkgdir/etc/transmission/transmission.include" || return 1 - install -D -m644 COPYING "$pkgdir/usr/share/licenses/transmission-cli/COPYING" || return 1 -} -md5sums=('dfe2faeb2b76b43954ec943affef2133' - 'e876d24b99c401f782395b053976dffd' - 'ff22c13dbd52565f9e88b1de22514eb9' - 'b5a49ea375333cd0fee40f70dbac4c2e' - 'd05567c7a4f9df9f28602d1356d5c05c') diff --git a/abs/extra/community/transmission-cli/run.transmissiond b/abs/extra/community/transmission-cli/run.transmissiond deleted file mode 100755 index 792594a..0000000 --- a/abs/extra/community/transmission-cli/run.transmissiond +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/transmissiond - -CONFIGDIR=/home/$TRANS_USER/.config/transmission-daemon -PID=`pidof -o %PPID /usr/bin/transmission-daemon` -# Update the block lists - try to keep the bad guys out. - cd ${CONFIGDIR}/blocklists - if [ $? -eq 0 ]; then - find . -mtime +4 -type f -name level1 -exec rm {} \; - if [ ! -f ${CONFIGDIR}/blocklists/level1 ]; then - # update blocklist - # echo "updating blocklist, ~4MB" - wget -q -O level1.gz http://www.bluetack.co.uk/config/level1.gz - if [ -f level1.gz ]; then - gunzip level1.gz - if [ $? -eq 0 ]; then - chmod go+r level1 - else - rm -f level1* - fi - fi - fi - cd - 2>&1 >/dev/null - fi - stat_runit "Starting Transmission Daemon" - [ -z "$PID" ] && exec su -l -c "/usr/bin/nice -n 19 /usr/bin/transmission-daemon $TRANS_OPTS" $TRANS_USER 2>/dev/null diff --git a/abs/extra/community/transmission-cli/transmission-cli.install b/abs/extra/community/transmission-cli/transmission-cli.install deleted file mode 100644 index 088ecc6..0000000 --- a/abs/extra/community/transmission-cli/transmission-cli.install +++ /dev/null @@ -1,28 +0,0 @@ -post_install() { - /bin/echo 'include "/etc/transmission/transmission.include"' >> /etc/lighttpd/conf.include - killall -HUP lighttpd - - add_service.sh transmissiond - - cat << _EOF - - You can edit the user and options in /etc/conf.d/transmissiond. - - To access the web interface: - http://localhost/transmission - - Configuration file editing information can be found at: - http://trac.transmissionbt.com/wiki/ConfigFiles - -_EOF - -} - -pre_upgrade() { - rm -f /usr/share/man/man1/transmission* - -} - -pre_remove() { - remove_service.sh transmissiond -} diff --git a/abs/extra/community/transmission-cli/transmission.include b/abs/extra/community/transmission-cli/transmission.include deleted file mode 100644 index 5cbf399..0000000 --- a/abs/extra/community/transmission-cli/transmission.include +++ /dev/null @@ -1,15 +0,0 @@ -#Redirect from /transmission to /transmission/web -url.rewrite-once += ( "^/transmission[/]?$" => "/transmission/web" ) -$HTTP["url"] =~ "^/transmission/" { - #Serve static files from /usr/share/transmission - server.document-root = "/usr/share/" - #Forward RPC requests to the Transmission daemon - proxy.server = ( - "/transmission/rpc" => ( - ( - "host" => "127.0.0.1", - "port" => 9091 - ) - ) - ) -} diff --git a/abs/extra/community/transmission-cli/transmissiond.conf b/abs/extra/community/transmission-cli/transmissiond.conf deleted file mode 100644 index d642c01..0000000 --- a/abs/extra/community/transmission-cli/transmissiond.conf +++ /dev/null @@ -1,2 +0,0 @@ -TRANS_USER="mythtv" -TRANS_OPTS="-f -ep -w /myth/transmission" diff --git a/abs/extra/community/tre/PKGBUILD b/abs/extra/community/tre/PKGBUILD deleted file mode 100644 index 52fb147..0000000 --- a/abs/extra/community/tre/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# Contributor: Igor Galic<i.galic@gmail.com> -# Maintainer: Stefan Husmann <stefan-husmann@t-online.de -pkgname=tre -pkgver=0.8.0 -pkgrel=1 -arch=('i686' 'x86_64') -pkgdesc="POSIX compliant regexp matching library. Includes agrep for aproximate grepping." -url="http://laurikari.net/tre/index.html" -depends=('glibc') -license=('custom:BSD') -source=(http://laurikari.net/tre/$pkgname-$pkgver.tar.bz2) -md5sums=('b4d3232593dadf6746f4727bdda20b41') -options=('!libtool') - -build() { - cd ${srcdir}/$pkgname-$pkgver - ./configure --prefix=/usr --enable-static || return 1 - make || return 1 - make DESTDIR=$pkgdir install || return 1 - install -Dm644 ${srcdir}/$pkgname-$pkgver/LICENSE \ - ${pkgdir}/usr/share/licenses/$pkgname/LICENSE || return 1 - install -d ${pkgdir}/usr/share/doc/$pkgname - cd doc - for _i in default.css tre-api.html tre-syntax.html - do - install -Dm644 ${_i} ${pkgdir}/usr/share/doc/$pkgname/${_i} - done || return 1 -} diff --git a/abs/extra/community/twisted/PKGBUILD b/abs/extra/community/twisted/PKGBUILD deleted file mode 100644 index 13fca6b..0000000 --- a/abs/extra/community/twisted/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 94591 2010-10-08 12:55:33Z ibiru $ -# Maintainer : Ionut Biru <ibiru@archlinux.org> -# Contributor: Juergen Hoetzel <juergen@archlinux.org> -# Contributor: Douglas Soares de Andrade <douglas@archlinux.org> - -pkgname=twisted -pkgver=10.1.0 -pkgrel=3 -pkgdesc="Asynchronous networking framework written in Python." -arch=('i686' 'x86_64') -url="http://twistedmatrix.com/" -license=('MIT') -depends=('python2' 'pycrypto' 'zope-interface') -optdepends=('pyopenssl' - 'python-soappy:for twisted.web.soap') -install=twisted.install -source=(http://tmrc.mit.edu/mirror/twisted/Twisted/${pkgver%.*}/Twisted-${pkgver}.tar.bz2) -md5sums=('04cca97506e830074cffc1965297da3f') -build() { - cd "${srcdir}/Twisted-${pkgver}" - - python2 setup.py install --prefix=/usr --root=$pkgdir --optimize=1 - install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/$pkgname/LICENSE" - - sed -e 's|#!/usr/bin/env python|#!/usr/bin/env python2|' \ - -i ${pkgdir}/usr/lib/python2.6/site-packages/twisted/trial/test/scripttest.py - sed -e 's|#!/usr/bin/env python|#!/usr/bin/env python2|' \ - -i ${pkgdir}/usr/lib/python2.6/site-packages/twisted/mail/test/pop3testserver.py -} diff --git a/abs/extra/community/twisted/twisted.install b/abs/extra/community/twisted/twisted.install deleted file mode 100644 index 62a2cc5..0000000 --- a/abs/extra/community/twisted/twisted.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - python2 -c 'from twisted.plugin import IPlugin, getPlugins; list(getPlugins(IPlugin))' >/dev/null 2>&1 || return 1 -} - -post_upgrade() { - post_install -} - -post_remove() { - find /usr/lib/python2.6/site-packages/twisted/plugins -name dropin.cache | xargs -r rm -f -} diff --git a/abs/extra/community/unrar/PKGBUILD b/abs/extra/community/unrar/PKGBUILD deleted file mode 100644 index 20d5213..0000000 --- a/abs/extra/community/unrar/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# $Id: PKGBUILD 72474 2010-03-16 19:39:31Z giovanni $ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: dorphell <dorphell@gmx.net> - -pkgname=unrar -pkgver=3.9.10 -pkgrel=1 -pkgdesc="The RAR uncompression program" -arch=('i686' 'x86_64') -url="http://www.rarlab.com/rar_add.htm" -license=('custom') -depends=('gcc-libs') -source=(http://www.rarlab.com/rar/unrarsrc-${pkgver}.tar.gz) -md5sums=('3c130ae52ff9fece50af988c343e396d') - -build() { - cd "${srcdir}/${pkgname}" - - make -f makefile.unix - install -Dm755 unrar ${pkgdir}/usr/bin/unrar || return 1 - # install license - install -Dm644 license.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" || return 1 -} diff --git a/abs/extra/community/unrar/unrar-3.5.2-optimalization-fix.patch b/abs/extra/community/unrar/unrar-3.5.2-optimalization-fix.patch deleted file mode 100644 index 2ed2e6e..0000000 --- a/abs/extra/community/unrar/unrar-3.5.2-optimalization-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur unrar.orig/makefile.unix unrar/makefile.unix ---- unrar.orig/makefile.unix 2005-05-27 21:53:56.000000000 +0000 -+++ unrar/makefile.unix 2005-05-27 21:54:16.000000000 +0000 -@@ -7,7 +7,7 @@ - - # Linux using GCC - CXX=g++ --CXXFLAGS=-O2 -+CXXFLAGS=${CFLAGS} - DEFINES=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE - STRIP=strip - diff --git a/abs/extra/community/uriparser/PKGBUILD b/abs/extra/community/uriparser/PKGBUILD deleted file mode 100644 index a44876f..0000000 --- a/abs/extra/community/uriparser/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# Contributor: Juan Pablo Gonzalez Tognarelli <lord_jotape@yahoo.com.ar> - pkgname=uriparser - pkgver=0.7.5 - pkgrel=1 - pkgdesc="uriparser is a strictly RFC 3986 compliant URI parsing library. uriparser is cross-platform, fast, supports Unicode" - url="http://sourceforge.net/projects/uriparser/" - depends=(glibc) - makedepends=(doxygen) - source=(http://downloads.sourceforge.net/sourceforge/uriparser/$pkgname-$pkgver.tar.bz2) - md5sums=('4f4349085fe5de33bcae8d0f26649593') - arch=('i686' 'x86_64') - license="CUSTOM" - build() { - cd ${srcdir}/$pkgname-$pkgver - ./configure --prefix=/usr --disable-test - ln -s ${srcdir}/$pkgname-$pkgver/doc/Doxyfile.in ${srcdir}/$pkgname-$pkgver/doc/Doxyfile - make || return 1 - touch ${srcdir}/$pkgname-$pkgver/doc/html/empty.gif - make DESTDIR=$startdir/pkg install || return 1 - install -D -m644 "${srcdir}/$pkgname-$pkgver/COPYING" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" || return 1 -} - diff --git a/abs/extra/community/uudeview/PKGBUILD b/abs/extra/community/uudeview/PKGBUILD deleted file mode 100644 index cdb3a81..0000000 --- a/abs/extra/community/uudeview/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD,v 1.5 2008/09/23 12:49:17 sergej Exp $ -# Maintainer: Sergej Pupykin <sergej@aur.archlinux.org> -# Maintainer: kmaster <kmaster12@sasktel.net> - -pkgname=uudeview -pkgver=0.5.20 -pkgrel=6 -pkgdesc="UUDeview helps transmitting & recieving binary files using mail or newsgroups. Includes library files." -arch=('i686' 'x86_64') -url="http://www.fpx.de/fp/Software/UUDeview/" -license=('GPL') -optdepends=('tk: for GUI') -source=(http://www.fpx.de/fp/Software/UUDeview/download/$pkgname-$pkgver.tar.gz) -md5sums=('0161abaec3658095044601eae82bbc5b') - -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make prefix=$startdir/pkg/usr install || return 1 - mkdir -p $startdir/pkg/usr/lib/uudeview && \ - mkdir -p $startdir/pkg/usr/include/uudeview || return 1 - - cd $startdir/src/uudeview-$pkgver/uulib - ./configure --prefix=/usr - make || return 1 - cp -v *.o $startdir/pkg/usr/lib/uudeview && \ - cp -v *.a $startdir/pkg/usr/lib/uudeview && \ - cp -v *.h $startdir/pkg/usr/include/uudeview -} diff --git a/abs/extra/community/video4fuze/PKGBUILD b/abs/extra/community/video4fuze/PKGBUILD deleted file mode 100644 index 35c1e85..0000000 --- a/abs/extra/community/video4fuze/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# Contributor: Michael Hanson <hansonorders@verizon.net> -# Maintainer: Michael Hanson <hansonorders@verizon.net> -pkgname=video4fuze -pkgver=0.6 -pkgrel=1 -pkgdesc="A tool to make videos compatable with the San Disk Sana Fuze media player" -arch=('i686' 'x86_64') -url="http://code.google.com/p/video4fuze" -license=('GPL3' 'CC-BY-SA-3.0') -depends=('fuzemux' 'python2>=2.5' 'qt>=4.5' 'pyqt>=4.5' 'python-imaging' 'mplayer' 'ffmpeg-svn') -optdepends=('xterm') -source=("http://${pkgname}.googlecode.com/files/${pkgname}-${pkgver}%2B.tar.gz") -provides=('video4fuze') -replaces=('video4fuze-svn') -install=video4fuze.install - -build() { - cd ${srcdir}/${pkgname}-${pkgver}+ - - for file in GUI/*.py *.py *.pyw ; do - sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' ${file} - done - - sed -i 's/^python/python2/g' dist/* - - lrelease video4fuze_e4x.pro - - python2 setup.py install --root="$pkgdir" || return 1 -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver}+ - install -D -m644 README.txt ${pkgdir}/usr/share/doc/video4fuze/README || return 1 - chmod 755 ${pkgdir}/usr/share/video4fuze/*.py || return 1 - chmod 755 ${pkgdir}/usr/share/video4fuze/*.pyw || return 1 - chmod 755 ${pkgdir}/usr/share/video4fuze/GUI/*.py || return 1 -} -md5sums=('f19250f2e166e10e5b115e8bffdfee35') diff --git a/abs/extra/community/video4fuze/video4fuze.install b/abs/extra/community/video4fuze/video4fuze.install deleted file mode 100644 index d6e391f..0000000 --- a/abs/extra/community/video4fuze/video4fuze.install +++ /dev/null @@ -1,9 +0,0 @@ -post_install() { - ln -s /usr/share/video4fuze/video4fuze.pyw /usr/bin/video4fuze - ln -s /usr/share/video4fuze/fuze.py /usr/bin/fuze.py -} - -pre_remove() { - rm -f /usr/bin/video4fuze - rm -f /usr/bin/fuze.py -} diff --git a/abs/extra/community/vsftpd/PKGBUILD b/abs/extra/community/vsftpd/PKGBUILD deleted file mode 100644 index 78ba1c5..0000000 --- a/abs/extra/community/vsftpd/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# $Id$ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> -# Contributor: judd <jvinet@zeroflux.org> - -pkgname=vsftpd -pkgver=2.3.4 -pkgrel=2 -pkgdesc="Very Secure FTP daemon" -arch=('i686' 'x86_64') -url="https://security.appspot.com/vsftpd.html" -license=('GPL2') -depends=('openssl') -backup=('etc/vsftpd.conf' 'etc/xinetd.d/vsftpd') -install=vsftpd.install -source=("https://security.appspot.com/downloads/${pkgname}-${pkgver}.tar.gz" - 'vsftpd.xinetd' 'vsftpd.d' 'run') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - # build-time config - sed \ - -e 's|^#undef VSF_BUILD_SSL$|#define VSF_BUILD_SSL|' \ - -i builddefs.h -# Below added for LinHES - mkdir -p $startdir/pkg/etc/sv/vsftpd/supervise - install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/vsftpd/ - make CFLAGS="${CFLAGS}" -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - install -D -m755 vsftpd "${pkgdir}/usr/sbin/vsftpd" - install -D -m644 vsftpd.conf "${pkgdir}/etc/vsftpd.conf" - install -D -m644 vsftpd.8 "${pkgdir}/usr/share/man/man8/vsftpd.8" - install -D -m644 vsftpd.conf.5 "${pkgdir}/usr/share/man/man5/vsftpd.conf.5" - install -D -m644 "${srcdir}/vsftpd.xinetd" "${pkgdir}/etc/xinetd.d/vsftpd" - install -D -m755 "${srcdir}/vsftpd.d" "${pkgdir}/etc/rc.d/vsftpd" - - install -d -m755 "${pkgdir}/usr/share/empty" -} -md5sums=('2ea5d19978710527bb7444d93b67767a' - 'b07fd4609c70063c1d6b20142910c1a6' - '60060a6c7db3b3b7baa1561a302e6923' - '8abbed7cc75f9a9d2944e0e83c8dd90d') diff --git a/abs/extra/community/vsftpd/__changelog b/abs/extra/community/vsftpd/__changelog deleted file mode 100644 index 82615f6..0000000 --- a/abs/extra/community/vsftpd/__changelog +++ /dev/null @@ -1 +0,0 @@ --Add back run file and modify PKGBUILD to install run diff --git a/abs/extra/community/vsftpd/run b/abs/extra/community/vsftpd/run deleted file mode 100644 index 1fd5202..0000000 --- a/abs/extra/community/vsftpd/run +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -exec 2>&1 -. /etc/profile -. /etc/systemconfig -export TERM=linux -. /etc/rc.conf -. /etc/rc.d/functions - -stat_runit "Starting VSFTPD" -export HOME=/root - -# Start vsftpd -/usr/sbin/vsftpd /etc/vsftpd.conf diff --git a/abs/extra/community/vsftpd/vsftpd.d b/abs/extra/community/vsftpd/vsftpd.d deleted file mode 100644 index 2731085..0000000 --- a/abs/extra/community/vsftpd/vsftpd.d +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/bash - -daemon_name=vsftpd - -. /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 - [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid - # RUN - $daemon_name & - # - if [ $? -gt 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) - # KILL - [ ! -z "$PID" ] && kill $PID &> /dev/null - # - if [ $? -gt 0 ]; then - stat_fail - exit 1 - else - rm -f /var/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 diff --git a/abs/extra/community/vsftpd/vsftpd.install b/abs/extra/community/vsftpd/vsftpd.install deleted file mode 100644 index 48f134e..0000000 --- a/abs/extra/community/vsftpd/vsftpd.install +++ /dev/null @@ -1,17 +0,0 @@ -# arg 1: the new package version -post_install() { - if [ -f lib/modules/`uname -r`/kernel/security/capability.ko ]; then - echo ">>> It appears that your current kernel has linux security" - echo ">>> capabilities built as a module. vsftpd requires this" - echo ">>> functionality to operate." - echo ">>>" - echo ">>> To activate the module, please load it now (modprobe capability)." - echo ">>> Also, you should add it to your MODULES array in rc.conf, so" - echo ">>> it will be activated automatically at boot-up." - fi -} - -post_upgrade() { - post_install $1 -} - diff --git a/abs/extra/community/vsftpd/vsftpd.xinetd b/abs/extra/community/vsftpd/vsftpd.xinetd deleted file mode 100644 index eff2eb3..0000000 --- a/abs/extra/community/vsftpd/vsftpd.xinetd +++ /dev/null @@ -1,10 +0,0 @@ -service ftp -{ - socket_type = stream - wait = no - user = root - server = /usr/sbin/vsftpd - log_on_success += HOST DURATION - log_on_failure += HOST - disable = yes -} diff --git a/abs/extra/community/zope-interface/PKGBUILD b/abs/extra/community/zope-interface/PKGBUILD deleted file mode 100644 index a2918bf..0000000 --- a/abs/extra/community/zope-interface/PKGBUILD +++ /dev/null @@ -1,21 +0,0 @@ -# $Id: PKGBUILD 87850 2010-08-18 13:23:55Z ibiru $ -# Maintainer : Ionut Biru <ibiru@archlinux.org> -# Contributor: Douglas Soares de Andrade <douglas@archlinux.org> - -pkgname=zope-interface -pkgver=3.5.3 -pkgrel=2 -pkgdesc="Separate distribution of the zope.interface package used in Zope 3." -license=('ZPL') -arch=('i686' 'x86_64') -url="http://www.zope.org/Products/ZopeInterface/" -depends=('python2') -source=(http://pypi.python.org/packages/source/z/zope.interface/zope.interface-${pkgver}.tar.gz) -md5sums=('1fdb9a77f92d3ada3e795a8c9b58d0c6') - -build() { - cd ${srcdir}/zope.interface-${pkgver} - python2 setup.py install --prefix=/usr --root=${pkgdir} --optimize=1 - # Blabla. - rm $pkgdir/usr/lib/python2.7/site-packages/zope/interface/README*.txt -} diff --git a/abs/extra/community/zvbi/PKGBUILD b/abs/extra/community/zvbi/PKGBUILD deleted file mode 100644 index 9bc150c..0000000 --- a/abs/extra/community/zvbi/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ -# Maintainer: -# Contributor: Alexander Baldeck <alexander@archlinux.org> -# Contributor: dorphell <dorphell@archlinux.org> -pkgname=zvbi -pkgver=0.2.33 -pkgrel=3 -pkgdesc="VBI capture and decoding library" -url="http://zapping.sourceforge.net/cgi-bin/view/ZVBI/WebHome" -arch=(i686 x86_64) -depends=('libpng' 'libx11') -license=('GPL') -options=('!libtool') -source=(http://downloads.sourceforge.net/sourceforge/zapping/${pkgname}-${pkgver}.tar.bz2 - fix-includes.patch) -md5sums=('1741a6045c3eedfb611d645f2da69ac8' - '38766bc59e1571133d0399f0102da653') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/fix-includes.patch" - ./configure --prefix=/usr --disable-static --mandir=/usr/share/man - make - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/community/zvbi/fix-includes.patch b/abs/extra/community/zvbi/fix-includes.patch deleted file mode 100644 index 2825264..0000000 --- a/abs/extra/community/zvbi/fix-includes.patch +++ /dev/null @@ -1,36 +0,0 @@ -Add proper #includes so that we do not get undef errors to S_ISCHR -during linking. - -Signed-off-by: Alex Chiang <achiang@canonical.com> ---- ---- zvbi-0.2.33.orig/src/io-dvb.c -+++ zvbi-0.2.33/src/io-dvb.c -@@ -29,6 +29,8 @@ - #include <errno.h> - #include <sys/select.h> - #include <sys/ioctl.h> -+#include <sys/types.h> -+#include <sys/stat.h> - - #ifndef HAVE_S64_U64 - /* Linux 2.6.x asm/types.h defines __s64 and __u64 only ---- zvbi-0.2.33.orig/src/io-v4l.c -+++ zvbi-0.2.33/src/io-v4l.c -@@ -42,6 +42,7 @@ static const char rcsid [] = - #include <assert.h> - #include <sys/time.h> /* timeval */ - #include <sys/types.h> /* fd_set, uid_t */ -+#include <sys/stat.h> /* S_ISCHR */ - #include <sys/ioctl.h> /* for (_)videodev.h */ - #include <pthread.h> - ---- zvbi-0.2.33.orig/contrib/ntsc-cc.c -+++ zvbi-0.2.33/contrib/ntsc-cc.c -@@ -34,6 +34,7 @@ - #include <locale.h> - #include <sys/ioctl.h> - #include <sys/types.h> -+#include <sys/stat.h> - #include <sys/time.h> - #ifdef HAVE_GETOPT_LONG - # include <getopt.h> diff --git a/abs/extra/congruity/PKGBUILD b/abs/extra/congruity/PKGBUILD deleted file mode 100644 index 470a1e3..0000000 --- a/abs/extra/congruity/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ -# Maintainers: -# Andreas Baumann <abaumann@yahoo.com> -# Guillaume DUMOULIN <guillaume.dumoulin@gmail.com> -# Contributor: elsixdiab - -pkgname=congruity -pkgver=15 -pkgrel=2 -pkgdesc="Congruity is a GUI application for programming Logitech(R) Harmony(TM) remote controls." -arch=('any') -url="http://congruity.sourceforge.net" -license=('GPL3') -depends=('libconcord' 'wxpython' 'python-libconcord') -makedepends=() -install= -options= -source=(http://downloads.sourceforge.net/project/congruity/congruity/${pkgver}/"${pkgname}-${pkgver}.tar.bz2") -md5sums=('c67cc411a7f7f02758fd55101c1a4be3') - -build() { - cd $srcdir/$pkgname-$pkgver - sed -i 's@#!/usr/bin/env python@#!/usr/bin/env python2@g' congruity - make DESTDIR=${pkgdir} PREFIX=/usr install -} diff --git a/abs/extra/conky/PKGBUILD b/abs/extra/conky/PKGBUILD deleted file mode 100644 index d542937..0000000 --- a/abs/extra/conky/PKGBUILD +++ /dev/null @@ -1,47 +0,0 @@ -# $Id$ -# Contributor: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: James Rayner <james@archlinux.org> -# Contributor: Partha Chowdhury <kira.laucas@gmail.com> -# Maintainer: Gaetan Bisson <bisson@archlinux.org> - -pkgname=conky -pkgver=1.8.1 -pkgrel=3 -pkgdesc='An advanced, highly configurable system monitor for X based on torsmo' -arch=('i686' 'x86_64') -url='http://conky.sourceforge.net/' -license=('custom') -replaces=('torsmo') -makedepends=('pkg-config') -depends=('alsa-lib' 'libxml2' 'curl' 'wireless_tools' 'libxft' 'glib2' 'libxdamage' 'imlib2') -backup=('etc/conky/conky.conf' 'etc/conky/conky_no_x11.conf') -source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz" - 'current-power.patch') - -sha1sums=('06bbe9b7eed8603fa7a971b27c5c61f38424ac6f' - '2eeef0cc5a0b612826b2a7f0b43b7a3b7e10bf0b') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - patch -p1 < ../current-power.patch # See FS#21984 - - ./configure \ - --prefix=/usr \ - --sysconfdir=/etc \ - --enable-ibm \ - --enable-curl \ - --enable-rss \ - --enable-weather-xoap \ - --enable-imlib2 \ - --disable-lua \ - --enable-wlan \ - - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} diff --git a/abs/extra/conky/current-power.patch b/abs/extra/conky/current-power.patch deleted file mode 100644 index 1e7cf5a..0000000 --- a/abs/extra/conky/current-power.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -aur old/src/linux.c new/src/linux.c ---- old/src/linux.c 2010-10-05 23:29:36.000000000 +0200 -+++ new/src/linux.c 2010-12-06 22:18:59.346667183 +0100 -@@ -1671,6 +1671,8 @@ - the tradition! */ - else if (strncmp(buf, "POWER_SUPPLY_CURRENT_NOW=", 25) == 0) - sscanf(buf, "POWER_SUPPLY_CURRENT_NOW=%d", &present_rate); -+ else if (strncmp(buf, "POWER_SUPPLY_POWER_NOW=", 23) == 0) -+ sscanf(buf, "POWER_SUPPLY_POWER_NOW=%d", &present_rate); - else if (strncmp(buf, "POWER_SUPPLY_ENERGY_NOW=", 24) == 0) - sscanf(buf, "POWER_SUPPLY_ENERGY_NOW=%d", &remaining_capacity); - else if (strncmp(buf, "POWER_SUPPLY_ENERGY_FULL=", 25) == 0) diff --git a/abs/extra/consolekit/PKGBUILD b/abs/extra/consolekit/PKGBUILD deleted file mode 100644 index 10a1f7f..0000000 --- a/abs/extra/consolekit/PKGBUILD +++ /dev/null @@ -1,45 +0,0 @@ -# $Id: PKGBUILD 87085 2010-08-10 18:29:16Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: onestep_ua <onestep@ukr.net> - -pkgname=consolekit -pkgver=0.4.1 -pkgrel=4 -pkgdesc="A framework for defining and tracking users, login sessions, and seats" -arch=('i686' 'x86_64') -url="http://www.freedesktop.org/wiki/Software/ConsoleKit" -license=('GPL') -depends=('polkit>=0.95' 'zlib' 'libx11>=1.2.2') -makedepends=('pkgconfig' 'xmlto' 'docbook-xsl') -options=(!libtool) -source=(http://www.freedesktop.org/software/ConsoleKit/dist/ConsoleKit-${pkgver}.tar.bz2 - pam-foreground-compat.ck - nodaemon.patch - reorder-initialization.patch - add_since_option.patch - consolekit.logrotate) -md5sums=('48eda4483cc97841d5f88e8e003eb6d7' - 'a8a4de71d9b0549b8143e5f6c2a36fc7' - 'a5bfd56bc89411ff5bb18276a68cb212' - '99fa8cb1bf232050cc0c076378e216c5' - 'bd5e72397fe2d42a933a897d28d58155' - '6fefa451d9fe2fc6d6269629d3529793') - -build() { - cd "${srcdir}/ConsoleKit-${pkgver}" - patch -Np1 -i "${srcdir}/nodaemon.patch" - patch -Np1 -i "${srcdir}/reorder-initialization.patch" - patch -Np1 -i "${srcdir}/add_since_option.patch" - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --libexecdir=/usr/lib/ConsoleKit \ - --enable-pam-module \ - --enable-docbook-docs - make - make DESTDIR="${pkgdir}" install - install -m755 "${srcdir}/pam-foreground-compat.ck" "${pkgdir}/usr/lib/ConsoleKit/run-session.d/" - - # install the logrotate config - install -D -m644 ${srcdir}/consolekit.logrotate ${pkgdir}/etc/logrotate.d/consolekit -} diff --git a/abs/extra/consolekit/add_since_option.patch b/abs/extra/consolekit/add_since_option.patch deleted file mode 100644 index 50c1421..0000000 --- a/abs/extra/consolekit/add_since_option.patch +++ /dev/null @@ -1,220 +0,0 @@ -From c9f2292339540d4b9d8940bcef16b7485480c8d9 Mon Sep 17 00:00:00 2001 -From: William Jon McCann <jmccann@redhat.com> -Date: Fri, 11 Jun 2010 19:53:22 +0000 -Subject: Add a --since option to show entries in a time window - -Doesn't load any history files it doesn't need to which should -help performance on systems with long histories. - -https://bugs.freedesktop.org/show_bug.cgi?id=25660 ---- -diff --git a/tools/ck-history.c b/tools/ck-history.c -index 606106c..d02caaa 100644 ---- a/tools/ck-history.c -+++ b/tools/ck-history.c -@@ -62,8 +62,8 @@ typedef enum { - - static GList *all_events = NULL; - --static gboolean --process_event_line (const char *line) -+static CkLogEvent * -+parse_event_line (const char *line) - { - GString *str; - CkLogEvent *event; -@@ -72,47 +72,80 @@ process_event_line (const char *line) - event = ck_log_event_new_from_string (str); - g_string_free (str, TRUE); - -- if (event != NULL) { -- all_events = g_list_prepend (all_events, event); -- } -- -- return TRUE; -+ return event; - } - - static gboolean --process_log_gzstream (gzFile *fstream) -+process_log_gzstream (gzFile *fstream, -+ GTimeVal *since) - { -- char line[MAX_LINE_LEN]; -+ char line[MAX_LINE_LEN]; -+ gboolean hit_since; -+ GList *events; - -+ events = NULL; -+ hit_since = FALSE; - while (gzgets (fstream, line, sizeof (line)) != Z_NULL) { -+ CkLogEvent *event; -+ - if (strlen (line) == sizeof (line) - 1) { - g_warning ("Log line truncated"); - } - -- process_event_line (line); -+ event = parse_event_line (line); -+ if (event == NULL) { -+ continue; -+ } -+ -+ if (since == NULL || event->timestamp.tv_sec >= since->tv_sec) { -+ events = g_list_prepend (events, event); -+ } else { -+ hit_since = TRUE; -+ } - } - -- return TRUE; -+ all_events = g_list_concat (all_events, events); -+ -+ return !hit_since; - } - - static gboolean --process_log_stream (FILE *fstream) -+process_log_stream (FILE *fstream, -+ GTimeVal *since) - { -- char line[MAX_LINE_LEN]; -+ char line[MAX_LINE_LEN]; -+ gboolean hit_since; -+ GList *events; - -+ events = NULL; -+ hit_since = FALSE; - while (fgets (line, sizeof (line), fstream) != NULL) { -+ CkLogEvent *event; -+ - if (strlen (line) == sizeof (line) - 1) { - g_warning ("Log line truncated"); - } - -- process_event_line (line); -+ event = parse_event_line (line); -+ if (event == NULL) { -+ continue; -+ } -+ -+ if (since == NULL || event->timestamp.tv_sec >= since->tv_sec) { -+ events = g_list_prepend (events, event); -+ } else { -+ hit_since = TRUE; -+ } - } - -- return TRUE; -+ all_events = g_list_concat (all_events, events); -+ -+ return !hit_since; - } - - static gboolean --process_log_file (const char *filename) -+process_log_file (const char *filename, -+ GTimeVal *since) - { - gboolean ret; - -@@ -131,7 +164,7 @@ process_log_file (const char *filename) - errmsg); - return FALSE; - } -- ret = process_log_gzstream (f); -+ ret = process_log_gzstream (f, since); - gzclose (f); - } else { - FILE *f; -@@ -143,7 +176,7 @@ process_log_file (const char *filename) - g_strerror (errno)); - return FALSE; - } -- ret = process_log_stream (f); -+ ret = process_log_stream (f, since); - fclose (f); - } - -@@ -180,11 +213,14 @@ get_log_file_list (void) - files = g_list_prepend (files, filename); - }; - -+ /* Return the list in reverse time order, newest first */ -+ files = g_list_reverse (files); -+ - return files; - } - - static gboolean --process_logs (void) -+process_logs (GTimeVal *since) - { - gboolean ret; - GList *files; -@@ -199,8 +235,7 @@ process_logs (void) - char *filename; - - filename = l->data; -- -- res = process_log_file (filename); -+ res = process_log_file (filename, since); - if (! res) { - goto out; - } -@@ -843,6 +878,8 @@ main (int argc, - GError *error = NULL; - int report_type; - int uid; -+ GTimeVal timestamp; -+ gboolean use_since; - static gboolean do_version = FALSE; - static gboolean report_last_compat = FALSE; - static gboolean report_last = FALSE; -@@ -851,6 +888,7 @@ main (int argc, - static char *username = NULL; - static char *seat = NULL; - static char *session_type = NULL; -+ static char *since = NULL; - static GOptionEntry entries [] = { - { "version", 'V', 0, G_OPTION_ARG_NONE, &do_version, N_("Version of this application"), NULL }, - { "frequent", 0, 0, G_OPTION_ARG_NONE, &report_frequent, N_("Show listing of frequent users"), NULL }, -@@ -860,6 +898,7 @@ main (int argc, - { "seat", 's', 0, G_OPTION_ARG_STRING, &seat, N_("Show entries for the specified seat"), N_("SEAT") }, - { "session-type", 't', 0, G_OPTION_ARG_STRING, &session_type, N_("Show entries for the specified session type"), N_("TYPE") }, - { "user", 'u', 0, G_OPTION_ARG_STRING, &username, N_("Show entries for the specified user"), N_("NAME") }, -+ { "since", 0, 0, G_OPTION_ARG_STRING, &since, N_("Show entries since the specified time (ISO 8601 format)"), N_("DATETIME") }, - { NULL } - }; - -@@ -880,6 +919,15 @@ main (int argc, - exit (1); - } - -+ use_since = FALSE; -+ if (since != NULL) { -+ use_since = g_time_val_from_iso8601 (since, ×tamp); -+ if (! use_since) { -+ g_warning ("Invalid ISO 8601 time value"); -+ exit (1); -+ } -+ } -+ - if (report_last_compat) { - report_type = REPORT_TYPE_LAST_COMPAT; - } else if (report_last) { -@@ -902,7 +950,11 @@ main (int argc, - uid = -1; - } - -- process_logs (); -+ if (use_since) { -+ process_logs (×tamp); -+ } else { -+ process_logs (NULL); -+ } - generate_report (report_type, uid, seat, session_type); - free_events (); - --- -cgit v0.8.3-6-g21f6 diff --git a/abs/extra/consolekit/consolekit.logrotate b/abs/extra/consolekit/consolekit.logrotate deleted file mode 100644 index 7c5346e..0000000 --- a/abs/extra/consolekit/consolekit.logrotate +++ /dev/null @@ -1,5 +0,0 @@ -/var/log/ConsoleKit/history { - missingok - notifempty - delaycompress -} diff --git a/abs/extra/consolekit/nodaemon.patch b/abs/extra/consolekit/nodaemon.patch deleted file mode 100644 index c4c08e9..0000000 --- a/abs/extra/consolekit/nodaemon.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -up ConsoleKit-0.4.1/data/org.freedesktop.ConsoleKit.service.in.nodaemon ConsoleKit-0.4.1/data/org.freedesktop.ConsoleKit.service.in ---- ConsoleKit-0.4.1/data/org.freedesktop.ConsoleKit.service.in.nodaemon 2009-12-15 10:56:39.839818556 -0500 -+++ ConsoleKit-0.4.1/data/org.freedesktop.ConsoleKit.service.in 2009-12-15 10:56:50.177792048 -0500 -@@ -1,4 +1,4 @@ - [D-BUS Service] - Name=org.freedesktop.ConsoleKit --Exec=@sbindir@/console-kit-daemon -+Exec=@sbindir@/console-kit-daemon --no-daemon - User=root diff --git a/abs/extra/consolekit/pam-foreground-compat.ck b/abs/extra/consolekit/pam-foreground-compat.ck deleted file mode 100644 index 7f6b122..0000000 --- a/abs/extra/consolekit/pam-foreground-compat.ck +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -TAGDIR=/var/run/console - -[ -n "$CK_SESSION_USER_UID" ] || exit 1 - -TAGFILE="$TAGDIR/`getent passwd $CK_SESSION_USER_UID | cut -f 1 -d:`" - -if [ "$1" = "session_added" ]; then - mkdir -p "$TAGDIR" - echo "$CK_SESSION_ID" >> "$TAGFILE" -fi - -if [ "$1" = "session_removed" ] && [ -e "$TAGFILE" ]; then - sed -i "\%^$CK_SESSION_ID\$%d" "$TAGFILE" - [ -s "$TAGFILE" ] || rm -f "$TAGFILE" -fi diff --git a/abs/extra/consolekit/reorder-initialization.patch b/abs/extra/consolekit/reorder-initialization.patch deleted file mode 100644 index f65abd5..0000000 --- a/abs/extra/consolekit/reorder-initialization.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -up ConsoleKit-0.4.1/src/main.c.reorder-initialization ConsoleKit-0.4.1/src/main.c ---- ConsoleKit-0.4.1/src/main.c.reorder-initialization 2009-12-18 14:51:38.821212946 -0500 -+++ ConsoleKit-0.4.1/src/main.c 2009-12-18 14:52:19.246211176 -0500 -@@ -294,11 +294,19 @@ main (int argc, - - setup_debug_log (debug); - -+ g_debug ("initializing console-kit-daemon %s", VERSION); -+ - connection = get_system_bus (); - if (connection == NULL) { - goto out; - } - -+ manager = ck_manager_new (); -+ -+ if (manager == NULL) { -+ goto out; -+ } -+ - bus_proxy = get_bus_proxy (connection); - if (bus_proxy == NULL) { - g_warning ("Could not construct bus_proxy object; bailing out"); -@@ -310,16 +318,8 @@ main (int argc, - goto out; - } - -- g_debug ("initializing console-kit-daemon %s", VERSION); -- - create_pid_file (); - -- manager = ck_manager_new (); -- -- if (manager == NULL) { -- goto out; -- } -- - loop = g_main_loop_new (NULL, FALSE); - - g_signal_connect (bus_proxy, diff --git a/abs/extra/cpufreqd/PKGBUILD b/abs/extra/cpufreqd/PKGBUILD deleted file mode 100644 index fd6d544..0000000 --- a/abs/extra/cpufreqd/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 60269 2009-12-02 16:30:29Z giovanni $ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Kevin Piche <kevin@archlinux.org> -# Contributor: Manolis Tzanidakis <manolis@archlinux.org> - -pkgname=cpufreqd -pkgver=2.4.2 -pkgrel=1 -pkgdesc="A small daemon to adjust cpu speed (and indeed voltage)" -arch=('i686' 'x86_64') -url="http://sourceforge.net/projects/cpufreqd" -license=('GPL2') -depends=('cpufrequtils') -install="$pkgname.install" -backup=(etc/cpufreqd.conf) -options=('!libtool') -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2 - 'cpufreqd') - -build() { - cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr \ - --sysconfdir=/etc - make || return 1 - make DESTDIR=$pkgdir install - - install -D -m 755 $srcdir/cpufreqd $pkgdir/etc/rc.d/cpufreqd || return 1 -} -md5sums=('2ca80a77849c9a69b81e27c1843c97f5' - 'ae7b0ec1e8e9f9e7f05fb83749af4ed4') diff --git a/abs/extra/cpufreqd/cpufreqd b/abs/extra/cpufreqd/cpufreqd deleted file mode 100644 index af55456..0000000 --- a/abs/extra/cpufreqd/cpufreqd +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/sbin/cpufreqd` -case "$1" in - start) - stat_busy "Starting cpufreqd" - [ -z "$PID" ] && /usr/sbin/cpufreqd - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon cpufreqd - stat_done - fi - ;; - stop) - stat_busy "Stopping cpufreqd" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon cpufreqd - stat_done - fi - ;; - restart) - $0 stop - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/abs/extra/cpufreqd/cpufreqd.install b/abs/extra/cpufreqd/cpufreqd.install deleted file mode 100644 index e56ce57..0000000 --- a/abs/extra/cpufreqd/cpufreqd.install +++ /dev/null @@ -1,26 +0,0 @@ -post_install() { - cat << EOF - -NOTE ----- -In order to use that daemon you need to either patch your -kernel-2.4.x with cpufreq patch (check -http://www.codemonkey.org.uk/projects/cpufreq/), -or use kernel-2.6.x or 2.4.x.-ac. - -EOF -} - -post_upgrade() { - /bin/true -} - -# arg 1: the old package version -pre_remove() { - /bin/true -} - -op=$1 -shift - -$op $* diff --git a/abs/extra/cpufrequtils/PKGBUILD b/abs/extra/cpufrequtils/PKGBUILD deleted file mode 100644 index c9087aa..0000000 --- a/abs/extra/cpufrequtils/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# $Id: PKGBUILD 66595 2010-02-01 00:00:07Z giovanni $ -# Maintainer: kevin <kevin@archlinux.org> -# Contributor: phrakture <aaronmgriffin+gmail+com> -# Contributor: SpepS <dreamspepser at yahoo dot it> - -pkgname=cpufrequtils -pkgver=008 -pkgrel=1 -pkgdesc="Userspace tools for the kernel cpufreq subsystem" -arch=('i686' 'x86_64') -url="http://www.kernel.org/pub/linux/utils/kernel/cpufreq/cpufrequtils.html" -license=('GPL') -depends=('sysfsutils') -backup=('etc/conf.d/cpufreq') -source=(http://www.kernel.org/pub/linux/utils/kernel/cpufreq/${pkgname}-${pkgver}.tar.bz2 - cpufreq.rcd - cpufreq.confd) -options=(!libtool) - -build() -{ - cd "${srcdir}/${pkgname}-${pkgver}" - - make -j1 || return 1 - make INSTALL="/bin/install -c" mandir=/usr/share/man DESTDIR="${pkgdir}" install || return 1 - - install -D -m755 ${srcdir}/cpufreq.rcd "${pkgdir}/etc/rc.d/cpufreq" || return 1 - install -D -m644 ${srcdir}/cpufreq.confd "${pkgdir}/etc/conf.d/cpufreq" || return 1 -} -md5sums=('c59b71c044d463896f3247e8dd83dd7e' - '7f2b5085df44d2df3e7c2d0b9f6dab08' - 'baae1f2abffc6bef2bd32a8dd8263c09') diff --git a/abs/extra/cpufrequtils/cpufreq.confd b/abs/extra/cpufrequtils/cpufreq.confd deleted file mode 100644 index 2189097..0000000 --- a/abs/extra/cpufrequtils/cpufreq.confd +++ /dev/null @@ -1,14 +0,0 @@ -#configuration for cpufreq control - -# valid governors: -# ondemand, performance, powersave, -# conservative, userspace -#governor="ondemand" - -# limit frequency range (optional) -# valid suffixes: Hz, kHz (default), MHz, GHz, THz -#min_freq="2.25GHz" -#max_freq="3GHz" - -# use freq to set up the exact cpu frequency using it with userspace governor -#freq= diff --git a/abs/extra/cpufrequtils/cpufreq.rcd b/abs/extra/cpufrequtils/cpufreq.rcd deleted file mode 100644 index 9bc19b1..0000000 --- a/abs/extra/cpufrequtils/cpufreq.rcd +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -# source application-specific settings -[ -f /etc/conf.d/cpufreq ] && . /etc/conf.d/cpufreq - -case "$1" in - start) - stat_busy "Setting cpufreq governing rules" - - params="" - if [ -n "$governor" ]; then - mod="cpufreq_$governor" - params="-g $governor" - grep -qw "$governor" /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_governors || modprobe -q $mod - if [ $? -eq 0 ]; then - if [ "$min_freq" != "" ]; then - params="$params -d $min_freq" - fi - if [ "$max_freq" != "" ]; then - params="$params -u $max_freq" - fi - else - stat_busy " Cannot load governor module '$governor'" - stat_fail - exit - fi - fi - - if [ "$params" != "" ]; then - CPUS=$(sed -ne 's/^processor.* \([0-9]\+\)$/\1/p' /proc/cpuinfo) - stat_append ", cpu" - for cpu in $CPUS; do - stat_append " $cpu" - cpufreq-set -c $cpu $params - if [ "$freq" != "" ]; then - cpufreq-set -c $cpu -f $freq - fi - done - stat_done - else - stat_busy " Invalid configuration in /etc/conf.d/cpufreq" - stat_fail - fi - ;; - stop) - # nothing to do - ;; - restart) - $0 start - ;; - set) - # TODO: make callable... "cpufreq set 800MHz" - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/abs/extra/crda/PKGBUILD b/abs/extra/crda/PKGBUILD index 4fbb201..88ad6cc 100644 --- a/abs/extra/crda/PKGBUILD +++ b/abs/extra/crda/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 79865 2010-05-08 15:22:52Z thomas $ +# $Id: PKGBUILD 158615 2012-05-05 03:17:06Z allan $ # Maintainer: Thomas Bächler <thomas@archlinux.org> pkgname=crda -pkgver=1.1.1 -pkgrel=1 -pkgdesc="Central Regulatory Domain Agent" +pkgver=1.1.2 +pkgrel=3 +pkgdesc="Central Regulatory Domain Agent for wireless networks" arch=(i686 x86_64) url="http://wireless.kernel.org/en/developers/Regulatory/CRDA" license=('custom') @@ -12,22 +12,26 @@ depends=('wireless-regdb' 'libnl' 'libgcrypt' 'udev' 'iw') makedepends=('python-m2crypto') install=crda.install source=(http://wireless.kernel.org/download/crda/${pkgname}-${pkgver}.tar.bz2 - crda.rc) -md5sums=('5fc77af68b3e21736b8ef2f8b061c810' - '014eef3f8655e9a130064ec6891317fc') + crda.rc libnl32.patch) +md5sums=('5226f65aebacf94baaf820f8b4e06df4' + '014eef3f8655e9a130064ec6891317fc' + 'c1f7aff29f15a0364ae6f7905a1d4ae6') build() { + cd "${srcdir}"/${pkgname}-${pkgver} + patch -Np1 -i "$srcdir/libnl32.patch" + sed 's|^#!/usr/bin/env python|#!/usr/bin/python2|' -i utils/key2pub.py + make crda regdbdump +} + +package() { # Install crda, regdbdump and udev rules - msg "Compiling and installing crda ..." - cd ${srcdir}/${pkgname}-${pkgver} - make crda regdbdump || return 1 - make DESTDIR=${pkgdir} install || return 1 + cd "${srcdir}"/${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" UDEV_RULE_DIR=/usr/lib/udev/rules.d/ install # This rule automatically sets the regulatory domain when cfg80211 is loaded - echo 'ACTION=="add" SUBSYSTEM=="module", DEVPATH=="/module/cfg80211", RUN+="/etc/rc.d/wireless-regdom start >/dev/null"' >> ${pkgdir}/lib/udev/rules.d/85-regulatory.rules || return 1 + echo 'ACTION=="add" SUBSYSTEM=="module", DEVPATH=="/module/cfg80211", RUN+="/etc/rc.d/wireless-regdom start >/dev/null"' >> "${pkgdir}"/usr/lib/udev/rules.d/85-regulatory.rules - msg "Installing license ..." - install -D -m644 ${srcdir}/${pkgname}-${pkgver}/LICENSE ${pkgdir}/usr/share/licenses/crda/LICENSE || return 1 + install -D -m644 "${srcdir}"/${pkgname}-${pkgver}/LICENSE "${pkgdir}"/usr/share/licenses/crda/LICENSE - msg "Installing boot script ..." - install -D -m755 ${srcdir}/crda.rc ${pkgdir}/etc/rc.d/wireless-regdom || return 1 + install -D -m755 "${srcdir}"/crda.rc "${pkgdir}"/etc/rc.d/wireless-regdom } diff --git a/abs/extra/crda/crda.conf.d b/abs/extra/crda/crda.conf.d deleted file mode 100644 index 8511238..0000000 --- a/abs/extra/crda/crda.conf.d +++ /dev/null @@ -1,4 +0,0 @@ -# -# Wireless regulatory domain configuration -# - diff --git a/abs/extra/crda/libnl32.patch b/abs/extra/crda/libnl32.patch new file mode 100644 index 0000000..682b6c5 --- /dev/null +++ b/abs/extra/crda/libnl32.patch @@ -0,0 +1,12 @@ +diff -u -r crda-1.1.2/Makefile crda-1.1.2-libnl32/Makefile +--- crda-1.1.2/Makefile 2011-08-10 01:36:19.000000000 +0200 ++++ crda-1.1.2-libnl32/Makefile 2012-02-09 18:53:33.376430180 +0100 +@@ -51,7 +51,7 @@ + + ifeq ($(NL3FOUND),Y) + CFLAGS += -DCONFIG_LIBNL30 +-NLLIBS += -lnl-genl ++NLLIBS += $(shell pkg-config --libs libnl-genl-3.0) + NLLIBNAME = libnl-3.0 + else + ifeq ($(NL2FOUND),Y) diff --git a/abs/extra/crypto++/PKGBUILD b/abs/extra/crypto++/PKGBUILD deleted file mode 100644 index 45c90d5..0000000 --- a/abs/extra/crypto++/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id$ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Alexander Rødseth <rodseth@gmail.com> -# Contributor: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Kritoke <kritoke@gamebox.net> -# Contributor: jlvsimoes <jlvsimoes@oninet.pt> - -pkgname=crypto++ -pkgver=5.6.1 -_srcver=561 -pkgrel=2 -pkgdesc="A free C++ class library of cryptographic schemes." -arch=('i686' 'x86_64') -url="http://www.cryptopp.com/" -license=('custom') -depends=('gcc-libs') -makedepends=('unzip') -source=(http://www.cryptopp.com/cryptopp${_srcver}.zip - libcrypto++.pc) -md5sums=('96cbeba0907562b077e26bcffb483828' - '2337c6edbc552d9142cae8e0854715e7') - -build() { - cd ${srcdir} - sed -i -e 's/^CXXFLAGS/#CXXFLAGS/' GNUmakefile - export CXXFLAGS="${CXXFLAGS} -DNDEBUG -fPIC" - make -f GNUmakefile - make libcryptopp.so - install -d ${pkgdir}/usr/{lib/pkgconfig,include/cryptopp} - install -m644 *.h ${pkgdir}/usr/include/cryptopp/ - install -m644 libcryptopp.a ${pkgdir}/usr/lib/libcryptopp.a - install -m644 libcryptopp.so ${pkgdir}/usr/lib/libcryptopp.so - install -m644 ${srcdir}/libcrypto++.pc "${pkgdir}/usr/lib/pkgconfig/libcrypto++.pc" - install -D -m644 License.txt ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE -} - diff --git a/abs/extra/crypto++/libcrypto++.pc b/abs/extra/crypto++/libcrypto++.pc deleted file mode 100644 index 698d761..0000000 --- a/abs/extra/crypto++/libcrypto++.pc +++ /dev/null @@ -1,11 +0,0 @@ -# Written by Alexander Rødseth <rodseth@gmail.com> - -prefix=/usr -libdir=${prefix}/lib -includedir=${prefix}/include - -Name: libcrypto++-5.6.1 -Description: Class library of cryptographic schemes -Version: 5.6.1 -Libs: -L${libdir} -lcryptopp -Cflags: -I${includedir} diff --git a/abs/extra/crystalhd-firmware/PKGBUILD b/abs/extra/crystalhd-firmware/PKGBUILD deleted file mode 100644 index 6fcff54..0000000 --- a/abs/extra/crystalhd-firmware/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# Contributor: Lex Rivera <x-demon@x-demon.org> -pkgname=crystalhd-firmware -pkgver=20100703 -_intver=07032010 -pkgrel=1 -pkgdesc="Broadcom Crystal HD firmware" -arch=('i686' 'x86_64') -url="http://git.wilsonet.com/crystalhd.git/" -license=('GPL2') -source=("http://www.broadcom.com/docs/support/crystalhd/crystalhd_linux_${pkgver}.zip") - -md5sums=('f14c0e418b36ea14f8d25f9a7d6f7507') - -build() { - tar zxf crystalhd_${_intver}.tbz2 - cd $srcdir/${_intver}/linux_lib/libcrystalhd/ - msg "Building..." - #./configure - make - make DESTDIR=${pkgdir} install - rm -rf ${pkgdir}/usr - -} -# vim:syntax=sh diff --git a/abs/extra/crystalhd-git/PKGBUILD b/abs/extra/crystalhd-git/PKGBUILD deleted file mode 100644 index a7b3e7f..0000000 --- a/abs/extra/crystalhd-git/PKGBUILD +++ /dev/null @@ -1,52 +0,0 @@ -# Contributor: Petteri Tolonen <petteri.tolonen[at]gmail.com> -# Maintainer: Petteri Tolonen <petteri.tolonen[at]gmail.com> - -pkgname=crystalhd-git -pkgver=20111227 -pkgrel=1 -pkgdesc="Broadcom CrystalHD kernel module" -arch=('i686' 'x86_64') -url="http://linuxtv.org/git/jarod/crystalhd.git" -license=('GPL2') -depends=('libcrystalhd-git') -makedepends=('autoconf' 'make' 'git') -install='crystalhd-git.install' -conflicts=('crystalhd') -_gitroot='git://linuxtv.org/jarod/crystalhd.git' -_gitname='crystalhd' - -build() { - - cd $startdir/src - - msg "Connecting to the GIT server...." - - if [ -d $startdir/src/$_gitname ] ; then - cd $_gitname && git pull origin - msg "The local files are updated." - else - git clone $_gitroot - cd $_gitname - fi - - cd driver/linux - - autoconf - ./configure --prefix=/usr - sed -i 's/'-Werror'/''/g' Makefile - - if ! grep -q "<linux/delay.h>" $srcdir/crystalhd/driver/linux/crystalhd_flea_ddr.c - then - sed -i '26i #include <linux/delay.h>' $srcdir/crystalhd/driver/linux/crystalhd_flea_ddr.c - fi - - make || return 1 - - mkdir -p $pkgdir/etc/udev/rules.d - mkdir -p $pkgdir/lib/modules/$(uname -r)/kernel/drivers/video/broadcom - - cp -f 20-crystalhd.rules $pkgdir/etc/udev/rules.d/ - install -d $pkgdir/lib/modules/$(uname -r)/kernel/drivers/video/broadcom - install -m 0644 crystalhd.ko $pkgdir/lib/modules/$(uname -r)/kernel/drivers/video/broadcom -} -md5sums=() diff --git a/abs/extra/crystalhd-git/crystalhd-git.install b/abs/extra/crystalhd-git/crystalhd-git.install deleted file mode 100644 index 077905e..0000000 --- a/abs/extra/crystalhd-git/crystalhd-git.install +++ /dev/null @@ -1,6 +0,0 @@ -post_install () { - depmod -a -} -post_upgrade() { - post_install -} diff --git a/abs/extra/cups-filters/PKGBUILD b/abs/extra/cups-filters/PKGBUILD new file mode 100644 index 0000000..9c98916 --- /dev/null +++ b/abs/extra/cups-filters/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 163770 2012-07-19 15:53:24Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> + +pkgname=cups-filters +pkgver=1.0.19 +pkgrel=1 +pkgdesc="OpenPrinting CUPS Filters" +arch=('i686' 'x86_64') +url="http://www.linuxfoundation.org/collaborate/workgroups/openprinting" +license=('GPL') +depends=('lcms2' 'poppler>=0.20.1') +makedepends=('ghostscript' 'ttf-dejavu') # ttf-dejavu for make check +optdepends=('ghostscript: for non-PostScript printers to print with CUPS to convert PostScript to raster images' + 'foomatic-db: drivers use Ghostscript to convert PostScript to a printable form directly' + 'foomatic-db-engine: drivers use Ghostscript to convert PostScript to a printable form directly' + 'foomatic-db-nonfree: drivers use Ghostscript to convert PostScript to a printable form directly') +backup=(etc/fonts/conf.d/99pdftoopvp.conf) +options=(!libtool) +source=(http://www.openprinting.org/download/cups-filters/$pkgname-$pkgver.tar.gz + buildfix_poppler.diff + buildfix_dlopen.diff) +md5sums=('e3c9ad58ec005eda2f0ac2f3190a63b3' + 'b3d5b60a50568d06d1ef43c285ce7802' + '8b0c8874ef5c985287cada55db75d8d1') + +build() { + cd "$srcdir/$pkgname-$pkgver" + # https://bugs.linuxfoundation.org/show_bug.cgi?id=1055 + patch -Np0 -i ${srcdir}/buildfix_poppler.diff + patch -Np0 -i ${srcdir}/buildfix_dlopen.diff + autoreconf -v + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --with-test-font-path=/usr/share/fonts/TTF/DejaVuSans.ttf + make +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + make -k check +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install + # drop static lib + rm -f ${pkgdir}/usr/lib/*.a +} diff --git a/abs/extra/cups-filters/buildfix_dlopen.diff b/abs/extra/cups-filters/buildfix_dlopen.diff new file mode 100644 index 0000000..eea5f50 --- /dev/null +++ b/abs/extra/cups-filters/buildfix_dlopen.diff @@ -0,0 +1,31 @@ +=== modified file 'Makefile.am' +--- Makefile.am 2012-06-22 15:40:53 +0000 ++++ Makefile.am 2012-07-19 09:36:30 +0000 +@@ -329,7 +329,8 @@ + $(FREETYPE_LIBS) \ + $(FONTCONFIG_LIBS) \ + $(LIBPNG_LIBS) \ +- $(POPPLER_LIBS) ++ $(POPPLER_LIBS) \ ++ $(DLOPEN_LIBS) + + EXTRA_DIST += $(pkgfontconfig_DATA) + +=== modified file 'configure.ac' +--- configure.ac 2012-07-19 14:02:32 +0000 ++++ configure.ac 2012-07-19 14:39:25 +0000 +@@ -110,6 +110,13 @@ + AC_DEFINE(PDFTOPDF, [], [Needed for pdftopdf filter compilation]) + AC_DEFINE_DIR(BANNERTOPDF_DATADIR, "{CUPS_DATADIR}/data", [Directory where bannertopdf finds its data files (PDF templates)]) + ++AC_SEARCH_LIBS([dlopen], ++ [dl], ++ DLOPEN_LIBS="-ldl", ++ AC_MSG_ERROR([unable to find the dlopen() function]) ++) ++AC_SUBST(DLOPEN_LIBS) ++ + # ====================== + # Check system functions + # ====================== + diff --git a/abs/extra/cups-filters/buildfix_poppler.diff b/abs/extra/cups-filters/buildfix_poppler.diff new file mode 100644 index 0000000..6f3cbc0 --- /dev/null +++ b/abs/extra/cups-filters/buildfix_poppler.diff @@ -0,0 +1,224 @@ +=== modified file 'NEWS' +--- NEWS 2012-07-11 19:48:23 +0000 ++++ NEWS 2012-07-19 14:02:32 +0000 +@@ -1,6 +1,11 @@ +-NEWS - OpenPrinting CUPS Filters v1.0.19 - 2012-07-11 ++NEWS - OpenPrinting CUPS Filters v1.0.20 - 2012-07-19 + ----------------------------------------------------- + ++CHANGES IN V1.0.20 ++ ++ - Made the Poppler-based filters pdftopdf and pdftoopvp build with ++ both Poppler 0.18.x and 0.20.x (Bug #1055). ++ + CHANGES IN V1.0.19 + + - Fixes according to Coverity scan results (Bug #1054). + +=== modified file 'configure.ac' +--- configure.ac 2012-07-11 19:48:23 +0000 ++++ configure.ac 2012-07-19 14:02:32 +0000 +@@ -202,6 +202,7 @@ + # ================ + POPPLER_INCLUDEDIR=`pkg-config poppler --variable includedir` + AC_CHECK_HEADER([UGooString.h], [AC_DEFINE([HAVE_UGOOSTRING_H],,[Have UGooString.h])], []) ++AC_CHECK_HEADER([poppler/cpp/poppler-version.h], [AC_DEFINE([HAVE_CPP_POPPLER_VERSION_H],,[Define if you have Poppler's "cpp/poppler-version.h" header file.])], []) + # FIXME: + # Use proper c compile check not greps and then just link again poppler with all the features + # instead of this and all the libs. + +=== modified file 'filter/PDFError.h' +--- filter/PDFError.h 2012-03-29 14:06:07 +0000 ++++ filter/PDFError.h 2012-07-19 14:02:32 +0000 +@@ -31,6 +31,9 @@ + #include <config.h> + #include <stdarg.h> + #include <Error.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + + #if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 19 + #define pdfError(pos,...) error(errInternal,pos,__VA_ARGS__) + +=== modified file 'filter/pdftoijs.cxx' +--- filter/pdftoijs.cxx 2012-06-04 16:46:44 +0000 ++++ filter/pdftoijs.cxx 2012-07-19 14:02:32 +0000 +@@ -30,6 +30,9 @@ + #include <config.h> + #include <stdio.h> + #include <stdlib.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include <goo/GooString.h> + #include <goo/gmem.h> + #include <Object.h> + +=== modified file 'filter/pdftoopvp/OPVPError.h' +--- filter/pdftoopvp/OPVPError.h 2012-03-29 14:06:07 +0000 ++++ filter/pdftoopvp/OPVPError.h 2012-07-19 14:02:32 +0000 +@@ -31,6 +31,9 @@ + #include <config.h> + #include <stdarg.h> + #include <Error.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + + #if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 19 + #define opvpError(pos,...) error(errInternal,pos,__VA_ARGS__) + +=== modified file 'filter/pdftoopvp/OPVPOutputDev.cxx' +--- filter/pdftoopvp/OPVPOutputDev.cxx 2012-03-29 09:42:35 +0000 ++++ filter/pdftoopvp/OPVPOutputDev.cxx 2012-07-19 14:02:32 +0000 +@@ -8,6 +8,9 @@ + //======================================================================== + + #include <config.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + + #ifdef USE_GCC_PRAGMAS + #pragma implementation + +=== modified file 'filter/pdftoopvp/oprs/OPVPSplash.cxx' +--- filter/pdftoopvp/oprs/OPVPSplash.cxx 2012-03-29 09:42:35 +0000 ++++ filter/pdftoopvp/oprs/OPVPSplash.cxx 2012-07-19 14:02:32 +0000 +@@ -5,6 +5,9 @@ + //======================================================================== + + #include <config.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + + #ifdef USE_GCC_PRAGMAS + #pragma implementation + +=== modified file 'filter/pdftoopvp/oprs/OPVPSplashState.cxx' +--- filter/pdftoopvp/oprs/OPVPSplashState.cxx 2012-03-29 09:42:35 +0000 ++++ filter/pdftoopvp/oprs/OPVPSplashState.cxx 2012-07-19 14:02:32 +0000 +@@ -11,6 +11,9 @@ + #endif + + #include <string.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include "goo/gmem.h" + #include "splash/SplashPattern.h" + #include "splash/SplashScreen.h" + +=== modified file 'filter/pdftoopvp/oprs/OPVPSplashState.h' +--- filter/pdftoopvp/oprs/OPVPSplashState.h 2012-03-29 09:42:35 +0000 ++++ filter/pdftoopvp/oprs/OPVPSplashState.h 2012-07-19 14:02:32 +0000 +@@ -11,6 +11,9 @@ + #pragma interface + #endif + ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include "splash/SplashTypes.h" + #include "splash/SplashState.h" + #include "splash/Splash.h" + +=== modified file 'filter/pdftoopvp/oprs/OPVPSplashXPath.cxx' +--- filter/pdftoopvp/oprs/OPVPSplashXPath.cxx 2012-03-29 09:42:35 +0000 ++++ filter/pdftoopvp/oprs/OPVPSplashXPath.cxx 2012-07-19 14:02:32 +0000 +@@ -1,5 +1,8 @@ + #include <config.h> + #include <stdio.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include "splash/Splash.h" + #include "splash/SplashMath.h" + #include "OPVPSplashClip.h" + +=== modified file 'filter/pdftoopvp/oprs/OPVPSplashXPath.h' +--- filter/pdftoopvp/oprs/OPVPSplashXPath.h 2012-03-29 09:42:35 +0000 ++++ filter/pdftoopvp/oprs/OPVPSplashXPath.h 2012-07-19 14:02:32 +0000 +@@ -2,6 +2,9 @@ + #define OPVPSPLASHXPATH_H + + #include <config.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include "splash/SplashXPath.h" + #include "OPVPSplashPath.h" + #include "OPVPSplashState.h" + +=== modified file 'filter/pdftoopvp/pdftoopvp.cxx' +--- filter/pdftoopvp/pdftoopvp.cxx 2012-06-04 16:46:44 +0000 ++++ filter/pdftoopvp/pdftoopvp.cxx 2012-07-19 14:02:32 +0000 +@@ -13,6 +13,9 @@ + #include <unistd.h> + #include <ctype.h> + #include <math.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include "goo/GooString.h" + #define GSTRING_H // for old GooString.h + #include "goo/gmem.h" + +=== modified file 'filter/pdftopdf/P2PError.h' +--- filter/pdftopdf/P2PError.h 2012-03-29 14:06:07 +0000 ++++ filter/pdftopdf/P2PError.h 2012-07-19 14:02:32 +0000 +@@ -31,6 +31,9 @@ + #include <config.h> + #include <stdarg.h> + #include <Error.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + + #if POPPLER_VERSION_MAJOR > 0 || POPPLER_VERSION_MINOR >= 19 + #define p2pError(pos,...) error(errInternal,pos,__VA_ARGS__) + +=== modified file 'filter/pdftopdf/P2PFont.cxx' +--- filter/pdftopdf/P2PFont.cxx 2012-03-29 09:42:35 +0000 ++++ filter/pdftopdf/P2PFont.cxx 2012-07-19 14:02:32 +0000 +@@ -32,6 +32,9 @@ + #include <sys/types.h> + #include <unistd.h> + #include <fcntl.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include "goo/gmem.h" + #include "P2PFont.h" + #include "GfxFont.h" + +=== modified file 'filter/pdftopdf/pdftopdf.cxx' +--- filter/pdftopdf/pdftopdf.cxx 2012-06-04 16:46:44 +0000 ++++ filter/pdftopdf/pdftopdf.cxx 2012-07-19 14:02:32 +0000 +@@ -29,6 +29,9 @@ + #include <config.h> + #include <stdio.h> + #include <stdlib.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include "goo/GooString.h" + #include "goo/gmem.h" + #include "Object.h" + +=== modified file 'filter/pdftoraster.cxx' +--- filter/pdftoraster.cxx 2012-06-04 16:46:44 +0000 ++++ filter/pdftoraster.cxx 2012-07-19 14:02:32 +0000 +@@ -31,6 +31,9 @@ + #include <config.h> + #include <stdio.h> + #include <stdlib.h> ++#ifdef HAVE_CPP_POPPLER_VERSION_H ++#include "cpp/poppler-version.h" ++#endif + #include "goo/GooString.h" + #include "goo/gmem.h" + #include "Object.h" + diff --git a/abs/extra/cups/PKGBUILD b/abs/extra/cups/PKGBUILD index 730bed3..9a55d2f 100644 --- a/abs/extra/cups/PKGBUILD +++ b/abs/extra/cups/PKGBUILD @@ -1,74 +1,133 @@ -# $Id: PKGBUILD 98719 2010-11-12 22:23:13Z andyrtr $ +# $Id: PKGBUILD 161774 2012-06-13 17:38:37Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgbase="cups" pkgname=('libcups' 'cups') -pkgver=1.4.5 -pkgrel=1 +pkgver=1.5.3 +pkgrel=5 arch=('i686' 'x86_64') license=('GPL') url="http://www.cups.org/" -makedepends=('libtiff>=3.9.2-2' 'libpng>=1.4.0' 'acl' 'openslp' 'pam' 'xdg-utils' 'heimdal>=1.3.1' 'gnutls>=2.8.3' 'poppler>=0.12.3' - 'xinetd' 'gzip' 'autoconf' 'php' 'libusb' 'dbus-core' 'avahi' 'hicolor-icon-theme') +makedepends=('libtiff>=4.0.0' 'libpng>=1.5.7' 'acl' 'openslp' 'pam' 'xdg-utils' 'krb5' 'gnutls>=2.8.3' 'cups-filters' 'bc' + 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus-core' 'avahi' 'hicolor-icon-theme' 'systemd') source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2 - cups-avahi.patch + cups-avahi-1-config.patch + cups-avahi-2-backend.patch + cups-avahi-3-timeouts.patch + cups-avahi-4-poll.patch + cups-avahi-5-services.patch + cups-no-export-ssllibs.patch + cups-no-gcrypt.patch + cups-no-gzip-man.patch + cups-systemd-socket.patch cups cups.logrotate cups.pam) #options=('!emptydirs') -md5sums=('50729f6fc46ba54223e0eaf5009f3419' - '8ebd390197501ffd709f0ee546937fd5' - '5c85b7d8d2ddd02c2c64955cebbf55ea' +md5sums=('e1ad15257aa6f162414ea3beae0c5df8' + '12c8af5bcd3b8f84240280b3dfaf9e89' + 'cdc1322c8014297ae349e2db78a03c5a' + '1a5112f63958643f2888abc9418dbcac' + 'c37d1bf1bb76acc3fe93362c80d91b7c' + '5d302860559960042f3b47a91b97c5fe' + '9b8467a1e51d360096b70e2c3c081e6c' + '3733c23e77eb503bd94cc368e02830dc' + 'c9159ba1233902ba6ddbbe6885a46b72' + '4505b8b2c57a7c28ea79e08388bbbbb9' + '9657daa21760bb0b5fa3d8b51d5e01a1' 'f861b18f4446c43918c8643dcbbd7f6d' '96f82c38f3f540b53f3e5144900acf17') build() { cd ${srcdir}/${pkgbase}-${pkgver} - # Avahi support in the dnssd backend. patch from Fedora - patch -Np1 -i ${srcdir}/cups-avahi.patch || return 1 + # http://www.cups.org/str.php?L3066 + # Avahi support in the dnssd backend. patches from upstream/FC RawHide + patch -Np1 -i ${srcdir}/cups-avahi-1-config.patch + patch -Np1 -i ${srcdir}/cups-avahi-2-backend.patch + patch -Np1 -i ${srcdir}/cups-avahi-3-timeouts.patch + patch -Np1 -i ${srcdir}/cups-avahi-4-poll.patch + patch -Np1 -i ${srcdir}/cups-avahi-5-services.patch + + # add systemd socket support - Fedora patch, also used in Gentoo + patch -Np1 -i ${srcdir}/cups-systemd-socket.patch + + # Do not export SSL libs in cups-config + patch -Np1 -i "${srcdir}/cups-no-export-ssllibs.patch" + + patch -Np1 -i "${srcdir}/cups-no-gcrypt.patch" + # don't zip man pages in make install, let makepkg do that / Fedora + patch -Np1 -i ${srcdir}/cups-no-gzip-man.patch # Rebuild configure script for --enable-avahi. aclocal -I config-scripts autoconf -I config-scripts ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ - --with-logdir=/var/log/cups -with-docdir=/usr/share/cups/doc \ - --with-cups-user=daemon --with-cups-group=lp --enable-pam=yes \ - --disable-ldap --libdir=/usr/lib --enable-raw-printing \ - --enable-dbus --with-dbusdir=/etc/dbus-1 --enable-ssl=yes --enable-gnutls --disable-threads --enable-avahi\ - --with-php=/usr/bin/php-cgi --with-pdftops=pdftops --with-optim="$CFLAGS" - make || return 1 + --libdir=/usr/lib \ + --with-systemdsystemunitdir=/usr/lib/systemd/system \ + --with-logdir=/var/log/cups \ + --with-docdir=/usr/share/cups/doc \ + --with-cups-user=daemon \ + --with-cups-group=lp \ + --enable-pam=yes \ + --disable-ldap \ + --enable-raw-printing \ + --enable-dbus --with-dbusdir=/etc/dbus-1 \ + --enable-ssl=yes --enable-gnutls \ + --enable-threads \ + --enable-avahi\ + --with-php=/usr/bin/php-cgi \ + --with-pdftops=pdftops \ + --with-optim="$CFLAGS" + make +} + +check() { + cd "$srcdir/$pkgbase-$pkgver" + #httpAddrGetList(workstation64): FAIL + #1 TESTS FAILED! + #make[1]: *** [testhttp] Error 1 + make -k check || /bin/true } package_libcups() { pkgdesc="The CUPS Printing System - client libraries and headers" -depends=('gnutls>=2.8.3' 'libtiff>=3.9.2-2' 'libpng>=1.4.0' 'heimdal>=1.3.1' 'avahi') +depends=('gnutls>=2.8.3' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi') +backup=(etc/cups/client.conf) cd ${srcdir}/${pkgbase}-${pkgver} - make BUILDROOT=${pkgdir} install-headers install-libs || return 1 + make BUILDROOT=${pkgdir} install-headers install-libs # put this into the libs pkg to make other software find the libs(no pkg-config file included) - mkdir -p ${pkgdir}/usr/bin + mkdir -p ${pkgdir}/usr/bin install -m755 ${srcdir}/${pkgbase}-${pkgver}/cups-config ${pkgdir}/usr/bin/cups-config + + # install client.conf man page and config file + install -dm755 ${pkgdir}/usr/share/man/man5 + #install -Dm644 ${srcdir}/${pkgbase}-${pkgver}/man/client.conf.5.gz ${pkgdir}/usr/share/man/man5/ + install -Dm644 ${srcdir}/${pkgbase}-${pkgver}/man/client.conf.5 ${pkgdir}/usr/share/man/man5/ + install -dm755 ${pkgdir}/etc/cups + touch ${pkgdir}/etc/cups/client.conf + echo "# see 'man client.conf'" >> ${pkgdir}/etc/cups/client.conf + echo "ServerName /var/run/cups/cups.sock # alternative: ServerName hostname-or-ip-address[:port] of a remote server" >> ${pkgdir}/etc/cups/client.conf + chgrp lp ${pkgdir}/etc/cups/client.conf } package_cups() { -pkgdesc="The CUPS Printing System - deamon package" +pkgdesc="The CUPS Printing System - daemon package" install=cups.install backup=(etc/cups/cupsd.conf - etc/cups/mime.convs - etc/cups/mime.types etc/cups/snmp.conf etc/cups/printers.conf etc/cups/classes.conf - etc/cups/client.conf etc/cups/subscriptions.conf etc/dbus-1/system.d/cups.conf etc/logrotate.d/cups etc/pam.d/cups etc/xinetd.d/cups-lpd) -depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'xdg-utils' 'poppler>=0.12.3' 'libusb' 'dbus-core' 'hicolor-icon-theme') -optdepends=('php: for included phpcups.so module') +depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' 'libusb' 'dbus-core' 'libsystemd' 'hicolor-icon-theme') +optdepends=('php: for included phpcups.so module' + 'xdg-utils: xdg .desktop file support') cd ${srcdir}/${pkgbase}-${pkgver} - make BUILDROOT=${pkgdir} install-data install-exec || return 1 + make BUILDROOT=${pkgdir} install-data install-exec # this one we ship in the libcups pkg rm -f ${pkgdir}/usr/bin/cups-config @@ -76,7 +135,7 @@ optdepends=('php: for included phpcups.so module') # kill the sysv stuff rm -rf ${pkgdir}/etc/rc*.d rm -rf ${pkgdir}/etc/init.d - install -D -m755 ../cups ${pkgdir}/etc/rc.d/cups + install -D -m755 ../cups ${pkgdir}/etc/rc.d/cupsd install -D -m644 ../cups.logrotate ${pkgdir}/etc/logrotate.d/cups install -D -m644 ../cups.pam ${pkgdir}/etc/pam.d/cups @@ -84,25 +143,32 @@ optdepends=('php: for included phpcups.so module') chmod 755 ${pkgdir}/var/spool chmod 755 ${pkgdir}/etc - # serial backend needs to run as root (http://bugs.archlinux.org/task/20396) - chmod 700 ${pkgdir}/usr/lib/cups/backend/serial - # install ssl directory where to store the certs, solves some samba issues install -dm700 -g lp ${pkgdir}/etc/cups/ssl - install -dm511 -g lp ${pkgdir}/var/run/cups/certs + # remove directory from package, we create it in cups rc.d file + rm -rf ${pkgdir}/var/run # install some more configuration files that will get filled by cupsd touch ${pkgdir}/etc/cups/printers.conf touch ${pkgdir}/etc/cups/classes.conf - touch ${pkgdir}/etc/cups/client.conf - echo "# see 'man client.conf'" >> ${pkgdir}/etc/cups/client.conf - echo "ServerName /var/run/cups/cups.sock # alternative: ServerName hostname-or-ip-address[:port] of a remote server" >> ${pkgdir}/etc/cups/client.conf touch ${pkgdir}/etc/cups/subscriptions.conf - chgrp lp ${pkgdir}/etc/cups/{printers.conf,classes.conf,client.conf,subscriptions.conf} + chgrp lp ${pkgdir}/etc/cups/{printers.conf,classes.conf,subscriptions.conf} # fix .desktop file sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' ${pkgdir}/usr/share/applications/cups.desktop # compress some driver files, adopted from Fedora find ${pkgdir}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f + + # remove client.conf man page + rm -f ${pkgdir}/usr/share/man/man5/client.conf.5 + + # remove files now part of cups-filters - check cups-filters INSTALL for packagers instructions + rm -v ${pkgdir}/usr/lib/cups/backend/{parallel,serial} + rm -v ${pkgdir}/usr/lib/cups/filter/{bannertops,commandtoescpx,commandtopclx,imagetops,imagetoraster,pdftops,rastertoescpx,rastertopclx,texttops} + rm -v ${pkgdir}/usr/share/cups/banners/* + rm -v ${pkgdir}/usr/share/cups/data/{testprint,psglyphs} + rm -v ${pkgdir}/usr/share/cups/fonts/* + # comment out all conversion rules which use any of the removed filters + perl -p -i -e 's:^(.*\s+(pdftops|texttops|imagetops|bannertops|imagetoraster)\s*)$:#\1:' ${pkgdir}/usr/share/cups/mime/mime.convs } diff --git a/abs/extra/cups/PKGBUILD.16 b/abs/extra/cups/PKGBUILD.16 new file mode 100644 index 0000000..01faba0 --- /dev/null +++ b/abs/extra/cups/PKGBUILD.16 @@ -0,0 +1,146 @@ +# $Id: PKGBUILD 159509 2012-05-25 16:34:34Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> + +pkgbase="cups" +pkgname=('libcups' 'cups') +pkgver=1.6b1 +pkgrel=1 +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.cups.org/" +makedepends=('libtiff>=4.0.0' 'libpng>=1.5.7' 'acl' 'openslp' 'pam' 'xdg-utils' 'krb5' 'gnutls>=2.8.3' 'cups-filters' 'bc' 'colord' + 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus-core' 'avahi' 'hicolor-icon-theme') +source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2 + cups-no-export-ssllibs.patch + cups-no-gcrypt.patch + cups-no-gzip-man.patch + cups cups.logrotate cups.pam) +#options=('!emptydirs') +md5sums=('468a40755a872d84be89111ce97a69d1' + '9b8467a1e51d360096b70e2c3c081e6c' + '3733c23e77eb503bd94cc368e02830dc' + '90c30380d4c8cd48a908cfdadae1ea24' + '9657daa21760bb0b5fa3d8b51d5e01a1' + 'f861b18f4446c43918c8643dcbbd7f6d' + '96f82c38f3f540b53f3e5144900acf17') + +build() { + cd ${srcdir}/${pkgbase}-${pkgver} + + # Do not export SSL libs in cups-config + patch -Np1 -i "${srcdir}/cups-no-export-ssllibs.patch" + + patch -Np1 -i "${srcdir}/cups-no-gcrypt.patch" + # don't zip man pages in make install, let makepkg do that / Fedora + patch -Np1 -i ${srcdir}/cups-no-gzip-man.patch + + # Rebuild configure script for not zipping man-pages. + aclocal -I config-scripts + autoconf -I config-scripts + + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --libdir=/usr/lib \ + --with-logdir=/var/log/cups \ + --with-docdir=/usr/share/cups/doc \ + --with-cups-user=daemon \ + --with-cups-group=lp \ + --enable-pam=yes \ + --enable-raw-printing \ + --enable-dbus --with-dbusdir=/etc/dbus-1 \ + --enable-ssl=yes --enable-gnutls \ + --enable-threads \ + --enable-avahi\ + --with-php=/usr/bin/php-cgi \ + --with-optim="$CFLAGS" + make +} + +check() { + cd "$srcdir/$pkgbase-$pkgver" + #httpAddrGetList(workstation64): FAIL + #1 TESTS FAILED! + #make[1]: *** [testhttp] Error 1 + make -k check || /bin/true +} + +package_libcups() { +pkgdesc="The CUPS Printing System - client libraries and headers" +depends=('gnutls>=2.8.3' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi') +backup=(etc/cups/client.conf) + + cd ${srcdir}/${pkgbase}-${pkgver} + make BUILDROOT=${pkgdir} install-headers install-libs + # put this into the libs pkg to make other software find the libs(no pkg-config file included) + mkdir -p ${pkgdir}/usr/bin + install -m755 ${srcdir}/${pkgbase}-${pkgver}/cups-config ${pkgdir}/usr/bin/cups-config + + # install client.conf man page and config file + install -dm755 ${pkgdir}/usr/share/man/man5 + #install -Dm644 ${srcdir}/${pkgbase}-${pkgver}/man/client.conf.5.gz ${pkgdir}/usr/share/man/man5/ + install -Dm644 ${srcdir}/${pkgbase}-${pkgver}/man/client.conf.5 ${pkgdir}/usr/share/man/man5/ + install -dm755 ${pkgdir}/etc/cups + touch ${pkgdir}/etc/cups/client.conf + echo "# see 'man client.conf'" >> ${pkgdir}/etc/cups/client.conf + echo "ServerName /var/run/cups/cups.sock # alternative: ServerName hostname-or-ip-address[:port] of a remote server" >> ${pkgdir}/etc/cups/client.conf + chgrp lp ${pkgdir}/etc/cups/client.conf +} + +package_cups() { +pkgdesc="The CUPS Printing System - daemon package" +install=cups.install +backup=(etc/cups/cupsd.conf + etc/cups/snmp.conf + etc/cups/printers.conf + etc/cups/classes.conf + etc/cups/subscriptions.conf + etc/dbus-1/system.d/cups.conf + etc/logrotate.d/cups + etc/pam.d/cups + etc/xinetd.d/cups-lpd) +depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' 'libusb' 'dbus-core' 'hicolor-icon-theme') +optdepends=('xdg-utils: xdg .desktop file support') + + cd ${srcdir}/${pkgbase}-${pkgver} + make BUILDROOT=${pkgdir} install-data install-exec + + # this one we ship in the libcups pkg + rm -f ${pkgdir}/usr/bin/cups-config + + # kill the sysv stuff + rm -rf ${pkgdir}/etc/rc*.d + rm -rf ${pkgdir}/etc/init.d + install -D -m755 ../cups ${pkgdir}/etc/rc.d/cupsd + install -D -m644 ../cups.logrotate ${pkgdir}/etc/logrotate.d/cups + install -D -m644 ../cups.pam ${pkgdir}/etc/pam.d/cups + + # fix perms on /var/spool and /etc + chmod 755 ${pkgdir}/var/spool + chmod 755 ${pkgdir}/etc + + # install ssl directory where to store the certs, solves some samba issues + install -dm700 -g lp ${pkgdir}/etc/cups/ssl + # remove directory from package, we create it in cups rc.d file + rm -rf ${pkgdir}/var/run + + # install some more configuration files that will get filled by cupsd + touch ${pkgdir}/etc/cups/printers.conf + touch ${pkgdir}/etc/cups/classes.conf + touch ${pkgdir}/etc/cups/subscriptions.conf + chgrp lp ${pkgdir}/etc/cups/{printers.conf,classes.conf,subscriptions.conf} + + # fix .desktop file + sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' ${pkgdir}/usr/share/applications/cups.desktop + + # compress some driver files, adopted from Fedora + find ${pkgdir}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f + + # remove client.conf man page + rm -f ${pkgdir}/usr/share/man/man5/client.conf.5 + + # remove files now part of cups-filters + rm -v ${pkgdir}/usr/lib/cups/filter/bannertops + rm -v ${pkgdir}/usr/share/cups/banners/* + rm -v ${pkgdir}/usr/share/cups/data/testprint + # comment out all conversion rules which use any of the removed filters + perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' /usr/share/cups/mime/mime.convs +} diff --git a/abs/extra/cups/cups b/abs/extra/cups/cups index 4afaf5a..744c8e6 100755 --- a/abs/extra/cups/cups +++ b/abs/extra/cups/cups @@ -1,38 +1,68 @@ #!/bin/bash +daemon_name=cupsd + . /etc/rc.conf . /etc/rc.d/functions +#. /etc/conf.d/$daemon_name.conf + +get_pid() { + pidof -o %PPID $daemon_name +} -PID=`pidof -o %PPID /usr/sbin/cupsd` case "$1" in start) - stat_busy "Starting CUPS Daemon" - [ -z "$PID" ] && /usr/sbin/cupsd - if [ $? -gt 0 ]; then - stat_fail + stat_busy "Starting $daemon_name daemon" + + PID=$(get_pid) + if [ -z "$PID" ]; then + [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid + # RUN + $daemon_name + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + echo $(get_pid) > /var/run/$daemon_name.pid + add_daemon $daemon_name + stat_done + fi else - echo $(pidof -o %PPID -x /usr/sbin/cupsd) > /var/run/cups.pid - add_daemon cups - stat_done + stat_fail + exit 1 fi ;; + stop) - stat_busy "Stopping CUPS Daemon" - [ ! -z "$PID" ] && kill $PID &> /dev/null + stat_busy "Stopping $daemon_name daemon" + PID=$(get_pid) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # if [ $? -gt 0 ]; then stat_fail + exit 1 else - rm /var/run/cups.pid - rm_daemon cups + rm -f /var/run/$daemon_name.pid &> /dev/null + rm_daemon $daemon_name stat_done fi ;; + restart) $0 stop - sleep 1 + sleep 3 $0 start ;; + + status) + stat_busy "Checking $daemon_name status"; + ck_status $daemon_name + ;; + *) - echo "usage: $0 {start|stop|restart}" + echo "usage: $0 {start|stop|restart|status}" esac + exit 0 diff --git a/abs/extra/cups/cups-1.3.7-peercred.patch b/abs/extra/cups/cups-1.3.7-peercred.patch deleted file mode 100644 index eda2c93..0000000 --- a/abs/extra/cups/cups-1.3.7-peercred.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -Naur cups-1.3.7/scheduler/auth.c cups-1.3.7.new/scheduler/auth.c ---- cups-1.3.7/scheduler/auth.c 2008-03-20 21:58:16.000000000 +0100 -+++ cups-1.3.7.new/scheduler/auth.c 2008-06-09 14:53:45.535194741 +0200 -@@ -54,6 +54,7 @@ - * Include necessary headers... - */ - -+#define _GNU_SOURCE - #include "cupsd.h" - #include <grp.h> - #ifdef HAVE_SHADOW_H diff --git a/abs/extra/cups/cups-avahi-1-config.patch b/abs/extra/cups/cups-avahi-1-config.patch new file mode 100644 index 0000000..304cd26 --- /dev/null +++ b/abs/extra/cups/cups-avahi-1-config.patch @@ -0,0 +1,42 @@ +diff -up cups-1.5.2/config.h.in.avahi-1-config cups-1.5.2/config.h.in +--- cups-1.5.2/config.h.in.avahi-1-config 2011-06-16 21:12:16.000000000 +0100 ++++ cups-1.5.2/config.h.in 2012-03-14 15:04:51.365347165 +0000 +@@ -390,6 +390,13 @@ + + + /* ++ * Do we have Avahi for DNS Service Discovery? ++ */ ++ ++#undef HAVE_AVAHI ++ ++ ++/* + * Do we have <sys/ioctl.h>? + */ + +diff -up cups-1.5.2/config-scripts/cups-dnssd.m4.avahi-1-config cups-1.5.2/config-scripts/cups-dnssd.m4 +--- cups-1.5.2/config-scripts/cups-dnssd.m4.avahi-1-config 2011-05-12 06:21:56.000000000 +0100 ++++ cups-1.5.2/config-scripts/cups-dnssd.m4 2012-03-14 15:04:51.365347165 +0000 +@@ -23,6 +23,21 @@ AC_ARG_WITH(dnssd-includes, [ --with-dn + DNSSDLIBS="" + DNSSD_BACKEND="" + ++AC_ARG_ENABLE(avahi, [ --enable-avahi turn on DNS Service Discovery support, default=no], ++ [if test x$enable_avahi = xyes; then ++ AC_MSG_CHECKING(for Avahi) ++ if $PKGCONFIG --exists avahi-client; then ++ AC_MSG_RESULT(yes) ++ CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`" ++ DNSSDLIBS="`$PKGCONFIG --libs avahi-client`" ++ DNSSD_BACKEND="dnssd" ++ AC_DEFINE(HAVE_AVAHI) ++ enable_dnssd=no ++ else ++ AC_MSG_RESULT(no) ++ fi ++ fi]) ++ + if test x$enable_dnssd != xno; then + AC_CHECK_HEADER(dns_sd.h, [ + case "$uname" in
\ No newline at end of file diff --git a/abs/extra/cups/cups-avahi-2-backend.patch b/abs/extra/cups/cups-avahi-2-backend.patch new file mode 100644 index 0000000..00e12a0 --- /dev/null +++ b/abs/extra/cups/cups-avahi-2-backend.patch @@ -0,0 +1,1118 @@ +diff -up cups-1.5.3/backend/dnssd.c.avahi-2-backend cups-1.5.3/backend/dnssd.c +--- cups-1.5.3/backend/dnssd.c.avahi-2-backend 2012-05-15 16:53:18.164774446 +0200 ++++ cups-1.5.3/backend/dnssd.c 2012-05-15 17:09:07.684155704 +0200 +@@ -15,14 +15,21 @@ + * + * Contents: + * ++ * next_txt_record() - Get next TXT record from a cups_txt_records_t. ++ * parse_txt_record_pair() - Read key/value pair in cups_txt_records_t. + * main() - Browse for printers. + * browse_callback() - Browse devices. + * browse_local_callback() - Browse local devices. + * compare_devices() - Compare two devices. + * exec_backend() - Execute the backend that corresponds to the + * resolved service name. ++ * device_type() - Get DNS-SD type enumeration from string. + * get_device() - Create or update a device. + * query_callback() - Process query data. ++ * avahi_client_callback() - Avahi client callback function. ++ * avahi_query_callback() - Avahi query callback function. ++ * avahi_browse_callback() - Avahi browse callback function. ++ * find_device() - Find a device from its name and domain. + * sigterm_handler() - Handle termination signals... + * unquote() - Unquote a name string. + */ +@@ -33,7 +40,18 @@ + + #include "backend-private.h" + #include <cups/array.h> +-#include <dns_sd.h> ++#ifdef HAVE_DNSSD ++# include <dns_sd.h> ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++# include <avahi-client/client.h> ++# include <avahi-client/lookup.h> ++# include <avahi-common/simple-watch.h> ++# include <avahi-common/domain.h> ++# include <avahi-common/error.h> ++# include <avahi-common/malloc.h> ++#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX ++#endif /* HAVE_AVAHI */ + + + /* +@@ -53,7 +71,12 @@ typedef enum + + typedef struct + { ++#ifdef HAVE_DNSSD + DNSServiceRef ref; /* Service reference for resolve */ ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ int resolved; /* Did we resolve the device? */ ++#endif /* HAVE_AVAHI */ + char *name, /* Service name */ + *domain, /* Domain name */ + *fullName, /* Full name */ +@@ -65,6 +88,20 @@ typedef struct + sent; /* Did we list the device? */ + } cups_device_t; + ++typedef struct ++{ ++ char key[256]; ++ char value[256]; ++ ++#ifdef HAVE_DNSSD ++ const uint8_t *data; ++ const uint8_t *datanext; ++ const uint8_t *dataend; ++#else /* HAVE_AVAHI */ ++ AvahiStringList *txt; ++#endif /* HAVE_DNSSD */ ++} cups_txt_records_t; ++ + + /* + * Local globals... +@@ -78,6 +115,7 @@ static int job_canceled = 0; + * Local functions... + */ + ++#ifdef HAVE_DNSSD + static void browse_callback(DNSServiceRef sdRef, + DNSServiceFlags flags, + uint32_t interfaceIndex, +@@ -95,13 +133,6 @@ static void browse_local_callback(DNSSe + const char *replyDomain, + void *context) + __attribute__((nonnull(1,5,6,7,8))); +-static int compare_devices(cups_device_t *a, cups_device_t *b); +-static void exec_backend(char **argv); +-static cups_device_t *get_device(cups_array_t *devices, +- const char *serviceName, +- const char *regtype, +- const char *replyDomain) +- __attribute__((nonnull(1,2,3,4))); + static void query_callback(DNSServiceRef sdRef, + DNSServiceFlags flags, + uint32_t interfaceIndex, +@@ -111,10 +142,119 @@ static void query_callback(DNSServiceRe + const void *rdata, uint32_t ttl, + void *context) + __attribute__((nonnull(1,5,9,11))); ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++static void avahi_client_callback (AvahiClient *client, ++ AvahiClientState state, ++ void *context); ++static void avahi_browse_callback (AvahiServiceBrowser *browser, ++ AvahiIfIndex interface, ++ AvahiProtocol protocol, ++ AvahiBrowserEvent event, ++ const char *serviceName, ++ const char *regtype, ++ const char *replyDomain, ++ AvahiLookupResultFlags flags, ++ void *context); ++#endif /* HAVE_AVAHI */ ++static cups_device_t * find_device (cups_array_t *devices, ++ cups_txt_records_t *txt, ++ cups_device_t *dkey); ++static int compare_devices(cups_device_t *a, cups_device_t *b); ++static void exec_backend(char **argv); ++static cups_device_t *get_device(cups_array_t *devices, ++ const char *serviceName, ++ const char *regtype, ++ const char *replyDomain) ++ __attribute__((nonnull(1,2,3,4))); + static void sigterm_handler(int sig); + static void unquote(char *dst, const char *src, size_t dstsize) + __attribute__((nonnull(1,2))); + ++#ifdef HAVE_AVAHI ++static AvahiSimplePoll *simple_poll = NULL; ++static int avahi_got_callback; ++#endif /* HAVE_AVAHI */ ++ ++ ++/* ++ * 'next_txt_record()' - Get next TXT record from a cups_txt_records_t. ++ */ ++ ++static cups_txt_records_t * ++next_txt_record (cups_txt_records_t *txt) ++{ ++#ifdef HAVE_DNSSD ++ txt->data = txt->datanext; ++#else /* HAVE_AVAHI */ ++ txt->txt = avahi_string_list_get_next (txt->txt); ++ if (txt->txt == NULL) ++ return NULL; ++#endif /* HAVE_DNSSD */ ++ ++ return txt; ++} ++ ++ ++/* ++ * 'parse_txt_record_pair()' - Read key/value pair in cups_txt_records_t. ++ */ ++ ++static int ++parse_txt_record_pair (cups_txt_records_t *txt) ++{ ++#ifdef HAVE_DNSSD ++ uint8_t datalen; ++ uint8_t *data = txt->data; ++ char *ptr; ++ ++ /* ++ * Read a key/value pair starting with an 8-bit length. Since the ++ * length is 8 bits and the size of the key/value buffers is 256, we ++ * don't need to check for overflow... ++ */ ++ ++ datalen = *data++; ++ if (!datalen || (data + datalen) > txt->dataend) ++ return NULL; ++ txt->datanext = data + datalen; ++ ++ for (ptr = txt->key; data < txt->datanext && *data != '='; data ++) ++ *ptr++ = *data; ++ *ptr = '\0'; ++ ++ if (data < txt->datanext && *data == '=') ++ { ++ data++; ++ ++ if (data < datanext) ++ memcpy (txt->value, data, txt->datanext - data); ++ value[txt->datanext - data] = '\0'; ++ } ++ else ++ return 1; ++#else /* HAVE_AVAHI */ ++ char *key, *value; ++ size_t len; ++ avahi_string_list_get_pair (txt->txt, &key, &value, &len); ++ if (len > sizeof (txt->value) - 1) ++ len = sizeof (txt->value) - 1; ++ ++ memcpy (txt->value, value, len); ++ txt->value[len] = '\0'; ++ len = strlen (key); ++ if (len > sizeof (txt->key) - 1) ++ len = sizeof (txt->key) - 1; ++ ++ memcpy (txt->key, key, len); ++ txt->key[len] = '\0'; ++ avahi_free (key); ++ avahi_free (value); ++#endif /* HAVE_AVAHI */ ++ ++ return 0; ++} ++ + + /* + * 'main()' - Browse for printers. +@@ -125,6 +265,13 @@ main(int argc, /* I - Number of comm + char *argv[]) /* I - Command-line arguments */ + { + const char *name; /* Backend name */ ++ cups_array_t *devices; /* Device array */ ++ cups_device_t *device; /* Current device */ ++ char uriName[1024]; /* Unquoted fullName for URI */ ++#ifdef HAVE_DNSSD ++ int fd; /* Main file descriptor */ ++ fd_set input; /* Input set for select() */ ++ struct timeval timeout; /* Timeout for select() */ + DNSServiceRef main_ref, /* Main service reference */ + fax_ipp_ref, /* IPP fax service reference */ + ipp_ref, /* IPP service reference */ +@@ -138,12 +285,11 @@ main(int argc, /* I - Number of comm + pdl_datastream_ref, /* AppSocket service reference */ + printer_ref, /* LPD service reference */ + riousbprint_ref; /* Remote IO service reference */ +- int fd; /* Main file descriptor */ +- fd_set input; /* Input set for select() */ +- struct timeval timeout; /* Timeout for select() */ +- cups_array_t *devices; /* Device array */ +- cups_device_t *device; /* Current device */ +- char uriName[1024]; /* Unquoted fullName for URI */ ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ AvahiClient *client; ++ int error; ++#endif /* HAVE_AVAHI */ + #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET) + struct sigaction action; /* Actions for POSIX signals */ + #endif /* HAVE_SIGACTION && !HAVE_SIGSET */ +@@ -203,6 +349,49 @@ main(int argc, /* I - Number of comm + * Browse for different kinds of printers... + */ + ++#ifdef HAVE_AVAHI ++ if ((simple_poll = avahi_simple_poll_new ()) == NULL) ++ { ++ perror ("ERROR: Unable to create avahi simple poll object"); ++ return (1); ++ } ++ ++ client = avahi_client_new (avahi_simple_poll_get (simple_poll), ++ 0, avahi_client_callback, NULL, &error); ++ if (!client) ++ { ++ perror ("DEBUG: Unable to create avahi client"); ++ return (0); ++ } ++ ++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ "_fax-ipp._tcp", NULL, 0, ++ avahi_browse_callback, devices); ++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ "_ipp._tcp", NULL, 0, ++ avahi_browse_callback, devices); ++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ "_ipp-tls._tcp", NULL, 0, ++ avahi_browse_callback, devices); ++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ "_pdl-datastream._tcp", ++ NULL, 0, ++ avahi_browse_callback, ++ devices); ++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ "_printer._tcp", NULL, 0, ++ avahi_browse_callback, devices); ++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ "_riousbprint._tcp", NULL, 0, ++ avahi_browse_callback, devices); ++#endif /* HAVE_AVAHI */ ++#ifdef HAVE_DNSSD + if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError) + { + perror("ERROR: Unable to create service connection"); +@@ -263,6 +452,7 @@ main(int argc, /* I - Number of comm + riousbprint_ref = main_ref; + DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0, + "_riousbprint._tcp", NULL, browse_callback, devices); ++#endif /* HAVE_DNSSD */ + + /* + * Loop until we are killed... +@@ -270,6 +460,9 @@ main(int argc, /* I - Number of comm + + while (!job_canceled) + { ++ int announce = 0; ++ ++#ifdef HAVE_DNSSD + FD_ZERO(&input); + FD_SET(fd, &input); + +@@ -289,11 +482,35 @@ main(int argc, /* I - Number of comm + } + else + { ++ announce = 1; ++ } ++#else /* HAVE_AVAHI */ ++ int r; ++ avahi_got_callback = 0; ++ r = avahi_simple_poll_iterate (simple_poll, 1); ++ if (r != 0 && r != EINTR) ++ { ++ /* ++ * We've been told to exit the loop. Perhaps the connection to ++ * avahi failed. ++ */ ++ ++ break; ++ } ++ ++ if (avahi_got_callback) ++ announce = 1; ++#endif /* HAVE_DNSSD */ ++ ++ if (announce) ++ { + /* + * Announce any devices we've found... + */ + ++#ifdef HAVE_DNSSD + DNSServiceErrorType status; /* DNS query status */ ++#endif /* HAVE_DNSSD */ + cups_device_t *best; /* Best matching device */ + char device_uri[1024]; /* Device URI */ + int count; /* Number of queries */ +@@ -307,6 +524,7 @@ main(int argc, /* I - Number of comm + if (device->sent) + sent ++; + ++#ifdef HAVE_DNSSD + if (device->ref) + count ++; + +@@ -338,14 +556,23 @@ main(int argc, /* I - Number of comm + count ++; + } + } +- else if (!device->sent) ++ else ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ if (!device->resolved) ++ continue; ++ else ++#endif /* HAVE_AVAHI */ ++ if (!device->sent) + { ++#ifdef HAVE_DNSSD + /* + * Got the TXT records, now report the device... + */ + + DNSServiceRefDeallocate(device->ref); + device->ref = 0; ++#endif /* HAVE_DNSSD */ + + if (!best) + best = device; +@@ -406,6 +633,7 @@ main(int argc, /* I - Number of comm + } + + ++#ifdef HAVE_DNSSD + /* + * 'browse_callback()' - Browse devices. + */ +@@ -494,6 +722,7 @@ browse_local_callback( + device->fullName); + device->sent = 1; + } ++#endif /* HAVE_DNSSD */ + + + /* +@@ -574,6 +803,41 @@ exec_backend(char **argv) /* I - Comman + + + /* ++ * 'device_type()' - Get DNS-SD type enumeration from string. ++ */ ++ ++static int ++device_type (const char *regtype) ++{ ++#ifdef HAVE_AVAHI ++ if (!strcmp(regtype, "_ipp._tcp")) ++ return (CUPS_DEVICE_IPP); ++ else if (!strcmp(regtype, "_ipps._tcp") || ++ !strcmp(regtype, "_ipp-tls._tcp")) ++ return (CUPS_DEVICE_IPPS); ++ else if (!strcmp(regtype, "_fax-ipp._tcp")) ++ return (CUPS_DEVICE_FAX_IPP); ++ else if (!strcmp(regtype, "_printer._tcp")) ++ return (CUPS_DEVICE_PDL_DATASTREAM); ++#else ++ if (!strcmp(regtype, "_ipp._tcp.")) ++ return (CUPS_DEVICE_IPP); ++ else if (!strcmp(regtype, "_ipps._tcp.") || ++ !strcmp(regtype, "_ipp-tls._tcp.")) ++ return (CUPS_DEVICE_IPPS); ++ else if (!strcmp(regtype, "_fax-ipp._tcp.")) ++ return (CUPS_DEVICE_FAX_IPP); ++ else if (!strcmp(regtype, "_printer._tcp.")) ++ return (CUPS_DEVICE_PRINTER); ++ else if (!strcmp(regtype, "_pdl-datastream._tcp.")) ++ return (CUPS_DEVICE_PDL_DATASTREAM); ++#endif /* HAVE_AVAHI */ ++ ++ return (CUPS_DEVICE_RIOUSBPRINT); ++} ++ ++ ++/* + * 'get_device()' - Create or update a device. + */ + +@@ -594,20 +858,7 @@ get_device(cups_array_t *devices, /* I - + */ + + key.name = (char *)serviceName; +- +- if (!strcmp(regtype, "_ipp._tcp.")) +- key.type = CUPS_DEVICE_IPP; +- else if (!strcmp(regtype, "_ipps._tcp.") || +- !strcmp(regtype, "_ipp-tls._tcp.")) +- key.type = CUPS_DEVICE_IPPS; +- else if (!strcmp(regtype, "_fax-ipp._tcp.")) +- key.type = CUPS_DEVICE_FAX_IPP; +- else if (!strcmp(regtype, "_printer._tcp.")) +- key.type = CUPS_DEVICE_PRINTER; +- else if (!strcmp(regtype, "_pdl-datastream._tcp.")) +- key.type = CUPS_DEVICE_PDL_DATASTREAM; +- else +- key.type = CUPS_DEVICE_RIOUSBPRINT; ++ key.type = device_type (regtype); + + for (device = cupsArrayFind(devices, &key); + device; +@@ -627,8 +878,14 @@ get_device(cups_array_t *devices, /* I - + free(device->domain); + device->domain = strdup(replyDomain); + ++#ifdef HAVE_DNSSD + DNSServiceConstructFullName(fullName, device->name, regtype, + replyDomain); ++#else /* HAVE_AVAHI */ ++ avahi_service_name_join (fullName, kDNSServiceMaxDomainName, ++ serviceName, regtype, replyDomain); ++#endif /* HAVE_DNSSD */ ++ + free(device->fullName); + device->fullName = strdup(fullName); + } +@@ -648,6 +905,9 @@ get_device(cups_array_t *devices, /* I - + device->domain = strdup(replyDomain); + device->type = key.type; + device->priority = 50; ++#ifdef HAVE_AVAHI ++ device->resolved = 0; ++#endif /* HAVE_AVAHI */ + + cupsArrayAdd(devices, device); + +@@ -655,13 +915,20 @@ get_device(cups_array_t *devices, /* I - + * Set the "full name" of this service, which is used for queries... + */ + ++#ifdef HAVE_DNSSD + DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain); ++#else /* HAVE_AVAHI */ ++ avahi_service_name_join (fullName, kDNSServiceMaxDomainName, ++ serviceName, regtype, replyDomain); ++#endif /* HAVE_DNSSD */ ++ + device->fullName = strdup(fullName); + + return (device); + } + + ++#ifdef HAVE_DNSSD + /* + * 'query_callback()' - Process query data. + */ +@@ -685,7 +952,7 @@ query_callback( + *ptr; /* Pointer into string */ + cups_device_t dkey, /* Search key */ + *device; /* Device */ +- ++ cups_txt_records_t txt; + + fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, " + "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", " +@@ -719,94 +986,233 @@ query_callback( + if ((ptr = strstr(name, "._")) != NULL) + *ptr = '\0'; + +- if (strstr(fullName, "_ipp._tcp.")) +- dkey.type = CUPS_DEVICE_IPP; +- else if (strstr(fullName, "_ipps._tcp.") || +- strstr(fullName, "_ipp-tls._tcp.")) +- dkey.type = CUPS_DEVICE_IPPS; +- else if (strstr(fullName, "_fax-ipp._tcp.")) +- dkey.type = CUPS_DEVICE_FAX_IPP; +- else if (strstr(fullName, "_printer._tcp.")) +- dkey.type = CUPS_DEVICE_PRINTER; +- else if (strstr(fullName, "_pdl-datastream._tcp.")) +- dkey.type = CUPS_DEVICE_PDL_DATASTREAM; ++ dkey.type = device_type (fullName); ++ ++ txt.data = rdata; ++ txt.dataend = rdata + rdlen; ++ device = find_device ((cups_array_t *) context, &txt, &dkey); ++ if (!device) ++ fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); ++} ++#endif /* HAVE_DNSSD */ ++ ++ ++#ifdef HAVE_AVAHI ++/* ++ * 'avahi_client_callback()' - Avahi client callback function. ++ */ ++ ++static void ++avahi_client_callback(AvahiClient *client, ++ AvahiClientState state, ++ void *context) ++{ ++ /* ++ * If the connection drops, quit. ++ */ ++ ++ if (state == AVAHI_CLIENT_FAILURE) ++ { ++ fprintf (stderr, "ERROR: Avahi connection failed\n"); ++ avahi_simple_poll_quit (simple_poll); ++ } ++} ++ ++ ++/* ++ * 'avahi_query_callback()' - Avahi query callback function. ++ */ ++ ++static void ++avahi_query_callback(AvahiServiceResolver *resolver, ++ AvahiIfIndex interface, ++ AvahiProtocol protocol, ++ AvahiResolverEvent event, ++ const char *name, ++ const char *type, ++ const char *domain, ++ const char *host_name, ++ const AvahiAddress *address, ++ uint16_t port, ++ AvahiStringList *txt, ++ AvahiLookupResultFlags flags, ++ void *context) ++{ ++ AvahiClient *client; ++ cups_device_t key, ++ *device; ++ char uqname[1024], ++ *ptr; ++ cups_txt_records_t txtr; ++ ++ client = avahi_service_resolver_get_client (resolver); ++ if (event != AVAHI_RESOLVER_FOUND) ++ { ++ if (event == AVAHI_RESOLVER_FAILURE) ++ { ++ fprintf (stderr, "ERROR: %s\n", ++ avahi_strerror (avahi_client_errno (client))); ++ } ++ ++ avahi_service_resolver_free (resolver); ++ return; ++ } ++ ++ /* ++ * Set search key for device. ++ */ ++ ++ key.name = uqname; ++ unquote (uqname, name, sizeof (uqname)); ++ if ((ptr = strstr(name, "._")) != NULL) ++ *ptr = '\0'; ++ ++ key.domain = (char *) domain; ++ key.type = device_type (type); ++ ++ /* ++ * Find the device and the the TXT information. ++ */ ++ ++ txtr.txt = txt; ++ device = find_device ((cups_array_t *) context, &txtr, &key); ++ if (device) ++ { ++ /* ++ * Let the main loop know to announce the device. ++ */ ++ ++ device->resolved = 1; ++ avahi_got_callback = 1; ++ } + else +- dkey.type = CUPS_DEVICE_RIOUSBPRINT; ++ fprintf (stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", name); + +- for (device = cupsArrayFind(devices, &dkey); ++ avahi_service_resolver_free (resolver); ++} ++ ++ ++/* ++ * 'avahi_browse_callback()' - Avahi browse callback function. ++ */ ++ ++static void ++avahi_browse_callback(AvahiServiceBrowser *browser, ++ AvahiIfIndex interface, ++ AvahiProtocol protocol, ++ AvahiBrowserEvent event, ++ const char *name, ++ const char *type, ++ const char *domain, ++ AvahiLookupResultFlags flags, ++ void *context) ++{ ++ AvahiClient *client = avahi_service_browser_get_client (browser); ++ ++ switch (event) ++ { ++ case AVAHI_BROWSER_FAILURE: ++ fprintf (stderr, "ERROR: %s\n", ++ avahi_strerror (avahi_client_errno (client))); ++ avahi_simple_poll_quit (simple_poll); ++ return; ++ ++ case AVAHI_BROWSER_NEW: ++ /* ++ * This object is new on the network. ++ */ ++ ++ if (flags & AVAHI_LOOKUP_RESULT_LOCAL) ++ { ++ /* ++ * This comes from the local machine so ignore it. ++ */ ++ ++ fprintf (stderr, "DEBUG: ignoring local service %s\n", name); ++ } ++ else ++ { ++ /* ++ * Create a device entry for it if it doesn't yet exist. ++ */ ++ ++ get_device ((cups_array_t *)context, name, type, domain); ++ ++ /* ++ * Now look for a TXT entry. ++ */ ++ ++ if (avahi_service_resolver_new (client, interface, protocol, ++ name, type, domain, ++ AVAHI_PROTO_UNSPEC, 0, ++ avahi_query_callback, context) == NULL) ++ { ++ fprintf (stderr, "ERROR: failed to resolve service %s: %s\n", ++ name, avahi_strerror (avahi_client_errno (client))); ++ } ++ } ++ ++ break; ++ ++ case AVAHI_BROWSER_REMOVE: ++ case AVAHI_BROWSER_ALL_FOR_NOW: ++ case AVAHI_BROWSER_CACHE_EXHAUSTED: ++ break; ++ } ++} ++#endif /* HAVE_AVAHI */ ++ ++ ++/* ++ * 'find_device()' - Find a device from its name and domain. ++ */ ++ ++static cups_device_t * ++find_device (cups_array_t *devices, ++ cups_txt_records_t *txt, ++ cups_device_t *dkey) ++{ ++ cups_device_t *device; ++ char *ptr; ++ ++ for (device = cupsArrayFind(devices, dkey); + device; + device = cupsArrayNext(devices)) + { +- if (_cups_strcasecmp(device->name, dkey.name) || +- _cups_strcasecmp(device->domain, dkey.domain)) ++ if (_cups_strcasecmp(device->name, dkey->name) || ++ _cups_strcasecmp(device->domain, dkey->domain)) + { + device = NULL; + break; + } +- else if (device->type == dkey.type) ++ else if (device->type == dkey->type) + { + /* + * Found it, pull out the priority and make and model from the TXT + * record and save it... + */ + +- const uint8_t *data, /* Pointer into data */ +- *datanext, /* Next key/value pair */ +- *dataend; /* End of entire TXT record */ +- uint8_t datalen; /* Length of current key/value pair */ +- char key[256], /* Key string */ +- value[256], /* Value string */ +- make_and_model[512], ++ char make_and_model[512], + /* Manufacturer and model */ + model[256], /* Model */ +- device_id[2048];/* 1284 device ID */ +- ++ device_id[2048]; /* 1284 device ID */ + + device_id[0] = '\0'; + make_and_model[0] = '\0'; + + strcpy(model, "Unknown"); + +- for (data = rdata, dataend = data + rdlen; +- data < dataend; +- data = datanext) ++ for (;;) + { +- /* +- * Read a key/value pair starting with an 8-bit length. Since the +- * length is 8 bits and the size of the key/value buffers is 256, we +- * don't need to check for overflow... +- */ +- +- datalen = *data++; +- +- if (!datalen || (data + datalen) > dataend) +- break; +- +- datanext = data + datalen; +- +- for (ptr = key; data < datanext && *data != '='; data ++) +- *ptr++ = *data; +- *ptr = '\0'; ++ char *key; ++ char *value; + +- if (data < datanext && *data == '=') +- { +- data ++; +- +- if (data < datanext) +- memcpy(value, data, datanext - data); +- value[datanext - data] = '\0'; ++ if (parse_txt_record_pair (txt)) ++ goto next; + +- fprintf(stderr, "DEBUG2: query_callback: \"%s=%s\".\n", +- key, value); +- } +- else +- { +- fprintf(stderr, "DEBUG2: query_callback: \"%s\" with no value.\n", +- key); +- continue; +- } +- +- if (!_cups_strncasecmp(key, "usb_", 4)) ++ key = txt->key; ++ value = txt->value; ++ if (!strncasecmp(key, "usb_", 4)) + { + /* + * Add USB device ID information... +@@ -861,6 +1267,10 @@ query_callback( + if (device->type == CUPS_DEVICE_PRINTER) + device->sent = 1; + } ++ ++ next: ++ if (next_txt_record (txt) == NULL) ++ break; + } + + if (device->device_id) +@@ -917,11 +1327,9 @@ query_callback( + } + } + +- if (!device) +- fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); ++ return device; + } + +- + /* + * 'sigterm_handler()' - Handle termination signals... + */ +diff -up cups-1.5.3/cups/http-support.c.avahi-2-backend cups-1.5.3/cups/http-support.c +--- cups-1.5.3/cups/http-support.c.avahi-2-backend 2012-02-15 02:06:12.000000000 +0100 ++++ cups-1.5.3/cups/http-support.c 2012-05-15 17:04:51.045944634 +0200 +@@ -43,6 +43,10 @@ + * http_copy_decode() - Copy and decode a URI. + * http_copy_encode() - Copy and encode a URI. + * http_resolve_cb() - Build a device URI for the given service name. ++ * avahi_resolve_uri_client_cb() ++ * - Avahi client callback for resolving URI. ++ * avahi_resolve_uri_resolver_cb() ++ * - Avahi resolver callback for resolving URI. + */ + + /* +@@ -60,6 +64,11 @@ + # include <sys/select.h> + # endif /* WIN32 */ + #endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++# include <avahi-client/client.h> ++# include <avahi-client/lookup.h> ++# include <avahi-common/simple-watch.h> ++#endif /* HAVE_AVAHI */ + + + /* +@@ -127,6 +136,24 @@ static void DNSSD_API http_resolve_cb(DN + void *context); + #endif /* HAVE_DNSSD */ + ++#ifdef HAVE_AVAHI ++static void avahi_resolve_uri_client_cb(AvahiClient *client, ++ AvahiClientState state, ++ void *simple_poll); ++static void avahi_resolve_uri_resolver_cb(AvahiServiceResolver *resolver, ++ AvahiIfIndex interface, ++ AvahiProtocol protocol, ++ AvahiResolverEvent event, ++ const char *name, ++ const char *type, ++ const char *domain, ++ const char *host_name, ++ const AvahiAddress *address, ++ uint16_t port, ++ AvahiStringList *txt, ++ AvahiLookupResultFlags flags, ++ void *context); ++#endif /* HAVE_AVAHI */ + + /* + * 'httpAssembleURI()' - Assemble a uniform resource identifier from its +@@ -1434,6 +1461,9 @@ _httpResolveURI( + + if (strstr(hostname, "._tcp")) + { ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) ++ char *regtype, /* Pointer to type in hostname */ ++ *domain; /* Pointer to domain in hostname */ + #ifdef HAVE_DNSSD + # ifdef WIN32 + # pragma comment(lib, "dnssd.lib") +@@ -1452,6 +1482,17 @@ _httpResolveURI( + fd_set input_set; /* Input set for select() */ + struct timeval stimeout; /* Timeout value for select() */ + #endif /* HAVE_POLL */ ++#else /* HAVE_AVAHI */ ++ AvahiSimplePoll *simple_poll; ++ AvahiClient *client; ++ int error; ++ struct ++ { ++ AvahiSimplePoll *poll; ++ _http_uribuf_t uribuf; ++ } user_data; ++#endif /* HAVE_DNSSD */ ++ + + if (options & _HTTP_RESOLVE_STDERR) + fprintf(stderr, "DEBUG: Resolving \"%s\"...\n", hostname); +@@ -1488,9 +1529,16 @@ _httpResolveURI( + if (domain) + *domain++ = '\0'; + ++#ifdef HAVE_DNSSD + uribuf.buffer = resolved_uri; + uribuf.bufsize = resolved_size; + uribuf.options = options; ++#else ++ user_data.uribuf.buffer = resolved_uri; ++ user_data.uribuf.bufsize = resolved_size; ++ user_data.uribuf.options = options; ++#endif ++ + resolved_uri[0] = '\0'; + + DEBUG_printf(("6_httpResolveURI: Resolving hostname=\"%s\", regtype=\"%s\", " +@@ -1504,6 +1552,7 @@ _httpResolveURI( + + uri = NULL; + ++#ifdef HAVE_DNSSD + if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError) + { + localref = ref; +@@ -1611,6 +1660,36 @@ _httpResolveURI( + + DNSServiceRefDeallocate(ref); + } ++#else /* HAVE_AVAHI */ ++ if ((simple_poll = avahi_simple_poll_new ()) != NULL) ++ { ++ if ((client = avahi_client_new (avahi_simple_poll_get (simple_poll), ++ 0, avahi_resolve_uri_client_cb, ++ &simple_poll, &error)) != NULL) ++ { ++ user_data.poll = simple_poll; ++ if (avahi_service_resolver_new (client, AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, hostname, ++ regtype, domain, AVAHI_PROTO_UNSPEC, 0, ++ avahi_resolve_uri_resolver_cb, ++ &user_data) != NULL) ++ { ++ avahi_simple_poll_loop (simple_poll); ++ ++ /* ++ * Collect the result. ++ */ ++ ++ if (resolved_uri[0]) ++ uri = resolved_uri; ++ } ++ ++ avahi_client_free (client); ++ } ++ ++ avahi_simple_poll_free (simple_poll); ++ } ++#endif /* HAVE_DNSSD */ + + if (options & _HTTP_RESOLVE_STDERR) + { +@@ -1622,13 +1701,13 @@ _httpResolveURI( + fputs("STATE: -connecting-to-device,offline-report\n", stderr); + } + +-#else ++#else /* HAVE_DNSSD || HAVE_AVAHI */ + /* + * No DNS-SD support... + */ + + uri = NULL; +-#endif /* HAVE_DNSSD */ ++#endif /* HAVE_DNSSD || HAVE_AVAHI */ + + if ((options & _HTTP_RESOLVE_STDERR) && !uri) + _cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer.")); +@@ -1916,6 +1995,115 @@ http_resolve_cb( + } + #endif /* HAVE_DNSSD */ + ++#ifdef HAVE_AVAHI ++/* ++ * 'avahi_resolve_uri_client_cb()' - Avahi client callback for resolving URI. ++ */ ++ ++static void ++avahi_resolve_uri_client_cb (AvahiClient *client, ++ AvahiClientState state, ++ void *simple_poll) ++{ ++ DEBUG_printf(("avahi_resolve_uri_client_callback(client=%p, state=%d, " ++ "simple_poll=%p)\n", client, state, simple_poll)); ++ ++ /* ++ * If the connection drops, quit. ++ */ ++ ++ if (state == AVAHI_CLIENT_FAILURE) ++ avahi_simple_poll_quit (simple_poll); ++} ++ ++ ++/* ++ * 'avahi_resolve_uri_resolver_cb()' - Avahi resolver callback for resolving ++ * URI. ++ */ ++ ++static void ++avahi_resolve_uri_resolver_cb (AvahiServiceResolver *resolver, ++ AvahiIfIndex interface, ++ AvahiProtocol protocol, ++ AvahiResolverEvent event, ++ const char *name, ++ const char *type, ++ const char *domain, ++ const char *host_name, ++ const AvahiAddress *address, ++ uint16_t port, ++ AvahiStringList *txt, ++ AvahiLookupResultFlags flags, ++ void *context) ++{ ++ const char *scheme; /* URI scheme */ ++ char rp[256]; /* Remote printer */ ++ AvahiStringList *pair; ++ char *value; ++ size_t valueLen = 0; ++ char addr[AVAHI_ADDRESS_STR_MAX]; ++ struct ++ { ++ AvahiSimplePoll *poll; ++ _http_uribuf_t uribuf; ++ } *poll_uribuf = context; ++ ++ DEBUG_printf(("avahi_resolve_uri_resolver_callback(resolver=%p, " ++ "interface=%d, protocol=%d, event=%d, name=\"%s\", " ++ "type=\"%s\", domain=\"%s\", host_name=\"%s\", address=%p, " ++ "port=%d, txt=%p, flags=%d, context=%p)\n", ++ resolver, interface, protocol, event, name, type, domain, ++ host_name, address, port, txt, flags, context)); ++ ++ if (event != AVAHI_RESOLVER_FOUND) ++ { ++ avahi_service_resolver_free (resolver); ++ avahi_simple_poll_quit (poll_uribuf->poll); ++ return; ++ } ++ ++ /* ++ * Figure out the scheme from the full name... ++ */ ++ ++ if (strstr(type, "_ipp.")) ++ scheme = "ipp"; ++ else if (strstr(type, "_printer.")) ++ scheme = "lpd"; ++ else if (strstr(type, "_pdl-datastream.")) ++ scheme = "socket"; ++ else ++ scheme = "riousbprint"; ++ ++ /* ++ * Extract the "remote printer key from the TXT record... ++ */ ++ ++ if ((pair = avahi_string_list_find (txt, "rp")) != NULL) ++ { ++ avahi_string_list_get_pair (pair, NULL, &value, &valueLen); ++ rp[0] = '/'; ++ memcpy (rp + 1, value, valueLen); ++ rp[valueLen + 1] = '\0'; ++ } ++ else ++ rp[0] = '\0'; ++ ++ /* ++ * Assemble the final device URI... ++ */ ++ ++ avahi_address_snprint (addr, AVAHI_ADDRESS_STR_MAX, address); ++ httpAssembleURI(HTTP_URI_CODING_ALL, poll_uribuf->uribuf.buffer, ++ poll_uribuf->uribuf.bufsize, scheme, NULL, ++ addr, port, rp); ++ DEBUG_printf(("avahi_resolve_uri_resolver_callback: Resolved URI is \"%s\"\n", ++ poll_uribuf->uribuf.buffer)); ++ avahi_simple_poll_quit (poll_uribuf->poll); ++} ++#endif /* HAVE_AVAHI */ ++ + + /* + * End of "$Id: http-support.c 10284 2012-02-15 01:06:12Z mike $".
\ No newline at end of file diff --git a/abs/extra/cups/cups-avahi-3-timeouts.patch b/abs/extra/cups/cups-avahi-3-timeouts.patch new file mode 100644 index 0000000..daf852a --- /dev/null +++ b/abs/extra/cups/cups-avahi-3-timeouts.patch @@ -0,0 +1,381 @@ +diff -up cups-1.5.2/scheduler/cupsd.h.avahi-3-timeouts cups-1.5.2/scheduler/cupsd.h +--- cups-1.5.2/scheduler/cupsd.h.avahi-3-timeouts 2011-05-11 23:17:34.000000000 +0100 ++++ cups-1.5.2/scheduler/cupsd.h 2012-03-14 15:06:36.509476983 +0000 +@@ -140,6 +140,15 @@ extern const char *cups_hstrerror(int); + + typedef void (*cupsd_selfunc_t)(void *data); + ++#ifdef HAVE_AVAHI ++/* ++ * Timeout callback function type... ++ */ ++ ++typedef struct _cupsd_timeout_s cupsd_timeout_t; ++typedef void (*cupsd_timeoutfunc_t)(cupsd_timeout_t *timeout, void *data); ++#endif /* HAVE_AVAHI */ ++ + + /* + * Globals... +@@ -173,6 +182,11 @@ VAR int Launchd VALUE(0); + /* Running from launchd */ + #endif /* HAVE_LAUNCH_H */ + ++#ifdef HAVE_AVAHI ++VAR cups_array_t *Timeouts; /* Timed callbacks for main loop */ ++#endif /* HAVE_AVAHI */ ++ ++ + + /* + * Prototypes... +@@ -242,6 +256,20 @@ extern void cupsdStopSelect(void); + extern void cupsdStartServer(void); + extern void cupsdStopServer(void); + ++#ifdef HAVE_AVAHI ++extern void cupsdInitTimeouts(void); ++extern cupsd_timeout_t *cupsdAddTimeout (const struct timeval *tv, ++ cupsd_timeoutfunc_t cb, ++ void *data); ++extern cupsd_timeout_t *cupsdNextTimeout (long *delay); ++extern void cupsdRunTimeout (cupsd_timeout_t *timeout); ++extern void cupsdUpdateTimeout (cupsd_timeout_t *timeout, ++ const struct timeval *tv); ++extern void cupsdRemoveTimeout (cupsd_timeout_t *timeout); ++#endif /* HAVE_AVAHI */ ++ ++extern int cupsdRemoveFile(const char *filename); ++ + + /* + * End of "$Id: cupsd.h 9766 2011-05-11 22:17:34Z mike $". +diff -up cups-1.5.2/scheduler/main.c.avahi-3-timeouts cups-1.5.2/scheduler/main.c +--- cups-1.5.2/scheduler/main.c.avahi-3-timeouts 2012-03-14 15:04:17.655305548 +0000 ++++ cups-1.5.2/scheduler/main.c 2012-03-14 15:06:36.511476986 +0000 +@@ -146,6 +146,10 @@ main(int argc, /* I - Number of comm + int launchd_idle_exit; + /* Idle exit on select timeout? */ + #endif /* HAVE_LAUNCHD */ ++#ifdef HAVE_AVAHI ++ cupsd_timeout_t *tmo; /* Next scheduled timed callback */ ++ long tmo_delay; /* Time before it must be called */ ++#endif /* HAVE_AVAHI */ + + + #ifdef HAVE_GETEUID +@@ -535,6 +539,14 @@ main(int argc, /* I - Number of comm + + httpInitialize(); + ++#ifdef HAVE_AVAHI ++ /* ++ * Initialize timed callback structures. ++ */ ++ ++ cupsdInitTimeouts(); ++#endif /* HAVE_AVAHI */ ++ + cupsdStartServer(); + + /* +@@ -874,6 +886,16 @@ main(int argc, /* I - Number of comm + } + #endif /* __APPLE__ */ + ++#ifdef HAVE_AVAHI ++ /* ++ * If a timed callback is due, run it. ++ */ ++ ++ tmo = cupsdNextTimeout (&tmo_delay); ++ if (tmo && tmo_delay == 0) ++ cupsdRunTimeout (tmo); ++#endif /* HAVE_AVAHI */ ++ + #ifndef __APPLE__ + /* + * Update the network interfaces once a minute... +@@ -1787,6 +1809,10 @@ select_timeout(int fds) /* I - Number + cupsd_job_t *job; /* Job information */ + cupsd_subscription_t *sub; /* Subscription information */ + const char *why; /* Debugging aid */ ++#ifdef HAVE_AVAHI ++ cupsd_timeout_t *tmo; /* Timed callback */ ++ long tmo_delay; /* Seconds before calling it */ ++#endif /* HAVE_AVAHI */ + + + /* +@@ -1829,6 +1855,19 @@ select_timeout(int fds) /* I - Number + } + #endif /* __APPLE__ */ + ++#ifdef HAVE_AVAHI ++ /* ++ * See if there are any scheduled timed callbacks to run. ++ */ ++ ++ if ((tmo = cupsdNextTimeout(&tmo_delay)) != NULL && ++ (now + tmo_delay) < timeout) ++ { ++ timeout = tmo_delay; ++ why = "run a timed callback"; ++ } ++#endif /* HAVE_AVAHI */ ++ + /* + * Check whether we are accepting new connections... + */ +diff -up cups-1.5.2/scheduler/Makefile.avahi-3-timeouts cups-1.5.2/scheduler/Makefile +--- cups-1.5.2/scheduler/Makefile.avahi-3-timeouts 2012-03-14 15:04:17.685305586 +0000 ++++ cups-1.5.2/scheduler/Makefile 2012-03-14 15:06:36.508476980 +0000 +@@ -39,7 +39,8 @@ CUPSDOBJS = \ + server.o \ + statbuf.o \ + subscriptions.o \ +- sysman.o ++ sysman.o \ ++ timeout.o + LIBOBJS = \ + filter.o \ + mime.o \ +diff -up cups-1.5.2/scheduler/timeout.c.avahi-3-timeouts cups-1.5.2/scheduler/timeout.c +--- cups-1.5.2/scheduler/timeout.c.avahi-3-timeouts 2012-03-14 15:06:36.552477037 +0000 ++++ cups-1.5.2/scheduler/timeout.c 2012-03-14 15:06:36.552477037 +0000 +@@ -0,0 +1,235 @@ ++/* ++ * "$Id$" ++ * ++ * Timeout functions for the Common UNIX Printing System (CUPS). ++ * ++ * Copyright (C) 2010, 2011 Red Hat, Inc. ++ * Authors: ++ * Tim Waugh <twaugh@redhat.com> ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * ++ * Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * ++ * Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * ++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS ++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ++ * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, ++ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES ++ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR ++ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ++ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ++ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED ++ * OF THE POSSIBILITY OF SUCH DAMAGE. ++ * ++ * Contents: ++ * ++ * cupsdInitTimeouts() - Initialise timeout structure. ++ * cupsdAddTimeout() - Add a timed callback. ++ * cupsdNextTimeout() - Find the next enabled timed callback. ++ * cupsdUpdateTimeout() - Adjust the time of a timed callback or disable it. ++ * cupsdRemoveTimeout() - Discard a timed callback. ++ * compare_timeouts() - Compare timed callbacks for array sorting. ++ */ ++ ++#include <config.h> ++ ++#ifdef HAVE_AVAHI /* Applies to entire file... */ ++ ++/* ++ * Include necessary headers... ++ */ ++ ++#include "cupsd.h" ++ ++#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO) ++# include <malloc.h> ++#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */ ++ ++#ifdef HAVE_AVAHI ++# include <avahi-common/timeval.h> ++#endif /* HAVE_AVAHI */ ++ ++ ++struct _cupsd_timeout_s ++{ ++ struct timeval when; ++ int enabled; ++ cupsd_timeoutfunc_t callback; ++ void *data; ++}; ++ ++/* ++ * Local functions... ++ */ ++ ++/* ++ * 'compare_timeouts()' - Compare timed callbacks for array sorting. ++ */ ++ ++static int ++compare_addrs (void *p0, void *p1) ++{ ++ if (p0 == p1) ++ return (0); ++ if (p0 < p1) ++ return (-1); ++ return (1); ++} ++ ++static int ++compare_timeouts (cupsd_timeout_t *p0, cupsd_timeout_t *p1) ++{ ++ int addrsdiff = compare_addrs (p0, p1); ++ int tvdiff; ++ ++ if (addrsdiff == 0) ++ return (0); ++ ++ if (!p0->enabled || !p1->enabled) ++ { ++ if (!p0->enabled && !p1->enabled) ++ return (addrsdiff); ++ ++ return (p0->enabled ? -1 : 1); ++ } ++ ++ tvdiff = avahi_timeval_compare (&p0->when, &p1->when); ++ if (tvdiff != 0) ++ return (tvdiff); ++ ++ return (addrsdiff); ++} ++ ++ ++/* ++ * 'cupsdInitTimeouts()' - Initialise timeout structures. ++ */ ++ ++void ++cupsdInitTimeouts(void) ++{ ++ Timeouts = cupsArrayNew ((cups_array_func_t)compare_timeouts, NULL); ++} ++ ++ ++/* ++ * 'cupsdAddTimeout()' - Add a timed callback. ++ */ ++ ++cupsd_timeout_t * /* O - Timeout handle */ ++cupsdAddTimeout(const struct timeval *tv, /* I - Absolute time */ ++ cupsd_timeoutfunc_t cb, /* I - Callback function */ ++ void *data) /* I - User data */ ++{ ++ cupsd_timeout_t *timeout; ++ ++ timeout = malloc (sizeof(cupsd_timeout_t)); ++ if (timeout != NULL) ++ { ++ timeout->enabled = (tv != NULL); ++ if (tv) ++ { ++ timeout->when.tv_sec = tv->tv_sec; ++ timeout->when.tv_usec = tv->tv_usec; ++ } ++ ++ timeout->callback = cb; ++ timeout->data = data; ++ cupsArrayAdd (Timeouts, timeout); ++ } ++ ++ return timeout; ++} ++ ++ ++/* ++ * 'cupsdNextTimeout()' - Find the next enabled timed callback. ++ */ ++ ++cupsd_timeout_t * /* O - Next enabled timeout or NULL */ ++cupsdNextTimeout(long *delay) /* O - Seconds before scheduled */ ++{ ++ cupsd_timeout_t *first = cupsArrayFirst (Timeouts); ++ struct timeval curtime; ++ ++ if (first && !first->enabled) ++ first = NULL; ++ ++ if (first && delay) ++ { ++ gettimeofday (&curtime, NULL); ++ if (avahi_timeval_compare (&curtime, &first->when) > 0) ++ { ++ *delay = 0; ++ } else { ++ *delay = 1 + first->when.tv_sec - curtime.tv_sec; ++ if (first->when.tv_usec < curtime.tv_usec) ++ (*delay)--; ++ } ++ } ++ ++ return (first); ++} ++ ++ ++/* ++ * 'cupsdRunTimeout()' - Run a timed callback. ++ */ ++ ++void ++cupsdRunTimeout(cupsd_timeout_t *timeout) /* I - Timeout */ ++{ ++ if (!timeout) ++ return; ++ timeout->enabled = 0; ++ if (!timeout->callback) ++ return; ++ timeout->callback (timeout, timeout->data); ++} ++ ++/* ++ * 'cupsdUpdateTimeout()' - Adjust the time of a timed callback or disable it. ++ */ ++ ++void ++cupsdUpdateTimeout(cupsd_timeout_t *timeout, /* I - Timeout */ ++ const struct timeval *tv) /* I - Absolute time or NULL */ ++{ ++ cupsArrayRemove (Timeouts, timeout); ++ timeout->enabled = (tv != NULL); ++ if (tv) ++ { ++ timeout->when.tv_sec = tv->tv_sec; ++ timeout->when.tv_usec = tv->tv_usec; ++ } ++ cupsArrayAdd (Timeouts, timeout); ++} ++ ++ ++/* ++ * 'cupsdRemoveTimeout()' - Discard a timed callback. ++ */ ++ ++void ++cupsdRemoveTimeout(cupsd_timeout_t *timeout) /* I - Timeout */ ++{ ++ cupsArrayRemove (Timeouts, timeout); ++ free (timeout); ++} ++ ++ ++#endif /* HAVE_AVAHI ... from top of file */ ++ ++/* ++ * End of "$Id$". ++ */ diff --git a/abs/extra/cups/cups-avahi-4-poll.patch b/abs/extra/cups/cups-avahi-4-poll.patch new file mode 100644 index 0000000..d7fa5fd --- /dev/null +++ b/abs/extra/cups/cups-avahi-4-poll.patch @@ -0,0 +1,529 @@ +diff -up cups-1.5.2/scheduler/avahi.c.avahi-4-poll cups-1.5.2/scheduler/avahi.c +--- cups-1.5.2/scheduler/avahi.c.avahi-4-poll 2012-03-14 15:07:29.477542381 +0000 ++++ cups-1.5.2/scheduler/avahi.c 2012-03-14 15:07:29.477542381 +0000 +@@ -0,0 +1,441 @@ ++/* ++ * "$Id$" ++ * ++ * Avahi poll implementation for the CUPS scheduler. ++ * ++ * Copyright (C) 2010, 2011 Red Hat, Inc. ++ * Authors: ++ * Tim Waugh <twaugh@redhat.com> ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * ++ * Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * ++ * Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * ++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS ++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ++ * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, ++ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES ++ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR ++ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ++ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ++ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED ++ * OF THE POSSIBILITY OF SUCH DAMAGE. ++ * ++ * Contents: ++ * ++ * watch_read_cb - Read callback for file descriptor ++ * watch_write_cb - Write callback for file descriptor ++ * watched_fd_add_select() - Call cupsdAddSelect() as needed ++ * watch_new() - Create a new file descriptor watch ++ * watch_free() - Free a file descriptor watch ++ * watch_update() - Update watched events for a file descriptor ++ * watch_get_events() - Get events that happened for a file descriptor ++ * timeout_cb() - Run a timed Avahi callback ++ * timeout_new() - Set a wakeup time ++ * timeout_update() - Update the expiration time for a timeout ++ * timeout_free() - Free a timeout ++ * compare_watched_fds() - Compare watched file descriptors for array sorting ++ * avahi_cups_poll_new() - Create a new Avahi main loop object for CUPS ++ * avahi_cups_poll_free() - Free an Avahi main loop object for CUPS ++ * avahi_cups_poll_get() - Get the abstract poll API structure ++ */ ++ ++#include <config.h> ++ ++#ifdef HAVE_AVAHI /* Applies to entire file... */ ++ ++/* ++ * Include necessary headers... ++ */ ++ ++#include "cupsd.h" ++ ++#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO) ++# include <malloc.h> ++#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */ ++ ++#ifdef HAVE_AVAHI ++# include <avahi-common/timeval.h> ++#endif /* HAVE_AVAHI */ ++ ++ ++typedef struct ++{ ++ AvahiCupsPoll *cups_poll; ++ ++ int fd; ++ AvahiWatchEvent occurred; ++ cups_array_t *watches; ++} cupsd_watched_fd_t; ++ ++struct AvahiWatch ++{ ++ cupsd_watched_fd_t *watched_fd; ++ ++ AvahiWatchEvent events; ++ AvahiWatchCallback callback; ++ void *userdata; ++}; ++ ++struct AvahiTimeout ++{ ++ AvahiCupsPoll *cups_poll; ++ AvahiTimeoutCallback callback; ++ void *userdata; ++ cupsd_timeout_t *cupsd_timeout; ++}; ++ ++/* ++ * Local functions... ++ */ ++ ++static AvahiWatch * watch_new(const AvahiPoll *api, ++ int fd, ++ AvahiWatchEvent events, ++ AvahiWatchCallback callback, ++ void *userdata); ++static void watch_free(AvahiWatch *watch); ++static void watch_update(AvahiWatch *watch, ++ AvahiWatchEvent events); ++static AvahiWatchEvent watch_get_events(AvahiWatch *watch); ++ ++ ++/* ++ * 'watch_read_cb' - Read callback for file descriptor ++ */ ++ ++static void ++watch_read_cb (void *userdata) ++{ ++ AvahiWatch *watch; ++ cupsd_watched_fd_t *watched_fd = userdata; ++ watched_fd->occurred |= AVAHI_WATCH_IN; ++ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); ++ watch; ++ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) ++ { ++ if (watch->events & watched_fd->occurred) ++ { ++ (watch->callback) (watch, watched_fd->fd, ++ AVAHI_WATCH_IN, watch->userdata); ++ watched_fd->occurred &= ~AVAHI_WATCH_IN; ++ break; ++ } ++ } ++} ++ ++ ++/* ++ * 'watch_write_cb' - Write callback for file descriptor ++ */ ++ ++static void ++watch_write_cb (void *userdata) ++{ ++ AvahiWatch *watch; ++ cupsd_watched_fd_t *watched_fd = userdata; ++ watched_fd->occurred |= AVAHI_WATCH_OUT; ++ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); ++ watch; ++ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) ++ { ++ if (watch->events & watched_fd->occurred) ++ { ++ (watch->callback) (watch, watched_fd->fd, ++ AVAHI_WATCH_OUT, watch->userdata); ++ watched_fd->occurred &= ~AVAHI_WATCH_OUT; ++ break; ++ } ++ } ++} ++ ++ ++/* ++ * 'watched_fd_add_select' - Call cupsdAddSelect() as needed ++ */ ++ ++static int /* O - Watches? */ ++watched_fd_add_select (cupsd_watched_fd_t *watched_fd) ++{ ++ AvahiWatch *watch; ++ cupsd_selfunc_t read_cb = NULL, write_cb = NULL; ++ int any_watches = 0; ++ ++ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); ++ watch; ++ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) ++ { ++ any_watches = 1; ++ if (watch->events & (AVAHI_WATCH_IN | ++ AVAHI_WATCH_ERR | ++ AVAHI_WATCH_HUP)) ++ { ++ read_cb = (cupsd_selfunc_t)watch_read_cb; ++ if (write_cb != NULL) ++ break; ++ } ++ ++ if (watch->events & AVAHI_WATCH_OUT) ++ { ++ write_cb = (cupsd_selfunc_t)watch_write_cb; ++ if (read_cb != NULL) ++ break; ++ } ++ } ++ ++ if (read_cb || write_cb) ++ cupsdAddSelect (watched_fd->fd, read_cb, write_cb, watched_fd); ++ else ++ cupsdRemoveSelect (watched_fd->fd); ++ ++ return (any_watches); ++} ++ ++/* ++ * 'watch_new' - Create a new file descriptor watch ++ */ ++ ++static AvahiWatch * ++watch_new (const AvahiPoll *api, ++ int fd, ++ AvahiWatchEvent events, ++ AvahiWatchCallback callback, ++ void *userdata) ++{ ++ cupsd_watched_fd_t key, *watched_fd; ++ AvahiCupsPoll *cups_poll = api->userdata; ++ AvahiWatch *watch = malloc(sizeof(AvahiWatch)); ++ if (watch == NULL) ++ return (NULL); ++ ++ watch->events = events; ++ watch->callback = callback; ++ watch->userdata = userdata; ++ ++ key.fd = fd; ++ watched_fd = cupsArrayFind (cups_poll->watched_fds, &key); ++ if (watched_fd == NULL) ++ { ++ watched_fd = malloc(sizeof(cupsd_watched_fd_t)); ++ if (watched_fd == NULL) ++ { ++ free (watch); ++ return (NULL); ++ } ++ ++ watched_fd->fd = fd; ++ watched_fd->occurred = 0; ++ watched_fd->cups_poll = cups_poll; ++ watched_fd->watches = cupsArrayNew (NULL, NULL); ++ cupsArrayAdd (cups_poll->watched_fds, watched_fd); ++ } ++ ++ watch->watched_fd = watched_fd; ++ cupsArrayAdd(watched_fd->watches, watch); ++ watched_fd_add_select (watched_fd); ++ return (watch); ++} ++ ++ ++/* ++ * 'watch_free' - Free a file descriptor watch ++ */ ++ ++static void ++watch_free (AvahiWatch *watch) ++{ ++ cupsd_watched_fd_t *watched_fd = watch->watched_fd; ++ AvahiCupsPoll *cups_poll = watched_fd->cups_poll; ++ ++ cupsArrayRemove (watched_fd->watches, watch); ++ free (watch); ++ ++ if (!watched_fd_add_select (watched_fd)) ++ { ++ /* No more watches */ ++ cupsArrayRemove (cups_poll->watched_fds, watched_fd); ++ free (watched_fd); ++ } ++} ++ ++ ++/* ++ * 'watch_update' - Update watched events for a file descriptor ++ */ ++ ++static void ++watch_update (AvahiWatch *watch, ++ AvahiWatchEvent events) ++{ ++ watch->events = events; ++ watched_fd_add_select (watch->watched_fd); ++} ++ ++ ++/* ++ * 'watch_get_events' - Get events that happened for a file descriptor ++ */ ++ ++static AvahiWatchEvent ++watch_get_events (AvahiWatch *watch) ++{ ++ return (watch->watched_fd->occurred); ++} ++ ++ ++/* ++ * 'timeout_cb()' - Run a timed Avahi callback ++ */ ++ ++static void ++timeout_cb (cupsd_timeout_t *cupsd_timeout, void *userdata) ++{ ++ AvahiTimeout *timeout = userdata; ++ (timeout->callback) (timeout, timeout->userdata); ++} ++ ++ ++/* ++ * 'timeout_new' - Set a wakeup time ++ */ ++ ++static AvahiTimeout * ++timeout_new (const AvahiPoll *api, ++ const struct timeval *tv, ++ AvahiTimeoutCallback callback, ++ void *userdata) ++{ ++ AvahiTimeout *timeout; ++ AvahiCupsPoll *cups_poll = api->userdata; ++ ++ timeout = malloc(sizeof(AvahiTimeout)); ++ if (timeout == NULL) ++ return (NULL); ++ ++ timeout->cups_poll = cups_poll; ++ timeout->callback = callback; ++ timeout->userdata = userdata; ++ timeout->cupsd_timeout = cupsdAddTimeout (tv, ++ (cupsd_timeoutfunc_t)timeout_cb, ++ timeout); ++ cupsArrayAdd (cups_poll->timeouts, timeout); ++ return (timeout); ++} ++ ++ ++/* ++ * 'timeout_update' - Update the expiration time for a timeout ++ */ ++ ++static void ++timeout_update (AvahiTimeout *timeout, ++ const struct timeval *tv) ++{ ++ cupsdUpdateTimeout (timeout->cupsd_timeout, tv); ++} ++ ++ ++/* ++ * ' timeout_free' - Free a timeout ++ */ ++ ++static void ++timeout_free (AvahiTimeout *timeout) ++{ ++ cupsArrayRemove (timeout->cups_poll->timeouts, timeout); ++ cupsdRemoveTimeout (timeout->cupsd_timeout); ++ free (timeout); ++} ++ ++ ++/* ++ * 'compare_watched_fds' - Compare watched file descriptors for array sorting ++ */ ++static int ++compare_watched_fds(cupsd_watched_fd_t *p0, ++ cupsd_watched_fd_t *p1) ++{ ++ /* ++ * Compare by fd (no two elements have the same fd) ++ */ ++ ++ if (p0->fd == p1->fd) ++ return 0; ++ ++ return (p0->fd < p1->fd ? -1 : 1); ++} ++ ++ ++/* ++ * 'avahi_cups_poll_new' - Create a new Avahi main loop object for CUPS ++ */ ++ ++AvahiCupsPoll * ++avahi_cups_poll_new (void) ++{ ++ AvahiCupsPoll *cups_poll = malloc(sizeof(AvahiCupsPoll)); ++ if (cups_poll == NULL) ++ return (NULL); ++ ++ cups_poll->watched_fds = cupsArrayNew ((cups_array_func_t)compare_watched_fds, ++ NULL); ++ cups_poll->timeouts = cupsArrayNew (NULL, NULL); ++ ++ cups_poll->api.userdata = cups_poll; ++ cups_poll->api.watch_new = watch_new; ++ cups_poll->api.watch_free = watch_free; ++ cups_poll->api.watch_update = watch_update; ++ cups_poll->api.watch_get_events = watch_get_events; ++ ++ cups_poll->api.timeout_new = timeout_new; ++ cups_poll->api.timeout_update = timeout_update; ++ cups_poll->api.timeout_free = timeout_free; ++ ++ return (cups_poll); ++} ++ ++ ++/* ++ * 'avahi_cups_poll_free' - Free an Avahi main loop object for CUPS ++ */ ++void ++avahi_cups_poll_free (AvahiCupsPoll *cups_poll) ++{ ++ cupsd_watched_fd_t *watched_fd; ++ ++ for (watched_fd = (cupsd_watched_fd_t*)cupsArrayFirst(cups_poll->watched_fds); ++ watched_fd; ++ watched_fd = (cupsd_watched_fd_t*)cupsArrayNext(cups_poll->watched_fds)) ++ cupsArrayClear (watched_fd->watches); ++ ++ cupsArrayClear (cups_poll->watched_fds); ++ cupsArrayClear (cups_poll->timeouts); ++} ++ ++ ++/* ++ * 'avahi_cups_poll_get' - Get the abstract poll API structure ++ */ ++ ++const AvahiPoll * ++avahi_cups_poll_get (AvahiCupsPoll *cups_poll) ++{ ++ return (&cups_poll->api); ++} ++ ++ ++#endif /* HAVE_AVAHI ... from top of file */ ++ ++/* ++ * End of "$Id$". ++ */ +diff -up cups-1.5.2/scheduler/avahi.h.avahi-4-poll cups-1.5.2/scheduler/avahi.h +--- cups-1.5.2/scheduler/avahi.h.avahi-4-poll 2012-03-14 15:07:29.477542381 +0000 ++++ cups-1.5.2/scheduler/avahi.h 2012-03-14 15:07:29.477542381 +0000 +@@ -0,0 +1,69 @@ ++/* ++ * "$Id$" ++ * ++ * Avahi poll implementation for the CUPS scheduler. ++ * ++ * Copyright (C) 2010, 2011 Red Hat, Inc. ++ * Authors: ++ * Tim Waugh <twaugh@redhat.com> ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * ++ * Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * ++ * Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * ++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS ++ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ++ * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, ++ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES ++ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR ++ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ++ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ++ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED ++ * OF THE POSSIBILITY OF SUCH DAMAGE. ++ */ ++ ++#include <config.h> ++ ++#ifdef HAVE_AVAHI ++# include <avahi-client/client.h> ++# include <avahi-client/publish.h> ++#endif /* HAVE_AVAHI */ ++ ++#ifdef HAVE_AUTHORIZATION_H ++# include <Security/Authorization.h> ++#endif /* HAVE_AUTHORIZATION_H */ ++ ++ ++#ifdef HAVE_AVAHI ++typedef struct ++{ ++ AvahiPoll api; ++ cups_array_t *watched_fds; ++ cups_array_t *timeouts; ++} AvahiCupsPoll; ++#endif /* HAVE_AVAHI */ ++ ++/* ++ * Prototypes... ++ */ ++ ++#ifdef HAVE_AVAHI ++extern AvahiCupsPoll * avahi_cups_poll_new(void); ++extern void avahi_cups_poll_free(AvahiCupsPoll *cups_poll); ++extern const AvahiPoll *avahi_cups_poll_get(AvahiCupsPoll *cups_poll); ++#endif /* HAVE_AVAHI */ ++ ++ ++/* ++ * End of "$Id$". ++ */ +diff -up cups-1.5.2/scheduler/Makefile.avahi-4-poll cups-1.5.2/scheduler/Makefile +--- cups-1.5.2/scheduler/Makefile.avahi-4-poll 2012-03-14 15:06:36.508476980 +0000 ++++ cups-1.5.2/scheduler/Makefile 2012-03-14 15:07:29.476542380 +0000 +@@ -17,6 +17,7 @@ include ../Makedefs + + CUPSDOBJS = \ + auth.o \ ++ avahi.o \ + banners.o \ + cert.o \ + classes.o \ diff --git a/abs/extra/cups/cups-avahi-5-services.patch b/abs/extra/cups/cups-avahi-5-services.patch new file mode 100644 index 0000000..820b3c3 --- /dev/null +++ b/abs/extra/cups/cups-avahi-5-services.patch @@ -0,0 +1,1272 @@ +diff -up cups-1.5.2/cgi-bin/admin.c.avahi-5-services cups-1.5.2/cgi-bin/admin.c +--- cups-1.5.2/cgi-bin/admin.c.avahi-5-services 2011-08-17 22:01:53.000000000 +0100 ++++ cups-1.5.2/cgi-bin/admin.c 2012-03-14 15:08:25.701611799 +0000 +@@ -1643,7 +1643,7 @@ do_config_server(http_t *http) /* I - H + else + local_protocols[0] = '\0'; + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + if (cgiGetVariable("BROWSE_LOCAL_DNSSD")) + { + if (local_protocols[0]) +@@ -1651,7 +1651,7 @@ do_config_server(http_t *http) /* I - H + else + strcat(local_protocols, "dnssd"); + } +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + #ifdef HAVE_LDAP + if (cgiGetVariable("BROWSE_LOCAL_LDAP")) +@@ -2718,9 +2718,9 @@ do_menu(http_t *http) /* I - HTTP conn + #endif /* HAVE_GSSAPI */ + cgiSetVariable("KERBEROS", ""); + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + cgiSetVariable("HAVE_DNSSD", "1"); +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + #ifdef HAVE_LDAP + cgiSetVariable("HAVE_LDAP", "1"); +diff -up cups-1.5.2/scheduler/avahi.h.avahi-5-services cups-1.5.2/scheduler/avahi.h +--- cups-1.5.2/scheduler/avahi.h.avahi-5-services 2012-03-14 15:07:29.477542381 +0000 ++++ cups-1.5.2/scheduler/avahi.h 2012-03-14 15:08:25.701611799 +0000 +@@ -3,7 +3,7 @@ + * + * Avahi poll implementation for the CUPS scheduler. + * +- * Copyright (C) 2010, 2011 Red Hat, Inc. ++ * Copyright (C) 2010, 2011, 2012 Red Hat, Inc. + * Authors: + * Tim Waugh <twaugh@redhat.com> + * +@@ -32,37 +32,40 @@ + * OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <config.h> ++#ifndef _CUPS_AVAHI_H_ ++# define _CUPS_AVAHI_H_ + +-#ifdef HAVE_AVAHI +-# include <avahi-client/client.h> +-# include <avahi-client/publish.h> +-#endif /* HAVE_AVAHI */ ++/* ++ * Include necessary headers... ++ */ + +-#ifdef HAVE_AUTHORIZATION_H +-# include <Security/Authorization.h> +-#endif /* HAVE_AUTHORIZATION_H */ ++# include <config.h> + ++# ifdef HAVE_AVAHI ++# include <avahi-client/client.h> ++# include <avahi-client/publish.h> ++# endif /* HAVE_AVAHI */ + +-#ifdef HAVE_AVAHI ++# ifdef HAVE_AVAHI + typedef struct + { + AvahiPoll api; + cups_array_t *watched_fds; + cups_array_t *timeouts; + } AvahiCupsPoll; +-#endif /* HAVE_AVAHI */ ++# endif /* HAVE_AVAHI */ + + /* + * Prototypes... + */ + +-#ifdef HAVE_AVAHI ++# ifdef HAVE_AVAHI + extern AvahiCupsPoll * avahi_cups_poll_new(void); + extern void avahi_cups_poll_free(AvahiCupsPoll *cups_poll); + extern const AvahiPoll *avahi_cups_poll_get(AvahiCupsPoll *cups_poll); +-#endif /* HAVE_AVAHI */ ++# endif /* HAVE_AVAHI */ + ++#endif /* !_CUPS_AVAHI_H_ */ + + /* + * End of "$Id$". +diff -up cups-1.5.2/scheduler/client.c.avahi-5-services cups-1.5.2/scheduler/client.c +--- cups-1.5.2/scheduler/client.c.avahi-5-services 2012-01-13 23:00:22.000000000 +0000 ++++ cups-1.5.2/scheduler/client.c 2012-03-14 15:08:25.703611797 +0000 +@@ -4989,7 +4989,7 @@ valid_host(cupsd_client_t *con) /* I - + !strncmp(host, "[::1]:", 6)); + } + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + /* + * Check if the hostname is something.local (Bonjour); if so, allow it. + */ +@@ -4998,7 +4998,7 @@ valid_host(cupsd_client_t *con) /* I - + (!_cups_strcasecmp(end, ".local") || !_cups_strncasecmp(end, ".local:", 7) || + !_cups_strcasecmp(end, ".local.") || !_cups_strncasecmp(end, ".local.:", 8))) + return (1); +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + /* + * Check if the hostname is an IP address... +diff -up cups-1.5.2/scheduler/conf.c.avahi-5-services cups-1.5.2/scheduler/conf.c +--- cups-1.5.2/scheduler/conf.c.avahi-5-services 2012-03-14 15:04:17.636305526 +0000 ++++ cups-1.5.2/scheduler/conf.c 2012-03-14 15:08:25.706611803 +0000 +@@ -652,7 +652,7 @@ cupsdReadConfiguration(void) + Browsing = CUPS_DEFAULT_BROWSING; + DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED; + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + cupsdSetString(&DNSSDRegType, "_ipp._tcp,_cups"); + #endif /* HAVE_DNSSD */ + +diff -up cups-1.5.2/scheduler/dirsvc.c.avahi-5-services cups-1.5.2/scheduler/dirsvc.c +--- cups-1.5.2/scheduler/dirsvc.c.avahi-5-services 2012-03-14 15:04:17.674305572 +0000 ++++ cups-1.5.2/scheduler/dirsvc.c 2012-03-14 15:08:25.709611806 +0000 +@@ -27,6 +27,7 @@ + * ldap_connect() - Start new LDAP connection + * ldap_reconnect() - Reconnect to LDAP Server + * ldap_disconnect() - Disconnect from LDAP Server ++ * cupsdStartAvahiClient() - Start an Avahi client if needed + * cupsdStartBrowsing() - Start sending and receiving broadcast + * information. + * cupsdStartPolling() - Start polling servers as needed. +@@ -40,11 +41,12 @@ + * dequote() - Remote quotes from a string. + * dnssdAddAlias() - Add a DNS-SD alias name. + * dnssdBuildTxtRecord() - Build a TXT record from printer info. +- * dnssdComparePrinters() - Compare the registered names of two printers. + * dnssdDeregisterPrinter() - Stop sending broadcast information for a + * printer. + * dnssdPackTxtRecord() - Pack an array of key/value pairs into the TXT + * record format. ++ * avahiPackTxtRecord() - Pack an array of key/value pairs into an ++ * AvahiStringList. + * dnssdRegisterCallback() - DNSServiceRegister callback. + * dnssdRegisterPrinter() - Start sending broadcast information for a + * printer or update the broadcast contents. +@@ -83,6 +85,7 @@ + */ + + #include "cupsd.h" ++#include <assert.h> + #include <grp.h> + + #ifdef HAVE_DNSSD +@@ -97,6 +100,17 @@ + # endif /* HAVE_SYSTEMCONFIGURATION */ + # endif /* __APPLE__ */ + #endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++# include <avahi-common/domain.h> ++#endif /* HAVE_AVAHI */ ++ ++ ++#ifdef HAVE_DNSSD ++typedef char *cupsd_txt_record_t; ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++typedef AvahiStringList *cupsd_txt_record_t; ++#endif /* HAVE_AVAHI */ + + + /* +@@ -159,27 +173,38 @@ static void update_polling(void); + static void update_smb(int onoff); + + ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) ++static cupsd_txt_record_t dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p, ++ int for_lpd); ++static void dnssdDeregisterPrinter(cupsd_printer_t *p); ++static void dnssdRegisterPrinter(cupsd_printer_t *p); ++static void dnssdStop(void); ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ ++ + #ifdef HAVE_DNSSD + # ifdef HAVE_COREFOUNDATION + static void dnssdAddAlias(const void *key, const void *value, + void *context); + # endif /* HAVE_COREFOUNDATION */ +-static char *dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p, +- int for_lpd); +-static int dnssdComparePrinters(cupsd_printer_t *a, cupsd_printer_t *b); +-static void dnssdDeregisterPrinter(cupsd_printer_t *p); +-static char *dnssdPackTxtRecord(int *txt_len, char *keyvalue[][2], +- int count); + static void dnssdRegisterCallback(DNSServiceRef sdRef, + DNSServiceFlags flags, + DNSServiceErrorType errorCode, + const char *name, const char *regtype, + const char *domain, void *context); +-static void dnssdRegisterPrinter(cupsd_printer_t *p); +-static void dnssdStop(void); + static void dnssdUpdate(void); + #endif /* HAVE_DNSSD */ + ++#ifdef HAVE_AVAHI ++static AvahiStringList *avahiPackTxtRecord(char *keyvalue[][2], ++ int count); ++static void avahi_entry_group_cb (AvahiEntryGroup *group, ++ AvahiEntryGroupState state, ++ void *userdata); ++static void avahi_client_cb (AvahiClient *client, ++ AvahiClientState state, ++ void *userdata); ++#endif /* HAVE_AVAHI */ ++ + #ifdef HAVE_LDAP + static const char * const ldap_attrs[] =/* CUPS LDAP attributes */ + { +@@ -283,10 +308,10 @@ cupsdDeregisterPrinter( + ldap_dereg_printer(p); + #endif /* HAVE_LDAP */ + +-#ifdef HAVE_DNSSD +- if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) ++ if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD)) + dnssdDeregisterPrinter(p); +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + } + + +@@ -702,10 +727,10 @@ cupsdRegisterPrinter(cupsd_printer_t *p) + slpRegisterPrinter(p); */ + #endif /* HAVE_LIBSLP */ + +-#ifdef HAVE_DNSSD +- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) ++ if ((BrowseLocalProtocols & BROWSE_DNSSD)) + dnssdRegisterPrinter(p); +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + } + + +@@ -1419,6 +1444,36 @@ ldap_disconnect(LDAP *ld) /* I - LDAP h + #endif /* HAVE_LDAP */ + + ++#ifdef HAVE_AVAHI ++/* ++ * 'cupsdStartAvahiClient()' - Start an Avahi client if needed ++ */ ++ ++void ++cupsdStartAvahiClient(void) ++{ ++ int error = 0; ++ ++ if (!AvahiCupsClient && !AvahiCupsClientConnecting) ++ { ++ if (!AvahiCupsPollHandle) ++ AvahiCupsPollHandle = avahi_cups_poll_new (); ++ ++ if (AvahiCupsPollHandle) ++ { ++ if (avahi_client_new (avahi_cups_poll_get (AvahiCupsPollHandle), ++ AVAHI_CLIENT_NO_FAIL, ++ avahi_client_cb, NULL, ++ &error) != NULL) ++ AvahiCupsClientConnecting = 1; ++ else ++ cupsdLogMessage (CUPSD_LOG_WARN, "Avahi client failed: %d", error); ++ } ++ } ++} ++#endif /* HAVE_AVAHI */ ++ ++ + /* + * 'cupsdStartBrowsing()' - Start sending and receiving broadcast information. + */ +@@ -1542,13 +1597,16 @@ cupsdStartBrowsing(void) + else + BrowseSocket = -1; + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_DNSSD) + { ++#ifdef HAVE_DNSSD + DNSServiceErrorType error; /* Error from service creation */ ++#endif /* HAVE_DNSSD */ + cupsd_listener_t *lis; /* Current listening socket */ + + ++#ifdef HAVE_DNSSD + /* + * First create a "master" connection for all registrations... + */ +@@ -1573,6 +1631,7 @@ cupsdStartBrowsing(void) + fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC); + + cupsdAddSelect(fd, (cupsd_selfunc_t)dnssdUpdate, NULL, NULL); ++#endif /* HAVE_DNSSD */ + + /* + * Then get the port we use for registrations. If we are not listening +@@ -1598,17 +1657,23 @@ cupsdStartBrowsing(void) + */ + + if (BrowseRemoteProtocols & BROWSE_DNSSD) +- DNSSDPrinters = cupsArrayNew((cups_array_func_t)dnssdComparePrinters, +- NULL); ++ DNSSDPrinters = cupsArrayNew(NULL, NULL); + + /* + * Set the computer name and register the web interface... + */ + + cupsdUpdateDNSSDName(); ++ ++#ifdef HAVE_AVAHI ++ cupsdStartAvahiClient (); ++#endif /* HAVE_AVAHI */ ++ ++#ifdef HAVE_DNSSD + } +- } + #endif /* HAVE_DNSSD */ ++ } ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + #ifdef HAVE_LIBSLP + if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP) +@@ -1834,10 +1899,10 @@ cupsdStopBrowsing(void) + BrowseSocket = -1; + } + +-#ifdef HAVE_DNSSD +- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) ++ if ((BrowseLocalProtocols & BROWSE_DNSSD)) + dnssdStop(); +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + #ifdef HAVE_LIBSLP + if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP) && +@@ -1902,7 +1967,7 @@ cupsdStopPolling(void) + } + + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + /* + * 'cupsdUpdateDNSSDName()' - Update the computer name we use for browsing... + */ +@@ -1910,8 +1975,14 @@ cupsdStopPolling(void) + void + cupsdUpdateDNSSDName(void) + { ++#ifdef HAVE_DNSSD + DNSServiceErrorType error; /* Error from service creation */ + char webif[1024]; /* Web interface share name */ ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ int ret; /* Error from service creation */ ++ char webif[AVAHI_LABEL_MAX]; /* Web interface share name */ ++#endif /* HAVE_AVAHI */ + # ifdef HAVE_SYSTEMCONFIGURATION + SCDynamicStoreRef sc; /* Context for dynamic store */ + CFDictionaryRef btmm; /* Back-to-My-Mac domains */ +@@ -2042,6 +2113,7 @@ cupsdUpdateDNSSDName(void) + else + strlcpy(webif, "CUPS Web Interface", sizeof(webif)); + ++#ifdef HAVE_DNSSD + if (WebIFRef) + DNSServiceRefDeallocate(WebIFRef); + +@@ -2054,9 +2126,45 @@ cupsdUpdateDNSSDName(void) + NULL)) != kDNSServiceErr_NoError) + cupsdLogMessage(CUPSD_LOG_ERROR, + "DNS-SD web interface registration failed: %d", error); ++#endif /* HAVE_DNSSD */ ++ ++#ifdef HAVE_AVAHI ++ if (!AvahiCupsClient) ++ /* ++ * Client not yet running. ++ */ ++ return; ++ ++ if (AvahiWebIFGroup) ++ avahi_entry_group_reset (AvahiWebIFGroup); ++ else ++ AvahiWebIFGroup = avahi_entry_group_new (AvahiCupsClient, ++ avahi_entry_group_cb, ++ NULL); ++ ++ if (AvahiWebIFGroup) ++ { ++ ret = avahi_entry_group_add_service (AvahiWebIFGroup, ++ AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ 0, /* flags */ ++ webif, /* name */ ++ "_http._tcp", /* type */ ++ NULL, /* domain */ ++ NULL, /* host */ ++ DNSSDPort, /* port */ ++ "path=/", NULL); ++ if (ret == 0) ++ ret = avahi_entry_group_commit (AvahiWebIFGroup); ++ ++ if (ret != 0) ++ cupsdLogMessage (CUPSD_LOG_ERROR, ++ "Avahi web interface registration failed: %d", ret); ++ } ++#endif /* HAVE_AVAHI */ + } + } +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + + #ifdef HAVE_LDAP +@@ -2334,13 +2442,15 @@ dnssdAddAlias(const void *key, /* I - K + "Bad Back to My Mac domain in dynamic store!"); + } + # endif /* HAVE_COREFOUNDATION */ ++#endif /* HAVE_DNSSD */ + + ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + /* + * 'dnssdBuildTxtRecord()' - Build a TXT record from printer info. + */ + +-static char * /* O - TXT record */ ++static cupsd_txt_record_t /* O - TXT record */ + dnssdBuildTxtRecord( + int *txt_len, /* O - TXT record length */ + cupsd_printer_t *p, /* I - Printer information */ +@@ -2379,7 +2489,12 @@ dnssdBuildTxtRecord( + keyvalue[i ][0] = "ty"; + keyvalue[i++][1] = p->make_model ? p->make_model : "Unknown"; + +- snprintf(admin_hostname, sizeof(admin_hostname), "%s.local.", DNSSDHostName); ++ snprintf(admin_hostname, sizeof(admin_hostname), ++ "%s.local" ++#ifdef HAVE_DNSSD ++ "." /* terminating dot no good for Avahi */ ++#endif /* HAVE_DNSSD */ ++ , DNSSDHostName); + httpAssembleURIf(HTTP_URI_CODING_ALL, adminurl_str, sizeof(adminurl_str), + "http", NULL, admin_hostname, DNSSDPort, "/%s/%s", + (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers", +@@ -2462,19 +2577,12 @@ dnssdBuildTxtRecord( + * Then pack them into a proper txt record... + */ + ++#ifdef HAVE_DNSSD + return (dnssdPackTxtRecord(txt_len, keyvalue, i)); +-} +- +- +-/* +- * 'dnssdComparePrinters()' - Compare the registered names of two printers. +- */ +- +-static int /* O - Result of comparison */ +-dnssdComparePrinters(cupsd_printer_t *a,/* I - First printer */ +- cupsd_printer_t *b)/* I - Second printer */ +-{ +- return (_cups_strcasecmp(a->reg_name, b->reg_name)); ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ return (avahiPackTxtRecord(keyvalue, i)); ++#endif /* HAVE_AVAHI */ + } + + +@@ -2489,6 +2597,10 @@ dnssdDeregisterPrinter( + { + cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdDeregisterPrinter(%s)", p->name); + ++#ifdef HAVE_DNSSD ++ if (!DNSSDRef) ++ return; ++ + /* + * Closing the socket deregisters the service + */ +@@ -2524,6 +2636,24 @@ dnssdDeregisterPrinter( + free(p->printer_txt); + p->printer_txt = NULL; + } ++#endif /* HAVE_DNSSD */ ++ ++#ifdef HAVE_AVAHI ++ if (p->avahi_group) ++ { ++ avahi_entry_group_reset (p->avahi_group); ++ avahi_entry_group_free (p->avahi_group); ++ p->avahi_group = NULL; ++ ++ if (p->ipp_txt) ++ avahi_string_list_free (p->ipp_txt); ++ ++ if (p->printer_txt) ++ avahi_string_list_free (p->printer_txt); ++ ++ p->ipp_txt = p->printer_txt = NULL; ++ } ++#endif /* HAVE_AVAHI */ + + /* + * Remove the printer from the array of DNS-SD printers, then clear the +@@ -2533,8 +2663,10 @@ dnssdDeregisterPrinter( + cupsArrayRemove(DNSSDPrinters, p); + cupsdClearString(&p->reg_name); + } ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + ++#ifdef HAVE_DNSSD + /* + * 'dnssdPackTxtRecord()' - Pack an array of key/value pairs into the + * TXT record format. +@@ -2644,8 +2776,10 @@ dnssdRegisterCallback( + LastEvent |= CUPSD_EVENT_PRINTER_MODIFIED; + } + } ++#endif /* HAVE_DNSSD */ + + ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + /* + * 'dnssdRegisterPrinter()' - Start sending broadcast information for a printer + * or update the broadcast contents. +@@ -2654,20 +2788,40 @@ dnssdRegisterCallback( + static void + dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */ + { ++#ifdef HAVE_DNSSD + DNSServiceErrorType se; /* dnssd errors */ + char *ipp_txt, /* IPP TXT record buffer */ + *printer_txt, /* LPD TXT record buffer */ +- name[1024], /* Service name */ +- *nameptr; /* Pointer into name */ ++ name[1024]; /* Service name */ + int ipp_len, /* IPP TXT record length */ + printer_len, /* LPD TXT record length */ + printer_port; /* LPD port number */ ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ int ret; /* Error code */ ++ AvahiStringList *ipp_txt, /* IPP TXT record */ ++ *printer_txt; /* LPD TXT record */ ++ char name[AVAHI_LABEL_MAX], /* Service name */ ++ fullsubtype[AVAHI_LABEL_MAX]; /* Full subtype */ ++ char *regtype_copy, /* Writeable copy of reg type */ ++ *subtype, /* Current service sub type */ ++ *nextsubtype; /* Next service sub type */ ++#endif /* HAVE_AVAHI */ ++ char *nameptr; /* Pointer into name */ + const char *regtype; /* Registration type */ + + ++#ifdef HAVE_DNSSD ++ if (!DNSSDRef) ++ return; ++ + cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name, + !p->ipp_ref ? "new" : "update"); +- ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name, ++ !p->avahi_group ? "new" : "update"); ++#endif /* HAVE_AVAHI */ + /* + * If per-printer sharing was just disabled make sure we're not + * registered before returning. +@@ -2686,12 +2840,36 @@ dnssdRegisterPrinter(cupsd_printer_t *p) + if (p->info && strlen(p->info) > 0) + { + if (DNSSDComputerName) +- snprintf(name, sizeof(name), "%s @ %s", p->info, DNSSDComputerName); ++ { ++ /* ++ * Make sure there is room for at least 15 characters of ++ * DNSSDComputerName. ++ */ ++ ++ assert(sizeof(name) >= 15 + 4); ++ nameptr = name + strlcpy(name, p->info, ++ sizeof(name) - 4 - ++ strnlen(DNSSDComputerName, 15)); ++ nameptr += strlcpy(nameptr, " @ ", sizeof(name) - (nameptr - name)); ++ strlcpy(nameptr, DNSSDComputerName, sizeof(name) - (nameptr - name)); ++ } + else + strlcpy(name, p->info, sizeof(name)); + } + else if (DNSSDComputerName) +- snprintf(name, sizeof(name), "%s @ %s", p->name, DNSSDComputerName); ++ { ++ /* ++ * Make sure there is room for at least 15 characters of ++ * DNSSDComputerName. ++ */ ++ ++ assert(sizeof(name) >= 15 + 4); ++ nameptr = name + strlcpy(name, p->info, ++ sizeof(name) - 4 - ++ strnlen(DNSSDComputerName, 15)); ++ nameptr += strlcpy(nameptr, " @ ", sizeof(name) - (nameptr - name)); ++ strlcpy(nameptr, DNSSDComputerName, sizeof(name) - (nameptr - name)); ++ } + else + strlcpy(name, p->name, sizeof(name)); + +@@ -2712,6 +2890,7 @@ dnssdRegisterPrinter(cupsd_printer_t *p) + * Register IPP and (optionally) LPD... + */ + ++#ifdef HAVE_DNSSD + ipp_len = 0; /* anti-compiler-warning-code */ + ipp_txt = dnssdBuildTxtRecord(&ipp_len, p, 0); + +@@ -2884,6 +3063,209 @@ dnssdRegisterPrinter(cupsd_printer_t *p) + + if (printer_txt) + free(printer_txt); ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ if (!AvahiCupsClient) ++ /* ++ * Client not running yet. The client callback will call us again later. ++ */ ++ return; ++ ++ ipp_txt = dnssdBuildTxtRecord(NULL, p, 0); ++ printer_txt = dnssdBuildTxtRecord(NULL, p, 1); ++ regtype = (p->type & CUPS_PRINTER_FAX) ? "_fax-ipp._tcp" : DNSSDRegType; ++ ++ if (p->avahi_group && p->ipp_txt && ipp_txt && ++ !avahi_string_list_equal (p->ipp_txt, ipp_txt)) ++ { ++ /* ++ * Update the existing registration... ++ */ ++ ++ avahi_string_list_free (p->ipp_txt); ++ ++ if (p->printer_txt) ++ avahi_string_list_free (p->printer_txt); ++ ++ /* ++ * Update the service group entry. ++ */ ++ ++ regtype_copy = strdup (regtype); ++ subtype = strchr (regtype_copy, ','); ++ if (subtype) ++ *subtype = '\0'; ++ ++ cupsdLogMessage (CUPSD_LOG_DEBUG, ++ "Updating TXT record for %s (%s)", name, regtype_copy); ++ ret = avahi_entry_group_update_service_txt_strlst (p->avahi_group, ++ AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ 0, name, ++ regtype_copy, ++ NULL, ipp_txt); ++ free (regtype_copy); ++ ++ if (ret < 0) ++ goto update_failed; ++ ++ p->ipp_txt = ipp_txt; ++ ipp_txt = NULL; ++ ++ if (BrowseLocalProtocols & BROWSE_LPD) ++ { ++ ret = avahi_entry_group_update_service_txt_strlst (p->avahi_group, ++ AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ 0, name, ++ "_printer._tcp", NULL, ++ printer_txt); ++ if (ret < 0) ++ goto update_failed; ++ ++ p->printer_txt = printer_txt; ++ printer_txt = NULL; ++ } ++ ++ ret = avahi_entry_group_commit (p->avahi_group); ++ if (ret < 0) ++ { ++ update_failed: ++ cupsdLogMessage (CUPSD_LOG_ERROR, ++ "Failed to update TXT record for %s: %d", ++ name, ret); ++ avahi_entry_group_reset (p->avahi_group); ++ avahi_entry_group_free (p->avahi_group); ++ p->avahi_group = NULL; ++ ipp_txt = p->ipp_txt; ++ p->ipp_txt = NULL; ++ } ++ } ++ ++ if (!p->avahi_group) ++ { ++ /* ++ * Initial registration. Use the _fax subtype for fax queues... ++ */ ++ ++ p->avahi_group = avahi_entry_group_new (AvahiCupsClient, ++ avahi_entry_group_cb, ++ p); ++ ++ cupsdLogMessage(CUPSD_LOG_DEBUG, ++ "Registering Avahi printer %s with name \"%s\" and " ++ "type \"%s\"", p->name, name, regtype); ++ ++ if (!p->avahi_group) ++ { ++ ret = 0; ++ goto add_failed; ++ } ++ ++ /* ++ * Add each service type (DNSSDRegType may contain several, ++ * separated by commas). ++ */ ++ ++ subtype = regtype_copy = strdup (regtype); ++ while (subtype && *subtype) ++ { ++ nextsubtype = strchr (subtype, ','); ++ if (nextsubtype) ++ *nextsubtype++ = '\0'; ++ ++ if (subtype == regtype_copy) ++ { ++ /* ++ * Main type entry. ++ */ ++ ++ cupsdLogMessage (CUPSD_LOG_DEBUG, ++ "Adding TXT record for %s (%s)", name, regtype_copy); ++ ret = avahi_entry_group_add_service_strlst (p->avahi_group, ++ AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ 0, name, regtype_copy, ++ NULL, NULL, ++ DNSSDPort, ++ ipp_txt); ++ } ++ else ++ { ++ /* ++ * Sub-type entry. ++ */ ++ ++ snprintf (fullsubtype, sizeof(fullsubtype), ++ "%s._sub.%s", subtype, regtype_copy); ++ cupsdLogMessage (CUPSD_LOG_DEBUG, ++ "Adding TXT record for %s (%s)", name, fullsubtype); ++ ret = avahi_entry_group_add_service_subtype (p->avahi_group, ++ AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ 0, name, ++ regtype_copy, ++ NULL, fullsubtype); ++ } ++ ++ if (ret < 0) ++ { ++ free (regtype_copy); ++ goto add_failed; ++ } ++ ++ subtype = nextsubtype; ++ } ++ ++ free (regtype_copy); ++ p->ipp_txt = ipp_txt; ++ ipp_txt = NULL; ++ ++ if (BrowseLocalProtocols & BROWSE_LPD) ++ { ++ cupsdLogMessage(CUPSD_LOG_DEBUG, ++ "Registering Avahi printer %s with name \"%s\" and " ++ "type \"_printer._tcp\"", p->name, name); ++ ++ ret = avahi_entry_group_add_service_strlst (p->avahi_group, ++ AVAHI_IF_UNSPEC, ++ AVAHI_PROTO_UNSPEC, ++ 0, name, ++ "_printer._tcp", NULL, NULL, ++ 515, ++ printer_txt); ++ if (ret < 0) ++ goto add_failed; ++ ++ p->printer_txt = printer_txt; ++ printer_txt = NULL; ++ } ++ ++ ret = avahi_entry_group_commit (p->avahi_group); ++ ++ if (ret < 0) ++ { ++ add_failed: ++ cupsdLogMessage (CUPSD_LOG_ERROR, ++ "Failed to add Avahi entry for %s: %d", ++ name, ret); ++ if (p->avahi_group) ++ { ++ avahi_entry_group_reset (p->avahi_group); ++ avahi_entry_group_free (p->avahi_group); ++ p->avahi_group = NULL; ++ } ++ ipp_txt = p->ipp_txt; ++ p->ipp_txt = NULL; ++ } ++ } ++ ++ if (ipp_txt) ++ avahi_string_list_free (ipp_txt); ++ ++ if (printer_txt) ++ avahi_string_list_free (printer_txt); ++#endif /* HAVE_AVAHI */ + } + + +@@ -2896,6 +3278,10 @@ dnssdStop(void) + { + cupsd_printer_t *p; /* Current printer */ + ++#ifdef HAVE_DNSSD ++ if (!DNSSDRef) ++ return; ++#endif /* HAVE_DNSSD */ + + /* + * De-register the individual printers +@@ -2910,12 +3296,23 @@ dnssdStop(void) + * Shutdown the rest of the service refs... + */ + ++#ifdef HAVE_DNSSD + if (WebIFRef) + { + DNSServiceRefDeallocate(WebIFRef); + WebIFRef = NULL; + } ++#endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ if (AvahiWebIFGroup) ++ { ++ avahi_entry_group_reset (AvahiWebIFGroup); ++ avahi_entry_group_free (AvahiWebIFGroup); ++ AvahiWebIFGroup = NULL; ++ } ++#endif /* HAVE_AVAHI */ + ++#ifdef HAVE_DNSSD + if (RemoteRef) + { + DNSServiceRefDeallocate(RemoteRef); +@@ -2926,14 +3323,17 @@ dnssdStop(void) + + DNSServiceRefDeallocate(DNSSDRef); + DNSSDRef = NULL; ++#endif /* HAVE_DNSSD */ + + cupsArrayDelete(DNSSDPrinters); + DNSSDPrinters = NULL; + + DNSSDPort = 0; + } ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + ++#ifdef HAVE_DNSSD + /* + * 'dnssdUpdate()' - Handle DNS-SD queries. + */ +@@ -2955,6 +3355,153 @@ dnssdUpdate(void) + #endif /* HAVE_DNSSD */ + + ++#ifdef HAVE_AVAHI ++/* ++ * 'avahiPackTxtRecord()' - Pack an array of key/value pairs into an ++ * AvahiStringList. ++ */ ++ ++static AvahiStringList * /* O - new string list */ ++avahiPackTxtRecord(char *keyvalue[][2], /* I - Table of key value pairs */ ++ int count) /* I - Number of items in table */ ++{ ++ AvahiStringList *strlst = NULL; ++ char **elements; ++ size_t len; ++ int i = 0; ++ ++ elements = malloc ((1 + count) * sizeof (char *)); ++ if (!elements) ++ goto cleanup; ++ ++ for (i = 0; i < count; i++) ++ { ++ len = (1 + strlen (keyvalue[i][0]) + ++ (keyvalue[i][1] ? 1 + strlen (keyvalue[i][1]) : 1)); ++ elements[i] = malloc (len * sizeof (char)); ++ if (!elements[i]) ++ goto cleanup; ++ ++ snprintf (elements[i], len, "%s=%s", keyvalue[i][0], keyvalue[i][1]); ++ } ++ ++ strlst = avahi_string_list_new_from_array ((const char **) elements, count); ++ ++cleanup: ++ while (--i >= 0) ++ free (elements[i]); ++ ++ free (elements); ++ return (strlst); ++} ++ ++ ++/* ++ * 'avahi_entry_group_cb()' - Avahi entry group callback function. ++ */ ++static void ++avahi_entry_group_cb (AvahiEntryGroup *group, ++ AvahiEntryGroupState state, ++ void *userdata) ++{ ++ char *name; ++ ++ if (userdata) ++ name = ((cupsd_printer_t *) userdata)->reg_name; ++ else ++ name = "CUPS web interface"; ++ ++ switch (state) ++ { ++ case AVAHI_ENTRY_GROUP_UNCOMMITED: ++ case AVAHI_ENTRY_GROUP_REGISTERING: ++ break; ++ ++ case AVAHI_ENTRY_GROUP_ESTABLISHED: ++ cupsdLogMessage (CUPSD_LOG_DEBUG, ++ "Avahi entry group established for %s", name); ++ break; ++ ++ default: ++ cupsdLogMessage (CUPSD_LOG_DEBUG, ++ "Avahi entry group %s has state %d", ++ name, state); ++ break; ++ } ++} ++ ++ ++/* ++ * 'avahi_client_cb()' - Avahi client callback function. ++ */ ++static void ++avahi_client_cb (AvahiClient *client, ++ AvahiClientState state, ++ void *userdata) ++{ ++ cupsd_printer_t *printer; ++ switch (state) ++ { ++ case AVAHI_CLIENT_S_RUNNING: ++ /* ++ * Avahi client started successfully. ++ */ ++ AvahiCupsClient = client; ++ AvahiCupsClientConnecting = 0; ++ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client started"); ++ ++ cupsdUpdateDNSSDName (); ++ ++ for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers); ++ printer; ++ printer = (cupsd_printer_t *)cupsArrayNext(Printers)) ++ if (Browsing && (BrowseLocalProtocols & BROWSE_DNSSD) && ++ (!(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT | ++ CUPS_PRINTER_SCANNER))) && printer->shared) ++ dnssdRegisterPrinter (printer); ++ ++ break; ++ ++ case AVAHI_CLIENT_CONNECTING: ++ /* ++ * No Avahi daemon, client is waiting. ++ */ ++ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client connecting"); ++ break; ++ ++ case AVAHI_CLIENT_S_REGISTERING: ++ /* ++ * Not yet registered. ++ */ ++ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client registering"); ++ break; ++ ++ case AVAHI_CLIENT_FAILURE: ++ /* ++ * Avahi client failed, close it to allow a clean restart. ++ */ ++ cupsdLogMessage (CUPSD_LOG_ERROR, ++ "Avahi client failed, " ++ "closing client to allow a clean restart"); ++ ++ for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers); ++ printer; ++ printer = (cupsd_printer_t *)cupsArrayNext(Printers)) ++ dnssdDeregisterPrinter (printer); ++ ++ avahi_client_free(client); ++ AvahiCupsClientConnecting = 0; ++ AvahiCupsClient = NULL; ++ ++ break; ++ ++ default: ++ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client state: %d", state); ++ } ++} ++#endif /* HAVE_AVAHI */ ++ ++ + /* + * 'get_auth_info_required()' - Get the auth-info-required value to advertise. + */ +diff -up cups-1.5.2/scheduler/dirsvc.h.avahi-5-services cups-1.5.2/scheduler/dirsvc.h +--- cups-1.5.2/scheduler/dirsvc.h.avahi-5-services 2011-03-21 02:12:14.000000000 +0000 ++++ cups-1.5.2/scheduler/dirsvc.h 2012-03-14 15:08:25.711611808 +0000 +@@ -31,6 +31,10 @@ + # endif /* HAVE_LDAP_SSL_H */ + #endif /* HAVE_LDAP */ + ++#ifdef HAVE_AVAHI ++# include <avahi-client/publish.h> ++#endif /* HAVE_AVAHI */ ++ + /* + * Browse protocols... + */ +@@ -131,19 +135,22 @@ VAR int PollPipe VALUE(0); + VAR cupsd_statbuf_t *PollStatusBuffer VALUE(NULL); + /* Status buffer for pollers */ + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + VAR char *DNSSDComputerName VALUE(NULL), + /* Computer/server name */ + *DNSSDHostName VALUE(NULL), + /* Hostname */ + *DNSSDRegType VALUE(NULL); + /* Bonjour registration type */ +-VAR cups_array_t *DNSSDAlias VALUE(NULL); +- /* List of dynamic ServerAlias's */ + VAR int DNSSDPort VALUE(0); + /* Port number to register */ + VAR cups_array_t *DNSSDPrinters VALUE(NULL); + /* Printers we have registered */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ ++ ++#ifdef HAVE_DNSSD ++VAR cups_array_t *DNSSDAlias VALUE(NULL); ++ /* List of dynamic ServerAlias's */ + VAR DNSServiceRef DNSSDRef VALUE(NULL), + /* Master DNS-SD service reference */ + WebIFRef VALUE(NULL), +@@ -152,6 +159,17 @@ VAR DNSServiceRef DNSSDRef VALUE(NULL), + /* Remote printer browse reference */ + #endif /* HAVE_DNSSD */ + ++#ifdef HAVE_AVAHI ++VAR AvahiCupsPoll *AvahiCupsPollHandle VALUE(NULL); ++ /* AvahiCupsPoll object */ ++VAR AvahiClient *AvahiCupsClient VALUE(NULL); ++ /* AvahiClient object */ ++VAR int AvahiCupsClientConnecting VALUE(0); ++ /* Is AvahiClient object connecting? */ ++VAR AvahiEntryGroup *AvahiWebIFGroup VALUE(NULL); ++ /* Web interface entry group */ ++#endif /* HAVE_AVAHI */ ++ + #ifdef HAVE_LIBSLP + VAR SLPHandle BrowseSLPHandle VALUE(NULL); + /* SLP API handle */ +@@ -195,13 +213,14 @@ extern void cupsdRegisterPrinter(cupsd_p + extern void cupsdRestartPolling(void); + extern void cupsdSaveRemoteCache(void); + extern void cupsdSendBrowseList(void); ++extern void cupsdStartAvahiClient(void); + extern void cupsdStartBrowsing(void); + extern void cupsdStartPolling(void); + extern void cupsdStopBrowsing(void); + extern void cupsdStopPolling(void); +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + extern void cupsdUpdateDNSSDName(void); +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + #ifdef HAVE_LDAP + extern void cupsdUpdateLDAPBrowse(void); + #endif /* HAVE_LDAP */ +diff -up cups-1.5.2/scheduler/ipp.c.avahi-5-services cups-1.5.2/scheduler/ipp.c +--- cups-1.5.2/scheduler/ipp.c.avahi-5-services 2012-03-14 15:04:17.665305560 +0000 ++++ cups-1.5.2/scheduler/ipp.c 2012-03-14 15:08:25.715611813 +0000 +@@ -6099,7 +6099,7 @@ copy_printer_attrs( + ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time", + ippTimeToDate(curtime)); + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + if (!ra || cupsArrayFind(ra, "printer-dns-sd-name")) + { + if (printer->reg_name) +@@ -6109,7 +6109,7 @@ copy_printer_attrs( + ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE, + "printer-dns-sd-name", 0); + } +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + if (!ra || cupsArrayFind(ra, "printer-error-policy")) + ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME, +diff -up cups-1.5.2/scheduler/main.c.avahi-5-services cups-1.5.2/scheduler/main.c +--- cups-1.5.2/scheduler/main.c.avahi-5-services 2012-03-14 15:06:36.511476986 +0000 ++++ cups-1.5.2/scheduler/main.c 2012-03-14 15:08:25.718611817 +0000 +@@ -120,6 +120,10 @@ main(int argc, /* I - Number of comm + cupsd_listener_t *lis; /* Current listener */ + time_t current_time, /* Current time */ + activity, /* Client activity timer */ ++#ifdef HAVE_AVAHI ++ avahi_client_time, /* Time for next Avahi client ++ check */ ++#endif /* HAVE_AVAHI */ + browse_time, /* Next browse send time */ + senddoc_time, /* Send-Document time */ + expire_time, /* Subscription expire time */ +@@ -672,6 +676,9 @@ main(int argc, /* I - Number of comm + */ + + current_time = time(NULL); ++#ifdef HAVE_AVAHI ++ avahi_client_time = current_time; ++#endif /* HAVE_AVAHI */ + browse_time = current_time; + event_time = current_time; + expire_time = current_time; +@@ -894,6 +901,16 @@ main(int argc, /* I - Number of comm + tmo = cupsdNextTimeout (&tmo_delay); + if (tmo && tmo_delay == 0) + cupsdRunTimeout (tmo); ++ ++ /* ++ * Try to restart the Avahi client every 10 seconds if needed... ++ */ ++ ++ if ((current_time - avahi_client_time) >= 10) ++ { ++ avahi_client_time = current_time; ++ cupsdStartAvahiClient(); ++ } + #endif /* HAVE_AVAHI */ + + #ifndef __APPLE__ +diff -up cups-1.5.2/scheduler/printers.c.avahi-5-services cups-1.5.2/scheduler/printers.c +--- cups-1.5.2/scheduler/printers.c.avahi-5-services 2012-03-14 15:04:17.646305537 +0000 ++++ cups-1.5.2/scheduler/printers.c 2012-03-14 15:08:25.720611819 +0000 +@@ -883,9 +883,9 @@ cupsdDeletePrinter( + cupsdClearString(&p->alert); + cupsdClearString(&p->alert_description); + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + cupsdClearString(&p->pdl); +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + + cupsArrayDelete(p->filetypes); + +@@ -3787,7 +3787,7 @@ add_printer_formats(cupsd_printer_t *p) + attr->values[i].string.text = _cupsStrAlloc(mimetype); + } + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + { + char pdl[1024]; /* Buffer to build pdl list */ + mime_filter_t *filter; /* MIME filter looping var */ +@@ -3843,7 +3843,7 @@ add_printer_formats(cupsd_printer_t *p) + + cupsdSetString(&p->pdl, pdl); + } +-#endif /* HAVE_DNSSD */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ + } + + +diff -up cups-1.5.2/scheduler/printers.h.avahi-5-services cups-1.5.2/scheduler/printers.h +--- cups-1.5.2/scheduler/printers.h.avahi-5-services 2011-03-18 18:42:46.000000000 +0000 ++++ cups-1.5.2/scheduler/printers.h 2012-03-14 15:08:25.721611820 +0000 +@@ -16,6 +16,9 @@ + #ifdef HAVE_DNSSD + # include <dns_sd.h> + #endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++# include "avahi.h" ++#endif /* HAVE_AVAHI */ + #include <cups/pwg-private.h> + + +@@ -95,16 +98,23 @@ struct cupsd_printer_s + time_t marker_time; /* Last time marker attributes were updated */ + _ppd_cache_t *pc; /* PPD cache and mapping data */ + +-#ifdef HAVE_DNSSD ++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + char *reg_name, /* Name used for service registration */ +- *pdl, /* pdl value for TXT record */ +- *ipp_txt, /* IPP TXT record contents */ ++ *pdl; /* pdl value for TXT record */ ++#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ ++#ifdef HAVE_DNSSD ++ char *ipp_txt, /* IPP TXT record contents */ + *printer_txt; /* LPD TXT record contents */ + int ipp_len, /* IPP TXT record length */ + printer_len; /* LPD TXT record length */ + DNSServiceRef ipp_ref, /* Reference for _ipp._tcp,_cups */ + printer_ref; /* Reference for _printer._tcp */ + #endif /* HAVE_DNSSD */ ++#ifdef HAVE_AVAHI ++ AvahiStringList *ipp_txt, /* IPP TXT record */ ++ *printer_txt; /* LPD TXT record */ ++ AvahiEntryGroup *avahi_group; /* Avahi entry group */ ++#endif /* HAVE_AVAHI */ + }; + + diff --git a/abs/extra/cups/cups-avahi.patch b/abs/extra/cups/cups-avahi.patch deleted file mode 100644 index cf1056a..0000000 --- a/abs/extra/cups/cups-avahi.patch +++ /dev/null @@ -1,1089 +0,0 @@ -diff -up cups-1.4.5/backend/dnssd.c.avahi cups-1.4.5/backend/dnssd.c ---- cups-1.4.5/backend/dnssd.c.avahi 2009-08-08 00:27:12.000000000 +0200 -+++ cups-1.4.5/backend/dnssd.c 2010-11-12 13:13:31.000000000 +0100 -@@ -22,6 +22,7 @@ - * exec_backend() - Execute the backend that corresponds to the - * resolved service name. - * get_device() - Create or update a device. -+* find_device() - * query_callback() - Process query data. - * sigterm_handler() - Handle termination signals... - * unquote() - Unquote a name string. -@@ -33,7 +34,18 @@ - - #include "backend-private.h" - #include <cups/array.h> --#include <dns_sd.h> -+#ifdef HAVE_DNSSD -+# include <dns_sd.h> -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include <avahi-client/client.h> -+# include <avahi-client/lookup.h> -+# include <avahi-common/simple-watch.h> -+# include <avahi-common/domain.h> -+# include <avahi-common/error.h> -+# include <avahi-common/malloc.h> -+#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX -+#endif /* HAVE_AVAHI */ - - - /* -@@ -52,7 +64,12 @@ typedef enum - - typedef struct - { -+#ifdef HAVE_DNSSD - DNSServiceRef ref; /* Service reference for resolve */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ int resolved; /* Did we resolve the device? */ -+#endif /* HAVE_AVAHI */ - char *name, /* Service name */ - *domain, /* Domain name */ - *fullName, /* Full name */ -@@ -64,6 +81,20 @@ typedef struct - sent; /* Did we list the device? */ - } cups_device_t; - -+typedef struct -+{ -+ char key[256]; -+ char value[256]; -+ -+#ifdef HAVE_DNSSD -+ const uint8_t *data; -+ const uint8_t *datanext; -+ const uint8_t *dataend; -+#else /* HAVE_AVAHI */ -+ AvahiStringList *txt; -+#endif /* HAVE_DNSSD */ -+} cups_txt_records_t; -+ - - /* - * Local globals... -@@ -77,6 +108,7 @@ static int job_canceled = 0; - * Local functions... - */ - -+#ifdef HAVE_DNSSD - static void browse_callback(DNSServiceRef sdRef, - DNSServiceFlags flags, - uint32_t interfaceIndex, -@@ -92,12 +124,6 @@ static void browse_local_callback(DNSSe - const char *regtype, - const char *replyDomain, - void *context); --static int compare_devices(cups_device_t *a, cups_device_t *b); --static void exec_backend(char **argv); --static cups_device_t *get_device(cups_array_t *devices, -- const char *serviceName, -- const char *regtype, -- const char *replyDomain); - static void query_callback(DNSServiceRef sdRef, - DNSServiceFlags flags, - uint32_t interfaceIndex, -@@ -106,9 +132,111 @@ static void query_callback(DNSServiceRe - uint16_t rrclass, uint16_t rdlen, - const void *rdata, uint32_t ttl, - void *context); -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+static void avahi_client_callback (AvahiClient *client, -+ AvahiClientState state, -+ void *context); -+static void avahi_browse_callback (AvahiServiceBrowser *browser, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiBrowserEvent event, -+ const char *serviceName, -+ const char *regtype, -+ const char *replyDomain, -+ AvahiLookupResultFlags flags, -+ void *context); -+#endif /* HAVE_AVAHI */ -+ -+static cups_device_t * find_device (cups_array_t *devices, -+ cups_txt_records_t *txt, -+ cups_device_t *dkey); -+static int compare_devices(cups_device_t *a, cups_device_t *b); -+static void exec_backend(char **argv); -+static cups_device_t *get_device(cups_array_t *devices, -+ const char *serviceName, -+ const char *regtype, -+ const char *replyDomain); - static void sigterm_handler(int sig); - static void unquote(char *dst, const char *src, size_t dstsize); - -+#ifdef HAVE_AVAHI -+static AvahiSimplePoll *simple_poll = NULL; -+static int avahi_got_callback; -+#endif /* HAVE_AVAHI */ -+ -+ -+/* -+ * cups_txt_records_t access functions -+ */ -+static cups_txt_records_t * -+next_txt_record (cups_txt_records_t *txt) -+{ -+#ifdef HAVE_DNSSD -+ txt->data = txt->datanext; -+#else /* HAVE_AVAHI */ -+ txt->txt = avahi_string_list_get_next (txt->txt); -+ if (txt->txt == NULL) -+ return NULL; -+#endif /* HAVE_DNSSD */ -+ -+ return txt; -+} -+ -+static int -+parse_txt_record_pair (cups_txt_records_t *txt) -+{ -+#ifdef HAVE_DNSSD -+ uint8_t datalen; -+ uint8_t *data = txt->data; -+ char *ptr; -+ -+ /* -+ * Read a key/value pair starting with an 8-bit length. Since the -+ * length is 8 bits and the size of the key/value buffers is 256, we -+ * don't need to check for overflow... -+ */ -+ -+ datalen = *data++; -+ if (!datalen || (data + datalen) >= txt->dataend) -+ return NULL; -+ txt->datanext = data + datalen; -+ -+ for (ptr = txt->key; data < txt->datanext && *data != '='; data ++) -+ *ptr++ = *data; -+ *ptr = '\0'; -+ -+ if (data < txt->datanext && *data == '=') -+ { -+ data++; -+ -+ if (data < datanext) -+ memcpy (txt->value, data, txt->datanext - data); -+ value[txt->datanext - data] = '\0'; -+ } -+ else -+ return 1; -+#else /* HAVE_AVAHI */ -+ char *key, *value; -+ size_t len; -+ avahi_string_list_get_pair (txt->txt, &key, &value, &len); -+ if (len > sizeof (txt->value) - 1) -+ len = sizeof (txt->value) - 1; -+ -+ memcpy (txt->value, value, len); -+ txt->value[len] = '\0'; -+ len = strlen (key); -+ if (len > sizeof (txt->key) - 1) -+ len = sizeof (txt->key) - 1; -+ -+ memcpy (txt->key, key, len); -+ txt->key[len] = '\0'; -+ avahi_free (key); -+ avahi_free (value); -+#endif /* HAVE_AVAHI */ -+ -+ return 0; -+} - - /* - * 'main()' - Browse for printers. -@@ -119,6 +247,13 @@ main(int argc, /* I - Number of comm - char *argv[]) /* I - Command-line arguments */ - { - const char *name; /* Backend name */ -+ cups_array_t *devices; /* Device array */ -+ cups_device_t *device; /* Current device */ -+ char uriName[1024]; /* Unquoted fullName for URI */ -+#ifdef HAVE_DNSSD -+ int fd; /* Main file descriptor */ -+ fd_set input; /* Input set for select() */ -+ struct timeval timeout; /* Timeout for select() */ - DNSServiceRef main_ref, /* Main service reference */ - fax_ipp_ref, /* IPP fax service reference */ - ipp_ref, /* IPP service reference */ -@@ -130,12 +265,11 @@ main(int argc, /* I - Number of comm - pdl_datastream_ref, /* AppSocket service reference */ - printer_ref, /* LPD service reference */ - riousbprint_ref; /* Remote IO service reference */ -- int fd; /* Main file descriptor */ -- fd_set input; /* Input set for select() */ -- struct timeval timeout; /* Timeout for select() */ -- cups_array_t *devices; /* Device array */ -- cups_device_t *device; /* Current device */ -- char uriName[1024]; /* Unquoted fullName for URI */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ AvahiClient *client; -+ int error; -+#endif /* HAVE_AVAHI */ - #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET) - struct sigaction action; /* Actions for POSIX signals */ - #endif /* HAVE_SIGACTION && !HAVE_SIGSET */ -@@ -194,6 +328,49 @@ main(int argc, /* I - Number of comm - * Browse for different kinds of printers... - */ - -+#ifdef HAVE_AVAHI -+ if ((simple_poll = avahi_simple_poll_new ()) == NULL) -+ { -+ perror ("ERROR: Unable to create avahi simple poll object"); -+ return (1); -+ } -+ -+ client = avahi_client_new (avahi_simple_poll_get (simple_poll), -+ 0, avahi_client_callback, NULL, &error); -+ if (!client) -+ { -+ perror ("ERROR: Unable to create avahi client"); -+ return (1); -+ } -+ -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_fax-ipp._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_ipp._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_ipp-tls._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_pdl-datastream._tcp", -+ NULL, 0, -+ avahi_browse_callback, -+ devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_printer._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_riousbprint._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+#endif /* HAVE_AVAHI */ -+#ifdef HAVE_DNSSD - if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError) - { - perror("ERROR: Unable to create service connection"); -@@ -245,6 +422,7 @@ main(int argc, /* I - Number of comm - riousbprint_ref = main_ref; - DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0, - "_riousbprint._tcp", NULL, browse_callback, devices); -+#endif /* HAVE_DNSSD */ - - /* - * Loop until we are killed... -@@ -252,6 +430,9 @@ main(int argc, /* I - Number of comm - - while (!job_canceled) - { -+ int announce = 0; -+ -+#ifdef HAVE_DNSSD - FD_ZERO(&input); - FD_SET(fd, &input); - -@@ -271,11 +452,35 @@ main(int argc, /* I - Number of comm - } - else - { -+ announce = 1; -+ } -+#else /* HAVE_AVAHI */ -+ int r; -+ avahi_got_callback = 0; -+ r = avahi_simple_poll_iterate (simple_poll, 1); -+ if (r != 0 && r != EINTR) -+ { -+ /* -+ * We've been told to exit the loop. Perhaps the connection to -+ * avahi failed. -+ */ -+ -+ break; -+ } -+ -+ if (avahi_got_callback) -+ announce = 1; -+#endif /* HAVE_DNSSD */ -+ -+ if (announce) -+ { - /* - * Announce any devices we've found... - */ - -+#ifdef HAVE_DNSSD - DNSServiceErrorType status; /* DNS query status */ -+#endif /* HAVE_DNSSD */ - cups_device_t *best; /* Best matching device */ - char device_uri[1024]; /* Device URI */ - int count; /* Number of queries */ -@@ -285,6 +490,7 @@ main(int argc, /* I - Number of comm - best = NULL, count = 0; - device; - device = (cups_device_t *)cupsArrayNext(devices)) -+#ifdef HAVE_DNSSD - if (!device->ref && !device->sent) - { - /* -@@ -313,14 +519,23 @@ main(int argc, /* I - Number of comm - count ++; - } - } -- else if (!device->sent) -+ else -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ if (!device->resolved) -+ continue; -+ else -+#endif /* HAVE_AVAHI */ -+ if (!device->sent) - { -+#ifdef HAVE_DNSSD - /* - * Got the TXT records, now report the device... - */ - - DNSServiceRefDeallocate(device->ref); - device->ref = 0; -+#endif /* HAVE_DNSSD */ - - if (!best) - best = device; -@@ -372,6 +587,7 @@ main(int argc, /* I - Number of comm - * 'browse_callback()' - Browse devices. - */ - -+#ifdef HAVE_DNSSD - static void - browse_callback( - DNSServiceRef sdRef, /* I - Service reference */ -@@ -405,12 +621,14 @@ browse_callback( - - get_device((cups_array_t *)context, serviceName, regtype, replyDomain); - } -+#endif /* HAVE_DNSSD */ - - - /* - * 'browse_local_callback()' - Browse local devices. - */ - -+#ifdef HAVE_DNSSD - static void - browse_local_callback( - DNSServiceRef sdRef, /* I - Service reference */ -@@ -456,6 +674,7 @@ browse_local_callback( - device->fullName); - device->sent = 1; - } -+#endif /* HAVE_DNSSD */ - - - /* -@@ -528,6 +747,32 @@ exec_backend(char **argv) /* I - Comman - exit(CUPS_BACKEND_STOP); - } - -+static int -+device_type (const char *regtype) -+{ -+#ifdef HAVE_AVAHI -+ if (!strcmp(regtype, "_ipp._tcp") || -+ !strcmp(regtype, "_ipp-tls._tcp")) -+ return (CUPS_DEVICE_IPP); -+ else if (!strcmp(regtype, "_fax-ipp._tcp")) -+ return (CUPS_DEVICE_FAX_IPP); -+ else if (!strcmp(regtype, "_printer._tcp")) -+ return (CUPS_DEVICE_PDL_DATASTREAM); -+#else -+ if (!strcmp(regtype, "_ipp._tcp.") || -+ !strcmp(regtype, "_ipp-tls._tcp.")) -+ return (CUPS_DEVICE_IPP); -+ else if (!strcmp(regtype, "_fax-ipp._tcp.")) -+ return (CUPS_DEVICE_FAX_IPP); -+ else if (!strcmp(regtype, "_printer._tcp.")) -+ return (CUPS_DEVICE_PRINTER); -+ else if (!strcmp(regtype, "_pdl-datastream._tcp.")) -+ return (CUPS_DEVICE_PDL_DATASTREAM); -+#endif /* HAVE_AVAHI */ -+ -+ return (CUPS_DEVICE_RIOUSBPRINT); -+} -+ - - /* - * 'get_device()' - Create or update a device. -@@ -550,18 +795,7 @@ get_device(cups_array_t *devices, /* I - - */ - - key.name = (char *)serviceName; -- -- if (!strcmp(regtype, "_ipp._tcp.") || -- !strcmp(regtype, "_ipp-tls._tcp.")) -- key.type = CUPS_DEVICE_IPP; -- else if (!strcmp(regtype, "_fax-ipp._tcp.")) -- key.type = CUPS_DEVICE_FAX_IPP; -- else if (!strcmp(regtype, "_printer._tcp.")) -- key.type = CUPS_DEVICE_PRINTER; -- else if (!strcmp(regtype, "_pdl-datastream._tcp.")) -- key.type = CUPS_DEVICE_PDL_DATASTREAM; -- else -- key.type = CUPS_DEVICE_RIOUSBPRINT; -+ key.type = device_type (regtype); - - for (device = cupsArrayFind(devices, &key); - device; -@@ -581,8 +815,14 @@ get_device(cups_array_t *devices, /* I - - free(device->domain); - device->domain = strdup(replyDomain); - -+#ifdef HAVE_DNSSD - DNSServiceConstructFullName(fullName, device->name, regtype, - replyDomain); -+#else /* HAVE_AVAHI */ -+ avahi_service_name_join (fullName, kDNSServiceMaxDomainName, -+ serviceName, regtype, replyDomain); -+#endif /* HAVE_DNSSD */ -+ - free(device->fullName); - device->fullName = strdup(fullName); - } -@@ -602,6 +842,9 @@ get_device(cups_array_t *devices, /* I - - device->domain = strdup(replyDomain); - device->type = key.type; - device->priority = 50; -+#ifdef HAVE_AVAHI -+ device->resolved = 0; -+#endif /* HAVE_AVAHI */ - - cupsArrayAdd(devices, device); - -@@ -609,7 +852,13 @@ get_device(cups_array_t *devices, /* I - - * Set the "full name" of this service, which is used for queries... - */ - -+#ifdef HAVE_DNSSD - DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain); -+#else /* HAVE_AVAHI */ -+ avahi_service_name_join (fullName, kDNSServiceMaxDomainName, -+ serviceName, regtype, replyDomain); -+#endif /* HAVE_DNSSD */ -+ - device->fullName = strdup(fullName); - - return (device); -@@ -620,6 +869,7 @@ get_device(cups_array_t *devices, /* I - - * 'query_callback()' - Process query data. - */ - -+#ifdef HAVE_DNSSD - static void - query_callback( - DNSServiceRef sdRef, /* I - Service reference */ -@@ -639,7 +889,7 @@ query_callback( - *ptr; /* Pointer into string */ - cups_device_t dkey, /* Search key */ - *device; /* Device */ -- -+ cups_txt_records_t txt; - - fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, " - "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", " -@@ -673,84 +923,212 @@ query_callback( - if ((ptr = strstr(name, "._")) != NULL) - *ptr = '\0'; - -- if (strstr(fullName, "_ipp._tcp.") || -- strstr(fullName, "_ipp-tls._tcp.")) -- dkey.type = CUPS_DEVICE_IPP; -- else if (strstr(fullName, "_fax-ipp._tcp.")) -- dkey.type = CUPS_DEVICE_FAX_IPP; -- else if (strstr(fullName, "_printer._tcp.")) -- dkey.type = CUPS_DEVICE_PRINTER; -- else if (strstr(fullName, "_pdl-datastream._tcp.")) -- dkey.type = CUPS_DEVICE_PDL_DATASTREAM; -+ dkey.type = device_type (fullName); -+ -+ txt.data = rdata; -+ txt.dataend = rdata + rdlen; -+ device = find_device ((cups_array_t *) context, &txt, &dkey); -+ if (!device) -+ fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); -+} -+#endif /* HAVE_DNSSD */ -+ -+#ifdef HAVE_AVAHI -+static void -+avahi_client_callback(AvahiClient *client, -+ AvahiClientState state, -+ void *context) -+{ -+ /* -+ * If the connection drops, quit. -+ */ -+ -+ if (state == AVAHI_CLIENT_FAILURE) -+ { -+ fprintf (stderr, "ERROR: Avahi connection failed\n"); -+ avahi_simple_poll_quit (simple_poll); -+ } -+} -+ -+static void -+avahi_query_callback(AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ AvahiClient *client; -+ cups_device_t key, -+ *device; -+ char uqname[1024], -+ *ptr; -+ cups_txt_records_t txtr; -+ -+ client = avahi_service_resolver_get_client (resolver); -+ if (event != AVAHI_RESOLVER_FOUND) -+ { -+ if (event == AVAHI_RESOLVER_FAILURE) -+ { -+ fprintf (stderr, "ERROR: %s\n", -+ avahi_strerror (avahi_client_errno (client))); -+ } -+ -+ avahi_service_resolver_free (resolver); -+ return; -+ } -+ -+ /* -+ * Set search key for device. -+ */ -+ -+ key.name = uqname; -+ unquote (uqname, name, sizeof (uqname)); -+ if ((ptr = strstr(name, "._")) != NULL) -+ *ptr = '\0'; -+ -+ key.domain = (char *) domain; -+ key.type = device_type (type); -+ -+ /* -+ * Find the device and the the TXT information. -+ */ -+ -+ txtr.txt = txt; -+ device = find_device ((cups_array_t *) context, &txtr, &key); -+ if (device) -+ { -+ /* -+ * Let the main loop know to announce the device. -+ */ -+ -+ device->resolved = 1; -+ avahi_got_callback = 1; -+ } - else -- dkey.type = CUPS_DEVICE_RIOUSBPRINT; -+ fprintf (stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", name); -+ -+ avahi_service_resolver_free (resolver); -+} -+ -+static void -+avahi_browse_callback(AvahiServiceBrowser *browser, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiBrowserEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ AvahiClient *client = avahi_service_browser_get_client (browser); -+ -+ switch (event) -+ { -+ case AVAHI_BROWSER_FAILURE: -+ fprintf (stderr, "ERROR: %s\n", -+ avahi_strerror (avahi_client_errno (client))); -+ avahi_simple_poll_quit (simple_poll); -+ return; -+ -+ case AVAHI_BROWSER_NEW: -+ /* -+ * This object is new on the network. -+ */ -+ -+ if (flags & AVAHI_LOOKUP_RESULT_LOCAL) -+ { -+ /* -+ * This comes from the local machine so ignore it. -+ */ -+ -+ fprintf (stderr, "DEBUG: ignoring local service %s\n", name); -+ } -+ else -+ { -+ /* -+ * Create a device entry for it if it doesn't yet exist. -+ */ -+ -+ get_device ((cups_array_t *)context, name, type, domain); -+ -+ /* -+ * Now look for a TXT entry. -+ */ -+ -+ if (avahi_service_resolver_new (client, interface, protocol, -+ name, type, domain, -+ AVAHI_PROTO_UNSPEC, 0, -+ avahi_query_callback, context) == NULL) -+ { -+ fprintf (stderr, "ERROR: failed to resolve service %s: %s\n", -+ name, avahi_strerror (avahi_client_errno (client))); -+ } -+ } -+ -+ break; - -- for (device = cupsArrayFind(devices, &dkey); -+ case AVAHI_BROWSER_REMOVE: -+ case AVAHI_BROWSER_ALL_FOR_NOW: -+ case AVAHI_BROWSER_CACHE_EXHAUSTED: -+ break; -+ } -+} -+#endif /* HAVE_AVAHI */ -+ -+static cups_device_t * -+find_device (cups_array_t *devices, -+ cups_txt_records_t *txt, -+ cups_device_t *dkey) -+{ -+ cups_device_t *device; -+ char *ptr; -+ -+ for (device = cupsArrayFind(devices, dkey); - device; - device = cupsArrayNext(devices)) - { -- if (strcasecmp(device->name, dkey.name) || -- strcasecmp(device->domain, dkey.domain)) -+ if (strcasecmp(device->name, dkey->name) || -+ strcasecmp(device->domain, dkey->domain)) - { - device = NULL; - break; - } -- else if (device->type == dkey.type) -+ else if (device->type == dkey->type) - { - /* - * Found it, pull out the priority and make and model from the TXT - * record and save it... - */ - -- const uint8_t *data, /* Pointer into data */ -- *datanext, /* Next key/value pair */ -- *dataend; /* End of entire TXT record */ -- uint8_t datalen; /* Length of current key/value pair */ -- char key[256], /* Key string */ -- value[256], /* Value string */ -- make_and_model[512], -+ char make_and_model[512], - /* Manufacturer and model */ - model[256], /* Model */ -- device_id[2048];/* 1284 device ID */ -- -+ device_id[2048]; /* 1284 device ID */ - - device_id[0] = '\0'; - make_and_model[0] = '\0'; - - strcpy(model, "Unknown"); - -- for (data = rdata, dataend = data + rdlen; -- data < dataend; -- data = datanext) -+ for (;;) - { -- /* -- * Read a key/value pair starting with an 8-bit length. Since the -- * length is 8 bits and the size of the key/value buffers is 256, we -- * don't need to check for overflow... -- */ -- -- datalen = *data++; -- -- if (!datalen || (data + datalen) >= dataend) -- break; -- -- datanext = data + datalen; -+ char *key; -+ char *value; - -- for (ptr = key; data < datanext && *data != '='; data ++) -- *ptr++ = *data; -- *ptr = '\0'; -- -- if (data < datanext && *data == '=') -- { -- data ++; -- -- if (data < datanext) -- memcpy(value, data, datanext - data); -- value[datanext - data] = '\0'; -- } -- else -- continue; -+ if (parse_txt_record_pair (txt)) -+ goto next; - -+ key = txt->key; -+ value = txt->value; - if (!strncasecmp(key, "usb_", 4)) - { - /* -@@ -805,6 +1183,10 @@ query_callback( - if (device->type == CUPS_DEVICE_PRINTER) - device->sent = 1; - } -+ -+ next: -+ if (next_txt_record (txt) == NULL) -+ break; - } - - if (device->device_id) -@@ -854,11 +1236,9 @@ query_callback( - } - } - -- if (!device) -- fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); -+ return device; - } - -- - /* - * 'sigterm_handler()' - Handle termination signals... - */ -diff -up cups-1.4.5/config.h.in.avahi cups-1.4.5/config.h.in ---- cups-1.4.5/config.h.in.avahi 2010-08-13 06:11:46.000000000 +0200 -+++ cups-1.4.5/config.h.in 2010-11-12 13:13:31.000000000 +0100 -@@ -344,6 +344,13 @@ - - - /* -+ * Do we have Avahi for DNS Service Discovery? -+ */ -+ -+#undef HAVE_AVAHI -+ -+ -+/* - * Do we have <sys/ioctl.h>? - */ - -diff -up cups-1.4.5/config-scripts/cups-dnssd.m4.avahi cups-1.4.5/config-scripts/cups-dnssd.m4 ---- cups-1.4.5/config-scripts/cups-dnssd.m4.avahi 2009-08-29 00:54:34.000000000 +0200 -+++ cups-1.4.5/config-scripts/cups-dnssd.m4 2010-11-12 13:13:31.000000000 +0100 -@@ -27,6 +27,21 @@ AC_ARG_WITH(dnssd-includes, [ --with-dn - DNSSDLIBS="" - DNSSD_BACKEND="" - -+AC_ARG_ENABLE(avahi, [ --enable-avahi turn on DNS Service Discovery support, default=no], -+ [if test x$enable_avahi = xyes; then -+ AC_MSG_CHECKING(for Avahi) -+ if $PKGCONFIG --exists avahi-client; then -+ AC_MSG_RESULT(yes) -+ CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`" -+ DNSSDLIBS="`$PKGCONFIG --libs avahi-client`" -+ DNSSD_BACKEND="dnssd" -+ AC_DEFINE(HAVE_AVAHI) -+ enable_dnssd=no -+ else -+ AC_MSG_RESULT(no) -+ fi -+ fi]) -+ - if test x$enable_dnssd != xno; then - AC_CHECK_HEADER(dns_sd.h, [ - case "$uname" in -diff -up cups-1.4.5/cups/http-support.c.avahi cups-1.4.5/cups/http-support.c ---- cups-1.4.5/cups/http-support.c.avahi 2010-10-02 00:40:38.000000000 +0200 -+++ cups-1.4.5/cups/http-support.c 2010-11-12 13:28:45.000000000 +0100 -@@ -55,6 +55,11 @@ - # include <dns_sd.h> - # include <poll.h> - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include <avahi-client/client.h> -+# include <avahi-client/lookup.h> -+# include <avahi-common/simple-watch.h> -+#endif /* HAVE_AVAHI */ - - - /* -@@ -121,6 +126,24 @@ static void resolve_callback(DNSService - void *context); - #endif /* HAVE_DNSSD */ - -+#ifdef HAVE_AVAHI -+static void avahi_resolve_uri_client_cb(AvahiClient *client, -+ AvahiClientState state, -+ void *simple_poll); -+static void avahi_resolve_uri_resolver_cb(AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context); -+#endif /* HAVE_AVAHI */ - - /* - * 'httpAssembleURI()' - Assemble a uniform resource identifier from its -@@ -1351,16 +1374,27 @@ _httpResolveURI( - - if (strstr(hostname, "._tcp")) - { -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ char *regtype, /* Pointer to type in hostname */ -+ *domain; /* Pointer to domain in hostname */ - #ifdef HAVE_DNSSD - DNSServiceRef ref, /* DNS-SD master service reference */ - domainref, /* DNS-SD service reference for domain */ - localref; /* DNS-SD service reference for .local */ - int domainsent = 0, /* Send the domain resolve? */ - offline = 0; /* offline-report state set? */ -- char *regtype, /* Pointer to type in hostname */ -- *domain; /* Pointer to domain in hostname */ - _http_uribuf_t uribuf; /* URI buffer */ - struct pollfd polldata; /* Polling data */ -+#else /* HAVE_AVAHI */ -+ AvahiSimplePoll *simple_poll; -+ AvahiClient *client; -+ int error; -+ struct -+ { -+ AvahiSimplePoll *poll; -+ _http_uribuf_t uribuf; -+ } user_data; -+#endif /* HAVE_DNSSD */ - - - if (logit) -@@ -1398,8 +1432,13 @@ _httpResolveURI( - if (domain) - *domain++ = '\0'; - -+#ifdef HAVE_DNSSD - uribuf.buffer = resolved_uri; - uribuf.bufsize = resolved_size; -+#else -+ user_data.uribuf.buffer = resolved_uri; -+ user_data.uribuf.bufsize = resolved_size; -+#endif - - resolved_uri[0] = '\0'; - -@@ -1414,6 +1453,7 @@ _httpResolveURI( - - uri = NULL; - -+#ifdef HAVE_DNSSD - if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError) - { - localref = ref; -@@ -1500,6 +1540,36 @@ _httpResolveURI( - - DNSServiceRefDeallocate(ref); - } -+#else /* HAVE_AVAHI */ -+ if ((simple_poll = avahi_simple_poll_new ()) != NULL) -+ { -+ if ((client = avahi_client_new (avahi_simple_poll_get (simple_poll), -+ 0, avahi_resolve_uri_client_cb, -+ &simple_poll, &error)) != NULL) -+ { -+ user_data.poll = simple_poll; -+ if (avahi_service_resolver_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, hostname, -+ regtype, domain, AVAHI_PROTO_UNSPEC, 0, -+ avahi_resolve_uri_resolver_cb, -+ &user_data) != NULL) -+ { -+ avahi_simple_poll_loop (simple_poll); -+ -+ /* -+ * Collect the result. -+ */ -+ -+ if (resolved_uri[0]) -+ uri = resolved_uri; -+ } -+ -+ avahi_client_free (client); -+ } -+ -+ avahi_simple_poll_free (simple_poll); -+ } -+#endif /* HAVE_DNSSD */ - - if (logit) - { -@@ -1511,13 +1581,13 @@ _httpResolveURI( - fputs("STATE: -connecting-to-device,offline-report\n", stderr); - } - --#else -+#else /* HAVE_DNSSD || HAVE_AVAHI */ - /* - * No DNS-SD support... - */ - - uri = NULL; --#endif /* HAVE_DNSSD */ -+#endif /* HAVE_DNSSD || HAVE_AVAHI */ - - if (logit && !uri) - _cupsLangPuts(stderr, _("Unable to find printer!\n")); -@@ -1722,6 +1792,105 @@ resolve_callback( - } - #endif /* HAVE_DNSSD */ - -+#ifdef HAVE_AVAHI -+static void -+avahi_resolve_uri_client_cb (AvahiClient *client, -+ AvahiClientState state, -+ void *simple_poll) -+{ -+ DEBUG_printf(("avahi_resolve_uri_client_callback(client=%p, state=%d, " -+ "simple_poll=%p)\n", client, state, simple_poll)); -+ -+ /* -+ * If the connection drops, quit. -+ */ -+ -+ if (state == AVAHI_CLIENT_FAILURE) -+ avahi_simple_poll_quit (simple_poll); -+} -+ -+static void -+avahi_resolve_uri_resolver_cb (AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ const char *scheme; /* URI scheme */ -+ char rp[256]; /* Remote printer */ -+ AvahiStringList *pair; -+ char *value; -+ size_t valueLen = 0; -+ char addr[AVAHI_ADDRESS_STR_MAX]; -+ struct -+ { -+ AvahiSimplePoll *poll; -+ _http_uribuf_t uribuf; -+ } *poll_uribuf = context; -+ -+ DEBUG_printf(("avahi_resolve_uri_resolver_callback(resolver=%p, " -+ "interface=%d, protocol=%d, event=%d, name=\"%s\", " -+ "type=\"%s\", domain=\"%s\", host_name=\"%s\", address=%p, " -+ "port=%d, txt=%p, flags=%d, context=%p)\n", -+ resolver, interface, protocol, event, name, type, domain, -+ host_name, address, port, txt, flags, context)); -+ -+ if (event != AVAHI_RESOLVER_FOUND) -+ { -+ avahi_service_resolver_free (resolver); -+ avahi_simple_poll_quit (poll_uribuf->poll); -+ return; -+ } -+ -+ /* -+ * Figure out the scheme from the full name... -+ */ -+ -+ if (strstr(type, "_ipp.")) -+ scheme = "ipp"; -+ else if (strstr(type, "_printer.")) -+ scheme = "lpd"; -+ else if (strstr(type, "_pdl-datastream.")) -+ scheme = "socket"; -+ else -+ scheme = "riousbprint"; -+ -+ /* -+ * Extract the "remote printer key from the TXT record... -+ */ -+ -+ if ((pair = avahi_string_list_find (txt, "rp")) != NULL) -+ { -+ avahi_string_list_get_pair (pair, NULL, &value, &valueLen); -+ rp[0] = '/'; -+ memcpy (rp + 1, value, valueLen); -+ rp[valueLen + 1] = '\0'; -+ } -+ else -+ rp[0] = '\0'; -+ -+ /* -+ * Assemble the final device URI... -+ */ -+ -+ avahi_address_snprint (addr, AVAHI_ADDRESS_STR_MAX, address); -+ httpAssembleURI(HTTP_URI_CODING_ALL, poll_uribuf->uribuf.buffer, -+ poll_uribuf->uribuf.bufsize, scheme, NULL, -+ addr, port, rp); -+ DEBUG_printf(("avahi_resolve_uri_resolver_callback: Resolved URI is \"%s\"\n", -+ poll_uribuf->uribuf.buffer)); -+ avahi_simple_poll_quit (poll_uribuf->poll); -+} -+#endif /* HAVE_AVAHI */ -+ - - /* - * End of "$Id: http-support.c 9322 2010-10-01 22:40:38Z mike $". diff --git a/abs/extra/cups/cups-no-export-ssllibs.patch b/abs/extra/cups/cups-no-export-ssllibs.patch new file mode 100644 index 0000000..9be3c81 --- /dev/null +++ b/abs/extra/cups/cups-no-export-ssllibs.patch @@ -0,0 +1,12 @@ +diff -up cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5b1/config-scripts/cups-ssl.m4 +--- cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs 2011-05-11 02:52:08.000000000 +0200 ++++ cups-1.5b1/config-scripts/cups-ssl.m4 2011-05-23 17:47:27.000000000 +0200 +@@ -164,7 +164,7 @@ AC_SUBST(IPPALIASES) + AC_SUBST(SSLFLAGS) + AC_SUBST(SSLLIBS) + +-EXPORT_SSLLIBS="$SSLLIBS" ++EXPORT_SSLLIBS="" + AC_SUBST(EXPORT_SSLLIBS) + + diff --git a/abs/extra/cups/cups-no-gcrypt.patch b/abs/extra/cups/cups-no-gcrypt.patch new file mode 100644 index 0000000..42f71d0 --- /dev/null +++ b/abs/extra/cups/cups-no-gcrypt.patch @@ -0,0 +1,38 @@ +diff -ruN cups-1.4.7.orig//config-scripts/cups-ssl.m4 cups-1.4.7/config-scripts/cups-ssl.m4 +--- cups-1.5.0.orig//config-scripts/cups-ssl.m4 2011-01-11 08:05:58.000000000 +0100 ++++ cups-1.5.0/config-scripts/cups-ssl.m4 2011-08-02 10:44:26.011047900 +0200 +@@ -96,7 +96,6 @@ + dnl Then look for GNU TLS... + if test $have_ssl = 0 -a "x$enable_gnutls" != "xno" -a "x$PKGCONFIG" != x; then + AC_PATH_PROG(LIBGNUTLSCONFIG,libgnutls-config) +- AC_PATH_PROG(LIBGCRYPTCONFIG,libgcrypt-config) + if $PKGCONFIG --exists gnutls; then + have_ssl=1 + SSLLIBS=`$PKGCONFIG --libs gnutls` +@@ -110,16 +109,6 @@ + AC_DEFINE(HAVE_SSL) + AC_DEFINE(HAVE_GNUTLS) + fi +- +- if test $have_ssl = 1; then +- if $PKGCONFIG --exists gcrypt; then +- SSLLIBS="$SSLLIBS `$PKGCONFIG --libs gcrypt`" +- SSLFLAGS="$SSLFLAGS `$PKGCONFIG --cflags gcrypt`" +- elif test "x$LIBGCRYPTCONFIG" != x; then +- SSLLIBS="$SSLLIBS `$LIBGCRYPTCONFIG --libs`" +- SSLFLAGS="$SSLFLAGS `$LIBGCRYPTCONFIG --cflags`" +- fi +- fi + fi + + dnl Check for the OpenSSL library last... +--- cups-1.5.0.orig//cups/http-private.h 2011-01-22 01:07:22.000000000 +0100 ++++ cups-1.5.0/cups/http-private.h 2011-08-02 10:42:43.341604107 +0200 +@@ -93,7 +93,6 @@ + # elif defined HAVE_GNUTLS + # include <gnutls/gnutls.h> + # include <gnutls/x509.h> +-# include <gcrypt.h> + # elif defined(HAVE_CDSASSL) + # include <CoreFoundation/CoreFoundation.h> + # include <Security/Security.h> diff --git a/abs/extra/cups/cups-no-gzip-man.patch b/abs/extra/cups/cups-no-gzip-man.patch new file mode 100644 index 0000000..6786c44 --- /dev/null +++ b/abs/extra/cups/cups-no-gzip-man.patch @@ -0,0 +1,18 @@ +diff -up cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man cups-1.5b1/config-scripts/cups-manpages.m4 +--- cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man 2011-05-12 07:21:56.000000000 +0200 ++++ cups-1.5b1/config-scripts/cups-manpages.m4 2011-05-23 17:25:50.000000000 +0200 +@@ -69,10 +69,10 @@ case "$uname" in + ;; + Linux* | GNU* | Darwin*) + # Linux, GNU Hurd, and Mac OS X +- MAN1EXT=1.gz +- MAN5EXT=5.gz +- MAN7EXT=7.gz +- MAN8EXT=8.gz ++ MAN1EXT=1 ++ MAN5EXT=5 ++ MAN7EXT=7 ++ MAN8EXT=8 + MAN8DIR=8 + ;; + *) diff --git a/abs/extra/cups/cups-no-gzip-man.patch.16 b/abs/extra/cups/cups-no-gzip-man.patch.16 new file mode 100644 index 0000000..69899b9 --- /dev/null +++ b/abs/extra/cups/cups-no-gzip-man.patch.16 @@ -0,0 +1,18 @@ +diff -up cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man cups-1.5b1/config-scripts/cups-manpages.m4 +--- cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man 2011-05-12 07:21:56.000000000 +0200 ++++ cups-1.5b1/config-scripts/cups-manpages.m4 2011-05-23 17:25:50.000000000 +0200 +@@ -69,10 +69,10 @@ case "$uname" in + ;; + Linux* | GNU* | Darwin*) + # Linux, GNU Hurd, and OS X +- MAN1EXT=1.gz +- MAN5EXT=5.gz +- MAN7EXT=7.gz +- MAN8EXT=8.gz ++ MAN1EXT=1 ++ MAN5EXT=5 ++ MAN7EXT=7 ++ MAN8EXT=8 + MAN8DIR=8 + ;; + *) diff --git a/abs/extra/cups/cups-systemd-socket.patch b/abs/extra/cups/cups-systemd-socket.patch new file mode 100644 index 0000000..09d17d4 --- /dev/null +++ b/abs/extra/cups/cups-systemd-socket.patch @@ -0,0 +1,527 @@ +diff -up cups-1.5.2/config.h.in.systemd-socket cups-1.5.2/config.h.in +--- cups-1.5.2/config.h.in.systemd-socket 2012-03-16 14:50:57.089449755 +0000 ++++ cups-1.5.2/config.h.in 2012-03-16 14:50:57.146449787 +0000 +@@ -503,6 +503,13 @@ + + + /* ++ * Do we have systemd support? ++ */ ++ ++#undef HAVE_SYSTEMD ++ ++ ++/* + * Various scripting languages... + */ + +diff -up cups-1.5.2/config-scripts/cups-systemd.m4.systemd-socket cups-1.5.2/config-scripts/cups-systemd.m4 +--- cups-1.5.2/config-scripts/cups-systemd.m4.systemd-socket 2012-03-16 14:50:57.146449787 +0000 ++++ cups-1.5.2/config-scripts/cups-systemd.m4 2012-03-16 14:50:57.146449787 +0000 +@@ -0,0 +1,36 @@ ++dnl ++dnl "$Id$" ++dnl ++dnl systemd stuff for CUPS. ++ ++dnl Find whether systemd is available ++ ++SDLIBS="" ++AC_ARG_WITH([systemdsystemunitdir], ++ AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]), ++ [], [with_systemdsystemunitdir=$($PKGCONFIG --variable=systemdsystemunitdir systemd)]) ++if test "x$with_systemdsystemunitdir" != xno; then ++ AC_MSG_CHECKING(for libsystemd-daemon) ++ if $PKGCONFIG --exists libsystemd-daemon; then ++ AC_MSG_RESULT(yes) ++ SDCFLAGS=`$PKGCONFIG --cflags libsystemd-daemon` ++ SDLIBS=`$PKGCONFIG --libs libsystemd-daemon` ++ AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir]) ++ AC_DEFINE(HAVE_SYSTEMD) ++ else ++ AC_MSG_RESULT(no) ++ fi ++fi ++ ++if test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ; then ++ SYSTEMD_UNITS="cups.service cups.socket cups.path" ++else ++ SYSTEMD_UNITS="" ++fi ++ ++AC_SUBST(SYSTEMD_UNITS) ++AC_SUBST(SDLIBS) ++ ++dnl ++dnl "$Id$" ++dnl +diff -up cups-1.5.2/configure.in.systemd-socket cups-1.5.2/configure.in +--- cups-1.5.2/configure.in.systemd-socket 2011-08-31 02:36:33.000000000 +0100 ++++ cups-1.5.2/configure.in 2012-03-16 14:50:57.146449787 +0000 +@@ -37,6 +37,7 @@ sinclude(config-scripts/cups-pam.m4) + sinclude(config-scripts/cups-largefile.m4) + sinclude(config-scripts/cups-dnssd.m4) + sinclude(config-scripts/cups-launchd.m4) ++sinclude(config-scripts/cups-systemd.m4) + sinclude(config-scripts/cups-defaults.m4) + sinclude(config-scripts/cups-pdf.m4) + sinclude(config-scripts/cups-scripting.m4) +@@ -71,6 +72,9 @@ AC_OUTPUT(Makedefs + conf/snmp.conf + cups-config + data/testprint ++ data/cups.service ++ data/cups.socket ++ data/cups.path + desktop/cups.desktop + doc/help/ref-cupsd-conf.html + doc/help/standard.html +diff -up cups-1.5.2/cups/usersys.c.systemd-socket cups-1.5.2/cups/usersys.c +--- cups-1.5.2/cups/usersys.c.systemd-socket 2012-03-16 14:50:57.054449734 +0000 ++++ cups-1.5.2/cups/usersys.c 2012-03-16 14:50:57.148449788 +0000 +@@ -778,7 +778,7 @@ cups_read_client_conf( + struct stat sockinfo; /* Domain socket information */ + + if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) && +- (sockinfo.st_mode & S_IRWXO) == S_IRWXO) ++ (sockinfo.st_mode & (S_IROTH | S_IWOTH)) == (S_IROTH | S_IWOTH)) + cups_server = CUPS_DEFAULT_DOMAINSOCKET; + else + #endif /* CUPS_DEFAULT_DOMAINSOCKET */ +diff -up cups-1.5.2/data/cups.path.in.systemd-socket cups-1.5.2/data/cups.path.in +--- cups-1.5.2/data/cups.path.in.systemd-socket 2012-03-16 14:50:57.148449788 +0000 ++++ cups-1.5.2/data/cups.path.in 2012-03-16 14:50:57.148449788 +0000 +@@ -0,0 +1,8 @@ ++[Unit] ++Description=CUPS Printer Service Spool ++ ++[Path] ++PathExistsGlob=@CUPS_REQUESTS@/d* ++ ++[Install] ++WantedBy=multi-user.target +diff -up cups-1.5.2/data/cups.service.in.systemd-socket cups-1.5.2/data/cups.service.in +--- cups-1.5.2/data/cups.service.in.systemd-socket 2012-03-16 14:50:57.149449788 +0000 ++++ cups-1.5.2/data/cups.service.in 2012-03-16 14:50:57.149449788 +0000 +@@ -0,0 +1,10 @@ ++[Unit] ++Description=CUPS Printing Service ++ ++[Service] ++ExecStart=@sbindir@/cupsd -f ++PrivateTmp=true ++ ++[Install] ++Also=cups.socket cups.path ++WantedBy=printer.target +diff -up cups-1.5.2/data/cups.socket.in.systemd-socket cups-1.5.2/data/cups.socket.in +--- cups-1.5.2/data/cups.socket.in.systemd-socket 2012-03-16 14:50:57.150449788 +0000 ++++ cups-1.5.2/data/cups.socket.in 2012-03-16 14:50:57.150449788 +0000 +@@ -0,0 +1,11 @@ ++[Unit] ++Description=CUPS Printing Service Sockets ++ ++[Socket] ++ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@ ++ListenStream=631 ++ListenDatagram=0.0.0.0:631 ++BindIPv6Only=ipv6-only ++ ++[Install] ++WantedBy=sockets.target +diff -up cups-1.5.2/data/Makefile.systemd-socket cups-1.5.2/data/Makefile +--- cups-1.5.2/data/Makefile.systemd-socket 2011-05-12 06:21:56.000000000 +0100 ++++ cups-1.5.2/data/Makefile 2012-03-16 14:50:57.151449789 +0000 +@@ -112,6 +112,12 @@ install-data: + $(INSTALL_DATA) $$file $(DATADIR)/ppdc; \ + done + $(INSTALL_DIR) -m 755 $(DATADIR)/profiles ++ if test "x$(SYSTEMD_UNITS)" != "x" ; then \ ++ $(INSTALL_DIR) -m 755 $(SYSTEMDUNITDIR); \ ++ for file in $(SYSTEMD_UNITS); do \ ++ $(INSTALL_DATA) $$file $(SYSTEMDUNITDIR); \ ++ done; \ ++ fi + + + # +@@ -159,6 +165,9 @@ uninstall: + -$(RMDIR) $(DATADIR)/charsets + -$(RMDIR) $(DATADIR)/banners + -$(RMDIR) $(DATADIR) ++ for file in $(SYSTEMD_UNITS); do \ ++ $(RM) $(SYSTEMDUNITDIR)/$$file; \ ++ done + + + # +diff -up cups-1.5.2/Makedefs.in.systemd-socket cups-1.5.2/Makedefs.in +--- cups-1.5.2/Makedefs.in.systemd-socket 2012-03-16 14:50:57.081449751 +0000 ++++ cups-1.5.2/Makedefs.in 2012-03-16 14:50:57.152449790 +0000 +@@ -143,6 +143,7 @@ CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@ + CXXLIBS = @CXXLIBS@ + DBUS_NOTIFIER = @DBUS_NOTIFIER@ + DBUS_NOTIFIERLIBS = @DBUS_NOTIFIERLIBS@ ++SYSTEMD_UNITS = @SYSTEMD_UNITS@ + DNSSD_BACKEND = @DNSSD_BACKEND@ + DSOFLAGS = -L../cups @DSOFLAGS@ + DSOLIBS = @DSOLIBS@ $(COMMONLIBS) +@@ -151,6 +152,7 @@ FONTS = @FONTS@ + IMGLIBS = @IMGLIBS@ + IMGFILTERS = @IMGFILTERS@ + LAUNCHDLIBS = @LAUNCHDLIBS@ ++SDLIBS = @SDLIBS@ + LDFLAGS = -L../cgi-bin -L../cups -L../filter -L../ppdc \ + -L../scheduler @LDARCHFLAGS@ \ + @LDFLAGS@ @RELROFLAGS@ @PIEFLAGS@ $(OPTIM) +@@ -267,6 +269,7 @@ PAMFILE = @PAMFILE@ + + DEFAULT_LAUNCHD_CONF = @DEFAULT_LAUNCHD_CONF@ + DBUSDIR = @DBUSDIR@ ++SYSTEMDUNITDIR = $(BUILDROOT)@systemdsystemunitdir@ + + + # +diff -up cups-1.5.2/scheduler/client.h.systemd-socket cups-1.5.2/scheduler/client.h +--- cups-1.5.2/scheduler/client.h.systemd-socket 2011-03-25 21:25:38.000000000 +0000 ++++ cups-1.5.2/scheduler/client.h 2012-03-16 14:50:57.153449791 +0000 +@@ -75,6 +75,9 @@ typedef struct + int fd; /* File descriptor for this server */ + http_addr_t address; /* Bind address of socket */ + http_encryption_t encryption; /* To encrypt or not to encrypt... */ ++#ifdef HAVE_SYSTEMD ++ int is_systemd; /* Is this a systemd socket? */ ++#endif /* HAVE_SYSTEMD */ + } cupsd_listener_t; + + +diff -up cups-1.5.2/scheduler/dirsvc.c.systemd-socket cups-1.5.2/scheduler/dirsvc.c +--- cups-1.5.2/scheduler/dirsvc.c.systemd-socket 2012-03-16 14:50:57.112449768 +0000 ++++ cups-1.5.2/scheduler/dirsvc.c 2012-03-16 14:50:57.155449792 +0000 +@@ -1512,7 +1512,7 @@ cupsdStartBrowsing(void) + } + } + +- if (BrowseSocket >= 0) ++ if (BrowseSocket >= 0 && !BrowseSocketIsSystemd) + { + /* + * Bind the socket to browse port... +@@ -1556,13 +1556,17 @@ cupsdStartBrowsing(void) + cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to set broadcast mode - %s.", + strerror(errno)); + ++ if (!BrowseSocketIsSystemd) ++ { + #ifdef WIN32 +- closesocket(BrowseSocket); ++ closesocket(BrowseSocket); + #else +- close(BrowseSocket); ++ close(BrowseSocket); + #endif /* WIN32 */ + +- BrowseSocket = -1; ++ BrowseSocket = -1; ++ } ++ + BrowseLocalProtocols &= ~BROWSE_CUPS; + BrowseRemoteProtocols &= ~BROWSE_CUPS; + +@@ -1885,15 +1889,22 @@ cupsdStopBrowsing(void) + if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_CUPS) && + BrowseSocket >= 0) + { +- /* +- * Close the socket and remove it from the input selection set. +- */ ++ if (!BrowseSocketIsSystemd) ++ { ++ /* ++ * Close the socket. ++ */ + + #ifdef WIN32 +- closesocket(BrowseSocket); ++ closesocket(BrowseSocket); + #else +- close(BrowseSocket); ++ close(BrowseSocket); + #endif /* WIN32 */ ++ } ++ ++ /* ++ * Remove it from the input selection set. ++ */ + + cupsdRemoveSelect(BrowseSocket); + BrowseSocket = -1; +@@ -5693,11 +5704,14 @@ update_cups_browse(void) + strerror(errno)); + cupsdLogMessage(CUPSD_LOG_ERROR, "CUPS browsing turned off."); + ++ if (!BrowseSocketIsSystemd) ++ { + #ifdef WIN32 +- closesocket(BrowseSocket); ++ closesocket(BrowseSocket); + #else +- close(BrowseSocket); ++ close(BrowseSocket); + #endif /* WIN32 */ ++ } + + cupsdRemoveSelect(BrowseSocket); + BrowseSocket = -1; +diff -up cups-1.5.2/scheduler/dirsvc.h.systemd-socket cups-1.5.2/scheduler/dirsvc.h +--- cups-1.5.2/scheduler/dirsvc.h.systemd-socket 2012-03-16 14:50:57.113449769 +0000 ++++ cups-1.5.2/scheduler/dirsvc.h 2012-03-16 14:50:57.157449792 +0000 +@@ -100,6 +100,8 @@ VAR int Browsing VALUE(TRUE), + /* Short names for remote printers? */ + BrowseSocket VALUE(-1), + /* Socket for browsing */ ++ BrowseSocketIsSystemd VALUE(0), ++ /* BrowseSocket is systemd-provided? */ + BrowsePort VALUE(IPP_PORT), + /* Port number for broadcasts */ + BrowseInterval VALUE(DEFAULT_INTERVAL), +diff -up cups-1.5.2/scheduler/listen.c.systemd-socket cups-1.5.2/scheduler/listen.c +--- cups-1.5.2/scheduler/listen.c.systemd-socket 2011-04-16 00:38:13.000000000 +0100 ++++ cups-1.5.2/scheduler/listen.c 2012-03-16 14:50:57.158449792 +0000 +@@ -401,7 +401,11 @@ cupsdStopListening(void) + lis; + lis = (cupsd_listener_t *)cupsArrayNext(Listeners)) + { +- if (lis->fd != -1) ++ if (lis->fd != -1 ++#ifdef HAVE_SYSTEMD ++ && !lis->is_systemd ++#endif /* HAVE_SYSTEMD */ ++ ) + { + #ifdef WIN32 + closesocket(lis->fd); +diff -up cups-1.5.2/scheduler/main.c.systemd-socket cups-1.5.2/scheduler/main.c +--- cups-1.5.2/scheduler/main.c.systemd-socket 2012-03-16 14:50:57.121449773 +0000 ++++ cups-1.5.2/scheduler/main.c 2012-03-16 14:51:55.409483636 +0000 +@@ -26,6 +26,8 @@ + * launchd_checkin() - Check-in with launchd and collect the listening + * fds. + * launchd_checkout() - Update the launchd KeepAlive file as needed. ++ * systemd_checkin() - Check-in with systemd and collect the ++ * listening fds. + * parent_handler() - Catch USR1/CHLD signals... + * process_children() - Process all dead children... + * select_timeout() - Calculate the select timeout value. +@@ -62,6 +64,10 @@ + # endif /* !LAUNCH_JOBKEY_SERVICEIPC */ + #endif /* HAVE_LAUNCH_H */ + ++#ifdef HAVE_SYSTEMD ++#include <systemd/sd-daemon.h> ++#endif /* HAVE_SYSTEMD */ ++ + #if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO) + # include <malloc.h> + #endif /* HAVE_MALLOC_H && HAVE_MALLINFO */ +@@ -78,6 +84,9 @@ + static void launchd_checkin(void); + static void launchd_checkout(void); + #endif /* HAVE_LAUNCHD */ ++#ifdef HAVE_SYSTEMD ++static void systemd_checkin(void); ++#endif /* HAVE_SYSTEMD */ + static void parent_handler(int sig); + static void process_children(void); + static void sigchld_handler(int sig); +@@ -537,6 +546,13 @@ main(int argc, /* I - Number of comm + } + #endif /* HAVE_LAUNCHD */ + ++#ifdef HAVE_SYSTEMD ++ /* ++ * If we were started by systemd get the listen sockets file descriptors... ++ */ ++ systemd_checkin(); ++#endif /* HAVE_SYSTEMD */ ++ + /* + * Startup the server... + */ +@@ -759,6 +775,15 @@ main(int argc, /* I - Number of comm + } + #endif /* HAVE_LAUNCHD */ + ++#ifdef HAVE_SYSTEMD ++ /* ++ * If we were started by systemd get the listen sockets file ++ * descriptors... ++ */ ++ ++ systemd_checkin(); ++#endif /* HAVE_SYSTEMD */ ++ + /* + * Startup the server... + */ +@@ -1584,6 +1609,139 @@ launchd_checkout(void) + } + #endif /* HAVE_LAUNCHD */ + ++#ifdef HAVE_SYSTEMD ++static void ++systemd_checkin(void) ++{ ++ int n, fd; ++ ++ n = sd_listen_fds(0); ++ if (n < 0) ++ { ++ cupsdLogMessage(CUPSD_LOG_ERROR, ++ "systemd_checkin: Failed to acquire sockets from systemd - %s", ++ strerror(-n)); ++ exit(EXIT_FAILURE); ++ return; ++ } ++ ++ if (n == 0) ++ return; ++ ++ for (fd = SD_LISTEN_FDS_START; fd < SD_LISTEN_FDS_START + n; fd ++) ++ { ++ http_addr_t addr; ++ socklen_t addrlen = sizeof (addr); ++ int r; ++ cupsd_listener_t *lis; ++ char s[256]; ++ ++ r = sd_is_socket(fd, AF_UNSPEC, SOCK_STREAM, 1); ++ if (r < 0) ++ { ++ cupsdLogMessage(CUPSD_LOG_ERROR, ++ "systemd_checkin: Unable to verify socket type - %s", ++ strerror(-r)); ++ continue; ++ } ++ ++ if (!r) ++ { ++ if (Browsing && ++ ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_CUPS)) ++ { ++ r = sd_is_socket(fd, AF_UNSPEC, SOCK_DGRAM, 0); ++ if (r < 0) ++ { ++ cupsdLogMessage(CUPSD_LOG_ERROR, ++ "systemd_checkin: Unable to verify socket type - %s", ++ strerror(-r)); ++ continue; ++ } ++ ++ if (r) ++ { ++ /* ++ * This is the browse socket. ++ */ ++ ++ char addrstr[256]; ++ if (getsockname(fd, (struct sockaddr*) &addr, &addrlen)) ++ { ++ cupsdLogMessage(CUPSD_LOG_ERROR, ++ "systemd_checkin: Unable to get local address - %s", ++ strerror(errno)); ++ continue; ++ } ++ ++ httpAddrString (&addr, addrstr, sizeof (addrstr)); ++ BrowseSocket = fd; ++ BrowseSocketIsSystemd = 1; ++ cupsdLogMessage(CUPSD_LOG_DEBUG, ++ "systemd_checkin: Matched browse (port %d) with fd %d:%s...", ++ BrowsePort, fd, addrstr); ++ continue; ++ } ++ ++ } ++ cupsdLogMessage(CUPSD_LOG_ERROR, ++ "systemd_checkin: Socket not of the right type"); ++ continue; ++ } ++ ++ if (getsockname(fd, (struct sockaddr*) &addr, &addrlen)) ++ { ++ cupsdLogMessage(CUPSD_LOG_ERROR, ++ "systemd_checkin: Unable to get local address - %s", ++ strerror(errno)); ++ continue; ++ } ++ ++ /* ++ * Try to match the systemd socket address to one of the listeners... ++ */ ++ ++ for (lis = (cupsd_listener_t *)cupsArrayFirst(Listeners); ++ lis; ++ lis = (cupsd_listener_t *)cupsArrayNext(Listeners)) ++ if (httpAddrEqual(&lis->address, &addr)) ++ break; ++ ++ if (lis) ++ { ++ cupsdLogMessage(CUPSD_LOG_DEBUG, ++ "systemd_checkin: Matched existing listener %s with fd %d...", ++ httpAddrString(&(lis->address), s, sizeof(s)), fd); ++ } ++ else ++ { ++ cupsdLogMessage(CUPSD_LOG_DEBUG, ++ "systemd_checkin: Adding new listener %s with fd %d...", ++ httpAddrString(&addr, s, sizeof(s)), fd); ++ ++ if ((lis = calloc(1, sizeof(cupsd_listener_t))) == NULL) ++ { ++ cupsdLogMessage(CUPSD_LOG_ERROR, ++ "systemd_checkin: Unable to allocate listener - " ++ "%s.", strerror(errno)); ++ exit(EXIT_FAILURE); ++ } ++ ++ cupsArrayAdd(Listeners, lis); ++ ++ memcpy(&lis->address, &addr, sizeof(lis->address)); ++ } ++ ++ lis->fd = fd; ++ lis->is_systemd = 1; ++ ++# ifdef HAVE_SSL ++ if (_httpAddrPort(&(lis->address)) == 443) ++ lis->encryption = HTTP_ENCRYPT_ALWAYS; ++# endif /* HAVE_SSL */ ++ } ++} ++#endif /* HAVE_SYSTEMD */ + + /* + * 'parent_handler()' - Catch USR1/CHLD signals... +diff -up cups-1.5.2/scheduler/Makefile.systemd-socket cups-1.5.2/scheduler/Makefile +--- cups-1.5.2/scheduler/Makefile.systemd-socket 2012-03-16 14:50:57.130449778 +0000 ++++ cups-1.5.2/scheduler/Makefile 2012-03-16 14:50:57.160449794 +0000 +@@ -382,7 +382,7 @@ cupsd: $(CUPSDOBJS) $(LIBCUPSMIME) ../cu + $(CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) -L. -lcupsmime \ + $(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \ + $(LIBPAPER) $(LIBMALLOC) $(SERVERLIBS) $(DNSSDLIBS) $(LIBS) \ +- $(LIBGSSAPI) $(LIBWRAP) ++ $(LIBGSSAPI) $(LIBWRAP) $(SDLIBS) + + cupsd-static: $(CUPSDOBJS) libcupsmime.a ../cups/$(LIBCUPSSTATIC) + echo Linking $@... +@@ -390,7 +390,7 @@ cupsd-static: $(CUPSDOBJS) libcupsmime.a + $(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \ + ../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(LIBZ) $(LIBPAPER) \ + $(LIBMALLOC) $(SERVERLIBS) $(DNSSDLIBS) $(LIBGSSAPI) \ +- $(LIBWRAP) ++ $(LIBWRAP) $(SDLIBS) + + + # diff --git a/abs/extra/cups/cups.install b/abs/extra/cups/cups.install index e92e17e..47c3d9b 100644 --- a/abs/extra/cups/cups.install +++ b/abs/extra/cups/cups.install @@ -1,5 +1,7 @@ post_install() { - xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + if [ -x usr/bin/xdg-icon-resource ]; then + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + fi echo ">> If you use an HTTPS connection to CUPS, the first time you access" echo ">> the interface it may take a very long time before the site comes up." echo ">> This is because the first request triggers the generation of the CUPS" @@ -7,9 +9,18 @@ post_install() { } post_upgrade() { - xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + if [ -x usr/bin/xdg-icon-resource ]; then + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + fi + if [ "`vercmp $2 1.4.7-2`" -lt 0 ]; then + # important upgrade notice + echo "daemon script has been renamed to /etc/rc.d/cupsd" + echo "change your entry in /etc/rc.conf" + fi } post_remove() { - xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + if [ -x usr/bin/xdg-icon-resource ]; then + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + fi } diff --git a/abs/extra/cups/cups.logrotate b/abs/extra/cups/cups.logrotate new file mode 100644 index 0000000..9c49bbd --- /dev/null +++ b/abs/extra/cups/cups.logrotate @@ -0,0 +1,8 @@ +/var/log/cups/*log { + missingok + notifempty + delaycompress + postrotate + /bin/kill -HUP `cat /var/run/cups.pid 2>/dev/null` 2>/dev/null || true + endscript +} diff --git a/abs/extra/cups/fix-infinite-usb-loop.patch b/abs/extra/cups/fix-infinite-usb-loop.patch deleted file mode 100644 index bad179e..0000000 --- a/abs/extra/cups/fix-infinite-usb-loop.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff -urNad cups-1.4.0~/backend/usb-libusb.c cups-1.4.0/backend/usb-libusb.c ---- cups-1.4.0~/backend/usb-libusb.c 2009-08-08 00:24:14.000000000 +0200 -+++ cups-1.4.0/backend/usb-libusb.c 2009-09-02 16:37:31.000000000 +0200 -@@ -158,7 +158,7 @@ - - while (poll(pfds, 2, -1) > 0) - { -- if (pfds[0].revents & POLLIN) -+ if (pfds[0].revents & (POLLIN + POLLHUP)) - { - if ((bytes = read(print_fd, buffer, sizeof(buffer))) > 0) - { -@@ -179,7 +179,12 @@ - } - - if (pfds[1].revents & POLLIN) -- tbytes += side_cb(printer, print_fd); -+ { -+ if ((bytes = side_cb(printer, print_fd)) < 0) -+ pfds[1].events = 0; /* Filter has gone away... */ -+ else -+ tbytes += bytes; -+ } - } - } - -@@ -747,7 +752,7 @@ - if (cupsSideChannelRead(&command, &status, data, &datalen, 1.0)) - { - _cupsLangPuts(stderr, _("WARNING: Failed to read side-channel request!\n")); -- return (0); -+ return (-1); - } - - switch (command) diff --git a/abs/extra/cvs/PKGBUILD b/abs/extra/cvs/PKGBUILD deleted file mode 100644 index 26b95db..0000000 --- a/abs/extra/cvs/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 75326 2010-04-01 10:25:20Z allan $ -# Contributor: dorphell <dorphell@archlinux.org> - -pkgname=cvs -pkgver=1.11.23 -pkgrel=5 -pkgdesc="Concurrent Versions System - a source control system" -arch=(i686 x86_64) -url="http://cvs.nongnu.org" -license=('GPL') -depends=('heimdal>=1.3.1') -optdepends=('openssh: for using cvs over ssh' 'inetutils: for using cvs over rsh') -install=cvs.install -source=(ftp://ftp.gnu.org/non-gnu/cvs/source/stable/$pkgver/$pkgname-$pkgver.tar.bz2 - cvs-1.11.23-getline64.patch) -sha256sums=('400f51b59d85116e79b844f2d5dbbad4759442a789b401a94aa5052c3d7a4aa9' - '9126d7992ace943980ad8a10d5a09aeb6f1eeeb9b921fc796fe31de7b1c220cf') - -build() { - cd $srcdir/$pkgname-$pkgver - unset EDITOR VISUAL - - patch -Np1 -i $srcdir/cvs-1.11.23-getline64.patch || return 1 - ./configure --prefix=/usr - make || return 1 - make DESTDIR=$pkgdir install - rm ${pkgdir}/usr/share/info/dir -} diff --git a/abs/extra/cvs/cvs-1.11.23-getline64.patch b/abs/extra/cvs/cvs-1.11.23-getline64.patch deleted file mode 100644 index 99942e0..0000000 --- a/abs/extra/cvs/cvs-1.11.23-getline64.patch +++ /dev/null @@ -1,34 +0,0 @@ ---- cvs-1.11.23/lib/getline.c 2005-04-04 22:46:05.000000000 +0200 -+++ cvs-1.11.23/lib/getline.c.old 2008-06-03 19:06:25.000000000 +0200 -@@ -154,7 +154,7 @@ - return ret; - } - --int -+ssize_t - getline (lineptr, n, stream) - char **lineptr; - size_t *n; -@@ -163,7 +163,7 @@ - return getstr (lineptr, n, stream, '\n', 0, GETLINE_NO_LIMIT); - } - --int -+ssize_t - getline_safe (lineptr, n, stream, limit) - char **lineptr; - size_t *n; ---- cvs-1.11.23/lib/getline.h 2005-04-04 22:46:05.000000000 +0200 -+++ cvs-1.11.23/lib/getline.h.old 2008-06-03 19:06:27.000000000 +0200 -@@ -11,9 +11,9 @@ - - #define GETLINE_NO_LIMIT -1 - --int -+ssize_t - getline __PROTO ((char **_lineptr, size_t *_n, FILE *_stream)); --int -+ssize_t - getline_safe __PROTO ((char **_lineptr, size_t *_n, FILE *_stream, - int limit)); - int diff --git a/abs/extra/cvs/cvs.install b/abs/extra/cvs/cvs.install deleted file mode 100644 index f1cdd1f..0000000 --- a/abs/extra/cvs/cvs.install +++ /dev/null @@ -1,20 +0,0 @@ -infodir=/usr/share/info -filelist=(cvs.info cvs-info-1 cvs-info-2 cvsclient.info) - -post_install() { - for file in ${filelist[@]}; do - install-info $infodir/$file $infodir/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - for file in ${filelist[@]}; do - install-info --delete $infodir/$file $infodir/dir 2> /dev/null - done -} - -# vim:set ts=2 sw=2 et: diff --git a/abs/extra/dbus-c++/PKGBUILD b/abs/extra/dbus-c++/PKGBUILD new file mode 100644 index 0000000..d79922e --- /dev/null +++ b/abs/extra/dbus-c++/PKGBUILD @@ -0,0 +1,40 @@ +# Maintainer: Ray Rashif <schiv@archlinux.org> +# Contributor: Xavier D. <magicrhesus@ouranos.be> +# Contributor: Zarra <zarraxx@gmail.com> + +pkgname=dbus-c++ +_pkgname=lib$pkgname +pkgver=0.9.0 +pkgrel=4 +pkgdesc="A C++ API for D-BUS" +url="http://sourceforge.net/projects/dbus-cplusplus/" +arch=('i686' 'x86_64') +license=('GPL') +depends=('dbus>=1.2.0' 'glib2') +makedepends=('autoconf' 'automake' 'libtool') +options=('!libtool') +source=("http://sourceforge.net/projects/dbus-cplusplus/files/dbus-c%2B%2B/$pkgver/libdbus-c%2B%2B-$pkgver.tar.gz" + 'gcc47.patch') +md5sums=('e752116f523fa88ef041e63d3dee4de2' + '9319b402b15f37d881b51bc758368900') + +build() { + cd "$srcdir/$_pkgname-$pkgver" + + patch -Np0 -i "$srcdir/gcc47.patch" + export LDFLAGS+=" -lexpat -lpthread" # -lpthread needed for i686 + + ./autogen.sh --prefix=/usr \ + --disable-static \ + --enable-glib \ + --disable-ecore + make +} + +package() { + cd "$srcdir/$_pkgname-$pkgver" + + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/dbus-c++/gcc47.patch b/abs/extra/dbus-c++/gcc47.patch new file mode 100644 index 0000000..6a82773 --- /dev/null +++ b/abs/extra/dbus-c++/gcc47.patch @@ -0,0 +1,10 @@ +--- src/eventloop-integration.cpp.orig 2012-05-09 11:22:09.683290763 +0200 ++++ src/eventloop-integration.cpp 2012-05-09 11:22:44.313288912 +0200 +@@ -38,6 +38,7 @@ + #include <cassert> + #include <sys/poll.h> + #include <fcntl.h> ++#include <unistd.h> + + using namespace DBus; + using namespace std; diff --git a/abs/extra/dconf/PKGBUILD b/abs/extra/dconf/PKGBUILD index 4d95f6b..8b4743d 100644 --- a/abs/extra/dconf/PKGBUILD +++ b/abs/extra/dconf/PKGBUILD @@ -1,26 +1,31 @@ -# $Id: +# $Id: PKGBUILD 161615 2012-06-12 13:50:01Z heftig $ # Maintainer: Ionut Biru <ibiru@archlinux.org> + pkgname=dconf -pkgver=0.5.1 -pkgrel=1 +pkgver=0.12.1 +pkgrel=2 pkgdesc="A low-level configuration system." arch=(i686 x86_64) url="http://live.gnome.org/dconf" license=('LGPL2.1') -depends=('glib2>=2.25.17') -makedepends=('vala' 'gobject-introspection' 'gtk2') -optdepends=('gtk2: for dconf-editor') +depends=('glib2' 'gtk-update-icon-cache') +makedepends=('vala' 'gtk3') +optdepends=('gtk3: for dconf-editor') install=dconf.install -source=(http://download.gnome.org/sources/${pkgname}/0.5/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('0083d70e1b5e540d8d4b3f04fa5d17dff4c574136682fe3bdd9b5ecc196ec4f6') +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('3cd32b78d88ed7be90dace5d45e2cf8a6abdb253d43dbfa5ef52103b329dc214') build() { - cd "$srcdir/$pkgname-$pkgver" + cd "$pkgname-$pkgver" - ./configure --prefix=/usr \ + ./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib/dconf make - make DESTDIR="$pkgdir/" install +} + +package() { + cd "$pkgname-$pkgver" + make completiondir=/usr/share/bash-completion/completions DESTDIR="$pkgdir" install } # vim:set ts=2 sw=2 et: diff --git a/abs/extra/dconf/dconf.install b/abs/extra/dconf/dconf.install index 5a87df8..75d713d 100644 --- a/abs/extra/dconf/dconf.install +++ b/abs/extra/dconf/dconf.install @@ -1,5 +1,7 @@ post_install() { - usr/bin/gio-querymodules usr/lib/gio/modules + gio-querymodules /usr/lib/gio/modules + glib-compile-schemas /usr/share/glib-2.0/schemas + gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor } post_upgrade(){ diff --git a/abs/extra/dcraw/PKGBUILD b/abs/extra/dcraw/PKGBUILD index 8ae9657..9c2571b 100644 --- a/abs/extra/dcraw/PKGBUILD +++ b/abs/extra/dcraw/PKGBUILD @@ -1,25 +1,25 @@ -# $Id$ +# $Id: PKGBUILD 162767 2012-06-29 22:10:56Z eric $ # Maintainer: tobias <tobias@archlinux.org> # Contributor: Tobias Kieslich <tobias@justdreams.de> pkgname=dcraw -pkgver=9.08 +pkgver=9.15 pkgrel=1 pkgdesc="A command line based converter for digicams raw output" arch=('i686' 'x86_64') url="http://www.cybercom.net/~dcoffin/dcraw/" license=('custom') -depends=('lcms') +depends=('lcms' 'jasper') source=(http://www.cybercom.net/~dcoffin/dcraw/archive/${pkgname}-${pkgver}.tar.gz license.txt) -md5sums=('eb1d365c27495a513c0768b2f696ba66' - '110b4604a6dacd5537339c4082e9e12a') -sha1sums=('1282402201ca48f922d9167ad078aa58cb18593e' +sha1sums=('0b06047603640fe19b5d3b2461319d6ba22eee6a' '502c8f0ac7434d48f5dcb2eefe7599627cb69454') build() { cd "${srcdir}/${pkgname}" - gcc ${CFLAGS} -O3 -o dcraw dcraw.c -lm -ljpeg -llcms -DLOCALEDIR=\"/usr/share/locale/\" + gcc ${CFLAGS} -O3 -o dcraw dcraw.c \ + -Wall -Wno-unused-result -Wno-array-bounds \ + -lm -ljasper -ljpeg -llcms -DLOCALEDIR=\"/usr/share/locale/\" } package() { diff --git a/abs/extra/dcraw/dcraw.install b/abs/extra/dcraw/dcraw.install deleted file mode 100644 index 2635964..0000000 --- a/abs/extra/dcraw/dcraw.install +++ /dev/null @@ -1,13 +0,0 @@ -post_install() { - cat << EOF - -NOTE for dcraw: ----- - ==> dcraw provides the simple commandline tools for raw conversion. If you - ==> are looking for a more sophisticated way consider gimp-ufraw, which - ==> provides a gimp-plugin and a standalone application that can even convert - ==> to 16-bit tiff files (which you can use in cinepaint eg.) So please do a - ==> 'pacman -S gimp-ufraw' to get it. - -EOF -} diff --git a/abs/extra/ddrescue/PKGBUILD b/abs/extra/ddrescue/PKGBUILD new file mode 100644 index 0000000..5316569 --- /dev/null +++ b/abs/extra/ddrescue/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 162261 2012-06-24 16:23:55Z schiv $ +# Maintainer: Ray Rashif <schiv@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> +# Contributor: Paul Mattal <paul@archlinux.org> + +pkgname=ddrescue +pkgver=1.16 +pkgrel=1 +pkgdesc="GNU data recovery tool" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/ddrescue/ddrescue.html" +license=('GPL3') +depends=('gcc-libs') +install=$pkgname.install +source=("http://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz" + "http://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz.sig") +md5sums=('57b67407e882c6418531d48a2f20d16b' + 'bf072280587665d82829be15eb6fc9ad') + +build() { + cd "$srcdir"/$pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir"/$pkgname-$pkgver + make DESTDIR="$pkgdir" install install-man + rm "$pkgdir"/usr/share/info/dir +} diff --git a/abs/extra/ddrescue/ddrescue.install b/abs/extra/ddrescue/ddrescue.install new file mode 100644 index 0000000..9e2afa7 --- /dev/null +++ b/abs/extra/ddrescue/ddrescue.install @@ -0,0 +1,22 @@ +infodir=/usr/share/info +filelist=(ddrescue.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file $infodir/dir 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/dejagnu/PKGBUILD b/abs/extra/dejagnu/PKGBUILD index bc6136b..cc0b358 100644 --- a/abs/extra/dejagnu/PKGBUILD +++ b/abs/extra/dejagnu/PKGBUILD @@ -1,9 +1,9 @@ -# $Id$ +# $Id: PKGBUILD 144075 2011-12-02 23:05:11Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> pkgname=dejagnu pkgver=1.5 -pkgrel=1 +pkgrel=2 pkgdesc="Framework for testing other programs" arch=('any') url="http://www.gnu.org/software/dejagnu/" @@ -17,15 +17,17 @@ md5sums=('3df1cbca885e751e22d3ebd1ac64dc3c') build() { - cd "$srcdir/$pkgname-$pkgver" - + cd $srcdir/$pkgname-$pkgver ./configure --prefix=/usr make +} + +check() { + cd $srcdir/$pkgname-$pkgver make check } package() { - cd "$srcdir/$pkgname-$pkgver" - - make -j1 DESTDIR="$pkgdir/" install + cd $srcdir/$pkgname-$pkgver + make -j1 DESTDIR=$pkgdir/ install } diff --git a/abs/extra/diffstat/PKGBUILD b/abs/extra/diffstat/PKGBUILD deleted file mode 100644 index f52c2fb..0000000 --- a/abs/extra/diffstat/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 13739 2008-09-28 10:43:08Z giovanni $ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Matthias-Christian Ott <matthias.christian.at.tiscali.de> - -pkgname=diffstat -pkgver=1.53 -pkgrel=1 -pkgdesc="diffstat produces graph of changes introduced by a diff file" -arch=('i686' 'x86_64') -url="http://invisible-island.net/diffstat" -depends=('glibc') -license=('GPL') -source=(ftp://invisible-island.net/$pkgname/$pkgname-$pkgver.tgz) - -build () { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr --mandir=/usr/share/man - make || return 1 -} -package() { - cd $startdir/src/$pkgname-$pkgver - make DESTDIR=$startdir/pkg install -} -md5sums=('0631010aa598a8011259749dd882936a') diff --git a/abs/extra/dnsmasq/PKGBUILD b/abs/extra/dnsmasq/PKGBUILD index f888ccd..1fd617d 100644 --- a/abs/extra/dnsmasq/PKGBUILD +++ b/abs/extra/dnsmasq/PKGBUILD @@ -1,41 +1,51 @@ -# $Id: PKGBUILD 66607 2010-02-01 01:42:17Z giovanni $ -# Maintainer: Paul Mattal <paul@archlinux.org> +# $Id: PKGBUILD 160917 2012-06-07 00:05:24Z dreisner $ +# Maintainer: Dave Reisner <dreisner@archlinux.org> +# Contributor: Paul Mattal <paul@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=dnsmasq -pkgver=2.55 +pkgver=2.62 pkgrel=1 pkgdesc="Lightweight, easy to configure DNS forwarder and DHCP server" url="http://www.thekelleys.org.uk/dnsmasq/doc.html" arch=('i686' 'x86_64') license=('GPL') -depends=('glibc' 'bash') -makedepends=('libcap>=2.16') -backup=('etc/dnsmasq.conf') -install= -source=("http://www.thekelleys.org.uk/$pkgname/$pkgname-$pkgver.tar.gz" - 'rc.dnsmasq') +depends=('glibc' 'dbus-core') +install=$pkgname.install +backup=('etc/dnsmasq.conf' + 'etc/conf.d/dnsmasq') +source=("http://www.thekelleys.org.uk/$pkgname/$pkgname-$pkgver.tar.gz" + 'dnsmasq.confd' + 'rc.dnsmasq' + 'dnsmasq.service') +md5sums=('f47e5cb8f5bac6343f24b2dbe317ab40' + '66479e99123faeab83ebaed709ef95b5' + '819fbdf6440d710616e6df5f8ca9cdba' + '631d8349acbed1b01d4e11d9f42fdb7d') build() { - cd $srcdir/$pkgname-$pkgver + cd "$pkgname-$pkgver" - # Build - make || return 1 + # link against dbus. this ugliness is needed to ensure that the + # compile time opts report properly on startup. yuck. + sed -i '/^#ifdef DNSMASQ_COMPILE_OPTS/ { + i#define HAVE_DBUS + }' src/config.h - # Install - install -d $pkgdir/etc/rc.d || return 1 - make PREFIX=/usr DESTDIR=$pkgdir install || return 1 + make +} + +package() { + cd "$pkgname-$pkgver" + + make BINDIR=/usr/bin PREFIX=/usr DESTDIR="$pkgdir" install - install -D -m755 \ - $srcdir/rc.dnsmasq $pkgdir/etc/rc.d/dnsmasq || return 1 - install -D -m644 \ - dnsmasq.conf.example $pkgdir/etc/dnsmasq.conf || return 1 + install -Dm755 "$srcdir"/rc.dnsmasq "$pkgdir"/etc/rc.d/dnsmasq + install -Dm644 "$srcdir"/dnsmasq.confd "$pkgdir/etc/conf.d/dnsmasq" - # Make the Required Directories for DHCP Server Default Directories - install -d $pkgdir/var/db || return 1 - install -d $pkgdir/var/lib/misc || return 1 + install -Dm644 "dbus/dnsmasq.conf" "$pkgdir"/etc/dbus-1/system.d/dnsmasq.conf + install -Dm644 "dnsmasq.conf.example" "$pkgdir"/etc/dnsmasq.conf + install -Dm644 "$srcdir/dnsmasq.service" "$pkgdir"/usr/lib/systemd/system/dnsmasq.service } # vim: ts=2 sw=2 et ft=sh -md5sums=('b093d7c6bc7f97ae6fd35d048529232a' - 'e956eee1ec24212a3254d2b168187495') diff --git a/abs/extra/dnsmasq/dnsmasq.confd b/abs/extra/dnsmasq/dnsmasq.confd new file mode 100644 index 0000000..933b928 --- /dev/null +++ b/abs/extra/dnsmasq/dnsmasq.confd @@ -0,0 +1,9 @@ +# +# runtime config for dnsmasq +# + +# if unset, dnsmasq will run as nobody. +DNSMASQ_USER=dnsmasq + +# other runtime options. treated as an array. +DNSMASQ_OPTS=() diff --git a/abs/extra/dnsmasq/dnsmasq.install b/abs/extra/dnsmasq/dnsmasq.install new file mode 100644 index 0000000..c2edb7d --- /dev/null +++ b/abs/extra/dnsmasq/dnsmasq.install @@ -0,0 +1,21 @@ +#!/bin/sh + +add_dnsmasq_user() { + if ! getent passwd dnsmasq >/dev/null; then + useradd -r -d / -c 'dnsmasq daemon' -s /sbin/nologin dnsmasq + fi +} + +post_install() { + add_dnsmasq_user +} + +post_upgrade() { + add_dnsmasq_user +} + +post_remove() { + if getent passwd dnsmasq >/dev/null; then + userdel dnsmasq + fi +} diff --git a/abs/extra/dnsmasq/dnsmasq.service b/abs/extra/dnsmasq/dnsmasq.service new file mode 100644 index 0000000..05a1f0b --- /dev/null +++ b/abs/extra/dnsmasq/dnsmasq.service @@ -0,0 +1,13 @@ +[Unit] +Description=A lightweight DHCP and caching DNS server + +[Service] +Type=dbus +BusName=uk.org.thekelleys.dnsmasq +ExecStartPre=/usr/bin/dnsmasq --test +ExecStart=/usr/bin/dnsmasq -k --enable-dbus --user=dnsmasq --pid-file +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target +Alias=dbus-uk.org.thekelleys.dnsmasq diff --git a/abs/extra/dnsmasq/rc.dnsmasq b/abs/extra/dnsmasq/rc.dnsmasq index 1676072..4030c28 100755 --- a/abs/extra/dnsmasq/rc.dnsmasq +++ b/abs/extra/dnsmasq/rc.dnsmasq @@ -2,35 +2,63 @@ . /etc/rc.conf . /etc/rc.d/functions +. /etc/conf.d/dnsmasq -PID=`pidof -o %PPID /usr/sbin/dnsmasq` -case "$1" in +checkconfig() { + local testout + + if ! testout=$(/usr/bin/dnsmasq --test 2>&1); then + echo "$testout" + return 1 + fi + + return 0 +} + +pidfile=/run/dnsmasq.pid +if [[ -r $pidfile ]]; then + read -r PID < "$pidfile" + if [[ ! -d /proc/$PID ]]; then + # stale pidfile + unset PID + rm -f "$pidfile" + fi +fi + +case $1 in start) stat_busy "Starting DNS/DHCP daemon" - [ -z "$PID" ] && /usr/sbin/dnsmasq - if [ $? -gt 0 ] ; then - stat_fail + if [[ -z $PID ]] && checkconfig && + /usr/bin/dnsmasq "--user=${DNSMASQ_USER:-nobody}" \ + "--pid-file=$pidfile" \ + "${DNSMASQ_OPTS[@]}"; then + add_daemon dnsmasq + stat_done else - add_daemon dnsmasq # create the 'state' dir - stat_done + stat_fail fi ;; stop) stat_busy "Stopping DNS/DHCP daemon" - [ "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon dnsmasq # remove the 'state' dir + if [[ $PID ]] && kill "$PID" &> /dev/null; then + # dnsmasq doesn't clean up after itself + rm -f "$pidfile" + rm_daemon dnsmasq stat_done + else + stat_fail fi ;; restart) $0 stop - sleep 5 + sleep 1 $0 start ;; + checkconfig) + # diagnostics will be printed, with zero/non-zero exit + /usr/bin/dnsmasq --test + ;; *) - echo "usage: $0 {start|stop|restart}" + echo "usage: $0 <start|stop|restart|checkconfig>" esac -exit 0 + diff --git a/abs/extra/docbook-xml/LICENSE b/abs/extra/docbook-xml/LICENSE new file mode 100644 index 0000000..e3482f0 --- /dev/null +++ b/abs/extra/docbook-xml/LICENSE @@ -0,0 +1,24 @@ + Copyright 1992-2006 HaL Computer Systems, Inc., + O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software + Corporation, Norman Walsh, Sun Microsystems, Inc., and the + Organization for the Advancement of Structured Information + Standards (OASIS). + + See also http://docbook.org/specs/ + + Permission to use, copy, modify and distribute the DocBook XML DTD + and its accompanying documentation for any purpose and without fee + is hereby granted in perpetuity, provided that the above copyright + notice and this paragraph appear in all copies. The copyright + holders make no representation about the suitability of the DTD for + any purpose. It is provided "as is" without expressed or implied + warranty. + + If you modify the DocBook DTD in any way, except for declaring and + referencing additional sets of general entities and declaring + additional notations, label your DTD as a variant of DocBook. See + the maintenance documentation for more information. + + Please direct all questions, bug reports, or suggestions for + changes to the docbook@lists.oasis-open.org mailing list. For more + information, see http://www.oasis-open.org/docbook/. diff --git a/abs/extra/docbook-xml/PKGBUILD b/abs/extra/docbook-xml/PKGBUILD index feac080..e5996d7 100644 --- a/abs/extra/docbook-xml/PKGBUILD +++ b/abs/extra/docbook-xml/PKGBUILD @@ -1,268 +1,273 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ +# $Id: PKGBUILD 151188 2012-02-25 07:07:26Z pierre $ # Maintainer: dorphell <dorphell@archlinux.org> # Committer: Judd Vinet <jvinet@zeroflux.org> pkgname=docbook-xml pkgver=4.5 -pkgrel=1 +pkgrel=5 pkgdesc="A widely used XML scheme for writing documentation and help" -arch=(i686 x86_64) -url="http://scrollkeeper.sourceforge.net/docbook.shtml" +arch=('any') +url="http://www.oasis-open.org/docbook/" +license=('MIT') depends=('libxml2') -makedepends=('unzip') install=docbook-xml.install -source=(http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip - http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip - http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip - http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip - http://www.docbook.org/xml/4.1.2/docbkx412.zip) +source=('http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip' + 'http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip' + 'http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip' + 'http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip' + 'http://www.docbook.org/xml/4.1.2/docbkx412.zip' + 'LICENSE') noextract=('docbook-xml-4.5.zip' 'docbook-xml-4.4.zip' 'docbook-xml-4.3.zip' 'docbook-xml-4.2.zip' 'docbkx412.zip') md5sums=('03083e288e87a7e829e437358da7ef9e' 'cbb04e9a700955d88c50962ef22c1634' 'ab200202b9e136a144db1e0864c45074' '73fe50dfe74ca631c1602f558ed8961f' - '900d7609fb7e6d78901b357e4acfbc17') + '900d7609fb7e6d78901b357e4acfbc17' + '50e1eea70bc071b812e963e65af6707e') -build() { +package() { for ver in 4.2 4.3 4.4 4.5; do mkdir docbook-xml-${ver} pushd docbook-xml-${ver} - unzip ${startdir}/src/docbook-xml-${ver}.zip - mkdir -p ${startdir}/pkg/usr/share/xml/docbook/xml-dtd-${ver} - cp -af docbook.cat *.dtd ent/ *.mod \ - ${startdir}/pkg/usr/share/xml/docbook/xml-dtd-${ver}/ + bsdtar xf "${srcdir}/docbook-xml-${ver}.zip" + mkdir -p "${pkgdir}/usr/share/xml/docbook/xml-dtd-${ver}" + cp -dRf docbook.cat *.dtd ent/ *.mod \ + "${pkgdir}/usr/share/xml/docbook/xml-dtd-${ver}/" popd done mkdir docbook-xml-4.1.2 pushd docbook-xml-4.1.2 - unzip ${startdir}/src/docbkx412.zip - mkdir -p ${startdir}/pkg/usr/share/xml/docbook/xml-dtd-4.1.2 - cp -af docbook.cat *.dtd ent/ *.mod \ - ${startdir}/pkg/usr/share/xml/docbook/xml-dtd-4.1.2/ + bsdtar xf "${srcdir}/docbkx412.zip" + mkdir -p "${pkgdir}/usr/share/xml/docbook/xml-dtd-4.1.2" + cp -dRf docbook.cat *.dtd ent/ *.mod \ + "${pkgdir}/usr/share/xml/docbook/xml-dtd-4.1.2/" popd - mkdir -p ${startdir}/pkg/etc/xml - xmlcatalog --noout --create ${startdir}/pkg/etc/xml/docbook-xml + mkdir -p "${pkgdir}/etc/xml" + xmlcatalog --noout --create "${pkgdir}/etc/xml/docbook-xml" # V4.1.2 xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML V4.1.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/calstblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/calstblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/soextblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.1.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/dbpoolx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.1.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/dbhierx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.1.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/dbgenent.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/dbnotnx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Character Entities V4.1.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.1.2/dbcentx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteSystem" \ "http://www.oasis-open.org/docbook/xml/4.1.2" \ "file:///usr/share/xml/docbook/xml-dtd-4.1.2" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteURI" \ "http://www.oasis-open.org/docbook/xml/4.1.2" \ "file:///usr/share/xml/docbook/xml-dtd-4.1.2" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" # V4.2 xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML V4.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook CALS Table Model V4.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.2/calstblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ "http://www.oasis-open.org/docbook/xml/4.2/soextblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook Information Pool V4.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.2/dbpoolx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.2/dbhierx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Additional General Entities V4.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.2/dbgenent.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Notations V4.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.2/dbnotnx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Character Entities V4.2//EN" \ "http://www.oasis-open.org/docbook/xml/4.2/dbcentx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteSystem" \ "http://www.oasis-open.org/docbook/xml/4.2" \ "file:///usr/share/xml/docbook/xml-dtd-4.2" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteURI" \ "http://www.oasis-open.org/docbook/xml/4.2" \ "file:///usr/share/xml/docbook/xml-dtd-4.2" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" # V4.3 xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML V4.3//EN" \ "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook CALS Table Model V4.3//EN" \ "http://www.oasis-open.org/docbook/xml/4.3/calstblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ "http://www.oasis-open.org/docbook/xml/4.3/soextblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook Information Pool V4.3//EN" \ "http://www.oasis-open.org/docbook/xml/4.3/dbpoolx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.3//EN" \ "http://www.oasis-open.org/docbook/xml/4.3/dbhierx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Additional General Entities V4.3//EN" \ "http://www.oasis-open.org/docbook/xml/4.3/dbgenent.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Notations V4.3//EN" \ "http://www.oasis-open.org/docbook/xml/4.3/dbnotnx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Character Entities V4.3//EN" \ "http://www.oasis-open.org/docbook/xml/4.3/dbcentx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteSystem" \ "http://www.oasis-open.org/docbook/xml/4.3" \ "file:///usr/share/xml/docbook/xml-dtd-4.3" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteURI" \ "http://www.oasis-open.org/docbook/xml/4.3" \ "file:///usr/share/xml/docbook/xml-dtd-4.3" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" # V4.4 xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML V4.4//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook CALS Table Model V4.4//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/calstblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.4//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/htmltblx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/soextblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook Information Pool V4.4//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/dbpoolx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.4//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/dbhierx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Additional General Entities V4.4//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/dbgenent.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Notations V4.4//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/dbnotnx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook Character Entities V4.4//EN" \ "http://www.oasis-open.org/docbook/xml/4.4/dbcentx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteSystem" \ "http://www.oasis-open.org/docbook/xml/4.4" \ "file:///usr/share/xml/docbook/xml-dtd-4.4" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteURI" \ "http://www.oasis-open.org/docbook/xml/4.4" \ "file:///usr/share/xml/docbook/xml-dtd-4.4" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" # V4.5 xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML V4.5//EN" \ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML CALS Table Model V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/calstblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/soextblx.dtd" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbpoolx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbhierx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/htmltblx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Notations V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbnotnx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Character Entities V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbcentx.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.5//EN" \ "file:///usr/share/xml/docbook/xml-dtd-4.5/dbgenent.mod" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteSystem" \ "http://www.oasis-open.org/docbook/xml/4.5" \ "file:///usr/share/xml/docbook/xml-dtd-4.5" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" xmlcatalog --noout --add "rewriteURI" \ "http://www.oasis-open.org/docbook/xml/4.5" \ "file:///usr/share/xml/docbook/xml-dtd-4.5" \ - ${startdir}/pkg/etc/xml/docbook-xml + "${pkgdir}/etc/xml/docbook-xml" + +# license + install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/abs/extra/docbook-xml/docbook-xml.install b/abs/extra/docbook-xml/docbook-xml.install index c62f65f..97a6243 100644 --- a/abs/extra/docbook-xml/docbook-xml.install +++ b/abs/extra/docbook-xml/docbook-xml.install @@ -40,7 +40,3 @@ post_upgrade() { post_remove() { xmlcatalog --noout --del file:///etc/xml/docbook-xml etc/xml/catalog } - -op=$1 -shift -$op $* diff --git a/abs/extra/docbook-xml/docbook.patch b/abs/extra/docbook-xml/docbook.patch deleted file mode 100644 index 1932f19..0000000 --- a/abs/extra/docbook-xml/docbook.patch +++ /dev/null @@ -1,226 +0,0 @@ -diff -Naur docbookx412-orig/Makefile docbookx412/Makefile ---- docbookx412-orig/Makefile 2002-02-16 11:08:29.000000000 -0800 -+++ docbookx412/Makefile 2002-08-24 12:03:31.000000000 -0700 -@@ -1,7 +1,7 @@ - SHELL=/bin/sh - VERSION=4.1.2-9 --DESTDIR=/usr/share/xml/docbook/xml-dtd-$(VERSION) --CATALOG=/usr/share/xml/docbook/catalog -+DESTDIR=$(ROOT)/usr/share/xml/docbook/xml-dtd-$(VERSION) -+CATALOG=$(ROOT)/usr/share/xml/docbook/catalog - OPENJADEVER=1.3 - - all: -@@ -24,7 +24,7 @@ - # - # - # DocBook XML V4.1.2 -- @./buildDocBookCatalog -+ @./buildDocBookCatalog $(ROOT) - - uninstall: - # -diff -Naur docbookx412-orig/buildDocBookCatalog docbookx412/buildDocBookCatalog ---- docbookx412-orig/buildDocBookCatalog 2002-02-17 09:32:45.000000000 -0800 -+++ docbookx412/buildDocBookCatalog 2002-08-24 12:15:23.000000000 -0700 -@@ -28,16 +28,20 @@ - # Modifications made to Daniel Veillard's catalog build script at - # http://xmlsoft.org/buildDocBookCatalog. - --if [ ! -d /etc/xml -a -w /etc ] -+DESTDIR=$1 -+echo "DESTDIR is $DESTDIR" -+mkdir $DESTDIR/etc -+ -+if [ ! -d $DESTDIR/etc/xml -a -w $DESTDIR/etc ] - then - echo Directory /etc/xml missing creating it -- mkdir /etc/xml -- chmod 755 /etc/xml -+ mkdir $DESTDIR/etc/xml -+ chmod 755 $DESTDIR/etc/xml - fi --if [ -w /etc/xml ] -+if [ -w $DESTDIR/etc/xml ] - then -- ROOTCATALOG=/etc/xml/catalog -- CATALOG=/etc/xml/docbook -+ ROOTCATALOG=$DESTDIR/etc/xml/catalog -+ CATALOG=$DESTDIR/etc/xml/docbook - else - echo Unable to update root catalog /etc/xml/catalog - echo Using $HOME/xmlcatalog as the root catalog -@@ -69,16 +73,7 @@ - # - # find the prefix for DocBook DTD - # --found=`find /usr/share/xml -name docbookx.dtd` --if [ "$found" = "" ] ; then -- found=`find $HOME -name docbookx.dtd` --fi --if [ "$found" = "" ] ; then -- found=`find /usr/local -name docbookx.dtd` --fi --if [ "$found" = "" ] ; then -- found=`find /usr/share/sgml -name docbookx.dtd` --fi -+found=`find $DESTDIR/usr/share/xml -name docbookx.dtd` - if [ "$found" = "" ] ; then - echo could not locate docbookx.dtd for DocBook XML - exit 1 -@@ -105,49 +100,52 @@ - # exit 2 - #fi - -+fakedocbookdir=`echo $docbookdir | sed "s|^$DESTDIR||"` -+FAKECATALOG=`echo $CATALOG | sed "s|^$DESTDIR||"` -+ - xmlcatalog --noout --add "public" \ - "-//OASIS//ELEMENTS DocBook XML Information Pool V4.1.2//EN" \ -- "file://$docbookdir/dbpoolx.mod" $CATALOG -+ "file://$fakedocbookdir/dbpoolx.mod" $CATALOG - xmlcatalog --noout --add "public" \ - "-//OASIS//DTD DocBook XML V4.1.2//EN" \ -- "file://$docbookdir/docbookx.dtd" $CATALOG -+ "file://$fakedocbookdir/docbookx.dtd" $CATALOG - xmlcatalog --noout --add "public" \ - "-//OASIS//ENTITIES DocBook XML Character Entities V4.1.2//EN" \ -- "file://$docbookdir/dbcentx.mod" $CATALOG -+ "file://$fakedocbookdir/dbcentx.mod" $CATALOG - xmlcatalog --noout --add "public" \ - "-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN" \ -- "file://$docbookdir/dbnotnx.mod" $CATALOG -+ "file://$fakedocbookdir/dbnotnx.mod" $CATALOG - xmlcatalog --noout --add "public" \ - "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.1.2//EN" \ -- "file://$docbookdir/dbgenent.mod" $CATALOG -+ "file://$fakedocbookdir/dbgenent.mod" $CATALOG - xmlcatalog --noout --add "public" \ - "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.1.2//EN" \ -- "file://$docbookdir/dbhierx.mod" $CATALOG -+ "file://$fakedocbookdir/dbhierx.mod" $CATALOG - xmlcatalog --noout --add "public" \ - "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ -- "file://$docbookdir/soextblx.dtd" $CATALOG -+ "file://$fakedocbookdir/soextblx.dtd" $CATALOG - xmlcatalog --noout --add "public" \ - "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \ -- "file://$docbookdir/calstblx.dtd" $CATALOG -+ "file://$fakedocbookdir/calstblx.dtd" $CATALOG - xmlcatalog --noout --add "rewriteSystem" \ - "http://www.oasis-open.org/docbook/xml/4.1.2" \ -- "file://$docbookdir" $CATALOG -+ "file://$fakedocbookdir" $CATALOG - xmlcatalog --noout --add "rewriteURI" \ - "http://www.oasis-open.org/docbook/xml/4.1.2" \ -- "file://$docbookdir" $CATALOG -+ "file://$fakedocbookdir" $CATALOG - - xmlcatalog --noout --add "delegatePublic" \ - "-//OASIS//ENTITIES DocBook XML" \ -- "file://$CATALOG" $ROOTCATALOG -+ "file://$FAKECATALOG" $ROOTCATALOG - xmlcatalog --noout --add "delegatePublic" \ - "-//OASIS//DTD DocBook XML" \ -- "file://$CATALOG" $ROOTCATALOG -+ "file://$FAKECATALOG" $ROOTCATALOG - xmlcatalog --noout --add "delegateSystem" \ - "http://www.oasis-open.org/docbook/" \ -- "file://$CATALOG" $ROOTCATALOG -+ "file://$FAKECATALOG" $ROOTCATALOG - xmlcatalog --noout --add "delegateURI" \ - "http://www.oasis-open.org/docbook/" \ -- "file://$CATALOG" $ROOTCATALOG -+ "file://$FAKECATALOG" $ROOTCATALOG - - # - # find the prefix for ISO DocBook entities -@@ -187,66 +185,68 @@ - isodir=`dirname $entxml` - echo Found ISO DocBook entities in $isodir - -+fakeisodir=`echo $isodir | sed "s|^$DESTDIR||"` -+ - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Publishing//EN" \ -- "file://$isodir/iso-pub.ent" $CATALOG -+ "file://$fakeisodir/iso-pub.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Greek Letters//EN" \ -- "file://$isodir/iso-grk1.ent" $CATALOG -+ "file://$fakeisodir/iso-grk1.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Box and Line Drawing//EN" \ -- "file://$isodir/iso-box.ent" $CATALOG -+ "file://$fakeisodir/iso-box.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Greek Symbols//EN" \ -- "file://$isodir/iso-grk3.ent" $CATALOG -+ "file://$fakeisodir/iso-grk3.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN" \ -- "file://$isodir/iso-amsn.ent" $CATALOG -+ "file://$fakeisodir/iso-amsn.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN" \ -- "file://$isodir/iso-num.ent" $CATALOG -+ "file://$fakeisodir/iso-num.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN" \ -- "file://$isodir/iso-grk4.ent" $CATALOG -+ "file://$fakeisodir/iso-grk4.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Diacritical Marks//EN" \ -- "file://$isodir/iso-dia.ent" $CATALOG -+ "file://$fakeisodir/iso-dia.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Monotoniko Greek//EN" \ -- "file://$isodir/iso-grk2.ent" $CATALOG -+ "file://$fakeisodir/iso-grk2.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN" \ -- "file://$isodir/iso-amsa.ent" $CATALOG -+ "file://$fakeisodir/iso-amsa.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN" \ -- "file://$isodir/iso-amso.ent" $CATALOG -+ "file://$fakeisodir/iso-amso.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Russian Cyrillic//EN" \ -- "file://$isodir/iso-cyr1.ent" $CATALOG -+ "file://$fakeisodir/iso-cyr1.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES General Technical//EN" \ -- "file://$isodir/iso-tech.ent" $CATALOG -+ "file://$fakeisodir/iso-tech.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN" \ -- "file://$isodir/iso-amsc.ent" $CATALOG -+ "file://$fakeisodir/iso-amsc.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Added Latin 1//EN" \ -- "file://$isodir/iso-lat1.ent" $CATALOG -+ "file://$fakeisodir/iso-lat1.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN" \ -- "file://$isodir/iso-amsb.ent" $CATALOG -+ "file://$fakeisodir/iso-amsb.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Added Latin 2//EN" \ -- "file://$isodir/iso-lat2.ent" $CATALOG -+ "file://$fakeisodir/iso-lat2.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN" \ -- "file://$isodir/iso-amsr.ent" $CATALOG -+ "file://$fakeisodir/iso-amsr.ent" $CATALOG - xmlcatalog --noout --add "public" \ - "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN" \ -- "file://$isodir/iso-cyr2.ent" $CATALOG -+ "file://$fakeisodir/iso-cyr2.ent" $CATALOG - - xmlcatalog --noout --add "delegatePublic" \ - "ISO 8879:1986" \ -- "file://$CATALOG" $ROOTCATALOG -+ "file://$FAKECATALOG" $ROOTCATALOG - # - # diff --git a/abs/extra/docbook-xsl/PKGBUILD b/abs/extra/docbook-xsl/PKGBUILD index 1f0f684..aef4b1e 100644 --- a/abs/extra/docbook-xsl/PKGBUILD +++ b/abs/extra/docbook-xsl/PKGBUILD @@ -1,37 +1,35 @@ -# $Id: PKGBUILD 20950 2008-12-08 05:32:07Z allan $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributer: Sean Middleditch <elanthis@awesomeplay.com> +# $Id: PKGBUILD 162687 2012-06-27 22:24:21Z tomegun $ +# Maintainer: Tom Gundersen <teg@jklm.no> +# Contributor: Jan de Groot <jgc@archlinux.org> +# Contributor: Sean Middleditch <elanthis@awesomeplay.com> +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=docbook-xsl -pkgver=1.76.0 -pkgrel=1 -pkgdesc="XML stylesheets for Docbook-xml transformations." -arch=(i686 x86_64) +pkgver=1.77.1 +pkgrel=2 +pkgdesc='XML stylesheets for Docbook-xml transformations' +arch=('any') license=('custom') -url="http://scrollkeeper.sourceforge.net/docbook.shtml" +url='http://docbook.sourceforge.net/' depends=('libxml2' 'libxslt' 'docbook-xml') -source=(http://downloads.sourceforge.net/sourceforge/docbook/docbook-xsl-${pkgver}.tar.bz2) -install=docbook-xsl.install +install="$pkgname.install" +source=("http://downloads.sourceforge.net/docbook/${pkgname}-${pkgver}.tar.bz2") -build() { - cd ${srcdir}/${pkgname}-${pkgver} - mkdir -p ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/common - install -m644 common/*.{xml,xsl,dtd,ent} ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/common/ +package() { + cd ${srcdir}/${pkgname}-${pkgver} - mkdir -p ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/params - install -m644 params/*.xml ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/params/ + _pkgroot=${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver} - for fn in fo highlighting html roundtrip; do - mkdir -p ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/${fn} - install -m644 ${fn}/*.{xml,xsl} ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/${fn}/ - done - for fn in eclipse htmlhelp javahelp lib manpages profiling template website xhtml; do - mkdir -p ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/${fn} - install -m644 ${fn}/*.xsl ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/${fn}/ - done - mkdir -p ${pkgdir}/etc/xml - install -m644 VERSION ${pkgdir}/usr/share/xml/docbook/xsl-stylesheets-${pkgver}/ + install -dm755 ${_pkgroot} + install -m644 VERSION VERSION.xsl ${_pkgroot} - install -m644 -D COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING + for fn in assembly common eclipse epub epub3 fo highlighting html htmlhelp javahelp lib \ + manpages params profiling roundtrip template website xhtml xhtml-1_1 xhtml5; do + install -dm755 ${_pkgroot}/${fn} + install -m644 ${fn}/*.{xml,xsl,dtd,ent} ${_pkgroot}/${fn} || true # ignore missing files + done + + install -dm755 ${pkgdir}/etc/xml + install -Dm644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE } -md5sums=('6413843525fcaa7f58e4bd30d5192270') +md5sums=('a88dbdc0cd74702656083b6e4e4241d8') diff --git a/abs/extra/docbook-xsl/docbook-xsl.install b/abs/extra/docbook-xsl/docbook-xsl.install index a8ea3e7..c84d929 100644 --- a/abs/extra/docbook-xsl/docbook-xsl.install +++ b/abs/extra/docbook-xsl/docbook-xsl.install @@ -1,6 +1,6 @@ post_install() { - if [ ! -f /etc/xml/catalog ]; then - xmlcatalog --noout --create /etc/xml/catalog + if [ ! -f etc/xml/catalog ]; then + xmlcatalog --noout --create etc/xml/catalog fi _NEW=`echo $1 | sed 's|\(.*\)\-.*|\1|'` @@ -39,9 +39,3 @@ post_remove() { xmlcatalog --noout --del "file:///etc/xml/docbook" etc/xml/catalog fi } - -op=$1 -shift - -$op $* - diff --git a/abs/extra/docbook2x/PKGBUILD b/abs/extra/docbook2x/PKGBUILD index 42dab69..4bc84cd 100644 --- a/abs/extra/docbook2x/PKGBUILD +++ b/abs/extra/docbook2x/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 19671 2010-06-26 17:37:44Z spupykin $ +# $Id: PKGBUILD 67604 2012-03-13 14:04:01Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Alessio 'mOLOk' Bolognino <themolok@gmail.com> pkgname=docbook2x pkgver=0.8.8 -pkgrel=9 +pkgrel=11 pkgdesc="A software package that converts DocBook documents into the traditional Unix man page format and the GNU Texinfo format." arch=('i686' 'x86_64') url="http://docbook2x.sourceforge.net" license=("MIT") -depends=('glibc' 'perl-sgmls' 'perlxml' 'perl-xml-sax' 'libxslt') +depends=('glibc' 'perl-sgmls' 'perlxml' 'perl-xml-sax' 'libxslt' 'jade') makedepends=('texinfo') install=docbook2x.install source=(http://downloads.sourceforge.net/$pkgname/docbook2X-$pkgver.tar.gz diff --git a/abs/extra/community/dolphin-emu/Dolphin_Logo.png b/abs/extra/dolphin-emu/Dolphin_Logo.png Binary files differindex 63450da..63450da 100644 --- a/abs/extra/community/dolphin-emu/Dolphin_Logo.png +++ b/abs/extra/dolphin-emu/Dolphin_Logo.png diff --git a/abs/extra/dolphin-emu/PKGBUILD b/abs/extra/dolphin-emu/PKGBUILD new file mode 100644 index 0000000..04547f2 --- /dev/null +++ b/abs/extra/dolphin-emu/PKGBUILD @@ -0,0 +1,92 @@ +# Maintainer: schuay <jakob.gruber@gmail.com> +# Contributor: Jeremy Newton (Mystro256) +# Special thanks to the contributors of dolphin-emu-svn: for the icon, desktop file and some lines from the PKGBUILD +# Thanks to all that contributed! :) + +pkgname=dolphin-emu +pkgver=3.0 +pkgrel=12 +epoch=1 +pkgdesc="A GameCube and Wii emulator (stable git branch)" +arch=('i686' 'x86_64') +url="http://www.dolphin-emulator.com/" +license=('GPL2') + +makedepends=('git' 'cmake' 'glproto' 'opencl-headers') +depends=('sdl' 'libxxf86vm' 'libao' 'wxgtk' 'wiiuse' 'nvidia-cg-toolkit' \ + 'glew' 'mesa' 'libgl' 'openal' 'lzo2') + #'glew' 'mesa' 'libgl' 'openal' 'portaudio' 'lzo2') + +# Cannot be BUILT with sfml later than 1.6 +# IF YOU NEED SFML>=1.7 FOR SOMETHING ELSE, TRY REMOVING THE CONFLICT +# BELOW AND ONLY TEMPORARY UNINSTALLING SFML TO BUILD/INSTALL DOLPHIN +conflicts=('dolphin-emu-git' 'sfml>=1.7' 'sfml-git') +install="${pkgname}.install" +source=('dolphin-emu.desktop' + 'unistd.diff' + 'Dolphin_Logo.png' + 'dolphin-emu.xml' + 'dolphin-emu_games.xml' + 'dolphin-emu_scan.sh' + 'gen_lib_dolphin-emu.conf') + +_gitroot=https://code.google.com/p/dolphin-emu/ +_gitname=dolphin-emu-3.0 + +build() { + cd "$srcdir" + msg "Connecting to GIT server...." + + if [[ -d "$_gitname" ]]; then + cd "$_gitname" && git pull origin 3.0 + msg "The local files are updated." + else + git clone "$_gitroot" "$_gitname" + fi + + msg "GIT checkout done or server timeout" + msg "Starting build..." + + rm -rf "$srcdir/$_gitname-build" + git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build" + cd "$srcdir/$_gitname-build" + +# msg "Checking out at stable 3.0 branch" +# git checkout 3.0 + + msg "GIT checkout done or server timeout" + + patch -Np2 < ${srcdir}/unistd.diff + + mkdir build && cd build + export CXXFLAGS="$CXXFLAGS -fpermissive" + cmake .. -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package() { + cd "${srcdir}/dolphin-emu-3.0-build/build" + + make DESTDIR=${pkgdir} install + + mkdir -p "${pkgdir}"/usr/share/mythtv/themes/defaultmenu + mkdir -p "${pkgdir}"/usr/LH/bin + + install -Dm644 "${srcdir}/dolphin-emu.desktop" "${pkgdir}/usr/share/applications/dolphin-emu.desktop" + install -Dm644 "${srcdir}/Dolphin_Logo.png" "${pkgdir}/usr/share/pixmaps/dolphin-emu.png" + cp "${srcdir}/dolphin-emu.xml" "${pkgdir}/usr/share/mythtv/themes/defaultmenu" + cp "${srcdir}/dolphin-emu_games.xml" "${pkgdir}/usr/share/mythtv/themes/defaultmenu" + install -m755 "${srcdir}/dolphin-emu_scan.sh" "${pkgdir}/usr/LH/bin" + #add in file for gen_game.xml + install -D -m0744 ${srcdir}/gen_lib_dolphin-emu.conf ${pkgdir}/etc/gen_game_xml.d/dolphin-emu.conf +} + +# vim:set ts=2 sw=2 et: + +md5sums=('feed4580c2e6bfbc7f6c67dad861daae' + 'a463b96d02462b5f6b0894f6ced821ab' + 'd15c51f547b4bd47e510faac40bcc9d6' + 'ab7a9b9cfe03db65c881134c0f02bda0' + '1d03499e0abab56285bc97176d311bf1' + 'af44dd20626ce26d0a07dadc37c20233' + '9884a9769c1954ab9dcb0727c8c81984') diff --git a/abs/extra/dolphin-emu/__changelog b/abs/extra/dolphin-emu/__changelog new file mode 100644 index 0000000..113934d --- /dev/null +++ b/abs/extra/dolphin-emu/__changelog @@ -0,0 +1,5 @@ +6/9/12 -chw- +Added install file, and mythtv menu files. +removed portaudio because it drug in jack + +--converted .install file to use gen_game_xml.py diff --git a/abs/extra/community/dolphin-emu/dolphin-emu.desktop b/abs/extra/dolphin-emu/dolphin-emu.desktop index 96317d1..96317d1 100644 --- a/abs/extra/community/dolphin-emu/dolphin-emu.desktop +++ b/abs/extra/dolphin-emu/dolphin-emu.desktop diff --git a/abs/extra/dolphin-emu/dolphin-emu.install b/abs/extra/dolphin-emu/dolphin-emu.install new file mode 100644 index 0000000..84b587f --- /dev/null +++ b/abs/extra/dolphin-emu/dolphin-emu.install @@ -0,0 +1,11 @@ +post_install() { + gen_game_xml.py +} + +post_upgrade() { + gen_game_xml.py +} + +post_remove() { + gen_game_xml.py +} diff --git a/abs/extra/community/dolphin-emu/dolphin-emu.xml b/abs/extra/dolphin-emu/dolphin-emu.xml index 5aaf1a1..5aaf1a1 100644 --- a/abs/extra/community/dolphin-emu/dolphin-emu.xml +++ b/abs/extra/dolphin-emu/dolphin-emu.xml diff --git a/abs/extra/community/dolphin-emu/dolphin-emu_games.xml b/abs/extra/dolphin-emu/dolphin-emu_games.xml index fdd19d9..fdd19d9 100644 --- a/abs/extra/community/dolphin-emu/dolphin-emu_games.xml +++ b/abs/extra/dolphin-emu/dolphin-emu_games.xml diff --git a/abs/extra/community/dolphin-emu/dolphin-emu_scan.sh b/abs/extra/dolphin-emu/dolphin-emu_scan.sh index 804553e..804553e 100644 --- a/abs/extra/community/dolphin-emu/dolphin-emu_scan.sh +++ b/abs/extra/dolphin-emu/dolphin-emu_scan.sh diff --git a/abs/extra/vim/Removing b/abs/extra/dolphin-emu/dolphin_emu.confcd index e69de29..e69de29 100644 --- a/abs/extra/vim/Removing +++ b/abs/extra/dolphin-emu/dolphin_emu.confcd diff --git a/abs/extra/dolphin-emu/gen_lib_dolphin-emu.conf b/abs/extra/dolphin-emu/gen_lib_dolphin-emu.conf new file mode 100644 index 0000000..51b89d0 --- /dev/null +++ b/abs/extra/dolphin-emu/gen_lib_dolphin-emu.conf @@ -0,0 +1,7 @@ +<!--#Dolphin-Emu--> + <button> + <type>MENU_GAME</type> + <text>Dolphin Emulator</text> + <action>MENU dolphin-emu.xml</action> + </button> +<!--#Dolphin-Emu--> diff --git a/abs/extra/community/dolphin-emu/unistd.diff b/abs/extra/dolphin-emu/unistd.diff index 2b39063..2b39063 100644 --- a/abs/extra/community/dolphin-emu/unistd.diff +++ b/abs/extra/dolphin-emu/unistd.diff diff --git a/abs/extra/doxygen/PKGBUILD b/abs/extra/doxygen/PKGBUILD index 19ca9c8..d877cd2 100644 --- a/abs/extra/doxygen/PKGBUILD +++ b/abs/extra/doxygen/PKGBUILD @@ -1,7 +1,7 @@ # $Id: PKGBUILD 84267 2010-06-28 05:13:23Z dan $ # Maintainer: Dan McGee <dan@archlinux.org> pkgname=doxygen -pkgver=1.7.2 +pkgver=1.8.2 pkgrel=1 pkgdesc="A documentation system for C++, C, Java, IDL and PHP" license=('GPL') @@ -21,6 +21,5 @@ build() { make INSTALL=${startdir}/pkg/usr MAN1DIR=share/man/man1 install } -md5sums=('13e76e10fb55581a16ee04de35c264f0') -md5sums=('d5f3e32474186abc64288db6b8ffd7f0') +md5sums=('6fa7baf995fa3f71cfc09e264ba88a83') diff --git a/abs/extra/dpgconv/PKGBUILD b/abs/extra/dpgconv/PKGBUILD deleted file mode 100644 index 82fe117..0000000 --- a/abs/extra/dpgconv/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# Contributor: Nick B <Shirakawasuna at gmail _dot_com> -pkgname=dpgconv -pkgver=9 -pkgrel=1 -pkgdesc="This is a converter to produce DPG movies for Moonshell software for Nintendo DS." -arch=('i686' 'x86_64') -url="http://theli.is-a-geek.org/blog/static/dpgconv" -license=('GPL2') -depends=('mpeg_stat' 'mplayer') -source=(http://theli.is-a-geek.org/files/dpgconv/dpgconv-$pkgver.py.bz2 - dpgconv-panscan.patch) - -build() { - -cd $startdir/src -patch < dpgconv-panscan.patch -install -m755 -D $startdir/src/dpgconv-$pkgver.py $startdir/pkg/usr/bin/dpgconv-$pkgver.py -cd $startdir/pkg/usr/bin -ln -s dpgconv-$pkgver.py dpgconv.py -} -md5sums=('fa61ceb4ebb241e98fc005aed86406e5') - diff --git a/abs/extra/dpgconv/dpgconv-panscan.patch b/abs/extra/dpgconv/dpgconv-panscan.patch deleted file mode 100644 index 471d518..0000000 --- a/abs/extra/dpgconv/dpgconv-panscan.patch +++ /dev/null @@ -1,83 +0,0 @@ ---- dpgconv-9.py.old 2009-10-28 19:33:46.000000000 +1030 -+++ dpgconv-9.py 2009-10-28 19:28:01.000000000 +1030 -@@ -49,9 +49,12 @@ - --width xxx - destination video width (default: 256) - --keep-aspect -- try to keep aspect ratio -+ try to keep aspect ratio by letterboxing -+ --keep-aspect-panscan -+ try to keep aspect ratio by cropping original - - NOTE: width/height have no effect when --keep-aspect is set -+ --keep-aspect-panscan overrides --keep-aspect - - --mv - additional parameters for mencoder for video -@@ -150,8 +153,38 @@ - v_pf = "format=rgb24," - options.pf = 3 - -- if options.aspect: -- aspect = commands.getoutput( MPLAYER + " -frames 1 -vo null -ao null -identify \"" + file + "\" | grep -E \"^ID_VIDEO_ASPECT\"") -+ crop="" -+ if options.panscan: -+ options.width=256 -+ options.height=192 -+ -+ aspect = commands.getoutput( MPLAYER + " -frames 1 -vo null -ao null -identify \"" + file + "\" | grep -E \"^ID_VIDEO_ASPECT\" | tail -1") -+ p1 = re.compile ("ID_VIDEO_ASPECT=(.*)") -+ m1 = p1.search( aspect ) -+ width = commands.getoutput( MPLAYER + " -frames 1 -vo null -ao null -identify \"" + file + "\" | grep -E \"^ID_VIDEO_WIDTH\" | tail -1") -+ p2 = re.compile ("ID_VIDEO_WIDTH=(.*)") -+ m2 = p2.search( width ) -+ height = commands.getoutput( MPLAYER + " -frames 1 -vo null -ao null -identify \"" + file + "\" | grep -E \"^ID_VIDEO_HEIGHT\" | tail -1") -+ p3 = re.compile ("ID_VIDEO_HEIGHT=(.*)") -+ m3 = p3.search( height ) -+ if m1 and m2 and m3: -+ print "Input Aspect %s" % m1.group(1) -+ print "Input Width %s" % m2.group(1) -+ print "Input Height %s" % m3.group(1) -+ ar = float (m1.group(1)) -+ iw = int (m2.group(1)) -+ ih = int (m3.group(1)) -+ if aspect > 1.333333: -+ cropw=int(round(iw / ar * 4 / 3, 0)) -+ croph=ih -+ else: -+ cropw=iw -+ croph=int(round(ih * ar * 3 / 4, 0)) -+ crop="crop="+`cropw`+":"+`croph`+"," -+ print crop -+ -+ elif options.aspect: -+ aspect = commands.getoutput( MPLAYER + " -frames 1 -vo null -ao null -identify \"" + file + "\" | grep -E \"^ID_VIDEO_ASPECT\" | tail -1") - p = re.compile ("ID_VIDEO_ASPECT=(.*)") - m = p.search( aspect ) - if m: -@@ -169,13 +202,13 @@ - if options.fps < 24: - print "mencoder won't work with double pass and fps < 24, forcing fps = 24" - options.fps = 24 -- v_cmd = ( " \""+ file +"\" -v -ofps " + `options.fps` + " -sws 9 -vf " + v_pf + "scale=" + `options.width` + ":" + `options.height` +":::3,harddup -nosound -ovc lavc -lavcopts vcodec=mpeg1video:vstrict=-2:mbd=2:trell:cbp:mv0:vmax_b_frames=2:cmp=6:subcmp=6:precmp=6:dia=4:predia=4:bidir_refine=4:mv0_threshold=0:last_pred=3:vbitrate=" + `options.vbps` ) -+ v_cmd = ( " \""+ file +"\" -v -ofps " + `options.fps` + " -sws 9 -vf " + v_pf + crop + "scale=" + `options.width` + ":" + `options.height` +":::3,harddup -nosound -ovc lavc -lavcopts vcodec=mpeg1video:vstrict=-2:mbd=2:trell:cbp:mv0:vmax_b_frames=2:cmp=6:subcmp=6:precmp=6:dia=4:predia=4:bidir_refine=4:mv0_threshold=0:last_pred=3:vbitrate=" + `options.vbps` ) - elif options.hq: -- v_cmd = ( " \""+ file +"\" -v -ofps " + `options.fps` + " -sws 9 -vf " + v_pf + "scale=" + `options.width` + ":" + `options.height` +":::3,harddup -nosound -ovc lavc -lavcopts vcodec=mpeg1video:vstrict=-2:mbd=2:trell:cbp:mv0:cmp=6:subcmp=6:precmp=6:dia=3:predia=3:last_pred=3:vbitrate=" + `options.vbps` + " -o " + MPGTMP + " -of rawvideo" ) -+ v_cmd = ( " \""+ file +"\" -v -ofps " + `options.fps` + " -sws 9 -vf " + v_pf + crop + "scale=" + `options.width` + ":" + `options.height` +":::3,harddup -nosound -ovc lavc -lavcopts vcodec=mpeg1video:vstrict=-2:mbd=2:trell:cbp:mv0:cmp=6:subcmp=6:precmp=6:dia=3:predia=3:last_pred=3:vbitrate=" + `options.vbps` + " -o " + MPGTMP + " -of rawvideo" ) - elif options.lq: -- v_cmd = ( " \"" + file + "\" -v -ofps " + `options.fps` + " -vf " + v_pf + "scale=" + `options.width` + ":" + `options.height` + ",harddup -nosound -ovc lavc -lavcopts vcodec=mpeg1video:vstrict=-2:vbitrate=" + `options.vbps` + " -o " + MPGTMP + " -of rawvideo" ) -+ v_cmd = ( " \"" + file + "\" -v -ofps " + `options.fps` + " -vf " + v_pf + crop + "scale=" + `options.width` + ":" + `options.height` + ",harddup -nosound -ovc lavc -lavcopts vcodec=mpeg1video:vstrict=-2:vbitrate=" + `options.vbps` + " -o " + MPGTMP + " -of rawvideo" ) - else : -- v_cmd = ( " \""+ file +"\" -v -ofps " + `options.fps` + " -sws 9 -vf " + v_pf + "scale=" + `options.width` + ":" + `options.height` + ":::3,harddup -nosound -ovc lavc -lavcopts vcodec=mpeg1video:vstrict=-2:mbd=2:trell:cbp:mv0:cmp=2:subcmp=2:precmp=2:vbitrate=" + `options.vbps` + " -o " + MPGTMP + " -of rawvideo") -+ v_cmd = ( " \""+ file +"\" -v -ofps " + `options.fps` + " -sws 9 -vf " + v_pf + crop + "scale=" + `options.width` + ":" + `options.height` + ":::3,harddup -nosound -ovc lavc -lavcopts vcodec=mpeg1video:vstrict=-2:mbd=2:trell:cbp:mv0:cmp=2:subcmp=2:precmp=2:vbitrate=" + `options.vbps` + " -o " + MPGTMP + " -of rawvideo") - - if options.nosub: - if options.sub != None: -@@ -459,6 +492,7 @@ - parser.add_option("-a","--abps", type="int", dest="abps", default=128) - parser.add_option("--volnorm", action="store_true", dest="volnorm", default=False) - parser.add_option("--keep-aspect", action="store_true", dest="aspect", default=False) -+parser.add_option("--keep-aspect-panscan", action="store_true", dest="panscan", default=False) - parser.add_option("--height", type="int", dest="height", default=192) - parser.add_option("--width", type="int", dest="width", default=256) - parser.add_option("-z","--hz", type="int", dest="hz", default=32000) diff --git a/abs/extra/efibootmgr/PKGBUILD b/abs/extra/efibootmgr/PKGBUILD new file mode 100755 index 0000000..0fd7bb2 --- /dev/null +++ b/abs/extra/efibootmgr/PKGBUILD @@ -0,0 +1,52 @@ +# $Id: PKGBUILD 156423 2012-04-18 07:53:47Z tpowa $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +# Contributor : Murtuza Akhtari <inxsible at gmail dot com> +# Contributor: Keshav P R <skodabenz at rocketmail dot com> + +pkgname=efibootmgr +pkgver=0.5.4 +pkgrel=3 +pkgdesc="Tool to modify UEFI Firmware Boot Manager Variables." +arch=('i686' 'x86_64') +url="http://linux.dell.com/efibootmgr/" +license=('GPL2') +depends=('zlib' 'pciutils') +makedepends=() +provides=() +options=(strip purge docs zipman !emptydirs) + +source=("http://linux.dell.com/efibootmgr/permalink/${pkgname}-${pkgver}.tar.gz" + 'efibootmgr_after_0.5.4_git.patch' + 'efibootmgr_default_to_grub2.patch') + +build () { + rm -rf ${srcdir}/efibootmgr-${pkgver}_build/ || true + + cp -r ${srcdir}/efibootmgr-${pkgver} ${srcdir}/efibootmgr-${pkgver}_build + + cd ${srcdir}/efibootmgr-${pkgver}_build/ + + patch -Np1 -i ${srcdir}/efibootmgr_after_0.5.4_git.patch + patch -Np1 -i ${srcdir}/efibootmgr_default_to_grub2.patch + echo + + CFLAGS= make + echo + +} + + +package() { + + mkdir -p ${pkgdir}/usr/sbin/ + mkdir -p ${pkgdir}/usr/share/man/man8/ + + cd ${srcdir}/efibootmgr-${pkgver}_build/ + + install -D -m755 ${srcdir}/efibootmgr-${pkgver}_build/src/efibootmgr/efibootmgr ${pkgdir}/usr/sbin/efibootmgr + install -D -m644 ${srcdir}/efibootmgr-${pkgver}_build/src/man/man8/efibootmgr.8 ${pkgdir}/usr/share/man/man8/efibootmgr.8 + +} +md5sums=('cfcf24752d6461b73f7ba964bbf73169' + '29730052de0d6911457a26011f8ddb6e' + 'b99b8f79842b96c241a0b0fcfb75c778') diff --git a/abs/extra/efibootmgr/efibootmgr_after_0.5.4_git.patch b/abs/extra/efibootmgr/efibootmgr_after_0.5.4_git.patch new file mode 100755 index 0000000..5b9b6f8 --- /dev/null +++ b/abs/extra/efibootmgr/efibootmgr_after_0.5.4_git.patch @@ -0,0 +1,159 @@ +diff --git a/src/efibootmgr/efibootmgr.c b/src/efibootmgr/efibootmgr.c +index 5db0d9e..199af39 100644 +--- a/src/efibootmgr/efibootmgr.c ++++ b/src/efibootmgr/efibootmgr.c +@@ -328,6 +328,7 @@ add_to_boot_order(uint16_t num) + /* Now new_data has what we need */ + memcpy(&(boot_order.Data), new_data, new_data_size); + boot_order.DataSize = new_data_size; ++ free(new_data); + return create_or_edit_variable(&boot_order); + } + +diff --git a/src/include/disk.h b/src/include/disk.h +index eb93d10..8aa37d7 100644 +--- a/src/include/disk.h ++++ b/src/include/disk.h +@@ -65,6 +65,9 @@ enum _interface_type {interface_type_unknown, + ata, atapi, scsi, usb, + i1394, fibre, i2o, md}; + ++ ++unsigned int lcm(unsigned int x, unsigned int y); ++ + int disk_get_pci(int fd, + unsigned char *bus, + unsigned char *device, +diff --git a/src/lib/disk.c b/src/lib/disk.c +index 883864f..8ad590b 100644 +--- a/src/lib/disk.c ++++ b/src/lib/disk.c +@@ -55,7 +55,7 @@ disk_info_from_fd(int fd, + return 1; + } + major = buf.st_dev >> 8; +- minor = buf.st_dev && 0xFF; ++ minor = buf.st_dev & 0xFF; + + /* IDE disks can have up to 64 partitions, or 6 bits worth, + * and have one bit for the disk number. +@@ -420,6 +420,27 @@ get_sector_size(int filedes) + return sector_size; + } + ++/************************************************************ ++ * lcm ++ * Requires: ++ * - numbers of which to find the lowest common multiple ++ * Modifies: nothing ++ * Returns: ++ * lowest common multiple of x and y ++ ************************************************************/ ++unsigned int ++lcm(unsigned int x, unsigned int y) ++{ ++ unsigned int m = x, n = y, o; ++ ++ while ((o = m % n)) { ++ m = n; ++ n = o; ++ } ++ ++ return (x / n) * y; ++} ++ + /** + * disk_get_partition_info() + * @fd - open file descriptor to disk +@@ -442,26 +463,27 @@ disk_get_partition_info (int fd, + uint8_t *mbr_type, uint8_t *signature_type) + { + legacy_mbr *mbr; +- void *mbr_unaligned; ++ void *mbr_sector; ++ size_t mbr_size; + off_t offset; + int this_bytes_read = 0; + int gpt_invalid=0, mbr_invalid=0; + int rc=0; + int sector_size = get_sector_size(fd); + +- if (sizeof(*mbr) != sector_size) +- return 1; +- mbr_unaligned = malloc(sizeof(*mbr)+sector_size-1); +- mbr = (legacy_mbr *) +- (((unsigned long)mbr_unaligned + sector_size - 1) & +- ~(unsigned long)(sector_size-1)); +- memset(mbr, 0, sizeof(*mbr)); ++ ++ mbr_size = lcm(sizeof(*mbr), sector_size); ++ if ((rc = posix_memalign(&mbr_sector, sector_size, mbr_size)) != 0) ++ goto error; ++ memset(mbr_sector, '\0', mbr_size); ++ + offset = lseek(fd, 0, SEEK_SET); +- this_bytes_read = read(fd, mbr, sizeof(*mbr)); ++ this_bytes_read = read(fd, mbr_sector, mbr_size); + if (this_bytes_read < sizeof(*mbr)) { + rc=1; + goto error_free_mbr; + } ++ mbr = (legacy_mbr *)mbr_sector; + gpt_invalid = gpt_disk_get_partition_info(fd, num, + start, size, + signature, +@@ -479,7 +501,8 @@ disk_get_partition_info (int fd, + } + } + error_free_mbr: +- free(mbr_unaligned); ++ free(mbr_sector); ++ error: + return rc; + } + +diff --git a/src/lib/gpt.c b/src/lib/gpt.c +index d90ddaf..83e7a94 100644 +--- a/src/lib/gpt.c ++++ b/src/lib/gpt.c +@@ -215,26 +215,24 @@ read_lastoddsector(int fd, uint64_t lba, void *buffer, size_t count) + static ssize_t + read_lba(int fd, uint64_t lba, void *buffer, size_t bytes) + { +- int sector_size = get_sector_size(fd); +- off_t offset = lba * sector_size; ++ int sector_size = get_sector_size(fd); ++ off_t offset = lba * sector_size; + ssize_t bytesread; +- void *aligned; +- void *unaligned; +- +- if (bytes % sector_size) +- return EINVAL; ++ void *iobuf; ++ size_t iobuf_size; ++ int rc; + +- unaligned = malloc(bytes+sector_size-1); +- aligned = (void *) +- (((unsigned long)unaligned + sector_size - 1) & +- ~(unsigned long)(sector_size-1)); +- memset(aligned, 0, bytes); ++ iobuf_size = lcm(bytes, sector_size); ++ rc = posix_memalign(&iobuf, sector_size, iobuf_size); ++ if (rc) ++ return rc; ++ memset(iobuf, 0, bytes); + + +- lseek(fd, offset, SEEK_SET); +- bytesread = read(fd, aligned, bytes); +- memcpy(buffer, aligned, bytesread); +- free(unaligned); ++ lseek(fd, offset, SEEK_SET); ++ bytesread = read(fd, iobuf, iobuf_size); ++ memcpy(buffer, iobuf, bytes); ++ free(iobuf); + + /* Kludge. This is necessary to read/write the last + block of an odd-sized disk, until Linux 2.5.x kernel fixes. diff --git a/abs/extra/efibootmgr/efibootmgr_default_to_grub2.patch b/abs/extra/efibootmgr/efibootmgr_default_to_grub2.patch new file mode 100755 index 0000000..3520729 --- /dev/null +++ b/abs/extra/efibootmgr/efibootmgr_default_to_grub2.patch @@ -0,0 +1,45 @@ +diff --git a/src/efibootmgr/efibootmgr.c b/src/efibootmgr/efibootmgr.c +index 199af39..3826e03 100644 +--- a/src/efibootmgr/efibootmgr.c ++++ b/src/efibootmgr/efibootmgr.c +@@ -18,7 +18,7 @@ + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +- This must tie the EFI_DEVICE_PATH to /boot/efi/elilo.efi ++ This must tie the EFI_DEVICE_PATH to /boot/efi/EFI/arch_grub/grubx64.efi + The EFI_DEVICE_PATH will look something like: + ACPI device path, length 12 bytes + Hardware Device Path, PCI, length 6 bytes +@@ -26,7 +26,7 @@ + Media Device Path, Hard Drive, partition XX, length 30 bytes + Media Device Path, File Path, length ?? + End of Hardware Device Path, length 4 +- Arguments passed to elilo, as UCS-2 characters, length ?? ++ Arguments passed to grub2, as UCS-2 characters, length ?? + + */ + +@@ -780,8 +780,8 @@ usage() + printf("\t-g | --gpt force disk with invalid PMBR to be treated as GPT\n"); + printf("\t-H | --acpi_hid XXXX set the ACPI HID (used with -i)\n"); + printf("\t-i | --iface name create a netboot entry for the named interface\n"); +- printf("\t-l | --loader name (defaults to \\elilo.efi)\n"); +- printf("\t-L | --label label Boot manager display label (defaults to \"Linux\")\n"); ++ printf("\t-l | --loader name (defaults to \\EFI\\arch_grub\\grubx64.efi)\n"); ++ printf("\t-L | --label label Boot manager display label (defaults to \"Arch Linux (GRUB2)\")\n"); + printf("\t-n | --bootnext XXXX set BootNext to XXXX (hex)\n"); + printf("\t-N | --delete-bootnext delete BootNext\n"); + printf("\t-o | --bootorder XXXX,YYYY,ZZZZ,... explicitly set BootOrder (hex)\n"); +@@ -808,8 +808,8 @@ set_default_opts() + opts.active = -1; /* Don't set it */ + opts.timeout = -1; /* Don't set it */ + opts.edd10_devicenum = 0x80; +- opts.loader = "\\elilo.efi"; +- opts.label = "Linux"; ++ opts.loader = "\\EFI\\arch_grub\\grubx64.efi"; ++ opts.label = "Arch Linux (GRUB2)"; + opts.disk = "/dev/sda"; + opts.iface = NULL; + opts.part = 1; + diff --git a/abs/extra/emacs/PKGBUILD b/abs/extra/emacs/PKGBUILD new file mode 100644 index 0000000..f22828a --- /dev/null +++ b/abs/extra/emacs/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 171502 2012-11-18 08:01:29Z eric $ +# Maintainer: Juergen Hoetzel <juergen@archlinux.org> +# Contributor: Renchi Raju <renchi@green.tam.uiuc.edu> + +pkgname=emacs +pkgver=24.2 +pkgrel=3 +pkgdesc="The extensible, customizable, self-documenting real-time display editor" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/emacs/emacs.html" +license=('GPL3') +depends=('librsvg' 'gpm' 'giflib' 'libxpm' 'libotf' 'm17n-lib' 'gtk3' 'hicolor-icon-theme' 'gconf' 'desktop-file-utils' 'alsa-lib' 'imagemagick') +install=emacs.install +source=(ftp://ftp.gnu.org/gnu/emacs/$pkgname-$pkgver.tar.bz2{,.sig}) +md5sums=('1676803a50e8adc817fdaaebb9234f14' 'ca1766337f419ef827dd96d1ff78f158') + + +build() { + cd "$srcdir"/$pkgname-$pkgver + ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib \ + --localstatedir=/var --with-x-toolkit=gtk3 --with-xft + make +} + +package() { + cd "$srcdir"/$pkgname-$pkgver + make DESTDIR="$pkgdir" install + + # remove conflict with ctags package + mv "$pkgdir"/usr/bin/{ctags,ctags.emacs} + mv "$pkgdir"/usr/share/man/man1/{ctags.1.gz,ctags.emacs.1} + # fix user/root permissions on usr/share files + find "$pkgdir"/usr/share/emacs/$pkgver -exec chown root:root {} \; + # fix perms on /var/games + chmod 775 "$pkgdir"/var/games + chmod 775 "$pkgdir"/var/games/emacs + chmod 664 "$pkgdir"/var/games/emacs/* + chown -R root:games "$pkgdir"/var/games +} diff --git a/abs/extra/emacs/emacs.install b/abs/extra/emacs/emacs.install new file mode 100644 index 0000000..fa9ffee --- /dev/null +++ b/abs/extra/emacs/emacs.install @@ -0,0 +1,32 @@ +ICON_PATH=usr/share/icons/hicolor +INFO_DIR=usr/share/info + +INFO_FILES=(ada-mode auth autotype calc ccmode cl dbus dired-x ebrowse +ede ediff edt efaq eieio eintr elisp emacs emacs-gnutls emacs-mime epa erc ert eshell eudc flymake +forms gnus idlwave info mairix-el message mh-e newsticker nxml-mode +org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve smtpmail +speedbar tramp url vip viper widget woman) + +post_install() { + gtk-update-icon-cache -q -t -f ${ICON_PATH} + update-desktop-database -q + + [[ -x usr/bin/install-info ]] || return 0 + for f in ${INFO_FILES[@]}; do + install-info ${INFO_DIR}/$f.gz ${INFO_DIR}/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + gtk-update-icon-cache -q -t -f ${ICON_PATH} + update-desktop-database -q + + [[ -x usr/bin/install-info ]] || return 0 + for f in ${INFO_FILES[@]}; do + install-info --delete ${INFO_DIR}/$f.gz ${INFO_DIR}/dir 2> /dev/null + done +} diff --git a/abs/extra/enchant/PKGBUILD b/abs/extra/enchant/PKGBUILD index 0937bd8..a8dc20d 100644 --- a/abs/extra/enchant/PKGBUILD +++ b/abs/extra/enchant/PKGBUILD @@ -1,21 +1,29 @@ -# $Id: PKGBUILD 2581 2008-06-08 12:52:18Z jgc $ -# Maintainer: dorphell <dorphell@archlinux.org> +# $Id: PKGBUILD 139539 2011-10-03 12:17:06Z jgc $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: dorphell <dorphell@archlinux.org> + pkgname=enchant pkgver=1.6.0 -pkgrel=1 +pkgrel=4 pkgdesc="A wrapper library for generic spell checking" -arch=(i686 x86_64) -license=('LGPL') -depends=('aspell' 'dbus-glib>=0.74' 'hunspell>=1.2.2') -makedepends=('hspell') -options=(!libtool) -source=(http://www.abisource.com/downloads/enchant/${pkgver}/${pkgname}-${pkgver}.tar.gz) +arch=('i686' 'x86_64') url="http://www.abisource.com/enchant/" +license=('LGPL') +depends=('aspell' 'dbus-glib' 'hunspell' 'hspell') +options=('!libtool') +source=("http://www.abisource.com/downloads/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz") +md5sums=('de11011aff801dc61042828041fb59c7') build() { - cd ${startdir}/src/${pkgname}-${pkgver} - ./configure --prefix=/usr --disable-static || return 1 - make || return 1 - make DESTDIR=${startdir}/pkg install || return 1 + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr \ + --disable-static \ + --disable-ispell \ + --with-myspell-dir=/usr/share/myspell + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install } -md5sums=('de11011aff801dc61042828041fb59c7') diff --git a/abs/extra/etherwake/PKGBUILD b/abs/extra/etherwake/PKGBUILD new file mode 100644 index 0000000..bbe4f6a --- /dev/null +++ b/abs/extra/etherwake/PKGBUILD @@ -0,0 +1,26 @@ +# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com> +# Contributor: Markus Volkmann <mcfock@counterstrike.de> + +pkgname=etherwake +pkgver=1.09 +pkgrel=5 +arch=(i686 x86_64) +pkgdesc="Utility for waking up computers via wake-on-lan (wol)" +license="GPL" +url="http://www.scyld.com/wakeonlan.html" +source=(https://launchpad.net/ubuntu/+archive/primary/+files/etherwake_1.09.orig.tar.gz) + +build() { + cd "$srcdir/$pkgname-$pkgver.orig" + rm -f etherwake etherwake.8.gz + gcc ether-wake.c -o etherwake + gzip etherwake.8 +} + +package() { + cd "$srcdir/$pkgname-$pkgver.orig" + install -Dm0755 etherwake "$pkgdir/usr/sbin/etherwake" + install -Dm0644 etherwake.8.gz "$pkgdir/usr/share/man/man8/etherwake.8" +} + +md5sums=('628e8b2a28d47f262e4c26c989402a59') diff --git a/abs/extra/ethtool/PKGBUILD b/abs/extra/ethtool/PKGBUILD index b137e4a..27ba9a5 100644 --- a/abs/extra/ethtool/PKGBUILD +++ b/abs/extra/ethtool/PKGBUILD @@ -1,25 +1,27 @@ -# $Id: PKGBUILD 127195 2011-06-11 08:04:12Z ibiru $ -# Maintainer: Paul Mattal <paul@archlinux.org> -# Contributer: Martin Kemp <mdkemp@elys.com> +# $Id: PKGBUILD 161868 2012-06-16 00:18:47Z ibiru $ +# Maintainer : Ionut Biru <ibiru@archlinux.org> +# Contributor: Paul Mattal <paul@archlinux.org> +# Contributor: Martin Kemp <mdkemp@elys.com> + pkgname=ethtool -pkgver=2.6.39 -pkgrel=3 -epoch=2 -pkgdesc="gkernel ethtool" -arch=(i686 x86_64) +pkgver=3.4 +pkgrel=1 +epoch=1 +pkgdesc="Utility for controlling network drivers and hardware" +arch=('i686' 'x86_64') url="http://www.kernel.org/pub/software/network/ethtool/" license=('GPL') depends=('glibc') -source=(http://www.kernel.org/pub/software/network/$pkgname/$pkgname-$pkgver.tar.bz2) -md5sums=('97211a1e3a496bc3bd0b75849d0fbae9') +source=(http://www.kernel.org/pub/software/network/$pkgname/$pkgname-$pkgver.tar.xz) build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --mandir=/usr/share/man - make + cd $pkgname-$pkgver + ./configure --prefix=/usr --mandir=/usr/share/man + make } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install } +md5sums=('cc4c4cf3ac086a53cd24f17d426f2b8f') diff --git a/abs/extra/evrouter/PKGBUILD b/abs/extra/evrouter/PKGBUILD index 0f7d7b7..a50f453 100644 --- a/abs/extra/evrouter/PKGBUILD +++ b/abs/extra/evrouter/PKGBUILD @@ -1,9 +1,9 @@ # Contributor: Jonathan Liu <net147@hotmail.com> pkgname=evrouter pkgver=0.4 -pkgrel=1 +pkgrel=2 pkgdesc="An Input Event Router for Linux" -arch=(i686) +arch=(i686 x86_64) url="http://www.bedroomlan.org/~alexios/coding_evrouter.html" license=('GPL2') depends=('libxt' 'libxtst' 'xorg-server') diff --git a/abs/extra/evtest/PKGBUILD b/abs/extra/evtest/PKGBUILD index 0952c5e..007e3ce 100644 --- a/abs/extra/evtest/PKGBUILD +++ b/abs/extra/evtest/PKGBUILD @@ -20,5 +20,5 @@ build() make || return 1 make DESTDIR=${startdir}/pkg install } -md5sums=('1edddfcd366bb52490e08cbf1dbaeddf' +md5sums=('87dcaed49ac6195a2ae12335f2c0f252' '1753bd5825ca7e5244a1a09029b8a47d') diff --git a/abs/extra/exo/PKGBUILD b/abs/extra/exo/PKGBUILD deleted file mode 100644 index e4eaf14..0000000 --- a/abs/extra/exo/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 89681 2010-09-03 08:02:13Z remy $ -# Maintainer: AndyRTR <andyrtr@archlinux.org> -# Contributor: tobias <tobias funnychar archlinux.org> -# Contributor: Aurelien Foret <orelien@chez.com> - -pkgname=exo -pkgver=0.3.107 -pkgrel=2 -pkgdesc="Extensions to Xfce by os-cillation" -arch=('i686' 'x86_64') -license=('GPL2' 'LGPL') -url="http://www.xfce.org/projects/exo" -depends=("libxfce4util>=4.6.2" "hal>=0.5.14" 'gtk2' 'hicolor-icon-theme' 'sh') -makedepends=("pygtk>=2.17.0" 'pkgconfig' 'libnotify' 'perl-uri' 'intltool') -optdepends=('libnotify: notification support for exo-mount-notify' \ - 'perl-uri: for mail-compose helper script') -options=('!libtool') -install=${pkgname}.install -source=(http://archive.xfce.org/src/xfce/${pkgname}/0.3/${pkgname}-${pkgver}.tar.bz2) -md5sums=('3a92cca0c99ee940db4410891c9e8498') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/xfce4 \ - --localstatedir=/var --disable-static --enable-notifications \ - --enable-python || return 1 - make || return 1 -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/abs/extra/exo/exo.install b/abs/extra/exo/exo.install deleted file mode 100644 index 21b79d2..0000000 --- a/abs/extra/exo/exo.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} diff --git a/abs/extra/fakeroot/PKGBUILD b/abs/extra/fakeroot/PKGBUILD deleted file mode 100644 index 688c3d3..0000000 --- a/abs/extra/fakeroot/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 29508 2009-03-09 17:06:43Z andyrtr $ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> -# Contributor: Jochem Kossen <j.kossen@home.nl> - -pkgname=fakeroot -pkgver=1.14.4 -pkgrel=1 -pkgdesc="Gives a fake root environment, useful for building packages as a non-privileged user" -arch=('i686' 'x86_64') -license=('GPL') -url="http://packages.debian.org/fakeroot" -groups=('base-devel') -install=fakeroot.install -depends=('glibc' 'filesystem' 'grep' 'sed') -options=('!libtool') -source=(http://ftp.debian.org/debian/pool/main/f/$pkgname/${pkgname}_${pkgver}.orig.tar.bz2) - -build() { - cd ${srcdir}/$pkgname-$pkgver - ./configure --prefix=/usr --libdir=/usr/lib/libfakeroot \ - --disable-static --with-ipc=sysv - # --with-ipc=tcp is currently broken and no option on smp systems - make || return 1 - make DESTDIR=${pkgdir} install || return 1 - # install README for sysv/tcp usage - install -Dm644 $srcdir/$pkgname-$pkgver/README $pkgdir/usr/share/doc/$pkgname/README -} -md5sums=('bea628be77838aaa7323a2f7601c2d7e') diff --git a/abs/extra/fakeroot/fakeroot.install b/abs/extra/fakeroot/fakeroot.install deleted file mode 100644 index c2f62a7..0000000 --- a/abs/extra/fakeroot/fakeroot.install +++ /dev/null @@ -1,30 +0,0 @@ -# arg 1: the new package version -post_install() { - if [ ! "`grep /usr/lib/libfakeroot etc/ld.so.conf`" ]; then - echo -n "updating /etc/ld.so.conf... " - echo "/usr/lib/libfakeroot" >>etc/ld.so.conf - sbin/ldconfig -r . - echo "done." - fi -echo "The package is built using sysv ipc. If this causes segfaults" -echo "see included README file and rebuild the pkg --with-ipc=tcp" -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} - -# arg 1: the old package version -pre_remove() { - echo -ne "\nupdating /etc/ld.so.conf... " - sed -i -e '/\/usr\/lib\/libfakeroot/d' etc/ld.so.conf - sbin/ldconfig -r . - echo "done." -} - -op=$1 -shift - -$op $* diff --git a/abs/extra/fceux/ChangeLog b/abs/extra/fceux/ChangeLog deleted file mode 100644 index 93ba8b3..0000000 --- a/abs/extra/fceux/ChangeLog +++ /dev/null @@ -1,21 +0,0 @@ -2009-11-06 Eric Belanger <eric@archlinux.org> - - * fceux 2.1.2-1 - * Upstream update - -2009-08-05 Eric Belanger <eric@archlinux.org> - - * fceux 2.1.1-1 - * gfceux 2.1.1-1 - * Upstream update - * Implemented split packages - -2009-04-06 Eric Belanger <eric@archlinux.org> - - * fceux 2.1.0a-1 - * Upstream update - -2009-03-06 Eric Belanger <eric@archlinux.org> - - * fceux 2.0.3-1 - * Added to [community] repo to replace fceu diff --git a/abs/extra/fceux/PKGBUILD b/abs/extra/fceux/PKGBUILD index 4e9ccae..3d18d67 100644 --- a/abs/extra/fceux/PKGBUILD +++ b/abs/extra/fceux/PKGBUILD @@ -1,35 +1,45 @@ -# $Id: PKGBUILD 49458 2011-06-16 19:25:29Z angvp $ -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: Jo Christian Bergskĺs <jcberg@gmail.com> - +# $Id: PKGBUILD 57567 2011-10-30 20:09:10Z arodseth $ +# Maintainer: Alexander Rødseth <rodseth@gmail.com> +# Contributor: Eric Belanger <eric@archlinux.org> +# Contributor: Jo Christian BergskĂĄs <jcberg@gmail.com> pkgname=fceux pkgver=2.1.5 -pkgrel=1 -arch=('i686' 'x86_64') -url="http://fceux.com/web/home.html" -pkgdesc="A fast and ultra-compatible NES/Famicom emulator with SDL, OpenGL and SVGALIB support" +pkgrel=3 +arch=('x86_64' 'i686') +url="http://fceux.com/" +pkgdesc="Fast and ultra-compatible NES/Famicom emulator" license=('GPL') -depends=('sdl' 'lua' 'gtk2') -makedepends=('scons' 'mesa') -optdepends=('xchm: for viewing the help manual') +depends=('sdl' 'gtk2' 'gd' 'desktop-file-utils') +makedepends=('scons' 'mesa' 'lua') +optdepends=('xchm: for viewing the manual') provides=('fceu' 'gfceux') replaces=('fceu' 'gfceux') -source=(http://downloads.sourceforge.net/fceultra/$pkgname-${pkgver}.src.tar.bz2 \ - fceux.desktop fceux.png) +install=fceux.install +source=("http://downloads.sourceforge.net/fceultra/$pkgname-$pkgver.src.tar.bz2" + "fceux.desktop" + "fceux.png") build() { - cd "${srcdir}/fceu$pkgver" - scons + cd "$srcdir/fceu${pkgver}" + + sed -i "s|/usr/local|$pkgdir/usr|" SConstruct + scons OPENGL=0 install +} - sed -i "s|/usr/local|${pkgdir}/usr|" SConstruct - scons install +package() { + cd "$srcdir/fceu${pkgver}" - install -D -m644 bin/$pkgname.chm "${pkgdir}/usr/share/doc/$pkgname/$pkgname.chm" - install -D -m644 "$srcdir"/fceux.desktop "${pkgdir}"/usr/share/applications/fceux.desktop - install -D -m644 "$srcdir"/fceux.png "$pkgdir"/usr/share/pixmaps/fceux.png + install -Dm644 bin/$pkgname.chm \ + "$pkgdir/usr/share/doc/$pkgname/$pkgname.chm" + install -Dm644 $srcdir/fceux.desktop \ + "$pkgdir/usr/share/applications/fceux.desktop" + install -Dm644 $srcdir/fceux.png \ + "$pkgdir/usr/share/pixmaps/fceux.png" + install -Dm644 COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/COPYING" } # vim:set ts=2 sw=2 et: md5sums=('e8b20e62bbbb061b1a59d51b47c827bd' - '30baf915c936926fa50f59d8276f6575' + '3c6a259d88825ff1b9387d191a6c970e' '3fe753731ac46b5fee528b1f73abd3e3') diff --git a/abs/extra/fceux/fceux.desktop b/abs/extra/fceux/fceux.desktop index c166755..c20271a 100644 --- a/abs/extra/fceux/fceux.desktop +++ b/abs/extra/fceux/fceux.desktop @@ -2,9 +2,8 @@ Name=Fceux GenericName=NES/Famicom emulator Exec=fceux -Icon=/usr/share/pixmaps/fceux.png +Icon=fceux Type=Application Categories=Game;Emulator; Encoding=UTF-8 - - +MimeType=application/x-nes;application/x-nes-rom diff --git a/abs/extra/fceux/fceux.install b/abs/extra/fceux/fceux.install new file mode 100644 index 0000000..ad97d7b --- /dev/null +++ b/abs/extra/fceux/fceux.install @@ -0,0 +1,13 @@ +post_upgrade() { + update-desktop-database -q +} + +post_install() { + post_upgrade +} + +post_remove() { + post_upgrade +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/ffmpegthumbnailer/PKGBUILD b/abs/extra/ffmpegthumbnailer/PKGBUILD deleted file mode 100644 index 8be79eb..0000000 --- a/abs/extra/ffmpegthumbnailer/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 23110 2010-08-06 11:01:51Z rvanharen $ -# Maintainer: Ronald van Haren <ronald.archlinux.org> -# Contributor: boromil@gmail.com - -pkgname=ffmpegthumbnailer -pkgver=2.0.6 -pkgrel=1 -pkgdesc="Lightweight video thumbnailer that can be used by file managers." -url="http://code.google.com/p/ffmpegthumbnailer/" -license=('GPL2') -arch=('i686' 'x86_64') -depends=('ffmpeg' 'libjpeg' 'libpng') -optdepends=('gvfs: support for gio uris') -source=(http://ffmpegthumbnailer.googlecode.com/files/$pkgname-$pkgver.tar.gz) -options=(!libtool) -md5sums=('5003ceaadc1c5a1be1dbb34739a12bab') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr --enable-gio - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} - - diff --git a/abs/extra/fftw/PKGBUILD b/abs/extra/fftw/PKGBUILD index a4ca689..db4322f 100644 --- a/abs/extra/fftw/PKGBUILD +++ b/abs/extra/fftw/PKGBUILD @@ -1,49 +1,50 @@ -# $Id: PKGBUILD 20304 2008-12-02 10:48:00Z ronald $ +# $Id: PKGBUILD 159277 2012-05-20 10:35:50Z ronald $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: damir <damir@archlinux.org> pkgname=fftw -pkgver=3.2.2 +pkgver=3.3.2 pkgrel=1 pkgdesc="A library for computing the discrete Fourier transform (DFT)" arch=('i686' 'x86_64') license=('GPL2') url="http://www.fftw.org/" -depends=('glibc') -options=(!libtool) -source=(http://www.fftw.org/${pkgname}-${pkgver}.tar.gz) +depends=('glibc' 'bash') +makedepends=('gcc-fortran') +options=('!libtool') +source=("http://www.fftw.org/${pkgname}-${pkgver}.tar.gz") install=fftw.install +sha1sums=('11a8c31186ff5a7d686a79a3f21b2530888e0dc2') # notes: # http://www.fftw.org/fftw2_doc/fftw_6.html#SEC69 # http://www.fftw.org/faq/section2.html#singleprec # http://www.fftw.org/fftw3_doc/Precision.html#Precision + build() { cd ${srcdir}/${pkgname}-${pkgver} - - # build & install double precision - ./configure F77=gfortran --prefix=/usr \ - --enable-shared || return 1 - make || return 1 - make DESTDIR=${pkgdir} install || return 1 + + # use upstream default CFLAGS while keeping our -march/-mtune + CFLAGS+=" -O3 -fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math" + + CONFIGURE="./configure F77=gfortran --prefix=/usr \ + --enable-shared --enable-threads --enable-type-prefix" + + # build & install double precision + $CONFIGURE --enable-sse2 + make + make DESTDIR=${pkgdir} install make clean # build & install long double precission - ./configure F77=gfortran --prefix=/usr \ - --enable-long-double --enable-shared || return 1 - make || return 1 - make DESTDIR=${pkgdir} install || return 1 + $CONFIGURE --enable-long-double + make + make DESTDIR=${pkgdir} install make clean - # build + install single precision - ./configure F77=gfortran --prefix=/usr \ - --enable-float --enable-shared || return 1 - make || return 1 - make DESTDIR=${pkgdir} install || return 1 - - # handle info files - rm -f $pkgdir/usr/share/info/dir - gzip $pkgdir/usr/share/info/* + # build & install single precision + $CONFIGURE --enable-float --enable-sse + make + make DESTDIR=${pkgdir} install } -md5sums=('b616e5c91218cc778b5aa735fefb61ae') diff --git a/abs/extra/fluidsynth/PKGBUILD b/abs/extra/fluidsynth/PKGBUILD new file mode 100644 index 0000000..bef6083 --- /dev/null +++ b/abs/extra/fluidsynth/PKGBUILD @@ -0,0 +1,52 @@ +# $Id: PKGBUILD 166870 2012-09-20 10:08:01Z schiv $ +# Maintainer: Ray Rashif <schiv@archlinux.org> +# Contributor: damir <damir@archlinux.org> + +pkgname=fluidsynth +pkgver=1.1.6 +pkgrel=1 +pkgdesc="A real-time software synthesizer based on the SoundFont 2 specifications" +arch=('i686' 'x86_64') +url="http://www.fluidsynth.org/" +#depends=('glib2' 'jack' 'dbus-core' 'libpulse') +depends=('glib2' 'dbus-core' ) +makedepends=('cmake' 'ladspa' 'doxygen') +#optdepends=('pulseaudio: PulseAudio sound support') +license=('LGPL') +backup=('etc/conf.d/fluidsynth') +install=$pkgname.install +source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz" + 'fluidsynth.conf' + 'fluidsynth.rc' + 'fluidsynth.systemd') +md5sums=('ae5aca6de824b4173667cbd3a310b263' + '7d0ab0d75d4e87652f4cb7ffeac8a82b' + 'b296dbfb524c2164f552f68bd9abe2ec' + 'e0406748a154409907df62292be32e8a') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + cmake . -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -Denable-ladspa=ON \ + -DLIB_SUFFIX="" + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir/" install + + install -Dm644 "$srcdir/fluidsynth.conf" \ + "$pkgdir/etc/conf.d/fluidsynth" + + install -Dm755 "$srcdir/fluidsynth.rc" \ + "$pkgdir/etc/rc.d/fluidsynth" + + install -Dm644 "$srcdir/fluidsynth.systemd" \ + "$pkgdir/usr/lib/systemd/system/fluidsynth.service" +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/fluidsynth/__changelog b/abs/extra/fluidsynth/__changelog new file mode 100644 index 0000000..144c13b --- /dev/null +++ b/abs/extra/fluidsynth/__changelog @@ -0,0 +1 @@ +removed pulse jack diff --git a/abs/extra/fluidsynth/fluidsynth.conf b/abs/extra/fluidsynth/fluidsynth.conf new file mode 100644 index 0000000..b8465fa --- /dev/null +++ b/abs/extra/fluidsynth/fluidsynth.conf @@ -0,0 +1,2 @@ +FSYNTH_OPTS="-a alsa -m alsa_seq -r 48000" +FSYNTH_SOUNDFONT="" # path to your soundfont diff --git a/abs/extra/fluidsynth/fluidsynth.install b/abs/extra/fluidsynth/fluidsynth.install new file mode 100644 index 0000000..86e05f8 --- /dev/null +++ b/abs/extra/fluidsynth/fluidsynth.install @@ -0,0 +1,19 @@ +post_install() { + echo + echo " > To use FluidSynth as a daemon edit /etc/conf.d/fluidsynth" + echo + echo " > Systemd users need to copy the service file from:" + echo " /usr/lib/systemd/system/fluidsynth.service" + echo " > to:" + echo " /etc/systemd/system/multi-user.target.wants/" + echo " > and then edit accordingly." + echo + echo " > PulseAudio output when running as a daemon" + echo " > is known to be problematic. See:" + echo " https://bbs.archlinux.org/viewtopic.php?id=135092" + echo +} + +post_upgrade() { + post_install +} diff --git a/abs/extra/community/fluidsynth/fluidsynthd b/abs/extra/fluidsynth/fluidsynth.rc index ca1e8fa..ca1e8fa 100644 --- a/abs/extra/community/fluidsynth/fluidsynthd +++ b/abs/extra/fluidsynth/fluidsynth.rc diff --git a/abs/extra/fluidsynth/fluidsynth.systemd b/abs/extra/fluidsynth/fluidsynth.systemd new file mode 100644 index 0000000..06784fe --- /dev/null +++ b/abs/extra/fluidsynth/fluidsynth.systemd @@ -0,0 +1,9 @@ +[Unit] +Description=FluidSynth Daemon +After=sound.target + +[Service] +ExecStart=/usr/bin/fluidsynth -is -a alsa -m alsa_seq -r 48000 # append soundfont path here + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/foldingathome/PKGBUILD b/abs/extra/foldingathome/PKGBUILD new file mode 100644 index 0000000..89f1eca --- /dev/null +++ b/abs/extra/foldingathome/PKGBUILD @@ -0,0 +1,48 @@ +# Contributor: paul2lv [at] gmail dot com +# Maintainer: + +pkgname=foldingathome +pkgver=7.2.9 +pkgrel=1 +pkgdesc="Folding@Home is a distributed computing project which studies protein folding, misfolding, aggregation, and related diseases." +arch=('i686' 'x86_64') +url="http://folding.stanford.edu/" +license=('CUSTOM') +depends=('glibc') +install=foldingathome-v7.install + +# Moronic server +DLAGENTS=("https::/usr/bin/curl -k -o %o %u") + +[ "$CARCH" = "i686" ] &&_source_arch="32bit" +[ "$CARCH" = "x86_64" ] && _source_arch="64bit" + +if [ "$CARCH" = "i686" ]; then + source=(https://fah-web.stanford.edu/file-releases/public/release/fahclient/debian-testing-32bit/v7.2/fahclient_7.2.9-32bit-release.tar.bz2 foldingathome-v7.rc.d foldingathome-v7.service) + md5sums=('f8a0b43bfc4110f2200b689d8d788962' '50481b4e31edb24519e855d770955eda' 'fe7c7652443e72830cf6d641846c07f6') + +elif [ "$CARCH" = "x86_64" ]; then + source=(https://fah-web.stanford.edu/file-releases/public/release/fahclient/debian-testing-64bit/v7.2/fahclient_7.2.9-64bit-release.tar.bz2 foldingathome-v7.rc.d foldingathome-v7.service) + md5sums=('d8d93d3436e5ebb52876c73cf375c9ac' '50481b4e31edb24519e855d770955eda' 'fe7c7652443e72830cf6d641846c07f6') +fi + + +build() { + cd ${srcdir} + + install -D -c -m755 fahclient_${pkgver}-${_source_arch}-release/FAHClient ${pkgdir}/opt/fah-v7/FAHClient + install -D -c -m755 fahclient_${pkgver}-${_source_arch}-release/FAHCoreWrapper ${pkgdir}/opt/fah-v7/FAHCoreWrapper + install -D -c -m755 ${srcdir}/foldingathome-v7.rc.d ${pkgdir}/etc/rc.d/foldingathome-v7 + install -D -c -m755 fahclient_${pkgver}-${_source_arch}-release/sample-config.xml ${pkgdir}/opt/fah-v7/sample-config.xml + + chmod 755 ${pkgdir}/opt/fah-v7/FAHClient + chmod 755 ${pkgdir}/opt/fah-v7/FAHCoreWrapper + install -D -m644 fahclient_${pkgver}-${_source_arch}-release/copyright ${pkgdir}/usr/share/licenses/${pkgname}/copyright + install -D -m644 fahclient_${pkgver}-${_source_arch}-release/README ${pkgdir}/opt/fah-v7/README + install -D -m644 fahclient_${pkgver}-${_source_arch}-release/ChangeLog ${pkgdir}/opt/fah-v7/ChangeLog + install -D -m644 ${srcdir}/foldingathome-v7.service ${pkgdir}/etc/systemd/system/foldingathome-v7.service +} + +md5sums=('d8d93d3436e5ebb52876c73cf375c9ac' + '50481b4e31edb24519e855d770955eda' + 'fe7c7652443e72830cf6d641846c07f6') diff --git a/abs/extra/foldingathome/foldingathome-v7.install b/abs/extra/foldingathome/foldingathome-v7.install new file mode 100644 index 0000000..6899bba --- /dev/null +++ b/abs/extra/foldingathome/foldingathome-v7.install @@ -0,0 +1,12 @@ +post_install() { + cat << 'EOM' + --> Please cd to /opt/fah-v7/ and execute ./FAHClient --configure + --> as root to configure your settings. If you are using systemd, + --> then run "systemctl enable foldingathome-v7.service" to enable + --> the folding service. If you are using initscripts, then add + --> "foldingathome-v7" to the list of daemons in /etc/rc.conf. + --> If you would like join the Arch Linux team, use team number + --> 45032. +EOM +} + diff --git a/abs/extra/foldingathome/foldingathome-v7.rc.d b/abs/extra/foldingathome/foldingathome-v7.rc.d new file mode 100644 index 0000000..91a395a --- /dev/null +++ b/abs/extra/foldingathome/foldingathome-v7.rc.d @@ -0,0 +1,46 @@ +#!/bin/bash +#/etc/rc.d/foldingathome-v7 +# +# Starts the Folding@Home-v7 client in the background + +. /etc/rc.conf +. /etc/rc.d/functions + +DAEMON=foldingathome-v7 +#ARGS= + +#[ -r /etc/conf.d/$DAEMON ] && . /etc/conf.d/$DAEMON + +PID=$(pidof -x -o %PPID /opt/fah-v7/FAHClient) +case "${1}" in + start) + stat_busy "Starting $DAEMON" + [ -z "${PID}" ] && /opt/fah-v7/FAHClient --config /opt/fah-v7/config.xml --exec-directory=/opt/fah-v7 --data-directory=/opt/fah-v7 &> /dev/null & + add_daemon $DAEMON + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + exit 1 + else + stat_done + exit 1 + fi + ;; + stop) + stat_busy "Stopping $DAEMON" + [ ! -z "${PID}" ] && kill ${PID} &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon $DAEMON + stat_done + exit 1 + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/abs/extra/foldingathome/foldingathome-v7.service b/abs/extra/foldingathome/foldingathome-v7.service new file mode 100644 index 0000000..4634582 --- /dev/null +++ b/abs/extra/foldingathome/foldingathome-v7.service @@ -0,0 +1,12 @@ +[Unit] +Description=Folding@home V7 distributed computing client +After=network.target + +[Service] +Type=simple +WorkingDirectory=/opt/fah-v7 +ExecStart=/opt/fah-v7/FAHClient --config /opt/fah-v7/config.xml --exec-directory=/opt/fah-v7 --data-directory=/opt/fah-v7 + +[Install] +WantedBy=multi-user.target + diff --git a/abs/extra/foldingathome/foldingathome-v7/PKGBUILD b/abs/extra/foldingathome/foldingathome-v7/PKGBUILD new file mode 100644 index 0000000..c98ef7c --- /dev/null +++ b/abs/extra/foldingathome/foldingathome-v7/PKGBUILD @@ -0,0 +1,45 @@ +# Contributor: paul2lv [at] gmail dot com +# Maintainer: + +pkgname=foldingathome-v7 +pkgver=7.2.9 +pkgrel=1 +pkgdesc="Folding@Home is a distributed computing project which studies protein folding, misfolding, aggregation, and related diseases." +arch=('i686' 'x86_64') +url="http://folding.stanford.edu/" +license=('CUSTOM') +depends=('glibc') +install=foldingathome-v7.install + +# Moronic server +DLAGENTS=("https::/usr/bin/curl -k -o %o %u") + +[ "$CARCH" = "i686" ] &&_source_arch="32bit" +[ "$CARCH" = "x86_64" ] && _source_arch="64bit" + +if [ "$CARCH" = "i686" ]; then + source=(https://fah-web.stanford.edu/file-releases/public/release/fahclient/debian-testing-32bit/v7.2/fahclient_7.2.9-32bit-release.tar.bz2 foldingathome-v7.rc.d foldingathome-v7.service) + md5sums=('f8a0b43bfc4110f2200b689d8d788962' '50481b4e31edb24519e855d770955eda' 'fe7c7652443e72830cf6d641846c07f6') + +elif [ "$CARCH" = "x86_64" ]; then + source=(https://fah-web.stanford.edu/file-releases/public/release/fahclient/debian-testing-64bit/v7.2/fahclient_7.2.9-64bit-release.tar.bz2 foldingathome-v7.rc.d foldingathome-v7.service) + md5sums=('d8d93d3436e5ebb52876c73cf375c9ac' '50481b4e31edb24519e855d770955eda' 'fe7c7652443e72830cf6d641846c07f6') +fi + + +build() { + cd ${srcdir} + + install -D -c -m755 fahclient_${pkgver}-${_source_arch}-release/FAHClient ${pkgdir}/opt/fah-v7/FAHClient + install -D -c -m755 fahclient_${pkgver}-${_source_arch}-release/FAHCoreWrapper ${pkgdir}/opt/fah-v7/FAHCoreWrapper + install -D -c -m755 ${srcdir}/foldingathome-v7.rc.d ${pkgdir}/etc/rc.d/foldingathome-v7 + install -D -c -m755 fahclient_${pkgver}-${_source_arch}-release/sample-config.xml ${pkgdir}/opt/fah-v7/sample-config.xml + + chmod 755 ${pkgdir}/opt/fah-v7/FAHClient + chmod 755 ${pkgdir}/opt/fah-v7/FAHCoreWrapper + install -D -m644 fahclient_${pkgver}-${_source_arch}-release/copyright ${pkgdir}/usr/share/licenses/${pkgname}/copyright + install -D -m644 fahclient_${pkgver}-${_source_arch}-release/README ${pkgdir}/opt/fah-v7/README + install -D -m644 fahclient_${pkgver}-${_source_arch}-release/ChangeLog ${pkgdir}/opt/fah-v7/ChangeLog + install -D -m644 ${srcdir}/foldingathome-v7.service ${pkgdir}/etc/systemd/system/foldingathome-v7.service +} + diff --git a/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.install b/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.install new file mode 100644 index 0000000..6899bba --- /dev/null +++ b/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.install @@ -0,0 +1,12 @@ +post_install() { + cat << 'EOM' + --> Please cd to /opt/fah-v7/ and execute ./FAHClient --configure + --> as root to configure your settings. If you are using systemd, + --> then run "systemctl enable foldingathome-v7.service" to enable + --> the folding service. If you are using initscripts, then add + --> "foldingathome-v7" to the list of daemons in /etc/rc.conf. + --> If you would like join the Arch Linux team, use team number + --> 45032. +EOM +} + diff --git a/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.rc.d b/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.rc.d new file mode 100644 index 0000000..91a395a --- /dev/null +++ b/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.rc.d @@ -0,0 +1,46 @@ +#!/bin/bash +#/etc/rc.d/foldingathome-v7 +# +# Starts the Folding@Home-v7 client in the background + +. /etc/rc.conf +. /etc/rc.d/functions + +DAEMON=foldingathome-v7 +#ARGS= + +#[ -r /etc/conf.d/$DAEMON ] && . /etc/conf.d/$DAEMON + +PID=$(pidof -x -o %PPID /opt/fah-v7/FAHClient) +case "${1}" in + start) + stat_busy "Starting $DAEMON" + [ -z "${PID}" ] && /opt/fah-v7/FAHClient --config /opt/fah-v7/config.xml --exec-directory=/opt/fah-v7 --data-directory=/opt/fah-v7 &> /dev/null & + add_daemon $DAEMON + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + exit 1 + else + stat_done + exit 1 + fi + ;; + stop) + stat_busy "Stopping $DAEMON" + [ ! -z "${PID}" ] && kill ${PID} &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon $DAEMON + stat_done + exit 1 + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.service b/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.service new file mode 100644 index 0000000..4634582 --- /dev/null +++ b/abs/extra/foldingathome/foldingathome-v7/foldingathome-v7.service @@ -0,0 +1,12 @@ +[Unit] +Description=Folding@home V7 distributed computing client +After=network.target + +[Service] +Type=simple +WorkingDirectory=/opt/fah-v7 +ExecStart=/opt/fah-v7/FAHClient --config /opt/fah-v7/config.xml --exec-directory=/opt/fah-v7 --data-directory=/opt/fah-v7 + +[Install] +WantedBy=multi-user.target + diff --git a/abs/extra/fontforge/PKGBUILD b/abs/extra/fontforge/PKGBUILD index ff53b21..e886302 100644 --- a/abs/extra/fontforge/PKGBUILD +++ b/abs/extra/fontforge/PKGBUILD @@ -1,24 +1,28 @@ -# $Id$ +# $Id: PKGBUILD 171504 2012-11-18 08:12:30Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Eric Belanger <eric@archlinux.org> # Contributor: William Rea <sillywilly@gmail.com> pkgname=fontforge -pkgver=20120119 -pkgrel=1 +pkgver=20120731_b +pkgrel=2 pkgdesc='Outline and bitmap font editor' arch=('i686' 'x86_64') url='http://fontforge.sourceforge.net/' license=('BSD') -depends=('libxkbui' 'libxi' 'libxml2' 'pango' 'giflib' 'libtiff' 'python2' 'libspiro') +depends=('libxkbui' 'libxi' 'libxml2' 'pango' 'giflib' 'libtiff' 'python2' 'libspiro' + 'desktop-file-utils' 'gtk-update-icon-cache' 'hicolor-icon-theme') options=('!libtool' '!makeflags') -source=("ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.xz") -sha1sums=('2c363af075e77bf35d21ee1939e3d6ab39a9f80c') +source=("http://downloads.sourceforge.net/project/fontforge/fontforge-source/fontforge_full-${pkgver//_/-}.tar.bz2") +sha1sums=('b520f532b48e557c177dffa29120225066cc4e84') # git clone git://fontforge.git.sourceforge.net/gitroot/fontforge/fontforge; cd fontforge; git archive --prefix=${pkgname}-${pkgver}/ master | xz > ../${pkgname}-${pkgver}.tar.xz +# source=("ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.xz") + +install=install build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgname}-${pkgver//_/-}" sed -i 's/python /python2 /g' Makefile.dynamic.in ./configure \ --prefix=/usr \ @@ -34,7 +38,9 @@ build() { } package() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgname}-${pkgver//_/-}" make DESTDIR="${pkgdir}" install install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -Dm644 Packaging/fontforge.desktop "${pkgdir}/usr/share/applications/fontforge.desktop" + install -d "${pkgdir}/usr/share/icons/hicolor"; mv Packaging/icons "${pkgdir}/usr/share/icons/hicolor" } diff --git a/abs/extra/fontforge/install b/abs/extra/fontforge/install new file mode 100644 index 0000000..5ffa247 --- /dev/null +++ b/abs/extra/fontforge/install @@ -0,0 +1,12 @@ +post_upgrade() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_install() { + post_upgrade +} + +post_remove() { + post_upgrade +} diff --git a/abs/extra/freetds/PKGBUILD b/abs/extra/freetds/PKGBUILD new file mode 100644 index 0000000..aadeff7 --- /dev/null +++ b/abs/extra/freetds/PKGBUILD @@ -0,0 +1,29 @@ +# $Id: PKGBUILD 11362 2010-02-09 23:57:26Z dgriffiths $ +# Contributor: Aaron Malone <aaron@munge.net> + +pkgname=freetds +pkgver=0.91 +pkgrel=2 +pkgdesc='Library for accessing Sybase and MS SQL Server databases' +url='http://www.freetds.org' +arch=('i686' 'x86_64') +license=('LGPL') +depends=('unixodbc') +options=('!libtool') +backup=('etc/freetds/freetds.conf' + 'etc/freetds/locales.conf' + 'etc/freetds/pool.conf') +#source=("ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/${pkgname}-${pkgver}.tar.gz") +source=("ftp://ftp.freetds.org/pub/freetds/stable/${pkgname}-${pkgver}.tar.gz") +md5sums=('b14db5823980a32f0643d1a84d3ec3ad') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --sysconfdir=/etc/freetds --mandir=/usr/share/man --enable-msdblib --with-tdsver=7.0 + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/abs/extra/freetds/__changelog b/abs/extra/freetds/__changelog new file mode 100644 index 0000000..2e071df --- /dev/null +++ b/abs/extra/freetds/__changelog @@ -0,0 +1 @@ +changed url diff --git a/abs/extra/frozen-bubble/PKGBUILD b/abs/extra/frozen-bubble/PKGBUILD index 1989276..c003f80 100644 --- a/abs/extra/frozen-bubble/PKGBUILD +++ b/abs/extra/frozen-bubble/PKGBUILD @@ -1,30 +1,41 @@ -# $Id: PKGBUILD 22250 2008-12-24 11:30:19Z allan $ -# Maintainer: Allan McRae <allan@archlinux.org> +# $Id: PKGBUILD 160465 2012-06-02 10:25:48Z bluewind $ +# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: Brandon Niemczyk <maccorin@cfl.rr.com> pkgname=frozen-bubble -pkgver=2.2.0 -pkgrel=2 +_pkgver=2.2.1-beta1 +pkgver=${_pkgver/-/} +pkgrel=4 pkgdesc="A game in which you throw colorful bubbles and build groups to destroy the bubbles" -arch=('i686' 'x86_64') +arch=(i686 x86_64) url="http://www.frozen-bubble.org" -license=('GPL2') -depends=('sdl_perl' 'sdl_mixer' 'perl-locale-gettext' 'sdl_pango') +license=(GPL2) +depends=(perl-sdl perl-ipc-system-simple perl-compress-bzip2 perl-file-which) +makedepends=(perl-file-slurp perl-locale-maketext-lexicon) options=('!emptydirs') -source=(http://www.frozen-bubble.org/data/${pkgname}-${pkgver}.tar.bz2 \ +source=(http://www.frozen-bubble.org/data/$pkgname-$_pkgver.tar.bz2 \ frozen-bubble.desktop) -md5sums=('f7987201470d6755ed309762d348e0dd' '3e0755836580e374e0911653f8cd33e2') +md5sums=('825cc23ed806838b9d86de9982a5687a' + '01b10b77ba6ad856f5c199121c582272') build() { - cd ${srcdir}/${pkgname}-${pkgver} - make OPTIMIZE="${CFLAGS}" \ - CFLAGS="$(pkg-config glib-2.0 --cflags)" INSTALLDIRS=vendor \ - PREFIX=/usr || return 1 - - make DESTDIR=${pkgdir} PREFIX=/usr install || return 1 - install -D -m644 icons/frozen-bubble-icon-64x64.png ${pkgdir}/usr/share/pixmaps/frozen-bubble.png || return 1 - install -D -m644 ${srcdir}/frozen-bubble.desktop ${pkgdir}/usr/share/applications/frozen-bubble.desktop || return 1 + cd "$srcdir/$pkgname-$_pkgver" + unset CFLAGS + # install module in vendor directories + perl Build.PL installdirs=vendor + perl Build +} + +check() { + cd "$srcdir/$pkgname-$_pkgver" + perl Build test +} + +package() { + cd "$srcdir/$pkgname-$_pkgver" + perl Build install destdir="$pkgdir" - find $startdir/pkg -name '.packlist' -delete - find $startdir/pkg -name '*.pod' -delete + install -D -m644 share/icons/frozen-bubble-icon-64x64.png "$pkgdir/usr/share/pixmaps/frozen-bubble.png" + install -D -m644 "$srcdir/frozen-bubble.desktop" "$pkgdir/usr/share/applications/frozen-bubble.desktop" } diff --git a/abs/extra/frozen-bubble/frozen-bubble.desktop b/abs/extra/frozen-bubble/frozen-bubble.desktop index 6e53e5d..76a7bcd 100644 --- a/abs/extra/frozen-bubble/frozen-bubble.desktop +++ b/abs/extra/frozen-bubble/frozen-bubble.desktop @@ -4,6 +4,6 @@ Version=1.0 Encoding=UTF-8 Name=Frozen Bubble Icon=frozen-bubble.png -Exec=frozen-bubble +Exec=/usr/bin/vendor_perl/frozen-bubble Terminal=false Categories=Game; diff --git a/abs/extra/fuppes-svn/PKGBUILD b/abs/extra/fuppes-svn/PKGBUILD deleted file mode 100644 index 03ffb9c..0000000 --- a/abs/extra/fuppes-svn/PKGBUILD +++ /dev/null @@ -1,54 +0,0 @@ -# Contributor: Andrew Krawchyk <krawch_a@denison.edu> -# patch for svn r634: Ivan Yurasov <vd@vdk.su> - -pkgname=fuppes-svn -pkgver=664 -pkgrel=1 -pkgdesc="A free, multiplatform Universal Plug and Play A/V MediaServer" -arch=('i686' 'x86_64') -url="http://fuppes.ulrich-voelkel.de/" -license=('GPL2') -depends=('pcre' 'libxml2' 'sqlite3' 'gettext' 'taglib' 'imagemagick' 'ffmpeg' 'libmp4v2' 'lame' 'libvorbis' 'libmpcdec' 'flac' 'faad2' 'libmad') -makdepends=('pkgconfig' 'autoconf' 'subversion') -install=fuppes.install -source=(fuppes-r634-archlinux.patch fuppes.diff fuppes.cfg run fuppes.ch fuppes.lr) - -_svnmod="fuppes" -_svntrunk="https://fuppes.svn.sourceforge.net/svnroot/fuppes/trunk" - -build() -{ - cd ${startdir}/src - - msg "Getting sources..." - svn co ${_svntrunk} ${_svnmod} - msg "Done getting sources or failed to connect to server." - - cd ${_svnmod} - -# patch -Np0 -i ../fuppes-r634-archlinux.patch -# patch -Np0 -i ../fuppes.diff - autoreconf -vfi - - ./configure --prefix=/usr \ - --enable-video-transcoding \ - --disable-twolame || return 1 - - make || return 1 - make DESTDIR=$startdir/pkg install || return 1 - mkdir -p $startdir/pkg/etc/sv/fuppes/supervise - install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/fuppes/ - mkdir -p $startdir/pkg/etc/fuppes - cp $startdir/src/fuppes.cfg $startdir/pkg/etc/fuppes - mkdir -p $startdir/pkg/etc/cron.hourly - mkdir -p $startdir/pkg/etc/logrotate.d/ - install -D -m755 $startdir/src/fuppes.ch $startdir/pkg/etc/cron.hourly - install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/fuppes - install -D -m755 $startdir/src/fuppes.lr $startdir/pkg/etc/logrotate.d -} -md5sums=('5d9f6331cc91b64aab69449ce327b214' - 'c495fa1bd9a870ae36820632434319ee' - 'b0cef07d8e60d01c8146a69870672e1f' - '3850001378088e5efac60487e5550d54' - '3c355b860f1b0d273f5aa8b2bea1bde6' - '3151a3862fbc6b758d7ae5776eba3d57') diff --git a/abs/extra/fuppes-svn/PKGBUILD.orig b/abs/extra/fuppes-svn/PKGBUILD.orig deleted file mode 100644 index 79d11e2..0000000 --- a/abs/extra/fuppes-svn/PKGBUILD.orig +++ /dev/null @@ -1,52 +0,0 @@ -# Contributor: Andrew Krawchyk <krawch_a@denison.edu> -# patch for svn r634: Ivan Yurasov <vd@vdk.su> - -pkgname=fuppes-svn -pkgver=636 -pkgrel=9 -pkgdesc="A free, multiplatform Universal Plug and Play A/V MediaServer" -arch=('i686' 'x86_64') -url="http://fuppes.ulrich-voelkel.de/" -license=('GPL2') -depends=('pcre' 'libxml2' 'sqlite3' 'gettext' 'taglib' 'imagemagick' 'ffmpeg' 'libmp4v2' 'lame' 'libvorbis' 'libmpcdec' 'flac' 'faad2' 'libmad') -makdepends=('pkgconfig' 'autoconf' 'subversion') -install=fuppes.install -source=(fuppes-r634-archlinux.patch fuppes.diff fuppes.cfg run fuppes.ch fuppes.lr) -md5sums=('5d9f6331cc91b64aab69449ce327b214' 'c495fa1bd9a870ae36820632434319ee' \ - 'b0cef07d8e60d01c8146a69870672e1f' '3850001378088e5efac60487e5550d54' \ - '3c355b860f1b0d273f5aa8b2bea1bde6') - -_svnmod="fuppes" -_svntrunk="https://fuppes.svn.sourceforge.net/svnroot/fuppes/trunk" - -build() -{ - cd ${startdir}/src - - msg "Getting sources..." - svn co -r 636 ${_svntrunk} ${_svnmod} - msg "Done getting sources or failed to connect to server." - - cd ${_svnmod} - - patch -Np0 -i ../fuppes-r634-archlinux.patch - patch -Np0 -i ../fuppes.diff - autoreconf -vfi - - ./configure --prefix=/usr \ - --enable-video-transcoding \ - --disable-twolame || return 1 - - make || return 1 - make DESTDIR=$startdir/pkg install || return 1 - mkdir -p $startdir/pkg/etc/sv/fuppes/supervise - install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/fuppes/ - mkdir -p $startdir/pkg/etc/fuppes - cp $startdir/src/fuppes.cfg $startdir/pkg/etc/fuppes - mkdir -p $startdir/pkg/etc/cron.hourly - mkdir -p $startdir/pkg/etc/logrotate.d/ - mkdir -p $startdir/pkg/etc/sv/fuppes/supervise - install -D -m755 $startdir/src/fuppes.ch $startdir/pkg/etc/cron.hourly - install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/fuppes - install -D -m755 $startdir/src/fuppes.lr $startdir/pkg/etc/logrotate.d -} diff --git a/abs/extra/fuppes-svn/fuppes-r634-archlinux.patch b/abs/extra/fuppes-svn/fuppes-r634-archlinux.patch deleted file mode 100644 index feaccfa..0000000 --- a/abs/extra/fuppes-svn/fuppes-r634-archlinux.patch +++ /dev/null @@ -1,93 +0,0 @@ -Index: src/plugins/ffmpeg/ffmpeg.cpp -=================================================================== ---- src/plugins/ffmpeg/ffmpeg.cpp (revision 634) -+++ src/plugins/ffmpeg/ffmpeg.cpp (working copy) -@@ -2190,7 +2190,7 @@ - p=NULL; - for(p = av_codec_next(p); p != NULL; p = av_codec_next(p) ) { - #else -- for(p = first_avcodec; p != NULL; p = p->next) { -+ for(p = av_codec_next(NULL); p != NULL; p = p->next) { - #endif - - if((p2==NULL || strcmp(p->name, p2->name)<0) && -@@ -2269,7 +2269,7 @@ - } - avformat_opts = av_alloc_format_context(); - #ifdef HAVE_LIBSWSCALE -- sws_opts = sws_getContext(16,16,0, 16,16,0, sws_flags, NULL,NULL,NULL); -+ sws_opts = sws_getContext(16,16,(PixelFormat)0, 16,16,(PixelFormat)0, sws_flags, NULL,NULL,NULL); - #endif - - -Index: src/plugins/ffmpeg/ffmpeg.h -=================================================================== ---- src/plugins/ffmpeg/ffmpeg.h (revision 634) -+++ src/plugins/ffmpeg/ffmpeg.h (working copy) -@@ -38,7 +38,7 @@ - #include <ctype.h> - #include <string.h> - --#if FFMPEG_VERSION >= 52 && !defined(OLD_INCLUDES_PATH) -+/* #if FFMPEG_VERSION >= 52 && !defined(OLD_INCLUDES_PATH) */ - #include <libavformat/avformat.h> - #include <libavutil/avutil.h> - #include <libavutil/fifo.h> -@@ -51,27 +51,27 @@ - #ifdef HAVE_AVSTRING_H - #include <libavutil/avstring.h> - #endif --#else -+/* #else - #include <avformat.h> - #include <avutil.h> - #include <fifo.h> -- #include <opt.h> -+ #include <opt.h> */ - - - #ifdef HAVE_LIBSWSCALE -- #include <swscale.h> -+ #include <libswscale/swscale.h> - #endif - - #ifdef HAVE_AVSTRING_H -- #include <avstring.h> -+ #include <libavutil/avstring.h> - #endif --#endif -+/* #endif */ - - - #include <math.h> - #include <stdlib.h> - #include <limits.h> -- //#include <mem.h> -+ //#include <mem.h> - - } - #endif // __cplusplus -Index: version.sh -=================================================================== ---- version.sh (revision 634) -+++ version.sh (working copy) -@@ -1,8 +1,15 @@ - #!/bin/sh - --svn_revision=`cd "$1" && LC_ALL=C svn info 2> /dev/null | grep Revision | cut -d' ' -f2` --test $svn_revision || svn_revision=`cd "$1" && grep revision .svn/entries 2>/dev/null | cut -d '"' -f2` --test $svn_revision || svn_revision=`cd "$1" && sed -n -e '/^dir$/{n;p;q}' .svn/entries 2>/dev/null` -+if [ "$1" == "" ] -+then -+DIR="." -+else -+DIR="$1" -+fi -+ -+svn_revision=`cd "$DIR" && LC_ALL=C svn info 2> /dev/null | grep Revision | cut -d' ' -f2` -+test $svn_revision || svn_revision=`cd "$DIR" && grep revision .svn/entries 2>/dev/null | cut -d '"' -f2` -+test $svn_revision || svn_revision=`cd "$DIR" && sed -n -e '/^dir$/{n;p;q}' .svn/entries 2>/dev/null` - test $svn_revision || svn_revision=UNKNOWN - - NEW_REVISION="#define FUPPES_VERSION \"0.$svn_revision\"" - diff --git a/abs/extra/fuppes-svn/fuppes.cfg b/abs/extra/fuppes-svn/fuppes.cfg deleted file mode 100644 index beb81cf..0000000 --- a/abs/extra/fuppes-svn/fuppes.cfg +++ /dev/null @@ -1,216 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<fuppes_config version="0.7.2.3"> - <shared_objects> - <!--<dir>/mnt/music</dir>--> - <!--<itunes>/Users/.../iTunes.xml</itunes>--> - <dir>/myth/tv</dir> - <dir>/myth/video</dir> - <dir>/myth/music</dir> - <dir>/myth/gallery</dir> - <dir>/myth/pretty</dir> - </shared_objects> - <network> - <!--empty = automatic detection--> - <interface>192.168.1.253</interface> - <!--empty or 0 = random port--> - <http_port>81</http_port> - <!--list of ip addresses allowed to access fuppes. if empty all ips are allowed--> - <allowed_ips> - <!--<ip>192.168.0.1</ip>--> - </allowed_ips> - </network> - <content_directory> - <!--a list of possible charsets can be found under: - http://www.gnu.org/software/libiconv/--> - <local_charset>UTF-8</local_charset> - <!--libs used for metadata extraction when building the database. [true|false]--> - <use_imagemagick>true</use_imagemagick> - <use_taglib>true</use_taglib> - <use_libavformat>true</use_libavformat> - </content_directory> - <global_settings> - <temp_dir/> - <!--uuid is written to and read from <config-dir>/uuid.txt if set to true--> - <use_fixed_uuid>false</use_fixed_uuid> - </global_settings> - <device_settings> - <!--"default" settings are inhertied by specific devices and can be overwritten--> - <!--do NOT remove the "default" device settings--> - <!--all new file types have to be added to the default settings--> - <!--adding new file types just to a specific device will have no affect--> - <device name="default"> - <!--specify the maximum length for file names (0 or empty = unlimited)--> - <max_file_name_length>0</max_file_name_length> - <!--[file|container]--> - <playlist_style>file</playlist_style> - <show_childcount_in_title>false</show_childcount_in_title> - <enable_dlna>false</enable_dlna> - <transcoding_release_delay>4</transcoding_release_delay> - <file_settings> - <!--audio files--> - <file ext="mp3"> - <type>AUDIO_ITEM</type> - <mime_type>audio/mpeg</mime_type> - <dlna>MP3</dlna> - </file> - <file ext="ogg"> - <type>AUDIO_ITEM</type> - <mime_type>application/octet-stream</mime_type> - <transcode enabled="true"> - <ext>mp3</ext> - <mime_type>audio/mpeg</mime_type> - <dlna>MP3</dlna> - <http_encoding>chunked</http_encoding> - <decoder>vorbis</decoder> - <encoder>lame</encoder> - <bitrate>192</bitrate> - <samplerate>44100</samplerate> - </transcode> - </file> - <file ext="mpc"> - <type>AUDIO_ITEM</type> - <mime_type>application/octet-stream</mime_type> - <transcode enabled="true"> - <ext>mp3</ext> - <mime_type>audio/mpeg</mime_type> - <dlna>MP3</dlna> - <http_encoding>chunked</http_encoding> - <decoder>musepack</decoder> - <encoder>lame</encoder> - <bitrate>192</bitrate> - <samplerate>44100</samplerate> - </transcode> - </file> - <file ext="wav"> - <type>AUDIO_ITEM</type> - <mime_type>audio/x-wav</mime_type> - </file> - <file ext="flac"> - <type>AUDIO_ITEM</type> - <mime_type>audio/x-flac</mime_type> - <transcode enabled="true"> - <ext>mp3</ext> - <mime_type>audio/mpeg</mime_type> - <dlna>MP3</dlna> - <http_encoding>chunked</http_encoding> - <decoder>flac</decoder> - <encoder>lame</encoder> - <bitrate>192</bitrate> - <samplerate>44100</samplerate> - </transcode> - </file> - <file ext="wma"> - <type>AUDIO_ITEM</type> - <mime_type>audio/x-ms-wma</mime_type> - <dlna>WMAFULL</dlna> - </file> - <!--image files--> - <file ext="jpg"> - <ext>jpeg</ext> - <type>IMAGE_ITEM</type> - <mime_type>image/jpeg</mime_type> - <convert enabled="false"> - <!--<dcraw enabled="true">-q 0</dcraw>--> - <ext>png</ext> - <mime_type>image/png</mime_type> - <height>0</height> - <width>0</width> - <!--set "greater" to "true" if you only want to resize images greater than "height" or "width"--> - <greater>false</greater> - <!--set "less" to "true" if you only want to resize images less than "height" or "width"--> - <less>false</less> - <!--set "less" and "greater" to "false" if you always want to resize--> - </convert> - </file> - <file ext="bmp"> - <type>IMAGE_ITEM</type> - <mime_type>image/bmp</mime_type> - </file> - <file ext="png"> - <type>IMAGE_ITEM</type> - <mime_type>image/png</mime_type> - </file> - <file ext="gif"> - <type>IMAGE_ITEM</type> - <mime_type>image/gif</mime_type> - </file> - <!--video files--> - <file ext="mpg"> - <ext>mpeg</ext> - <type>VIDEO_ITEM</type> - <mime_type>video/mpeg</mime_type> - </file> - <file ext="mp4"> - <type>VIDEO_ITEM</type> - <mime_type>video/mp4</mime_type> - </file> - <file ext="avi"> - <type>VIDEO_ITEM</type> - <mime_type>video/x-msvideo</mime_type> - </file> - <file ext="wmv"> - <type>VIDEO_ITEM</type> - <mime_type>video/x-ms-wmv</mime_type> - </file> - <file ext="vob"> - <type>VIDEO_ITEM</type> - <mime_type>video/x-ms-vob</mime_type> - </file> - <file ext="vdr"> - <type>VIDEO_ITEM</type> - <mime_type>video/x-extension-vdr</mime_type> - <transcode enabled="true"> - <ext>vob</ext> - <mime_type>video/x-ms-vob</mime_type> - </transcode> - </file> - <file ext="flv"> - <type>VIDEO_ITEM</type> - <mime_type>application/x-flash-video</mime_type> - </file> - <file ext="asf"> - <type>VIDEO_ITEM</type> - <mime_type>video/x-ms-asf</mime_type> - </file> - <!--playlists--> - <file ext="pls"> - <type>PLAYLIST</type> - <mime_type>audio/x-scpls</mime_type> - </file> - <file ext="m3u"> - <type>PLAYLIST</type> - <mime_type>audio/x-mpegurl</mime_type> - </file> - </file_settings> - </device> - <!--For other device settings take a look at http://fuppes.ulrich-voelkel.de/wiki/index.php/Category:Device--> - <!--If you have more than one device it is a good idea to set the ip address as some devices may have conflicting "user agents".--> - <!--It is safe to remove unneeded devices--> - <device name="PS3" enabled="false"> - <user_agent>UPnP/1.0 DLNADOC/1.00</user_agent> - <user_agent>PLAYSTATION3</user_agent> - <!--<ip></ip>--> - <enable_dlna>true</enable_dlna> - <transcoding_release_delay>50</transcoding_release_delay> - <file_settings> - <file ext="ogg"> - <type>AUDIO_ITEM_MUSIC_TRACK</type> - <transcode enabled="true"> - <http_encoding>stream</http_encoding> - </transcode> - </file> - </file_settings> - </device> - <device name="Xbox 360" virtual="Xbox 360" enabled="false"> - <user_agent>Xbox/2.0.\d+.\d+ UPnP/1.0 Xbox/2.0.\d+.\d+</user_agent> - <user_agent>Xenon</user_agent> - <xbox360>true</xbox360> - <show_empty_resolution>true</show_empty_resolution> - <description_values> - <friendly_name>%s %v : 1 : Windows Media Connect</friendly_name> - <model_name>Windows Media Connect compatible (%s)</model_name> - <model_number>2.0</model_number> - </description_values> - </device> - </device_settings> -</fuppes_config> diff --git a/abs/extra/fuppes-svn/fuppes.ch b/abs/extra/fuppes-svn/fuppes.ch deleted file mode 100644 index 60960b5..0000000 --- a/abs/extra/fuppes-svn/fuppes.ch +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -/usr/bin/wget -O /dev/null -q http://localhost:81/presentation/options.html?db=update &> /dev/null diff --git a/abs/extra/fuppes-svn/fuppes.diff b/abs/extra/fuppes-svn/fuppes.diff deleted file mode 100644 index 9b7b6a8..0000000 --- a/abs/extra/fuppes-svn/fuppes.diff +++ /dev/null @@ -1,25 +0,0 @@ ---- src/plugins/ffmpeg/ffmpeg.cpp.orig 2009-05-29 20:12:09.000000000 +0000 -+++ src/plugins/ffmpeg/ffmpeg.cpp 2009-05-29 20:10:01.000000000 +0000 -@@ -1021,19 +1021,9 @@ - if (subtitle_to_free) { - if (subtitle_to_free->rects != NULL) { - for (i = 0; i < subtitle_to_free->num_rects; i++) { -- --#ifndef LIBAVCODEC_VERSION_MINOR --#define LIBAVCODEC_VERSION_MINOR 0 --#endif -- --#if LIBAVCODEC_VERSION_MINOR >= 11 -- av_freep(subtitle_to_free->rects[i]->pict.data[0]); -- av_freep(subtitle_to_free->rects[i]->pict.data[1]); -- av_freep(subtitle_to_free->rects[i]); --#else -- av_free(subtitle_to_free->rects[i].bitmap); -- av_free(subtitle_to_free->rects[i].rgba_palette); --#endif -+ av_freep(&subtitle_to_free->rects[i]->pict.data[0]); -+ av_freep(&subtitle_to_free->rects[i]->pict.data[1]); -+ av_freep(&subtitle_to_free->rects[i]); - } - av_freep(&subtitle_to_free->rects); - } diff --git a/abs/extra/fuppes-svn/fuppes.install b/abs/extra/fuppes-svn/fuppes.install deleted file mode 100644 index d0099e3..0000000 --- a/abs/extra/fuppes-svn/fuppes.install +++ /dev/null @@ -1,20 +0,0 @@ -# arg 1: the new package version -post_install() { - sv stop mythbackend - mv /etc/sv/mythbackend/run /tmp - sed 's/logfile/noupnp\ --logfile/' </tmp/run >/etc/sv/mythbackend/run - chmod 755 /etc/sv/mythbackend/run - sv start mythbackend - add_service.sh fuppes - sv start fuppes -} - -post_remove() { - sv stop fuppes - remove_service.sh fuppes - mv /etc/sv/mythbackend/run /tmp/run - sv stop mythbackend - sed 's/--noupnp\ --logfile/--logfile/' </tmp/run >/etc/sv/mythbackend/run - chmod 755 /etc/sv/mythbackend/run - sv start mythbackend -} diff --git a/abs/extra/fuppes-svn/fuppes.lr b/abs/extra/fuppes-svn/fuppes.lr deleted file mode 100644 index ec2f88f..0000000 --- a/abs/extra/fuppes-svn/fuppes.lr +++ /dev/null @@ -1,9 +0,0 @@ -/var/log/fuppes/fuppes.log { - copytruncate - daily - size 10M - missingok - rotate 7 - compress - notifempty -} diff --git a/abs/extra/fuppes-svn/run b/abs/extra/fuppes-svn/run deleted file mode 100755 index dc69879..0000000 --- a/abs/extra/fuppes-svn/run +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -exec su mythtv -c "/usr/bin/fuppes --config-dir /etc/fuppes --database-file /data/srv/fuppes/fuppes.db --temp-dir /myth/tmp" diff --git a/abs/extra/gc/PKGBUILD b/abs/extra/gc/PKGBUILD new file mode 100644 index 0000000..e120ef5 --- /dev/null +++ b/abs/extra/gc/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 161367 2012-06-10 10:38:24Z jgc $ +# Maintainer: Daniel Isenmann <daniel [at] archlinux.org> +# Contributor: dorphell <dorphell@gmx.net> + +pkgname=gc +pkgver=7.2 +pkgrel=1 +pkgdesc="A garbage collector for C and C++" +arch=('i686' 'x86_64') +url="http://www.hpl.hp.com/personal/Hans_Boehm/gc/" +license=('GPL') +source=("http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/${pkgname}-${pkgver}.tar.gz") +depends=('gcc-libs') +options=('!libtool') +md5sums=('d17aecedef3d73e75387fb63558fa4eb') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --enable-cplusplus + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + rm -rf "${pkgdir}/usr/share/gc" + install -m755 -d "${pkgdir}/usr/share/doc/gc" + install -m644 doc/README{,.{changes,contributors,environment,linux}} \ + "${pkgdir}/usr/share/doc/gc/" + + sed -i -e 's/GC_MALLOC 1L/gc 3/' doc/gc.man + install -m755 -d "${pkgdir}/usr/share/man/man3" + install -m644 doc/gc.man "${pkgdir}/usr/share/man/man3/gc.3" +} diff --git a/abs/extra/gconf/PKGBUILD b/abs/extra/gconf/PKGBUILD index 66de23f..9a4d1f6 100644 --- a/abs/extra/gconf/PKGBUILD +++ b/abs/extra/gconf/PKGBUILD @@ -1,45 +1,51 @@ -# $Id: PKGBUILD 91729 2010-09-27 18:54:15Z ibiru $ +# $Id: PKGBUILD 156770 2012-04-23 09:05:12Z ibiru $ # Maintainer: Jan de Groot <jan@archlinux.org> pkgname=gconf -pkgver=2.32.0 -pkgrel=1 +pkgver=3.2.5 +pkgrel=2 pkgdesc="A configuration database system" -arch=('i686' 'x86_64') +arch=(i686 x86_64) license=('LGPL') -depends=('orbit2>=2.14.18' 'gtk2>=2.22.0' 'libxml2>=2.7.7' 'polkit>=0.96' 'libldap>=2.4.22' 'dbus-glib>=0.86') -makedepends=('pkgconfig' 'intltool' 'gtk-doc' 'gobject-introspection') +depends=('libxml2' 'polkit' 'libldap' 'dbus-glib' 'gtk3') +makedepends=('intltool' 'gtk-doc' 'gobject-introspection') options=('!libtool') install=gconf.install url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/GConf/2.32/GConf-${pkgver}.tar.bz2 +source=(http://ftp.gnome.org/pub/gnome/sources/GConf/3.2/GConf-$pkgver.tar.xz gconf-merge-schema gconfpkg gconf-reload.patch 01_xml-gettext-domain.patch) -sha256sums=('54dd1dd7f49928a9cc42574bef6ef0481753770fc19986dc2004bbb7fac977a0' +sha256sums=('4ddea9503a212ee126c5b46a0a958fd5484574c3cb6ef2baf38db02e819e58c6' 'ee6b6e6f4975dad13a8c45f1c1f0547a99373bdecdcd6604bfc12965c328a028' 'bf1928718caa5df2b9e54a13cfd0f15a8fe0e09e86b84385ce023616a114e898' '567b78d8b4b4bbcb77c5f134d57bc503c34867fcc6341c0b01716bcaa4a21694' 'c883dec2b96978874a53700cfe7f26f24f8296767203e970bc6402b4b9945eb8') build() { - cd "${srcdir}/GConf-${pkgver}" + cd "GConf-$pkgver" # Patch from fedora - reloads gconf after installing schemas - patch -Np1 -i "${srcdir}/gconf-reload.patch" + patch -Np1 -i "$srcdir/gconf-reload.patch" # http://bugzilla.gnome.org/show_bug.cgi?id=568845 - patch -Np1 -i "${srcdir}/01_xml-gettext-domain.patch" + patch -Np1 -i "$srcdir/01_xml-gettext-domain.patch" + + # Python2 fix + sed -i '1s|#!/usr/bin/env python$|&2|' gsettings/gsettings-schema-convert ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --libexecdir=/usr/lib/GConf \ - --disable-static --enable-defaults-service + --disable-static --enable-defaults-service --with-gtk=3.0 \ + --disable-orbit + make pkglibdir=/usr/lib/GConf } + package() { - cd "${srcdir}/GConf-${pkgver}" - make DESTDIR="${pkgdir}" install - install -m755 -d "${pkgdir}/etc/gconf/gconf.xml.system" - install -m755 "${srcdir}/gconf-merge-schema" "${pkgdir}/usr/bin/" - install -d -m755 "${pkgdir}/usr/sbin" - install -m755 "${srcdir}/gconfpkg" "${pkgdir}/usr/sbin/" + cd "GConf-$pkgver" + make DESTDIR="$pkgdir" install + + install -m755 -d "$pkgdir/etc/gconf/gconf.xml.system" + install -m755 "$srcdir/gconf-merge-schema" "$pkgdir/usr/bin/" + install -Dm755 "$srcdir/gconfpkg" "$pkgdir/usr/sbin/gconfpkg" } diff --git a/abs/extra/gd/ChangeLog b/abs/extra/gd/ChangeLog deleted file mode 100644 index 813a49e..0000000 --- a/abs/extra/gd/ChangeLog +++ /dev/null @@ -1,11 +0,0 @@ -2010-01-17 Ionut Biru <ionut@archlinux.ro> - - * gd 2.0.36RC1-2 - * libpng 1.4.0/libjpeg 8 rebuild - -2009-10-30 Eric Belanger <eric@archlinux.org> - - * gd 2.0.36RC1-1 - * Upstream update - * Added perl depends - * Added ChangeLog diff --git a/abs/extra/gd/PKGBUILD b/abs/extra/gd/PKGBUILD index 4580855..2d89e7b 100644 --- a/abs/extra/gd/PKGBUILD +++ b/abs/extra/gd/PKGBUILD @@ -1,26 +1,31 @@ -# $Id: PKGBUILD 64437 2010-01-20 12:10:30Z ibiru $ +# $Id: PKGBUILD 148724 2012-02-05 11:48:15Z ibiru $ # Maintainer: Eric Belanger <eric@archlinux.org> pkgname=gd pkgver=2.0.36RC1 -pkgrel=3 +pkgrel=5 pkgdesc="Library for the dynamic creation of images by programmers" arch=('i686' 'x86_64') url="http://www.libgd.org/" license=('custom') -depends=('perl' 'libpng>=1.4.0' 'fontconfig' 'libjpeg>=8') +depends=('libpng' 'fontconfig' 'libjpeg') +optdepends=('perl: bdftogd script') options=('!libtool') -source=(http://www.libgd.org/releases/${pkgname}-${pkgver}.tar.bz2 libpng14.patch) +source=("ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.bz2" + 'libpng14.patch') md5sums=('e876979ca3130623a4e7866d9579171a' '7921556f4960e8d66cf4fb67ea7101b5') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i ${srcdir}/libpng14.patch || return 1 + patch -Np1 -i ${srcdir}/libpng14.patch + ./configure --prefix=/usr --without-xpm + make +} - ./configure --prefix=/usr --without-xpm || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 - install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" || return 1 +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/abs/extra/gdl/PKGBUILD b/abs/extra/gdl/PKGBUILD deleted file mode 100644 index f7ee580..0000000 --- a/abs/extra/gdl/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# $Id: PKGBUILD 32356 2009-03-30 17:59:10Z andyrtr $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=gdl -pkgver=2.90.0 -pkgrel=1 -pkgdesc="Gnome Devtool Libraries" -arch=(i686 x86_64) -license=('GPL') -url="http://www.gnome.org/" -depends=('libglade>=2.6.4') -makedepends=('pkgconfig') -options=('!libtool') -source=(http://ftp.gnome.org/pub/GNOME/sources/gdl/2.90/${pkgname}-${pkgver}.tar.bz2) - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} -md5sums=('7ccaafc1b55c510a4e39ea7e54844bb3') diff --git a/abs/extra/geoclue/PKGBUILD b/abs/extra/geoclue/PKGBUILD new file mode 100644 index 0000000..78936e4 --- /dev/null +++ b/abs/extra/geoclue/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 156782 2012-04-23 09:05:31Z ibiru $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: György BallĂł <ballogy@freestart.hu> + +pkgname=geoclue +pkgver=0.12.0 +pkgrel=5 +pkgdesc="Modular geoinformation service built on the D-Bus messaging system." +arch=('i686' 'x86_64') +url="http://geoclue.freedesktop.org/" +license=('LGPL') +depends=('dbus-glib' 'libxml2') +optdepends=('networkmanager: geolocation' + 'gconf: geolocation' + 'libsoup-gnome: Skyhook location provider') +makedepends=('gconf' 'libsoup-gnome' 'gtk-doc') +options=('!libtool') +source=(https://launchpad.net/geoclue/trunk/${pkgver%.*}/+download/$pkgname-$pkgver.tar.gz + geoclue-gcc46.patch) +md5sums=('33af8307f332e0065af056ecba65fec2' + '0cf8ecc350be702f623ed9a9715818c5') + +build() { + cd $pkgname-$pkgver + patch -Np1 -i ../geoclue-gcc46.patch + + sed -i 's/libnm_glib/libnm-glib/g' configure.ac + sed -i '/libsoup-gnome/s/$/ gthread-2.0/' configure.ac + autoreconf -f -i + + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir=/usr/lib/$pkgname \ + --disable-static + make +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} diff --git a/abs/extra/geoclue/__changelog b/abs/extra/geoclue/__changelog new file mode 100644 index 0000000..bffe724 --- /dev/null +++ b/abs/extra/geoclue/__changelog @@ -0,0 +1 @@ +removed networkmanager diff --git a/abs/extra/geoclue/geoclue-gcc46.patch b/abs/extra/geoclue/geoclue-gcc46.patch new file mode 100644 index 0000000..11bf485 --- /dev/null +++ b/abs/extra/geoclue/geoclue-gcc46.patch @@ -0,0 +1,23 @@ +From 90669619d1d621080ef00dcb8db1c3d206ee0bfe Mon Sep 17 00:00:00 2001 +From: Dan Williams <dcbw@redhat.com> +Date: Mon, 07 Mar 2011 23:46:15 +0000 +Subject: master: Fix warning with GCC 4.6 + +--- +diff --git a/src/master-provider.c b/src/master-provider.c +index 790c043..e4ea053 100644 +--- a/src/master-provider.c ++++ b/src/master-provider.c +@@ -846,10 +846,6 @@ gc_master_provider_initialize_interfaces (GcMasterProvider *provider) + static gboolean + gc_master_provider_initialize (GcMasterProvider *provider) + { +- GcMasterProviderPrivate *priv; +- +- priv = GET_PRIVATE (provider); +- + if (!gc_master_provider_initialize_interfaces (provider)) { + return FALSE; + } +-- +cgit v0.8.3-6-g21f6 diff --git a/abs/extra/geoip-database/PKGBUILD b/abs/extra/geoip-database/PKGBUILD new file mode 100644 index 0000000..7b8d4d9 --- /dev/null +++ b/abs/extra/geoip-database/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 163822 2012-07-20 22:15:57Z foutrelis $ +# Maintainer: Evangelos Foutras <evangelos@foutrelis.com> + +pkgname=geoip-database +pkgver=20120706 +pkgrel=1 +pkgdesc="GeoLite country geolocation database compiled by MaxMind" +arch=('any') +url="http://www.maxmind.com/app/ip-location" +license=('custom:OPEN DATA LICENSE') +source=(GeoIP-$pkgver.dat.gz::http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz + GeoIPv6-$pkgver.dat.gz::http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz + http://geolite.maxmind.com/download/geoip/database/LICENSE.txt) +noextract=(GeoIP-$pkgver.dat.gz + GeoIPv6-$pkgver.dat.gz) + +build() { + cd "$srcdir" + + for _database_name in GeoIP GeoIPv6; do + gunzip -c $_database_name-$pkgver.dat.gz >$_database_name.dat + done +} + +check() { + cd "$srcdir" + + for _database in {GeoIP,GeoIPv6}.dat; do + if ! grep -q 'MaxMind Inc All Rights Reserved' $_database; then + error "Copyright notice is missing from $_database; something is fishy!" + return 1 + fi + done +} + +package() { + cd "$srcdir" + + install -d "$pkgdir/usr/share/GeoIP" + install -m644 -t "$pkgdir/usr/share/GeoIP" GeoIP.dat GeoIPv6.dat + + install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE.txt" +} + +# vim:set ts=2 sw=2 et: +md5sums=('1bfcf1600cabcae5ff37fbddf82ba231' + '586740960300f6c5018eef279214d2b8' + 'a1381bd1aa0a0c91dc31b3f1e847cf4a') diff --git a/abs/extra/geoip/PKGBUILD b/abs/extra/geoip/PKGBUILD index 32c5927..8e75a5e 100644 --- a/abs/extra/geoip/PKGBUILD +++ b/abs/extra/geoip/PKGBUILD @@ -1,36 +1,43 @@ -# $Id$ +# $Id: PKGBUILD 158109 2012-05-03 01:01:32Z foutrelis $ # Maintainer: Dan McGee <dan@archlinux.org> # Contributor: Manolis Tzanidakis <manolis@archlinux.org> pkgname=geoip pkgver=1.4.8 -pkgrel=1 +pkgrel=2 pkgdesc="Non-DNS IP-to-country resolver C library & utils" arch=('i686' 'x86_64') url="http://www.maxmind.com/app/c" license=('GPL') -depends=('zlib') +depends=('zlib' 'geoip-database') backup=('etc/geoip/GeoIP.conf') -options=('!libtool') -source=(http://www.maxmind.com/download/geoip/api/c/GeoIP-${pkgver}.tar.gz) -md5sums=('05b7300435336231b556df5ab36f326d') +options=('!libtool' '!emptydirs') +source=(http://www.maxmind.com/download/geoip/api/c/GeoIP-$pkgver.tar.gz) +sha256sums=('cf0f6b2bac1153e34d6ef55ee3851479b347d2b5c191fda8ff6a51fab5291ff4') build() { - cd "${srcdir}/GeoIP-${pkgver}" + cd "$srcdir/GeoIP-$pkgver" - autoreconf -i - ./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc/geoip + autoreconf -vi + ./configure \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --sysconfdir=/etc/geoip make } check() { - cd "${srcdir}/GeoIP-${pkgver}" + cd "$srcdir/GeoIP-$pkgver" make check } package() { - cd "${srcdir}/GeoIP-${pkgver}" - make DESTDIR="${pkgdir}" install + cd "$srcdir/GeoIP-$pkgver" + + make DESTDIR="$pkgdir" install + + # country database is provided by geoip-database + rm "$pkgdir/usr/share/GeoIP/GeoIP.dat" } # vim:set ts=2 sw=2 et: diff --git a/abs/extra/git/ChangeLog b/abs/extra/git/ChangeLog new file mode 100644 index 0000000..f0c1523 --- /dev/null +++ b/abs/extra/git/ChangeLog @@ -0,0 +1,57 @@ +Simple version bumps are omitted from the following ChangeLog. + +2011-08-16 Dan McGee <dan@archlinux.org> + Version 1.7.6.1-1 + * Enable USE_LIBPCRE for `git grep -P` usage + +2011-05-05 Dan McGee <dan@archlinux.org> + Version 1.7.5.1-1 + * Byte compile emacs files (FS#20874) + * Respect CFLAGS/LDFLAGS (FS#23963) + +2011-04-27 Dan McGee <dan@archlinux.org> + Version 1.7.5-1 + * Add missing optdepends for git send-email (FS#20923) + +2011-01-05 Dan McGee <dan@archlinux.org> + Version 1.7.3.5-1 + * More flexible git-daemon RC scripts (FS#20575) + +2010-10-01 Allan McRae <allan@archlinux.org> + Version 1.7.3.1-2 + * Python 2/3 rebuild + +2010-06-29 Dan McGee <dan@archlinux.org> + Version 1.7.1.1-1 + * Add emacs completion files (FS#17968) + * Add git-daemon RC scripts (FS#19291) + +2009-06-05 Dan McGee <dan@archlinux.org> + Version 1.6.3.2-1 + * Remove gitweb from /usr/share; it needs customization to be helpful + * Add NO_CROSS_DIRECTORY_HARDLINKS option to build (FS#13683) + +2008-09-14 Dan McGee <dan@archlinux.org> + Version 1.6.0.2-1 + * Moved optional depends from install file to optdepends array + +2008-06-15 Dan McGee <dan@archlinux.org> + Version 1.5.6-1 + * Removed 'cpio' dependency, clone is now a builtin and no longer needs it + +2008-02-02 Dan McGee <dan@archlinux.org> + Version 1.5.4-1 + * Upstream version 1.5.4 + * Enable pthreads support in pack-objects. To use, set the pack.threads + git config option. Read manpages of pack-objects and config for more + details. + * Changelog added (with entries going back a bit). + +2008-01-28 Kevin Piche <kevin@archlinux.org> + Version 1.5.3.7-2 + * Updated for new perl policy (vendor dirs) + * Change license to GPL2 + +2007-11-01 Eric Belanger <eric@archlinux.org> + Version 1.5.3.5-2 + * Fix Perl module location diff --git a/abs/extra/git/PKGBUILD b/abs/extra/git/PKGBUILD new file mode 100644 index 0000000..75be079 --- /dev/null +++ b/abs/extra/git/PKGBUILD @@ -0,0 +1,107 @@ + +pkgname=git +pkgver=1.7.11.4 +pkgrel=1 +pkgdesc="the fast distributed version control system" +arch=(i686 x86_64) +url="http://git-scm.com/" +license=('GPL2') +depends=('curl' 'expat>=2.0' 'perl-error' 'perl>=5.14.0' 'openssl' 'pcre') +makedepends=('python2' 'emacs') +optdepends=('tk: gitk and git gui' + 'perl-libwww: git svn' + 'perl-term-readkey: git svn' + 'perl-mime-tools: git send-email' + 'perl-net-smtp-ssl: git send-email TLS support' + 'perl-authen-sasl: git send-email TLS support' + 'python2: various helper scripts' + 'subversion: git svn' + 'cvsps: git cvsimport') +replaces=('git-core') +provides=('git-core') +backup=('etc/conf.d/git-daemon.conf') +source=("http://git-core.googlecode.com/files/git-$pkgver.tar.gz" + "http://git-core.googlecode.com/files/git-manpages-$pkgver.tar.gz" + git-daemon + git-daemon.conf) +changelog=ChangeLog + +build() { + export PYTHON_PATH='/usr/bin/python2' + cd "$srcdir/$pkgname-$pkgver" + make prefix=/usr gitexecdir=/usr/lib/git-core \ + CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \ + USE_LIBPCRE=1 \ + NO_CROSS_DIRECTORY_HARDLINKS=1 \ + all + + cd contrib/emacs + make prefix=/usr +} + +check() { + export PYTHON_PATH='/usr/bin/python2' + cd "$srcdir/$pkgname-$pkgver" + local jobs + jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') + make prefix=/usr gitexecdir=/usr/lib/git-core \ + CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \ + USE_LIBPCRE=1 \ + NO_CROSS_DIRECTORY_HARDLINKS=1 \ + NO_SVN_TESTS=y \ + DEFAULT_TEST_TARGET=prove \ + GIT_PROVE_OPTS="$jobs -Q" \ + GIT_TEST_OPTS="--root=/dev/shm/" \ + test +} + + + +package() { + export PYTHON_PATH='/usr/bin/python2' + cd "$srcdir/$pkgname-$pkgver" + make prefix=/usr gitexecdir=/usr/lib/git-core \ + CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \ + USE_LIBPCRE=1 \ + NO_CROSS_DIRECTORY_HARDLINKS=1 \ + INSTALLDIRS=vendor DESTDIR="$pkgdir" install + + # bash completion + # until this is fixed, no point in loading it dynamically: + # http://git.661346.n2.nabble.com/bash-completion-now-loads-completions-dynamically-so-git-ps1-is-not-defined-when-you-open-a-shell-td7415323.html + #mkdir -p "$pkgdir"/usr/share/bash-completion/completions/ + #install -m644 ./contrib/completion/git-completion.bash "$pkgdir"/usr/share/bash-completion/completions/git + mkdir -p "$pkgdir"/etc/bash_completion.d/ + install -m644 ./contrib/completion/git-completion.bash "$pkgdir"/etc/bash_completion.d/git + # more contrib stuff + cp -a ./contrib $pkgdir/usr/share/git/ + # scripts are for python 2.x + sed -i 's|#![ ]*/usr/bin/env python|#!/usr/bin/env python2|' \ + $(find "$pkgdir" -name '*.py') \ + "$pkgdir"/usr/lib/git-core/git-p4 \ + "$pkgdir"/usr/share/git/gitview/gitview + + # emacs interface + cd contrib/emacs + make prefix=/usr DESTDIR="$pkgdir" install + + # how 'bout some manpages? + for mansect in man1 man5 man7; do + for manpage in "$srcdir"/$mansect/*; do + install -D -m644 $manpage "$pkgdir"/usr/share/man/$mansect/$(basename $manpage) + done + done + + # remove perllocal.pod, .packlist, and empty directories. + rm -rf "$pkgdir"/usr/lib/perl5 + + # git daemon script + install -D -m755 "$srcdir"/git-daemon "$pkgdir"/etc/rc.d/git-daemon + install -D -m644 "$srcdir"/git-daemon.conf "$pkgdir"/etc/conf.d/git-daemon.conf +} + +md5sums=('21c7100cddee8579233a924111e829ab' + '397af842126a5099968238ab946580a5' + '8e2648910fd5dd4f1c41d3c7fa9e9156' + '2e42bf97779a1c6411d89043334c9e78') + diff --git a/abs/extra/git/git-daemon b/abs/extra/git/git-daemon new file mode 100644 index 0000000..21ba73e --- /dev/null +++ b/abs/extra/git/git-daemon @@ -0,0 +1,70 @@ +#!/bin/bash + +daemon_bin="/usr/lib/git-core/git-daemon" +daemon_name=$(basename $daemon_bin) +PIDF="/var/run/$daemon_name.pid" + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/$daemon_name.conf + +get_pid() { + pidof -o %PPID $daemon_name +} + +case "$1" in + start) + stat_busy "Starting $daemon_name daemon" + + PID=$(get_pid) + if [ -z "$PID" ]; then + [ -f $PIDF ] && rm -f $PIDF + # RUN + $daemon_bin --pid-file=$PIDF $GIT_DAEMON_ARGS + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + echo $(get_pid) > $PIDF + add_daemon $daemon_name + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping $daemon_name daemon" + PID=$(get_pid) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm -f $PIDF &> /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 diff --git a/abs/extra/git/git-daemon.conf b/abs/extra/git/git-daemon.conf new file mode 100644 index 0000000..3f9a120 --- /dev/null +++ b/abs/extra/git/git-daemon.conf @@ -0,0 +1,5 @@ +# path to git repositories served +GIT_REPO="/srv/git/" +# see `man git-daemon` for all available options +# $GIT_REPO will be present twice in most configs +GIT_DAEMON_ARGS="--detach --syslog --verbose --base-path=$GIT_REPO $GIT_REPO" diff --git a/abs/extra/glew/PKGBUILD b/abs/extra/glew/PKGBUILD index 291abce..5a71939 100644 --- a/abs/extra/glew/PKGBUILD +++ b/abs/extra/glew/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 98297 2010-11-06 17:51:38Z stephane $ +# $Id: PKGBUILD 147734 2012-01-27 15:57:44Z stephane $ # Maintainer: StĂ©phane Gaudreault <stephane@archlinux.org> # Contributor: SleepyDog pkgname=glew -pkgver=1.5.7 -pkgrel=1 +pkgver=1.7.0 +pkgrel=3 pkgdesc="The OpenGL Extension Wrangler Library" arch=('i686' 'x86_64') url="http://glew.sourceforge.net" license=('BSD' 'MIT' 'GPL') depends=('libxmu' 'libxi' 'mesa') source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tgz) -sha1sums=('4adc816afbfb65a4969484d10343a88c117ca989') +sha1sums=('9266f2360c1687a96f2ea06419671d370b2928d1') build() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -21,8 +21,9 @@ build() { package() { cd "${srcdir}/${pkgname}-${pkgver}" - make GLEW_DEST="${pkgdir}/usr" install + make GLEW_DEST="${pkgdir}/usr" install.all install -D -m644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} -# vim: set noexpandtab tabstop=8 shiftwidth=8 textwidth=132 autoindent + rm "${pkgdir}"/usr/lib/{libGLEW,libGLEWmx}.a + chmod 0755 "${pkgdir}"/usr/lib/libGLEW*.so.${pkgver} +} diff --git a/abs/extra/glib-networking/PKGBUILD b/abs/extra/glib-networking/PKGBUILD new file mode 100644 index 0000000..d2ed8c3 --- /dev/null +++ b/abs/extra/glib-networking/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 159094 2012-05-15 14:33:52Z ibiru $ +# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com> + +pkgname=glib-networking +pkgver=2.32.3 +pkgrel=1 +pkgdesc="Network-related giomodules for glib" +arch=('i686' 'x86_64') +url="http://www.gtk.org/" +license=('GPL2') +depends=('glib2' 'libproxy' 'gnutls' 'libgcrypt' 'ca-certificates' 'gsettings-desktop-schemas') +makedepends=('intltool') +options=('!libtool') +install=glib-networking.install +source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('39fe23e86a57bb7a8a67c65668394ad0fbe2d43960c1f9d68311d5d13ef1e5cf') + +build() { + cd "$pkgname-$pkgver" + ./configure \ + --prefix=/usr --sysconfdir=/etc \ + --libexecdir=/usr/lib/glib-networking --disable-static + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/glib-networking/glib-networking.install b/abs/extra/glib-networking/glib-networking.install new file mode 100644 index 0000000..8214e19 --- /dev/null +++ b/abs/extra/glib-networking/glib-networking.install @@ -0,0 +1,11 @@ +post_install() { + gio-querymodules /usr/lib/gio/modules +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/abs/extra/glib-perl/PKGBUILD b/abs/extra/glib-perl/PKGBUILD deleted file mode 100644 index 121377f..0000000 --- a/abs/extra/glib-perl/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 81903 2010-06-07 10:01:01Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: Sarah Hay <sarah@archlinux.org> - -pkgname=glib-perl -_realname=Glib -pkgver=1.223 -pkgrel=1 -pkgdesc="Perl wrappers for glib 2.x, including GObject" -arch=('i686' 'x86_64') -license=('LGPL') -url="http://gtk2-perl.sourceforge.net/" -options=('!emptydirs') -depends=('glib2>=2.24.1' 'perl>=5.10.1') -makedepends=('perl-extutils-depends>=0.302' 'perl-extutils-pkgconfig>=1.12') -source=(http://downloads.sourceforge.net/sourceforge/gtk2-perl/${_realname}-${pkgver}.tar.gz) -md5sums=('cfdeaa8c95448f86c30b505e4701abf1') - -build() { - cd "${srcdir}/${_realname}-${pkgver}" - perl Makefile.PL INSTALLDIRS=vendor || return 1 - make || return 1 -} -package() { - cd "${srcdir}/${_realname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/abs/extra/glib-perl/__changelog b/abs/extra/glib-perl/__changelog deleted file mode 100644 index e44f8a2..0000000 --- a/abs/extra/glib-perl/__changelog +++ /dev/null @@ -1 +0,0 @@ -change perl dep to 5.10.1 diff --git a/abs/extra/glibmm/PKGBUILD b/abs/extra/glibmm/PKGBUILD index 7c008cb..c7473ed 100644 --- a/abs/extra/glibmm/PKGBUILD +++ b/abs/extra/glibmm/PKGBUILD @@ -1,35 +1,35 @@ -# $Id: PKGBUILD 79559 2010-05-04 13:57:18Z ibiru $ +# $Id: PKGBUILD 163765 2012-07-19 08:32:36Z heftig $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgbase=glibmm pkgname=('glibmm' 'glibmm-docs') -pkgver=2.24.2 +pkgver=2.32.1 pkgrel=1 arch=('i686' 'x86_64') license=('LGPL') -makedepends=('glib2>=2.24.1' 'libsigc++2.0>=2.2.5' 'pkgconfig') -source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.24/${pkgname}-${pkgver}.tar.bz2) +makedepends=('glib2' 'libsigc++2.0' 'pkgconfig') +source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) options=('!libtool') -url="http://gtkmm.sourceforge.net/" -sha256sums=('d4687c0b27f9c9f955a5306649008a1f8d8935edff916278fb7b65b44292ff7a') +url="http://www.gtkmm.org/" +sha256sums=('d6ed4d38e8739813941a0f0fec471c00ea93c5ed46179543340821c7ca798a2f') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 + cd "$pkgname-$pkgver" + ./configure --prefix=/usr + make } package_glibmm() { pkgdesc="Glib-- (glibmm) is a C++ interface for glib" - depends=('glib2>=2.24.0' 'libsigc++2.0>=2.2.5') - cd "${srcdir}/${pkgbase}-${pkgver}" + depends=('glib2' 'libsigc++2.0') + cd "$pkgbase-$pkgver" sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile - make DESTDIR="${pkgdir}" install || return 1 + make DESTDIR="$pkgdir" install } package_glibmm-docs() { pkgdesc="Developer documentation for glibmm" - cd "${srcdir}/${pkgbase}-${pkgver}/docs" - make DESTDIR="${pkgdir}" install || return 1 + cd "$pkgbase-$pkgver/docs" + make DESTDIR="$pkgdir" install } diff --git a/abs/extra/gnome-common/PKGBUILD b/abs/extra/gnome-common/PKGBUILD index c2c42b0..445cd50 100644 --- a/abs/extra/gnome-common/PKGBUILD +++ b/abs/extra/gnome-common/PKGBUILD @@ -1,23 +1,26 @@ -# $Id$ +# $Id: PKGBUILD 157808 2012-04-29 21:33:25Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gnome-common -pkgver=2.34.0 -pkgrel=1 -pkgdesc="Common development macros for GNOME2" +pkgver=3.4.0.1 +pkgrel=2 +pkgdesc="Common development macros for GNOME" arch=(any) license=('GPL') url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.34/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('7a9c4f9ab975501c36be3192aa61641abca045a215d519d7d00527706f1de1df') +source=(http://download.gnome.org/sources/$pkgname/${pkgver:0:3}/$pkgname-$pkgver.tar.xz + automake1.12.patch::http://git.gnome.org/browse/gnome-common/patch/?id=1fed4ee7015b89a1ac4c4a535aeb753e820e4970) +sha256sums=('3d92a5d1dae550c409f644d87a4bba17342e14fb11ce8b1e58757ce35f3a46f7' + '78081e33a0091bfb4531e723fcd6b28219c1c94173aea9071ecb5fe6da9066ab') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd $pkgname-$pkgver + patch -Np1 -i "$srcdir/automake1.12.patch" ./configure --prefix=/usr make } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install } diff --git a/abs/extra/gnome-desktop/PKGBUILD b/abs/extra/gnome-desktop/PKGBUILD deleted file mode 100644 index 7c10e8c..0000000 --- a/abs/extra/gnome-desktop/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 99767 2010-11-17 12:13:39Z ibiru $ -# Maintainer: Jan de Groot <jan@archlinux.org> - -pkgname=gnome-desktop -pkgver=2.32.1 -pkgrel=1 -pkgdesc="The GNOME Desktop" -arch=('i686' 'x86_64') -license=('GPL' 'LGPL') -depends=('gconf>=2.32.0' 'startup-notification>=0.10') -makedepends=('gnome-doc-utils>=0.20.1' 'intltool') -optdepends=('pygtk: gnome-about') -url="http://www.gnome.org" -groups=('gnome') -options=('!libtool') -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('55cbecf67efe1fa1e57ac966520a7c46d799c8ba3c652a1219f60cafccb3739d') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static \ - --with-gnome-distributor="Archlinux" \ - --disable-scrollkeeper - make || return 1 -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/gnome-doc-utils/PKGBUILD b/abs/extra/gnome-doc-utils/PKGBUILD index e09f2b0..b074351 100644 --- a/abs/extra/gnome-doc-utils/PKGBUILD +++ b/abs/extra/gnome-doc-utils/PKGBUILD @@ -1,25 +1,27 @@ -# $Id: PKGBUILD 24717 2009-01-20 09:52:00Z douglas $ +# $Id: PKGBUILD 154361 2012-03-27 10:59:07Z heftig $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gnome-doc-utils -pkgver=0.20.2 -pkgrel=2 +pkgver=0.20.10 +pkgrel=1 pkgdesc="Documentation utilities for Gnome" -arch=('i686' 'x86_64') +arch=('any') license=('GPL' 'LGPL') -depends=('libxslt>=1.1.24' 'python2>=2.6' 'docbook-xml' 'rarian>=0.8.1') -makedepends=('pkgconfig' 'perlxml') +depends=('libxslt' 'python2' 'docbook-xml' 'rarian') +makedepends=('intltool') url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.20/${pkgname}-${pkgver}.tar.bz2) +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('cb0639ffa9550b6ddf3b62f3b1add92fb92ab4690d351f2353cffe668be8c4a6') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man \ - --localstatedir=/var --disable-scrollkeeper || return 1 - make || return 1 + cd "$pkgname-$pkgver" + PYTHON=/usr/bin/python2 ./configure --prefix=/usr \ + --sysconfdir=/etc --mandir=/usr/share/man \ + --localstatedir=/var --disable-scrollkeeper + make } + package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install } -md5sums=('920914c13c57e67616c6ff8594579786') diff --git a/abs/extra/gnome-doc-utils/__changelog b/abs/extra/gnome-doc-utils/__changelog deleted file mode 100644 index 9c01058..0000000 --- a/abs/extra/gnome-doc-utils/__changelog +++ /dev/null @@ -1 +0,0 @@ -7/11/11 - chw - Made python 2.6 dep instead of 2.7. diff --git a/abs/extra/gnome-keyring/PKGBUILD b/abs/extra/gnome-keyring/PKGBUILD deleted file mode 100644 index 5da3d28..0000000 --- a/abs/extra/gnome-keyring/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -#$Id: PKGBUILD 97123 2010-10-26 16:27:27Z ibiru $ -# Maintainer: Jan De Groot <jgc@archlinux.org> - -pkgname=gnome-keyring -pkgver=2.32.1 -pkgrel=1 -pkgdesc="GNOME Password Management daemon" -arch=(i686 x86_64) -license=('GPL' 'LGPL') -depends=('gtk2>=2.22.0' 'dconf') -makedepends=('intltool' 'pkgconfig' 'python2') -groups=('gnome') -options=('!libtool' '!emptydirs') -url="http://www.gnome.org" -install=gnome-keyring.install -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('31fecec1430a97f59a6159a5a2ea8d6a1b44287f1e9e595b3594df46bf7f18f9') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static \ - --libexecdir=/usr/lib/gnome-keyring \ - --with-pam-dir=/lib/security --with-root-certs=/etc/ssl/certs \ - --disable-schemas-compile - make - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/gnome-keyring/gnome-keyring.install b/abs/extra/gnome-keyring/gnome-keyring.install deleted file mode 100644 index e5204bc..0000000 --- a/abs/extra/gnome-keyring/gnome-keyring.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - post_install $1 -} diff --git a/abs/extra/gnome-keyring/gnome-keyring.service b/abs/extra/gnome-keyring/gnome-keyring.service deleted file mode 100644 index 96ea061..0000000 --- a/abs/extra/gnome-keyring/gnome-keyring.service +++ /dev/null @@ -1,3 +0,0 @@ -[D-BUS Service] -Name=org.gnome.keyring -Exec=/usr/bin/gnome-keyring-daemon diff --git a/abs/extra/gnome-menus/PKGBUILD b/abs/extra/gnome-menus/PKGBUILD deleted file mode 100644 index 60b4632..0000000 --- a/abs/extra/gnome-menus/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 99752 2010-11-17 11:52:09Z ibiru $ -# Maintainer: Jan de Groot <jan@archlinux.org> - -pkgname=gnome-menus -pkgver=2.30.5 -pkgrel=1 -pkgdesc="GNOME menu specifications" -arch=('i686' 'x86_64') -depends=('pygtk>=2.22.0') -makedepends=('pkg-config' 'intltool' 'gobject-introspection') -options=('!libtool' '!makeflags') -license=('GPL' 'LGPL') -url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2 - menus.patch) -sha256sums=('6dcc565006d6e8c2025ae83ab1f82edf6bd04d61c804c0dc9bf5ea50629c4caa' - 'df2779777906b038fa911dc745534564ede9524a64ab368e2f6f8e38d54e7acc') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np0 -i "${srcdir}/menus.patch" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var \ - --disable-static - make || return 1 -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - - sed -i "s|#!/usr/bin/env python|#!/usr/bin/env python2|" \ - $pkgdir/usr/lib/python2.7/site-packages/GMenuSimpleEditor/config.py -} diff --git a/abs/extra/gnome-menus/menus.patch b/abs/extra/gnome-menus/menus.patch deleted file mode 100644 index bf73e86..0000000 --- a/abs/extra/gnome-menus/menus.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- layout/applications.menu 2005-06-28 10:16:39.000000000 +0200 -+++ layout/applications.menu 2005-09-12 23:21:20.000000000 +0200 -@@ -7,7 +7,6 @@ - <Directory>Applications.directory</Directory> - - <!-- Scan legacy dirs first, as later items take priority --> -- <KDELegacyDirs/> - <LegacyDir>/etc/X11/applnk</LegacyDir> - <LegacyDir>/usr/share/gnome/apps</LegacyDir> - -@@ -18,6 +17,14 @@ - <!-- Read in overrides and child menus from applications-merged/ --> - <DefaultMergeDirs/> - -+ <!-- Archlinux submenu --> -+ <Menu> -+ <Name>Archlinux</Name> -+ <Directory>Archlinux.directory</Directory> -+ <Include> -+ <Category>Archlinux</Category> -+ </Include> -+ </Menu> <!-- End Archlinux --> - <!-- Accessories submenu --> - <Menu> - <Name>Accessories</Name> diff --git a/abs/extra/gnome-mime-data/PKGBUILD b/abs/extra/gnome-mime-data/PKGBUILD index 2ce4092..e9294d8 100644 --- a/abs/extra/gnome-mime-data/PKGBUILD +++ b/abs/extra/gnome-mime-data/PKGBUILD @@ -1,25 +1,28 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ +# $Id: PKGBUILD 150864 2012-02-23 13:07:49Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gnome-mime-data pkgver=2.18.0 -pkgrel=3 +pkgrel=6 pkgdesc="The base MIME and Application database for GNOME" -arch=(i686 x86_64) +arch=(any) license=('GPL') depends=('shared-mime-info') -makedepens=('perlxml') +makedepends=('intltool') url="http://www.gnome.org" -groups=('gnome') source=(ftp://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.18/${pkgname}-${pkgver}.tar.bz2) md5sums=('541858188f80090d12a33b5a7c34d42c') build() { - cd ${startdir}/src/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var - make || return 1 - make DESTDIR=${startdir}/pkg install + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install - mkdir -p ${startdir}/pkg/usr/lib - mv ${startdir}/pkg/usr/share/pkgconfig ${startdir}/pkg/usr/lib/ + install -m755 -d "${pkgdir}/usr/lib" + mv "${pkgdir}/usr/share/pkgconfig" "${pkgdir}/usr/lib/" } diff --git a/abs/extra/gnome-screensaver/PKGBUILD b/abs/extra/gnome-screensaver/PKGBUILD deleted file mode 100644 index d78f92d..0000000 --- a/abs/extra/gnome-screensaver/PKGBUILD +++ /dev/null @@ -1,53 +0,0 @@ -# $Id: PKGBUILD 92371 2010-09-29 14:03:39Z ibiru $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=gnome-screensaver -pkgver=2.30.2 -pkgrel=1 -pkgdesc="Screensaver designed to integrate well with the GNOME desktop." -arch=('i686' 'x86_64') -license=('GPL') -url="http://live.gnome.org/GnomeScreensaver" -backup=(etc/pam.d/gnome-screensaver) -depends=('gnome-menus>=2.30.4' 'libgnomekbd>=2.32.0' 'libgl' 'libnotify>=0.4.5' 'gnome-desktop>=2.32.0') -makedepends=('pkgconfig' 'intltool' 'mesa' 'xscreensaver' 'libxss' 'libxslt') -optdepends=('xscreensaver') -groups=('gnome') -options=(!emptydirs) -install=gnome-screensaver.install -source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2 - gnome-screensaver.pam) -sha256sums=('dd52ef278b23ec5abe5974548c2d576eeaeb5294c85e9f2efd6231ecc9ca09fa' - '2744d1fc39da46fc681b7cf1c9230d2035b2bb8d9f510213fbe439c114eb76a2') - - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --libexecdir=/usr/lib/gnome-screensaver \ - --localstatedir=/var \ - --with-xscreensaverdir=/usr/share/xscreensaver/config \ - --with-xscreensaverhackdir=/usr/lib/xscreensaver \ - --with-mit-ext - - make || return 1 -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - - install -m644 "${srcdir}/gnome-screensaver.pam" "${pkgdir}/etc/pam.d/gnome-screensaver" - - #Migrate xscreensaver configuration files - sed -e 's|Exec=|Exec=/usr/lib/xscreensaver/|' \ - -i data/xscreensaver-config.xsl - cd "${pkgdir}/usr/share/applications/screensavers" - "${srcdir}/${pkgname}-${pkgver}/data/migrate-xscreensaver-config.sh" \ - /usr/share/xscreensaver/config/*.xml - - install -m755 -d "${pkgdir}/usr/share/gconf/schemas" - gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-screensaver ${pkgdir}/etc/gconf/schemas/*.schemas - rm -f ${pkgdir}/etc/gconf/schemas/*.schemas - ls ${pkgdir}/usr/share/applications/screensavers/|cut -d. -f1 > ${startdir}/gscreensavers -} diff --git a/abs/extra/gnome-screensaver/__changelog b/abs/extra/gnome-screensaver/__changelog deleted file mode 100644 index 3fb149c..0000000 --- a/abs/extra/gnome-screensaver/__changelog +++ /dev/null @@ -1,5 +0,0 @@ -add defaults to install file -make xsltproc part of makedepends -print list of screensavers to gscreensavers - ls $pkgdir/usr/share/applications/screensavers/|cut -d. -f1 > $startdir/gscreensavers - diff --git a/abs/extra/gnome-screensaver/gnome-screensaver.install b/abs/extra/gnome-screensaver/gnome-screensaver.install deleted file mode 100644 index bd98655..0000000 --- a/abs/extra/gnome-screensaver/gnome-screensaver.install +++ /dev/null @@ -1,32 +0,0 @@ -pkgname=gnome-screensaver - -post_install() { - usr/sbin/gconfpkg --install ${pkgname} - #set defaults - gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type bool --set /apps/gnome-screensaver/lock_enabled false - gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type int -s "/apps/gnome-screensaver/idle_delay" 10 - gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --set --type list --list-type=string /apps/gnome-screensaver/themes [screensavers-cosmos-slideshow] - gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string -s "/apps/gnome-screensaver/mode" single - - if grep gnome-screensaver-command /home/mythtv/.mplayer/config - then - echo "Nothing to do here..." - else - echo "heartbeat-cmd=\"gnome-screensaver-command -p &\"" >> /home/mythtv/.mplayer/config - fi -} - -pre_upgrade() { - pre_remove $1 -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - usr/sbin/gconfpkg --uninstall ${pkgname} - grep -v gnome-screensaver /home/mythtv/.mplayer/config > /tmp/mp-config - mv /tmp/mp-config /home/mythtv/.mplayer/config - chown mythtv.mythtv /home/mythtv/.mplayer/config -} diff --git a/abs/extra/gnome-screensaver/gnome-screensaver.pam b/abs/extra/gnome-screensaver/gnome-screensaver.pam deleted file mode 100644 index c776a54..0000000 --- a/abs/extra/gnome-screensaver/gnome-screensaver.pam +++ /dev/null @@ -1,3 +0,0 @@ -#%PAM-1.0 -auth required pam_unix_auth.so -auth optional pam_gnome_keyring.so diff --git a/abs/extra/gnome-screensaver/gscreensavers b/abs/extra/gnome-screensaver/gscreensavers deleted file mode 100644 index 39500bf..0000000 --- a/abs/extra/gnome-screensaver/gscreensavers +++ /dev/null @@ -1,199 +0,0 @@ -abstractile -anemone -anemotaxis -antinspect -antmaze -antspotlight -apollonian -apple2 -atlantis -attraction -atunnel -barcode -blaster -blinkbox -blitspin -blocktube -boing -bouboule -bouncingcow -boxed -boxfit -braid -bsod -bubble3d -bumps -cage -carousel -ccurve -celtic -circuit -cloudlife -compass -coral -cosmos-slideshow -crackberg -crystal -cube21 -cubenetic -cubestorm -cubicgrid -cwaves -cynosure -dangerball -decayscreen -deco -deluxe -demon -discrete -distort -drift -endgame -engine -epicycle -eruption -euler2d -extrusion -fadeplot -fiberlamp -fireworkx -flame -flipflop -flipscreen3d -fliptext -flow -fluidballs -flurry -flyingtoasters -fontglide -footlogo-floaters -fuzzyflakes -galaxy -gears -gflux -glblur -glcells -gleidescope -glhanoi -glknots -glmatrix -glplanet -glschool -glslideshow -glsnake -gltext -goop -grav -greynetic -halftone -halo -helix -hopalong -hypertorus -hypnowheel -ifs -imsmap -interaggregate -interference -intermomentary -jigglypuff -jigsaw -juggler3d -julia -kaleidescope -klein -kumppa -lament -lavalite -lcdscrub -lockward -loop -m6502 -maze -memscroller -menger -metaballs -mirrorblob -moebius -moebiusgears -moire -moire2 -molecule -morph3d -mountain -munch -nerverot -noof -noseguy -pacman -pedal -penetrate -penrose -personal-slideshow -petri -phosphor -photopile -piecewise -pinion -pipes -polyhedra -polyominoes -polytopes -pong -popsquares -providence -pulsar -pyro -qix -queens -rd-bomb -ripples -rocks -rorschach -rotzoomer -rubik -rubikblocks -sballs -shadebobs -sierpinski -sierpinski3d -skytentacles -slidescreen -slip -sonar -speedmine -spheremonics -spotlight -sproingies -squiral -stairs -starfish -starwars -stonerview -strange -substrate -superquadrics -surfaces -swirl -tangram -thornbird -timetunnel -topblock -triangle -truchet -twang -vermiculate -vidwhacker -voronoi -wander -webcollage -whirlwindwarp -wormhole -xanalogtv -xflame -xjack -xlyap -xmatrix -xrayswarm -xspirograph -zoom diff --git a/abs/extra/gnome-vfs/PKGBUILD b/abs/extra/gnome-vfs/PKGBUILD index 5d52b94..dae1cfe 100644 --- a/abs/extra/gnome-vfs/PKGBUILD +++ b/abs/extra/gnome-vfs/PKGBUILD @@ -1,34 +1,30 @@ -# $Id: PKGBUILD 92007 2010-09-28 16:42:58Z ibiru $ +# $Id: PKGBUILD 136438 2011-08-29 09:40:33Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gnome-vfs pkgver=2.24.4 -pkgrel=1 +pkgrel=6 pkgdesc="The GNOME Virtual File System" -arch=('i686' 'x86_64') +arch=(i686 x86_64) license=('LGPL') -depends=('fam' 'gconf>=2.32.0' 'hal>=0.5.13' 'bzip2' 'avahi>=0.6.27' 'smbclient>=3.5.5' 'gnome-mime-data>=2.18.0-2' 'heimdal>=1.3.3' 'gnutls>=2.8.6') +depends=('gconf' 'bzip2' 'avahi' 'smbclient' 'gnome-mime-data' 'krb5' 'gnutls' 'libgcrypt') makedepends=('pkgconfig' 'intltool' 'gtk-doc' 'gnome-common') -options=('!libtool' '!emptydirs' '!makeflags') -conflicts=(gnome-vfs-samba) -provides=(gnome-vfs-samba) -replaces=(gnome-vfs-samba gnome-vfs-extras) +options=('!libtool' '!emptydirs') url="http://www.gnome.org" install=gnome-vfs.install source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.24/gnome-vfs-${pkgver}.tar.bz2 - hal-show-volume-names.patch - gnutls-config.patch) + gnutls-config.patch + gcrypt-config.patch) sha256sums=('62de64b5b804eb04104ff98fcd6a8b7276d510a49fbd9c0feb568f8996444faa' - 'b38b86d6c966dcf64f9140d800aebe8a14845bb8ce7c045f52d4df483cacd23b' - '66c7cfb12995c0dd94a2caea95c7e3c55981993f05a79c585d60915ff131955d') + '66c7cfb12995c0dd94a2caea95c7e3c55981993f05a79c585d60915ff131955d' + 'c059e218f310da683778919d36e7862f7e763384805f6453d328fbaf507a8114') build() { cd "${srcdir}/${pkgname}-${pkgver}" - #Archlinux patch (b.g.o #321498) - patch -Np1 -i "${srcdir}/hal-show-volume-names.patch" - #Fix build with new gnutls patch -Np1 -i "${srcdir}/gnutls-config.patch" + #fix build with new libgcrypt >= 1.5.0 + patch -Np1 -i "${srcdir}/gcrypt-config.patch" libtoolize --force gtkdocize aclocal @@ -37,16 +33,17 @@ build() { ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static \ --libexecdir=/usr/lib/gnome-vfs-2.0 \ - --enable-samba --enable-hal \ + --enable-samba --disable-hal \ --enable-avahi --disable-howl \ --disable-openssl --enable-gnutls make } + package() { cd "${srcdir}/${pkgname}-${pkgver}" make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install install -d -m755 "${pkgdir}/usr/share/gconf/schemas" - gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-vfs-2.0 ${startdir}/pkg/etc/gconf/schemas/*.schemas + gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-vfs-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas rm -f ${pkgdir}/etc/gconf/schemas/*.schemas } diff --git a/abs/extra/gnome-vfs/gcrypt-config.patch b/abs/extra/gnome-vfs/gcrypt-config.patch new file mode 100644 index 0000000..8ce9187 --- /dev/null +++ b/abs/extra/gnome-vfs/gcrypt-config.patch @@ -0,0 +1,31 @@ +# Allow gnome-vfs-2.24 to build with libgcrypt >= 1.5.0 +--- gnome-vfs-2.24.4/configure.in 2010-07-01 12:36:09.000000000 -0300 ++++ gnome-vfs-2.24.4-libgcrypt//configure.in 2011-07-22 15:55:02.296325640 -0300 +@@ -689,6 +689,16 @@ + AM_CONDITIONAL(HAVE_SSL, test x$have_ssl = xtrue) + + dnl **************************** ++dnl LibGCrypt 1.5.0 ++dnl **************************** ++ ++AM_PATH_LIBGCRYPT(1.5.0) ++ ++if test "x${LIBGCRYPT_LIBS}" = "x"; then ++ AC_MSG_ERROR([unable to find libgcrypt]) ++fi ++ ++dnl **************************** + dnl DNS-SD implementations + dnl **************************** + AM_CONDITIONAL(HAVE_AVAHI, false) +@@ -1045,8 +1055,8 @@ + dnl ============================================================================== + + PKG_CHECK_MODULES(LIBGNOMEVFS, glib-2.0 >= $GLIB_REQUIRED gmodule-no-export-2.0 >= $GLIB_REQUIRED gthread-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED gconf-2.0 >= $GCONF_REQUIRED libxml-2.0 >= $XML_REQUIRED gnome-mime-data-2.0 $dbus_requirement) +-LIBGNOMEVFS_CFLAGS="$LIBGNOMEVFS_CFLAGS $OPENSSL_CFLAGS $LIBGNUTLS_CFLAGS $HOWL_CFLAGS $AVAHI_CFLAGS" +-LIBGNOMEVFS_LIBS="$LIBGNOMEVFS_LIBS $OPENSSL_LIBS $LIBGNUTLS_LIBS $HOWL_LIBS $AVAHI_LIBS $RESOLVER_LIBS" ++LIBGNOMEVFS_CFLAGS="$LIBGNOMEVFS_CFLAGS $OPENSSL_CFLAGS $LIBGNUTLS_CFLAGS $HOWL_CFLAGS $AVAHI_CFLAGS $LIBGCRYPT_CFLAGS" ++LIBGNOMEVFS_LIBS="$LIBGNOMEVFS_LIBS $OPENSSL_LIBS $LIBGNUTLS_LIBS $HOWL_LIBS $AVAHI_LIBS $RESOLVER_LIBS $LIBGCRYPT_LIBS" + AC_SUBST(LIBGNOMEVFS_CFLAGS) + AC_SUBST(LIBGNOMEVFS_LIBS) + diff --git a/abs/extra/gnome-vfs/hal-show-volume-names.patch b/abs/extra/gnome-vfs/hal-show-volume-names.patch deleted file mode 100644 index 5b8420c..0000000 --- a/abs/extra/gnome-vfs/hal-show-volume-names.patch +++ /dev/null @@ -1,46 +0,0 @@ -Index: gnome-vfs-hal-mounts.c -=================================================================== -RCS file: /cvs/gnome/gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c,v -retrieving revision 1.33 -diff -u -p -r1.33 gnome-vfs-hal-mounts.c ---- gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c 7 Jul 2006 15:56:57 -0000 1.33 -+++ gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c 14 Jul 2006 18:48:51 -0000 -@@ -877,6 +877,7 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa - GnomeVFSDrive *drive; - GnomeVFSVolumeMonitor *volume_monitor; - char *name; -+ char *icon; - gboolean allowed_by_policy; - const char *backing_udi; - -@@ -975,6 +976,8 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa - */ - drive = _gnome_vfs_volume_monitor_find_drive_by_hal_udi (volume_monitor, libhal_volume_get_udi (hal_volume)); - if (drive == NULL && allowed_by_policy) { -+ name = _hal_drive_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); -+ icon = _hal_drive_policy_get_icon (volume_monitor_daemon, hal_drive, hal_volume); - drive = g_object_new (GNOME_VFS_TYPE_DRIVE, NULL); - if (libhal_volume_disc_has_audio (hal_volume)) { - drive->priv->activation_uri = g_strdup_printf ("cdda://%s", -@@ -989,16 +992,16 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa - * So just set it to the empty string - */ - drive->priv->activation_uri = g_strdup (""); -+ g_free (name); -+ name = _hal_volume_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); -+ g_free (icon); -+ icon = _hal_volume_policy_get_icon (volume_monitor_daemon, hal_drive, hal_volume); - } - drive->priv->is_connected = TRUE; - drive->priv->device_path = g_strdup (libhal_volume_get_device_file (hal_volume)); - drive->priv->device_type = _hal_get_gnome_vfs_device_type (hal_drive); - -- /* TODO: could add an icon of a drive with media in it since this codepath only -- * handles drives with media in them -- */ -- drive->priv->icon = _hal_drive_policy_get_icon (volume_monitor_daemon, hal_drive, NULL); -- name = _hal_drive_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); -+ drive->priv->icon = icon; - drive->priv->display_name = _gnome_vfs_volume_monitor_uniquify_drive_name (volume_monitor, name); - g_free (name); - name = g_utf8_casefold (drive->priv->display_name, -1); diff --git a/abs/extra/gnu-netcat/PKGBUILD b/abs/extra/gnu-netcat/PKGBUILD index 82c90f3..a436a9d 100644 --- a/abs/extra/gnu-netcat/PKGBUILD +++ b/abs/extra/gnu-netcat/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 49781 2009-08-15 16:06:57Z jgc $ +# $Id: PKGBUILD 137726 2011-09-10 14:19:00Z pierre $ # Maintainer: Tom K <tomk@runbox.com> pkgname=gnu-netcat pkgver=0.7.1 -pkgrel=3 +pkgrel=4 pkgdesc="GNU rewrite of netcat, the network piping application" depends=('glibc' 'texinfo') arch=('i686' 'x86_64') @@ -12,12 +12,16 @@ license=('GPL') replaces=('netcat') provides=('netcat') install=gnu-netcat.install -source=(http://internap.dl.sourceforge.net/sourceforge/netcat/netcat-$pkgver.tar.bz2) +source=("http://downloads.sourceforge.net/sourceforge/netcat/netcat-$pkgver.tar.bz2") md5sums=('0a29eff1736ddb5effd0b1ec1f6fe0ef') build() { cd "${srcdir}/netcat-${pkgver}" - ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 + ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info + make +} + +package() { + cd "${srcdir}/netcat-${pkgver}" + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/gnupg/PKGBUILD b/abs/extra/gnupg/PKGBUILD deleted file mode 100644 index e123287..0000000 --- a/abs/extra/gnupg/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 96620 2010-10-22 18:59:05Z andyrtr $ -# Maintainer: Andreas Radke <andyrtr at archlinux.org> -# Committer: Judd Vinet <jvinet@zeroflux.org> -pkgname=gnupg -pkgver=1.4.11 -pkgrel=1 -pkgdesc="GNU Privacy Guard - a PGP replacement tool" -arch=('i686' 'x86_64') -license=('GPL3') -depends=('zlib' 'bzip2' 'libldap>=2.4.18' 'libusb' 'curl>=7.16.2' 'readline>=6.0.00') -source=(ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/gnupg/$pkgname-$pkgver.tar.bz2) -install=gnupg.install -url="http://www.gnupg.org/" -md5sums=('411744e1ef8ce90b87938c4203f001f1') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --libexecdir=/usr/lib # docdir can't be set properly - make || return 1 - ln -s ${pkgname}-${pkgver}/scripts .. -} - -package () { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install || return 1 - - # fix fileconflict with gnupg2 pkg - rm ${pkgdir}/usr/share/man/man1/gpg-zip.1 -} diff --git a/abs/extra/gnupg/gnupg.install b/abs/extra/gnupg/gnupg.install deleted file mode 100644 index 5a67047..0000000 --- a/abs/extra/gnupg/gnupg.install +++ /dev/null @@ -1,21 +0,0 @@ -info_dir=/usr/share/info -info_files=(gnupg1.info) - -post_install() { - [ -x usr/bin/install-info ] || return 0 - for f in ${info_files[@]}; do - usr/bin/install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - [ -x usr/bin/install-info ] || return 0 - for f in ${info_files[@]}; do - usr/bin/install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null - done -} -# vim:set ts=2 sw=2 et: diff --git a/abs/extra/gnuplot/PKGBUILD b/abs/extra/gnuplot/PKGBUILD deleted file mode 100644 index 3b04bde..0000000 --- a/abs/extra/gnuplot/PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# $Id$ -# Maintainer: damir <damir@archlinux.org> -# Contributor: Niklas Volbers <mithrandir42@web.de> - -pkgname=gnuplot -pkgver=4.4.0 -pkgrel=1 -pkgdesc="Command-line driven interactive data and function plotting utility" -url="http://www.gnuplot.info" -depends=('gd>=2.0.29' 'wxgtk' 'libjpeg>=7') -makedepends=('texinfo') -license='custom' -arch=('i686') -source=(http://downloads.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tar.gz) - -build() { - cd $startdir/src/$pkgname-$pkgver - - ./configure --prefix=/usr \ - --datadir=/usr/share \ - --libexecdir=/usr/bin \ - --with-readline=gnu \ - --enable-history-file \ - --with-x - - make X11_DRIVER_DIR='/usr/bin' || return 1 - - make DESTDIR=$startdir/pkg \ - libexecdir=/usr/bin \ - pkglibexecdir=/usr/bin install - - install -D $startdir/src/$pkgname-$pkgver/Copyright $startdir/pkg/usr/share/licenses/custom/gnuplot/Copyright -} -md5sums=('e708665bd512153ad5c35252fe499059') diff --git a/abs/extra/gpgme/PKGBUILD b/abs/extra/gpgme/PKGBUILD deleted file mode 100644 index 6371ad2..0000000 --- a/abs/extra/gpgme/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id: PKGBUILD 48153 2009-07-31 20:34:25Z tpowa $ -# Maintainer: Roman Kyrylych <roman@archlinux.org> -# Contributor: Sarah Hay <sarah@archlinux.org> - -pkgname=gpgme -pkgver=1.3.0 -pkgrel=1 -pkgdesc="A C wrapper library for GnuPG." -arch=('i686' 'x86_64') -url="http://www.gnupg.org/related_software/gpgme/" -license=('GPL') -depends=('libgpg-error>=1.5' 'pth' 'gnupg' 'libassuan') -install=gpgme.install -options=('!libtool' '!emptydirs') -source=(ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.gz) - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr - make || return 1 - make DESTDIR=${pkgdir} install - rm ${pkgdir}/usr/share/info/dir - gzip ${pkgdir}/usr/share/info/* -} -md5sums=('f148c73f6f540f91e02141df72844f62') diff --git a/abs/extra/gpgme/__changelog b/abs/extra/gpgme/__changelog deleted file mode 100644 index 4074d1b..0000000 --- a/abs/extra/gpgme/__changelog +++ /dev/null @@ -1 +0,0 @@ -removed gnupg2 requirement diff --git a/abs/extra/gpgme/gpgme.install b/abs/extra/gpgme/gpgme.install deleted file mode 100644 index b54620d..0000000 --- a/abs/extra/gpgme/gpgme.install +++ /dev/null @@ -1,18 +0,0 @@ -infodir=/usr/share/info -filelist=(gpgme.info gpgme.info-1 gpgme.info-2) - -post_install() { - for file in ${filelist[@]}; do - install-info $infodir/$file $infodir/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - for file in ${filelist[@]}; do - install-info --delete $infodir/$file $infodir/dir 2> /dev/null - done -} diff --git a/abs/extra/gptfdisk/PKGBUILD b/abs/extra/gptfdisk/PKGBUILD index 3afe8e3..6b0c453 100644 --- a/abs/extra/gptfdisk/PKGBUILD +++ b/abs/extra/gptfdisk/PKGBUILD @@ -1,10 +1,10 @@ -# $Id$ -# Maintainer: Evangelos Foutras <foutrelis@gmail.com> +# $Id: PKGBUILD 160220 2012-05-31 03:41:30Z foutrelis $ +# Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Tobias Powalowski <tpowa@archlinux.org> # Contributor: Hokum <hokum_at_mail_dot_ru> pkgname=gptfdisk -pkgver=0.7.2 +pkgver=0.8.5 pkgrel=1 pkgdesc="A text-mode partitioning tool that works on Globally Unique Identifier (GUID) Partition Table (GPT) disks" arch=('i686' 'x86_64') @@ -15,7 +15,7 @@ provides=("gdisk=$pkgver") conflicts=('gdisk') replaces=('gdisk') source=(http://downloads.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tar.gz) -md5sums=('31deeb7acb5104d56ba2ddeafd907513') +sha256sums=('15cc691f28212c157e05315662ed6b76ffdcc8de6fc118fa21c81ef5aae84af9') build() { cd "$srcdir/$pkgname-$pkgver" @@ -26,10 +26,10 @@ build() { package () { cd "$srcdir/$pkgname-$pkgver" - install -d "$pkgdir"/{sbin,usr/share/{man/man8,gdisk}} - install -t "$pkgdir/sbin" gdisk sgdisk fixparts - install -m644 -t "$pkgdir/usr/share/man/man8" {gdisk,sgdisk}.8 - install -m644 -t "$pkgdir/usr/share/gdisk" README NEWS + install -d "$pkgdir"/usr/{bin,share/{doc/gdisk,man/man8}} + install -t "$pkgdir/usr/bin" {,c,s}gdisk fixparts + install -m644 -t "$pkgdir/usr/share/man/man8" {{,c,s}gdisk,fixparts}.8 + install -m644 -t "$pkgdir/usr/share/doc/gdisk" README NEWS } # vim:set ts=2 sw=2 et: diff --git a/abs/extra/graphload/PKGBUILD b/abs/extra/graphload/PKGBUILD deleted file mode 100644 index 6af2f95..0000000 --- a/abs/extra/graphload/PKGBUILD +++ /dev/null @@ -1,16 +0,0 @@ -pkgname=graphload -pkgver=1 -pkgrel=1 -pkgdesc="command to graph the total CPU utilization for N-core systems for a given interval" -depends=('gnuplot>=4.2.5') -license='GPLv2' -arch=('i686') - -build() { - LH_ROOT=/usr/LH - mkdir -p $startdir/pkg/$LH_ROOT/bin/ - - cd $startdir - # executables - install -m0755 -D graphload.sh $startdir/pkg/$LH_ROOT/bin/ -} diff --git a/abs/extra/graphload/graphload.sh b/abs/extra/graphload/graphload.sh deleted file mode 100755 index 79023ec..0000000 --- a/abs/extra/graphload/graphload.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh - -MYTICKS=100 -MYINTERVAL=4 # we sample once every $MYINTERVAL seconds -MYINVERSEINTERVAL=0.25 - -top -d $MYINVERSEINTERVAL -n $MYTICKS -b -i | grep Cpu | perl -e "while(<>) { split(','); \$load = 100 - substr @_[3], 0, -3; print \$load,\"\n\";}" > profile -perl -e '$second=0; while(<>) { chop(); $load = $_; print "$second $load "; split " ", $load; print @_[0] + @_[1], "\n"; $second+=0.25;}' < profile > points -echo "set grid -set xrange [0: $(($MYTICKS/$MYINTERVAL))] -set yrange [0: 101] -set xtics 0,$MYINVERSEINTERVAL,$(($MYTICKS/$MYINTERVAL)) -set xlabel \"time\" -set ylabel \"CPU usage\" -plot \"points\" using 1:2 with lines title 'total load' -replot" > gplot.cmds -gnuplot -persist gplot.cmds diff --git a/abs/extra/gsettings-desktop-schemas/PKGBUILD b/abs/extra/gsettings-desktop-schemas/PKGBUILD new file mode 100644 index 0000000..4474c2a --- /dev/null +++ b/abs/extra/gsettings-desktop-schemas/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 159084 2012-05-15 13:43:27Z ibiru $ +# Maintainer : Ionut Biru <ibiru@archlinux.org> +# Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Contributor: Adam Hani Schakaki (krzd) <krzd@krzd.net> + +pkgname=gsettings-desktop-schemas +pkgver=3.4.2 +pkgrel=1 +pkgdesc="Shared GSettings schemas for the desktop" +arch=('any') +url="http://live.gnome.org/" +license=('GPL') +depends=('glib2') +makedepends=('intltool' 'gobject-introspection') +install=$pkgname.install +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('ce0a460128d52710b6842ca663690e38374ac921e2f6c1bdf5d54f46aa6eba4f') + +build() { + cd "$pkgname-$pkgver" + + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --disable-schemas-compile + make +} + +package() { + cd "$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install +} diff --git a/abs/extra/gsettings-desktop-schemas/gsettings-desktop-schemas.install b/abs/extra/gsettings-desktop-schemas/gsettings-desktop-schemas.install new file mode 100644 index 0000000..7e721e8 --- /dev/null +++ b/abs/extra/gsettings-desktop-schemas/gsettings-desktop-schemas.install @@ -0,0 +1,11 @@ +post_install() { + glib-compile-schemas /usr/share/glib-2.0/schemas +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/abs/extra/gtk-doc/PKGBUILD b/abs/extra/gtk-doc/PKGBUILD index ece4bfc..2f9a6f1 100644 --- a/abs/extra/gtk-doc/PKGBUILD +++ b/abs/extra/gtk-doc/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 111338 2011-02-26 14:26:16Z ibiru $ +# $Id: PKGBUILD 139346 2011-10-01 18:59:04Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gtk-doc -pkgver=1.17 +pkgver=1.18 pkgrel=1 pkgdesc="Documentation tool for public library API" arch=('any') @@ -11,8 +11,8 @@ depends=('docbook-xsl' 'gnome-doc-utils' 'perl') makedepends=('pkgconfig' 'jade') optdepends=('jade: SGML support') url="http://www.gtk.org/gtk-doc/" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('911ff8c620743cea7b40156f1947f9470da5e723f35a9d8fb683e50c61830d1f') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.xz) +sha256sums=('785b591c561be1c8206f0d2575dc63558ea6199c3afe49cbc4efde94a6629a20') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/abs/extra/gtk3/PKGBUILD b/abs/extra/gtk3/PKGBUILD new file mode 100644 index 0000000..9d4a7a1 --- /dev/null +++ b/abs/extra/gtk3/PKGBUILD @@ -0,0 +1,42 @@ +# $Id: PKGBUILD 163899 2012-07-21 19:20:27Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=gtk3 +pkgver=3.4.4 +pkgrel=1 +pkgdesc="GObject-based multi-platform GUI toolkit (v3)" +arch=('i686' 'x86_64') +url="http://www.gtk.org/" +install=gtk3.install +depends=('atk' 'cairo' 'gtk-update-icon-cache' 'libcups' 'libxcursor' 'libxinerama' 'libxrandr' 'libxi' 'libxcomposite' 'libxdamage' 'pango' 'shared-mime-info' 'colord') +makedepends=('gobject-introspection') +options=('!libtool') +backup=(etc/gtk-3.0/settings.ini) +license=('LGPL') +source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/${pkgver%.*}/gtk+-$pkgver.tar.xz + settings.ini wacom.patch) +sha256sums=('f154e460075034da4c0ce89c320025dcd459da2a1fdf32d92a09522eaca242c7' + 'c214d3dcdcadda3d642112287524ab3e526ad592b70895c9f3e3733c23701621' + '86bda95a14a99d0f596c4ecb2ed715689f71c207c65dfc90a39d4ae7f1c0c0f5') +build() { + cd "gtk+-$pkgver" + + # Partially revert BGO#673440 in order to fix BGO#674157 + patch -Np1 -i ../wacom.patch + + CXX=/bin/false ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --enable-gtk2-dependency \ + --disable-schemas-compile + #https://bugzilla.gnome.org/show_bug.cgi?id=655517 + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd "gtk+-$pkgver" + make DESTDIR="$pkgdir" install + + install -Dm644 "$srcdir/settings.ini" "$pkgdir/etc/gtk-3.0/settings.ini" +} diff --git a/abs/extra/gtk3/gtk3.install b/abs/extra/gtk3/gtk3.install new file mode 100644 index 0000000..ca20d28 --- /dev/null +++ b/abs/extra/gtk3/gtk3.install @@ -0,0 +1,16 @@ +post_install() { + /usr/bin/gtk-query-immodules-3.0 --update-cache + /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas +} + +post_upgrade() { + post_install +} + +pre_remove() { + rm -f /usr/lib/gtk-3.0/3.0.0/immodules.cache +} + +post_remove() { + /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas +} diff --git a/abs/extra/gtk3/settings.ini b/abs/extra/gtk3/settings.ini new file mode 100644 index 0000000..039000d --- /dev/null +++ b/abs/extra/gtk3/settings.ini @@ -0,0 +1,2 @@ +[Settings] +gtk-fallback-icon-theme = gnome diff --git a/abs/extra/gtk3/wacom.patch b/abs/extra/gtk3/wacom.patch new file mode 100644 index 0000000..79ad84f --- /dev/null +++ b/abs/extra/gtk3/wacom.patch @@ -0,0 +1,12 @@ +diff -u -r gtk+-3.4.2/gdk/x11/gdkdevicemanager-xi2.c gtk+-3.4.2-wacom/gdk/x11/gdkdevicemanager-xi2.c +--- gtk+-3.4.2/gdk/x11/gdkdevicemanager-xi2.c 2012-05-02 14:45:04.000000000 +0200 ++++ gtk+-3.4.2-wacom/gdk/x11/gdkdevicemanager-xi2.c 2012-05-03 18:34:18.034807644 +0200 +@@ -331,6 +331,8 @@ + input_source = GDK_SOURCE_ERASER; + else if (strstr (tmp_name, "cursor")) + input_source = GDK_SOURCE_CURSOR; ++ else if (strstr (tmp_name, "finger")) ++ input_source = GDK_SOURCE_TOUCHSCREEN; + else if (strstr (tmp_name, "wacom") || + strstr (tmp_name, "pen")) + input_source = GDK_SOURCE_PEN; diff --git a/abs/extra/gtksourceview2/PKGBUILD b/abs/extra/gtksourceview2/PKGBUILD new file mode 100644 index 0000000..78e6de7 --- /dev/null +++ b/abs/extra/gtksourceview2/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 148778 2012-02-05 11:50:06Z ibiru $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgname=gtksourceview2 +pkgver=2.10.5 +pkgrel=2 +pkgdesc="A text widget adding syntax highlighting and more to GNOME" +arch=('i686' 'x86_64') +license=('GPL') +depends=('gtk2>=2.22.0' 'libxml2>=2.7.7') +makedepends=('intltool' 'pkg-config') +options=('!libtool') +url="http://www.gnome.org" +source=(http://ftp.gnome.org/pub/gnome/sources/gtksourceview/2.10/gtksourceview-${pkgver}.tar.bz2) +sha256sums=('c585773743b1df8a04b1be7f7d90eecdf22681490d6810be54c81a7ae152191e') + +build() { + cd "${srcdir}/gtksourceview-${pkgver}" + sed -i 's#python#python2#' gtksourceview/language-specs/convert.py + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static + make +} + +package() { + cd "${srcdir}/gtksourceview-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/abs/extra/gtkspell/PKGBUILD b/abs/extra/gtkspell/PKGBUILD index 896ed0c..5dc2fef 100644 --- a/abs/extra/gtkspell/PKGBUILD +++ b/abs/extra/gtkspell/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 58469 2009-11-08 16:09:11Z jgc $ +# $Id: PKGBUILD 150411 2012-02-17 12:37:06Z allan $ # Maintainer: Roman Kyrylych <roman@archlinux.org> # Contributer: Ben <ben@benmazer.net> pkgname=gtkspell pkgver=2.0.16 -pkgrel=1 +pkgrel=2 url="http://gtkspell.sourceforge.net/" pkgdesc="GtkSpell provides word-processor-style highlighting and replacement of misspelled words in a GtkTextView widget" arch=('i686' 'x86_64') license=('GPL') -depends=('gtk2>=2.18.3' 'enchant>=1.5.0') +depends=('gtk2' 'enchant') makedepends=('intltool' 'gtk-doc') options=('!libtool') source=(http://gtkspell.sourceforge.net/download/${pkgname}-${pkgver}.tar.gz) @@ -17,7 +17,11 @@ md5sums=('f75dcc9338f182c571b321d37c606a94') build() { cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/guile/PKGBUILD b/abs/extra/guile/PKGBUILD index 265139a..50f10eb 100644 --- a/abs/extra/guile/PKGBUILD +++ b/abs/extra/guile/PKGBUILD @@ -1,35 +1,29 @@ -# $Id: PKGBUILD 72807 2010-03-20 04:06:14Z allan $ +# $Id: PKGBUILD 150868 2012-02-23 13:23:16Z ibiru $ # Contributor: Tom Newsom <Jeepster@gmx.co.uk> # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=guile -pkgver=1.8.7 +pkgver=1.8.8 pkgrel=2 -pkgdesc="Guile is a portable, embeddable Scheme implementation written in C" +pkgdesc="a portable, embeddable Scheme implementation written in C" url="http://www.gnu.org/software/guile/" -arch=('i686' 'x86_64') +arch=(i686 x86_64) license=('GPL') -depends=('gmp' 'libtool' 'ncurses>=5.7' 'texinfo') +depends=('gmp' 'libltdl' 'ncurses>=5.7' 'texinfo') install=guile.install -source=(ftp://ftp.gnu.org/pub/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz - guile-snarf.patch) -options=('!libtool' '!makeflags') +source=(ftp://ftp.gnu.org/pub/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz) +options=('!libtool') +md5sums=('18661a8fdfef13e2fcb7651720aa53f3') build() { cd "${srcdir}/${pkgname}-${pkgver}" - - # Fix build failure without -P - # http://old.nabble.com/build-failure-just-trying-to-build-guile-1.8.7-natively-td26411839.html - patch -Np1 < ${srcdir}/guile-snarf.patch || return 1 - - ./configure --prefix=/usr --disable-error-on-warning || return 1 - make LDFLAGS+="-lpthread" || return 1 + ./configure --prefix=/usr \ + --disable-static \ + --disable-error-on-warning + make LDFLAGS+="-lpthread" } + package() { cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 - rm -f "${pkgdir}/usr/share/info/dir" - gzip "${pkgdir}/usr/share/info"/* || return 1 + make DESTDIR="${pkgdir}" install } -md5sums=('991b5b3efcbbc3f7507d05bc42f80a5e' - 'c11264d2a80858ab2ea1af761a6f6e65') diff --git a/abs/extra/guile/guile-snarf.patch b/abs/extra/guile/guile-snarf.patch deleted file mode 100644 index 42f2c66..0000000 --- a/abs/extra/guile/guile-snarf.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -Nur guile-1.8.7.orig/libguile/guile-snarf-docs.in guile-1.8.7/libguile/guile-snarf-docs.in ---- guile-1.8.7.orig/libguile/guile-snarf-docs.in 2009-07-03 18:19:00.000000000 -0400 -+++ guile-1.8.7/libguile/guile-snarf-docs.in 2009-11-19 12:55:32.487266268 -0500 -@@ -23,4 +23,4 @@ - ## Let the user override the preprocessor autoconf found. - test -n "${CPP+set}" || CPP="@CPP@" - --${CPP} -DSCM_MAGIC_SNARF_DOCS "$@" -+${CPP} -P -DSCM_MAGIC_SNARF_DOCS "$@" diff --git a/abs/extra/guile/guile.install b/abs/extra/guile/guile.install index 8fab0b1..5d1eeaf 100644 --- a/abs/extra/guile/guile.install +++ b/abs/extra/guile/guile.install @@ -1,3 +1,4 @@ +infodir=/usr/share/info files=(goops.info guile-tut.info guile.info @@ -11,8 +12,9 @@ files=(goops.info r5rs.info) post_install() { - for f in "${files[@]}"; do - install-info usr/share/info/${f}.gz usr/share/info/dir 2>/dev/null + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null done } @@ -21,7 +23,8 @@ post_upgrade() { } pre_remove() { - for f in "${files[@]}"; do - install-info --delete usr/share/info/${f}.gz usr/share/info/dir 2> /dev/null + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null done } diff --git a/abs/extra/gvfs/PKGBUILD b/abs/extra/gvfs/PKGBUILD new file mode 100644 index 0000000..b64abe2 --- /dev/null +++ b/abs/extra/gvfs/PKGBUILD @@ -0,0 +1,113 @@ +# $Id: PKGBUILD 160359 2012-06-01 12:58:23Z dreisner $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgbase=gvfs +pkgname=('gvfs' 'gvfs-smb' ) +pkgver=1.12.3 +pkgrel=2 +arch=('i686' 'x86_64') +license=('LGPL') +makedepends=('avahi' 'bluez' 'dbus-glib' 'fuse' 'intltool' 'libarchive' 'libcdio' 'libsoup-gnome' 'smbclient' 'udisks') +url="http://www.gnome.org" +options=(!libtool) +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgbase/${pkgver%.*}/$pkgbase-$pkgver.tar.xz) +sha256sums=('38f69ec92083f86a51e7814e98d2861151f16dfb3abe4b3b39488408e12fd9c2') + +build() { + cd "$pkgbase-$pkgver" + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static \ + --libexecdir=/usr/lib/gvfs \ + --with-bash-completion-dir=/usr/share/bash-completion/completions + make +} + +package_gvfs() { + pkgdesc="Userspace virtual filesystem implemented as a pluggable module for gio" + depends=('avahi' 'dconf' 'fuse' 'libarchive' 'libcdio' 'libsoup-gnome' 'udisks') + optdepends=('gvfs-afc: AFC (mobile devices) support' + 'gvfs-smb: SMB/CIFS (Windows client) support' + 'gvfs-gphoto2: gphoto2 (PTP camera/MTP media player) support' + 'gvfs-obexftp: ObexFTP (bluetooth) support' + 'gvfs-afp: Apple Filing Protocol (AFP) support') + install=gvfs.install + + cd "$pkgbase-$pkgver" + sed -e 's/^am__append_4/#am__append_4/' \ + -e 's/^am__append_5/#am__append_5/' \ + -i monitor/Makefile + make DESTDIR="$pkgdir" install + + cd "$pkgdir" + #rm usr/lib/gvfs/gvfsd-{smb,smb-browse,afc,afp,afp-browse,gphoto2,obexftp} + rm usr/lib/gvfs/gvfsd-{smb,smb-browse,afp,afp-browse,obexftp} + rm usr/share/gvfs/mounts/{smb,smb-browse,afp,afp-browse,obexftp}.mount + rm usr/share/glib-2.0/schemas/org.gnome.system.smb.gschema.xml + rm usr/share/GConf/gsettings/gvfs-smb.convert +} + +package_gvfs-smb() { + pkgdesc="SMB/CIFS (Windows client) backend for gvfs" + depends=("gvfs=$pkgver" 'smbclient' 'libgnome-keyring') + install=gvfs-smb.install + + cd "$pkgbase-$pkgver/daemon" + install -m755 -d "$pkgdir/usr/lib/gvfs" + install -m755 -d "$pkgdir/usr/share/gvfs/mounts" + + install -m755 .libs/gvfsd-smb{,-browse} "$pkgdir/usr/lib/gvfs/" + install -m644 smb{,-browse}.mount "$pkgdir/usr/share/gvfs/mounts/" + + install -Dm644 org.gnome.system.smb.gschema.xml \ + "$pkgdir/usr/share/glib-2.0/schemas/org.gnome.system.smb.gschema.xml" + install -Dm644 gvfs-smb.convert \ + "$pkgdir/usr/share/GConf/gsettings/gvfs-smb.convert" +} + +package_gvfs-afc() { + pkgdesc="AFC (mobile devices) backend for gvfs" + depends=("gvfs=$pkgver" 'libimobiledevice') + install=gvfs-module.install + + cd "$pkgbase-$pkgver/daemon" + install -D .libs/gvfsd-afc "$pkgdir/usr/lib/gvfs/gvfsd-afc" + install -Dm644 afc.mount "$pkgdir/usr/share/gvfs/mounts/afc.mount" + + cd "$srcdir/$pkgbase-$pkgver/monitor/afc" + make DESTDIR="$pkgdir" install +} + +package_gvfs-gphoto2() { + pkgdesc="gphoto2 (PTP camera/MTP media player) backend for gvfs" + depends=("gvfs=$pkgver" 'dbus-core' 'libgphoto2' 'udev') + install=gvfs-module.install + + cd "$pkgbase-$pkgver/daemon" + install -D .libs/gvfsd-gphoto2 "$pkgdir/usr/lib/gvfs/gvfsd-gphoto2" + install -Dm644 gphoto2.mount "$pkgdir/usr/share/gvfs/mounts/gphoto2.mount" + + cd "$srcdir/$pkgbase-$pkgver/monitor/gphoto2" + make DESTDIR="$pkgdir" install +} + +package_gvfs-obexftp() { + pkgdesc="ObexFTP (bluetooth) backend for gvfs" + depends=("gvfs=$pkgver" 'dbus-glib' 'bluez' 'obex-data-server') + install=gvfs-module.install + + cd "$pkgbase-$pkgver/daemon" + install -D .libs/gvfsd-obexftp "$pkgdir/usr/lib/gvfs/gvfsd-obexftp" + install -Dm644 obexftp.mount "$pkgdir/usr/share/gvfs/mounts/obexftp.mount" +} + +package_gvfs-afp() { + pkgdesc="Apple Filing Protocol (AFP) backend for gvfs" + depends=("gvfs=$pkgver") + install=gvfs-module.install + install -m755 -d "$pkgdir/usr/lib/gvfs" + install -m755 -d "$pkgdir/usr/share/gvfs/mounts" + + cd "$pkgbase-$pkgver/daemon" + install -m755 .libs/gvfsd-afp{,-browse} "$pkgdir/usr/lib/gvfs/" + install -m644 afp{,-browse}.mount "$pkgdir/usr/share/gvfs/mounts/" +} diff --git a/abs/extra/gvfs/__changelog b/abs/extra/gvfs/__changelog new file mode 100644 index 0000000..69dce13 --- /dev/null +++ b/abs/extra/gvfs/__changelog @@ -0,0 +1 @@ +removed photo and afc diff --git a/abs/extra/gvfs/gvfs-module.install b/abs/extra/gvfs/gvfs-module.install new file mode 100644 index 0000000..09d1f11 --- /dev/null +++ b/abs/extra/gvfs/gvfs-module.install @@ -0,0 +1,7 @@ +post_install() { + killall -USR1 gvfsd >&/dev/null || : +} + +post_upgrade() { + post_install +} diff --git a/abs/extra/gvfs/gvfs-smb.install b/abs/extra/gvfs/gvfs-smb.install new file mode 100644 index 0000000..da6a2ab --- /dev/null +++ b/abs/extra/gvfs/gvfs-smb.install @@ -0,0 +1,12 @@ +post_install() { + glib-compile-schemas /usr/share/glib-2.0/schemas + killall -USR1 gvfsd >&/dev/null || : +} + +post_upgrade() { + post_install +} + +post_remove() { + glib-compile-schemas /usr/share/glib-2.0/schemas +} diff --git a/abs/extra/gvfs/gvfs.install b/abs/extra/gvfs/gvfs.install new file mode 100644 index 0000000..3482d99 --- /dev/null +++ b/abs/extra/gvfs/gvfs.install @@ -0,0 +1,14 @@ +post_install() { + gio-querymodules /usr/lib/gio/modules + glib-compile-schemas /usr/share/glib-2.0/schemas + killall -USR1 gvfsd >&/dev/null || : +} + +post_upgrade() { + post_install +} + +post_remove() { + gio-querymodules /usr/lib/gio/modules + glib-compile-schemas /usr/share/glib-2.0/schemas +} diff --git a/abs/extra/handbrake/PKGBUILD b/abs/extra/handbrake/PKGBUILD index 386eb08..b70180a 100644 --- a/abs/extra/handbrake/PKGBUILD +++ b/abs/extra/handbrake/PKGBUILD @@ -1,10 +1,10 @@ -# $Id$ +# $Id: PKGBUILD 74053 2012-07-18 17:33:26Z foutrelis $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Sebastien Piccand <sebcactus gmail com> pkgname=('handbrake' 'handbrake-cli') -pkgver=0.9.6 +pkgver=0.9.8 pkgrel=1 arch=('i686' 'x86_64') url="http://handbrake.fr/" @@ -12,7 +12,7 @@ license=('GPL') makedepends=('intltool' 'python2' 'yasm' 'wget' 'bzip2' 'gcc-libs' 'libnotify' 'gstreamer0.10-base' 'gtk2' 'dbus-glib' 'fribidi') source=(http://downloads.sourceforge.net/project/handbrake/$pkgver/HandBrake-$pkgver.tar.bz2) -sha256sums=('8e7d3dd6d9eb10ba633bf0b6cabcc50a995699ec448f86cb9579c0d2fc7005f5') +sha256sums=('dba75a9ff772e419c01d75532c1bf0d7253e73d7ead184eee755cd4c133dc798') build() { cd "$srcdir/HandBrake-$pkgver" diff --git a/abs/extra/hd2u/PKGBUILD b/abs/extra/hd2u/PKGBUILD index 8cde95c..19e7098 100644 --- a/abs/extra/hd2u/PKGBUILD +++ b/abs/extra/hd2u/PKGBUILD @@ -1,21 +1,27 @@ -# $Id: PKGBUILD 13676 2008-09-27 21:20:46Z giovanni $ +# $Id: PKGBUILD 143751 2011-11-28 20:37:55Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Damir Perisa <damir.perisa@bluewin.ch> pkgname=hd2u pkgver=1.0.3 -pkgrel=1 +pkgrel=4 pkgdesc="Dos2Unix text file converter" arch=('i686' 'x86_64') -license=('GPL2') +license=('GPL') url="http://hany.sk/~hany/software/hd2u/" depends=('popt') -source=(http://hany.sk/~hany/_data/hd2u/$pkgname-$pkgver.tgz) +source=("http://hany.sk/~hany/_data/hd2u/$pkgname-$pkgver.tgz") md5sums=('8f6668fafb279aa19f956ec0515717b6') build() { cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr - make || return 1 - make prefix=$pkgdir/usr install + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make BUILD_ROOT="$pkgdir" install } diff --git a/abs/extra/hddtemp/ChangeLog b/abs/extra/hddtemp/ChangeLog deleted file mode 100644 index d9b03e7..0000000 --- a/abs/extra/hddtemp/ChangeLog +++ /dev/null @@ -1,14 +0,0 @@ -2009-03-05 Andreas Radke <andyrtr@archlinux.org> -* pkg moved to extra from AUR - -2008-01-23 Roman Kyrylych <roman@archlinux.org> -* Updated to v38 of Debian's patchset - -2007-11-30 Roman Kyrylych <roman@archlinux.org> -* Backup /etc/conf.d/hddtemp - -2007-11-09 Roman Kyrylych <roman@archlinux.org> -* Updated to v37 of Debian's patchset - -2007-06-26 tardo <tardo@nagi-fanboi.net> -* Built for x86_64 diff --git a/abs/extra/hddtemp/PKGBUILD b/abs/extra/hddtemp/PKGBUILD index f43fb8f..94073ce 100644 --- a/abs/extra/hddtemp/PKGBUILD +++ b/abs/extra/hddtemp/PKGBUILD @@ -1,41 +1,53 @@ -# $Id: PKGBUILD 98707 2010-11-12 20:24:41Z ibiru $ -# Maintainer: Andrea Scarpino <bash@archlinux.it> +# $Id: PKGBUILD 163630 2012-07-17 14:24:03Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: Ionut Biru <ibiru@archlinux.org> +# Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Roman Kyrylych <roman@archlinux.org> # Contributor: Damir Perisa <damir@archlinux.org> pkgname=hddtemp -pkgver=0.3.beta15.46 _origver=0.3-beta15 -_patchver=46 +_patchver=${_origver}-52 +pkgver=${_patchver//-/.} pkgrel=1 pkgdesc="Gives you the temperature of your hard drive by reading S.M.A.R.T. information" -arch=('i686' 'x86_64') -url="http://www.guzu.net/linux/hddtemp.php" +url='https://savannah.nongnu.org/projects/hddtemp/' license=('GPL') -depends=('glibc') +arch=('i686' 'x86_64') backup=('etc/conf.d/hddtemp') -source=(http://www.guzu.net/files/hddtemp-${_origver}.tar.bz2 - http://ftp.debian.org/debian/pool/main/h/hddtemp/hddtemp_${_origver}-${_patchver}.diff.gz - 'hddtemp' 'hddtemp.confd' 'hddtemp-0.3-beta15-reg-eip.patch') -md5sums=('8b829339e1ae9df701684ec239021bb8' - '040437845e28771c560b4bb40e41f933' - 'b7ebb86dfeef3bc4577ed1040307e36b' - 'fdca5c43900406f0be76534ef2a5a697' - '526ef28549dd0da7e38d32cfc8523592') +source=("http://download.savannah.gnu.org/releases/${pkgname}/${pkgname}-${_origver}.tar.bz2" + "http://ftp.debian.org/debian/pool/main/h/${pkgname}/${pkgname}_${_patchver}.diff.gz" + 'rc.d' + 'conf.d' + 'service') +sha1sums=('65393b0a4d9862c030c81702d95c1acd00da275b' + 'b9bcdd0537c1540e55e5056445b571ea61d5a4a3' + '71159486b1505ec6acfb7585e0d8fbe78afe54ec' + 'd45e3022f614dbf8904ecb1a3e702bb71fcaa808' + '501fcf4faf8b2689d010f9cbbf39f917211f611f') + options=('!libtool') build() { - cd "$srcdir/$pkgname-${_origver}" + cd "${srcdir}/${pkgname}-${_origver}" + + patch -p1 -i "../${pkgname}_${_patchver}.diff" + + ./configure \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --with-db-path="/usr/share/${pkgname}/hddtemp.db" + + make +} - patch -Np1 -i "$srcdir/${pkgname}_${_origver}-${_patchver}.diff" - patch -Np1 -i "$srcdir/hddtemp-0.3-beta15-reg-eip.patch" +package() { + cd "${srcdir}/${pkgname}-${_origver}" - ./configure --prefix=/usr --mandir=/usr/share/man --with-db-path=/usr/share/$pkgname/hddtemp.db - make - make DESTDIR=$pkgdir install + make DESTDIR="${pkgdir}" install - install -D -m644 "$srcdir/$pkgname-${_origver}/debian/hddtemp.db" \ - "$pkgdir/usr/share/${pkgname}/hddtemp.db" - install -D -m644 "$srcdir/hddtemp.confd" "$pkgdir/etc/conf.d/hddtemp" - install -D -m755 "$srcdir/hddtemp" "$pkgdir/etc/rc.d/hddtemp" + install -Dm644 "../${pkgname}-${_origver}/debian/hddtemp.db" "${pkgdir}/usr/share/${pkgname}/hddtemp.db" + install -Dm644 '../service' "${pkgdir}/usr/lib/systemd/system/hddtemp.service" + install -Dm644 '../conf.d' "${pkgdir}/etc/conf.d/hddtemp" + install -Dm755 '../rc.d' "${pkgdir}/etc/rc.d/hddtemp" } diff --git a/abs/extra/hddtemp/hddtemp.confd b/abs/extra/hddtemp/conf.d index 6a1e18e..6a1e18e 100644 --- a/abs/extra/hddtemp/hddtemp.confd +++ b/abs/extra/hddtemp/conf.d diff --git a/abs/extra/hddtemp/hddtemp-0.3-beta15-reg-eip.patch b/abs/extra/hddtemp/hddtemp-0.3-beta15-reg-eip.patch deleted file mode 100644 index 504a036..0000000 --- a/abs/extra/hddtemp/hddtemp-0.3-beta15-reg-eip.patch +++ /dev/null @@ -1,22 +0,0 @@ -__USE_GNU needs to be in effect when including sys/ucontext.h, -and signal.h pulls it in in some setups. - -diff -up hddtemp-0.3-beta15/src/backtrace.c~ hddtemp-0.3-beta15/src/backtrace.c ---- hddtemp-0.3-beta15/src/backtrace.c~ 2006-04-19 05:38:14.000000000 +0300 -+++ hddtemp-0.3-beta15/src/backtrace.c 2010-02-14 21:59:47.000000000 +0200 -@@ -27,13 +27,12 @@ - #include <stdlib.h> - #include <unistd.h> - #include <linux/ptrace.h> -+#define __USE_GNU -+#include <ucontext.h> - #include <signal.h> - #include <bits/sigcontext.h> - #include <sys/param.h> - --#define __USE_GNU --#include <ucontext.h> -- - #define MAX_BTSIZE 64 - - void backtrace_handler(int n, siginfo_t *ist, void *extra) { diff --git a/abs/extra/hddtemp/hddtemp b/abs/extra/hddtemp/rc.d index 62f0908..62f0908 100644 --- a/abs/extra/hddtemp/hddtemp +++ b/abs/extra/hddtemp/rc.d diff --git a/abs/extra/hddtemp/service b/abs/extra/hddtemp/service new file mode 100644 index 0000000..bc56d16 --- /dev/null +++ b/abs/extra/hddtemp/service @@ -0,0 +1,9 @@ +[Unit] +Description=Hard drive temperature monitor daemon + +[Service] +EnvironmentFile=/etc/conf.d/hddtemp +ExecStart=/usr/sbin/hddtemp -dF $PARAMS $DRIVES + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/help2man/PKGBUILD b/abs/extra/help2man/PKGBUILD index fff2829..2b4176a 100644 --- a/abs/extra/help2man/PKGBUILD +++ b/abs/extra/help2man/PKGBUILD @@ -1,9 +1,9 @@ -# $Id$ +# $Id: PKGBUILD 160650 2012-06-03 07:59:58Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Paul Mattal <paul@mattal.com> pkgname=help2man -pkgver=1.40.4 +pkgver=1.40.10 pkgrel=1 pkgdesc="Conversion tool to create man files" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ license=('GPL') depends=('perl-locale-gettext') install=help2man.install source=("http://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz") -md5sums=('4d79dc7cb7c20019c2a3650d35259c45') +md5sums=('7181a363af41e0f476dd81f36b105a8e') build() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -20,7 +20,7 @@ build() { ./configure --prefix=/usr \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ - --libdir=/lib + --libdir=/usr/lib make } diff --git a/abs/extra/help2man/help2man.install b/abs/extra/help2man/help2man.install index ab6585b..815a943 100644 --- a/abs/extra/help2man/help2man.install +++ b/abs/extra/help2man/help2man.install @@ -8,7 +8,7 @@ post_install() { } post_upgrade() { - post_install $1 + post_install } pre_remove() { diff --git a/abs/extra/hicolor-icon-theme/PKGBUILD b/abs/extra/hicolor-icon-theme/PKGBUILD index 64610cd..bf04668 100644 --- a/abs/extra/hicolor-icon-theme/PKGBUILD +++ b/abs/extra/hicolor-icon-theme/PKGBUILD @@ -1,23 +1,23 @@ -# $Id: PKGBUILD 78611 2010-04-27 17:13:24Z jgc $ +# $Id: PKGBUILD 149617 2012-02-08 20:27:24Z pierre $ # Maintainer: Jan De Groot <jgc@archlinux.org> pkgname=hicolor-icon-theme pkgver=0.12 pkgrel=2 pkgdesc="Freedesktop.org Hicolor icon theme" -arch=(any) +arch=('any') url="http://icon-theme.freedesktop.org/wiki/HicolorTheme" license=('GPL2') -source=(http://icon-theme.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz) +source=("http://icon-theme.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz") md5sums=('55cafbcef8bcf7107f6d502149eb4d87') build() { cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 + ./configure --prefix=/usr + make } + package() { cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 + make DESTDIR="${pkgdir}" install } - diff --git a/abs/extra/htop/ChangeLog b/abs/extra/htop/ChangeLog deleted file mode 100644 index ea57762..0000000 --- a/abs/extra/htop/ChangeLog +++ /dev/null @@ -1,17 +0,0 @@ -2011-05-17 Angel Velasquez <angvp@archlinux.org> - * Added patch to fix --sort-key (closes FS#23224) - -2009-09-21 Eric Belanger <eric@archlinux.org> - - * htop 0.8.3-1 - * Upstream update - * Built with vserver and openvz support (close FS#12755) - -2008-12-09 Alexander Fehr <pizzapunk gmail com> - - * htop-0.8.1-1: - * New upstream release - * New maintainer - * Added patch to fix FS#12235 - * Enabled Unicode support - * Added ChangeLog diff --git a/abs/extra/htop/PKGBUILD b/abs/extra/htop/PKGBUILD index 05c8826..93b4db6 100644 --- a/abs/extra/htop/PKGBUILD +++ b/abs/extra/htop/PKGBUILD @@ -1,35 +1,39 @@ -# $Id$ +# $Id: PKGBUILD 170397 2012-11-07 01:25:17Z dreisner $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: Eric Belanger <eric@archlinux.org> # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=htop -pkgver=0.9 -pkgrel=2 +pkgver=1.0.2 +pkgrel=1 pkgdesc="Interactive process viewer" arch=('i686' 'x86_64') url="http://htop.sourceforge.net/" license=('GPL') depends=('ncurses') makedepends=('python2') +optdepends=('lsof: show files opened by a process' + 'strace: attach to a running process') options=('!emptydirs') -changelog=ChangeLog -source=(http://downloads.sourceforge.net/htop/${pkgname}-${pkgver}.tar.gz - htop.c.patch) -md5sums=('7c5507f35f363f3f40183a2ba3c561f8' - '750e8ad8476c5d9738da2a2bc7a7c2b6') +source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") +md5sums=('0d01cca8df3349c74569cefebbd9919e') build() { - cd ${srcdir}/${pkgname}-${pkgver} - sed -i 's|ncursesw/curses.h|curses.h|' RichString.h RichString.c configure - sed -i 's|python|python2|' scripts/MakeHeader.py - patch -Np0 -i $srcdir/htop.c.patch - ./configure --prefix=/usr --enable-unicode --enable-openvz \ - --enable-vserver - make + cd "$pkgname-$pkgver" + + sed -i 's|ncursesw/curses.h|curses.h|' RichString.[ch] configure + sed -i 's|python|python2|' scripts/MakeHeader.py + + ./configure \ + --prefix=/usr \ + --enable-unicode \ + --enable-openvz \ + --enable-vserver \ + --enable-cgroup + + make } package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install + make -C "$pkgname-$pkgver" DESTDIR="$pkgdir" install } diff --git a/abs/extra/htop/htop.c.patch b/abs/extra/htop/htop.c.patch deleted file mode 100644 index 41a2dd3..0000000 --- a/abs/extra/htop/htop.c.patch +++ /dev/null @@ -1,15 +0,0 @@ -From: Roman Kosenko <madkite@gmail.com> -Date: Thu, 10 Mar 2011 16:23:53 +0200 -Subject: [PATCH] Fix stupid bug with --sort-key - ---- htop.c.old 2010-11-24 20:45:38.000000000 +0200 -+++ htop.c 2011-03-10 16:32:18.473716667 +0200 -@@ -282,7 +282,7 @@ - printVersionFlag(); - break; - case 's': -- if (strcmp(optarg, "help")) { -+ if (!strcmp(optarg, "help")) { - for (int j = 1; j < LAST_PROCESSFIELD; j++) - printf ("%s\n", Process_fieldNames[j]); - exit(0); diff --git a/abs/extra/huludesktop/PKGBUILD b/abs/extra/huludesktop/PKGBUILD index 6bb69da..d47f165 100644 --- a/abs/extra/huludesktop/PKGBUILD +++ b/abs/extra/huludesktop/PKGBUILD @@ -1,26 +1,30 @@ pkgname=huludesktop pkgver=0.2 -pkgrel=5 +pkgrel=6 pkgdesc="Hulu Desktop for Linux" -arch=(i686) +arch=(i686 'x86_64') url="http://www.hulu.com/labs/hulu-desktop-linux" license=('unknown') makedepends=('deb2targz') -depends=('glib2' 'gtk2' 'lirc' 'flashplugin' 'linhes-scripts>=7-29') +depends=('glib2' 'gtk2' 'lirc' 'flashplugin' 'linhes-scripts>=7-29' ) backup=('home/mythtv/.huludesktop') install=huludesktop.install options=('') -source=('http://download.hulu.com/huludesktop_i386.deb' 'huludesktop' 'huludesktop.sh') - +source=('http://download.hulu.com/huludesktop_i386.deb' 'huludesktop' 'huludesktop.sh' 'huludesktop_is.conf') +. /usr/MythVantage/bin/install_functions.sh +home_check build() { cd $startdir/src deb2targz huludesktop_i386.deb tar -xzvf huludesktop_i386.tar.gz -C $pkgdir - mkdir -p $pkgdir/home/mythtv + mkdir -p $pkgdir/$MYTHHOME mkdir -p $pkgdir/usr/LH/bin - cp huludesktop $pkgdir/home/mythtv/.huludesktop + cp huludesktop $pkgdir/$MYTHHOME/.huludesktop install -D -m755 huludesktop.sh ${pkgdir}/usr/LH/bin + #add in file for gen_is.xml + install -D -m0744 ${srcdir}/huludesktop_is.conf ${pkgdir}/etc/gen_is_xml.d/huludesktop_is.conf } md5sums=('d9b27d1837ab86526100964e80c3cdd1' '935d923b90abaa4b1838a5e6b23e704e' - '8f7dbf19d6168bc3a5b0c1da1c878693') + '8f7dbf19d6168bc3a5b0c1da1c878693' + '36fb8d9af1ff8a0b8634e7dbddaf975f') diff --git a/abs/extra/huludesktop/__changelog b/abs/extra/huludesktop/__changelog new file mode 100644 index 0000000..93ed61a --- /dev/null +++ b/abs/extra/huludesktop/__changelog @@ -0,0 +1 @@ +gen_is_xml.py huludesktop_is.xml diff --git a/abs/extra/huludesktop/huludesktop.install b/abs/extra/huludesktop/huludesktop.install index 33d3d3c..e567a48 100644 --- a/abs/extra/huludesktop/huludesktop.install +++ b/abs/extra/huludesktop/huludesktop.install @@ -1,29 +1,18 @@ # arg 1: the new package version post_install() { - mv /usr/share/mythtv/themes/defaultmenu/is.xml /tmp - grep -v -e /mythmenu /tmp/is.xml > /tmp/is.xml.tmp - echo "<!--#Hulu-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Hulu Desktop</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC huludesktop.sh</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#Hulu-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "</mythmenu>" >> /tmp/is.xml.tmp - mv /tmp/is.xml.tmp /usr/share/mythtv/themes/defaultmenu/is.xml - chown mythtv.mythtv /home/mythtv/.huludesktop + gen_is_xml.py + chown mythtv.mythtv $MYTHHOME/.huludesktop } # arg 1: the new package version # arg 2: the old package version post_upgrade() { - post_remove $1 - post_install $1 + gen_is_xml.py } post_remove() { - mv /usr/share/mythtv/themes/defaultmenu/is.xml /tmp/is.xml.tmp - sed -e '/\#Hulu/,/\#Hulu/d' < /tmp/is.xml.tmp > /usr/share/mythtv/themes/defaultmenu/is.xml + gen_is_xml.py } +. /usr/MythVantage/bin/install_functions.sh +home_check op=$1 shift diff --git a/abs/extra/huludesktop/huludesktop_is.conf b/abs/extra/huludesktop/huludesktop_is.conf new file mode 100644 index 0000000..dba4076 --- /dev/null +++ b/abs/extra/huludesktop/huludesktop_is.conf @@ -0,0 +1,8 @@ +<!--#Hulu--> + <button> + <type>STREAM</type> + <text>Hulu Desktop</text> + <action>EXEC huludesktop.sh</action> + </button> +<!--#Hulu--> + diff --git a/abs/extra/hunspell/ChangeLog b/abs/extra/hunspell/ChangeLog deleted file mode 100644 index dcb3a2a..0000000 --- a/abs/extra/hunspell/ChangeLog +++ /dev/null @@ -1,6 +0,0 @@ -2008-12-02 Alexander Fehr <pizzapunk gmail com> - - * hunspell-1.2.8-1: - New upstream release. - New maintainer. - Added ChangeLog. diff --git a/abs/extra/hunspell/PKGBUILD b/abs/extra/hunspell/PKGBUILD index 87f46cb..a4b178a 100644 --- a/abs/extra/hunspell/PKGBUILD +++ b/abs/extra/hunspell/PKGBUILD @@ -1,26 +1,33 @@ -# $Id: PKGBUILD 20746 2008-12-06 14:17:50Z alexanderf $ -# Maintainer: Alexander Fehr <pizzapunk gmail com> +# $Id: PKGBUILD 166664 2012-09-15 07:49:23Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> # Contributor: Hussam Al-Tayeb <ht990332@gmail.com> pkgname=hunspell -pkgver=1.2.12 -pkgrel=1 +pkgver=1.3.2 +pkgrel=2 pkgdesc="Spell checker and morphological analyzer library and program" arch=('i686' 'x86_64') url="http://hunspell.sourceforge.net/" license=('GPL' 'LGPL' 'MPL') -depends=('gcc-libs') +depends=('gcc-libs' 'readline') +optdepends=('perl: for ispellaff2myspell') options=('!libtool') source=(http://downloads.sourceforge.net/hunspell/hunspell-$pkgver.tar.gz) +md5sums=('3121aaf3e13e5d88dfff13fb4a5f1ab8') build() { cd "$srcdir/hunspell-$pkgver" - - ./configure --prefix=/usr --disable-static || return 1 - make || return 1 + ./configure --prefix=/usr --disable-static \ + --with-ui --with-readline --with-experimental + make } + package() { cd "$srcdir/hunspell-$pkgver" - make DESTDIR="$pkgdir" install || return 1 + make DESTDIR="$pkgdir" install + + # add generic hunspell.so for development and projects not using pkgconfig flags - FS#30592 + pushd $pkgdir/usr/lib + ln -s libhunspell-?.?.so libhunspell.so + popd } -md5sums=('5ef2dc1026660d0ffb7eae7b511aee23') diff --git a/abs/extra/hunspell/__changelog b/abs/extra/hunspell/__changelog deleted file mode 100644 index 173ca43..0000000 --- a/abs/extra/hunspell/__changelog +++ /dev/null @@ -1 +0,0 @@ -update to 1.2.11 diff --git a/abs/extra/hwloc/PKGBUILD b/abs/extra/hwloc/PKGBUILD index d8023b9..bcefb19 100644 --- a/abs/extra/hwloc/PKGBUILD +++ b/abs/extra/hwloc/PKGBUILD @@ -1,21 +1,20 @@ -# $Id$ +# $Id: PKGBUILD 159285 2012-05-20 22:11:18Z stephane $ # Maintainer : StĂ©phane Gaudreault <stephane@archlinux.org> # Contributor: Sylvain HENRY <hsyl20@yahoo.fr> # Contributor: HervĂ© YVIQUEL <elldekaa@gmail.com> pkgname=hwloc -pkgver=1.2 +pkgver=1.4.2 pkgrel=1 pkgdesc="Portable Hardware Locality is a portable abstraction of hierarchical architectures" arch=('i686' 'x86_64') url="http://www.open-mpi.org/projects/hwloc/" license=('BSD') -depends=('sh') +depends=('sh' 'pciutils' 'cairo' 'libxml2') makedepends=('pkg-config') -optdepends=('cairo: Graphical output' 'libxml2: XML export') options=('!libtool' '!docs') -source=(http://www.open-mpi.org/software/hwloc/v1.2/downloads/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('43886dfdddda5bfbaa841976275e7bf643453d7b') +source=(http://www.open-mpi.org/software/hwloc/v1.4/downloads/${pkgname}-${pkgver}.tar.bz2) +sha1sums=('2c2ca4101b4ea6782393b555a320c566da50cb68') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/abs/extra/i2c-tools/Makefile.patch b/abs/extra/i2c-tools/Makefile.patch deleted file mode 100644 index f90fa14..0000000 --- a/abs/extra/i2c-tools/Makefile.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- Makefile.orig 2007-11-01 18:54:57.000000000 +0100 -+++ Makefile 2008-09-24 14:46:54.000000000 +0200 -@@ -5,7 +5,7 @@ - # Licensed under the GNU General Public License. - - DESTDIR = --prefix = /usr/local -+prefix = /usr - bindir = $(prefix)/bin - sbindir = $(prefix)/sbin - mandir = $(prefix)/share/man -@@ -32,6 +32,6 @@ - all: - - include eeprom/Module.mk --include include/Module.mk -+#include include/Module.mk - include stub/Module.mk - include tools/Module.mk diff --git a/abs/extra/i2c-tools/PKGBUILD b/abs/extra/i2c-tools/PKGBUILD deleted file mode 100644 index db1700d..0000000 --- a/abs/extra/i2c-tools/PKGBUILD +++ /dev/null @@ -1,21 +0,0 @@ -# Contributor: DonVla <donvla@users.sourceforge.net> - -pkgname=i2c-tools -pkgver=3.0.2 -pkgrel=1 -pkgdesc="Heterogeneous set of I2C tools for Linux that used to be part of lm-sensors" -arch=('i686' 'x86_64') -url="http://www.lm-sensors.org/wiki/I2CTools" -license=('GPL') -depends=('lm_sensors' 'perl' 'read-edid') -options=(strip) -source=(http://dl.lm-sensors.org/$pkgname/releases/$pkgname-$pkgver.tar.bz2 Makefile.patch) -md5sums=('b546345ac19db56719dea6b8199f11e0' '49d17834f9d7e68407ec46785e47bb94') - -build() { - cd "$srcdir/$pkgname-$pkgver" - patch -p0 < $startdir/Makefile.patch - make || return 1 - make DESTDIR="$pkgdir" install -} -# vim:set ts=2 sw=2 et: diff --git a/abs/extra/icon-naming-utils/PKGBUILD b/abs/extra/icon-naming-utils/PKGBUILD deleted file mode 100644 index 5496c29..0000000 --- a/abs/extra/icon-naming-utils/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 33029 2009-04-03 21:35:27Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: William Rea <sillywilly@gmail.com> - -pkgname=icon-naming-utils -pkgver=0.8.90 -pkgrel=2 -pkgdesc="Maps the new names of icons for Tango to the legacy names used by the GNOME and KDE desktops." -arch=('i686' 'x86_64') -license=('GPL') -url="http://tango.freedesktop.org/" -depends=('perl-xml-simple') -source=(http://tango.freedesktop.org/releases/${pkgname}-${pkgver}.tar.bz2) -md5sums=('dd8108b56130b9eedc4042df634efa66') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --libexecdir=/usr/lib/icon-naming-utils \ - --localstatedir=/var || return 1 - make || return 1 -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 - mv "${pkgdir}/usr/share/pkgconfig" "${pkgdir}/usr/lib/pkgconfig" || return 1 -} - diff --git a/abs/extra/icu/PKGBUILD b/abs/extra/icu/PKGBUILD index 14cd4aa..95b0fab 100644 --- a/abs/extra/icu/PKGBUILD +++ b/abs/extra/icu/PKGBUILD @@ -1,24 +1,28 @@ -# $Id: PKGBUILD 92974 2010-10-02 16:39:18Z andyrtr $ +# $Id: PKGBUILD 160960 2012-06-07 13:35:03Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> # Contributor: Art Gramlich <art@gramlich-net.com> pkgname=icu -pkgver=4.4.2 +pkgver=49.1.2 pkgrel=1 pkgdesc="International Components for Unicode library" arch=(i686 x86_64) url="http://www.icu-project.org/" license=('custom:"icu"') depends=('gcc-libs' 'sh') -source=(http://download.icu-project.org/files/${pkgname}4c/${pkgver}/${pkgname}4c-${pkgver//./_}-src.tgz - #http://download.icu-project.org/files/${pkgname}4c/${pkgver}/${pkgname}4c-${pkgver/./_}-src.tgz -) -md5sums=('314e582264c36b3735466c522899aa07') - +source=(#http://download.icu-project.org/files/${pkgname}4c/${pkgver}/${pkgname}4c-${pkgver/./_}-src.tgz + http://download.icu-project.org/files/${pkgname}4c/${pkgver}/${pkgname}4c-${pkgver//./_}-src.tgz + icu.8198.revert.icu5431.patch) +md5sums=('bbc609fe5237202d7abf016141012a45' + 'ebd5470fc969c75e52baf4af94a9ee82') build() { cd ${srcdir}/icu/source - ./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man + # fix Malayalam encoding https://bugzilla.redhat.com/show_bug.cgi?id=654200 + patch -Rp3 -i ${srcdir}/icu.8198.revert.icu5431.patch + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man make } diff --git a/abs/extra/icu/icu.8198.revert.icu5431.patch b/abs/extra/icu/icu.8198.revert.icu5431.patch new file mode 100644 index 0000000..4c3e78b --- /dev/null +++ b/abs/extra/icu/icu.8198.revert.icu5431.patch @@ -0,0 +1,129 @@ +Index: icu/trunk/source/layout/IndicReordering.cpp
+===================================================================
+--- icu/trunk/source/layout/IndicReordering.cpp (revision 25772)
++++ icu/trunk/source/layout/IndicReordering.cpp (revision 26090)
+@@ -126,4 +126,8 @@
+ FeatureMask fSMFeatures;
+
++ LEUnicode fPreBaseConsonant;
++ LEUnicode fPreBaseVirama;
++ le_int32 fPBCIndex;
++ FeatureMask fPBCFeatures;
+
+ void saveMatra(LEUnicode matra, le_int32 matraIndex, IndicClassTable::CharClass matraClass)
+@@ -172,5 +176,6 @@
+ fMatraFeatures(0), fMPreOutIndex(-1), fMPreFixups(mpreFixups),
+ fVMabove(0), fVMpost(0), fVMIndex(0), fVMFeatures(0),
+- fSMabove(0), fSMbelow(0), fSMIndex(0), fSMFeatures(0)
++ fSMabove(0), fSMbelow(0), fSMIndex(0), fSMFeatures(0),
++ fPreBaseConsonant(0), fPreBaseVirama(0), fPBCIndex(0), fPBCFeatures(0)
+ {
+ // nothing else to do...
+@@ -191,4 +196,6 @@
+ fVMabove = fVMpost = 0;
+ fSMabove = fSMbelow = 0;
++
++ fPreBaseConsonant = fPreBaseVirama = 0;
+ }
+
+@@ -386,4 +393,12 @@
+ }
+
++ void notePreBaseConsonant(le_uint32 index,LEUnicode PBConsonant, LEUnicode PBVirama, FeatureMask features)
++ {
++ fPBCIndex = index;
++ fPreBaseConsonant = PBConsonant;
++ fPreBaseVirama = PBVirama;
++ fPBCFeatures = features;
++ }
++
+ void noteBaseConsonant()
+ {
+@@ -465,4 +480,20 @@
+ }
+
++ void writePreBaseConsonant()
++ {
++ // The TDIL spec says that consonant + virama + RRA should produce a rakar in Malayalam. However,
++ // it seems that almost none of the fonts for Malayalam are set up to handle this.
++ // So, we're going to force the issue here by using the rakar as defined with RA in most fonts.
++
++ if (fPreBaseConsonant == 0x0d31) { // RRA
++ fPreBaseConsonant = 0x0d30; // RA
++ }
++
++ if (fPreBaseConsonant != 0) {
++ writeChar(fPreBaseConsonant, fPBCIndex, fPBCFeatures);
++ writeChar(fPreBaseVirama,fPBCIndex-1,fPBCFeatures);
++ }
++ }
++
+ le_int32 getOutputIndex()
+ {
+@@ -723,4 +754,5 @@
+ }
+
++
+ IndicClassTable::CharClass charClass = CC_RESERVED;
+ IndicClassTable::CharClass nextClass = CC_RESERVED;
+@@ -730,7 +762,9 @@
+ le_bool seenVattu = FALSE;
+ le_bool seenBelowBaseForm = FALSE;
++ le_bool seenPreBaseForm = FALSE;
+ le_bool hasNukta = FALSE;
+ le_bool hasBelowBaseForm = FALSE;
+ le_bool hasPostBaseForm = FALSE;
++ le_bool hasPreBaseForm = FALSE;
+
+ if (postBase < markStart && classTable->isNukta(chars[postBase])) {
+@@ -746,12 +780,20 @@
+ hasBelowBaseForm = IndicClassTable::hasBelowBaseForm(charClass) && !hasNukta;
+ hasPostBaseForm = IndicClassTable::hasPostBaseForm(charClass) && !hasNukta;
++ hasPreBaseForm = IndicClassTable::hasPreBaseForm(charClass) && !hasNukta;
+
+ if (IndicClassTable::isConsonant(charClass)) {
+ if (postBaseLimit == 0 || seenVattu ||
+ (baseConsonant > baseLimit && !classTable->isVirama(chars[baseConsonant - 1])) ||
+- !(hasBelowBaseForm || hasPostBaseForm)) {
++ !(hasBelowBaseForm || hasPostBaseForm || hasPreBaseForm)) {
+ break;
+ }
+
++ // Note any pre-base consonants
++ if ( baseConsonant == lastConsonant && lastConsonant > 0 &&
++ hasPreBaseForm && classTable->isVirama(chars[baseConsonant - 1])) {
++ output.notePreBaseConsonant(lastConsonant,chars[lastConsonant],chars[lastConsonant-1],tagArray2);
++ seenPreBaseForm = TRUE;
++
++ }
+ // consonants with nuktas are never vattus
+ seenVattu = IndicClassTable::isVattu(charClass) && !hasNukta;
+@@ -786,10 +828,12 @@
+
+ // write any pre-base consonants
++ output.writePreBaseConsonant();
++
+ le_bool supressVattu = TRUE;
+
+ for (i = baseLimit; i < baseConsonant; i += 1) {
+ LEUnicode ch = chars[i];
+- // Don't put 'blwf' on first consonant.
+- FeatureMask features = (i == baseLimit? tagArray2 : tagArray1);
++ // Don't put 'pstf' or 'blwf' on anything before the base consonant.
++ FeatureMask features = tagArray1 & ~( pstfFeatureMask | blwfFeatureMask );
+
+ charClass = classTable->getCharClass(ch);
+@@ -842,5 +886,5 @@
+
+ // write below-base consonants
+- if (baseConsonant != lastConsonant) {
++ if (baseConsonant != lastConsonant && !seenPreBaseForm) {
+ for (i = bcSpan + 1; i < postBase; i += 1) {
+ output.writeChar(chars[i], i, tagArray1);
+@@ -872,5 +916,5 @@
+ // write post-base consonants
+ // FIXME: does this put the right tags on post-base consonants?
+- if (baseConsonant != lastConsonant) {
++ if (baseConsonant != lastConsonant && !seenPreBaseForm) {
+ if (postBase <= lastConsonant) {
+ for (i = postBase; i <= lastConsonant; i += 1) {
diff --git a/abs/extra/id3lib/PKGBUILD b/abs/extra/id3lib/PKGBUILD index ba0328a..a8768b8 100644 --- a/abs/extra/id3lib/PKGBUILD +++ b/abs/extra/id3lib/PKGBUILD @@ -1,29 +1,35 @@ -# $Id: PKGBUILD 2134 2008-05-26 00:30:40Z eric $ -# Maintainer: +# $Id: PKGBUILD 151326 2012-02-25 14:15:27Z pierre $ # Contributor: Jochem Kossen <j.kossen@home.nl> + pkgname=id3lib pkgver=3.8.3 -pkgrel=10 +pkgrel=12 pkgdesc="An open-source, cross-platform software development library for reading, writing, and manipulating ID3v1 and ID3v2 tags" -arch=(i686 x86_64) +arch=('i686' 'x86_64') license=('LGPL') url="http://id3lib.sourceforge.net/" depends=('zlib' 'gcc-libs') options=('!libtool') -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz - patch_id3lib_3.8.3_UTF16_writing_bug.diff - id3lib-3.8.3-CVE-2007-4460.patch - id3lib-3.8.3-gcc-4.3.patch) -md5sums=('19f27ddd2dda4b2d26a559a4f0f402a7' '196c65adee1ba511ddacef2de0dfd102'\ - '78e90e15ddd1122b66da352b6c3b00ff' 'fdbffd2d9d289ed0d730950c78d4ebc4') +source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz" + 'patch_id3lib_3.8.3_UTF16_writing_bug.diff' + 'id3lib-3.8.3-CVE-2007-4460.patch' + 'id3lib-3.8.3-gcc-4.3.patch') +md5sums=('19f27ddd2dda4b2d26a559a4f0f402a7' + '196c65adee1ba511ddacef2de0dfd102' + '78e90e15ddd1122b66da352b6c3b00ff' + 'fdbffd2d9d289ed0d730950c78d4ebc4') build() { - cd ${startdir}/src/${pkgname}-${pkgver} - patch -Np1 -i ${startdir}/src/patch_id3lib_3.8.3_UTF16_writing_bug.diff || return 1 - patch -Np0 -i ${startdir}/src/id3lib-3.8.3-CVE-2007-4460.patch || return 1 - patch -Np1 -i ${startdir}/src/id3lib-3.8.3-gcc-4.3.patch || return 1 + cd "${srcdir}"/${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/patch_id3lib_3.8.3_UTF16_writing_bug.diff + patch -p0 -i "${srcdir}"/id3lib-3.8.3-CVE-2007-4460.patch + patch -p1 -i "${srcdir}"/id3lib-3.8.3-gcc-4.3.patch ./configure --prefix=/usr - sed -i -e 's/^LIBS =/LIBS = -lz -lstdc++/' src/Makefile || return 1 - make || return 1 - make DESTDIR=${startdir}/pkg install + sed -i -e 's/^LIBS =/LIBS = -lz -lstdc++/' src/Makefile + make +} + +package() { + cd "${srcdir}"/${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/ifenslave/PKGBUILD b/abs/extra/ifenslave/PKGBUILD index 8a75170..a730f2f 100644 --- a/abs/extra/ifenslave/PKGBUILD +++ b/abs/extra/ifenslave/PKGBUILD @@ -1,20 +1,29 @@ -# $Id: PKGBUILD 12836 2008-09-21 14:41:26Z dan $ -# Maintainer: Judd Vinet <jvinet@zeroflux.org> +# $Id: PKGBUILD 142704 2011-11-13 10:10:10Z bisson $ +# Maintainer: +# Contributor: Judd Vinet <jvinet@zeroflux.org> + pkgname=ifenslave pkgver=1.1.0 -pkgrel=4 -pkgdesc="Utility for bonding ethernet interfaces" +pkgrel=7 +pkgdesc='Utility for bonding ethernet interfaces' +arch=('i686' 'x86_64') +url='http://www.linuxfoundation.org/en/Net:Bonding' license=('GPL2') -arch=(i686 x86_64) -url="http://www.linuxfoundation.org/en/Net:Bonding" depends=('glibc') -source=(ftp://ftp.archlinux.org/other/ifenslave/ifenslave.c bonding.conf.d) -md5sums=('b0d8e4c97094155747cc9238f762c7aa' - '397fccbf574d5082c7a3c8d3793dc000') +makedepends=('linux-api-headers') +backup=('etc/conf.d/bonding') +source=(ifenslave.c::'http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/networking/ifenslave.c;h=65968fbf' + 'bonding.conf.d') +sha1sums=('c657d9e6b8acb983bb8ef856f8f7f25ee6bf4f73' + '6843971c0254768868b556af33289d7d32d6208d') build() { - cd $startdir/src - gcc $CFLAGS -I/usr/src/linux/include ifenslave.c -o ifenslave || return 1 - install -D -m755 ifenslave $startdir/pkg/sbin/ifenslave - install -D -m644 bonding.conf.d $startdir/pkg/etc/conf.d/bonding + cd "${srcdir}" + gcc -Wall -Wstrict-prototypes ${CFLAGS} ${LDFLAGS} ifenslave.c -o ifenslave +} + +package() { + cd "${srcdir}" + install -Dm755 ifenslave "${pkgdir}"/sbin/ifenslave + install -Dm644 bonding.conf.d "${pkgdir}"/etc/conf.d/bonding } diff --git a/abs/extra/inadyn/PKGBUILD b/abs/extra/inadyn/PKGBUILD index 405f34d..2cbd9c8 100644 --- a/abs/extra/inadyn/PKGBUILD +++ b/abs/extra/inadyn/PKGBUILD @@ -16,3 +16,5 @@ build() { install -m644 -D man/$pkgname.conf.5 $startdir/pkg/usr/man/man5/$pkgname.conf.5 install -m755 -D ../run $startdir/pkg/etc/sv/inadyn/run } +md5sums=('d394ed5ab7a9313992bdc62c412cb369' + '3fee8156d8ae96125470dd0c692b0937') diff --git a/abs/extra/iso-codes/PKGBUILD b/abs/extra/iso-codes/PKGBUILD deleted file mode 100644 index 9477d74..0000000 --- a/abs/extra/iso-codes/PKGBUILD +++ /dev/null @@ -1,19 +0,0 @@ -# $Id: PKGBUILD 1166 2008-05-01 15:36:12Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=iso-codes -pkgver=3.18 -pkgrel=1 -arch=(i686 x86_64) -license=('LGPL') -pkgdesc="Lists of the country, language, and currency names" -source=(ftp://pkg-isocodes.alioth.debian.org/pub/pkg-isocodes/${pkgname}-${pkgver}.tar.bz2) -url="http://pkg-isocodes.alioth.debian.org/" - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR=${pkgdir} pkgconfigdir=/usr/lib/pkgconfig install || return 1 -} -md5sums=('96d22a03e307a8e0ca1e43280392cdc4') diff --git a/abs/extra/iw/PKGBUILD b/abs/extra/iw/PKGBUILD index 86b6865..ed927b0 100644 --- a/abs/extra/iw/PKGBUILD +++ b/abs/extra/iw/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 135526 2011-08-14 20:37:19Z thomas $ +# $Id: PKGBUILD 159175 2012-05-17 10:12:16Z thomas $ # Maintainer: Thomas Bächler <thomas@archlinux.org> pkgname=iw -pkgver=3.0 -pkgrel=2 +pkgver=3.4 +pkgrel=1 pkgdesc="nl80211 based CLI configuration utility for wireless devices" arch=("i686" "x86_64") url="http://wireless.kernel.org/en/users/Documentation/iw" license=("GPL") depends=("libnl") -makedepends=("kernel-headers") +makedepends=("linux-api-headers") source=(http://wireless.kernel.org/download/$pkgname/$pkgname-$pkgver.tar.bz2) -sha256sums=('a0ccbf1ce71ae4bdb05495ca18ab00a87c06dce2c3bf8b8358c615e60c4632fb') +sha256sums=('989b5677588e32de6eda97bf978810b366a7620f78f26f9cc61c15bdb434218a') build() { cd "$srcdir"/$pkgname-$pkgver diff --git a/abs/extra/iw/README b/abs/extra/iw/README deleted file mode 100644 index d330c95..0000000 --- a/abs/extra/iw/README +++ /dev/null @@ -1,2 +0,0 @@ -version.sh does a git describe that fails because it's not a git repo. - diff --git a/abs/extra/iw/__changelog b/abs/extra/iw/__changelog new file mode 100644 index 0000000..9723f2f --- /dev/null +++ b/abs/extra/iw/__changelog @@ -0,0 +1 @@ +linux-api-headers diff --git a/abs/extra/jade/PKGBUILD b/abs/extra/jade/PKGBUILD deleted file mode 100644 index e6a7722..0000000 --- a/abs/extra/jade/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 3700 2008-06-29 13:36:31Z jgc $ -# Maintainer: dorphell <dorphell@archlinux.org> -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> -pkgname=jade -pkgver=1.2.1 -pkgrel=5 -_debpatch=47 -pkgdesc="James Clark's DSSSL Engine" -url='http://www.jclark.com/jade/' -arch=('i686' 'x86_64') -license=('custom') -depends=('gcc-libs') -replaces='openjade' -options=('!libtool') -source=(ftp://ftp.jclark.com/pub/jade/jade-${pkgver}.tar.gz - http://ftp.debian.org/debian/pool/main/j/jade/jade_${pkgver}-${_debpatch}.diff.gz) -md5sums=('4239670ca6b578bff68b8c2e7cd1225f' - 'feb3889e2a5fa86ac6bdb742a25d0001') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - patch -Np1 -i ${srcdir}/jade_${pkgver}-${_debpatch}.diff || return 1 - chmod 755 configure || return 1 - ./configure --prefix=/usr --enable-default-catalog=/usr/share/sgml/catalog || return 1 - make || return 1 - install -d -m755 ${pkgdir}/usr/lib - make prefix=${pkgdir}/usr install || return 1 - mv ${pkgdir}/usr/bin/sx ${pkgdir}/usr/bin/sgml2xml || return 1 - install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname} - install -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/ || return 1 -} diff --git a/abs/extra/java7-openjdk/PKGBUILD b/abs/extra/java7-openjdk/PKGBUILD new file mode 100644 index 0000000..d05bc06 --- /dev/null +++ b/abs/extra/java7-openjdk/PKGBUILD @@ -0,0 +1,352 @@ +# $Id: PKGBUILD 161798 2012-06-14 14:46:00Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> +# Contributor: Jan de Groot <jgc@archlinux.org> +# Contributor: Guillaume ALAUX <guillaume@archlinux.org> + +pkgname=('jre7-openjdk-headless' 'jre7-openjdk' 'jdk7-openjdk' 'openjdk7-src') + # ToDo -demo -doc packages, see Debian file lists http://packages.debian.org/source/wheezy/openjdk-7 +pkgbase=java7-openjdk +_java_ver=7 +_updatever=u5 +_openjdk_build=b21 +_openjdk_date=27_jun_2011 +_icedtea_ver=2.2.1 +_date=20110922 + +# check "${srcdir}/icedtea7"/Makefile.am +_CORBA_CHANGESET=38deb372c569 +_HOTSPOT_CHANGESET=889dffcf4a54 +_JAXP_CHANGESET=335fb0b059b7 +_JAXWS_CHANGESET=5471e01ef43b +_JDK_CHANGESET=6c3b742b735d +_LANGTOOLS_CHANGESET=beea46c7086b +_OPENJDK_CHANGESET=0b776ef59474 + +_bootstrap=0 # 0/1 for quick build or full bootstrap + +pkgver=${_java_ver}.${_updatever}_${_icedtea_ver} +pkgrel=1 +arch=('i686' 'x86_64') +url="http://icedtea.classpath.org" +license=('custom') +options=('!emptydirs') +makedepends=('jdk7-openjdk' 'libxp' 'libxslt' + 'alsa-lib' 'apache-ant>=1.8.1' 'giflib' 'libpng>=1.5.7' 'gtk2' + 'java-rhino' 'zip' 'unzip' 'cpio' 'fastjar') # 'inetutils' 'grep') # fastjar`? +[ "$_bootstrap" = "1" ] && makedepends=(${makedepends[@]} 'eclipse-ecj') + +#http://www.java.net/download/openjdk/jdk${_java_ver}/promoted/${_openjdk_build}/openjdk-${_java_ver}-fcs-src-${_openjdk_build}-${_openjdk_date}.zip + +_url=http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2 +source=(http://icedtea.classpath.org/download/source/icedtea-${_icedtea_ver}.tar.gz{,.sig} + ${_url}/archive/${_OPENJDK_CHANGESET}.tar.gz # openjdk.tar.gz + ${_url}/corba/archive/${_CORBA_CHANGESET}.tar.gz # corba.tar.gz + ${_url}/jaxp/archive/${_JAXP_CHANGESET}.tar.gz # jaxp.tar.gz + ${_url}/jaxws/archive/${_JAXWS_CHANGESET}.tar.gz # jaxws.tar.gz + ${_url}/jdk/archive/${_JDK_CHANGESET}.tar.gz # jdk.tar.gz + ${_url}/langtools/archive/${_LANGTOOLS_CHANGESET}.tar.gz # langtools.tar.gz + ${_url}/hotspot/archive/${_HOTSPOT_CHANGESET}.tar.gz # hotspot.tar.gz + fontconfig-paths.diff + fix_corba_cmds_path.diff + openjdk7_fix_jdk_cmds_path.diff + openjdk7_nonreparenting-wm.diff + disable_Werror.diff + jdk7-openjdk.profile + jdk7-openjdk.profile.csh + jre7-openjdk.profile + jre7-openjdk.profile.csh) +sha256sums=('0f5ba163904f7c50374ab345216dd1b66c077fc431592eb3d4801f7ecda200b6' + '0c987bff8e490a57d1e16e328a54665073ef920166342a0a08e5593aa20cd215' + '15a6eab62f5108efbf7937b1de7697bd789971886fc1fc08ee8199e16a5c10fe' + 'b892b0db6f3e4f89fd480d46ecb7c9ce5c71a884ae5bfe953b4bda9eedf7ea93' + 'ff4ab3710fe316b7adc4e57d4d21ff967ca20e2ccc5267ac26b93cd22db8b3fd' + '1ef055749ee46ebf7a5be94403b461d8d32e95c98906da459aeb217a0784ff1d' + '48a513d18c919ec08d44cffdc12ae65f1e8942924c6cfcca5c1ffa8ca38afd0e' + '17055cf1490fab1cccc57bf3aa5b32d655c408859790c7f671bfde180ddf70cb' + 'b29a8929bb4aadbc033e99dca6a381ca6342f0373b9c3f67827bfc025187ba41' + '9ad943ceb3dbcdf45d72974fc3667886a7ed65c69ab9abc17be5412827551a7f' + '7b2db65bfb9d5014e1522178d65cabf05dfa85e0926cde5648b5a338db376479' + 'b742113dc6debc3eb92a246e442595481c04a2a3973e7902b86037acb50050ea' + 'fd615f476ef17853ae55b7aee3c92b6738f9ea584e915749b1caa7fdc5ff9ca4' + 'eb4c7f4cf50f5f74b683857f707bd21ec3847267e2e5e3173f42a6910a024f97' + '2ec2c6d3a8b62c5743bf8c50c358d98f6a86219d1d8b70645bcc0e1707670410' + '3f28f8bfc6dd105a07f747d7135c77a77de433e2b8647dd7520a900135203fbd' + 'faf5fbaf24c33c101d58bacf8b93c1dbe08a0cbde4c596d5b4a6e28dd4b18f0a' + '84d3b91cc57c67b2cf2ddb7fe5abcf1e88b5a151565aaecf4b595c7ce8f3fee9') + +noextract=("${_OPENJDK_CHANGESET}.tar.gz" + "${_CORBA_CHANGESET}.tar.gz" + "${_JAXP_CHANGESET}.tar.gz" + "${_JAXWS_CHANGESET}.tar.gz" + "${_JDK_CHANGESET}.tar.gz" + "${_LANGTOOLS_CHANGESET}.tar.gz" + "${_HOTSPOT_CHANGESET}.tar.gz") + + _jvmdir=/usr/lib/jvm/java-7-openjdk + + [ "$CARCH" = "x86_64" ] && _JARCH=amd64 + [ "$CARCH" = "i686" ] && _JARCH=i386 + +build() { + cd "${srcdir}/icedtea-${_icedtea_ver}" + + unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS + + # default is to build with first found java-environment found in our repos - is jdk7-openjdk + [ -f /etc/profile.d/jdk.sh ] && . /etc/profile.d/jdk.sh + +# unset MAKEFLAGS # parallel build is currently broken + + export ALT_PARALLEL_COMPILE_JOBS="${MAKEFLAGS/-j}" + export HOTSPOT_BUILD_JOBS="${ALT_PARALLEL_COMPILE_JOBS}" + + . /etc/profile.d/apache-ant.sh + + cp ${srcdir}/*.diff ${srcdir}/icedtea-${_icedtea_ver}/patches + export DISTRIBUTION_PATCHES="patches/fontconfig-paths.diff patches/fix_corba_cmds_path.diff patches/openjdk7_fix_jdk_cmds_path.diff patches/openjdk7_nonreparenting-wm.diff patches/disable_Werror.diff" + + if [ "$_bootstrap" = "1" ]; then + BOOTSTRAPOPT="--enable-bootstrap --with-ecj-jar=/usr/share/java/ecj.jar" + else + BOOTSTRAPOPT="--disable-bootstrap" + fi + + ./configure \ + $BOOTSTRAPOPT \ + --with-parallel-jobs="${MAKEFLAGS/-j}" \ + --disable-tests \ + --with-pkgversion="ArchLinux build ${pkgver}-${pkgrel}-${CARCH}" \ + --with-jdk-home=${JAVA_HOME} \ + --with-openjdk-src-zip=${srcdir}/${_OPENJDK_CHANGESET}.tar.gz \ + --with-hotspot-src-zip=${srcdir}/${_HOTSPOT_CHANGESET}.tar.gz \ + --with-corba-src-zip=${srcdir}/${_CORBA_CHANGESET}.tar.gz \ + --with-jaxp-src-zip=${srcdir}/${_JAXP_CHANGESET}.tar.gz \ + --with-jaxws-src-zip=${srcdir}/${_JAXWS_CHANGESET}.tar.gz \ + --with-jdk-src-zip=${srcdir}/${_JDK_CHANGESET}.tar.gz \ + --with-langtools-src-zip=${srcdir}/${_LANGTOOLS_CHANGESET}.tar.gz \ + --enable-nss \ + --with-rhino \ + --with-abs-install-dir=${_jvmdir} + #--help + #--enable-systemtap Enable inclusion of SystemTap trace support - needs systemtab from AUR + + make +} + +check() { + cd "${srcdir}/icedtea-${_icedtea_ver}" + make -k check +} + +package_jre7-openjdk-headless() { + pkgdesc="Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs - Minimal Java runtime - needed for executing non GUI Java programs" + depends=('libjpeg-turbo' 'lcms2' 'nss' + 'ca-certificates-java' 'java-rhino') + optdepends=('libcups: needed for Java Mauve support - libmawt.so' + 'fontconfig: needed for Java Mauve support - libmawt.so') + provides=('java-runtime-headless=7') + conflicts=('openjdk6') + # replaces=('openjdk6') # once we remove openjdk6 pkg from the repos + backup=(etc/profile.d/jre.sh + etc/profile.d/jre.csh + etc/java-7-openjdk/calendars.properties + etc/java-7-openjdk/content-types.properties + etc/java-7-openjdk/cursors/cursors.properties + etc/java-7-openjdk/flavormap.properties + etc/java-7-openjdk/fontconfig.bfc + etc/java-7-openjdk/fontconfig.properties + etc/java-7-openjdk/jvm.cfg + etc/java-7-openjdk/logging.properties + etc/java-7-openjdk/management/jmxremote.access + etc/java-7-openjdk/management/jmxremote.password + etc/java-7-openjdk/management/management.properties + etc/java-7-openjdk/management/snmp.acl + etc/java-7-openjdk/net.properties + etc/java-7-openjdk/psfont.properties.ja + etc/java-7-openjdk/psfontj2d.properties + etc/java-7-openjdk/security/java.policy + etc/java-7-openjdk/security/java.security + etc/java-7-openjdk/security/nss.cfg + etc/java-7-openjdk/sound.properties + etc/java-7-openjdk/tz.properties) + install=jre7-openjdk-headless.install + + cd "${srcdir}/icedtea-${_icedtea_ver}/openjdk.build/j2sdk-image/jre" + + mv lib/fontconfig.Ubuntu.properties.src lib/fontconfig.properties + mv lib/fontconfig.Ubuntu.bfc lib/fontconfig.bfc + rm -f lib/fontconfig.*.bfc + rm -f lib/fontconfig.*.properties.src + rm -f lib/fontconfig.properties.src + + install -d -m755 ${pkgdir}/${_jvmdir}/jre/ + cp -a bin lib ${pkgdir}/${_jvmdir}/jre + + # Install man pages + pushd ../../j2re-image/man + install -m755 -d ${pkgdir}/usr/share/man/{,ja/}man1/ + install -m644 man1/*.1 ${pkgdir}/usr/share/man/man1 + install -m644 ja_JP.UTF-8/man1/*.1 ${pkgdir}/usr/share/man/ja/man1 + popd + + # more files that belong to the desktop package + mkdir ${srcdir}/tmp-desktop-jre + for file in \ + "/usr/lib/jvm/java-7-openjdk/jre/bin/policytool" \ + "/usr/lib/jvm/java-7-openjdk/jre/lib/${_JARCH}/libjsoundalsa.so" \ + "/usr/lib/jvm/java-7-openjdk/jre/lib/${_JARCH}/libsplashscreen.so" \ + "/usr/lib/jvm/java-7-openjdk/jre/lib/${_JARCH}/xawt/libmawt.so" \ + "/usr/share/man/ja/man1/policytool.1" \ + "/usr/share/man/man1/policytool.1"; do + dirname=`dirname $file` + install -dm755 ${srcdir}/tmp-desktop-jre/$dirname || /bin/true + # mv file from fakeinstall to pkgdir + mv ${pkgdir}/$file ${srcdir}/tmp-desktop-jre$file + done + rmdir ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/${_JARCH}/xawt + + # Link binaries into /usr/bin + pushd ${pkgdir}/${_jvmdir}/jre/bin + install -m755 -d ${pkgdir}/usr/bin/ + for file in *; do + ln -sf ${_jvmdir}/jre/bin/${file} ${pkgdir}/usr/bin + done + popd + + # Link JKS keystore from ca-certificates-java + rm -f ${pkgdir}/${_jvmdir}/jre/lib/security/cacerts + ln -sf /etc/ssl/certs/java/cacerts "${pkgdir}/${_jvmdir}/jre/lib/security/cacerts" + + # Set some variables + install -m755 -d ${pkgdir}/etc/profile.d/ + install -m755 ${srcdir}/jre7-openjdk.profile ${pkgdir}/etc/profile.d/jre.sh + install -m755 ${srcdir}/jre7-openjdk.profile.csh ${pkgdir}/etc/profile.d/jre.csh + + # Install license + install -m755 -d ${pkgdir}/usr/share/licenses/${pkgbase}/ + install -m644 ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README \ + ${pkgdir}/usr/share/licenses/${pkgbase} + + # Put some more files under backup control + install -m755 -d ${pkgdir}/etc/java-7-openjdk/ + install -m644 ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/*.properties* ${pkgdir}/etc/java-7-openjdk/ + # install dummy links to make them found by JAVA + cd ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/ + for file in `ls ${pkgdir}/etc/java-7-openjdk/*.properties*`; do + ln -vsf /etc/java-7-openjdk/`basename $file` . + done + # some more + install -m755 -d ${pkgdir}/etc/java-7-openjdk/{cursors,management,security} + install -m644 ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/images/cursors/cursors.properties ${pkgdir}/etc/java-7-openjdk/cursors/ + pushd ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/images/cursors/ + ln -vsf /etc/java-7-openjdk/cursors/cursors.properties . + popd + mv ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/management/jmxremote.password.template ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/management/jmxremote.password + mv ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/management/snmp.acl.template ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/management/snmp.acl + install -m644 ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/management/{management.properties,jmxremote.access,jmxremote.password,snmp.acl} ${pkgdir}/etc/java-7-openjdk/management/ + pushd ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/management + ln -vsf /etc/java-7-openjdk/management/{management.properties,jmxremote.access,jmxremote.password,snmp.acl} . + popd + install -m644 ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/security/{java.policy,java.security,nss.cfg} ${pkgdir}/etc/java-7-openjdk/security/ + pushd ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/security + ln -vsf /etc/java-7-openjdk/security/{java.policy,java.security,nss.cfg} . + popd + install -m644 ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/fontconfig.bfc ${pkgdir}/etc/java-7-openjdk/ + install -m644 ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/${_JARCH}/jvm.cfg ${pkgdir}/etc/java-7-openjdk/ + pushd ${pkgdir}/usr/lib/jvm/java-7-openjdk/jre/lib/${_JARCH}/ + ln -vsf /etc/java-7-openjdk/jvm.cfg . + popd +} + +package_jre7-openjdk() { + pkgdesc="Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs -Full Java runtime environment - needed for executing Java GUI and Webstart programs" + depends=('jre7-openjdk-headless' 'xdg-utils' 'hicolor-icon-theme') + optdepends=('icedtea-web-java7: web browser plugin + Java Web Start' + 'alsa-lib: for basic sound support' + 'giflib: for gif format support' + 'gtk2: for the Gtk+ look and feel - desktop usage' + 'libxtst: linked in xawt/libmawt.so - desktop usage') + install=jre7-openjdk.install + provides=('java-runtime=7') + conflicts=('openjdk6') + + mv ${srcdir}/tmp-desktop-jre/* ${pkgdir} + # Link binaries into /usr/bin + pushd ${pkgdir}/${_jvmdir}/jre/bin + install -m755 -d ${pkgdir}/usr/bin/ + for file in *; do + ln -sf ${_jvmdir}/jre/bin/${file} ${pkgdir}/usr/bin + done + popd + + cd "${srcdir}/icedtea-${_icedtea_ver}/openjdk.build/j2sdk-image/jre" + + # Install icons and menu entries + for s in 16 24 32 48 ; do + install -m755 -d ${pkgdir}/usr/share/icons/hicolor/${s}x${s}/apps/ + install -m644 ../../../openjdk/jdk/src/solaris/classes/sun/awt/X11/java-icon${s}.png \ + ${pkgdir}/usr/share/icons/hicolor/${s}x${s}/apps/java.png + done + + # Install desktop files. + install -m755 -d ${pkgdir}/usr/share/applications + install -m644 ${srcdir}/icedtea-${_icedtea_ver}/policytool.desktop ${pkgdir}/usr/share/applications +} + +package_jdk7-openjdk() { + pkgdesc="Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs - SDK" + depends=('jre7-openjdk') + provides=('java-environment=7') + conflicts=('java-environment') + # replaces=('openjdk6') + backup=(etc/profile.d/jdk.sh etc/profile.d/jdk.csh) + + cd "${srcdir}/icedtea-${_icedtea_ver}/openjdk.build/j2sdk-image" + + # Main files + install -m755 -d ${pkgdir}/${_jvmdir}/ + + cp -a demo include lib sample ${pkgdir}/${_jvmdir} + + # 'bin' files + pushd bin + install -m755 -d ${pkgdir}/${_jvmdir}/bin/ \ + ${pkgdir}/usr/bin/ \ + ${pkgdir}/usr/share/man/{,ja/}man1/ + + # 'java-rmi.cgi' will be handled separately as it should not be in the PATH and has no man page + for b in $(ls | grep -v java-rmi.cgi); do + if [ -e ../jre/bin/${b} ]; then + # Provide a link of the jre binary in the jdk/bin/ directory + ln -s ../jre/bin/${b} ${pkgdir}/${_jvmdir}/bin/${b} + else + # Copy binary to jdk/bin/ + install -m755 ${b} ${pkgdir}/${_jvmdir}/bin/${b} + # Copy man page + install -m644 ../man/man1/${b}.1 ${pkgdir}/usr/share/man/man1/${b}.1 + install -m644 ../man/ja/man1/${b}.1 ${pkgdir}/usr/share/man/ja/man1/${b}.1 + # Link from /bin/ + ln -s ${_jvmdir}/bin/${b} ${pkgdir}/usr/bin/${b} + fi + done + popd + + # Install desktop files. + install -m755 -d ${pkgdir}/usr/share/applications + install -m644 ${srcdir}/icedtea-${_icedtea_ver}/jconsole.desktop ${pkgdir}/usr/share/applications + + # Handling 'java-rmi.cgi' separately + install -m755 -D bin/java-rmi.cgi ${pkgdir}/${_jvmdir}/bin/java-rmi.cgi + + # Set some variables + install -m755 -d ${pkgdir}/etc/profile.d/ + install -m755 ${srcdir}/${pkgname}.profile ${pkgdir}/etc/profile.d/jdk.sh + install -m755 ${srcdir}/${pkgname}.profile.csh ${pkgdir}/etc/profile.d/jdk.csh +} + +package_openjdk7-src() { + pkgdesc="Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs - sources" + + install -D ${srcdir}/icedtea-${_icedtea_ver}/openjdk.build/j2sdk-image/src.zip \ + ${pkgdir}/${_jvmdir}/src.zip +} diff --git a/abs/extra/java7-openjdk/__changelog b/abs/extra/java7-openjdk/__changelog new file mode 100644 index 0000000..2d2aafa --- /dev/null +++ b/abs/extra/java7-openjdk/__changelog @@ -0,0 +1 @@ +remove pulselib diff --git a/abs/extra/java7-openjdk/disable_Werror.diff b/abs/extra/java7-openjdk/disable_Werror.diff new file mode 100644 index 0000000..fa8887a --- /dev/null +++ b/abs/extra/java7-openjdk/disable_Werror.diff @@ -0,0 +1,11 @@ +--- openjdk/hotspot/make/linux/makefiles/gcc.make 2012-06-07 16:30:51.000000000 +0200 ++++ openjdk/hotspot/make/linux/makefiles/gcc.make.new 2012-06-14 15:32:44.967695139 +0200 +@@ -150,7 +150,7 @@ + endif + + # Compiler warnings are treated as errors +-WARNINGS_ARE_ERRORS = -Werror ++#WARNINGS_ARE_ERRORS = -Werror + + # Except for a few acceptable ones + # Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit diff --git a/abs/extra/java7-openjdk/fix_corba_cmds_path.diff b/abs/extra/java7-openjdk/fix_corba_cmds_path.diff new file mode 100644 index 0000000..7a3db95 --- /dev/null +++ b/abs/extra/java7-openjdk/fix_corba_cmds_path.diff @@ -0,0 +1,29 @@ +--- openjdk/corba/make/common/shared/Defs-utils.gmk.old 2008-04-13 13:26:12.000000000 +0300 ++++ openjdk/corba/make/common/shared/Defs-utils.gmk 2008-04-14 15:35:13.000000000 +0300 +@@ -76,7 +76,7 @@ + CHMOD = $(UTILS_COMMAND_PATH)chmod + CMP = $(UTILS_USR_BIN_PATH)cmp + COMM = $(UTILS_USR_BIN_PATH)comm +-COMPRESS = $(UTILS_USR_BIN_PATH)compress ++COMPRESS = $(UTILS_COMMAND_PATH)compress + CP = $(UTILS_COMMAND_PATH)cp + CPIO = $(UTILS_COMMAND_PATH)cpio + CUT = $(UTILS_USR_BIN_PATH)cut +@@ -125,7 +125,7 @@ + TAIL = $(UTILS_USR_BIN_PATH)tail + TAR = $(UTILS_COMMAND_PATH)tar + TEST = $(UTILS_USR_BIN_PATH)test +-TOUCH = $(UTILS_COMMAND_PATH)touch ++TOUCH = $(UTILS_USR_BIN_PATH)touch + TR = $(UTILS_USR_BIN_PATH)tr + TRUE = $(UTILS_COMMAND_PATH)true + UNAME = $(UTILS_COMMAND_PATH)uname +@@ -176,7 +176,7 @@ + # others have it in /usr/bin. + SORT=$(firstword $(wildcard $(UTILS_COMMAND_PATH)sort) \ + $(wildcard $(UTILS_USR_BIN_PATH)sort)) +- NAWK = $(USRBIN_PATH)gawk ++ NAWK = $(UTILS_COMMAND_PATH)gawk + # Intrinsic unix command, with backslash-escaped character interpretation + ECHO = /bin/echo -e + # These are really in UTILS_USR_BIN_PATH on Linux (only sccs is not) diff --git a/abs/extra/java7-openjdk/fontconfig-paths.diff b/abs/extra/java7-openjdk/fontconfig-paths.diff new file mode 100644 index 0000000..fa08db6 --- /dev/null +++ b/abs/extra/java7-openjdk/fontconfig-paths.diff @@ -0,0 +1,134 @@ +--- openjdk/jdk/src/solaris/classes/sun/awt/fontconfigs/linux.fontconfig.Ubuntu.properties 2009-05-29 22:45:23.024341869 +0000 ++++ openjdk/jdk/src/solaris/classes/sun/awt/fontconfigs/linux.fontconfig.Ubuntu.properties.new 2009-05-29 22:55:13.681366890 +0000 +@@ -275,73 +275,61 @@ + + # Font File Names + +-filename.DejaVu_Sans=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf +-filename.DejaVu_Sans_Bold=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf +-filename.DejaVu_Sans_Oblique=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Oblique.ttf +-filename.DejaVu_Sans_Bold_Oblique=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-BoldOblique.ttf +- +-filename.DejaVu_Sans_Mono=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf +-filename.DejaVu_Sans_Mono_Bold=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf +-filename.DejaVu_Sans_Mono_Oblique=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Oblique.ttf +-filename.DejaVu_Sans_Mono_Bold_Oblique=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf +- +-filename.DejaVu_Serif=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf +-filename.DejaVu_Serif_Bold=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Bold.ttf +-filename.DejaVu_Serif_Oblique=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Oblique.ttf +-filename.DejaVu_Serif_Bold_Oblique=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-BoldOblique.ttf +- +-filename.AR_PL_UMing_CN=/usr/share/fonts/truetype/arphic/uming.ttc +-filename.AR_PL_UMing_HK=/usr/share/fonts/truetype/arphic/uming.ttc +-filename.AR_PL_UMing_TW=/usr/share/fonts/truetype/arphic/uming.ttc +-filename.AR_PL_ShanHeiSun_Uni=/usr/share/fonts/truetype/arphic/uming.ttf +- +-filename.WenQuanYi_Zen_Hei=/usr/share/fonts/truetype/wqy/wqy-zenhei.ttf +-filename.Baekmuk_Batang=/usr/share/fonts/truetype/baekmuk/batang.ttf +-filename.UnBatang=/usr/share/fonts/truetype/unfonts/UnBatang.ttf +-filename.UnBatang_Bold=/usr/share/fonts/truetype/unfonts/UnBatangBold.ttf +-filename.Baekmuk_Gulim=/usr/share/fonts/truetype/baekmuk/gulim.ttf +-filename.UnDotum=/usr/share/fonts/truetype/unfonts/UnDotum.ttf +-filename.UnDotum_Bold=/usr/share/fonts/truetype/unfonts/UnDotumBold.ttf +-filename.Kochi_Gothic=/usr/share/fonts/truetype/kochi/kochi-gothic.ttf +-filename.Sazanami_Gothic=/usr/share/fonts/truetype/sazanami/sazanami-gothic.ttf +-filename.Kochi_Mincho=/usr/share/fonts/truetype/kochi/kochi-mincho.ttf +-filename.Sazanami_Mincho=/usr/share/fonts/truetype/sazanami/sazanami-mincho.ttf +-filename.VL_Gothic=/usr/share/fonts/truetype/vlgothic/VL-Gothic-Regular.ttf +-filename.VL_PGothic=/usr/share/fonts/truetype/vlgothic/VL-PGothic-Regular.ttf +- +-filename.Lohit_Bengali=/usr/share/fonts/truetype/ttf-bengali-fonts/lohit_bn.ttf +-filename.Lohit_Gujarati=/usr/share/fonts/truetype/ttf-indic-fonts-core/lohit_gu.ttf +-filename.Lohit_Hindi=/usr/share/fonts/truetype/ttf-indic-fonts-core/lohit_hi.ttf +-filename.Lohit_Kannda=/usr/share/fonts/truetype/ttf-kannada-fonts/lohit_kn.ttf +-#filename.Lohit_Malayalam=/usr/share/fonts/lohit-malayalam/lohit_ml.ttf +-filename.Lohit_Oriya=/usr/share/fonts/truetype/ttf-oriya-fonts/lohit_or.ttf +-filename.Lohit_Punjabi=/usr/share/fonts/truetype/ttf-indic-fonts-core/lohit_pa.ttf +-filename.Lohit_Tamil=/usr/share/fonts/truetype/ttf-indic-fonts-core/lohit_ta.ttf +-filename.Lohit_Telugu=/usr/share/fonts/truetype/ttf-telugu-fonts/lohit_te.ttf +-filename.LKLUG=/usr/share/fonts/truetype/ttf-sinhala-lklug/lklug.ttf +- +-filename.LuxiSans-Regular=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luxisr.ttf +-filename.LuxiSans-Bold=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luxisb.ttf +-filename.LuxiSans-Oblique=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luxisri.ttf +-filename.LuxiSans-BoldOblique=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luxisbi.ttf +-filename.LuxiMono-Regular=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luximr.ttf +-filename.LuxiMono-Bold=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luximb.ttf +-filename.LuxiMono-Oblique=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luximri.ttf +-filename.LuxiMono-BoldOblique=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luximbi.ttf +-filename.LuxiSerif-Regular=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luxirr.ttf +-filename.LuxiSerif-Bold=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luxirb.ttf +-filename.LuxiSerif-Oblique=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luxirri.ttf +-filename.LuxiSerif-BoldOblique=/usr/share/fonts/truetype/ttf-xfree86-nonfree/luxirbi.ttf +- +-# AWT X11 font paths +-awtfontpath.latin-1=/usr/share/fonts/X11/Type1 +-awtfontpath.umingcn=/usr/share/fonts/truetype/arphic +-awtfontpath.uminghk=/usr/share/fonts/truetype/arphic +-awtfontpath.umingtw=/usr/share/fonts/truetype/arphic +-awtfontpath.shanheisun=/usr/share/fonts/truetype/arphic +-awtfontpath.wqy-zenhei=/usr/share/fonts/truetype/wqy +-awtfontpath.japanese-kochi=/usr/share/fonts/truetype/kochi +-awtfontpath.japanese-sazanami=/usr/share/fonts/truetype/sazanami +-awtfontpath.japanese-vlgothic=/usr/share/fonts/truetype/vlgothic +-awtfontpath.korean-baekmuk=/usr/share/fonts/truetype/baekmuk +-awtfontpath.korean-un=/usr/share/fonts/truetype/unfonts ++filename.DejaVu_Sans=/usr/share/fonts/TTF/DejaVuSans.ttf ++filename.DejaVu_Sans_Bold=/usr/share/fonts/TTF/DejaVuSans-Bold.ttf ++filename.DejaVu_Sans_Oblique=/usr/share/fonts/TTF/DejaVuSans-Oblique.ttf ++filename.DejaVu_Sans_Bold_Oblique=/usr/share/fonts/TTF/DejaVuSans-BoldOblique.ttf ++ ++filename.DejaVu_Sans_Mono=/usr/share/fonts/TTF/DejaVuSansMono.ttf ++filename.DejaVu_Sans_Mono_Bold=/usr/share/fonts/TTF/DejaVuSansMono-Bold.ttf ++filename.DejaVu_Sans_Mono_Oblique=/usr/share/fonts/TTF/DejaVuSansMono-Oblique.ttf ++filename.DejaVu_Sans_Mono_Bold_Oblique=/usr/share/fonts/TTF/DejaVuSansMono-BoldOblique.ttf ++ ++filename.DejaVu_Serif=/usr/share/fonts/TTF/DejaVuSerif.ttf ++filename.DejaVu_Serif_Bold=/usr/share/fonts/TTF/DejaVuSerif-Bold.ttf ++filename.DejaVu_Serif_Oblique=/usr/share/fonts/TTF/DejaVuSerif-Oblique.ttf ++filename.DejaVu_Serif_Bold_Oblique=/usr/share/fonts/TTF/DejaVuSerif-BoldOblique.ttf ++ ++filename.AR_PL_UMing_CN=/usr/share/fonts/TTF/uming.ttc ++filename.AR_PL_UMing_HK=/usr/share/fonts/TTF/uming.ttc ++filename.AR_PL_UMing_TW=/usr/share/fonts/TTF/uming.ttc ++filename.AR_PL_ShanHeiSun_Uni=/usr/share/TTF/uming.ttf ++ ++filename.WenQuanYi_Zen_Hei=/usr/share/fonts/TTF/wqy-zenhei.ttf ++filename.Baekmuk_Batang=/usr/share/fonts/TTF/batang.ttf ++filename.UnBatang=/usr/share/fonts/TTF/UnBatang.ttf ++filename.UnBatang_Bold=/usr/share/fonts/TTF/UnBatangBold.ttf ++filename.Baekmuk_Gulim=/usr/share/fonts/TTF/gulim.ttf ++filename.UnDotum=/usr/share/fonts/TTF/UnDotum.ttf ++filename.UnDotum_Bold=/usr/share/fonts/TTF/UnDotumBold.ttf ++filename.Kochi_Gothic=/usr/share/fonts/TTF/kochi-gothic.ttf ++filename.Sazanami_Gothic=/usr/share/fonts/TTF/sazanami-gothic.ttf ++filename.Kochi_Mincho=/usr/share/fonts/TTF/kochi-mincho.ttf ++filename.Sazanami_Mincho=/usr/share/fonts/TTF/sazanami-mincho.ttf ++filename.VL_Gothic=/usr/share/fonts/TTF/VL-Gothic-Regular.ttf ++filename.VL_PGothic=/usr/share/fonts/TTF/VL-PGothic-Regular.ttf ++ ++filename.Lohit_Bengali=/usr/share/fonts/TTF/lohit_bn.ttf ++filename.Lohit_Gujarati=/usr/share/fonts/TTF/lohit_gu.ttf ++filename.Lohit_Hindi=/usr/share/fonts/TTF/lohit_hi.ttf ++filename.Lohit_Kannda=/usr/share/fonts/TTF/lohit_kn.ttf ++#filename.Lohit_Malayalam=/usr/share/fonts/TTF/lohit_ml.ttf ++filename.Lohit_Oriya=/usr/share/fonts/TTF/lohit_or.ttf ++filename.Lohit_Punjabi=/usr/share/fonts/TTF/lohit_pa.ttf ++filename.Lohit_Tamil=/usr/share/fonts/TTF/lohit_ta.ttf ++filename.Lohit_Telugu=/usr/share/fonts/TTF/lohit_te.ttf ++filename.LKLUG=/usr/share/fonts/TTF/lklug.ttf ++ ++filename.LuxiSans-Regular=/usr/share/fonts/TTF/luxisr.ttf ++filename.LuxiSans-Bold=/usr/share/fonts/TTF/luxisb.ttf ++filename.LuxiSans-Oblique=/usr/share/fonts/TTF/luxisri.ttf ++filename.LuxiSans-BoldOblique=/usr/share/fonts/TTF/luxisbi.ttf ++filename.LuxiMono-Regular=/usr/share/fonts/TTF/luximr.ttf ++filename.LuxiMono-Bold=/usr/share/fonts/TTF/luximb.ttf ++filename.LuxiMono-Oblique=/usr/share/fonts/TTF/luximri.ttf ++filename.LuxiMono-BoldOblique=/usr/share/fonts/TTF/luximbi.ttf ++filename.LuxiSerif-Regular=/usr/share/fonts/TTF/luxirr.ttf ++filename.LuxiSerif-Bold=/usr/share/fonts/TTF/luxirb.ttf ++filename.LuxiSerif-Oblique=/usr/share/fonts/TTF/luxirri.ttf ++filename.LuxiSerif-BoldOblique=/usr/share/fonts/TTF/luxirbi.ttf ++ diff --git a/abs/extra/java7-openjdk/jdk7-openjdk.profile b/abs/extra/java7-openjdk/jdk7-openjdk.profile new file mode 100644 index 0000000..91265cc --- /dev/null +++ b/abs/extra/java7-openjdk/jdk7-openjdk.profile @@ -0,0 +1,6 @@ +export J2SDKDIR=/usr/lib/jvm/java-7-openjdk +export J2REDIR=$J2SDKDIR/jre +export JAVA_HOME=/usr/lib/jvm/java-7-openjdk + +# For non-reparenting window managers, enable '_JAVA_AWT_WM_NONREPARENTING' +# in /etc/profile.d/jre7.sh diff --git a/abs/extra/java7-openjdk/jdk7-openjdk.profile.csh b/abs/extra/java7-openjdk/jdk7-openjdk.profile.csh new file mode 100644 index 0000000..cc7dc8a --- /dev/null +++ b/abs/extra/java7-openjdk/jdk7-openjdk.profile.csh @@ -0,0 +1 @@ +setenv J2SDKDIR "/usr/lib/jvm/java-7-openjdk" diff --git a/abs/extra/java7-openjdk/jre7-openjdk-headless.install b/abs/extra/java7-openjdk/jre7-openjdk-headless.install new file mode 100644 index 0000000..45f52fe --- /dev/null +++ b/abs/extra/java7-openjdk/jre7-openjdk-headless.install @@ -0,0 +1,15 @@ +post_install() { + if [ ! -f /etc/ssl/certs/java/cacerts ]; then + /usr/sbin/init-jks-keystore + fi +} + +post_upgrade() { + if [ ! -f /etc/ssl/certs/java/cacerts ]; then + /usr/sbin/init-jks-keystore + fi +} + +#post_remove() { +# +#} diff --git a/abs/extra/java7-openjdk/jre7-openjdk.install b/abs/extra/java7-openjdk/jre7-openjdk.install new file mode 100644 index 0000000..d98e79e --- /dev/null +++ b/abs/extra/java7-openjdk/jre7-openjdk.install @@ -0,0 +1,18 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null + echo "when you use a non-reparenting window manager" + echo "set _JAVA_AWT_WM_NONREPARENTING=1 in" + echo "/etc/profile.d/jre.sh" +# update-desktop-database -q +} + +post_upgrade() { + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null +# update-desktop-database -q +} + + +post_remove() { + xdg-icon-resource forceupdate --theme hicolor 2> /dev/null +# update-desktop-database -q +} diff --git a/abs/extra/java7-openjdk/jre7-openjdk.profile b/abs/extra/java7-openjdk/jre7-openjdk.profile new file mode 100644 index 0000000..c86ce85 --- /dev/null +++ b/abs/extra/java7-openjdk/jre7-openjdk.profile @@ -0,0 +1,5 @@ +export J2REDIR=/usr/lib/jvm/java-7-openjdk/jre +export JAVA_HOME=${JAVA_HOME:-/usr/lib/jvm/java-7-openjdk/jre} + +# enable this for non-reparenting window managers +#export _JAVA_AWT_WM_NONREPARENTING=1 diff --git a/abs/extra/java7-openjdk/jre7-openjdk.profile.csh b/abs/extra/java7-openjdk/jre7-openjdk.profile.csh new file mode 100644 index 0000000..a9aed27 --- /dev/null +++ b/abs/extra/java7-openjdk/jre7-openjdk.profile.csh @@ -0,0 +1,5 @@ +setenv J2REDIR "/usr/lib/jvm/java-7-openjdk/jre" +setenv JAVA_HOME "/usr/lib/jvm/java-7-openjdk/jre" + +# enable this for non-reparenting window managers +#setenv _JAVA_AWT_WM_NONREPARENTING 1 diff --git a/abs/extra/java7-openjdk/openjdk7_fix_jdk_cmds_path.diff b/abs/extra/java7-openjdk/openjdk7_fix_jdk_cmds_path.diff new file mode 100644 index 0000000..6cac91d --- /dev/null +++ b/abs/extra/java7-openjdk/openjdk7_fix_jdk_cmds_path.diff @@ -0,0 +1,36 @@ +--- openjdk/jdk/make/common/shared/Defs-utils.gmk.old 2011-08-06 15:46:01.000000000 +0200 ++++ openjdk/jdk/make/common/shared/Defs-utils.gmk 2011-08-06 15:59:26.000000000 +0200 +@@ -91,7 +91,7 @@ + CHMOD = $(UTILS_COMMAND_PATH)chmod + CMP = $(UTILS_USR_BIN_PATH)cmp + COMM = $(UTILS_USR_BIN_PATH)comm +-COMPRESS = $(UTILS_USR_BIN_PATH)compress ++COMPRESS = $(UTILS_COMMAND_PATH)compress + CP = $(UTILS_COMMAND_PATH)cp + CPIO = $(UTILS_COMMAND_PATH)cpio + CUT = $(UTILS_USR_BIN_PATH)cut +@@ -101,13 +101,13 @@ + DIRNAME = $(UTILS_USR_BIN_PATH)dirname + DUMP = $(UTILS_CCS_BIN_PATH)dump + ECHO = $(UTILS_COMMAND_PATH)echo +-EGREP = $(UTILS_COMMAND_PATH)egrep ++EGREP = $(UTILS_USR_BIN_PATH)egrep + EXPR = $(UTILS_USR_BIN_PATH)expr + FILE = $(UTILS_USR_BIN_PATH)file + FIND = $(UTILS_USR_BIN_PATH)find + FMT = $(UTILS_COMMAND_PATH)fmt + GDB = $(UTILS_USR_BIN_PATH)gdb +-GREP = $(UTILS_COMMAND_PATH)grep ++GREP = $(UTILS_USR_BIN_PATH)grep + GUNZIP = $(UTILS_COMMAND_PATH)gunzip + # GZIP is used for solaris. Linux and windows use tar czf + GZIP = $(UTILS_COMMAND_PATH)gzip +@@ -140,7 +140,7 @@ + TAIL = $(UTILS_USR_BIN_PATH)tail + TAR = $(UTILS_COMMAND_PATH)tar + TEST = $(UTILS_USR_BIN_PATH)test +-TOUCH = $(UTILS_COMMAND_PATH)touch ++TOUCH = $(UTILS_USR_BIN_PATH)touch + TR = $(UTILS_USR_BIN_PATH)tr + TRUE = $(UTILS_COMMAND_PATH)true + UNAME = $(UTILS_COMMAND_PATH)uname diff --git a/abs/extra/java7-openjdk/openjdk7_nonreparenting-wm.diff b/abs/extra/java7-openjdk/openjdk7_nonreparenting-wm.diff new file mode 100644 index 0000000..22d54fc --- /dev/null +++ b/abs/extra/java7-openjdk/openjdk7_nonreparenting-wm.diff @@ -0,0 +1,58 @@ +--- openjdk/jdk/src/solaris/classes/sun/awt/X11/XWM.java.orig 2011-08-07 18:45:05.000000000 +0200 ++++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XWM.java 2011-08-07 18:45:54.000000000 +0200 +@@ -103,7 +103,8 @@ + COMPIZ_WM = 12, + LG3D_WM = 13, + CWM_WM = 14, +- MUTTER_WM = 15; ++ MUTTER_WM = 15, ++ OTHER_NONREPARENTING_WM = 16; + public String toString() { + switch (WMID) { + case NO_WM: +@@ -583,7 +584,7 @@ + // TODO: according to wikipedia, compiz is now reparenting. This should + // probably be updated. + static boolean isNonReparentingWM() { +- return (XWM.getWMID() == XWM.COMPIZ_WM || XWM.getWMID() == XWM.LG3D_WM || XWM.getWMID() == XWM.CWM_WM); ++ return (XWM.getWMID() == XWM.COMPIZ_WM || XWM.getWMID() == XWM.LG3D_WM || XWM.getWMID() == XWM.CWM_WM || XWM.getWMID() == XWM.OTHER_NONREPARENTING_WM); + } + + /* +@@ -771,9 +772,17 @@ + * supports WIN or _NET wm spec. + */ + else if (l_net_protocol.active()) { +- awt_wmgr = XWM.OTHER_WM; ++ if (XToolkit.getEnv("_JAVA_AWT_WM_NONREPARENTING") != null) { ++ awt_wmgr = XWM.OTHER_NONREPARENTING_WM; ++ } else { ++ awt_wmgr = XWM.OTHER_WM; ++ } + } else if (win.active()) { +- awt_wmgr = XWM.OTHER_WM; ++ if (XToolkit.getEnv("_JAVA_AWT_WM_NONREPARENTING") != null) { ++ awt_wmgr = XWM.OTHER_NONREPARENTING_WM; ++ } else { ++ awt_wmgr = XWM.OTHER_WM; ++ } + } + /* + * Check for legacy WMs. +@@ -784,6 +793,8 @@ + awt_wmgr = XWM.MOTIF_WM; + } else if (isOpenLook()) { + awt_wmgr = XWM.OPENLOOK_WM; ++ } else if (XToolkit.getEnv("_JAVA_AWT_WM_NONREPARENTING") != null) { ++ awt_wmgr = XWM.OTHER_NONREPARENTING_WM; + } else { + awt_wmgr = XWM.OTHER_WM; + } +@@ -1298,6 +1309,7 @@ + res = new Insets(28, 6, 6, 6); + break; + case NO_WM: ++ case OTHER_NONREPARENTING_WM: + case LG3D_WM: + res = zeroInsets; + break; diff --git a/abs/extra/lablgtk2/PKGBUILD b/abs/extra/lablgtk2/PKGBUILD new file mode 100644 index 0000000..c60fc2e --- /dev/null +++ b/abs/extra/lablgtk2/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 148806 2012-02-05 11:51:19Z ibiru $ +#Maintainer: Tobias Powalowski <tpowa@archlinux.org> + +pkgname=lablgtk2 +pkgver=2.14.2 +pkgrel=5 +pkgdesc=" An Objective Caml interface to gtk2" +arch=(i686 x86_64) +license=('LGPL') +url="http://lablgtk.forge.ocamlcore.org/" +depends=('gtk2' 'gtkspell' 'libgnomecanvas' 'librsvg' 'libgnomeui' 'gtksourceview2') +makedepends=('ocaml') +optdepends=('ocaml: for using the tools') +DLAGENTS=('https::/usr/bin/curl -fLC - --insecure --retry 3 --retry-delay 3 -o %o %u') +source=(https://forge.ocamlcore.org/frs/download.php/561/lablgtk-${pkgver}.tar.gz) +options=(!makeflags) +md5sums=('bad77680a72dab8b915cae99d1ec9b1f') + +build() { + cd "${srcdir}/lablgtk-${pkgver}" + ./configure --prefix=/usr + make world + make opt +} + +package() { + cd "${srcdir}/lablgtk-${pkgver}" + make DESTDIR="${pkgdir}" install + install -m644 META "${pkgdir}/usr/lib/ocaml/lablgtk2/" +} diff --git a/abs/extra/lcdproc/PKGBUILD b/abs/extra/lcdproc/PKGBUILD index 03b4333..21aa4e8 100644 --- a/abs/extra/lcdproc/PKGBUILD +++ b/abs/extra/lcdproc/PKGBUILD @@ -1,28 +1,44 @@ +# Maintainer: BlackEagle <ike DOT devolder AT gmail DOT com> # Contributor: Bernhard Walle <bernhard.walle@gmx.de> pkgname=lcdproc -pkgver=0.5.3 -pkgrel=4 -pkgdesc="LCDproc is a utility to drive one or more LCD (and LCD-like) devices attached to a host." +pkgver=0.5.6 +pkgrel=1 +pkgdesc="Utility to drive one or more LCD (and LCD-like) devices" url="http://lcdproc.omnipotent.net/" license="GPL" -depends=(libusb serdisplib libftdi autoconf automake lirc libnxml libmrss pkgconfig xosd) -backup=(etc/LCDd.conf) +depends=('libusb-compat') +optdepends=( + 'perl: needed for some lcdproc tools' +) +backup=( + 'etc/LCDd.conf' + 'etc/lcdexec.conf' + 'etc/lcdproc.conf' + 'etc/lcdvc.conf' +) arch=('i686' 'x86_64') -install=lcdproc.install -source=(http://switch.dl.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz - lcdproc-add-serdisplib) +source=( + "http://switch.dl.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver-pre1.tar.gz" + 'lcdd' +) build() { - cd ${srcdir}/${pkgname}-${pkgver} -# patch -p1 < ../lcdproc-add-serdisplib - autoreconf - ./configure --prefix=/usr --sysconfdir=/etc --enable-libusb --enable-lcdproc-menus --enable-stat-smbfs --enable-drivers=all - make + cd "$pkgname-$pkgver-pre1" + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --enable-libusb \ + --enable-lcdproc-menus \ + --enable-stat-smbfs \ + --enable-drivers=all + make } + package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - sed -e "s/server\/drivers\//\/usr\/lib\/lcdproc\//g" LCDd.conf > $pkgdir/etc/LCDd.conf + cd "$pkgname-$pkgver-pre1" + make DESTDIR="$pkgdir" install + sed -e "s/server\/drivers\//\/usr\/lib\/lcdproc\//g" -i "$pkgdir/etc/LCDd.conf" + install -Dm755 "$srcdir/lcdd" "$pkgdir/etc/rc.d/lcdd" } -md5sums=('fe9a7c9d8f2c5e76250ce2ea8f644921' - '274322642740ad323c43ec5d324519d4') +md5sums=('2175376ebefc18280b494e5f0a68329b' + '56f52dcccd6e129a9cf84cd1a0452d56') diff --git a/abs/extra/lcdproc/__changelog b/abs/extra/lcdproc/__changelog deleted file mode 100644 index 96fd954..0000000 --- a/abs/extra/lcdproc/__changelog +++ /dev/null @@ -1,4 +0,0 @@ -add xosd -# mihanson 2010-04-05 -updated to 0.5.3 -removed lcdproc-add-serdisplib as it does not appear to be needed anymore diff --git a/abs/extra/lcdproc/lcdd b/abs/extra/lcdproc/lcdd new file mode 100755 index 0000000..a124c00 --- /dev/null +++ b/abs/extra/lcdproc/lcdd @@ -0,0 +1,38 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/LCDd` +case "$1" in + start) + stat_busy "Starting LCDd daemon" + [ -z "$PID" ] && /usr/sbin/LCDd -c /etc/LCDd.conf + if [ $? -gt 0 ]; then + stat_fail + else + echo $PID > /var/run/lcdd.pid + add_daemon lcdd + stat_done + fi + ;; + stop) + stat_busy "Stopping LCDd daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm /var/run/lcdd.pid + rm_daemon lcdd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/extra/lcdproc/lcdproc-add-serdisplib b/abs/extra/lcdproc/lcdproc-add-serdisplib deleted file mode 100644 index 48d239a..0000000 --- a/abs/extra/lcdproc/lcdproc-add-serdisplib +++ /dev/null @@ -1,1353 +0,0 @@ -[PATCH] Add serdisplib driver - -This patch adds a serdisplib driver for the serdisplib library -(http://serdisplib.sf.net) that is used for low-level accessing of dot-matrix -devices (i.e. such displays that are drived by pixel and not by characters -unlike HD44780, for example). - -I know there's already glcdlib. But that approach has several disadvantages: - - o Unnecessary library dependencies. - o Complicated installation, i.e. you have to edit two configuration files. - o Too much redraws. In fact, that was the reason for me to write this - driver because my ctinclud display (http://www.ct-maeusekino.de) was quite - unusable with the glcdlib driver. The problem is simply that lcdproc - redraws the whole screen each second and it's the task of the driver - to not to redraw it in reality. The problem is now that the glcdproc - driver only has the view of characters, and cannot decide which pixels it - actually has to redraw. And graphlcd which has the per-pixel view doesn't - do that "caching" and simply redraws all. Of course, that _can_ - be changed in graphlcd, but I'm sure that leads to endless discussions and - because I didn't like the glcdlib -> graphlcd -> serdisplib approach - anyway, I decided to write that driver. - -Some important design decisions: - - o The driver is split into lcdgraphic.c and serdisplib.c. All function that - do the character -> pixel "rendering" are split out into lcdgraphic.c, - so it would be possible to write another low-level driver that uses that - function. However, in normal cases it makes more sense to add that part to - serdisplib. - o It only requires FreeType (http://freetype.sf.net) for font rendering. - That's no new real dependency because in almost all cases, graphlcd was - compiled with FreeType support. - o Only mono space fonts are supported. - o The driver implements symbols (arrow, etc.) using Unicode characters of the - font. (The recommended font is Andale Mono which is available for free - from http://corefonts.sf.net) - o Works on i686 and x86_64. - -Please review. The patch is against 0.5.2. If you consider to add this into -CVS, I'll provide documentation. And this time, I'll provide the documentation -in time unlike with the ula200 driver. ;-) - - -Signed-off-by: Bernhard Walle <bernhard.walle@gmx.de> - ---- - LCDd.conf | 28 ++ - acinclude.m4 | 27 +- - server/drivers/Makefile.am | 5 - server/drivers/lcdgraphic.c | 590 ++++++++++++++++++++++++++++++++++++++++++++ - server/drivers/lcdgraphic.h | 195 ++++++++++++++ - server/drivers/serdisplib.c | 379 ++++++++++++++++++++++++++++ - 6 files changed, 1220 insertions(+), 4 deletions(-) - ---- a/acinclude.m4 -+++ b/acinclude.m4 -@@ -10,13 +10,13 @@ AC_ARG_ENABLE(drivers, - [ irman,joy,lb216,lcdm001,lcterm,lirc,MD8800,ms6931,] - [ mtc_s16209x,MtxOrb,NoritakeVFD,picolcd,pyramid,sed1330] - [ sed1520,serialPOS,serialVFD,sli,stv5730,svga,t6963,text,] -- [ tyan,ula200,xosd] -+ [ tyan,ula200,serdisplib,xosd] - [ 'all' compiles all drivers;] - [ 'all,!xxx,!yyy' de-selects previously selected drivers], - drivers="$enableval", - drivers=[bayrad,CFontz,CFontz633,curses,CwLnx,glk,lb216,lcdm001,MtxOrb,pyramid,text]) - --allDrivers=[bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,ea65,EyeboxOne,g15,glcdlib,glk,hd44780,icp_a106,imon,IOWarrior,irman,joy,lb216,lcdm001,lcterm,lirc,MD8800,ms6931,mtc_s16209x,MtxOrb,NoritakeVFD,picolcd,pyramid,sed1330,sed1520,serialPOS,serialVFD,sli,stv5730,svga,t6963,text,tyan,ula200,xosd] -+allDrivers=[bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,ea65,EyeboxOne,g15,glcdlib,glk,hd44780,icp_a106,imon,IOWarrior,irman,joy,lb216,lcdm001,lcterm,lirc,MD8800,ms6931,mtc_s16209x,MtxOrb,NoritakeVFD,picolcd,pyramid,sed1330,sed1520,serialPOS,serialVFD,sli,stv5730,svga,t6963,text,tyan,ula200,serdisplib,xosd] - - drivers=`echo $drivers | sed -e 's/,/ /g'` - -@@ -383,6 +383,29 @@ dnl else - AC_MSG_WARN([The ula200 driver needs ftdi.h and usb.h]) - ]) - ;; -+ serdisplib) -+ LIBFREETYPE_CFLAGS=`pkg-config --cflags freetype2` -+ LIBFREETYPE_LIBS=`pkg-config --libs freetype2` -+ if test x"$LIBFREETYPE_CFLAGS" = "x" ; then -+ AC_MSG_WARN([The serdisplib driver needs freetype2]) -+ fi -+ -+ AC_CHECK_HEADERS([serdisplib/serdisp.h],[ -+ AC_CHECK_LIB(serdisp, serdisp_nextdisplaydescription,[ -+ LIBSERDISP="-lserdisp" -+ DRIVERS="$DRIVERS serdisplib${SO}" -+ actdrivers=["$actdrivers serdisplib"] -+ ],[ -+ AC_MSG_WARN([The serdisplib driver needs serdisplib]) -+ ]) -+ ],[ -+ AC_MSG_WARN([The serdisplib driver needs serdislib/serdisp.h]) -+ ]) -+ -+ AC_SUBST(LIBFREETYPE_CFLAGS) -+ AC_SUBST(LIBFREETYPE_LIBS) -+ AC_SUBST(LIBSERDISP) -+ ;; - xosd) - AC_CHECK_HEADERS([xosd.h],[ - AC_CHECK_LIB(xosd, main,[ ---- a/server/drivers/Makefile.am -+++ b/server/drivers/Makefile.am -@@ -19,12 +19,13 @@ AM_LDFLAGS = @LDSHARED@ - #LIBS = - - pkglib_PROGRAMS = @DRIVERS@ --EXTRA_PROGRAMS = bayrad CFontz CFontz633 CFontzPacket curses CwLnx ea65 EyeboxOne g15 glcdlib glk hd44780 icp_a106 imon IOWarrior irman joy lb216 lcdm001 lcterm lirc MD8800 ms6931 mtc_s16209x MtxOrb NoritakeVFD picolcd pyramid sed1330 sed1520 serialPOS serialVFD stv5730 svga t6963 text tyan sli ula200 xosd -+EXTRA_PROGRAMS = bayrad CFontz CFontz633 CFontzPacket curses CwLnx ea65 EyeboxOne g15 glcdlib glk hd44780 icp_a106 imon IOWarrior irman joy lb216 lcdm001 lcterm lirc MD8800 ms6931 mtc_s16209x MtxOrb NoritakeVFD picolcd pyramid sed1330 sed1520 serialPOS serialVFD stv5730 svga t6963 text tyan sli ula200 serdisplib xosd - noinst_LIBRARIES = libLCD.a libbignum.a - - IOWarrior_CFLAGS = @libusb_cflags@ $(AM_CFLAGS) - hd44780_CFLAGS = @libusb_cflags@ $(AM_CFLAGS) - g15_CFLAGS = @libusb_cflags@ $(AM_CFLAGS) -+serdisplib_CFLAGS = @LIBFREETYPE_CFLAGS@ $(AM_CFLAGS) - - CFontz_LDADD = libLCD.a libbignum.a - CFontz633_LDADD = libLCD.a libbignum.a -@@ -53,6 +54,7 @@ svga_LDADD = @LIBSVGA@ - t6963_LDADD = libLCD.a - tyan_LDADD = libLCD.a libbignum.a - ula200_LDADD = libLCD.a @LIBFTDI@ -+serdisplib_LDADD = libLCD.a @LIBSERDISP@ @LIBFREETYPE_LIBS@ - sli_LDADD = libLCD.a - xosd_LDADD = @LIBXOSD@ - -@@ -99,6 +101,7 @@ t6963_SOURCES = lcd.h lcd_lib.h t69 - text_SOURCES = lcd.h text.h text.c report.h - tyan_SOURCES = lcd.h lcd_lib.h tyan_lcdm.h tyan_lcdm.c report.h adv_bignum.h - ula200_SOURCES = lcd.h lcd_lib.h ula200.h ula200.c report.h -+serdisplib_SOURCES = lcd.h serdisplib.h serdisplib.c lcdgraphic.c lcdgraphic.h - sli_SOURCES = lcd.h lcd_lib.h wirz-sli.h wirz-sli.c report.h - xosd_SOURCES = lcd.h xosdlib_drv.c xosdlib_drv.h report.h - ---- /dev/null -+++ b/server/drivers/lcdgraphic.c -@@ -0,0 +1,590 @@ -+// Description: -+ -+/* Copyright (C) 2007 Bernhard Walle <bernhard.walle@gmx.de> -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ GNU General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 */ -+ -+#include <stdlib.h> -+#include <stdio.h> -+#include <unistd.h> -+#include <termios.h> -+#include <fcntl.h> -+#include <string.h> -+#include <errno.h> -+#include <limits.h> -+#include <syslog.h> -+#include <stdint.h> -+ -+#include "lcdgraphic.h" -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Defines -+ -+#undef report -+#define lcdgr_report lcdgr->drv->report -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Returns the value of a pixel in the new_buffer buffer. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the x location of the pixel -+// @param y the y location of the pixel -+// -+// @return the value of the pixel -+// -+static inline int get_pixel_new(struct lcdgraphic *lcdgr, int x, int y) -+{ -+ if (x >= lcdgr->width || y >= lcdgr->height) -+ return -1; -+ else -+ return lcdgr->new_buffer[lcdgr->width * y + x]; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Returns the value of a pixel in the disp_buffer buffer. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the x location of the pixel -+// @param y the y location of the pixel -+// -+// @return the value of the pixel -+// -+static inline int get_pixel_disp(struct lcdgraphic *lcdgr, int x, int y) -+{ -+ if (x >= lcdgr->width || y >= lcdgr->height) -+ return -1; -+ else -+ return lcdgr->disp_buffer[lcdgr->width * y + x]; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Sets the value of a pixel in the new_buffer buffer. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the x location of the pixel -+// @param y the y location of the pixel -+// @param value the value to which the buffer should be set -+// -+static void set_pixel_new(struct lcdgraphic *lcdgr, int x, int y, int value) -+{ -+ if (x < lcdgr->width && y < lcdgr->height) -+ lcdgr->new_buffer[lcdgr->width * y + x] = value; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Sets the value of a pixel in the disp_buffer buffer. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the x location of the pixel -+// @param y the y location of the pixel -+// @param value the value to which the buffer should be set -+// -+static void set_pixel_disp(struct lcdgraphic *lcdgr, int x, int y, int value) -+{ -+ if (x < lcdgr->width && y < lcdgr->height) -+ lcdgr->disp_buffer[lcdgr->width * y + x] = value; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Maps a lcdproc icon to a unicode code for an icon. -+// -+// @param icon the lcdproc icon constant -+// -+// @return Unicode value -+// -+static int icon2unicode(int icon) -+{ -+ switch (icon) { -+ case ICON_BLOCK_FILLED: -+ return UNICODE_BLOCK_FILLED; -+ case ICON_HEART_FILLED: -+ return UNICODE_HEART_FILLED; -+ case ICON_HEART_OPEN: -+ return UNICODE_HEART_OPEN; -+ case ICON_ARROW_UP: -+ return UNICODE_ARROW_UP; -+ case ICON_ARROW_DOWN: -+ return UNICODE_ARROW_DOWN; -+ case ICON_ARROW_LEFT: -+ return UNICODE_ARROW_LEFT; -+ case ICON_ARROW_RIGHT: -+ return UNICODE_ARROW_RIGHT; -+ case ICON_SELECTOR_AT_LEFT: -+ return UNICODE_SELECTOR_AT_LEFT; -+ case ICON_SELECTOR_AT_RIGHT: -+ return UNICODE_SELECTOR_AT_RIGHT; -+ case ICON_ELLIPSIS: -+ return UNICODE_ELLIPSIS; -+ default: -+ return -1; -+ } -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Initialises the instance -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure (not initialised, -+// only allocated -+// @param settings a pointer to a settings structure, for a description of the -+// members, see above -+// @param functions a pointer to the functions structure, for a description of -+// the members, see above -+// -+// @return 0 on success, != 0 on failure -+// -+int lcdgraphic_init(struct lcdgraphic *lcdgr, -+ struct lcdgraphic_settings *settings, -+ struct lcdgraphic_functions *functions) -+{ -+ int ret; -+ -+ // check the arguments -+ if (!lcdgr || !functions || !settings) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_init: one of the arguments is NULL"); -+ return -EINVAL; -+ } -+ -+ // check functions -+ if (!functions->setpixel || !functions->clear || !functions->flush) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_init: all functions must be valid"); -+ return -EINVAL; -+ } -+ -+ // validation -+ if (settings->cwidth == 0 || settings->cheight == 0) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_init: cwidth / cheight is 0"); -+ return -EINVAL; -+ } -+ -+ // zero all first -+ memset(lcdgr, 0, sizeof(struct lcdgraphic)); -+ -+ // assign some members -+ lcdgr->width = settings->width; -+ lcdgr->height = settings->height; -+ lcdgr->cwidth = settings->cwidth; -+ lcdgr->cheight = settings->cheight; -+ lcdgr->bwidth = settings->bheight; -+ lcdgr->drv = settings->drv; -+ strncpy(lcdgr->normal_font, settings->normal_font, PATH_MAX); -+ lcdgr->normal_font[PATH_MAX-1] = 0; -+ lcdgr->funcs = *functions; -+ lcdgr->all_dirty = 1; -+ -+ // calculate some stuff -+ lcdgr->num_pixels = lcdgr->width * lcdgr->height; -+ lcdgr->xchars = (lcdgr->width - 2*lcdgr->bwidth) / lcdgr->cwidth; -+ lcdgr->ychars = (lcdgr->height - 2*lcdgr->bheight) / lcdgr->cheight; -+ -+ // initialise freetype -+ ret = FT_Init_FreeType(&lcdgr->ft_library); -+ if (ret != 0) { -+ lcdgr_report(RPT_ERR, "Freetype initialisation failed"); -+ goto out; -+ } -+ -+ // load the font face for freetype -+ ret = FT_New_Face(lcdgr->ft_library, lcdgr->normal_font, 0, -+ &lcdgr->ft_normal_font); -+ if (ret != 0) { -+ lcdgr_report(RPT_ERR, "Freetype creation of font '%s' failed", -+ lcdgr->normal_font); -+ goto out; -+ } -+ -+ // allocate the buffers -+ lcdgr->disp_buffer = (int *)malloc(sizeof(int) * lcdgr->num_pixels); -+ if (!lcdgr->disp_buffer) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_init: malloc of disp_buffer failed"); -+ ret = -ENOMEM; -+ goto out; -+ } -+ -+ lcdgr->new_buffer = (int *)malloc(sizeof(int) * lcdgr->num_pixels); -+ if (!lcdgr->new_buffer) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_init: malloc of new_buffer failed"); -+ ret = -ENOMEM; -+ goto out; -+ } -+ -+ // clear buffers initially -+ memset(lcdgr->new_buffer, 0, sizeof(int) * lcdgr->num_pixels); -+ memset(lcdgr->disp_buffer, 0, sizeof(int) * lcdgr->num_pixels); -+ -+ return 0; -+ -+out: -+ if (lcdgr->ft_normal_font) -+ FT_Done_Face(lcdgr->ft_normal_font); -+ if (lcdgr->ft_library) -+ FT_Done_FreeType(lcdgr->ft_library); -+ if (lcdgr->new_buffer) -+ free(lcdgr->new_buffer); -+ if (lcdgr->disp_buffer) -+ free(lcdgr->disp_buffer); -+ -+ return ret; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Destroys the instance -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// -+void lcdgraphic_destroy(struct lcdgraphic *lcdgr) -+{ -+ if (!lcdgr) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_destroy: lcdgr == NULL"); -+ return; -+ } -+ -+ if (lcdgr->ft_normal_font) -+ FT_Done_Face(lcdgr->ft_normal_font); -+ if (lcdgr->ft_library) -+ FT_Done_FreeType(lcdgr->ft_library); -+ -+ free(lcdgr->disp_buffer); -+ free(lcdgr->new_buffer); -+ -+ // allow multiple calls of that function -+ lcdgr->disp_buffer = NULL; -+ lcdgr->new_buffer = NULL; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Returns the number of characters in one line. This function can be used -+// inside the width callback of the display driver. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// -+// @return the number of characters in a line -+// -+int lcdgraphic_width(struct lcdgraphic *lcdgr) -+{ -+ if (!lcdgr) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_destroy: lcdgr == NULL"); -+ return -1; -+ } -+ -+ return lcdgr->xchars; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Returns the number of lines. This function can be used inside the height -+// callback of the display driver. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// -+// @return the number lines -+// -+int lcdgraphic_height(struct lcdgraphic *lcdgr) -+{ -+ if (!lcdgr) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_destroy: lcdgr == NULL"); -+ return -1; -+ } -+ -+ return lcdgr->ychars; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Clears the buffer. Doesn't draw anything. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// -+void lcdgraphic_clear(struct lcdgraphic *lcdgr) -+{ -+ if (!lcdgr) { -+ lcdgr_report(RPT_ERR, "lcdgraphic_destroy: lcdgr == NULL"); -+ return; -+ } -+ -+ memset(lcdgr->new_buffer, 0, sizeof(int) * lcdgr->num_pixels); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws a string into the display buffer. This calls lcdgraphic_draw_char() -+// internally. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the column (position in characters!) where the character -+// should be drawn -+// @param y the line (position in characters!) where the character -+// should be drawn -+// @param str the string that should be drawn -+// -+void lcdgraphic_draw_string(struct lcdgraphic *lcdgr, int x, int y, char *str) -+{ -+ int i; -+ int num_chars = strlen(str); -+ -+ // check string length -+ if (x + num_chars > lcdgr->xchars) { -+ lcdgr_report(RPT_WARNING, "lcdgraphic_draw_string: %dx%d - %s too long", -+ x, y, str); -+ return; -+ } -+ -+ for (i = 0; i < num_chars; i++) -+ lcdgraphic_draw_char(lcdgr, x + i, y, str[i]); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws a Unicode character into the display buffer. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the column (position in characters!) where the character -+// should be drawn -+// @param y the line (position in characters!) where the character -+// should be drawn -+// @param c the character that should be drawn (unicode code) -+// @param scale for big numbers -- the number of cells that the rendered -+// string should occupy -+// @param width the width in characters -+// -+static int lcdgraphic_draw_char_unicode(struct lcdgraphic *lcdgr, -+ int x, -+ int y, -+ int c, -+ int scale, -+ int width) -+{ -+ static int last_font_size = -1; -+ int xoffset, yoffset; // in pixel -+ int err; -+ FT_Bitmap *bitmap; -+ unsigned char *bitmap_buf; -+ int col, row; -+ FT_GlyphSlot glyph; -+ FT_Face face; -+ int cwidth, cheight; -+ int font_size; -+ -+ face = lcdgr->ft_normal_font; -+ xoffset = lcdgr->bwidth + x*lcdgr->cwidth; -+ yoffset = lcdgr->bheight + y*lcdgr->cheight; -+ -+ // set the font size -+ font_size = lcdgr->cheight * scale; -+ if (last_font_size != font_size) { -+ err = FT_Set_Pixel_Sizes(lcdgr->ft_normal_font, font_size, font_size); -+ if (err != 0) { -+ lcdgr_report(RPT_ERR, "Failed to set pixel size (%dx%x)", -+ lcdgr->cwidth * scale, lcdgr->cheight * scale); -+ return -1; -+ } -+ -+ last_font_size = font_size; -+ } -+ -+ // load the glyph and render it -+ err = FT_Load_Char(lcdgr->ft_normal_font, c, -+ FT_LOAD_RENDER | FT_LOAD_MONOCHROME); -+ if (err != 0) { -+ lcdgr_report(RPT_WARNING, "lcdgraphic_draw_char: loading char " -+ "'%c' (%d) failed", c, c); -+ -+ return -1; -+ } -+ -+ // clear the rectangle first -+ cwidth = lcdgr->cwidth * width; -+ cheight = lcdgr->cheight * scale; -+ for (col = 0; col < cwidth; col++) -+ for (row = 0; row < cheight; row++) -+ set_pixel_new(lcdgr, xoffset + col, yoffset + row, 0); -+ -+ // set some data elements for convenience -+ glyph = lcdgr->ft_normal_font->glyph; -+ bitmap = &glyph->bitmap; -+ bitmap_buf = bitmap->buffer; -+ -+ // and now copy the pixels -+ for (row = 0; row < bitmap->rows; row++) { -+ for (col = 0; col < bitmap->width; col++) { -+ int bitmap_left = glyph->bitmap_left; -+ -+ if (scale != width) -+ bitmap_left = (cwidth - bitmap->width)/2; -+ -+ set_pixel_new(lcdgr, xoffset + col + bitmap_left, -+ yoffset + row + lcdgr->cheight + (face->size->metrics.descender >> 6) -+ - glyph->bitmap_top, -+ bitmap_buf[col/8] >> (7 - (col % 8)) & 1); -+ } -+ bitmap_buf += bitmap->pitch; -+ } -+ -+ return 0; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws a character into the display buffer. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the column (position in characters!) where the character -+// should be drawn -+// @param y the line (position in characters!) where the character -+// should be drawn -+// @param c the character that should be drawn -+// -+void lcdgraphic_draw_char(struct lcdgraphic *lcdgr, int x, int y, char c) -+{ -+ if (lcdgraphic_draw_char_unicode(lcdgr, x, y, c & 0xff, 1, 1) != 0) -+ lcdgraphic_draw_char_unicode(lcdgr, x, y, '?', 1, 1); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws a big number into the display buffer. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the x position -+// @param num the actual number -+// -+void lcdgraphic_draw_num(struct lcdgraphic *lcdgr, int x, int num) -+{ -+ int y; -+ const int BIG_HEIGHT = 3; -+ -+ if (num < 0 || num > 10) { -+ lcdgr_report(RPT_WARNING, "lcdgraphic_draw_num: num out of range (%d)", num); -+ return; -+ } -+ -+ y = lcdgr->ychars - (lcdgr->ychars - BIG_HEIGHT + 1)/2; -+ if (num == 10) -+ lcdgraphic_draw_char_unicode(lcdgr, x, y, ':', BIG_HEIGHT, 1); -+ else -+ lcdgraphic_draw_char_unicode(lcdgr, x, y, '0' + num, BIG_HEIGHT, BIG_HEIGHT); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws an icon (which standard lcdproc icon syntax) -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the x position of the icon -+// @param y the y position of the icon -+// @param icon the icon constant -+// -+// @return 0 on success, -1 on failure (i.e. the core replaces the icon by a -+// suitable character -+// -+int lcdgraphic_icon(struct lcdgraphic *lcdgr, int x, int y, int icon) -+{ -+ int unicode; -+ -+ unicode = icon2unicode(icon); -+ if (unicode > 0) -+ return lcdgraphic_draw_char_unicode(lcdgr, x, y, unicode, 1, 1); -+ else -+ return -1; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws a horizontal bar -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the x position of the bar -+// @param y the y position of the bar -+// @param len the maximum length -+// @param promille the current state -+// @param options -+// -+void lcdgraphic_hbar(struct lcdgraphic *lcdgr, -+ int x, -+ int y, -+ int len, -+ int promille, -+ int options) -+{ -+ int startx, midx, endx, starty, endy; -+ int col, row; -+ -+ /* calculate positions */ -+ startx = lcdgr->bwidth + x*lcdgr->cwidth; -+ midx = startx + promille * (len*lcdgr->cwidth) / 1000; -+ endx = startx + len*lcdgr->cwidth; -+ starty = lcdgr->bheight + y*lcdgr->cheight; -+ endy = starty + lcdgr->cheight - 1; /* don't draw the last line */ -+ -+ for (col = startx; col < endx; col++) -+ for (row = starty; row < endy; row++) -+ set_pixel_new(lcdgr, col, row, col < midx); -+} -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws a vertical bar -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// @param x the x position of the bar -+// @param y the y position of the bar -+// @param len the maximum length -+// @param promille the current state -+// @param options -+// -+void lcdgraphic_vbar(struct lcdgraphic *lcdgr, -+ int x, -+ int y, -+ int len, -+ int promille, -+ int options) -+{ -+ int startx, endx, starty, midy, endy; -+ int col, row; -+ -+ /* calculation positions */ -+ startx = lcdgr->bwidth + x*lcdgr->cwidth; -+ endx = startx + lcdgr->cwidth - 1; /* don't draw the last column */ -+ starty = lcdgr->bheight + (y + 1)*lcdgr->cheight - 1; -+ midy = starty - promille * (len*lcdgr->cheight) / 1000; -+ endy = starty - len*lcdgr->cheight; -+ -+ for (col = startx; col < endx; col++) -+ for (row = starty; row > endy; row--) -+ set_pixel_new(lcdgr, col, row, row > midy); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Flushes the output to the display. Uses the provided callback functions -+// of the underlying display. -+// -+// @param lcdgr a pointer to a valid lcdgraphic structure -+// -+void lcdgraphic_flush(struct lcdgraphic *lcdgr) -+{ -+ int x, y; -+ -+ if (lcdgr->all_dirty) -+ lcdgr->funcs.clear(lcdgr->drv); -+ -+ for (y = 0; y < lcdgr->height; y++) { -+ for (x = 0; x < lcdgr->width; x++) { -+ int val = get_pixel_new(lcdgr, x, y); -+ -+ if (lcdgr->all_dirty || -+ (val != get_pixel_disp(lcdgr, x, y)) ) { -+ lcdgr->funcs.setpixel(lcdgr->drv, x, y, val); -+ set_pixel_disp(lcdgr, x, y, val); -+ } -+ } -+ } -+ -+ lcdgr->funcs.flush(lcdgr->drv); -+ lcdgr->all_dirty = 0; -+} -+ -+// vimx: set sw=4 ts=4 et: ---- /dev/null -+++ b/server/drivers/lcdgraphic.h -@@ -0,0 +1,195 @@ -+// Description: -+ -+/* Copyright (C) 2007 Bernhard Walle <bernhard.walle@gmx.de> -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ GNU General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 */ -+ -+#ifndef LCDGRAPHIC_H -+#define LCDGRAPHIC_H -+ -+#include <stdlib.h> -+#include <stdio.h> -+#include <unistd.h> -+#include <termios.h> -+#include <fcntl.h> -+#include <string.h> -+#include <errno.h> -+#include <syslog.h> -+#include <iconv.h> -+ -+#ifdef HAVE_CONFIG_H -+# include "config.h" -+#endif -+ -+#include <ft2build.h> -+#include FT_FREETYPE_H -+ -+#include <serdisplib/serdisp.h> -+ -+ -+#include "lcd.h" -+#include "report.h" -+#include "timing.h" -+ -+/////////////////////////////////////////////////////////////////////////////// -+// constants -+// -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Unicode characters -+// -+ -+#define UNICODE_BLOCK_FILLED 0x2588 -+#define UNICODE_HEART_OPEN 0x2661 -+#define UNICODE_HEART_FILLED 0x2665 -+#define UNICODE_ARROW_UP 0x2191 -+#define UNICODE_ARROW_DOWN 0x2193 -+#define UNICODE_ARROW_LEFT 0x2190 -+#define UNICODE_ARROW_RIGHT 0x2192 -+#define UNICODE_CHECKBOX_OFF -1 /* -1 == not implemented */ -+#define UNICODE_CHECKBOX_ON -1 -+#define UNICODE_CHECKBOX_GRAY -1 -+#define UNICODE_SELECTOR_AT_LEFT -1 -+#define UNICODE_SELECTOR_AT_RIGHT -1 -+#define UNICODE_ELLIPSIS -1 -+ -+/////////////////////////////////////////////////////////////////////////////// -+// These are callback functions that the low level driver must provide -+// -+struct lcdgraphic_functions { -+ -+ // sets the colour of a pixel -+ void (*setpixel)(Driver *drvthis, int x, int y, int pixel); -+ -+ // clears the whole display -+ void (*clear)(Driver *drvthis); -+ -+ // flushes the display -+ void (*flush)(Driver *drvthis); -+}; -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// That structure should be passed by the user, while struct lcdgraphic is -+// entirely private to the library -+struct lcdgraphic_settings { -+ -+ // the width and the height (in number of pixels) of the display -+ int width, height; -+ -+ // the width and the height of one character -+ int cwidth, cheight; -+ -+ // defines unused area on the display (border width / border height) -+ int bwidth, bheight; -+ -+ // that's the cookie that is passed to the callback functions -+ // it's also used for reporting errors -+ Driver *drv; -+ -+ // font file used for normal characters (TTF, must be monospaced) -+ char normal_font[PATH_MAX]; -+}; -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Private structure for drivers that use the functions of that library. -+// Don't access the members by hand here. -+// -+struct lcdgraphic { -+ -+ // --- public members from the structure above ----- -+ -+ // the width and the height (in number of pixels) of the display -+ int width, height; -+ -+ // the width and the height of one character -+ int cwidth, cheight; -+ -+ // defines unused area on the display (border width / border height) -+ int bwidth, bheight; -+ -+ // that's the cookie that is passed to the callback functions -+ // it's also used for reporting errors -+ Driver *drv; -+ -+ // font file used for normal characters (TTF, must be monospaced) -+ char normal_font[PATH_MAX]; -+ -+ // a set of callback functions -+ struct lcdgraphic_functions funcs; -+ -+ // --- private members ----- -+ -+ // the framebuffer that's actually displayed -+ int *disp_buffer; -+ -+ // the buffer that shows the contents of the next update but wasn't -+ // flushed yet -+ int *new_buffer; -+ -+ // (calculated) convenience value because we need that often -+ int num_pixels; -+ -+ // (calculated) number of characters in both directions -+ int xchars, ychars; -+ -+ // all buffers are dirty, i.e. update all -+ int all_dirty; -+ -+ // freetype library handle -+ FT_Library ft_library; -+ -+ // handle for the normal font -+ FT_Face ft_normal_font; -+ -+ // handle for charset convertions -+ iconv_t iconv_handle; -+}; -+ -+// Forward declarations for 'clients' -+ -+int lcdgraphic_init(struct lcdgraphic *lcdgr, -+ struct lcdgraphic_settings *settings, -+ struct lcdgraphic_functions *functions); -+ -+int lcdgraphic_width(struct lcdgraphic *lcdgr); -+int lcdgraphic_height(struct lcdgraphic *lcdgr); -+void lcdgraphic_destroy(struct lcdgraphic *lcdgr); -+void lcdgraphic_clear(struct lcdgraphic *lcdgr); -+void lcdgraphic_flush(struct lcdgraphic *lcdgr); -+void lcdgraphic_draw_string(struct lcdgraphic *lcdgr, int x, int y, char *str); -+void lcdgraphic_draw_char(struct lcdgraphic *lcdgr, int x, int y, char c); -+void lcdgraphic_draw_num(struct lcdgraphic *lcdgr, int x, int num); -+int lcdgraphic_icon(struct lcdgraphic *lcdgr, int x, int y, int icon); -+ -+void lcdgraphic_hbar(struct lcdgraphic *lcdgr, -+ int x, -+ int y, -+ int len, -+ int promille, -+ int options); -+ -+void lcdgraphic_vbar(struct lcdgraphic *lcdgr, -+ int x, -+ int y, -+ int len, -+ int promille, -+ int options); -+ -+#endif /* LCDGRAPHIC_H */ -+ -+// vim: set sw=4 ts=4 et: ---- /dev/null -+++ b/server/drivers/serdisplib.c -@@ -0,0 +1,379 @@ -+// Description: -+ -+/* Copyright (C) 2007 Bernhard Walle <bernhard.walle@gmx.de> -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2 of the License, or -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ GNU General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 */ -+ -+#include <stdlib.h> -+#include <stdio.h> -+#include <unistd.h> -+#include <termios.h> -+#include <fcntl.h> -+#include <string.h> -+#include <errno.h> -+#include <limits.h> -+#include <syslog.h> -+ -+#include <serdisplib/serdisp.h> -+ -+#ifdef HAVE_CONFIG_H -+# include "config.h" -+#endif -+ -+#include "lcd.h" -+#include "report.h" -+#include "timing.h" -+#include "lcdgraphic.h" -+ -+/* Vars for the server core */ -+MODULE_EXPORT char *api_version = API_VERSION; -+MODULE_EXPORT int stay_in_foreground = 0; -+MODULE_EXPORT int supports_multiple = 1; -+MODULE_EXPORT char *symbol_prefix = "serdisplib_"; -+ -+/////////////////////////////////////////////////////////////////////////////// -+// constants -+// -+#define SERDISPLIB_MAX_DISPLAYNAME 32 -+#define SERDISPLIB_MAX_DEVICENAME PATH_MAX -+ -+/////////////////////////////////////////////////////////////////////////////// -+// private data types -+// -+typedef struct { -+ -+ // the name of the display driver in serdisplib, e.g. 'ctinclud' -+ char display_name[SERDISPLIB_MAX_DISPLAYNAME]; -+ -+ // the name of the device in serdisplib, e.g. /dev/parport0 -+ char display_device[SERDISPLIB_MAX_DEVICENAME]; -+ -+ // the serdisplib connection handle -+ serdisp_CONN_t* serdisplib_conn; -+ -+ // the serdisplib handle -+ serdisp_t *serdisplib; -+ -+ // invert the display -+ int invert; -+ -+ // the lcdgraphic handle -+ struct lcdgraphic *lcdgraphic; -+ -+} PrivateData; -+ -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Callback functions -+// -+ -+static void callback_setpixel(Driver *drvthis, int x, int y, int pixel) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ serdisp_setcolour(p->serdisplib, x, y, pixel ? SD_COL_BLACK : SD_COL_WHITE); -+} -+ -+static void callback_clear(Driver *drvthis) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ serdisp_clearbuffer(p->serdisplib); -+} -+ -+static void callback_flush(Driver *drvthis) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ serdisp_update(p->serdisplib); -+} -+ -+struct lcdgraphic_functions lcdgraphic_functions = { -+ .setpixel = callback_setpixel, -+ .clear = callback_clear, -+ .flush = callback_flush -+}; -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Init the driver and display -+// -+MODULE_EXPORT int -+serdisplib_init(Driver *drvthis) -+{ -+ PrivateData *p; -+ int ret; -+ struct lcdgraphic_settings settings; -+ const char *s; -+ -+ // Alocate and store private data -+ p = (PrivateData *) malloc(sizeof(PrivateData)); -+ if (!p) -+ return -1; -+ if (drvthis->store_private_ptr(drvthis, p)) -+ return -1; -+ memset(p, 0, sizeof(PrivateData)); -+ -+ // get the display name -+ s = drvthis->config_get_string(drvthis->name, "display_name", 0, NULL); -+ if (!s) { -+ report(RPT_ERR, "You must specify display_name in configuration"); -+ goto out; -+ } -+ strncpy(p->display_name, s, SERDISPLIB_MAX_DISPLAYNAME); -+ p->display_name[SERDISPLIB_MAX_DISPLAYNAME-1] = 0; -+ -+ // get the display device -+ s = drvthis->config_get_string(drvthis->name, "display_device", 0, NULL); -+ if (!s) { -+ report(RPT_ERR, "You must specify display_device in configuration"); -+ goto out; -+ } -+ strncpy(p->display_device, s, SERDISPLIB_MAX_DEVICENAME); -+ p->display_device[SERDISPLIB_MAX_DEVICENAME-1] = 0; -+ -+ // get the normal font -+ s = drvthis->config_get_string(drvthis->name, "normal_font", 0, NULL); -+ if (!s) { -+ report(RPT_ERR, "You must specify normal_font in configuration"); -+ goto out; -+ } -+ strncpy(settings.normal_font, s, PATH_MAX); -+ settings.normal_font[PATH_MAX-1] = 0; -+ -+ // character size -+ s = drvthis->config_get_string(drvthis->name, "char_size", 0, "6x10"); -+ if (!s) { -+ report(RPT_ERR, "Could not retrieve char_size from configuration"); -+ goto out; -+ } -+ if (sscanf(s, "%dx%d", &settings.cwidth, &settings.cheight) != 2) { -+ report(RPT_ERR, "Could not scan '%s' correctly", s); -+ goto out; -+ } -+ -+ // border size -+ s = drvthis->config_get_string(drvthis->name, "border_size", 0, "0x0"); -+ if (!s) { -+ report(RPT_ERR, "Could not retrieve border size from configuration"); -+ goto out; -+ } -+ if (sscanf(s, "%dx%d", &settings.bwidth, &settings.bheight) != 2) { -+ report(RPT_ERR, "Could not scan '%s' correctly", s); -+ goto out; -+ } -+ -+ // invert -+ p->invert = drvthis->config_get_bool(drvthis->name, "invert", 0, 1); -+ -+ -+ /* End of config file parsing */ -+ -+ // opening the output device */ -+ p->serdisplib_conn = SDCONN_open(p->display_device); -+ if (!p->serdisplib_conn) { -+ report(RPT_ERR, "Could not open %s: %s", p->display_device, -+ sd_geterrormsg()); -+ goto out; -+ } -+ -+ // opening and initialising the display -+ p->serdisplib = serdisp_init(p->serdisplib_conn, p->display_name, ""); -+ if (!p->serdisplib) { -+ report(RPT_ERR, "Error opening display %s: %s\n", p->display_name, -+ sd_geterrormsg()); -+ goto out; -+ } -+ -+ // invert settings -+ serdisp_setoption(p->serdisplib, "INVERT", p->invert -+ ? SD_OPTION_YES : SD_OPTION_NO); -+ -+ // allocate lcdgraphic handle -+ p->lcdgraphic = (struct lcdgraphic *)malloc(sizeof(struct lcdgraphic)); -+ if (!p->lcdgraphic) { -+ report(RPT_ERR, "Not enough memory to allocate struct lcdgraphic"); -+ goto out; -+ } -+ -+ // register at the lcdgraphic backend -+ settings.width = serdisp_getwidth(p->serdisplib); -+ settings.height = serdisp_getheight(p->serdisplib); -+ settings.drv = drvthis; -+ -+ ret = lcdgraphic_init(p->lcdgraphic, &settings, &lcdgraphic_functions); -+ if (ret != 0) { -+ report(RPT_ERR, "Error registering at lcdgraphic subsystem"); -+ goto out; -+ } -+ -+ return 0; -+ -+out: -+ if (p->serdisplib_conn && !p->serdisplib) -+ SDCONN_close(p->serdisplib_conn); -+ if (p->serdisplib) -+ serdisp_quit(p->serdisplib); -+ drvthis->store_private_ptr(drvthis, NULL); -+ free(p); -+ -+ return -1; -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Clean-up -+// -+MODULE_EXPORT void -+serdisplib_close(Driver *drvthis) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ if (p) { -+ if (p->serdisplib) -+ serdisp_quit(p->serdisplib); -+ if (p->lcdgraphic) -+ lcdgraphic_destroy(p->lcdgraphic); -+ } -+ drvthis->store_private_ptr(drvthis, NULL); -+ free(p); -+} -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Returns the display width -+// -+MODULE_EXPORT int -+serdisplib_width (Driver *drvthis) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ return lcdgraphic_width(p->lcdgraphic); -+} -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Returns the display height -+// -+MODULE_EXPORT int -+serdisplib_height (Driver *drvthis) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ return lcdgraphic_height(p->lcdgraphic); -+} -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Clear the framebuffer -+// -+MODULE_EXPORT void -+serdisplib_clear (Driver *drvthis) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ lcdgraphic_clear(p->lcdgraphic); -+} -+ -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Place a character in the framebuffer -+// -+MODULE_EXPORT void -+serdisplib_chr (Driver *drvthis, int x, int y, char ch) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ lcdgraphic_draw_char(p->lcdgraphic, x - 1, y - 1, ch); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Place a string in the framebuffer -+// -+MODULE_EXPORT void -+serdisplib_string (Driver *drvthis, int x, int y, char *s) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ lcdgraphic_draw_string(p->lcdgraphic, x - 1, y - 1, s); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Place a big number in the framebuffer -+// -+MODULE_EXPORT void -+serdisplib_num (Driver *drvthis, int x, int num) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ lcdgraphic_draw_num(p->lcdgraphic, x - 1, num); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Sets the backlight on or off -+// -+MODULE_EXPORT void -+serdisplib_backlight (Driver *drvthis, int on) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ serdisp_setoption(p->serdisplib, "BACKLIGHT", on ? SD_OPTION_YES : SD_OPTION_NO); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Flush the framebuffer to the display -+// -+MODULE_EXPORT void -+serdisplib_flush(Driver *drvthis) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ lcdgraphic_flush(p->lcdgraphic); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Set default icon into a userdef char -+// -+MODULE_EXPORT int -+serdisplib_icon(Driver *drvthis, int x, int y, int icon) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ return lcdgraphic_icon(p->lcdgraphic, x - 1, y - 1, icon); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws a horizontal bar -+// -+MODULE_EXPORT void -+serdisplib_hbar(Driver *drvthis, int x, int y, int len, int promille, int options) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ lcdgraphic_hbar(p->lcdgraphic, x - 1, y - 1, len, promille, options); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// Draws a vertical bar -+// -+MODULE_EXPORT void -+serdisplib_vbar(Driver *drvthis, int x, int y, int len, int promille, int options) -+{ -+ PrivateData *p = (PrivateData *) drvthis->private_data; -+ -+ lcdgraphic_vbar(p->lcdgraphic, x - 1, y - 1, len, promille, options); -+} -+ -+ -+// vim: set sw=4 ts=4 et: ---- a/LCDd.conf -+++ b/LCDd.conf -@@ -40,7 +40,8 @@ - # EyeboxOne, g15, glcdlib, glk, hd44780, icp_a106, imon, IOWarrior, - # irman, joy, lb216, lcdm001, lcterm, lirc, MD8800, ms6931, mtc_s16209x, - # MtxOrb, NoritakeVFD, picolcd, pyramid, sed1330, sed1520, serialPOS, --# serialVFD, sli, stv5730, svga, t6963, text, tyan, ula200, xosd -+# serialVFD, sli, stv5730, svga, t6963, text, tyan, ula200, serdisplib, -+# xosd - Driver=curses - - # Tells the driver to bind to the given interface -@@ -931,6 +932,31 @@ Size=20x4 - # KeyMap_E=Enter - # KeyMap_F=Escape - -+## serdisplib meta-driver for dot-matrix displays ## -+[serdisplib] -+ -+# the underlying serdisplib driver, e.g. ctinclud -+display_name=ctinclud -+ -+# the display device, e.g. serraw:/dev/ttyS0, parport:/dev/parport0 -+# or USB:07c0/1501 (vendor ID, device ID) -+display_device=USB:07c0/1501 -+ -+# the font which is used for rendering, this font must be monospace -+# and should contain some special Unicode characters like arrows -+# (Andale Mono is recommended and can be fetched at -+# http://corefonts.sf.net or from a Windows installation) -+normal_font=/usr/share/fonts/truetype/andalemo.ttf -+ -+# invert the display (black => white, white => black) -+invert=0 -+ -+# the size of one characters, the number of characters is calculated -+# automatically from this and from border_size (see below) -+char_size=6x10 -+ -+# size of the border around the drawing area -+border_size=0 - - - ## Wirz SLI LCD driver ## diff --git a/abs/extra/lcdproc/lcdproc.install b/abs/extra/lcdproc/lcdproc.install deleted file mode 100644 index bd3c85e..0000000 --- a/abs/extra/lcdproc/lcdproc.install +++ /dev/null @@ -1,7 +0,0 @@ -post_install() { - add_service.sh lcdd -} - -pre_remove() { - remove_service.sh lcdd -} diff --git a/abs/extra/libaacs-git/PKGBUILD b/abs/extra/libaacs-git/PKGBUILD new file mode 100644 index 0000000..e88a6e4 --- /dev/null +++ b/abs/extra/libaacs-git/PKGBUILD @@ -0,0 +1,43 @@ +# Maintainer: Gustavo Alvarez <sl1pkn07@gmail.com> + +pkgname=libaacs-git +pkgver=20120508 +pkgrel=1 +pkgdesc="Advanced Access Content System (GIT version)" +arch=('i686' 'x86_64') +license=('LGPL') +url="http://www.videolan.org/developers/libaacs.html" +depends=('libgcrypt') +makedepends=('git' 'flex' 'bison') +options=('!libtool') +provides=('libaacs') +conflicts=('libaacs') + +_gitroot="git://git.videolan.org/libaacs.git" +_gitname="libaacs" + +build() { + msg "Connecting to GIT server..." + + if [ -d "${srcdir}"/"${_gitname}" ] ; then + cd "${_gitname}" && git pull + else + git clone --depth=1 "${_gitroot}" + fi + + [ -d "${srcdir}"/"${_gitname}"-build ] && rm -fr "${srcdir}"/"${_gitname}"-build + cp -R "${srcdir}"/"${_gitname}" "${srcdir}"/"${_gitname}"-build + + msg "GIT checkout done or server timeout" + msg "Starting build..." + + cd "${srcdir}"/"${_gitname}"-build + ./bootstrap + ./configure --prefix=/usr + make +} +package() { + cd "${srcdir}"/"${_gitname}"-build + make DESTDIR="${pkgdir}" install +} +md5sums=() diff --git a/abs/extra/libass/PKGBUILD b/abs/extra/libass/PKGBUILD deleted file mode 100644 index 508e232..0000000 --- a/abs/extra/libass/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id$ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: G_Syme <demichan(at)mail(dot)upb(dot)de> - -pkgname=libass -pkgver=0.9.13 -pkgrel=1 -pkgdesc="A portable library for SSA/ASS subtitles rendering" -arch=('i686' 'x86_64') -url="http://code.google.com/p/libass/" -license=('BSD') -depends=('enca' 'fontconfig' 'libpng') -makedepends=('pkgconfig') -options=(!libtool) -source=("http://libass.googlecode.com/files/${pkgname}-${pkgver}.tar.xz") -md5sums=('d99381922dcbeb7a766d2e7825cca193') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - - make DESTDIR="${pkgdir}" install - install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} diff --git a/abs/extra/libassuan/PKGBUILD b/abs/extra/libassuan/PKGBUILD deleted file mode 100644 index 50a0ce8..0000000 --- a/abs/extra/libassuan/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 87326 2010-08-12 11:59:25Z tpowa $ -# Maintainer: Tobias Powalowski <tpowa@archlinux.org> - -pkgname=libassuan -pkgver=2.0.1 -pkgrel=1 -pkgdesc="A IPC library used by some GnuPG related software" -arch=('i686' 'x86_64') -license=('GPL') -url="http://www.gnupg.org/related_software/libassuan" -depends=('libgpg-error') -options=('!libtool') -source=(ftp://ftp.gnupg.org/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2) - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install -} -md5sums=('53a7d4c22af909d7236d17d454ef935b') - diff --git a/abs/extra/libbluray-git/PKGBUILD b/abs/extra/libbluray-git/PKGBUILD deleted file mode 100644 index c83dce3..0000000 --- a/abs/extra/libbluray-git/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# Maintainer: Andrew Cook <ariscop@gmail.com> - -pkgname=libbluray-git -pkgver=20101110 -pkgrel=1 -pkgdesc="Blu-Ray access library" -arch=('i686' 'x86_64') -depends=('doxygen') -license=('LGPL') -url="http://www.videolan.org/developers/libbluray.html" -makedepends=('git') -source=() -md5sums=() -provides=('libbluray') -conflicts=('libbluray') - -_gitroot="git://git.videolan.org/libbluray.git" -_gitname="libbluray" - -build() { - msg "Connecting to GIT server..." - - if [ -d ${srcdir}/$_gitname ] ; then - cd $_gitname && git pull origin - msg "The local files are updated." - else - git clone $_gitroot - fi - - msg "GIT checkout done or server timeout" - msg "Starting make..." - - cd ${srcdir}/libbluray - ./bootstrap - ./configure --prefix=/ - make || return 1 - make DESTDIR=${pkgdir}/usr install || return 1 -} diff --git a/abs/extra/libbluray/PKGBUILD b/abs/extra/libbluray/PKGBUILD new file mode 100644 index 0000000..083cc1a --- /dev/null +++ b/abs/extra/libbluray/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 157790 2012-04-29 15:02:33Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> +# Contributor: Andrew Cook <ariscop@gmail.com> + +pkgname=libbluray +pkgver=0.2.2 +pkgrel=1 +pkgdesc="Library to access Blu-Ray disks for video playback" +arch=('i686' 'x86_64') +url="http://www.videolan.org/developers/libbluray.html" +license=('LGPL2.1') +depends=('libxml2') +makedepends=('apache-ant' 'jdk7-openjdk') +optdepends=('java-environment: Blu-ray Disc Java support library') +options=(!libtool) +source=(ftp://ftp.videolan.org/pub/videolan/$pkgname/$pkgver/$pkgname-$pkgver.tar.bz2) +sha512sums=('a27eaa929ef05c544beb966a24dfc5425546d6035bfb3e86dc60987b8a4761031ce27c3836a64f71cc76b5308c3cd75efb3bc1f238185819385477e64883888a') + +build() { + cd "$pkgname-$pkgver" + + . /etc/profile.d/jdk.sh + ./configure --prefix=/usr \ + --enable-bdjava \ + --with-jdk=${JAVA_HOME} \ + --disable-static + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + #install bdj + install -Dm644 src/.libs/libbluray.jar "$pkgdir/usr/share/java/libbluray.jar" +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/libbonobo/PKGBUILD b/abs/extra/libbonobo/PKGBUILD index c061ba4..177b162 100644 --- a/abs/extra/libbonobo/PKGBUILD +++ b/abs/extra/libbonobo/PKGBUILD @@ -1,9 +1,9 @@ -# $Id$ +# $Id: PKGBUILD 151065 2012-02-24 17:44:58Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libbonobo pkgver=2.32.1 -pkgrel=1 +pkgrel=2 pkgdesc="A set of language and system independant CORBA interfaces for creating reusable components" arch=(i686 x86_64) license=('GPL' 'LGPL') diff --git a/abs/extra/libbonoboui/PKGBUILD b/abs/extra/libbonoboui/PKGBUILD index fd99d28..149816c 100644 --- a/abs/extra/libbonoboui/PKGBUILD +++ b/abs/extra/libbonoboui/PKGBUILD @@ -1,14 +1,14 @@ -# $Id$ +# $Id: PKGBUILD 148814 2012-02-05 11:51:34Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libbonoboui pkgver=2.24.5 -pkgrel=1 +pkgrel=2 pkgdesc="User Interface library for Bonobo" arch=('i686' 'x86_64') license=('GPL' 'LGPL') depends=('libgnomecanvas' 'libgnome') -makedepends=('intltool' 'pkgconfig') +makedepends=('intltool' 'pkg-config') options=('!libtool' '!emptydirs') url="http://www.gnome.org" source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.24/${pkgname}-${pkgver}.tar.bz2) @@ -19,6 +19,10 @@ build() { ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install rm -f "${pkgdir}/usr/share/applications/bonobo-browser.desktop" } diff --git a/abs/extra/libburn/PKGBUILD b/abs/extra/libburn/PKGBUILD new file mode 100644 index 0000000..645aa25 --- /dev/null +++ b/abs/extra/libburn/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 163883 2012-07-21 12:10:06Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> +# Contributor: William Rea <sillywilly@gmail.com> + +pkgname=libburn +pkgver=1.2.4 +pkgrel=1 +pkgdesc="Library for reading, mastering and writing optical discs" +arch=('i686' 'x86_64') +url="http://libburnia.pykix.org/" +license=('GPL') +depends=('glibc') +source=(http://files.libburnia-project.org/releases/${pkgname}-${pkgver}.tar.gz{,.sig}) +options=('!libtool' '!emptydirs') +md5sums=('25b45b1ccf6921a5bce4e2d88f55a81f' + 'a6749b55ba9ec9dad471e3a2202de390') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install +} + diff --git a/abs/extra/libcanberra/PKGBUILD b/abs/extra/libcanberra/PKGBUILD new file mode 100644 index 0000000..d178cda --- /dev/null +++ b/abs/extra/libcanberra/PKGBUILD @@ -0,0 +1,70 @@ +# $Id: PKGBUILD 160365 2012-06-01 12:58:34Z dreisner $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgbase=libcanberra +pkgname=(libcanberra libcanberra-gstreamer) +pkgver=0.28 +pkgrel=5 +pkgdesc="A small and lightweight implementation of the XDG Sound Theme Specification" +arch=(i686 x86_64) +license=('LGPL') +depends=('libvorbis' 'libltdl' 'alsa-lib' 'tdb') +makedepends=('gtk-doc' 'gstreamer0.10' 'gtk2' 'gtk3') +options=(!emptydirs) +url=http://0pointer.de/lennart/projects/libcanberra +source=(http://0pointer.de/lennart/projects/${pkgbase}/${pkgbase}-${pkgver}.tar.gz + libcanberra.xinit) +sha256sums=('eb1f8b2cabad7f07b6e44d606a91d73e1efca4b46daf92bd553e7222bc68868c' + '68a68d66b7491f99d5aa09fe7c6ef4eb38352a2a8ff7997d184d1cbc5e80c0d3') + +build() { + cd "${srcdir}/${pkgbase}-${pkgver}" + ./configure --sysconfdir=/etc --prefix=/usr --localstatedir=/var \ + --disable-static --with-builtin=dso --enable-null --enable-oss \ + --enable-alsa --enable-gstreamer \ + --with-systemdsystemunitdir=/usr/lib/systemd/system + make +} + +package_libcanberra() { + install=libcanberra.install + optdepends=("$pkgbase-pulse: PulseAudio driver" + "$pkgbase-gstreamer: GStreamer driver") + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -j1 DESTDIR="${pkgdir}" install + rm -f "${pkgdir}"/usr/lib/libcanberra-gtk*.la + rm -f "${pkgdir}"/usr/lib/gtk-{2,3}.0/modules/*.la + + install -d "${pkgdir}/usr/share/gconf" + mv "${pkgdir}/etc/gconf/schemas" "${pkgdir}/usr/share/gconf/" + + install -D "${srcdir}/libcanberra.xinit" \ + "${pkgdir}/etc/X11/xinit/xinitrc.d/40-libcanberra-gtk-module" + + # Split plugins + for _p in gstreamer; do + mkdir $_p-plugin + mv "${pkgdir}"/usr/lib/${pkgbase}-${pkgver}/${pkgbase}-$_p.* $_p-plugin + done +} + +package_libcanberra-pulse() { + pkgdesc="PulseAudio plugin for libcanberra" + depends=("$pkgbase=$pkgver-$pkgrel" 'libpulse') + + cd "${srcdir}/${pkgbase}-${pkgver}" + + mkdir -p "${pkgdir}/usr/lib/${pkgbase}-${pkgver}" + mv pulse-plugin/* "${pkgdir}/usr/lib/${pkgbase}-${pkgver}" +} + +package_libcanberra-gstreamer() { + pkgdesc="GStreamer plugin for libcanberra" + depends=("$pkgbase=$pkgver-$pkgrel" 'gstreamer0.10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + + mkdir -p "${pkgdir}/usr/lib/${pkgbase}-${pkgver}" + mv gstreamer-plugin/* "${pkgdir}/usr/lib/${pkgbase}-${pkgver}" +} diff --git a/abs/extra/libcanberra/__changelog b/abs/extra/libcanberra/__changelog new file mode 100644 index 0000000..4ea3c29 --- /dev/null +++ b/abs/extra/libcanberra/__changelog @@ -0,0 +1 @@ +remove pulse diff --git a/abs/extra/libcanberra/libcanberra.install b/abs/extra/libcanberra/libcanberra.install new file mode 100644 index 0000000..7f50121 --- /dev/null +++ b/abs/extra/libcanberra/libcanberra.install @@ -0,0 +1,23 @@ +pkgname=libcanberra + +post_install() { + if [ -x usr/sbin/gconfpkg ]; then + usr/sbin/gconfpkg --install ${pkgname} + fi +} + +pre_upgrade() { + if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then + pre_remove + fi +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + if [ -x usr/sbin/gconfpkg ]; then + usr/sbin/gconfpkg --uninstall ${pkgname} + fi +} diff --git a/abs/extra/libcanberra/libcanberra.xinit b/abs/extra/libcanberra/libcanberra.xinit new file mode 100644 index 0000000..2511e9f --- /dev/null +++ b/abs/extra/libcanberra/libcanberra.xinit @@ -0,0 +1,17 @@ +#!/bin/bash + +case "$DESKTOP_SESSION" in + gnome) # Done by gnome-settings-daemon + ;; + *) + # Extra check in case DESKTOP_SESSION is not set correctly + if [[ -z $GNOME_DESKTOP_SESSION_ID ]]; then + if [[ -z $GTK_MODULES ]]; then + GTK_MODULES="canberra-gtk-module" + else + GTK_MODULES="$GTK_MODULES:canberra-gtk-module" + fi + export GTK_MODULES + fi + ;; +esac diff --git a/abs/extra/libcap-ng/PKGBUILD b/abs/extra/libcap-ng/PKGBUILD new file mode 100644 index 0000000..1e3544b --- /dev/null +++ b/abs/extra/libcap-ng/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 139367 2011-10-01 18:59:37Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> +# Contributor: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> + +pkgname=libcap-ng +pkgver=0.6.6 +pkgrel=1 +pkgdesc="A library intended to make programming with POSIX capabilities much easier than the traditional libcap" +arch=('i686' 'x86_64') +url="http://people.redhat.com/sgrubb/libcap-ng/" +license=('GPL2' 'LGPL2.1') +depends=('glibc') +options=('!libtool') +source=(http://people.redhat.com/sgrubb/$pkgname/$pkgname-$pkgver.tar.gz) +md5sums=('eb71f967cecb44b4342baac98ef8cb0f') + +build() { + cd $srcdir/$pkgname-$pkgver + + ./configure --prefix=/usr --enable-static=no --with-python=no + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + + make DESTDIR=$pkgdir install +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/libcdio/PKGBUILD b/abs/extra/libcdio/PKGBUILD index 1d4cacf..a532e0d 100644 --- a/abs/extra/libcdio/PKGBUILD +++ b/abs/extra/libcdio/PKGBUILD @@ -1,26 +1,34 @@ -# $Id: PKGBUILD 9268 2008-08-17 05:54:40Z allan $ -# Maintainer: damir <damir@archlinux.org> +# $Id: PKGBUILD 150880 2012-02-23 13:48:06Z allan $ +# Maintainer: # Contributor: damir <damir@archlinux.org> pkgname=libcdio -pkgver=0.82 +pkgver=0.83 pkgrel=1 pkgdesc="GNU Compact Disc Input and Control Library" -arch=("i686" "x86_64") -license=('GPL') +arch=('i686' 'x86_64') +license=('GPL3') url="http://www.gnu.org/software/libcdio/" -depends=('gcc-libs>=4.3.0' 'libcddb' 'ncurses') +depends=('libcddb' 'ncurses') options=('!libtool') -source=(http://ftp.gnu.org/gnu/libcdio/$pkgname-$pkgver.tar.gz) +install=libcdio.install +source=(http://ftp.gnu.org/gnu/libcdio/${pkgname}-${pkgver}.tar.gz{,.sig} + libcdio-0.83-linking.patch) +md5sums=('b9e0f1bccb142e697cd834fe56b6e6fb' + 'a7864a4b572a1e2a28cc0a05aa4a67d3' + '5a7f50209c03d5919d5b932f07871af7') build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr --disable-vcd-info || return 1 - make || return 1 - make DESTDIR=$startdir/pkg install || return 1 - install -m644 libcdio_paranoia.pc libcdio_cdda.pc \ - ${startdir}/pkg/usr/lib/pkgconfig/ || return 1 - rm ${pkgdir}/usr/share/info/dir + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i $srcdir/libcdio-0.83-linking.patch + ./configure --prefix=/usr --disable-vcd-info --enable-cpp-progs + make } -md5sums=('1c29b18e01ab2b966162bc727bf3c360') +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make -j1 DESTDIR="${pkgdir}" install + + sed -i "/LIBCDIO_SOURCE_PATH/s|.*|/* #undef LIBCDIO_SOURCE_PATH */|" \ + $pkgdir/usr/include/cdio/cdio_config.h +} diff --git a/abs/extra/libcdio/libcdio-0.83-linking.patch b/abs/extra/libcdio/libcdio-0.83-linking.patch new file mode 100644 index 0000000..84a0746 --- /dev/null +++ b/abs/extra/libcdio/libcdio-0.83-linking.patch @@ -0,0 +1,22 @@ +diff -Naur libcdio-0.83-orig/example/C++/OO/Makefile.in libcdio-0.83/example/C++/OO/Makefile.in +--- libcdio-0.83-orig/example/C++/OO/Makefile.in 2011-10-27 18:02:31.000000000 +1000 ++++ libcdio-0.83/example/C++/OO/Makefile.in 2012-02-18 11:10:07.369277231 +1000 +@@ -315,15 +315,15 @@ + + isofile2_SOURCES = isofile2.cpp + isofile2_LDADD = $(LIBISO9660PP_LIBS) $(LIBISO9660_LIBS) \ +- $(LIBCDIOPP_LIBS) $(LTLIBICONV) ++ $(LIBCDIOPP_LIBS) $(LIBCDIO_LIBS) $(LTLIBICONV) + + isolist_SOURCES = isolist.cpp + isolist_LDADD = $(LIBISO9660PP_LIBS) $(LIBISO9660_LIBS) \ +- $(LIBCDIOPP_LIBS) $(LTLIBICONV) ++ $(LIBCDIOPP_LIBS) $(LIBCDIO_LIBS) $(LTLIBICONV) + + iso4_SOURCES = iso4.cpp + iso4_LDADD = $(LIBISO9660PP_LIBS) $(LIBISO9660_LIBS) \ +- $(LIBCDIOPP_LIBS) $(LTLIBICONV) ++ $(LIBCDIOPP_LIBS) $(LIBCDIO_LIBS) $(LTLIBICONV) + + mmc1_SOURCES = mmc1.cpp + mmc1_DEPENDENCIES = $(LIBCDIO_DEPS) diff --git a/abs/extra/libcdio/libcdio.install b/abs/extra/libcdio/libcdio.install new file mode 100644 index 0000000..33a4e1a --- /dev/null +++ b/abs/extra/libcdio/libcdio.install @@ -0,0 +1,13 @@ +info_dir=/usr/share/info + +post_install() { + install-info ${info_dir}/libcdio.info.gz ${info_dir}/dir 2> /dev/null +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + install-info --delete ${info_dir}/libcdio.info.gz ${info_dir}/dir 2> /dev/null +} diff --git a/abs/extra/libconcord/PKGBUILD b/abs/extra/libconcord/PKGBUILD deleted file mode 100644 index a4b4e2e..0000000 --- a/abs/extra/libconcord/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# Maintainer: Sven Klomp <mail@klomp.eu> -# Contributor: Mattheus Happe <mhappe@gmail.com> - -pkgname=libconcord -_pkgsrcname=concordance -pkgver=0.23 -pkgrel=1 -pkgdesc="Concordance's core functionality contained in a shared library" -url="http://www.phildev.net/harmony/index.shtml" -license=("GPL3") -arch=(i686 x86_64) -depends=('libusb') -optdepends=('udev: use libconcord as non-root user') -source=("http://downloads.sourceforge.net/project/${_pkgsrcname}/${_pkgsrcname}/${pkgver}/${_pkgsrcname}-${pkgver}.tar.bz2") -md5sums=('d7400d5b351b195b63adfafae68be3d8') - - -build() { - cd ${srcdir}/${_pkgsrcname}-${pkgver}/libconcord - ./configure --prefix=/usr - make || return 1 - make udev || return 1 -} - -package() { - cd ${srcdir}/${_pkgsrcname}-${pkgver}/libconcord - make prefix=${pkgdir}/usr install || return 1 - make prefix=${pkgdir}/ install_udev || return 1 -}
\ No newline at end of file diff --git a/abs/extra/libconfig/PKGBUILD b/abs/extra/libconfig/PKGBUILD new file mode 100644 index 0000000..fe7ac1e --- /dev/null +++ b/abs/extra/libconfig/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 55397 2011-09-11 21:15:58Z spupykin $ +# Maintainer: Ray Rashif <schiv@archlinux.org> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: see .contrib + +pkgname=libconfig +pkgver=1.4.8 +pkgrel=1 +pkgdesc="C/C++ Configuration File Library" +arch=('i686' 'x86_64') +url="http://hyperrealm.com/libconfig/libconfig.html" +license=('LGPL') +depends=('gcc-libs' 'texinfo') +install=$pkgname.install +options=('!libtool' '!emptydirs' 'zipman') +source=("http://www.hyperrealm.com/libconfig/$pkgname-$pkgver.tar.gz") +md5sums=('36788da452e9fcfc8efb7661ef5d31ef') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + rm "$pkgdir/usr/share/info/dir" +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/libconfig/libconfig.install b/abs/extra/libconfig/libconfig.install new file mode 100644 index 0000000..c03d5f7 --- /dev/null +++ b/abs/extra/libconfig/libconfig.install @@ -0,0 +1,18 @@ +infodir=/usr/share/info +filelist=(libconfig.info.gz) + +post_install() { + for file in ${filelist[@]}; do + install-info $infodir/$file $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + for file in ${filelist[@]}; do + install-info --delete $infodir/$file $infodir/dir 2> /dev/null + done +} diff --git a/abs/extra/libdvbpsi/PKGBUILD b/abs/extra/libdvbpsi/PKGBUILD deleted file mode 100644 index 77152f0..0000000 --- a/abs/extra/libdvbpsi/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 80128 2010-05-12 16:41:47Z andrea $ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Gilles CHAUVIN <gcnweb@gmail.com> - -pkgname=libdvbpsi -pkgver=0.1.7 -pkgrel=1 -pkgdesc="A library designed for decoding and generation of MPEG TS and DVB PSI tables" -arch=('i686' 'x86_64') -license=('GPL') -depends=('glibc') -options=('!libtool') -replaces=('libdvbpsi4' 'libdvbpsi5') -conflicts=('libdvbpsi4' 'libdvbpsi5') -url="http://developers.videolan.org/libdvbpsi/" -source=(http://download.videolan.org/pub/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('af419575719e356b908b0c6946499052') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr - make || return 1 -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make prefix="${pkgdir}/usr" install || return 1 -} diff --git a/abs/extra/libdvdcss/PKGBUILD b/abs/extra/libdvdcss/PKGBUILD index 80772fa..c6b1807 100644 --- a/abs/extra/libdvdcss/PKGBUILD +++ b/abs/extra/libdvdcss/PKGBUILD @@ -1,24 +1,27 @@ -# $Id: PKGBUILD 37036 2009-04-30 04:50:40Z eric $ -# Maintainer: arjan <arjan@archlinux.org> +# $Id: PKGBUILD 160018 2012-05-28 02:15:20Z eric $ +# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> +# Contributor: arjan <arjan@archlinux.org> # Contributor Sarah Hay <sarahhay@mb.sympatico.ca> pkgname=libdvdcss -pkgver=1.2.10 -pkgrel=1.1 -pkgdesc="libdvdcss is a cross-platform library for transparent DVD device access with on-the-fly CSS decryption." +pkgver=1.2.12 +pkgrel=1 +pkgdesc="A portable abstraction library for DVD decryption" +url="http://www.videolan.org/libdvdcss" arch=('i686' 'x86_64') license=('GPL') depends=('glibc') options=('!libtool') -source=(http://download.videolan.org/pub/$pkgname/$pkgver/$pkgname-$pkgver.tar.bz2) -md5sums=('ebd5370b79ac5a83e5c61b24a214cf74') -url="http://www.videolan.org/libdvdcss/" - +source=(http://download.videolan.org/pub/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2) +md5sums=('2218a193900e3203aa10dc24cdf54275') build() { - cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR=$pkgdir install || return 1 + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr + make } +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="$pkgdir" install +} diff --git a/abs/extra/libdvdnav/PKGBUILD b/abs/extra/libdvdnav/PKGBUILD deleted file mode 100644 index 67c56e4..0000000 --- a/abs/extra/libdvdnav/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 69820 2010-02-22 22:23:44Z giovanni $ -# Maintainer: arjan <arjan@archlinux.org> -# contributor Sarah Hay <sarahhay@mb.sympatico.ca> - -pkgname=libdvdnav -pkgver=4.1.3 -pkgrel=2 -pkgdesc="The library for xine-dvdnav plugin." -arch=(i686 x86_64) -license=('GPL') -url="http://www.mplayerhq.hu/MPlayer/releases/dvdnav/" -depends=('libdvdread>=4.1.3') -options=(!libtool) -source=(http://www.mplayerhq.hu/MPlayer/releases/dvdnav/${pkgname}-${pkgver}.tar.bz2 - deadlock.patch) -md5sums=('d62383c45b28816771e283515f2c27fa' - '864529165a1136ae4c1ccbc7b43cdb1a') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - patch -Np1 -i ${srcdir}/deadlock.patch || return 1 - - ./autogen.sh --prefix=/usr || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} - -md5sums=('d62383c45b28816771e283515f2c27fa' - 'd26d9ab9d705e4e3fa16e0592ad33c79') diff --git a/abs/extra/libdvdnav/deadlock.patch b/abs/extra/libdvdnav/deadlock.patch deleted file mode 100644 index 2a58240..0000000 --- a/abs/extra/libdvdnav/deadlock.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- a/src/dvdnav.c 2009-11-08 16:58:25.000000000 +0300 -+++ b/src/dvdnav.c 2009-11-08 16:58:52.000000000 +0300 -@@ -180,12 +180,13 @@ - pthread_mutex_unlock(&this->vm_lock); - return DVDNAV_STATUS_ERR; - } -+ pthread_mutex_unlock(&this->vm_lock); -+ - #ifdef LOG_DEBUG - fprintf(MSG_OUT, "libdvdnav: clearing dvdnav\n"); - #endif - result = dvdnav_clear(this); - -- pthread_mutex_unlock(&this->vm_lock); - return result; - } - diff --git a/abs/extra/libebml/PKGBUILD b/abs/extra/libebml/PKGBUILD index 5ea5a45..7302de3 100644 --- a/abs/extra/libebml/PKGBUILD +++ b/abs/extra/libebml/PKGBUILD @@ -1,23 +1,26 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: damir <damir@archlinux.org> +# $Id: PKGBUILD 143796 2011-11-29 12:02:45Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: 03/08/04 <lefungus@altern.org> pkgname=libebml pkgver=1.2.2 -pkgrel=1 +pkgrel=2 pkgdesc="Extensible Binary Meta Language library" arch=('i686' 'x86_64') url="http://dl.matroska.org/downloads/libebml/" -depends=('gcc-libs') license=('LGPL') -source=(${url}/${pkgname}-${pkgver}.tar.bz2) +depends=('gcc-libs') +source=("http://dl.matroska.org/downloads/${pkgname}/${pkgname}-${pkgver}.tar.bz2") +md5sums=('726cc2bd1a525929ff35ff9854c0ebab') build() { - cd ${srcdir}/${pkgname}-${pkgver}/make/linux - make || return 1 + cd "${srcdir}/${pkgname}-${pkgver}/make/linux" + + make } + package() { - cd ${srcdir}/${pkgname}-${pkgver}/make/linux - make prefix=${pkgdir}/usr install + cd "${srcdir}/${pkgname}-${pkgver}/make/linux" + + make prefix="${pkgdir}/usr" install } -md5sums=('726cc2bd1a525929ff35ff9854c0ebab') diff --git a/abs/extra/libffado/PKGBUILD b/abs/extra/libffado/PKGBUILD index 4111264..d1a0915 100644 --- a/abs/extra/libffado/PKGBUILD +++ b/abs/extra/libffado/PKGBUILD @@ -1,59 +1,59 @@ -# $Id: PKGBUILD 96817 2010-10-24 22:17:33Z schiv $ -# Maintainer: Ray Rashif <schivmeister@gmail.com> +# $Id: PKGBUILD 168113 2012-10-06 05:43:33Z schiv $ +# Maintainer: Ray Rashif <schiv@archlinux.org> # Contributor: galiyosha@gmail.com # Contributor: Jon Kristian Nilsen <jokr.nilsen@gmail.com> pkgname=libffado -pkgver=2.0.1 -pkgrel=2 +pkgver=2.1.0 +pkgrel=3 pkgdesc="Driver for FireWire audio devices" arch=('i686' 'x86_64') url="http://www.ffado.org/" license=('GPL') -depends=('libiec61883' 'libavc1394' 'libsigc++' - 'libxml++' 'alsa-lib' 'dbus') -makedepends=('scons' 'pyqt') -optdepends=('pyqt: mixer applet') +depends=('libiec61883' 'libavc1394' 'dbus-c++' + 'libxml++' 'alsa-lib' 'libsigc++' 'libconfig') +makedepends=('scons' 'subversion' 'python2-pyqt') +optdepends=('python2: ffado-diag' + 'python2-pyqt: mixer applet') provides=('ffado') -source=(http://www.ffado.org/files/$pkgname-$pkgver.tar.gz) -md5sums=('786f31facd417e6207e429f50af0e15e') +source=("http://www.ffado.org/files/$pkgname-$pkgver.tgz" + 'python2-qt.patch') +md5sums=('26bce2be0b9c1fa4e614f2f494edf388' + '10aa837f5521da213caa93e1ddc58c0e') + +_scons-conf() { + scons DEBUG=False \ + PREFIX=/usr \ + MANDIR=/usr/share/man \ + UDEVDIR=/usr/lib/udev/rules.d \ + COMPILE_FLAGS="$CFLAGS" $@ +} build() { cd "$srcdir/$pkgname-$pkgver" - # hack to use CFLAGS without optimising - sed -i 's/-O2//g' SConstruct + # python2 fix + patch -Np1 -i "$srcdir/python2-qt.patch" - if [ "$CARCH" = "x86_64" ]; then - sed -i "s/-m64/-m64 $CFLAGS/g" SConstruct + # build! + if [ "$CARCH" = 'x86_64' ]; then + _scons-conf ENABLE_OPTIMIZATIONS=True else - sed -i "s/-m32/-m32 $CFLAGS/g" SConstruct + _scons-conf fi - - # python2 fix - sed -i 's:python $SOURCE:python2 $SOURCE:' SConstruct - sed -i 's:python support/tools:python2 support/tools:' \ - support/tools/SConscript - - scons PREFIX=/usr #ENABLE_OPTIMIZATIONS=True } package() { cd "$srcdir/$pkgname-$pkgver" - scons DESTDIR="$pkgdir/" WILL_DEAL_WITH_XDG_MYSELF="True" install - - # python2 fix - for i in $(grep '^#!.*bin.*python' -R "$pkgdir" | sed 's/:.*//'); do - sed -i 's:^#!.*bin.*python:#!/usr/bin/python2:' "$i" - done + scons DESTDIR="$pkgdir" WILL_DEAL_WITH_XDG_MYSELF="True" install # desktop files & icons install -Dm644 support/xdg/ffado.org-ffadomixer.desktop \ "$pkgdir/usr/share/applications/ffadomixer.desktop" install -Dm644 support/xdg/hi64-apps-ffado.png \ - "$pkgdir/usr/share/pixmaps/$pkgname.png" + "$pkgdir/usr/share/pixmaps/$pkgname.png" } # vim:set ts=2 sw=2 et: diff --git a/abs/extra/libffado/python2-qt.patch b/abs/extra/libffado/python2-qt.patch new file mode 100644 index 0000000..042aa26 --- /dev/null +++ b/abs/extra/libffado/python2-qt.patch @@ -0,0 +1,246 @@ +diff -baur libffado-2.1.0.orig/SConstruct libffado-2.1.0/SConstruct +--- libffado-2.1.0.orig/SConstruct 2012-09-19 14:18:53.827448582 +0800 ++++ libffado-2.1.0/SConstruct 2012-09-19 14:20:01.670414379 +0800 +@@ -1,4 +1,4 @@ +-#! /usr/bin/python ++#!/usr/bin/python2 + # -*- coding: utf-8 -*- + # + # Copyright (C) 2007, 2008, 2010 Arnold Krille +@@ -134,7 +134,7 @@ + + def CheckForPyModule( context, module ): + context.Message( "Checking for the python module '" + module + "' " ) +- ret = context.TryAction( "python $SOURCE", "import %s" % module, ".py" ) ++ ret = context.TryAction( "python2 $SOURCE", "import %s" % module, ".py" ) + context.Result( ret[0] ) + return ret[0] + +@@ -351,7 +351,7 @@ + + # PyQT checks + build_mixer = False +-if conf.CheckForApp( 'which pyuic4' ) and conf.CheckForPyModule( 'dbus' ) and conf.CheckForPyModule( 'PyQt4' ) and conf.CheckForPyModule( 'dbus.mainloop.qt' ): ++if conf.CheckForApp( 'which python2-pyuic4' ) and conf.CheckForPyModule( 'dbus' ) and conf.CheckForPyModule( 'PyQt4' ) and conf.CheckForPyModule( 'dbus.mainloop.qt' ): + env['PYUIC4'] = True + build_mixer = True + +diff -baur libffado-2.1.0.orig/admin/dbus.py libffado-2.1.0/admin/dbus.py +--- libffado-2.1.0.orig/admin/dbus.py 2012-09-19 14:18:53.857448419 +0800 ++++ libffado-2.1.0/admin/dbus.py 2012-09-19 14:19:02.957399122 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2007-2008 Arnold Krille + # Copyright (C) 2007-2008 Pieter Palmers +diff -baur libffado-2.1.0.orig/admin/doxygen.py libffado-2.1.0/admin/doxygen.py +--- libffado-2.1.0.orig/admin/doxygen.py 2012-09-19 14:18:53.857448419 +0800 ++++ libffado-2.1.0/admin/doxygen.py 2012-09-19 14:19:02.957399122 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2007-2008 Arnold Krille + # +diff -baur libffado-2.1.0.orig/admin/pkgconfig.py libffado-2.1.0/admin/pkgconfig.py +--- libffado-2.1.0.orig/admin/pkgconfig.py 2012-09-19 14:18:53.857448419 +0800 ++++ libffado-2.1.0/admin/pkgconfig.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2007-2008 Arnold Krille + # +diff -baur libffado-2.1.0.orig/admin/pyuic.py libffado-2.1.0/admin/pyuic.py +--- libffado-2.1.0.orig/admin/pyuic.py 2012-09-19 14:18:53.857448419 +0800 ++++ libffado-2.1.0/admin/pyuic.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2007-2008 Arnold Krille + # +diff -baur libffado-2.1.0.orig/admin/pyuic4.py libffado-2.1.0/admin/pyuic4.py +--- libffado-2.1.0.orig/admin/pyuic4.py 2012-09-19 14:18:53.857448419 +0800 ++++ libffado-2.1.0/admin/pyuic4.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2007-2008 Arnold Krille + # +@@ -21,10 +21,8 @@ + # along with this program. If not, see <http://www.gnu.org/licenses/>. + # + +-import imp +- + def pyuic4_action( target, source, env ): +- env.Execute( "pyuic4 " + str( source[0] ) + " > " + str( target[0] ) ) ++ env.Execute( "python2-pyuic4 " + str( source[0] ) + " > " + str( target[0] ) ) + return 0 + + def pyuic4_string( target, source, env ): +@@ -34,7 +32,7 @@ + context.Message( "Checking for pyuic4 (by checking for the python module pyqtconfig) " ) + ret = True + try: +- imp.find_module( "pyqtconfig" ) ++ import PyQt4.pyqtconfig + except ImportError: + ret = False + context.Result( ret ) +diff -baur libffado-2.1.0.orig/admin/scanreplace.py libffado-2.1.0/admin/scanreplace.py +--- libffado-2.1.0.orig/admin/scanreplace.py 2012-09-19 14:18:53.857448419 +0800 ++++ libffado-2.1.0/admin/scanreplace.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2007-2008 Arnold Krille + # +diff -baur libffado-2.1.0.orig/doc/SConscript libffado-2.1.0/doc/SConscript +--- libffado-2.1.0.orig/doc/SConscript 2012-09-19 14:18:53.857448419 +0800 ++++ libffado-2.1.0/doc/SConscript 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#! /usr/bin/env python ++#!/usr/bin/python2 + + Import( 'env' ) + +diff -baur libffado-2.1.0.orig/support/dbus/SConscript libffado-2.1.0/support/dbus/SConscript +--- libffado-2.1.0.orig/support/dbus/SConscript 2012-09-19 14:18:53.827448582 +0800 ++++ libffado-2.1.0/support/dbus/SConscript 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/bin/env python ++#!/usr/bin/python2 + # + # Copyright (C) 2007,2008,2011 Arnold Krille + # Copyright (C) 2007-2008 Pieter Palmers +diff -baur libffado-2.1.0.orig/support/mixer-qt4/SConscript libffado-2.1.0/support/mixer-qt4/SConscript +--- libffado-2.1.0.orig/support/mixer-qt4/SConscript 2012-09-19 14:18:53.830781898 +0800 ++++ libffado-2.1.0/support/mixer-qt4/SConscript 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2007-2009 Arnold Krille + # Copyright (C) 2007-2008 Pieter Palmers +diff -baur libffado-2.1.0.orig/support/mixer-qt4/ffado/ffadowindow.py libffado-2.1.0/support/mixer-qt4/ffado/ffadowindow.py +--- libffado-2.1.0.orig/support/mixer-qt4/ffado/ffadowindow.py 2012-09-19 14:18:53.830781898 +0800 ++++ libffado-2.1.0/support/mixer-qt4/ffado/ffadowindow.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2005-2008 by Pieter Palmers + # 2007-2009 by Arnold Krille +diff -baur libffado-2.1.0.orig/support/mixer-qt4/ffado-mixer-profiler.in libffado-2.1.0/support/mixer-qt4/ffado-mixer-profiler.in +--- libffado-2.1.0.orig/support/mixer-qt4/ffado-mixer-profiler.in 2012-09-19 14:18:53.830781898 +0800 ++++ libffado-2.1.0/support/mixer-qt4/ffado-mixer-profiler.in 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2005-2009 by Pieter Palmers + # 2007-2009 by Arnold Krille +diff -baur libffado-2.1.0.orig/support/mixer-qt4/ffado-mixer.in libffado-2.1.0/support/mixer-qt4/ffado-mixer.in +--- libffado-2.1.0.orig/support/mixer-qt4/ffado-mixer.in 2012-09-19 14:18:53.834115214 +0800 ++++ libffado-2.1.0/support/mixer-qt4/ffado-mixer.in 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2005-2008 by Pieter Palmers + # 2007-2009 by Arnold Krille +diff -baur libffado-2.1.0.orig/support/tools/SConscript libffado-2.1.0/support/tools/SConscript +--- libffado-2.1.0.orig/support/tools/SConscript 2012-09-19 14:18:53.830781898 +0800 ++++ libffado-2.1.0/support/tools/SConscript 2012-09-19 14:20:51.970141882 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2007-2008 Arnold Krille + # Copyright (C) 2007-2008 Pieter Palmers +@@ -43,7 +43,7 @@ + # For the installation of the stuff + e['pythondir'] = Template( os.path.join( e['sharedir'], 'python' ) ).safe_substitute( e ) + +-e.Command( "static_info.txt", "#/SConstruct", "python support/tools/ffado-diag-static > $TARGET" ) ++e.Command( "static_info.txt", "#/SConstruct", "python2 support/tools/ffado-diag-static > $TARGET" ) + + e.ScanReplace( "ffado-diag.in" ) + +diff -baur libffado-2.1.0.orig/support/tools/ffado-diag-static libffado-2.1.0/support/tools/ffado-diag-static +--- libffado-2.1.0.orig/support/tools/ffado-diag-static 2012-09-19 14:18:53.830781898 +0800 ++++ libffado-2.1.0/support/tools/ffado-diag-static 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + + # +@@ -74,7 +74,7 @@ + # check libraries + print " gcc ............... %s" % get_version_first_line('gcc --version') + print " g++ ............... %s" % get_version_first_line('g++ --version') +- print " PyQt4 (by pyuic4) . %s" % get_version_first_line('pyuic4 --version') ++ print " PyQt4 (by pyuic4) . %s" % get_version_first_line('python2-pyuic4 --version') + print " jackd ............. %s" % get_version_first_line('jackd --version') + print " path ............ %s" % get_command_path('jackd') + print " flags ........... %s" % get_package_flags("jack") +diff -baur libffado-2.1.0.orig/support/tools/ffado-diag.in libffado-2.1.0/support/tools/ffado-diag.in +--- libffado-2.1.0.orig/support/tools/ffado-diag.in 2012-09-19 14:18:53.830781898 +0800 ++++ libffado-2.1.0/support/tools/ffado-diag.in 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + + # +@@ -120,7 +120,7 @@ + print " Prerequisites (dynamic at run-time)..." + print " gcc ............... %s" % get_version_first_line('gcc --version') + print " g++ ............... %s" % get_version_first_line('g++ --version') +- print " PyQt4 (by pyuic4) . %s" % get_version_first_line('pyuic4 --version') ++ print " PyQt4 (by pyuic4) . %s" % get_version_first_line('python2-pyuic4 --version') + print " jackd ............. %s" % get_version_first_line('jackd --version') + print " path ............ %s" % get_command_path('jackd') + print " flags ........... %s" % get_package_flags("jack") +diff -baur libffado-2.1.0.orig/support/tools/ffado-sandbox-install.py libffado-2.1.0/support/tools/ffado-sandbox-install.py +--- libffado-2.1.0.orig/support/tools/ffado-sandbox-install.py 2012-09-19 14:18:53.830781898 +0800 ++++ libffado-2.1.0/support/tools/ffado-sandbox-install.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + + # +diff -baur libffado-2.1.0.orig/support/tools/listirqinfo.py libffado-2.1.0/support/tools/listirqinfo.py +--- libffado-2.1.0.orig/support/tools/listirqinfo.py 2012-09-19 14:18:53.830781898 +0800 ++++ libffado-2.1.0/support/tools/listirqinfo.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + + # +diff -baur libffado-2.1.0.orig/tests/dbus_test.py libffado-2.1.0/tests/dbus_test.py +--- libffado-2.1.0.orig/tests/dbus_test.py 2012-09-19 14:18:53.837448529 +0800 ++++ libffado-2.1.0/tests/dbus_test.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2005-2007 by Pieter Palmers + # 2007-2008 by Arnold Krille +diff -baur libffado-2.1.0.orig/tests/python/test-eap-ctrl.py libffado-2.1.0/tests/python/test-eap-ctrl.py +--- libffado-2.1.0.orig/tests/python/test-eap-ctrl.py 2012-09-19 14:18:53.837448529 +0800 ++++ libffado-2.1.0/tests/python/test-eap-ctrl.py 2012-09-19 14:19:02.957399123 +0800 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python2 + # + # Copyright (C) 2005-2009 by Pieter Palmers + # diff --git a/abs/extra/libffi/PKGBUILD b/abs/extra/libffi/PKGBUILD deleted file mode 100644 index 555f0eb..0000000 --- a/abs/extra/libffi/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 72255 2010-03-13 20:43:14Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libffi -pkgver=3.0.9 -pkgrel=1 -pkgdesc="A portable, high level programming interface to various calling conventions." -arch=('i686' 'x86_64') -license=('MIT') -url="http://sourceware.org/libffi" -depends=('glibc' 'texinfo') -options=('!libtool' 'force') -install=libffi.install -source=(ftp://sourceware.org/pub/libffi/libffi-${pkgver}.tar.gz) -md5sums=('1f300a7a7f975d4046f51c3022fa5ff1') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 - install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1 -} diff --git a/abs/extra/libffi/libffi.install b/abs/extra/libffi/libffi.install deleted file mode 100644 index 151b79b..0000000 --- a/abs/extra/libffi/libffi.install +++ /dev/null @@ -1,18 +0,0 @@ -infodir=/usr/share/info -filelist=(libffi.info.gz) - -post_install() { - for file in ${filelist[@]}; do - install-info $infodir/$file $infodir/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - for file in ${filelist[@]}; do - install-info --delete $infodir/$file $infodir/dir 2> /dev/null - done -} diff --git a/abs/extra/libftdi/PKGBUILD b/abs/extra/libftdi/PKGBUILD index b5a72da..61165b2 100644 --- a/abs/extra/libftdi/PKGBUILD +++ b/abs/extra/libftdi/PKGBUILD @@ -1,19 +1,28 @@ -# Contributor: Bernhard Walle <bernhard.walle@gmx.de> +# $Id: PKGBUILD 153977 2012-03-21 07:09:24Z eric $ +# Contributor: Tobias Powalowski <tpowa@archlinux.org> + pkgname=libftdi -pkgver=0.18 +pkgver=0.20 pkgrel=1 -pkgdesc="Library to program and control the FTDI USB controller" -url="http://www.intra2net.com/de/produkte/opensource/ftdi/" -license="GPL" -depends=(libusb) -arch=(i686 x86_64) -source=(http://www.intra2net.com/de/produkte/opensource/ftdi/TGZ/$pkgname-$pkgver.tar.gz) +pkgdesc="A library to talk to FTDI chips" +arch=('i686' 'x86_64') +url="http://www.intra2net.com/en/developer/libftdi/download.php" +license=('GPL2' 'LGPL2.1') +depends=('libusb-compat' 'gcc-libs') +makedepends=('boost') +options=('!libtool') +source=(http://www.intra2net.com/en/developer/libftdi/download/$pkgname-$pkgver.tar.gz{,.sig}) +sha1sums=('4bc6ce70c98a170ada303fbd00b8428d8a2c1aa2' + '807d145147c9bee08b4cea4d7ca82ccaf1330f02') build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr --sysconfdir=/etc + cd "$srcdir/$pkgname-$pkgver" + sed -i '/no-install/d' examples/Makefile.in + ./configure --prefix=/usr make - make DESTDIR=$startdir/pkg install } -# :mode=shellscript: -md5sums=('916f65fa68d154621fc0cf1f405f2726') + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/abs/extra/libgda/Changelog b/abs/extra/libgda/Changelog deleted file mode 100644 index 88ba942..0000000 --- a/abs/extra/libgda/Changelog +++ /dev/null @@ -1,2 +0,0 @@ -4.0.2 5/2/09 -Added path for jni headers in configure. diff --git a/abs/extra/libgda/PKGBUILD b/abs/extra/libgda/PKGBUILD deleted file mode 100644 index 72c9404..0000000 --- a/abs/extra/libgda/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 99473 2010-11-14 19:52:55Z ibiru $ -# Maintainer: tobias <tobias@archlinux.org> -# Contributor: Tobias Kieslich <tobias@justdreams.de> - -pkgname=libgda -pkgver=4.2.1 -pkgrel=2 -pkgdesc="data abstraction layer; with mysql, pgsql, xml, sqlite providers" -arch=('i686' 'x86_64') -license=('GPL') -depends=('glib2>=2.26.0' 'libxslt' 'db>=5.1.19' 'ncurses>=5.7' 'libsoup>=2.32.0' 'libmysqlclient>=5.1.59' 'postgresql-libs>=9.0.1') -makedepends=('intltool') -options=('!libtool') -url="http://www.gnome-db.org" -source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/4.2/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('d485d24fb19bd95faad196c8ed22b2cb8f9e9275d907f880a3f8f079f6bf40f7') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - sed -i -e 's/python/python2/' libgda-report/RML/trml*/trml*.py - ./configure --prefix=/usr --sysconfdir=/etc \ - --with-bdb=/usr --with-bdb-libdir-name=lib \ - --disable-static - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/libgda/bdb43.patch b/abs/extra/libgda/bdb43.patch deleted file mode 100644 index 3fe6e93..0000000 --- a/abs/extra/libgda/bdb43.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -r -u libgda-1.2.0.old/providers/bdb/gda-bdb-recordset.c libgda-1.2.0/providers/bdb/gda-bdb-recordset.c ---- libgda-1.2.0.old/providers/bdb/gda-bdb-recordset.c 2003-12-17 11:27:02.000000000 +0000 -+++ libgda-1.2.0/providers/bdb/gda-bdb-recordset.c 2005-02-19 15:43:12.000000000 +0000 -@@ -227,10 +227,14 @@ - - /* get the number of records in the database */ - ret = dbp->stat (dbp, -+#if BDB_VERSION > 40300 -+ NULL, -+#endif - &statp, - #if BDB_VERSION < 40000 - NULL, - #endif -+ - 0); - if (ret != 0) { - gda_connection_add_error (cnc, gda_bdb_make_error (ret)); diff --git a/abs/extra/libgda/libgda.install b/abs/extra/libgda/libgda.install deleted file mode 100644 index 6420004..0000000 --- a/abs/extra/libgda/libgda.install +++ /dev/null @@ -1,16 +0,0 @@ -post_install() { - scrollkeeper-update -q -p var/lib/scrollkeeper -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - post_install $1 -} - -op=$1 -shift - -$op $* diff --git a/abs/extra/libgdiplus/PKGBUILD b/abs/extra/libgdiplus/PKGBUILD index d933fc1..84e3f45 100644 --- a/abs/extra/libgdiplus/PKGBUILD +++ b/abs/extra/libgdiplus/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 95327 2010-10-18 17:52:42Z daniel $ +# $Id: PKGBUILD 148818 2012-02-05 11:51:42Z ibiru $ # Maintainer: Daniel Isenmann <daniel@archlinux.org> pkgname=libgdiplus -pkgver=2.8 +pkgver=2.10 pkgrel=2 pkgdesc="An Open Source Implementation of the GDI+ API" arch=(i686 x86_64) @@ -11,12 +11,19 @@ url="http://www.mono-project.com" depends=('libtiff>=3.9.2-2' 'cairo>=1.8.10' 'giflib' 'glib2>=2.24.0' 'libexif') makedepends=('pkgconfig') options=('!libtool') -source=(http://ftp.novell.com/pub/mono/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('4fd70e5ab7847574c20453c349bc4c97') +source=(http://download.mono-project.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2 libpng15.patch) +md5sums=('451966e8f637e3a1f02d1d30f900255d' + 'a2d143676bbaceeb88b4c34069e93986') build() { cd "${srcdir}/${pkgname}-${pkgver}" + patch -p0 <../libpng15.patch ./configure --prefix=/usr --with-cairo=system || return 1 + make || return 1 +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install || return 1 } diff --git a/abs/extra/libgdiplus/__changelog b/abs/extra/libgdiplus/__changelog deleted file mode 100644 index aecc073..0000000 --- a/abs/extra/libgdiplus/__changelog +++ /dev/null @@ -1 +0,0 @@ -update to 2.8 diff --git a/abs/extra/libgdiplus/libpng15.patch b/abs/extra/libgdiplus/libpng15.patch new file mode 100644 index 0000000..31a1c01 --- /dev/null +++ b/abs/extra/libgdiplus/libpng15.patch @@ -0,0 +1,164 @@ +$NetBSD: patch-aa,v 1.8 2011/01/21 10:21:51 wiz Exp $ + +Fix build with png-1.5. + +--- src/pngcodec.c.orig 2010-11-03 16:52:54.000000000 +0000 ++++ src/pngcodec.c +@@ -116,10 +116,15 @@ gdip_load_png_properties (png_structp pn + bitmap_data->dpi_horz = png_get_x_pixels_per_inch(png_ptr, info_ptr); + bitmap_data->dpi_vert = png_get_y_pixels_per_inch(png_ptr, info_ptr); + #elif defined(PNG_pHYs_SUPPORTED) +- if ((info_ptr->valid & PNG_INFO_pHYs) && (info_ptr->phys_unit_type == PNG_RESOLUTION_METER)) { +- bitmap_data->image_flags |= ImageFlagsHasRealDPI; +- bitmap_data->dpi_horz = info_ptr->x_pixels_per_unit * 0.0254; +- bitmap_data->dpi_vert = info_ptr->y_pixels_per_unit * 0.0254; ++ if (png_get_valid (png_ptr, info_ptr, PNG_INFO_pHYs)) { ++ png_uint_32 res_x, res_y; ++ int unit_type; ++ png_get_pHYs (png_ptr, info_ptr, &res_x, &res_y, &unit_type); ++ if (unit_type == PNG_RESOLUTION_METER) { ++ bitmap_data->image_flags |= ImageFlagsHasRealDPI; ++ bitmap_data->dpi_horz = res_x * 0.0254; ++ bitmap_data->dpi_vert = res_y * 0.0254; ++ } + } + #endif + /* default to screen resolution (if nothing was provided or available) */ +@@ -130,7 +135,7 @@ gdip_load_png_properties (png_structp pn + #if defined(PNG_iCCP_SUPPORTED) + { + png_charp name; +- png_charp profile; ++ png_bytep profile; + png_uint_32 proflen; + int compression_type; + +@@ -292,6 +297,11 @@ gdip_load_png_image_from_file_or_stream + ImageFlags colourspace_flag; + int i; + int j; ++ png_colorp png_palette; ++ int png_num_palette; ++ png_bytep trans_alpha; ++ int num_trans; ++ png_color_16p trans_color; + + width = png_get_image_width (png_ptr, info_ptr); + height = png_get_image_height (png_ptr, info_ptr); +@@ -309,6 +319,8 @@ gdip_load_png_image_from_file_or_stream + } + + /* Copy palette. */ ++ png_get_PLTE (png_ptr, info_ptr, &png_palette, &png_num_palette); ++ + num_colours = 1 << bit_depth; + + if (png_get_color_type (png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY) { +@@ -321,8 +333,8 @@ gdip_load_png_image_from_file_or_stream + colourspace_flag = ImageFlagsColorSpaceRGB; + + palette_entries = num_colours; +- if (palette_entries > info_ptr->num_palette) { +- palette_entries = info_ptr->num_palette; ++ if (palette_entries > png_num_palette) { ++ palette_entries = png_num_palette; + } + + palette = GdipAlloc (sizeof(ColorPalette) + (num_colours - 1) * sizeof(ARGB)); +@@ -331,29 +343,30 @@ gdip_load_png_image_from_file_or_stream + + for (i=0; i < palette_entries; i++) { + set_pixel_bgra (&palette->Entries[i], 0, +- info_ptr->palette[i].blue, +- info_ptr->palette[i].green, +- info_ptr->palette[i].red, ++ png_palette[i].blue, ++ png_palette[i].green, ++ png_palette[i].red, + 0xFF); /* alpha */ + } + } + ++ png_get_tRNS (png_ptr, info_ptr, &trans_alpha, &num_trans, &trans_color); + /* Make sure transparency is respected. */ +- if (info_ptr->num_trans > 0) { ++ if (num_trans > 0) { + palette->Flags |= PaletteFlagsHasAlpha; + colourspace_flag |= ImageFlagsHasAlpha; + +- if (info_ptr->num_trans > info_ptr->num_palette) { +- info_ptr->num_trans = info_ptr->num_palette; ++ if (num_trans > png_num_palette) { ++ num_trans = png_num_palette; + } + +- for (i=0; i < info_ptr->num_trans; i++) { ++ for (i=0; i < num_trans; i++) { + set_pixel_bgra(&palette->Entries[i], 0, +- info_ptr->palette[i].blue, +- info_ptr->palette[i].green, +- info_ptr->palette[i].red, ++ png_palette[i].blue, ++ png_palette[i].green, ++ png_palette[i].red, + #if PNG_LIBPNG_VER > 10399 +- info_ptr->trans_alpha [i]); /* alpha */ ++ trans_alpha [i]); /* alpha */ + #else + info_ptr->trans[i]); /* alpha */ + #endif +@@ -398,6 +411,8 @@ gdip_load_png_image_from_file_or_stream + BYTE bit_depth; + int stride; + int interlace; ++ png_colorp png_palette; ++ int png_num_palette; + png_bytep *row_pointers; + BYTE *rawptr; + int i, j; +@@ -490,32 +505,33 @@ gdip_load_png_image_from_file_or_stream + png_byte palette = 0; + png_byte pix = *rowp++; + ++ png_get_PLTE (png_ptr, info_ptr, &png_palette, &png_num_palette); + palette = (pix >> 6) & 0x03; + set_pixel_bgra (rawptr, 0, +- info_ptr->palette[palette].blue, +- info_ptr->palette[palette].green, +- info_ptr->palette[palette].red, ++ png_palette[palette].blue, ++ png_palette[palette].green, ++ png_palette[palette].red, + 0xFF); /* alpha */ + + palette = (pix >> 4) & 0x03; + set_pixel_bgra (rawptr, 4, +- info_ptr->palette[palette].blue, +- info_ptr->palette[palette].green, +- info_ptr->palette[palette].red, ++ png_palette[palette].blue, ++ png_palette[palette].green, ++ png_palette[palette].red, + 0xFF); /* alpha */ + + palette = (pix >> 2) & 0x03; + set_pixel_bgra (rawptr, 8, +- info_ptr->palette[palette].blue, +- info_ptr->palette[palette].green, +- info_ptr->palette[palette].red, ++ png_palette[palette].blue, ++ png_palette[palette].green, ++ png_palette[palette].red, + 0xFF); /* alpha */ + + palette = pix & 0x03; + set_pixel_bgra (rawptr, 12, +- info_ptr->palette[palette].blue, +- info_ptr->palette[palette].green, +- info_ptr->palette[palette].red, ++ png_palette[palette].blue, ++ png_palette[palette].green, ++ png_palette[palette].red, + 0xFF); /* alpha */ + rawptr += 16; + } diff --git a/abs/extra/libgksu/PKGBUILD b/abs/extra/libgksu/PKGBUILD deleted file mode 100644 index b4414d5..0000000 --- a/abs/extra/libgksu/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 90625 2010-09-14 09:37:47Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libgksu -pkgver=2.0.12 -pkgrel=3 -pkgdesc="gksu authorization library" -arch=(i686 x86_64) -url="http://www.nongnu.org/gksu/index.html" -license=(GPL) -depends=('libgnome-keyring>=2.30.1' 'libgtop>=2.28.1' 'startup-notification>=0.10' 'gconf>=2.28.1') -makedepends=('gtk-doc' 'pkgconfig' 'intltool') -options=('!libtool' '!emptydirs') -install=libgksu.install -source=(http://people.debian.org/~kov/gksu/${pkgname}-${pkgver}.tar.gz - libgksu-2.0.12-revert-forkpty.patch) -md5sums=('c7154c8806f791c10e7626ff123049d3' - 'aebbe57e5286c654e27cf714cf3b704a') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/libgksu-2.0.12-revert-forkpty.patch" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static - make - make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install - rm -f ${pkgdir}/usr/lib/*.a - install -m755 -d "${pkgdir}/usr/share/gconf/schemas" - gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain libgksu ${pkgdir}/etc/gconf/schemas/*.schemas - rm -f ${pkgdir}/etc/gconf/schemas/*.schemas -} diff --git a/abs/extra/libgksu/libgksu-2.0.12-revert-forkpty.patch b/abs/extra/libgksu/libgksu-2.0.12-revert-forkpty.patch deleted file mode 100644 index 2c3a8cc..0000000 --- a/abs/extra/libgksu/libgksu-2.0.12-revert-forkpty.patch +++ /dev/null @@ -1,359 +0,0 @@ -diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN libgksu-2.0.12.orig/libgksu/libgksu.c libgksu-2.0.12/libgksu/libgksu.c ---- libgksu-2.0.12.orig/libgksu/libgksu.c 2009-06-29 13:48:24.000000000 -0400 -+++ libgksu-2.0.12/libgksu/libgksu.c 2010-01-12 07:32:10.450657456 -0500 -@@ -1,7 +1,6 @@ - /* - * Gksu -- a library providing access to su functionality - * Copyright (C) 2004-2009 Gustavo Noronha Silva -- * Portions Copyright (C) 2009 VMware, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public -@@ -56,9 +55,6 @@ - static void - gksu_context_launch_complete (GksuContext *context); - --static void --read_line (int fd, gchar *buffer, int n); -- - GType - gksu_error_get_type (void) - { -@@ -2009,8 +2005,6 @@ gksu_su_fuller (GksuContext *context, - for (i = 0 ; cmd[i] != NULL ; i++) - g_free (cmd[i]); - g_free(cmd); -- -- _exit(1); - } - else if (pid == -1) - { -@@ -2125,10 +2119,10 @@ gksu_su_fuller (GksuContext *context, - /* drop the \n echoed on password entry if su did request - a password */ - if (password_needed) -- read_line (fdpty, buf, 255); -+ read (fdpty, buf, 255); - if (context->debug) - fprintf (stderr, "DEBUG (run:post-after-pass) buf: -%s-\n", buf); -- read_line (fdpty, buf, 255); -+ read (fdpty, buf, 255); - if (context->debug) - fprintf (stderr, "DEBUG (run:post-after-pass) buf: -%s-\n", buf); - } -@@ -2142,9 +2136,7 @@ gksu_su_fuller (GksuContext *context, - { - int retval = 0; - -- /* Red Hat's su shows the full path to su in its error messages. */ -- if (!strncmp (buf, "su:", 3) || -- !strncmp (buf, "/bin/su:", 7)) -+ if (!strncmp (buf, "su", 2)) - { - gchar **strings; - -@@ -2155,11 +2147,7 @@ gksu_su_fuller (GksuContext *context, - } - - strings = g_strsplit (buf, ":", 2); -- -- /* Red Hat and Fedora use 'incorrect password'. */ -- if (strings[1] && -- (g_str_has_prefix(strings[1], " Authentication failure") || -- g_str_has_prefix(strings[1], " incorrect password"))) -+ if (strings[1] && !strncmp (strings[1], " Authentication failure", 23)) - { - if (used_gnome_keyring) - g_set_error (error, gksu_quark, -@@ -2473,12 +2461,6 @@ gksu_sudo_fuller (GksuContext *context, - { - char **cmd; - char buffer[256] = {0}; -- char *child_stderr = NULL; -- /* This command is used to gain a token */ -- char *const verifycmd[] = -- { -- "/usr/bin/sudo", "-p", "GNOME_SUDO_PASS", "-v", NULL -- }; - int argcount = 8; - int i, j; - -@@ -2489,8 +2471,9 @@ gksu_sudo_fuller (GksuContext *context, - - pid_t pid; - int status; -- FILE *fdfile = NULL; -- int fdpty = -1; -+ FILE *infile, *outfile; -+ int parent_pipe[2]; /* For talking to the parent */ -+ int child_pipe[2]; /* For talking to the child */ - - context->sudo_mode = TRUE; - -@@ -2565,10 +2548,6 @@ gksu_sudo_fuller (GksuContext *context, - cmd[argcount] = g_strdup("-S"); - argcount++; - -- /* Make sudo noninteractive (we should already have a token) */ -- cmd[argcount] = g_strdup("-n"); -- argcount++; -- - /* Make sudo use next arg as prompt */ - cmd[argcount] = g_strdup("-p"); - argcount++; -@@ -2647,21 +2626,26 @@ gksu_sudo_fuller (GksuContext *context, - fprintf (stderr, "cmd[%d]: %s\n", i, cmd[i]); - } - -- pid = forkpty(&fdpty, NULL, NULL, NULL); -- if (pid == 0) -+ if ((pipe(parent_pipe)) == -1) - { -- // Child -- setsid(); // make us session leader -- -- execv(verifycmd[0], verifycmd); -+ g_set_error (error, gksu_quark, GKSU_ERROR_PIPE, -+ _("Error creating pipe: %s"), -+ strerror(errno)); -+ sudo_reset_xauth (context, xauth, xauth_env); -+ return FALSE; -+ } - -- g_set_error (error, gksu_quark, GKSU_ERROR_EXEC, -- _("Failed to exec new process: %s"), -+ if ((pipe(child_pipe)) == -1) -+ { -+ g_set_error (error, gksu_quark, GKSU_ERROR_PIPE, -+ _("Error creating pipe: %s"), - strerror(errno)); - sudo_reset_xauth (context, xauth, xauth_env); - return FALSE; - } -- else if (pid == -1) -+ -+ pid = fork(); -+ if (pid == -1) - { - g_set_error (error, gksu_quark, GKSU_ERROR_FORK, - _("Failed to fork new process: %s"), -@@ -2669,26 +2653,56 @@ gksu_sudo_fuller (GksuContext *context, - sudo_reset_xauth (context, xauth, xauth_env); - return FALSE; - } -+ else if (pid == 0) -+ { -+ // Child -+ setsid(); // make us session leader -+ close(child_pipe[1]); -+ dup2(child_pipe[0], STDIN_FILENO); -+ dup2(parent_pipe[1], STDERR_FILENO); - -+ execv(cmd[0], cmd); -+ -+ g_set_error (error, gksu_quark, GKSU_ERROR_EXEC, -+ _("Failed to exec new process: %s"), -+ strerror(errno)); -+ sudo_reset_xauth (context, xauth, xauth_env); -+ return FALSE; -+ } - else - { - gint counter = 0; - gchar *cmdline = NULL; -- struct termios tio; - - // Parent -- fdfile = fdopen(fdpty, "w+"); -+ close(parent_pipe[1]); - -- /* make sure we notice that ECHO is turned off, if it gets -- turned off */ -- tcgetattr (fdpty, &tio); -- for (counter = 0; (tio.c_lflag & ECHO) && counter < 15; counter++) -- { -- usleep (1000); -- tcgetattr (fdpty, &tio); -- } -+ infile = fdopen(parent_pipe[0], "r"); -+ if (!infile) -+ { -+ g_set_error (error, gksu_quark, GKSU_ERROR_PIPE, -+ _("Error opening pipe: %s"), -+ strerror(errno)); -+ sudo_reset_xauth (context, xauth, xauth_env); -+ return FALSE; -+ } - -- fcntl (fdpty, F_SETFL, O_NONBLOCK); -+ outfile = fdopen(child_pipe[1], "w"); -+ if (!outfile) -+ { -+ g_set_error (error, gksu_quark, GKSU_ERROR_PIPE, -+ _("Error opening pipe: %s"), -+ strerror(errno)); -+ sudo_reset_xauth (context, xauth, xauth_env); -+ return FALSE; -+ } -+ -+ /* -+ we are expecting to receive a GNOME_SUDO_PASS -+ if we don't there are two possibilities: an error -+ or a password is not needed -+ */ -+ fcntl (parent_pipe[0], F_SETFL, O_NONBLOCK); - - { /* no matter if we can read, since we're using - O_NONBLOCK; this is just to avoid the prompt -@@ -2697,11 +2711,11 @@ gksu_sudo_fuller (GksuContext *context, - struct timeval tv; - - FD_ZERO(&rfds); -- FD_SET(fdpty, &rfds); -+ FD_SET(parent_pipe[0], &rfds); - tv.tv_sec = 1; - tv.tv_usec = 0; - -- select (fdpty + 1, &rfds, NULL, NULL, &tv); -+ select (parent_pipe[0] + 1, &rfds, NULL, NULL, &tv); - } - - /* Try hard to find the prompt; it may happen that we're -@@ -2713,7 +2727,7 @@ gksu_sudo_fuller (GksuContext *context, - if (strncmp (buffer, "GNOME_SUDO_PASS", 15) == 0) - break; - -- read_line (fdpty, buffer, 256); -+ read_line (parent_pipe[0], buffer, 256); - - if (context->debug) - fprintf (stderr, "buffer: -%s-\n", buffer); -@@ -2747,17 +2761,18 @@ gksu_sudo_fuller (GksuContext *context, - - usleep (1000); - -- write (fdpty, password, strlen(password) + 1); -- write (fdpty, "\n", 1); -+ fprintf (outfile, "%s\n", password); -+ fclose (outfile); - - nullify_password (password); - -- fcntl(fdpty, F_SETFL, fcntl(fdpty, F_GETFL) & ~O_NONBLOCK); -+ /* turn NONBLOCK off */ -+ fcntl(parent_pipe[0], F_SETFL, fcntl(parent_pipe[0], F_GETFL) & ~O_NONBLOCK); - /* ignore the first newline that comes right after sudo receives - the password */ -- fgets (buffer, 255, fdfile); -- /* this is the status we are interested in */ -- fgets (buffer, 255, fdfile); -+ fgets (buffer, 255, infile); -+ /* this is the status we are interessted in */ -+ fgets (buffer, 255, infile); - } - else - { -@@ -2766,7 +2781,7 @@ gksu_sudo_fuller (GksuContext *context, - fprintf (stderr, "No password prompt found; we'll assume we don't need a password.\n"); - - /* turn NONBLOCK off, also if have no prompt */ -- fcntl(fdpty, F_SETFL, fcntl(fdpty, F_GETFL) & ~O_NONBLOCK); -+ fcntl(parent_pipe[0], F_SETFL, fcntl(parent_pipe[0], F_GETFL) & ~O_NONBLOCK); - - should_display = gconf_client_get_bool (context->gconf_client, - BASE_PATH "display-no-pass-info", NULL); -@@ -2785,9 +2800,14 @@ gksu_sudo_fuller (GksuContext *context, - fprintf (stderr, "%s", buffer); - } - -- if (g_str_has_prefix (buffer, "Sorry, try again.")) -+ if (!strcmp (buffer, "Sorry, try again.\n")) - g_set_error (error, gksu_quark, GKSU_ERROR_WRONGPASS, - _("Wrong password.")); -+ else if (!strncmp (buffer, "Sorry, user ", 12)) -+ g_set_error (error, gksu_quark, GKSU_ERROR_NOT_ALLOWED, -+ _("The underlying authorization mechanism (sudo) " -+ "does not allow you to run this program. Contact " -+ "the system administrator.")); - else - { - gchar *haystack = buffer; -@@ -2805,10 +2825,6 @@ gksu_sudo_fuller (GksuContext *context, - } - } - -- /* If we have an error, let's just stop sudo right there. */ -- if (error) -- close(fdpty); -- - cmdline = g_strdup("sudo"); - /* wait for the child process to end or become something other - than sudo */ -@@ -2825,23 +2841,17 @@ gksu_sudo_fuller (GksuContext *context, - if (context->sn_context) - gksu_context_launch_complete (context); - -+ while (read (parent_pipe[0], buffer, 255) > 0) -+ { -+ fprintf (stderr, "%s", buffer); -+ bzero(buffer, 256); -+ } -+ - /* if the process is still active waitpid() on it */ - if (pid_exited != pid) - waitpid(pid, &status, 0); - sudo_reset_xauth (context, xauth, xauth_env); - -- /* -- * Did token acquisition succeed? If so, spawn sudo in -- * non-interactive mode. It should either succeed or die -- * immediately if you're not allowed to run the command. -- */ -- if (WEXITSTATUS(status) == 0) -- { -- g_spawn_sync(NULL, cmd, NULL, 0, NULL, NULL, -- NULL, &child_stderr, &status, -- error); -- } -- - if (exit_status) - { - if (WIFEXITED(status)) { -@@ -2853,13 +2863,6 @@ gksu_sudo_fuller (GksuContext *context, - - if (WEXITSTATUS(status)) - { -- if (g_str_has_prefix(child_stderr, "Sorry, user ")) -- { -- g_set_error (error, gksu_quark, GKSU_ERROR_NOT_ALLOWED, -- _("The underlying authorization mechanism (sudo) " -- "does not allow you to run this program. Contact " -- "the system administrator.")); -- } - if(cmdline) - { - /* sudo already exec()ed something else, don't report -@@ -2868,7 +2871,6 @@ gksu_sudo_fuller (GksuContext *context, - if (!g_str_has_suffix (cmdline, "sudo")) - { - g_free (cmdline); -- g_free (child_stderr); - return FALSE; - } - g_free (cmdline); -@@ -2881,11 +2883,11 @@ gksu_sudo_fuller (GksuContext *context, - } - } - -- fprintf(stderr, child_stderr); -- g_free(child_stderr); -- - /* if error is set we have found an error condition */ -- return (error == NULL); -+ if (error) -+ return FALSE; -+ -+ return TRUE; - } - - /** diff --git a/abs/extra/libgksu/libgksu.install b/abs/extra/libgksu/libgksu.install deleted file mode 100644 index 89cf0cf..0000000 --- a/abs/extra/libgksu/libgksu.install +++ /dev/null @@ -1,17 +0,0 @@ -pkgname=libgksu - -post_install() { - usr/sbin/gconfpkg --install ${pkgname} -} - -pre_upgrade() { - pre_remove -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - usr/sbin/gconfpkg --install ${pkgname} -} diff --git a/abs/extra/libgnome-keyring/PKGBUILD b/abs/extra/libgnome-keyring/PKGBUILD index 58ee490..6a9dff1 100644 --- a/abs/extra/libgnome-keyring/PKGBUILD +++ b/abs/extra/libgnome-keyring/PKGBUILD @@ -1,24 +1,28 @@ -#$Id: PKGBUILD 91799 2010-09-28 06:50:31Z jgc $ +#$Id: PKGBUILD 156896 2012-04-23 09:08:34Z ibiru $ #Maintainer: Jan De Groot <jgc@archlinux.org> pkgname=libgnome-keyring -pkgver=2.32.0 +pkgver=3.4.1 pkgrel=1 pkgdesc="GNOME keyring client library" arch=(i686 x86_64) license=('GPL' 'LGPL') -depends=('dbus-core>=1.2.0' 'libgcrypt>=1.4.6' 'glib2>=2.26.0') -makedepends=('intltool' 'pkgconfig' 'python2' 'gtk-doc') +depends=('dbus-core' 'glib2' 'libgcrypt') +makedepends=('intltool' 'gobject-introspection') options=('!libtool' '!emptydirs') url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('56388c0d81ddfdb57d30e4963c83ecc1c18498aab99395420e0fff69929a0f0c') +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('e74a3e4521767fe5f05cc97cda8a355239567d9763ec628280ede8c2a4a379e8') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "$pkgname-$pkgver" ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static \ --libexecdir=/usr/lib/gnome-keyring make - make -j1 DESTDIR="${pkgdir}" install +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install } diff --git a/abs/extra/libgnome/PKGBUILD b/abs/extra/libgnome/PKGBUILD index 9197e0f..8c5dc71 100644 --- a/abs/extra/libgnome/PKGBUILD +++ b/abs/extra/libgnome/PKGBUILD @@ -1,28 +1,49 @@ -# $Id: PKGBUILD 30321 2009-03-18 21:50:51Z jgc $ +# $Id: PKGBUILD 151073 2012-02-24 17:58:01Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> -pkgname=libgnome -pkgver=2.26.0 -pkgrel=2 -pkgdesc="Common libraries for GNOME" -arch=(i686 x86_64) +pkgbase=libgnome +pkgname=('libgnome' 'libgnome-data') +pkgver=2.32.1 +pkgrel=3 +arch=('i686' 'x86_64') license=('LGPL') -depends=('gnome-vfs>=2.24.1-2' 'esound>=0.2.41' 'libbonobo>=2.24.1') -makedepends=('pkgconfig' 'intltool') +makedepends=('intltool' 'gnome-vfs>=2.24.4' 'libbonobo>=2.32.1' 'gconf>=2.32.3' 'gvfs>=1.8.1' 'libcanberra>=0.28') options=('!libtool' '!emptydirs') url="http://www.gnome.org" -install=libgnome.install -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.26/${pkgname}-${pkgver}.tar.bz2) -md5sums=('a5634fe9ddc54bbb726cbaaa35abc0b9') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2) +sha256sums=('b2c63916866485793b87398266dd7778548c1734923c272a94d84ee011b6f7a4') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgbase}-${pkgver}" + ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static || return 1 - make || return 1 - make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install || return 1 + --localstatedir=/var --disable-static --disable-esd + make +} + +package_libgnome() { + pkgdesc="Common libraries for GNOME" + depends=("libgnome-data=${pkgver}" 'gnome-vfs>=2.24.4' 'libbonobo>=2.32.1' 'gconf>=2.32.3' 'gvfs>=1.8.1' 'libcanberra>=0.28') + + cd "${srcdir}/${pkgbase}-${pkgver}" + + make -C libgnome DESTDIR="${pkgdir}" install + make -C monikers DESTDIR="${pkgdir}" install +} + +package_libgnome-data() { + pkgdesc="Common data from libgnome" + depends=('gconf') + install=libgnome.install + + cd "${srcdir}/${pkgbase}-${pkgver}" + + for dir in doc gnome-data po schemas + do + make -C $dir GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install + done - install -m755 -d "${pkgdir}/usr/share/gconf/schemas" - gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain libgnome-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas || return 1 - rm -f ${pkgdir}/etc/gconf/schemas/*.schemas + install -m755 -d "${pkgdir}/usr/share/gconf/schemas" + gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgbase}.schemas" --domain libgnome-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas + rm -f ${pkgdir}/etc/gconf/schemas/*.schemas } diff --git a/abs/extra/libgnomecanvas/PKGBUILD b/abs/extra/libgnomecanvas/PKGBUILD index 9a5fac2..0fc8f13 100644 --- a/abs/extra/libgnomecanvas/PKGBUILD +++ b/abs/extra/libgnomecanvas/PKGBUILD @@ -1,14 +1,14 @@ -# $Id$ +# $Id: PKGBUILD 148820 2012-02-05 11:51:45Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libgnomecanvas pkgver=2.30.3 -pkgrel=1 +pkgrel=2 pkgdesc="The GNOME Canvas library" arch=(i686 x86_64) license=('LGPL') depends=('libglade>=2.6.4' 'libart-lgpl>=2.3.21') -makedepends=('pkgconfig' 'intltool') +makedepends=('pkg-config' 'intltool') options=('!libtool') url="http://www.gnome.org" source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2) @@ -19,5 +19,9 @@ build() { ./configure --prefix=/usr --disable-static \ --enable-glade make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/libgnomekbd/PKGBUILD b/abs/extra/libgnomekbd/PKGBUILD deleted file mode 100644 index 1740541..0000000 --- a/abs/extra/libgnomekbd/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 91776 2010-09-27 21:05:35Z ibiru $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libgnomekbd -pkgver=2.32.0 -pkgrel=1 -pkgdesc="Gnome keyboard library" -url="http://gswitchit.sourceforge.net" -arch=('i686' 'x86_64') -license=('LGPL') -depends=('libxklavier>=5.0' 'gconf>=2.32.0') -makedepends=('intltool' 'pkg-config') -options=('!libtool' '!emptydirs') -install=libgnomekbd.install -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('ddd52c4cc7d83ad7ef964a1bcb4db87407e65b00ffc3e70c088ca4ee7383d256') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static - make || return 1 -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install - - install -m755 -d "${pkgdir}/usr/share/gconf/schemas" - gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain libgnomekbd ${pkgdir}/etc/gconf/schemas/*.schemas - rm -f ${pkgdir}/etc/gconf/schemas/*.schemas -} diff --git a/abs/extra/libgnomekbd/libgnomekbd.install b/abs/extra/libgnomekbd/libgnomekbd.install deleted file mode 100644 index 9fc9f55..0000000 --- a/abs/extra/libgnomekbd/libgnomekbd.install +++ /dev/null @@ -1,17 +0,0 @@ -pkgname=libgnomekbd - -post_install() { - usr/sbin/gconfpkg --install ${pkgname} -} - -pre_upgrade() { - pre_remove $1 -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - usr/sbin/gconfpkg --uninstall ${pkgname} -} diff --git a/abs/extra/libgnomeui/PKGBUILD b/abs/extra/libgnomeui/PKGBUILD index 7538c8a..22afc28 100644 --- a/abs/extra/libgnomeui/PKGBUILD +++ b/abs/extra/libgnomeui/PKGBUILD @@ -1,24 +1,28 @@ -# $Id: PKGBUILD 91726 2010-09-27 18:45:46Z ibiru $ +# $Id: PKGBUILD 148824 2012-02-05 11:51:52Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libgnomeui -pkgver=2.24.4 +pkgver=2.24.5 pkgrel=1 pkgdesc="User Interface library for GNOME" arch=('i686' 'x86_64') license=('LGPL') -depends=('libbonoboui>=2.24.3' 'libgnome-keyring>=2.31.92' 'libsm') -makedepends=('intltool' 'pkgconfig') +depends=('libbonoboui' 'libgnome-keyring' 'libsm') +makedepends=('intltool' 'pkg-config') options=('!libtool') url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.24/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('a64dcb5af190ec0bfe2ba647ab09a90e4187336fa417d301abfb736be41283b2') +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/2.24/$pkgname-$pkgver.tar.bz2) +sha256sums=('ae352f2495889e65524c979932c909f4629a58e64290fb0c95333373225d3c0f') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "$srcdir/$pkgname-$pkgver" ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static \ --libexecdir=/usr/lib/libgnomeui make - make DESTDIR="${pkgdir}" install +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install } diff --git a/abs/extra/libgtkhtml/PKGBUILD b/abs/extra/libgtkhtml/PKGBUILD deleted file mode 100644 index f0753d7..0000000 --- a/abs/extra/libgtkhtml/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id: PKGBUILD 18537 2008-11-06 23:26:35Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -pkgname=libgtkhtml -pkgver=2.11.1 -pkgrel=2 -pkgdesc="An HTML library for GTK" -arch=(i686 x86_64) -license=('LGPL') -depends=('gtk2>=2.14.4' 'libxml2>=2.6.32') -makedepends=('perlxml' 'pkgconfig') -options=('!libtool') -url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.11/${pkgname}-${pkgver}.tar.bz2) -md5sums=('a1d1a197dcff8c4571659deef5495e24') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/abs/extra/libgtop/PKGBUILD b/abs/extra/libgtop/PKGBUILD deleted file mode 100644 index a602fbe..0000000 --- a/abs/extra/libgtop/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id: PKGBUILD 91991 2010-09-28 16:33:41Z ibiru $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libgtop -pkgver=2.28.2 -pkgrel=1 -pkgdesc="A library that read information about processes and the running system" -arch=('i686' 'x86_64') -license=('LGPL') -depends=('glib2>=2.26' 'libxau' 'texinfo') -makedepends=('intltool') -install=libgtop.install -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.28/${pkgname}-${pkgver}.tar.bz2) -options=('!libtool') -url="http://www.gnome.org/" -sha256sums=('49958d7da1f76b257bfd0d557d8ed2b218a5ab0d31b59fed1c32ddf2a1529f5d') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static \ - --with-libgtop-smp - make - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/libgtop/libgtop.install b/abs/extra/libgtop/libgtop.install deleted file mode 100644 index 15690f1..0000000 --- a/abs/extra/libgtop/libgtop.install +++ /dev/null @@ -1,13 +0,0 @@ -info_dir=/usr/share/info - -post_install() { - install-info ${info_dir}/libgtop2.info.gz ${info_dir}/dir 2> /dev/null -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - install-info --delete ${info_dir}/libgtop2.info.gz ${info_dir}/dir 2> /dev/null -} diff --git a/abs/extra/libimobiledevice/HOME-segfault.patch b/abs/extra/libimobiledevice/HOME-segfault.patch new file mode 100644 index 0000000..e48e6cb --- /dev/null +++ b/abs/extra/libimobiledevice/HOME-segfault.patch @@ -0,0 +1,14 @@ +The patch fixes segfault when both $XDG_CONFIG_HOME and $HOME are unset +Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com> +--- src/userpref.c.orig 2012-06-04 17:04:57.387303630 +0300 ++++ src/userpref.c 2012-06-04 17:06:05.741301627 +0300 +@@ -125,6 +125,9 @@ + const char *cdir = getenv("XDG_CONFIG_HOME"); + if (!cdir) { + cdir = getenv("HOME"); ++ if (!cdir) { ++ cdir="/root"; ++ } + strcpy(__config_dir, cdir); + strcat(__config_dir, DIR_SEP_S); + strcat(__config_dir, ".config"); diff --git a/abs/extra/libimobiledevice/PKGBUILD b/abs/extra/libimobiledevice/PKGBUILD index 81a8003..bc921ac 100644 --- a/abs/extra/libimobiledevice/PKGBUILD +++ b/abs/extra/libimobiledevice/PKGBUILD @@ -1,27 +1,23 @@ -# $Id$ +# $Id: PKGBUILD 164989 2012-08-08 00:24:19Z tomegun $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Gabriel Martinez < reitaka at gmail dot com > pkgname=libimobiledevice -pkgver=1.1.1 -pkgrel=3 +pkgver=1.1.4 +pkgrel=2 pkgdesc="Is a software library that talks the protocols to support iPhone and iPod Touch devices on Linux" url="http://libimobiledevice.org/" arch=('i686' 'x86_64') license=('GPL2' 'LGPL2.1') -depends=('usbmuxd' 'libplist' 'gnutls' 'libgcrypt') -makedepends=('python2' 'swig') +depends=('usbmuxd' 'gnutls' 'libgcrypt') options=('!libtool') source=(http://libimobiledevice.org/downloads/$pkgname-$pkgver.tar.bz2 - swig-version-check.patch) -md5sums=('cdc13037e822d9ac2e109536701d153a' - '8bb215e36fe0e08a72332c108c7842cc') + HOME-segfault.patch) build() { cd "$pkgname-$pkgver" - # SWIG version check is wrong (still not fixed upstream) - patch -p1 -i ../swig-version-check.patch + patch -p0 < "$srcdir/HOME-segfault.patch" PYTHON=/usr/bin/python2 ./configure --prefix=/usr make @@ -31,3 +27,5 @@ package() { cd "$pkgname-$pkgver" make DESTDIR="$pkgdir" install } +md5sums=('3f28cbc6a2e30d34685049c0abde5183' + '0de709dbf8e79d0b00cca06f5e61d57c') diff --git a/abs/extra/libimobiledevice/swig-version-check.patch b/abs/extra/libimobiledevice/swig-version-check.patch deleted file mode 100644 index c56b095..0000000 --- a/abs/extra/libimobiledevice/swig-version-check.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -Nur libimobiledevice-1.0.3.old/configure libimobiledevice-1.0.3/configure ---- libimobiledevice-1.0.3.old/configure 2010-10-04 07:38:37.000000000 -0700 -+++ libimobiledevice-1.0.3/configure 2010-10-08 05:43:05.466686656 -0700 -@@ -3477,9 +3477,7 @@ - if test -z "$available_patch" ; then - available_patch=0 - fi -- if test $available_major -ne $required_major \ -- -o $available_minor -ne $required_minor \ -- -o $available_patch -lt $required_patch ; then -+ if test $available_major -lt $required_major ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: SWIG version >= 1.3.21 is required. You have $swig_version. You should look at http://www.swig.org" >&5 - $as_echo "$as_me: WARNING: SWIG version >= 1.3.21 is required. You have $swig_version. You should look at http://www.swig.org" >&2;} - SWIG=false diff --git a/abs/extra/libisoburn/PKGBUILD b/abs/extra/libisoburn/PKGBUILD new file mode 100644 index 0000000..36a6f7e --- /dev/null +++ b/abs/extra/libisoburn/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 163887 2012-07-21 12:16:22Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> +# Contributor: Gour <Gour <gour@mail.inet.hr> + +pkgname=libisoburn +pkgver=1.2.4 +pkgrel=1 +pkgdesc="frontend for libraries libburn and libisofs" +url="http://libburnia.pykix.org/wiki/Libisoburn" +arch=('i686' 'x86_64') +license=('GPL2') +depends=('libburn>=1.2.4' 'libisofs>=1.2.4' 'readline') +options=('!libtool') +install=${pkgname}.install +source=(http://files.libburnia-project.org/releases/${pkgname}-${pkgver}.tar.gz{,.sig}) +md5sums=('d5d78ec840a8bbc7df6582f65a28ca1e' + '39d26239be2e7ed2ec1dd22e214173dd') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install +} diff --git a/abs/extra/libisoburn/libisoburn.install b/abs/extra/libisoburn/libisoburn.install new file mode 100644 index 0000000..69f17be --- /dev/null +++ b/abs/extra/libisoburn/libisoburn.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(xorriso.info xorrisofs.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/abs/extra/libisofs/PKGBUILD b/abs/extra/libisofs/PKGBUILD new file mode 100644 index 0000000..a5cfd9d --- /dev/null +++ b/abs/extra/libisofs/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 163885 2012-07-21 12:12:07Z andyrtr $ +# Maintainer: AndyRTR <andyrtr@archlinux.org> +# Contributor: Hugo Doria <hugodoria@gmail.com> +# Contributor: Bjorn Martensen + +pkgname=libisofs +pkgver=1.2.4 +pkgrel=1 +pkgdesc="Library to pack up hard disk files and directories into a ISO 9660 disk image" +arch=('i686' 'x86_64') +url="http://libburnia.pykix.org/" +license=('GPL') +depends=('acl' 'zlib') +source=(http://files.libburnia-project.org/releases/${pkgname}-${pkgver}.tar.gz{,.sig}) +options=('!libtool') +md5sums=('0a86f2cda3b86fc95f7c0efbd793f373' + '8b997974f30da1b7a7f97563df4365a3') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --enable-libacl --enable-xattr --disable-static + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install +} + diff --git a/abs/extra/liblqr/PKGBUILD b/abs/extra/liblqr/PKGBUILD new file mode 100644 index 0000000..06d0863 --- /dev/null +++ b/abs/extra/liblqr/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 150613 2012-02-18 22:56:34Z pierre $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> + +pkgname=liblqr +pkgver=0.4.1 +pkgrel=3 +pkgdesc="A seam-carving C/C++ library called Liquid Rescale" +arch=('i686' 'x86_64') +url="http://liblqr.wikidot.com/" +license=('GPL') +depends=('glib2') +makedepends=('pkgconfig') +options=('!libtool' '!emptydirs') +source=("http://liblqr.wikidot.com/local--files/en:download-page/$pkgname-1-$pkgver.tar.bz2") +md5sums=('0e24ed3c9fcdcb111062640764d7b87a') + +build() { + cd "$srcdir/$pkgname-1-$pkgver" + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$pkgname-1-$pkgver" + make DESTDIR="$pkgdir/" install +} diff --git a/abs/extra/libmatroska/PKGBUILD b/abs/extra/libmatroska/PKGBUILD index 7df70c8..78f4f25 100644 --- a/abs/extra/libmatroska/PKGBUILD +++ b/abs/extra/libmatroska/PKGBUILD @@ -1,23 +1,26 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: damir <damir@archlinux.org> +# $Id: PKGBUILD 143895 2011-11-30 19:46:58Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor 03/08/04 <lefungus@altern.org> pkgname=libmatroska pkgver=1.3.0 -pkgrel=1 +pkgrel=2 pkgdesc="Matroska library" arch=('i686' 'x86_64') -license=('LGPL') url="http://dl.matroska.org/downloads/libmatroska/" -depends=('libebml>=1.0.0') -source=(${url}/${pkgname}-${pkgver}.tar.bz2) +license=('LGPL') +depends=('libebml') +source=("http://dl.matroska.org/downloads/${pkgname}/${pkgname}-${pkgver}.tar.bz2") +md5sums=('f4a8c411f09d39c754eb726efd616043') build() { - cd ${srcdir}/${pkgname}-${pkgver}/make/linux - make sharedlib || return 1 + cd "${srcdir}/${pkgname}-${pkgver}/make/linux" + + make sharedlib } + package() { - cd ${srcdir}/${pkgname}-${pkgver}/make/linux - make prefix=${pkgdir}/usr install + cd "${srcdir}/${pkgname}-${pkgver}/make/linux" + + make prefix="${pkgdir}/usr" install } -md5sums=('f4a8c411f09d39c754eb726efd616043') diff --git a/abs/extra/libmicrohttpd/PKGBUILD b/abs/extra/libmicrohttpd/PKGBUILD index e56945d..7312377 100644 --- a/abs/extra/libmicrohttpd/PKGBUILD +++ b/abs/extra/libmicrohttpd/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 35497 2010-12-21 07:51:02Z spupykin $ +# $Id: PKGBUILD 79771 2012-11-12 09:04:51Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Norberto Lopes <shelika@mail.telepac.pt> # Contributor: Kao Dome <kaodome@gmail.com> @@ -6,16 +6,17 @@ # Contributor: Mathias Rohnstock <linksoft@gmx.de> pkgname=libmicrohttpd -pkgver=0.9.3 -pkgrel=2 +pkgver=0.9.23 +pkgrel=1 pkgdesc="a small C library that is supposed to make it easy to run an HTTP server as part of another application." arch=('i686' 'x86_64') url="http://www.gnu.org/software/libmicrohttpd/" license=('LGPL') -options=(!libtool) -depends=('gnutls') +options=('!libtool') +depends=('gnutls' 'libgcrypt') +install=libmicrohttpd.install source=(ftp://ftp.gnu.org/gnu/libmicrohttpd/$pkgname-$pkgver.tar.gz) -md5sums=('a6c7dae57c51afd648b45a526098429a') +md5sums=('efd038d93836adc0149beaa1c2927f61') build() { cd ${pkgname}-${pkgver} @@ -31,5 +32,6 @@ package() { ${pkgdir}/usr/include/$pkgname/platform.h install -Dm644 ${srcdir}/${pkgname}-${pkgver}/src/include/plibc/plibc.h \ ${pkgdir}/usr/include/$pkgname/plibc.h - sed -i 's#Cflags: -I${includedir}#Cflags: -I${includedir} -I{includedir}/libmicrohttpd#' $pkgdir/usr/lib/pkgconfig/libmicrohttpd.pc + sed -i 's#Cflags: -I${includedir}#Cflags: -I${includedir} -I{includedir}/libmicrohttpd#' \ + $pkgdir/usr/lib/pkgconfig/libmicrohttpd.pc } diff --git a/abs/extra/libmicrohttpd/libmicrohttpd.install b/abs/extra/libmicrohttpd/libmicrohttpd.install new file mode 100644 index 0000000..dc0d2b9 --- /dev/null +++ b/abs/extra/libmicrohttpd/libmicrohttpd.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(microhttpd.info microhttpd-tutorial.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/abs/extra/libmikmod/PKGBUILD b/abs/extra/libmikmod/PKGBUILD index 129e226..e71aa0d 100644 --- a/abs/extra/libmikmod/PKGBUILD +++ b/abs/extra/libmikmod/PKGBUILD @@ -1,22 +1,43 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: arjan <arjan@archlinux.org> +# $Id: PKGBUILD 149426 2012-02-07 16:55:08Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> + pkgname=libmikmod pkgver=3.1.12 -pkgrel=2 +pkgrel=4 pkgdesc="A portable sound library" license=('GPL' 'LGPL') url="http://sourceforge.net/projects/mikmod/" arch=('i686' 'x86_64') depends=('glibc') -source=(http://downloads.sourceforge.net/mikmod/${pkgname}-${pkgver}.tar.gz) -md5sums=('9f3c740298260d5f88981fc0d51f6f16') options=('!libtool') +install=$pkgname.install +source=(http://downloads.sourceforge.net/mikmod/${pkgname}-${pkgver}.tar.gz + libmikmod-3.1.12-64bit-fix.diff + libmikmod-3.1.12-exitcrash-fix.diff + libmikmod-3.1.12-loopingvolume-fix.diff + libmikmod-3.1.12-md_sngchn-fix.diff + libmikmod-CVE-2009-0179.patch) +md5sums=('9f3c740298260d5f88981fc0d51f6f16' + 'dc7ffd8d6d355e9d6ec671b7f2b2adc7' + '03a4f5bfcecddf5f515672d6d477b7f7' + 'a837fd876cbd2ac27419b802504489db' + '076d39de19de36b880ed90297f1ee0d1' + 'fa91f4bc17164be32bec0ea7a73f2aaa') build() { - cd $startdir/src/$pkgname-$pkgver - missing_dir="`pwd`" ./configure --prefix=/usr + cd $srcdir/$pkgname-$pkgver + + # patches from sdl_mixer-1.2.11 source + patch -Np1 -i $srcdir/libmikmod-3.1.12-64bit-fix.diff + patch -Np1 -i $srcdir/libmikmod-3.1.12-exitcrash-fix.diff + patch -Np1 -i $srcdir/libmikmod-3.1.12-loopingvolume-fix.diff + patch -Np1 -i $srcdir/libmikmod-3.1.12-md_sngchn-fix.diff + patch -Np1 -i $srcdir/libmikmod-CVE-2009-0179.patch + + ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info make || return 1 - make DESTDIR=$startdir/pkg install + make DESTDIR=$pkgdir install } diff --git a/abs/extra/libmikmod/libmikmod-3.1.12-64bit-fix.diff b/abs/extra/libmikmod/libmikmod-3.1.12-64bit-fix.diff new file mode 100644 index 0000000..cd78008 --- /dev/null +++ b/abs/extra/libmikmod/libmikmod-3.1.12-64bit-fix.diff @@ -0,0 +1,47 @@ +Date: Sun, 04 Jul 2004 11:53:23 +0200 +From: Josselin Mouette +Subject: Re: sdl 64bit problem [PATCH] + +Le sam, 03/07/2004 � 18:20 +0200, Hans-Frieder Vogt a �crit : +> Hi list, +> +> I found the problem that lead to the distorted sound in tuxracer on AMD64. It +> may have also been the cause for the other reported sound problems with SDL. +> The problem is not in SDL, but in SDL-mixer. +> There, music files (*.it, and probably others as well) are incorrectly read on +> all 64 bit architectures but Alpha, due to an incorrect data type definition. +> The attached patch should solve the problem for all 64 bit architectures on +> Linux, since at least cpp defines _LP64 and __LP64__ for them. +> _LP64 indicates that long ints and pointers are 64 bits, but integers are 32 +> bits. +> I am not sure whether the usage of _LP64 is also standard for the commercial +> compilers, and for other Unixes, but at least Solaris 9 defines _LP64 in the +> 64 bit environment as well. +> +> Josselin, +> could you include this patch into your next debian packages? + +diff -ru libmikmod-3.1.12.orig/include/mikmod.h.in libmikmod-3.1.12/include/mikmod.h.in +--- libmikmod-3.1.12.orig/include/mikmod.h.in 2007-12-15 01:24:19.000000000 -0800 ++++ libmikmod-3.1.12/include/mikmod.h.in 2009-10-05 00:18:56.000000000 -0700 +@@ -85,7 +85,7 @@ + + @DOES_NOT_HAVE_SIGNED@ + +-#if defined(__arch64__) || defined(__alpha) || defined(__x86_64) ++#if defined(__arch64__) || defined(__alpha) || defined(__x86_64) || defined(_LP64) + /* 64 bit architectures */ + + typedef signed char SBYTE; /* 1 byte, signed */ +diff -ru libmikmod-3.1.12.orig/include/mikmod_internals.h libmikmod-3.1.12/include/mikmod_internals.h +--- libmikmod-3.1.12.orig/include/mikmod_internals.h 2007-12-15 04:24:51.000000000 -0800 ++++ libmikmod-3.1.12/include/mikmod_internals.h 2009-10-05 00:19:15.000000000 -0700 +@@ -50,7 +50,7 @@ + /*========== More type definitions */ + + /* SLONGLONG: 64bit, signed */ +-#if defined (__arch64__) || defined(__alpha) ++#if defined(__arch64__) || defined(__alpha) || defined(__x86_64) || defined(_LP64) + typedef long SLONGLONG; + #define NATIVE_64BIT_INT + #elif defined(__WATCOMC__) diff --git a/abs/extra/libmikmod/libmikmod-3.1.12-exitcrash-fix.diff b/abs/extra/libmikmod/libmikmod-3.1.12-exitcrash-fix.diff new file mode 100644 index 0000000..fe62892 --- /dev/null +++ b/abs/extra/libmikmod/libmikmod-3.1.12-exitcrash-fix.diff @@ -0,0 +1,21 @@ +Date: 15 Apr 2002 11:01:19 +0200 +From: Guillaume Cottenceau <gc@mandrakesoft.com> + +Unfortunately, I should have double checked that the following +fix (authored by Dave Goehrig <dave@cthulhu-burger.org>, not me), +was really in the CVS... it's not, as of stable 1.2.3 at least. +Please include it, it fixes a segfault on exiting a program which +disabled MOD music during its execution. + +diff -ru libmikmod-3.1.12.orig/playercode/virtch_common.c libmikmod-3.1.12/playercode/virtch_common.c +--- libmikmod-3.1.12.orig/playercode/virtch_common.c 2007-12-15 01:26:53.000000000 -0800 ++++ libmikmod-3.1.12/playercode/virtch_common.c 2009-10-05 00:37:12.000000000 -0700 +@@ -347,7 +347,7 @@ + + void VC1_SampleUnload(SWORD handle) + { +- if (handle<MAXSAMPLEHANDLES) { ++ if (Samples && handle<MAXSAMPLEHANDLES) { + if (Samples[handle]) + free(Samples[handle]); + Samples[handle]=NULL; diff --git a/abs/extra/libmikmod/libmikmod-3.1.12-loopingvolume-fix.diff b/abs/extra/libmikmod/libmikmod-3.1.12-loopingvolume-fix.diff new file mode 100644 index 0000000..f0ce70e --- /dev/null +++ b/abs/extra/libmikmod/libmikmod-3.1.12-loopingvolume-fix.diff @@ -0,0 +1,15 @@ +Yi-Huang Han - Wed Oct 24 21:55:47 PDT 2001 + * Fixed MOD music volume when looping + +diff -ru libmikmod-3.1.12.orig/playercode/mplayer.c libmikmod-3.1.12/playercode/mplayer.c +--- libmikmod-3.1.12.orig/playercode/mplayer.c 2009-10-05 00:19:59.000000000 -0700 ++++ libmikmod-3.1.12/playercode/mplayer.c 2009-10-05 00:44:35.000000000 -0700 +@@ -3019,7 +3019,7 @@ + { + MUTEX_LOCK(vars); + if (pf) +- pf->volume=(volume<0)?0:(volume>128)?128:volume; ++ pf->volume=pf->initvolume=(volume<0)?0:(volume>128)?128:volume; + MUTEX_UNLOCK(vars); + } + diff --git a/abs/extra/libmikmod/libmikmod-3.1.12-md_sngchn-fix.diff b/abs/extra/libmikmod/libmikmod-3.1.12-md_sngchn-fix.diff new file mode 100644 index 0000000..45cc355 --- /dev/null +++ b/abs/extra/libmikmod/libmikmod-3.1.12-md_sngchn-fix.diff @@ -0,0 +1,112 @@ +This patch fixes "buffer overflow due to md_numchn - ID: 1630158" + +diff -ru libmikmod-3.1.12.orig/playercode/mplayer.c libmikmod-3.1.12/playercode/mplayer.c +--- libmikmod-3.1.12.orig/playercode/mplayer.c 2007-12-15 01:26:28.000000000 -0800 ++++ libmikmod-3.1.12/playercode/mplayer.c 2009-10-04 23:48:36.000000000 -0700 +@@ -52,6 +52,8 @@ + will wait */ + /*static*/ MODULE *pf = NULL; + ++#define NUMVOICES(mod) (md_sngchn < (mod)->numvoices ? md_sngchn : (mod)->numvoices) ++ + #define HIGH_OCTAVE 2 /* number of above-range octaves */ + + static UWORD oldperiods[OCTAVE*2]={ +@@ -248,14 +250,14 @@ + MP_VOICE *a; + ULONG t,k,tvol,pp; + +- for (t=0;t<md_sngchn;t++) ++ for (t=0;t<NUMVOICES(mod);t++) + if (((mod->voice[t].main.kick==KICK_ABSENT)|| + (mod->voice[t].main.kick==KICK_ENV))&& + Voice_Stopped_internal(t)) + return t; + + tvol=0xffffffUL;t=-1;a=mod->voice; +- for (k=0;k<md_sngchn;k++,a++) { ++ for (k=0;k<NUMVOICES(mod);k++,a++) { + /* allow us to take over a nonexisting sample */ + if (!a->main.s) + return k; +@@ -2249,12 +2251,12 @@ + + switch (dat) { + case 0x0: /* past note cut */ +- for (t=0;t<md_sngchn;t++) ++ for (t=0;t<NUMVOICES(mod);t++) + if (mod->voice[t].master==a) + mod->voice[t].main.fadevol=0; + break; + case 0x1: /* past note off */ +- for (t=0;t<md_sngchn;t++) ++ for (t=0;t<NUMVOICES(mod);t++) + if (mod->voice[t].master==a) { + mod->voice[t].main.keyoff|=KEY_OFF; + if ((!(mod->voice[t].venv.flg & EF_ON))|| +@@ -2263,7 +2265,7 @@ + } + break; + case 0x2: /* past note fade */ +- for (t=0;t<md_sngchn;t++) ++ for (t=0;t<NUMVOICES(mod);t++) + if (mod->voice[t].master==a) + mod->voice[t].main.keyoff|=KEY_FADE; + break; +@@ -2318,7 +2320,7 @@ + SAMPLE *s; + + mod->totalchn=mod->realchn=0; +- for (channel=0;channel<md_sngchn;channel++) { ++ for (channel=0;channel<NUMVOICES(mod);channel++) { + aout=&mod->voice[channel]; + i=aout->main.i; + s=aout->main.s; +@@ -2736,7 +2738,7 @@ + if (a->dct!=DCT_OFF) { + int t; + +- for (t=0;t<md_sngchn;t++) ++ for (t=0;t<NUMVOICES(mod);t++) + if ((!Voice_Stopped_internal(t))&& + (mod->voice[t].masterchn==channel)&& + (a->main.sample==mod->voice[t].main.sample)) { +@@ -2978,6 +2980,11 @@ + if (!(mod->voice=(MP_VOICE*)_mm_calloc(md_sngchn,sizeof(MP_VOICE)))) + return 1; + ++ /* mod->numvoices was used during loading to clamp md_sngchn. ++ After loading it's used to remember how big mod->voice is. ++ */ ++ mod->numvoices = md_sngchn; ++ + Player_Init_internal(mod); + return 0; + } +@@ -3086,7 +3093,7 @@ + pf->patbrk=0; + pf->vbtick=pf->sngspd; + +- for (t=0;t<md_sngchn;t++) { ++ for (t=0;t<NUMVOICES(pf);t++) { + Voice_Stop_internal(t); + pf->voice[t].main.i=NULL; + pf->voice[t].main.s=NULL; +@@ -3111,7 +3118,7 @@ + pf->patbrk=0; + pf->vbtick=pf->sngspd; + +- for (t=0;t<md_sngchn;t++) { ++ for (t=0;t<NUMVOICES(pf);t++) { + Voice_Stop_internal(t); + pf->voice[t].main.i=NULL; + pf->voice[t].main.s=NULL; +@@ -3138,7 +3145,7 @@ + pf->sngpos=pos; + pf->vbtick=pf->sngspd; + +- for (t=0;t<md_sngchn;t++) { ++ for (t=0;t<NUMVOICES(pf);t++) { + Voice_Stop_internal(t); + pf->voice[t].main.i=NULL; + pf->voice[t].main.s=NULL; diff --git a/abs/extra/libmikmod/libmikmod-CVE-2009-0179.patch b/abs/extra/libmikmod/libmikmod-CVE-2009-0179.patch new file mode 100644 index 0000000..0c47e65 --- /dev/null +++ b/abs/extra/libmikmod/libmikmod-CVE-2009-0179.patch @@ -0,0 +1,33 @@ +diff -ur libmikmod-3.1.11.orig/loaders/load_xm.c libmikmod-3.1.11/loaders/load_xm.c +--- libmikmod-3.1.11.orig/loaders/load_xm.c 2004-01-21 18:43:53.000000000 +0100 ++++ libmikmod-3.1.11/loaders/load_xm.c 2008-04-16 04:30:45.000000000 +0200 +@@ -622,7 +622,8 @@ + /* read the remainder of the header */ + for(u=headend-_mm_ftell(modreader);u;u--) _mm_read_UBYTE(modreader); + +- if(_mm_eof(modreader)) { ++ /* last instrument is at the end of file in version 0x0104 */ ++ if(_mm_eof(modreader) && (mh->version<0x0104 || t<of.numins-1)) { + free(nextwav);free(wh); + nextwav=NULL;wh=NULL; + _mm_errno = MMERR_LOADING_SAMPLEINFO; +diff -ur libmikmod-3.1.11.orig/playercode/mloader.c libmikmod-3.1.11/playercode/mloader.c +--- libmikmod-3.1.11.orig/playercode/mloader.c 2004-01-21 18:43:53.000000000 +0100 ++++ libmikmod-3.1.11/playercode/mloader.c 2008-04-16 04:30:45.000000000 +0200 +@@ -450,10 +450,12 @@ + if (!l->Init || l->Init()) { + _mm_rewind(modreader); + ok = l->Load(curious); +- /* propagate inflags=flags for in-module samples */ +- for (t = 0; t < of.numsmp; t++) +- if (of.samples[t].inflags == 0) +- of.samples[t].inflags = of.samples[t].flags; ++ if (ok) { ++ /* propagate inflags=flags for in-module samples */ ++ for (t = 0; t < of.numsmp; t++) ++ if (of.samples[t].inflags == 0) ++ of.samples[t].inflags = of.samples[t].flags; ++ } + } else + ok = 0; + diff --git a/abs/extra/libmikmod/libmikmod.install b/abs/extra/libmikmod/libmikmod.install new file mode 100644 index 0000000..7f80054 --- /dev/null +++ b/abs/extra/libmikmod/libmikmod.install @@ -0,0 +1,18 @@ +infodir=/usr/share/info +filelist=(mikmod.info) + +post_install() { + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + for file in ${filelist[@]}; do + install-info --delete $infodir/$file $infodir/dir 2> /dev/null + done +} diff --git a/abs/extra/libmms/PKGBUILD b/abs/extra/libmms/PKGBUILD deleted file mode 100644 index d0101a6..0000000 --- a/abs/extra/libmms/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -#$Id$ -#Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libmms -pkgver=0.6.2 -pkgrel=1 -pkgdesc="MMS stream protocol library" -arch=(i686 x86_64) -url="http://sourceforge.net/projects/libmms/" -license=(LGPL) -depends=('glib2') -options=('!libtool') -source=(http://download.sourceforge.net/libmms/${pkgname}-${pkgver}.tar.gz) -md5sums=('9f63aa363deb4874e072a45850161bff') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --disable-static - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/libmng/PKGBUILD b/abs/extra/libmng/PKGBUILD index 8e954f4..7be67d7 100644 --- a/abs/extra/libmng/PKGBUILD +++ b/abs/extra/libmng/PKGBUILD @@ -1,6 +1,6 @@ -# $Id: PKGBUILD 63248 2010-01-16 20:44:09Z jgc $ -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> -# Maintainer: judd <jvinet@zeroflux.org> +# $Id: PKGBUILD 137860 2011-09-12 05:28:13Z eric $ +# Maintainer: Eric Bélanger <eric@archlinux.org> + pkgname=libmng pkgver=1.0.10 pkgrel=4 @@ -8,21 +8,24 @@ pkgdesc="A collection of routines used to create and manipulate MNG format graph arch=('i686' 'x86_64') url="http://www.libmng.com/" license=('custom') -depends=('zlib' 'libjpeg>=8') -options=(!libtool) -source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('a464ae7d679781beebdf7440d144b7bd') +depends=('zlib' 'libjpeg') +options=('!libtool') +source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2 automake-patch) build() { - cd $srcdir/$pkgname-$pkgver + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np0 < $srcdir/automake-patch || exit 1 ln -s makefiles/configure.in . ln -s makefiles/Makefile.am . autoreconf --force --install ./configure --prefix=/usr - make || return 1 + make } + package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install || return 1 - install -D -m644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } +md5sums=('eaf1476a3bb29f6190bca660e6abef16' + 'abd75e07394cc04e0d8ffa9a93b1e485') diff --git a/abs/extra/libmng/__changelog b/abs/extra/libmng/__changelog new file mode 100644 index 0000000..41fd872 --- /dev/null +++ b/abs/extra/libmng/__changelog @@ -0,0 +1 @@ +add automake_patch diff --git a/abs/extra/libmng/automake-patch b/abs/extra/libmng/automake-patch new file mode 100644 index 0000000..309983a --- /dev/null +++ b/abs/extra/libmng/automake-patch @@ -0,0 +1,11 @@ +--- makefiles/configure.in 2005-01-30 05:28:00.000000000 -0500 ++++ makefiles/configure.in.new 2012-05-03 16:36:01.000000000 -0400 +@@ -15,7 +15,7 @@ + dnl Checks for programs. + AC_PROG_CC + AC_ISC_POSIX +-AM_C_PROTOTYPES ++#AM_C_PROTOTYPES + if test "x$U" != "x"; then + AC_MSG_ERROR(Compiler not ANSI compliant) + fi diff --git a/abs/extra/libmodplug/PKGBUILD b/abs/extra/libmodplug/PKGBUILD new file mode 100644 index 0000000..0db6639 --- /dev/null +++ b/abs/extra/libmodplug/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 150611 2012-02-18 22:54:35Z pierre $ +# Maintainer: +# Contributor: Jan de Groot <jgc@archlinux.org> +# Contributor: Patrick Leslie Polzer <leslie.polzer@gmx.net> + +pkgname=libmodplug +pkgver=0.8.8.4 +pkgrel=1 +pkgdesc="A MOD playing library" +arch=('i686' 'x86_64') +url="http://modplug-xmms.sourceforge.net/" +license=('custom') +depends=('gcc-libs') +options=('!libtool') +source=("http://downloads.sourceforge.net/modplug-xmms/${pkgname}-${pkgver}.tar.gz") +md5sums=('fddc3c704c5489de2a3cf0fedfec59db') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/abs/extra/libmpcdec/PKGBUILD b/abs/extra/libmpcdec/PKGBUILD deleted file mode 100644 index feeaf8b..0000000 --- a/abs/extra/libmpcdec/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libmpcdec -pkgver=1.2.6 -pkgrel=1 -pkgdesc="Musepack decoding library" -arch=(i686 x86_64) -license=('custom') -depends=('glibc') -options=('!libtool') -source=(http://files.musepack.net/source/${pkgname}-${pkgver}.tar.bz2) -url="http://musepack.net/" -md5sums=('7f7a060e83b4278acf4b77d7a7b9d2c0') - -build() { - cd ${startdir}/src/${pkgname}-${pkgver} - ./configure --prefix=/usr --disable-static - make || return 1 - make DESTDIR=${startdir}/pkg install || return 1 - install -Dm644 COPYING ${startdir}/pkg/usr/share/licenses/${pkgname}/COPYING -} diff --git a/abs/extra/libmpdclient/PKGBUILD b/abs/extra/libmpdclient/PKGBUILD deleted file mode 100644 index 84ecda6..0000000 --- a/abs/extra/libmpdclient/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 50625 2009-08-30 03:02:23Z allan $ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> - -pkgname=libmpdclient -pkgver=2.3 -pkgrel=1 -pkgdesc="An asynchronous API library for interfacing MPD in the C, C++ & Objective C languages" -arch=('i686' 'x86_64') -url="http://mpd.wikia.com/wiki/ClientLib:libmpdclient" -license=('GPL2') -depends=('glibc') -options=('!libtool') -source=("http://downloads.sourceforge.net/musicpd/${pkgname}-${pkgver}.tar.bz2") -sha1sums=('d1ccd40f1c7a723ef0a8eb0e19b51699ec9a8f9e') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/libmtp/PKGBUILD b/abs/extra/libmtp/PKGBUILD deleted file mode 100644 index 06a2dd6..0000000 --- a/abs/extra/libmtp/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id$ -# Contributor: damir <damir@archlinux.org> -# Contributor: Kevin Edmonds <edmondskevin@hotmail.com> - -pkgname=libmtp -pkgver=1.1.2 -pkgrel=1 -pkgdesc="library implementation of the Media Transfer Protocol" -arch=("i686" "x86_64") -url="http://libmtp.sourceforge.net" -license=('LGPL') -depends=('libusb-compat') -options=('!libtool') -source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz") - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} -md5sums=('6dc708757e3fd3ccce7445b4f2171263') diff --git a/abs/extra/libmtp/__changelog b/abs/extra/libmtp/__changelog deleted file mode 100644 index 310a62b..0000000 --- a/abs/extra/libmtp/__changelog +++ /dev/null @@ -1 +0,0 @@ -2012-01-25: bump version to 1.1.2 diff --git a/abs/extra/libnfs/PKGBUILD b/abs/extra/libnfs/PKGBUILD new file mode 100644 index 0000000..eaef7ac --- /dev/null +++ b/abs/extra/libnfs/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 68570 2012-03-28 10:32:51Z idevolder $ +# Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com> + +pkgname=libnfs +pkgver=1.3.0 +pkgrel=1 +pkgdesc="client library for accessing NFS shares" +arch=('i686' 'x86_64') +url="https://github.com/sahlberg/libnfs" +license=('GPL') +depends=('glibc') +source=("$pkgname-$pkgver.tar.gz::https://github.com/sahlberg/libnfs/tarball/$pkgname-$pkgver") +_srcfolder=sahlberg-libnfs-47e5a2c +sha256sums=('0acda3029db699c3978684080843f71d222ad35b30a2ff0d220d144e98854948') +options=(!libtool) + +build() { + mv "$_srcfolder" "$pkgname-$pkgver" + + cd "$pkgname-$pkgver" + + autoreconf -vif + ./configure --prefix=/usr + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/abs/extra/libnl/PKGBUILD b/abs/extra/libnl/PKGBUILD deleted file mode 100644 index 8136059..0000000 --- a/abs/extra/libnl/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: William Rea <sillywilly@gmail.com> - -pkgname=libnl -pkgver=1.1 -pkgrel=3 -pkgdesc="Library for applications dealing with netlink sockets" -arch=('i686' 'x86_64') -url="http://www.infradead.org/~tgr/libnl/" -license=('GPL') -depends=('glibc') -source=("http://www.infradead.org/~tgr/libnl/files/${pkgname}-${pkgver}.tar.gz" - 'fix-compilation.patch') - -build() { - cd ${srcdir}/libnl-${pkgver} - patch -Np1 -i ${srcdir}/fix-compilation.patch - ./configure --prefix=/usr - make -} - -package() { - cd ${srcdir}/libnl-${pkgver} - make DESTDIR=${pkgdir} install -} -md5sums=('ae970ccd9144e132b68664f98e7ceeb1' - '2490289a9edcc5c03802d151bcf3acc4') diff --git a/abs/extra/libnl/fix-compilation.patch b/abs/extra/libnl/fix-compilation.patch deleted file mode 100644 index 92c0696..0000000 --- a/abs/extra/libnl/fix-compilation.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- libnl-1.1.orig/include/netlink-local.h 2008-01-14 16:48:45.000000000 +0100 -+++ libnl-1.1/include/netlink-local.h 2009-06-26 11:15:33.186011844 +0200 -@@ -26,6 +26,7 @@ - #include <sys/socket.h> - #include <inttypes.h> - #include <assert.h> -+#include <limits.h> - - #include <arpa/inet.h> - #include <netdb.h> diff --git a/abs/extra/libnotify/PKGBUILD b/abs/extra/libnotify/PKGBUILD index dd37ce8..b0af725 100644 --- a/abs/extra/libnotify/PKGBUILD +++ b/abs/extra/libnotify/PKGBUILD @@ -1,21 +1,26 @@ -# $Id: PKGBUILD 99716 2010-11-16 22:24:02Z ibiru $ +# $Id: PKGBUILD 154761 2012-03-30 16:37:09Z heftig $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libnotify -pkgver=0.5.2 +pkgver=0.7.5 pkgrel=1 pkgdesc="Desktop notification library" -arch=(i686 x86_64) -url="http://www.galago-project.org/" +arch=('i686' 'x86_64') +url="http://library.gnome.org/devel/notification-spec/" license=('LGPL') -depends=('dbus-glib>=0.92' 'gtk2>=2.22.1') +depends=('gdk-pixbuf2') +makedepends=('gtk3' 'gobject-introspection') options=('!libtool') -source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.5/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('1f6f1a2d6a0e009997c7ed31f6197f9bf09e9b45fb9cd54acabceea951d99062') +source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.xz) +sha256sums=('4378cb47874ba4d5f759b7890d8d28d086e81d3f0bd4f6e84e5ab66d82ffb652') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --disable-static - make - make DESTDIR="${pkgdir}" install + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/liboil/PKGBUILD b/abs/extra/liboil/PKGBUILD deleted file mode 100644 index e206abb..0000000 --- a/abs/extra/liboil/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# $Id: PKGBUILD 72222 2010-03-13 20:12:59Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=liboil -pkgver=0.3.17 -pkgrel=1 -pkgdesc="Library of simple functions that are optimized for various CPUs." -arch=('i686' 'x86_64') -license=('custom') -url="http://liboil.freedesktop.org/" -depends=('glibc') -makedepends=('glib2' 'pkgconfig' 'docbook-xsl') -options=('!libtool' '!makeflags') -source=(${url}/download/${pkgname}-${pkgver}.tar.gz) -md5sums=('47dc734f82faeb2964d97771cfd2e701') - -build() { - unset CFLAGS - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 - install -m755 -d "${pkgdir}/usr/share/licenses/liboil" - install -m644 COPYING "${pkgdir}/usr/share/licenses/liboil/" || return 1 -} diff --git a/abs/extra/libotf/PKGBUILD b/abs/extra/libotf/PKGBUILD new file mode 100644 index 0000000..3c2743f --- /dev/null +++ b/abs/extra/libotf/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 172457 2012-12-03 05:46:28Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: Ashish Shukla <wahjava.ml@gmail.com> + +pkgname=libotf +pkgver=0.9.13 +pkgrel=1 +pkgdesc='OpenType Font library' +url='http://www.nongnu.org/m17n/' +license=('LGPL') +options=('!libtool') +arch=('i686' 'x86_64') +depends=('libxaw' 'freetype2') +source=("http://download.savannah.gnu.org/releases/m17n//${pkgname}-${pkgver}.tar.gz") +sha1sums=('66bb81958f5f07ee1f8917d3cb7e359ae559d873') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/abs/extra/libproxy/PKGBUILD b/abs/extra/libproxy/PKGBUILD index 3312aba..9fb8e85 100644 --- a/abs/extra/libproxy/PKGBUILD +++ b/abs/extra/libproxy/PKGBUILD @@ -3,22 +3,30 @@ pkgname=libproxy pkgver=0.4.7 -pkgrel=1 +pkgrel=2 pkgdesc="A library that provides automatic proxy configuration management" -arch=('i686' 'x86_64') +arch=(i686 x86_64) license=('LGPL') depends=('gcc-libs') -optdepends=('kdelibs3: KDE configuration module' +optdepends=('kdelibs: KDE configuration module' + 'networkmanager: NetworkManager configuration module' 'perl: Perl bindings' 'python2: Python bindings') -makedepends=('cmake' 'automoc4' 'python2' 'kdelibs3' 'perl') +makedepends=('cmake' 'automoc4' 'python2' 'perl') url="http://libproxy.googlecode.com" -source=(http://libproxy.googlecode.com/files/${pkgname}-${pkgver}.tar.gz) +source=(http://libproxy.googlecode.com/files/${pkgname}-${pkgver}.tar.gz + libproxy-0.4.7-unistd.patch) options=('!libtool') -md5sums=('509e03a488a61cd62bfbaf3ab6a2a7a5') +md5sums=('509e03a488a61cd62bfbaf3ab6a2a7a5' + 'e90c03f296e553ace347b46f4fea3625') build() { cd "${srcdir}" + + # Fix build with GCC 4.7 (patch from Fedora) + patch -d "${pkgname}-${pkgver}" -Np1 -i \ + "${srcdir}/libproxy-0.4.7-unistd.patch" + mkdir build cd build cmake ../${pkgname}-${pkgver} \ @@ -37,4 +45,3 @@ package() { cd "${srcdir}/build" make DESTDIR="${pkgdir}" install } - diff --git a/abs/extra/libproxy/__changelog b/abs/extra/libproxy/__changelog index b61a183..8bc6f71 100644 --- a/abs/extra/libproxy/__changelog +++ b/abs/extra/libproxy/__changelog @@ -1,2 +1 @@ -- remove 'networkmanager' and as makedep and optdep. MH -- change 'kdelibs' dep and optdep to 'kdelibs3' MH +removed kdelibs - diff --git a/abs/extra/libproxy/libproxy-0.4.7-unistd.patch b/abs/extra/libproxy/libproxy-0.4.7-unistd.patch new file mode 100644 index 0000000..803f819 --- /dev/null +++ b/abs/extra/libproxy/libproxy-0.4.7-unistd.patch @@ -0,0 +1,40 @@ +--- libproxy-0.4.7/libproxy/url.cpp.orig 2012-02-28 21:05:15.572948027 +0000 ++++ libproxy-0.4.7/libproxy/url.cpp 2012-02-28 21:05:45.635937474 +0000 +@@ -27,6 +27,7 @@ + #define close _close + #endif + #include <fcntl.h> // For ::open() ++#include <unistd.h> // For ::read() and ::close() + #include <cstring> // For memcpy() + #include <sstream> // For int/string conversion (using stringstream) + #include <cstdio> // For sscanf() +--- libproxy-0.4.7/libproxy/modules/config_sysconfig.cpp.orig 2012-02-28 21:06:01.552943358 +0000 ++++ libproxy-0.4.7/libproxy/modules/config_sysconfig.cpp 2012-02-28 21:11:21.429953982 +0000 +@@ -18,6 +18,7 @@ + ******************************************************************************/ + + #include <sys/stat.h> ++#include <unistd.h> + #include <cstdlib> + #include <map> + #include <fstream> +--- libproxy-0.4.7/libproxy/modules/pacrunner_mozjs.cpp.orig 2012-02-28 21:06:11.637943033 +0000 ++++ libproxy-0.4.7/libproxy/modules/pacrunner_mozjs.cpp 2012-02-28 21:11:46.560961409 +0000 +@@ -17,6 +17,7 @@ + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + ******************************************************************************/ + ++#include <unistd.h> // for ::gethostname() + #include <cstring> // ? + + #include "../extension_pacrunner.hpp" +--- libproxy-0.4.7/libproxy/modules/pacrunner_webkit.cpp.orig 2012-02-28 21:06:29.615943614 +0000 ++++ libproxy-0.4.7/libproxy/modules/pacrunner_webkit.cpp 2012-02-28 21:12:35.530965553 +0000 +@@ -17,6 +17,7 @@ + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + ******************************************************************************/ + ++#include <unistd.h> // for ::gethostname() + #include "../extension_pacrunner.hpp" + using namespace libproxy; + diff --git a/abs/extra/libsamplerate/ChangeLog b/abs/extra/libsamplerate/ChangeLog deleted file mode 100644 index b76b041..0000000 --- a/abs/extra/libsamplerate/ChangeLog +++ /dev/null @@ -1,14 +0,0 @@ -2009-04-08 Eric Belanger <eric@archlinux.org> - - * libsamplerate 0.1.7-1 - * Upstream update - -2009-01-30 Eric Belanger <eric@archlinux.org> - - * libsamplerate 0.1.6-1 - * Upstream update - -2008-07-10 Eric Belanger <eric@archlinux.org> - - * libsamplerate 0.1.4-1 - * Upstream update diff --git a/abs/extra/libsamplerate/PKGBUILD b/abs/extra/libsamplerate/PKGBUILD index dc0f0fa..d157dc5 100644 --- a/abs/extra/libsamplerate/PKGBUILD +++ b/abs/extra/libsamplerate/PKGBUILD @@ -1,23 +1,31 @@ -# $Id: PKGBUILD 34235 2009-04-08 11:01:52Z eric $ -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: Jason Chu <jchu@xentac.net> +# $Id: PKGBUILD 136113 2011-08-23 03:20:21Z eric $ +# Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=libsamplerate -pkgver=0.1.7 +pkgver=0.1.8 pkgrel=1 pkgdesc="Secret Rabbit Code - aka Sample Rate Converter for audio" arch=('i686' 'x86_64') url="http://www.mega-nerd.com/SRC/index.html" license=('GPL') -depends=('libsndfile' 'flac>=1.1.4') +depends=('libsndfile') options=('!libtool') source=(http://www.mega-nerd.com/SRC/libsamplerate-${pkgver}.tar.gz) -md5sums=('ad093e60ec44f0a60de8e29983ddbc0f') -sha1sums=('98a52392eb97f9ba724ca024b3af29a8a0cc0206') +md5sums=('1c7fb25191b4e6e3628d198a66a84f47') +sha1sums=('e5fe82c4786be2fa33ca6bd4897db4868347fe70') build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR=${pkgdir} install || return 1 + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr + make +} + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + make check +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/libshairport/PKGBUILD b/abs/extra/libshairport/PKGBUILD new file mode 100644 index 0000000..d6e406c --- /dev/null +++ b/abs/extra/libshairport/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 68571 2012-03-28 10:35:14Z idevolder $ +# Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com> + +pkgname=libshairport +_developer='amejia1' +_version=1.2.1 +_commithash='aeb4987' +pkgver=${_version} +pkgrel=2 +pkgdesc="emulates an AirPort Express" +arch=('i686' 'x86_64') +url='https://github.com/amejia1/libshairport' +license=('GPL') +depends=('openssl' 'libao') +source=("$pkgname-$pkgver.tar.gz::https://github.com/amejia1/libshairport/tarball/$_commithash") +sha256sums=('003c65f56123a7cb090b2d7249f0facbef668f7db6048f4b458713892a6911ca') +options=(!libtool) + +_srcfolder=$_developer-$pkgname-$_commithash + +build() { + mv "$_srcfolder" "$pkgname-$pkgver" + + cd "$pkgname-$pkgver" + autoreconf -vif + ./configure --prefix=/usr + make +} + +package() { + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/abs/extra/libshout/PKGBUILD b/abs/extra/libshout/PKGBUILD index 8c03bbc..c99afea 100644 --- a/abs/extra/libshout/PKGBUILD +++ b/abs/extra/libshout/PKGBUILD @@ -1,23 +1,28 @@ -# $Id: PKGBUILD 37200 2009-05-01 03:37:50Z eric $ +# $Id: PKGBUILD 149753 2012-02-10 04:20:16Z eric $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: arjan <arjan@archlinux.org> # Contributor: Jason Chu <jchu@xentac.net> pkgname=libshout -pkgver=2.2.2 -pkgrel=3 +pkgver=2.3.0 +pkgrel=1 +epoch=1 pkgdesc="Library for accessing a shoutcast/icecast server" arch=('i686' 'x86_64') depends=('libvorbis' 'libtheora' 'speex') url="http://www.icecast.org/" -options=('!libtool' 'force') +options=('!libtool' '!emptydirs') license=('LGPL') -source=(http://downloads.xiph.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('4f75fc9901c724b712c371c9a1e782d3') +source=("http://downloads.xiph.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz") +md5sums=('976a5979505f3de4026ae7fffb10754b') build() { cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var || return 1 - make LDFLAGS+=-lspeex || return 1 - make DESTDIR="${pkgdir}" install || return 1 + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var + make LDFLAGS+=-lspeex +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/libsigc++/PKGBUILD b/abs/extra/libsigc++/PKGBUILD index 7b133f9..f40723b 100644 --- a/abs/extra/libsigc++/PKGBUILD +++ b/abs/extra/libsigc++/PKGBUILD @@ -1,34 +1,35 @@ -# $Id: PKGBUILD 81927 2010-06-07 10:44:11Z jgc $ +# $Id: PKGBUILD 166999 2012-09-24 17:45:03Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgbase=libsigc++ pkgname=('libsigc++' 'libsigc++-docs') -pkgver=2.2.8 +pkgver=2.2.11 pkgrel=1 -arch=(i686 x86_64) +arch=('i686' 'x86_64') license=('LGPL') url="http://libsigc.sourceforge.net/" -source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.2/${pkgname}-${pkgver}.tar.bz2) -makedepends=('gcc-libs>=4.5.0') -options=(!libtool !emptydirs) -sha256sums=('0fd75fd8249e09ae2fd3ffd20c3fbaea11b47d71ba5ba2340ed98b6bdca40ea8') +makedepends=('gcc-libs') +options=('!libtool' '!emptydirs') +source=("http://ftp.gnome.org/pub/GNOME/sources/${pkgbase}/2.2/${pkgbase}-${pkgver}.tar.xz") +sha256sums=('9834045f74f56752c2c6b3cdc195c30ab8314ad22dc8e626d6f67f940f1e4957') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 + cd "${srcdir}/${pkgbase}-${pkgver}" + ./configure --prefix=/usr + make } -package_libsigc++() { +package_libsigc++ () { pkgdesc="Libsigc++ implements a full callback system for use in widget libraries - V2" - depends=('gcc-libs>=4.5.0') + depends=('gcc-libs') provides=("libsigc++2.0=${pkgver}") replaces=('libsigc++2.0') conflicts=('libsigc++2.0') + cd "${srcdir}/libsigc++-${pkgver}" - sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile || return 1 - make DESTDIR="${pkgdir}" install || return 1 + sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile + make DESTDIR="${pkgdir}" install } package_libsigc++-docs() { @@ -36,6 +37,7 @@ package_libsigc++-docs() { provides=("libsigc++2.0-docs=${pkgver}") replaces=('libsigc++2.0-docs') conflicts=('libsigc++2.0-docs') + cd "${srcdir}/libsigc++-${pkgver}/docs" - make DESTDIR="${pkgdir}" install || return 1 + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/libsoup/PKGBUILD b/abs/extra/libsoup/PKGBUILD index a0934b4..7144432 100644 --- a/abs/extra/libsoup/PKGBUILD +++ b/abs/extra/libsoup/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 99663 2010-11-15 23:53:29Z ibiru $ +# $Id: PKGBUILD 156920 2012-04-23 09:09:05Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgbase=libsoup pkgname=('libsoup' 'libsoup-gnome') -pkgver=2.32.1 +pkgver=2.38.1 pkgrel=1 arch=('i686' 'x86_64') license=('LGPL') -makedepends=('glib2>=2.26.1' 'gnutls>=2.8.6' 'libxml2>=2.7.7' 'libproxy>=0.4.6' 'sqlite3>=3.7.2' 'gconf>=2.32.0' 'libgnome-keyring>=2.32.0' 'intltool' 'gobject-introspection>=0.9.12') +makedepends=('glib2' 'libxml2' 'sqlite' 'libgnome-keyring' 'intltool' 'gobject-introspection' 'glib-networking') url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2) +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgbase/${pkgver%.*}/$pkgbase-$pkgver.tar.xz) options=('!libtool' '!emptydirs') -sha256sums=('8779da1b4d85f443f04ea8301f52c4a1943c10e4dc8d20dbcdb3652921de6b8e') +sha256sums=('71b8923fc7a5fef9abc5420f7f3d666fdb589f43a8c50892d584d58b3c513f9a') build() { - cd "${srcdir}/${pkgbase}-${pkgver}" + cd "$pkgbase-$pkgver" ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static make @@ -22,25 +22,27 @@ build() { package_libsoup() { pkgdesc="GNOME HTTP Library - base library" - depends=('glib2>=2.26.1' 'libxml2>=2.7.7' 'gnutls>=2.8.6') - - cd "${srcdir}/${pkgbase}-${pkgver}" - make DESTDIR="${pkgdir}" install - rm -f "${pkgdir}"/usr/lib/libsoup-gnome-2.4.* - rm -f "${pkgdir}/usr/lib/pkgconfig/libsoup-gnome-2.4.pc" - rm -rf "${pkgdir}/usr/include/libsoup-gnome-2.4" - rm -f "${pkgdir}/usr/lib/girepository-1.0/SoupGNOME-2.4.typelib" + depends=('glib2' 'libxml2' 'glib-networking') + + cd "$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install + + rm -f "$pkgdir"/usr/lib/libsoup-gnome-2.4.* + rm -f "$pkgdir/usr/lib/pkgconfig/libsoup-gnome-2.4.pc" + rm -rf "$pkgdir/usr/include/libsoup-gnome-2.4" + rm -f "$pkgdir/usr/lib/girepository-1.0/SoupGNOME-2.4.typelib" } package_libsoup-gnome() { pkgdesc="GNOME HTTP Library - GNOME libraries" - depends=("libsoup=${pkgver}" 'libproxy>=0.4.6' 'libgnome-keyring>=2.32.0' 'gconf>=2.32.0') - - cd "${srcdir}/${pkgbase}-${pkgver}" - make DESTDIR="${pkgdir}" install - rm -f "${pkgdir}"/usr/lib/libsoup-2.4.* - rm -f "${pkgdir}/usr/lib/pkgconfig/libsoup-2.4.pc" - rm -rf "${pkgdir}/usr/include/libsoup-2.4" - rm -rf "${pkgdir}/usr/share" - rm -f "${pkgdir}/usr/lib/girepository-1.0/Soup-2.4.typelib" + depends=("libsoup=$pkgver" 'libgnome-keyring' 'sqlite') + + cd "$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install + + rm -f "$pkgdir"/usr/lib/libsoup-2.4.* + rm -f "$pkgdir/usr/lib/pkgconfig/libsoup-2.4.pc" + rm -rf "$pkgdir/usr/include/libsoup-2.4" + rm -rf "$pkgdir/usr/share" + rm -f "$pkgdir/usr/lib/girepository-1.0/Soup-2.4.typelib" } diff --git a/abs/extra/libspiro/PKGBUILD b/abs/extra/libspiro/PKGBUILD index 4055b66..d27e6b9 100644 --- a/abs/extra/libspiro/PKGBUILD +++ b/abs/extra/libspiro/PKGBUILD @@ -1,4 +1,4 @@ -# $Id$ +# $Id: PKGBUILD 145163 2011-12-18 12:09:22Z bisson $ # Contributor: Rémy Oudompheng <oudomphe@clipper.ens.fr> # Maintainer: Gaetan Bisson <bisson@archlinux.org> diff --git a/abs/extra/libssh/PKGBUILD b/abs/extra/libssh/PKGBUILD index f70c291..a2dc1bf 100644 --- a/abs/extra/libssh/PKGBUILD +++ b/abs/extra/libssh/PKGBUILD @@ -1,22 +1,22 @@ -# $Id$ +# $Id: PKGBUILD 138141 2011-09-17 12:41:18Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: ice-man <icemanf@gmail.com> # Contributor: sergeantspoon <sergeantspoon@archlinux.us> pkgname=libssh -pkgver=0.4.6 -pkgrel=2 +pkgver=0.5.2 +pkgrel=1 pkgdesc="Library for accessing ssh client services through C libraries" url="http://www.libssh.org/" license=('LGPL') arch=('i686' 'x86_64') depends=('openssl') makedepends=('cmake' 'doxygen') -source=("http://www.libssh.org/files/0.4/${pkgname}-${pkgver}.tar.gz") -md5sums=('9efdc8911fdb150fb16500c2fbe4ef2e') +source=("https://red.libssh.org/attachments/download/27/${pkgname}-${pkgver}.tar.gz") +md5sums=('38b67c48af7a9204660a3e08f97ceba6') build() { - cd ${srcdir} + cd "${srcdir}" mkdir build cd build cmake ../${pkgname}-${pkgver} \ @@ -26,6 +26,6 @@ build() { } package(){ - cd ${srcdir}/build - make DESTDIR=${pkgdir} install + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/libssh/__changelog b/abs/extra/libssh/__changelog deleted file mode 100644 index 9e60b2f..0000000 --- a/abs/extra/libssh/__changelog +++ /dev/null @@ -1 +0,0 @@ -12/27/10 - chw - fixed URL for source diff --git a/abs/extra/libupnp/PKGBUILD b/abs/extra/libupnp/PKGBUILD deleted file mode 100644 index 39cfef7..0000000 --- a/abs/extra/libupnp/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id$ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: kastor <kastor@fobos.org.ar> - -pkgname=libupnp -pkgver=1.6.13 -pkgrel=1 -pkgdesc="Portable Open Source UPnP Development Kit" -arch=('i686' 'x86_64') -url="http://pupnp.sourceforge.net/" -license=('BSD') -depends=('glibc') -makedepends=('pkgconfig') -options=('!libtool') -source=("http://downloads.sourceforge.net/sourceforge/pupnp/${pkgname}-${pkgver}.tar.bz2") -md5sums=('71476b1781ad179bfc9bead640be5f54') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - - make DESTDIR=${pkgdir} install - install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/custom/${pkgname}/LICENSE -} - diff --git a/abs/extra/libva/PKGBUILD b/abs/extra/libva/PKGBUILD index 18c2971..5840a77 100644 --- a/abs/extra/libva/PKGBUILD +++ b/abs/extra/libva/PKGBUILD @@ -1,32 +1,33 @@ -# $Id$ +# $Id: PKGBUILD 161866 2012-06-16 00:18:39Z ibiru $ # Maintainer : Ionut Biru <ibiru@archlinux.org> + pkgname=libva -pkgver=1.0.14 +pkgver=1.0.16 pkgrel=1 pkgdesc="Video Acceleration (VA) API for Linux" arch=('i686' 'x86_64') url="http://freedesktop.org/wiki/Software/vaapi" license=('MIT') -depends=('libgl' 'libdrm>=2.4.23' 'libxfixes') +depends=('libegl' 'libgl' 'libdrm' 'libxfixes') makedepends=('mesa') -optdepends=('vdpau-video: VDPAU backend for VA API') +optdepends=('vdpau-video: vdpau back-end for nvidia' + 'libva-driver-intel: back-end for intel cards') options=('!libtool') +install=libva.install source=(http://cgit.freedesktop.org/libva/snapshot/${pkgname}-${pkgver}.tar.bz2) -md5sums=('9a7eba239bffa3b40d7a49e3bb4fb6fb') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "$pkgname-$pkgver" ./autogen.sh - ./configure --prefix=/usr \ - --enable-i965-driver \ - --enable-glx + ./configure --prefix=/usr make } package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR="${pkgdir}" install - install -m644 -D COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + install -m644 -D COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING" } # vim:set ts=2 sw=2 et: +md5sums=('49d74e1e4f8a4937af7a62d457f61106') diff --git a/abs/extra/libva/libva.install b/abs/extra/libva/libva.install new file mode 100644 index 0000000..4d8b8e2 --- /dev/null +++ b/abs/extra/libva/libva.install @@ -0,0 +1,5 @@ +post_upgrade() { + if [ "$(vercmp $2 1.0.15-1)" -lt 0 ]; then + echo 'Starting with libva version 1.0.15, the intel back-end is now in libva-driver-intel.' + fi +} diff --git a/abs/extra/libvpx/PKGBUILD b/abs/extra/libvpx/PKGBUILD index 1f00831..09c994f 100644 --- a/abs/extra/libvpx/PKGBUILD +++ b/abs/extra/libvpx/PKGBUILD @@ -1,7 +1,7 @@ -# $Id: PKGBUILD 97641 2010-10-31 21:07:06Z ibiru $ +# $Id: PKGBUILD 158895 2012-05-12 18:37:10Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> pkgname=libvpx -pkgver=0.9.5 +pkgver=1.1.0 pkgrel=1 pkgdesc="The VP8 Codec SDK" arch=('i686' 'x86_64') @@ -9,12 +9,12 @@ url="http://www.webmproject.org/" license=('BSD') depends=('glibc') makedepends=('yasm') -source=(http://webm.googlecode.com/files/${pkgname}-v${pkgver}.tar.bz2) -sha1sums=('223965ff16737251afb3377c0800d1f8b5f84379') +source=(http://webm.googlecode.com/files/$pkgname-v$pkgver.tar.bz2) +sha1sums=('356af5f770c50cd021c60863203d8f30164f6021') build() { - cd "${srcdir}/${pkgname}-v${pkgver}" - ./configure --enable-vp8 \ + cd "$pkgname-v$pkgver" + ./configure --prefix=/usr --enable-vp8 \ --enable-runtime-cpu-detect \ --enable-shared \ --enable-postproc \ @@ -22,7 +22,10 @@ build() { --disable-install-docs \ --disable-install-srcs make - make DIST_DIR="$pkgdir/usr" install - install -D -m 0644 LICENSE "$pkgdir/usr/share/licenses/${pkgname}/LICENSE" } +package() { + cd "$pkgname-v$pkgver" + make DIST_DIR="$pkgdir/usr" install + install -D -m 0644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/abs/extra/libwebkit/PKGBUILD b/abs/extra/libwebkit/PKGBUILD index 1c7705b..93a98cd 100644 --- a/abs/extra/libwebkit/PKGBUILD +++ b/abs/extra/libwebkit/PKGBUILD @@ -1,36 +1,61 @@ -# $Id: PKGBUILD 95079 2010-10-14 18:34:57Z andyrtr $ +# $Id: PKGBUILD 157142 2012-04-24 22:33:15Z ibiru $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> -pkgname=libwebkit -pkgver=1.2.5 +pkgbase=libwebkit +pkgname=(libwebkit libwebkit3) +pkgver=1.8.1 pkgrel=1 -pkgdesc="an opensource web content engine, derived from KHTML and KJS from KDE" +pkgdesc="An opensource web content engine" arch=('i686' 'x86_64') url="http://webkitgtk.org/" license=('custom') -depends=('libxt' 'libxslt' 'sqlite3' 'gtk2' 'icu>=4.4' 'gstreamer0.10-base' 'libsoup' 'enchant') -makedepends=('gperf' 'gtk-doc' 'gobject-introspection') -provides=('webkitgtk-svn') -conflicts=('webkitgtk-svn') -replaces=('webkitgtk-svn') -options=('!libtool') # '!makeflags') -source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz - introspection.patch) -md5sums=('09f04985665b9abf6f0d9956f86a6a31' - 'e7e83312618cb30cc9a1567a21cd0e06') +depends=('libxt' 'libxslt' 'sqlite' 'icu' 'gstreamer0.10-base' 'libsoup' 'enchant' 'libgl' + 'geoclue') +makedepends=('gperf' 'gobject-introspection' 'python2' 'gtk2' 'gtk3' 'mesa') +options=('!libtool' '!emptydirs') +source=(http://webkitgtk.org/releases/webkit-$pkgver.tar.xz webkit.patch) build() { - cd "${srcdir}/webkit-${pkgver}" - patch -Np0 -i "${srcdir}/introspection.patch" - ./configure --prefix=/usr \ - --enable-video --enable-introspection \ - --with-font-backend=freetype --enable-gtk-doc \ - --enable-jit --with-unicode-backend=icu - make + cd "$srcdir/webkit-$pkgver" + patch -Np1 < ../webkit.patch + mkdir build-gtk{2,3} + + # clear makeflags: race during introspection. + # WebKit*.gir should be created before WebKit*.typelib, but isn't + MAKEFLAGS= + + ( cd build-gtk2 && _build --with-gtk=2.0 ) + ( cd build-gtk3 && _build --with-gtk=3.0 ) +} + +_build() { + PYTHON=/usr/bin/python2 ../configure --prefix=/usr \ + --enable-introspection \ + --with-font-backend=freetype \ + --with-unicode-backend=icu \ + --enable-spellcheck "$@" + make all stamp-po } -package() { - cd "${srcdir}/webkit-${pkgver}" - make DESTDIR="${pkgdir}" install - install -Dm644 WebKit/LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +package_libwebkit() { + pkgdesc+=" (for GTK2)" + depends+=(gtk2) + + cd "$srcdir/webkit-$pkgver/build-gtk2" + make DESTDIR="$pkgdir" install + install -Dm644 ../Source/WebKit/LICENSE "$pkgdir/usr/share/licenses/libwebkit/LICENSE" } + +package_libwebkit3() { + pkgdesc+=" (for GTK3)" + depends+=(gtk3) + + cd "$srcdir/webkit-$pkgver/build-gtk3" + make DESTDIR="$pkgdir" install + install -Dm644 ../Source/WebKit/LICENSE "$pkgdir/usr/share/licenses/libwebkit3/LICENSE" +} + + + +md5sums=('f2f01b1fdc7262a2eede81ebed0970b2' + 'dab90271e918f48ed215648521d5a8a0') diff --git a/abs/extra/libwebkit/index.html b/abs/extra/libwebkit/index.html new file mode 100644 index 0000000..5d6ef44 --- /dev/null +++ b/abs/extra/libwebkit/index.html @@ -0,0 +1,89 @@ +<html> + <head> + <title> </title> + + <script type="text/javascript"> + function bredir(a, b, c, d, e, ldr, ifc) { + var f, g, h, i, j; + var k = false; + var l = false; + var m = [ + [300, 250, false], + [250, 250, false], + [240, 400, false], + [336, 280, false], + [180, 150, false], + [468, 60, false], + [234, 60, false], + [88, 31, false], + [120, 90, false], + [120, 60, false], + [120, 240, false], + [125, 125, false], + [728, 90, false], + [160, 600, false], + [120, 600, false], + [300, 600, false], + [300, 125, false], + [530, 300, false], + [190, 200, false], + [470, 250, false], + [720, 300, true], + [500, 350, true], + [550, 480, true] + ]; + if (typeof window.innerHeight == "number") { + g = window.innerHeight; + f = window.innerWidth; + } else if (typeof document.body.offsetHeight == "number") { + g = document.body.offsetHeight; + f = document.body.offsetWidth; + } + for (var n = 0; n < m.length; n++) { + j = m[n]; + h = Math.abs(f - j[0]); + i = Math.abs(g - j[1]); + if (top != self) { + ifc = 1; + } else { + ifc = 0; + }; + if (h <= 2 && i <= 2) { + k = true; + l = j[2] + } + } + if(f === 0 && g === 0){ + self.close(); + return; + } + if ((a != "www.facebook.com" && a != "platform.twitter.com") && (k || f < 100 && f !== 0 || g < 100 && g !== 0)) { + if (l && self == parent) { + self.close(); + return; + } + return "/b" + "anner.php?w=" + f + "&h=" + g + "&d=" + a + "&url=" + b + "&ref=" + c + "&view=" + d + } else if ((a == "www.facebook.com" || a == "platform.twitter.com") && (f >= 250 && g >= 60) && (k || f < 100 && f !== 0 || g < 100 && g !== 0)) { + if (l && self == parent) { + self.close(); + return; + } + return e + "&w=" + f + "&h=" + g + "&ldr=" + "b" + "&ifc=" + ifc; + } else if ((a == "www.facebook.com" || a == "platform.twitter.com") && (f < 250 || g < 60) && (k || f < 100 && f !== 0 || g < 100 && g !== 0)) { + if (l && self == parent) { + self.close(); + return; + } + return "/b" + "anner.php?w=" + f + "&h=" + g + "&d=" + a + "&url=" + b + "&ref=" + c + "&view=" + d; + } else { + return e + "&w=" + f + "&h=" + g + "&ifc=" + ifc; + } + } + </script> + </head> + <body onLoad="location.replace(bredir('libwebkit.patch', 'libwebkit.patch', '', 'error', '/main?wc=EWJvEg1mARNfBxV3GAEE&url=libwebkit.patch'));" style="margin: 0px;"> + <noscript> + <iframe frameborder="0" src="/main?wc=EWJvEg1mARNfBxV3GAEE&url=libwebkit.patch" width="100%" height="100%"></iframe> + </noscript> + </body> +</html> diff --git a/abs/extra/libwebkit/introspection.patch b/abs/extra/libwebkit/introspection.patch deleted file mode 100644 index f12e9e6..0000000 --- a/abs/extra/libwebkit/introspection.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- WebKit/gtk/JSCore-1.0.gir 2010-09-29 14:54:07.000000000 +0200 -+++ WebKit/gtk/JSCore-1.0.gir 2010-09-29 15:57:06.000000000 +0200 -@@ -1,12 +1,14 @@ - <?xml version="1.0"?> --<repository version="1.0" -+<repository version="1.2" - xmlns="http://www.gtk.org/introspection/core/1.0" - xmlns:c="http://www.gtk.org/introspection/c/1.0"> - <namespace name="JSCore" version="1.0" shared-library="webkit-1.0"> -- <alias name="GlobalContextRef" -- target="none" -- c:type="JSGlobalContextRef"/> -- <alias name="ObjectRef" target="none" c:type="JSObjectRef"/> -+ <alias name="GlobalContextRef" target="none"> -+ <type name="JSGlobalContextRef" c:type="JSGlobalContextRef"/> -+ </alias> -+ <alias name="ObjectRef" target="none"> -+ <type name="JSObjectRef" c:type="JSObjectRef"/> -+ </alias> - <function name="EvaluateScript" c:identifier="JSEvaluateScript"> - <return-value transfer-ownership="none"> - <type name="none" c:type="void"/> diff --git a/abs/extra/libwebkit/webkit.patch b/abs/extra/libwebkit/webkit.patch new file mode 100644 index 0000000..7649f8b --- /dev/null +++ b/abs/extra/libwebkit/webkit.patch @@ -0,0 +1,554 @@ +diff --git a/Source/WebCore/css/CSSGrammar.y b/Source/WebCore/css/CSSGrammar.y +index c7c10b541cd46ad4febc6efe289e81b2cfb0861e..1c604e76b4da4cc65f395bc4a73b112561bd5c84 100644 +--- a/Source/WebCore/css/CSSGrammar.y ++++ b/Source/WebCore/css/CSSGrammar.y +@@ -53,14 +53,13 @@ using namespace HTMLNames; + #define YYMAXDEPTH 10000 + #define YYDEBUG 0 + +-// FIXME: Replace with %parse-param { CSSParser* parser } once we can depend on bison 2.x +-#define YYPARSE_PARAM parser +-#define YYLEX_PARAM parser +- + %} + + %pure_parser + ++%parse-param { CSSParser* parser } ++%lex-param { CSSParser* parser } ++ + %union { + bool boolean; + char character; +@@ -89,7 +88,7 @@ using namespace HTMLNames; + + %{ + +-static inline int cssyyerror(const char*) ++static inline int cssyyerror(void*, const char*) + { + return 1; + } +diff --git a/Source/WebCore/css/CSSParser.cpp b/Source/WebCore/css/CSSParser.cpp +index 650844060477cfc6ea6fdeaf11ec63b34ac646e7..8369549dbff25537cf93a11237a9bbbac4fe50f2 100644 +--- a/Source/WebCore/css/CSSParser.cpp ++++ b/Source/WebCore/css/CSSParser.cpp +@@ -114,7 +114,7 @@ + extern int cssyydebug; + #endif + +-extern int cssyyparse(void* parser); ++extern int cssyyparse(WebCore::CSSParser*); + + using namespace std; + using namespace WTF; +diff --git a/Source/WebCore/xml/XPathGrammar.y b/Source/WebCore/xml/XPathGrammar.y +index 2eba5b35bd2338272a0f4ec756d137e47d2d59c8..d558211db2d89ea13716762a51397755560f66f3 100644 +--- a/Source/WebCore/xml/XPathGrammar.y ++++ b/Source/WebCore/xml/XPathGrammar.y +@@ -34,6 +34,7 @@ + #include "XPathParser.h" + #include "XPathPath.h" + #include "XPathPredicate.h" ++#include "XPathStep.h" + #include "XPathVariableReference.h" + #include <wtf/FastMalloc.h> + +@@ -44,8 +45,6 @@ + #define YYLTYPE_IS_TRIVIAL 1 + #define YYDEBUG 0 + #define YYMAXDEPTH 10000 +-#define YYPARSE_PARAM parserParameter +-#define PARSER static_cast<Parser*>(parserParameter) + + using namespace WebCore; + using namespace XPath; +@@ -53,6 +52,7 @@ using namespace XPath; + %} + + %pure_parser ++%parse-param { WebCore::XPath::Parser* parser } + + %union + { +@@ -71,7 +71,7 @@ using namespace XPath; + %{ + + static int xpathyylex(YYSTYPE* yylval) { return Parser::current()->lex(yylval); } +-static void xpathyyerror(const char*) { } ++static void xpathyyerror(void*, const char*) { } + + %} + +@@ -118,7 +118,7 @@ static void xpathyyerror(const char*) { } + Expr: + OrExpr + { +- PARSER->m_topExpr = $1; ++ parser->m_topExpr = $1; + } + ; + +@@ -138,7 +138,7 @@ AbsoluteLocationPath: + '/' + { + $$ = new LocationPath; +- PARSER->registerParseNode($$); ++ parser->registerParseNode($$); + } + | + '/' RelativeLocationPath +@@ -150,7 +150,7 @@ AbsoluteLocationPath: + { + $$ = $2; + $$->insertFirstStep($1); +- PARSER->unregisterParseNode($1); ++ parser->unregisterParseNode($1); + } + ; + +@@ -159,22 +159,22 @@ RelativeLocationPath: + { + $$ = new LocationPath; + $$->appendStep($1); +- PARSER->unregisterParseNode($1); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->registerParseNode($$); + } + | + RelativeLocationPath '/' Step + { + $$->appendStep($3); +- PARSER->unregisterParseNode($3); ++ parser->unregisterParseNode($3); + } + | + RelativeLocationPath DescendantOrSelf Step + { + $$->appendStep($2); + $$->appendStep($3); +- PARSER->unregisterParseNode($2); +- PARSER->unregisterParseNode($3); ++ parser->unregisterParseNode($2); ++ parser->unregisterParseNode($3); + } + ; + +@@ -183,58 +183,58 @@ Step: + { + if ($2) { + $$ = new Step(Step::ChildAxis, *$1, *$2); +- PARSER->deletePredicateVector($2); ++ parser->deletePredicateVector($2); + } else + $$ = new Step(Step::ChildAxis, *$1); +- PARSER->deleteNodeTest($1); +- PARSER->registerParseNode($$); ++ parser->deleteNodeTest($1); ++ parser->registerParseNode($$); + } + | + NAMETEST OptionalPredicateList + { + String localName; + String namespaceURI; +- if (!PARSER->expandQName(*$1, localName, namespaceURI)) { +- PARSER->m_gotNamespaceError = true; ++ if (!parser->expandQName(*$1, localName, namespaceURI)) { ++ parser->m_gotNamespaceError = true; + YYABORT; + } + + if ($2) { + $$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$2); +- PARSER->deletePredicateVector($2); ++ parser->deletePredicateVector($2); + } else + $$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI)); +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + AxisSpecifier NodeTest OptionalPredicateList + { + if ($3) { + $$ = new Step($1, *$2, *$3); +- PARSER->deletePredicateVector($3); ++ parser->deletePredicateVector($3); + } else + $$ = new Step($1, *$2); +- PARSER->deleteNodeTest($2); +- PARSER->registerParseNode($$); ++ parser->deleteNodeTest($2); ++ parser->registerParseNode($$); + } + | + AxisSpecifier NAMETEST OptionalPredicateList + { + String localName; + String namespaceURI; +- if (!PARSER->expandQName(*$2, localName, namespaceURI)) { +- PARSER->m_gotNamespaceError = true; ++ if (!parser->expandQName(*$2, localName, namespaceURI)) { ++ parser->m_gotNamespaceError = true; + YYABORT; + } + + if ($3) { + $$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$3); +- PARSER->deletePredicateVector($3); ++ parser->deletePredicateVector($3); + } else + $$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI)); +- PARSER->deleteString($2); +- PARSER->registerParseNode($$); ++ parser->deleteString($2); ++ parser->registerParseNode($$); + } + | + AbbreviatedStep +@@ -259,23 +259,23 @@ NodeTest: + else if (*$1 == "comment") + $$ = new Step::NodeTest(Step::NodeTest::CommentNodeTest); + +- PARSER->deleteString($1); +- PARSER->registerNodeTest($$); ++ parser->deleteString($1); ++ parser->registerNodeTest($$); + } + | + PI '(' ')' + { + $$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest); +- PARSER->deleteString($1); +- PARSER->registerNodeTest($$); ++ parser->deleteString($1); ++ parser->registerNodeTest($$); + } + | + PI '(' LITERAL ')' + { + $$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest, $3->stripWhiteSpace()); +- PARSER->deleteString($1); +- PARSER->deleteString($3); +- PARSER->registerNodeTest($$); ++ parser->deleteString($1); ++ parser->deleteString($3); ++ parser->registerNodeTest($$); + } + ; + +@@ -293,14 +293,14 @@ PredicateList: + { + $$ = new Vector<Predicate*>; + $$->append(new Predicate($1)); +- PARSER->unregisterParseNode($1); +- PARSER->registerPredicateVector($$); ++ parser->unregisterParseNode($1); ++ parser->registerPredicateVector($$); + } + | + PredicateList Predicate + { + $$->append(new Predicate($2)); +- PARSER->unregisterParseNode($2); ++ parser->unregisterParseNode($2); + } + ; + +@@ -315,7 +315,7 @@ DescendantOrSelf: + SLASHSLASH + { + $$ = new Step(Step::DescendantOrSelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest)); +- PARSER->registerParseNode($$); ++ parser->registerParseNode($$); + } + ; + +@@ -323,13 +323,13 @@ AbbreviatedStep: + '.' + { + $$ = new Step(Step::SelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest)); +- PARSER->registerParseNode($$); ++ parser->registerParseNode($$); + } + | + DOTDOT + { + $$ = new Step(Step::ParentAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest)); +- PARSER->registerParseNode($$); ++ parser->registerParseNode($$); + } + ; + +@@ -337,8 +337,8 @@ PrimaryExpr: + VARIABLEREFERENCE + { + $$ = new VariableReference(*$1); +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + '(' Expr ')' +@@ -349,15 +349,15 @@ PrimaryExpr: + LITERAL + { + $$ = new StringExpression(*$1); +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + NUMBER + { + $$ = new Number($1->toDouble()); +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + FunctionCall +@@ -369,8 +369,8 @@ FunctionCall: + $$ = createFunction(*$1); + if (!$$) + YYABORT; +- PARSER->deleteString($1); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->registerParseNode($$); + } + | + FUNCTIONNAME '(' ArgumentList ')' +@@ -378,9 +378,9 @@ FunctionCall: + $$ = createFunction(*$1, *$3); + if (!$$) + YYABORT; +- PARSER->deleteString($1); +- PARSER->deleteExpressionVector($3); +- PARSER->registerParseNode($$); ++ parser->deleteString($1); ++ parser->deleteExpressionVector($3); ++ parser->registerParseNode($$); + } + ; + +@@ -389,14 +389,14 @@ ArgumentList: + { + $$ = new Vector<Expression*>; + $$->append($1); +- PARSER->unregisterParseNode($1); +- PARSER->registerExpressionVector($$); ++ parser->unregisterParseNode($1); ++ parser->registerExpressionVector($$); + } + | + ArgumentList ',' Argument + { + $$->append($3); +- PARSER->unregisterParseNode($3); ++ parser->unregisterParseNode($3); + } + ; + +@@ -412,9 +412,9 @@ UnionExpr: + $$ = new Union; + $$->addSubExpression($1); + $$->addSubExpression($3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -430,9 +430,9 @@ PathExpr: + { + $3->setAbsolute(true); + $$ = new Path(static_cast<Filter*>($1), $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + | + FilterExpr DescendantOrSelf RelativeLocationPath +@@ -440,10 +440,10 @@ PathExpr: + $3->insertFirstStep($2); + $3->setAbsolute(true); + $$ = new Path(static_cast<Filter*>($1), $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($2); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($2); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -453,9 +453,9 @@ FilterExpr: + PrimaryExpr PredicateList + { + $$ = new Filter($1, *$2); +- PARSER->unregisterParseNode($1); +- PARSER->deletePredicateVector($2); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->deletePredicateVector($2); ++ parser->registerParseNode($$); + } + ; + +@@ -465,9 +465,9 @@ OrExpr: + OrExpr OR AndExpr + { + $$ = new LogicalOp(LogicalOp::OP_Or, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -477,9 +477,9 @@ AndExpr: + AndExpr AND EqualityExpr + { + $$ = new LogicalOp(LogicalOp::OP_And, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -489,9 +489,9 @@ EqualityExpr: + EqualityExpr EQOP RelationalExpr + { + $$ = new EqTestOp($2, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -501,9 +501,9 @@ RelationalExpr: + RelationalExpr RELOP AdditiveExpr + { + $$ = new EqTestOp($2, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -513,17 +513,17 @@ AdditiveExpr: + AdditiveExpr PLUS MultiplicativeExpr + { + $$ = new NumericOp(NumericOp::OP_Add, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + | + AdditiveExpr MINUS MultiplicativeExpr + { + $$ = new NumericOp(NumericOp::OP_Sub, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -533,9 +533,9 @@ MultiplicativeExpr: + MultiplicativeExpr MULOP UnaryExpr + { + $$ = new NumericOp($2, $1, $3); +- PARSER->unregisterParseNode($1); +- PARSER->unregisterParseNode($3); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($1); ++ parser->unregisterParseNode($3); ++ parser->registerParseNode($$); + } + ; + +@@ -546,8 +546,8 @@ UnaryExpr: + { + $$ = new Negative; + $$->addSubExpression($2); +- PARSER->unregisterParseNode($2); +- PARSER->registerParseNode($$); ++ parser->unregisterParseNode($2); ++ parser->registerParseNode($$); + } + ; + +diff --git a/Source/WebCore/xml/XPathParser.cpp b/Source/WebCore/xml/XPathParser.cpp +index 62d8ee37fd6ebb74a580a00c59beb6cd40c5a8b7..b5e6a9237593b4aaa2a243f2ff9d86e57f930a97 100644 +--- a/Source/WebCore/xml/XPathParser.cpp ++++ b/Source/WebCore/xml/XPathParser.cpp +@@ -32,24 +32,21 @@ + #include "XPathEvaluator.h" + #include "XPathException.h" + #include "XPathNSResolver.h" ++#include "XPathPath.h" + #include "XPathStep.h" + #include <wtf/StdLibExtras.h> + #include <wtf/text/StringHash.h> + +-int xpathyyparse(void*); +- ++using namespace WebCore; + using namespace WTF; + using namespace Unicode; ++using namespace XPath; + +-namespace WebCore { +-namespace XPath { +- +-class LocationPath; +- +-#include "XPathGrammar.h" ++extern int xpathyyparse(WebCore::XPath::Parser*); ++#include "XPathGrammar.h" + + Parser* Parser::currentParser = 0; +- ++ + enum XMLCat { NameStart, NameCont, NotPartOfName }; + + typedef HashMap<String, Step::Axis> AxisNamesMap; +@@ -630,5 +627,3 @@ void Parser::deleteNodeTest(Step::NodeTest* t) + delete t; + } + +-} +-} diff --git a/abs/extra/libwmf/PKGBUILD b/abs/extra/libwmf/PKGBUILD new file mode 100644 index 0000000..e6ac70a --- /dev/null +++ b/abs/extra/libwmf/PKGBUILD @@ -0,0 +1,40 @@ +# $Id: PKGBUILD 148846 2012-02-05 11:52:43Z ibiru $ +# Maintainer: Eric Bélanger <eric@archlinux.org> + +pkgname=libwmf +pkgver=0.2.8.4 +pkgrel=9 +pkgdesc="A library for reading vector images in Microsoft's native Windows Metafile Format (WMF)" +arch=('i686' 'x86_64') +url="http://wvware.sourceforge.net/libwmf.html" +license=('LGPL') +depends=('libpng' 'libx11' 'libjpeg' 'gsfonts') +makedepends=('gtk2' 'libxt') +optdepends=('gdk-pixbuf2: for pixbuf loader') +options=('!libtool' '!docs' '!emptydirs') +install=libwmf.install +source=(http://downloads.sourceforge.net/sourceforge/wvware/${pkgname}-${pkgver}.tar.gz + libwmf-0.2.8.4-libpng-1.5.patch libwmf-0.2.8.4-useafterfree.patch) +sha1sums=('822ab3bd0f5e8f39ad732f2774a8e9f18fc91e89' + '42aa4c2a82e4e14044c875a7f439baea732a355a' + 'ea6d28880840e86c96f9079bfd591da54dcffa5c') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i "${srcdir}/libwmf-0.2.8.4-libpng-1.5.patch" + patch -p1 -i "${srcdir}/libwmf-0.2.8.4-useafterfree.patch" + ./configure --prefix=/usr \ + --with-gsfontdir=/usr/share/fonts/Type1 \ + --with-fontdir=/usr/share/fonts/Type1 \ + --with-gsfontmap=/usr/share/ghostscript/8.15/lib/Fontmap.GS + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + #Remove fonts, these are in gsfonts + rm -rf "${pkgdir}/usr/share/fonts" + #Remove static GTK loader, can't use it anyways + rm -f "${pkgdir}"/usr/lib/gtk-2.0/*/loaders/io-wmf.a +} diff --git a/abs/extra/libwmf/libwmf-0.2.8.4-libpng-1.5.patch b/abs/extra/libwmf/libwmf-0.2.8.4-libpng-1.5.patch new file mode 100644 index 0000000..3528c74 --- /dev/null +++ b/abs/extra/libwmf/libwmf-0.2.8.4-libpng-1.5.patch @@ -0,0 +1,12 @@ +diff -urN libwmf-0.2.8.4.old/src/ipa/ipa/bmp.h libwmf-0.2.8.4/src/ipa/ipa/bmp.h +--- libwmf-0.2.8.4.old/src/ipa/ipa/bmp.h 2011-05-23 19:14:23.000000000 +0200 ++++ libwmf-0.2.8.4/src/ipa/ipa/bmp.h 2011-05-23 19:15:11.000000000 +0200 +@@ -66,7 +66,7 @@ + return; + } + +- if (setjmp (png_ptr->jmpbuf)) ++ if (setjmp(png_jmpbuf(png_ptr))) + { WMF_DEBUG (API,"Failed to write bitmap as PNG! (setjmp failed)"); + png_destroy_write_struct (&png_ptr,&info_ptr); + wmf_free (API,buffer); diff --git a/abs/extra/libwmf/libwmf-0.2.8.4-useafterfree.patch b/abs/extra/libwmf/libwmf-0.2.8.4-useafterfree.patch new file mode 100644 index 0000000..328c541 --- /dev/null +++ b/abs/extra/libwmf/libwmf-0.2.8.4-useafterfree.patch @@ -0,0 +1,10 @@ +--- libwmf-0.2.8.4/src/extra/gd/gd_clip.c.CVE-2009-1364-im-clip-list 2009-04-24 04:06:44.000000000 -0400 ++++ libwmf-0.2.8.4/src/extra/gd/gd_clip.c 2009-04-24 04:08:30.000000000 -0400 +@@ -70,6 +70,7 @@ void gdClipSetAdd(gdImagePtr im,gdClipRe + { more = gdRealloc (im->clip->list,(im->clip->max + 8) * sizeof (gdClipRectangle)); + if (more == 0) return; + im->clip->max += 8; ++ im->clip->list = more; + } + im->clip->list[im->clip->count] = (*rect); + im->clip->count++; diff --git a/abs/extra/libwmf/libwmf.install b/abs/extra/libwmf/libwmf.install new file mode 100644 index 0000000..9c99a90 --- /dev/null +++ b/abs/extra/libwmf/libwmf.install @@ -0,0 +1,13 @@ +post_install() { + if [ -x usr/bin/gdk-pixbuf-query-loaders ]; then + gdk-pixbuf-query-loaders > etc/gtk-2.0/gdk-pixbuf.loaders + fi +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/abs/extra/libxklavier/PKGBUILD b/abs/extra/libxklavier/PKGBUILD deleted file mode 100644 index 06e6444..0000000 --- a/abs/extra/libxklavier/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 68544 2010-02-13 09:51:41Z jgc $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: Arjan Timmerman <arjan@archlinux.org> - -pkgname=libxklavier -pkgver=5.0 -pkgrel=1 -pkgdesc="High-level API for X Keyboard Extension" -arch=('i686' 'x86_64') -license=('LGPL') -depends=('libxkbfile>=1.0.5' 'libxml2>=2.7.6' 'glib2>=2.22.3' 'xkeyboard-config>=1.6' 'libxi>=1.2.1' 'iso-codes>=3.10.1') -makedepends=('pkgconfig') -options=('!libtool' '!emptydirs') -url="http://gswitchit.sourceforge.net" -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('dfd94b17a752b2839281764f0a16af2b338024c8867c10fba7015f276dec4db0') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr \ - --with-xkb-base=/usr/share/X11/xkb --disable-static || return 1 - make || return 1 -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/abs/extra/libxml++/PKGBUILD b/abs/extra/libxml++/PKGBUILD index 15e8bab..8e7c83e 100644 --- a/abs/extra/libxml++/PKGBUILD +++ b/abs/extra/libxml++/PKGBUILD @@ -1,39 +1,39 @@ -# $Id: PKGBUILD 79727 2010-05-06 12:45:59Z jgc $ +# $Id: PKGBUILD 170207 2012-11-05 11:38:10Z jgc $ # Maintainer: damir <damir@archlinux.org> pkgbase=libxml++ pkgname=('libxml++' 'libxml++-docs') -pkgver=2.30.1 +pkgver=2.36.0 pkgrel=1 arch=('i686' 'x86_64') license=('LGPL') url="http://libxmlplusplus.sourceforge.net/" -makedepends=('pkgconfig' 'glibmm-docs' 'libxml2>=2.7.7' 'glibmm>=2.24.2') +makedepends=('pkgconfig' 'glibmm-docs' 'libxml2' 'glibmm') options=('!libtool' '!emptydirs') -source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgbase}/2.30/${pkgbase}-${pkgver}.tar.bz2) -sha256sums=('433f0e36486573a81582d62c83dc741d50bf795ce1a2dca076a54b16c28ab90a') +source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgbase}/2.36/${pkgbase}-${pkgver}.tar.xz) +sha256sums=('bfdf327bf9ebd12946b7aa6a152045f209d5c9fecd06ebfcdf9b3e7c1af6e2e1') build() { cd "${srcdir}/${pkgbase}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 + ./configure --prefix=/usr + make } package_libxml++() { pkgdesc="C++ bindings to libxml2" - depends=('libxml2>=2.7.7' 'glibmm>=2.24.2') + depends=('libxml2' 'glibmm') replaces=('libxml++2') provides=("libxml++2=${pkgver}") conflicts=('libxml++2') cd "${srcdir}/${pkgbase}-${pkgver}" - sed -i -e 's/install-data-am: install-data-local install-dist_referenceDATA/install-data-am: /' Makefile || return 1 - make DESTDIR="${pkgdir}" install || return 1 + sed -i -e 's/install-data-am: install-data-local install-dist_referenceDATA/install-data-am: /' Makefile + make DESTDIR="${pkgdir}" install } package_libxml++-docs() { pkgdesc="Developer documentation for libxml++" depends=('glibmm-docs') cd "${srcdir}/${pkgbase}-${pkgver}" - make DESTDIR="${pkgdir}" install-data-local install-dist_referenceDATA || return 1 + make DESTDIR="${pkgdir}" install-data-local install-dist_referenceDATA } diff --git a/abs/extra/libxml++/libxml++-2.36.0-1.src.tar.gz b/abs/extra/libxml++/libxml++-2.36.0-1.src.tar.gz new file mode 120000 index 0000000..5ef6071 --- /dev/null +++ b/abs/extra/libxml++/libxml++-2.36.0-1.src.tar.gz @@ -0,0 +1 @@ +/data/pkg_repo/src_packages/libxml++-2.36.0-1.src.tar.gz
\ No newline at end of file diff --git a/abs/extra/libyaml/PKGBUILD b/abs/extra/libyaml/PKGBUILD new file mode 100644 index 0000000..73d2c7b --- /dev/null +++ b/abs/extra/libyaml/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 66208 2012-02-23 03:22:37Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Michal Bozon <michal.bozon__at__gmail.com> + +pkgname=libyaml +pkgver=0.1.4 +pkgrel=2 +pkgdesc="YAML 1.1 library" +arch=('i686' 'x86_64') +url="http://pyyaml.org/wiki/LibYAML" +license=('MIT') +source=(http://pyyaml.org/download/libyaml/yaml-$pkgver.tar.gz) +md5sums=('36c852831d02cf90508c29852361d01b') + +build() { + cd "$srcdir/yaml-$pkgver" + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/yaml-$pkgver" + make DESTDIR="$pkgdir" install + install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE +} + diff --git a/abs/extra/libzip/PKGBUILD b/abs/extra/libzip/PKGBUILD new file mode 100644 index 0000000..b95a3a4 --- /dev/null +++ b/abs/extra/libzip/PKGBUILD @@ -0,0 +1,32 @@ +# $Id: PKGBUILD 154546 2012-03-30 00:01:03Z eric $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Tobias Powalowski <tpowa@archlinux.org> + +pkgname=libzip +pkgver=0.10.1 +pkgrel=1 +pkgdesc="A C library for reading, creating, and modifying zip archives" +url="http://www.nih.at/libzip/index.html" +license=('BSD') +arch=('i686' 'x86_64') +depends=('zlib') +options=('!libtool') +source=("http://www.nih.at/${pkgname}/${pkgname}-${pkgver}.tar.bz2" + 'fix-headers.patch') +md5sums=('d3e933ae049204badccf605f20aaecde' + '249395bd3a426c4c4e993e9d4753e1dd') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + patch -p1 -i "${srcdir}/fix-headers.patch" + autoreconf -i + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/abs/extra/libzip/fix-headers.patch b/abs/extra/libzip/fix-headers.patch new file mode 100644 index 0000000..7591710 --- /dev/null +++ b/abs/extra/libzip/fix-headers.patch @@ -0,0 +1,15 @@ +diff -urN libzip-0.10rc1.old/lib/Makefile.am libzip-0.10rc1/lib/Makefile.am +--- libzip-0.10rc1.old/lib/Makefile.am 2011-03-05 01:07:33.921722002 +0100 ++++ libzip-0.10rc1/lib/Makefile.am 2011-03-05 20:29:30.349388003 +0100 +@@ -2,8 +2,9 @@ + + lib_LTLIBRARIES = libzip.la + noinst_HEADERS = zipint.h +-include_HEADERS = zip.h +-libinclude_HEADERS = zipconf.h ++include_HEADERS = \ ++ zip.h \ ++ zipconf.h + + # also update CMakeLists.txt when changing version + libzip_la_LDFLAGS=-no-undefined -version-info 2:0 diff --git a/abs/extra/linuxtv-dvb-apps/PKGBUILD b/abs/extra/linuxtv-dvb-apps/PKGBUILD new file mode 100644 index 0000000..2414de4 --- /dev/null +++ b/abs/extra/linuxtv-dvb-apps/PKGBUILD @@ -0,0 +1,32 @@ +# $Id: PKGBUILD 80369 2012-11-21 04:04:30Z jconder $ +# Maintainer: Jonathan Conder <jonno.conder@gmail.com> +# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> +# Contributor: Camille Moncelier <pix@devlife.org> + +pkgname=linuxtv-dvb-apps +pkgver=1486 +pkgrel=2 +_hgrev=3fc7dfa68484 +pkgdesc='Viewer programs for DVB cards' +arch=('i686' 'x86_64') +url='http://www.linuxtv.org/' +license=('GPL') +source=("http://linuxtv.org/hg/dvb-apps/archive/$_hgrev.tar.bz2") +sha256sums=('60cfd45fe7417a4445a7814ce6e645ddaad0f8e934015c09d53eb93c8739b35a') + +build() { + cd "dvb-apps-$_hgrev" + rm -rf include + + make -C lib + make -C util +} + +package() { + cd "dvb-apps-$_hgrev" + + make -C lib DESTDIR="$pkgdir" install + make -C util DESTDIR="$pkgdir" install + + chmod 755 "$pkgdir"/usr/lib/*.so* +} diff --git a/abs/extra/llvm/PKGBUILD b/abs/extra/llvm/PKGBUILD new file mode 100644 index 0000000..515dbc7 --- /dev/null +++ b/abs/extra/llvm/PKGBUILD @@ -0,0 +1,226 @@ +# $Id: PKGBUILD 159472 2012-05-24 20:02:15Z foutrelis $ +# Maintainer: Evangelos Foutras <evangelos@foutrelis.com> +# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> +# Contributor: Sebastian Nowicki <sebnow@gmail.com> +# Contributor: Devin Cofer <ranguvar{AT]archlinux[DOT}us> +# Contributor: Tobias Kieslich <tobias@justdreams.de> +# Contributor: Geoffroy Carrier <geoffroy.carrier@aur.archlinux.org> +# Contributor: Tomas Lindquist Olsen <tomas@famolsen.dk> +# Contributor: Roberto Alsina <ralsina@kde.org> +# Contributor: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> + +pkgname=('llvm' 'llvm-ocaml' 'clang' 'clang-analyzer') +pkgver=3.1 +pkgrel=2 +arch=('i686' 'x86_64') +url="http://llvm.org/" +license=('custom:University of Illinois/NCSA Open Source License') +makedepends=('libffi' 'python2' 'ocaml') +source=(http://llvm.org/releases/$pkgver/$pkgname-$pkgver.src.tar.gz + http://llvm.org/releases/$pkgver/clang-$pkgver.src.tar.gz + http://dev.archlinux.org/~foutrelis/sources/compiler-rt/compiler-rt-$pkgver.src.tar.xz + llvm-Config-config.h + llvm-Config-llvm-config.h + cindexer-clang-path.patch + clang-pure64.patch + enable-lto.patch + clang-3.1-fix-libprofile_rt.a-location.patch) +sha256sums=('1ea05135197b5400c1f88d00ff280d775ce778f8f9ea042e25a1e1e734a4b9ab' + 'ff63e215dcd3e2838ffdea38502f8d35bab17e487f3c3799579961e452d5a786' + '563d8a5ef86123ed8775e115ad7f90c1aa3e80f70b4e587f1bccab2c10753558' + '312574e655f9a87784ca416949c505c452b819fad3061f2cde8aced6540a19a3' + '597dc5968c695bbdbb0eac9e8eb5117fcd2773bc91edf5ec103ecffffab8bc48' + '3074df5322900e087377a8e03a02115463ccc0011c25917c2f06df11facd9b92' + '288a82fbff17bc554f5863734246500e637882af33ee8511019d5e0d6cd20524' + 'f7145e203ffb4ce2c01976027f7840a9520e5341a9945f2459b6b11e5422d5b7' + '0d32ad283566357ca1bfbeb4cbe6b0b961943b79d3d718ed0435101c05629137') + +build() { + cd "$srcdir/$pkgname-$pkgver.src" + + # At the present, clang must reside inside the LLVM source code tree to build + # See http://llvm.org/bugs/show_bug.cgi?id=4840 + rm -rf tools/clang + cp -r "$srcdir/clang-$pkgver.src" tools/clang + + rm -rf projects/compiler-rt + cp -r "$srcdir/compiler-rt-$pkgver.src" projects/compiler-rt + + # Fix symbolic links from OCaml bindings to LLVM libraries + sed -i 's:\$(PROJ_libdir):/usr/lib/llvm:' bindings/ocaml/Makefile.ocaml + + # Fix installation directories, ./configure doesn't seem to set them right + sed -i -e 's:\$(PROJ_prefix)/etc/llvm:/etc/llvm:' \ + -e 's:\$(PROJ_prefix)/lib:$(PROJ_prefix)/lib/llvm:' \ + -e 's:\$(PROJ_prefix)/docs/llvm:$(PROJ_prefix)/share/doc/llvm:' \ + Makefile.config.in + sed -i '/ActiveLibDir = ActivePrefix/s:lib:lib/llvm:' \ + tools/llvm-config/llvm-config.cpp + sed -i 's:LLVM_LIBDIR="${prefix}/lib":LLVM_LIBDIR="${prefix}/lib/llvm":' \ + autoconf/configure.ac \ + configure + + # Fix insecure rpath (http://bugs.archlinux.org/task/14017) + sed -i 's:$(RPATH) -Wl,$(\(ToolDir\|LibDir\|ExmplDir\))::g' Makefile.rules + + # Fix clang path in CIndexer.cpp (https://bugs.archlinux.org/task/22799) + patch -d tools/clang -Np0 -i "$srcdir/cindexer-clang-path.patch" + + if [[ $CARCH == x86_64 ]]; then + # Adjust linker path + patch -d tools/clang -Np0 -i "$srcdir/clang-pure64.patch" + fi + + # Make -flto work + # Use gold instead of default linker, and always use the plugin + patch -d tools/clang -Np0 -i "$srcdir/enable-lto.patch" + + # Fix FS#29984: [clang] -coverage is broken + patch -d tools/clang -Np1 -i \ + "$srcdir/clang-3.1-fix-libprofile_rt.a-location.patch" + + # Apply strip option to configure + _optimized_switch="enable" + [[ $(check_option strip) == n ]] && _optimized_switch="disable" + + # Include location of libffi headers in CPPFLAGS + export CPPFLAGS="$CPPFLAGS $(pkg-config --cflags libffi)" + + # Use Python 2 + mkdir "$srcdir/python2-path" + ln -s /usr/bin/python2 "$srcdir/python2-path/python" + export PATH="$srcdir/python2-path:$PATH" + + # Force the use of GCC instead of clang + CC=gcc CXX=g++ \ + ./configure \ + --prefix=/usr \ + --libdir=/usr/lib/llvm \ + --sysconfdir=/etc \ + --enable-shared \ + --enable-libffi \ + --enable-targets=all \ + --disable-expensive-checks \ + --disable-debug-runtime \ + --disable-assertions \ + --with-binutils-include=/usr/include \ + --$_optimized_switch-optimized + + make REQUIRES_RTTI=1 +} + +package_llvm() { + pkgdesc="Low Level Virtual Machine" + depends=('perl' 'libffi') + + cd "$srcdir/$pkgname-$pkgver.src" + + # We move the clang directory out of the tree so it won't get installed and + # then we bring it back in for the clang package + mv tools/clang "$srcdir" + + # -j1 is due to race conditions during the installation of the OCaml bindings + make -j1 DESTDIR="$pkgdir" install + mv "$srcdir/clang" tools + + # OCaml bindings go to a separate package + rm -rf "$srcdir"/{ocaml,ocamldoc} + mv "$pkgdir"/usr/{lib/ocaml,share/doc/llvm/ocamldoc} "$srcdir" + + # Remove duplicate files installed by the OCaml bindings + rm "$pkgdir"/usr/{lib/llvm/libllvm*,share/doc/llvm/ocamldoc.tar.gz} + + # Fix permissions of static libs + chmod -x "$pkgdir"/usr/lib/llvm/*.a + + # Get rid of example Hello transformation + rm "$pkgdir"/usr/lib/llvm/*LLVMHello.* + + # Add ld.so.conf.d entry + install -d "$pkgdir/etc/ld.so.conf.d" + echo /usr/lib/llvm >"$pkgdir/etc/ld.so.conf.d/llvm.conf" + + # Symlink LLVMgold.so into /usr/lib/bfd-plugins + # (https://bugs.archlinux.org/task/28479) + install -d "$pkgdir/usr/lib/bfd-plugins" + ln -s ../llvm/LLVMgold.so "$pkgdir/usr/lib/bfd-plugins/LLVMgold.so" + + if [[ $CARCH == x86_64 ]]; then + # Needed for multilib (https://bugs.archlinux.org/task/29951) + # Header stubs are taken from Fedora + for _header in config llvm-config; do + mv "$pkgdir/usr/include/llvm/Config/$_header"{,-64}.h + cp "$srcdir/llvm-Config-$_header.h" \ + "$pkgdir/usr/include/llvm/Config/$_header.h" + done + fi + + install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +package_llvm-ocaml() { + pkgdesc="OCaml bindings for LLVM" + depends=("llvm=$pkgver-$pkgrel" 'ocaml') + + cd "$srcdir/llvm-$pkgver.src" + + install -d "$pkgdir"/{usr/lib,usr/share/doc/llvm} + cp -r "$srcdir/ocaml" "$pkgdir/usr/lib" + cp -r "$srcdir/ocamldoc" "$pkgdir/usr/share/doc/llvm" + + # Remove execute bit from static libraries + chmod -x "$pkgdir"/usr/lib/ocaml/libllvm*.a + + install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/llvm-ocaml/LICENSE" +} + +package_clang() { + pkgdesc="C language family frontend for LLVM" + url="http://clang.llvm.org/" + depends=("llvm=$pkgver-$pkgrel" 'gcc') + + # Fix installation path for clang docs + sed -i 's:$(PROJ_prefix)/share/doc/llvm:$(PROJ_prefix)/share/doc/clang:' \ + "$srcdir/llvm-$pkgver.src/Makefile.config" + + cd "$srcdir/llvm-$pkgver.src/tools/clang" + make DESTDIR="$pkgdir" install + + # Fix permissions of static libs + chmod -x "$pkgdir"/usr/lib/llvm/*.a + + # Revert the path change in case we want to do a repackage later + sed -i 's:$(PROJ_prefix)/share/doc/clang:$(PROJ_prefix)/share/doc/llvm:' \ + "$srcdir/llvm-$pkgver.src/Makefile.config" + + install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/clang/LICENSE" +} + +package_clang-analyzer() { + pkgdesc="A source code analysis framework" + url="http://clang-analyzer.llvm.org/" + depends=("clang=$pkgver-$pkgrel" 'python2') + + cd "$srcdir/llvm-$pkgver.src/tools/clang" + + install -d "$pkgdir"/usr/{bin,lib/clang-analyzer} + for _tool in scan-{build,view}; do + cp -r tools/$_tool "$pkgdir/usr/lib/clang-analyzer/" + ln -s /usr/lib/clang-analyzer/$_tool/$_tool "$pkgdir/usr/bin/" + done + + # Use Python 2 + sed -i \ + -e 's|env python$|&2|' \ + -e 's|/usr/bin/python$|&2|' \ + "$pkgdir/usr/lib/clang-analyzer/scan-view/scan-view" \ + "$pkgdir/usr/lib/clang-analyzer/scan-build/set-xcode-analyzer" + + # Compile Python scripts + python2 -m compileall "$pkgdir/usr/lib/clang-analyzer" + python2 -O -m compileall "$pkgdir/usr/lib/clang-analyzer" + + install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/clang-analyzer/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/llvm/bug-9869-operator-h-c++0x.patch b/abs/extra/llvm/bug-9869-operator-h-c++0x.patch new file mode 100644 index 0000000..b95d7d7 --- /dev/null +++ b/abs/extra/llvm/bug-9869-operator-h-c++0x.patch @@ -0,0 +1,57 @@ +--- llvm/trunk/include/llvm/Operator.h 2011/02/07 16:40:21 125006 ++++ llvm/trunk/include/llvm/Operator.h 2011/05/08 01:59:22 131062 +@@ -186,28 +186,46 @@ + }; + + class AddOperator +- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Add> {}; ++ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Add> { ++ ~AddOperator(); // DO NOT IMPLEMENT ++}; + class SubOperator +- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Sub> {}; ++ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Sub> { ++ ~SubOperator(); // DO NOT IMPLEMENT ++}; + class MulOperator +- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Mul> {}; ++ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Mul> { ++ ~MulOperator(); // DO NOT IMPLEMENT ++}; + class ShlOperator +- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Shl> {}; ++ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Shl> { ++ ~ShlOperator(); // DO NOT IMPLEMENT ++}; + + + class SDivOperator +- : public ConcreteOperator<PossiblyExactOperator, Instruction::SDiv> {}; ++ : public ConcreteOperator<PossiblyExactOperator, Instruction::SDiv> { ++ ~SDivOperator(); // DO NOT IMPLEMENT ++}; + class UDivOperator +- : public ConcreteOperator<PossiblyExactOperator, Instruction::UDiv> {}; ++ : public ConcreteOperator<PossiblyExactOperator, Instruction::UDiv> { ++ ~UDivOperator(); // DO NOT IMPLEMENT ++}; + class AShrOperator +- : public ConcreteOperator<PossiblyExactOperator, Instruction::AShr> {}; ++ : public ConcreteOperator<PossiblyExactOperator, Instruction::AShr> { ++ ~AShrOperator(); // DO NOT IMPLEMENT ++}; + class LShrOperator +- : public ConcreteOperator<PossiblyExactOperator, Instruction::LShr> {}; ++ : public ConcreteOperator<PossiblyExactOperator, Instruction::LShr> { ++ ~LShrOperator(); // DO NOT IMPLEMENT ++}; + + + + class GEPOperator + : public ConcreteOperator<Operator, Instruction::GetElementPtr> { ++ ~GEPOperator(); // DO NOT IMPLEMENT ++ + enum { + IsInBounds = (1 << 0) + }; diff --git a/abs/extra/llvm/cindexer-clang-path.patch b/abs/extra/llvm/cindexer-clang-path.patch new file mode 100644 index 0000000..ddaab69 --- /dev/null +++ b/abs/extra/llvm/cindexer-clang-path.patch @@ -0,0 +1,10 @@ +--- tools/libclang/CIndexer.cpp.orig 2011-04-07 13:08:24.000000000 +0300 ++++ tools/libclang/CIndexer.cpp 2011-04-07 13:11:52.224884642 +0300 +@@ -80,6 +80,7 @@ std::string CIndexer::getClangResourcesP + + // We now have the CIndex directory, locate clang relative to it. + LibClangPath.eraseComponent(); ++ LibClangPath.eraseComponent(); + #endif + + LibClangPath.appendComponent("clang"); diff --git a/abs/extra/llvm/clang-3.1-fix-libprofile_rt.a-location.patch b/abs/extra/llvm/clang-3.1-fix-libprofile_rt.a-location.patch new file mode 100644 index 0000000..080aa4f --- /dev/null +++ b/abs/extra/llvm/clang-3.1-fix-libprofile_rt.a-location.patch @@ -0,0 +1,12 @@ +diff -upr clang-3.1.src.orig/lib/Driver/Tools.cpp clang-3.1.src/lib/Driver/Tools.cpp +--- clang-3.1.src.orig/lib/Driver/Tools.cpp 2012-04-19 00:32:25.000000000 +0300 ++++ clang-3.1.src/lib/Driver/Tools.cpp 2012-05-23 21:12:08.000000000 +0300 +@@ -193,7 +193,7 @@ static void addProfileRT(const ToolChain + // libprofile_rt.so. We used to use the -l:libprofile_rt.a syntax, but that is + // not supported by old linkers. + std::string ProfileRT = +- std::string(TC.getDriver().Dir) + "/../lib/libprofile_rt.a"; ++ std::string(TC.getDriver().Dir) + "/../lib/llvm/libprofile_rt.a"; + + CmdArgs.push_back(Args.MakeArgString(ProfileRT)); + } diff --git a/abs/extra/llvm/clang-plugin-loader-registry.patch b/abs/extra/llvm/clang-plugin-loader-registry.patch new file mode 100644 index 0000000..f46eb9f --- /dev/null +++ b/abs/extra/llvm/clang-plugin-loader-registry.patch @@ -0,0 +1,11 @@ +diff -upr llvm-2.7.orig/autoconf/ExportMap.map llvm-2.7/autoconf/ExportMap.map +--- llvm-2.7.orig/autoconf/ExportMap.map 2010-02-25 00:33:41.000000000 +0200 ++++ llvm-2.7/autoconf/ExportMap.map 2010-05-10 14:14:22.000000000 +0300 +@@ -2,6 +2,7 @@ + global: main; + __progname; + environ; ++ _ZN4llvm8RegistryIN5clang14FrontendActionENS_14RegistryTraitsIS2_EEE4HeadE; + + local: *; + }; diff --git a/abs/extra/llvm/clang-pure64.patch b/abs/extra/llvm/clang-pure64.patch new file mode 100644 index 0000000..9bbbfaa --- /dev/null +++ b/abs/extra/llvm/clang-pure64.patch @@ -0,0 +1,13 @@ +Index: lib/Driver/Tools.cpp +=================================================================== +--- lib/Driver/Tools.cpp (revision 123373) ++++ lib/Driver/Tools.cpp (working copy) +@@ -3306,7 +3306,7 @@ + else if (ToolChain.getArch() == llvm::Triple::ppc64) + CmdArgs.push_back("/lib64/ld64.so.1"); + else +- CmdArgs.push_back("/lib64/ld-linux-x86-64.so.2"); ++ CmdArgs.push_back("/lib/ld-linux-x86-64.so.2"); + } + + CmdArgs.push_back("-o"); diff --git a/abs/extra/llvm/clang-toolchains-gcc-versions.patch b/abs/extra/llvm/clang-toolchains-gcc-versions.patch new file mode 100644 index 0000000..7e00837 --- /dev/null +++ b/abs/extra/llvm/clang-toolchains-gcc-versions.patch @@ -0,0 +1,12 @@ +diff -upr clang-2.9.orig/lib/Driver/ToolChains.cpp clang-2.9/lib/Driver/ToolChains.cpp +--- clang-2.9.orig/lib/Driver/ToolChains.cpp 2011-03-21 23:29:27.000000000 +0200 ++++ clang-2.9/lib/Driver/ToolChains.cpp 2011-04-08 00:03:34.000000000 +0300 +@@ -1449,7 +1449,7 @@ Linux::Linux(const HostInfo &Host, const + GccTriple = "i586-suse-linux"; + } + +- const char* GccVersions[] = {"4.5.2", "4.5.1", "4.5", "4.4.5", "4.4.4", ++ const char* GccVersions[] = {"4.6.1", "4.5.2", "4.5.1", "4.5", "4.4.5", "4.4.4", + "4.4.3", "4.4", "4.3.4", "4.3.3", "4.3.2", + "4.3", "4.2.4", "4.2.3", "4.2.2", "4.2.1", + "4.2"}; diff --git a/abs/extra/llvm/enable-lto.patch b/abs/extra/llvm/enable-lto.patch new file mode 100644 index 0000000..3205fbf --- /dev/null +++ b/abs/extra/llvm/enable-lto.patch @@ -0,0 +1,32 @@ +Index: lib/Driver/ToolChains.cpp +=================================================================== +--- lib/Driver/ToolChains.cpp (revision 123373) ++++ lib/Driver/ToolChains.cpp (working copy) +@@ -1398,7 +1398,7 @@ + PPaths.push_back(Twine(GCCInstallation.getParentLibPath() + "/../" + + GCCInstallation.getTriple() + "/bin").str()); + +- Linker = GetProgramPath("ld"); ++ Linker = GetProgramPath("ld.gold"); + + LinuxDistro Distro = DetectLinuxDistro(Arch); + +Index: lib/Driver/Tools.cpp +=================================================================== +--- lib/Driver/Tools.cpp (revision 123373) ++++ lib/Driver/Tools.cpp (working copy) +@@ -3412,11 +3412,11 @@ + // Tell the linker to load the plugin. This has to come before AddLinkerInputs + // as gold requires -plugin to come before any -plugin-opt that -Wl might + // forward. +- if (D.IsUsingLTO(Args) || Args.hasArg(options::OPT_use_gold_plugin)) { ++ // if (D.IsUsingLTO(Args) || Args.hasArg(options::OPT_use_gold_plugin)) { + CmdArgs.push_back("-plugin"); +- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; ++ std::string Plugin = ToolChain.getDriver().Dir + "/../lib/llvm/LLVMgold.so"; + CmdArgs.push_back(Args.MakeArgString(Plugin)); +- } ++ // } + + AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs); + } diff --git a/abs/extra/llvm/llvm-3.1-2.src.tar.gz b/abs/extra/llvm/llvm-3.1-2.src.tar.gz new file mode 120000 index 0000000..4ea98f7 --- /dev/null +++ b/abs/extra/llvm/llvm-3.1-2.src.tar.gz @@ -0,0 +1 @@ +/data/pkg_repo/src_packages/llvm-3.1-2.src.tar.gz
\ No newline at end of file diff --git a/abs/extra/llvm/llvm-Config-config.h b/abs/extra/llvm/llvm-Config-config.h new file mode 100644 index 0000000..c369b45 --- /dev/null +++ b/abs/extra/llvm/llvm-Config-config.h @@ -0,0 +1,9 @@ +#include <bits/wordsize.h> + +#if __WORDSIZE == 32 +#include "config-32.h" +#elif __WORDSIZE == 64 +#include "config-64.h" +#else +#error "Unknown word size" +#endif diff --git a/abs/extra/llvm/llvm-Config-llvm-config.h b/abs/extra/llvm/llvm-Config-llvm-config.h new file mode 100644 index 0000000..2fa08c9 --- /dev/null +++ b/abs/extra/llvm/llvm-Config-llvm-config.h @@ -0,0 +1,9 @@ +#include <bits/wordsize.h> + +#if __WORDSIZE == 32 +#include "llvm-config-32.h" +#elif __WORDSIZE == 64 +#include "llvm-config-64.h" +#else +#error "Unknown word size" +#endif diff --git a/abs/extra/lm_sensors/ChangeLog b/abs/extra/lm_sensors/ChangeLog deleted file mode 100644 index 6f99fe0..0000000 --- a/abs/extra/lm_sensors/ChangeLog +++ /dev/null @@ -1,62 +0,0 @@ -2010-10-11 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.2.0-1 - * Upstream update - * Updated license - * Removed superfluous install scriptlet - -2010-09-23 Eric Belanger <eric@archlinux.org> - - * Added comment about beep dependency in healthd.conf (close FS#20802) - * Cleaned up PKGBUILD - -2010-02-02 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.1.2-1 - * Upstream update - * Fixed fancontrol daemon script (close FS#17775) - -2009-11-23 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.1.1-4 - * Added more configs in backup array (close FS#17260) - * Changed rrdtool optdepends to a depends - -2009-11-20 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.1.1-3 - * Fixed stopping of fancontrol daemon script (close FS#17083) - * Fixed healthd script (close FS#17089) - -2009-09-28 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.1.1-2 - * Fixed fancontrol daemon script (close FS#15269) - * Added sensord daemon script (close FS#15811) - -2009-06-24 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.1.1-1 - * Upstream update - * Added healthd daemon (close FS#14597) - -2009-03-03 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.1.0-1 - * Upstream update - * Updated sensors-detect.patch - -2009-01-03 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.0.3-2 - * Rebuilt against rrdtool 1.3.5 - -2008-11-08 Eric Belanger <eric@archlinux.org> - - * lm_sensors 3.0.3-1 - * Upstream update - * Updated sensors-detect.patch patch - * FHS man pages - * Changed sensors daemon script to move config in new location (cf. FS#9516) - * Did several other fixes and clean up in sensors daemon script - * Added ChangeLog diff --git a/abs/extra/lm_sensors/PKGBUILD b/abs/extra/lm_sensors/PKGBUILD index 95eabdd..9635bb1 100644 --- a/abs/extra/lm_sensors/PKGBUILD +++ b/abs/extra/lm_sensors/PKGBUILD @@ -1,35 +1,45 @@ -# $Id: PKGBUILD 94897 2010-10-12 01:12:40Z eric $ -# Maintainer: Eric Belanger <eric@archlinux.org> +# $Id: PKGBUILD 170399 2012-11-07 01:42:13Z eric $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> pkgname=lm_sensors -pkgver=3.2.0 +pkgver=3.3.3 pkgrel=1 pkgdesc="Collection of user space tools for general SMBus access and hardware monitoring" arch=('i686' 'x86_64') url="http://www.lm-sensors.org/" license=('GPL' 'LGPL') -depends=('perl' 'sysfsutils' 'rrdtool') -backup=('etc/sensors3.conf' 'etc/conf.d/healthd' 'etc/conf.d/sensord') +depends=('perl' 'sysfsutils') +makedepends=('rrdtool') +optdepends=('rrdtool: for logging with sensord') +backup=('etc/sensors3.conf' 'etc/healthd.conf' 'etc/conf.d/sensord') options=('!emptydirs') -changelog=ChangeLog -source=(http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${pkgver}.tar.bz2 \ - sensors.rc fancontrol.rc sensors-detect.patch healthd healthd.conf healthd.rc \ - sensord.conf sensord.rc daemonarg.patch) -md5sums=('829d88fb09d67723fbf42853eb84d1fd' 'c370f5e620bfe41113354a1e22c0c18c'\ - '232bedf043dd5dedde82df1a399c682c' '47c40b381d1f25d6634ae84cecf35f33'\ - '6549050897c237514aeaa2bb6cfd29ea' 'f8af587038b0e2a89c441f7eeaa5e640'\ - '970408d2e509dc4138927020efefe323' '96a8dd468e81d455ec9b165bdf33e0b7'\ - '41a5c20854bbff00ea7174bd2276b736' '40c8eb16af8249a0f1d851fc1057ea15') -sha1sums=('9c9ac470289e831076da52d644185b34058a457d' 'b2e664b9b87759991f02d0a1e8cac5e95098c0a5'\ - 'a068ac0a3115a6191a487e11422506baa922b40a' '47095a32a918d6be50bd8daa8aaa9c24940d60e9'\ - '78b5cd36c3cb8e98b972cdd8c4a12687d79a79a8' '6c4e8a2d89dd2fd3ca2f0f4f3b1230111e01b0fc'\ - 'e662881f5d3f3f35a1bc97ba45d2c471dd28c37f' 'de8d4d65406815c389f8a04e2a8508a1ae6749c8'\ - '72a60251d1d55a67307dab4105d9f3f01a080af4' '34241388c4001bfb6e49b7e10da1217e29a258d6') +source=(http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${pkgver}.tar.bz2{,.sig} \ + sensors.rc fancontrol.rc healthd healthd.conf healthd.rc sensord.conf \ + sensord.rc fancontrol.service sensord.service healthd.service \ + daemonarg.patch linux_3.0.patch) +sha1sums=('b55c06f425993e42f13553f204066c446da36fd3' + '035a721f20e4ad568f4fdde2d7c25d906c192458' + 'b2e664b9b87759991f02d0a1e8cac5e95098c0a5' + 'a068ac0a3115a6191a487e11422506baa922b40a' + 'afaad558d2ad4732aa53b69afa23ccf37bc67ab1' + '6c4e8a2d89dd2fd3ca2f0f4f3b1230111e01b0fc' + 'de5a46afc39a77ae8721246a0223baf21a2d4c9c' + 'de8d4d65406815c389f8a04e2a8508a1ae6749c8' + '72a60251d1d55a67307dab4105d9f3f01a080af4' + '7a4a4d1442aeeba0ba8aefb742a3ef187b593f4c' + 'eff43b4882d25dae7dd0b33eb2e33b0836a5cc51' + 'a7a20eb3c799d70287e6c7968a7ab42165925293' + '34241388c4001bfb6e49b7e10da1217e29a258d6' + '5662828085cdd981f0dc7cf8f79d3d6e2b72f50c') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 < ../sensors-detect.patch + sed -i -e 's|/etc/sysconfig|/etc/conf.d|' \ + -e 's|/etc/init.d/lm_sensors|/etc/rc.d/sensors|' prog/{detect/sensors-detect,init/lm_sensors.service} + sed -i 's@\(/bin/systemctl\|/lib/systemd/system\)@/usr\1@g' prog/detect/sensors-detect + sed -i 's/EnvironmentFile=/EnvironmentFile=-/' prog/init/lm_sensors.service patch -p1 < ../daemonarg.patch + patch -p0 < ../linux_3.0.patch make PREFIX=/usr } @@ -37,11 +47,15 @@ package() { cd "${srcdir}/${pkgname}-${pkgver}" make PROG_EXTRA=sensord BUILD_STATIC_LIB=0 \ PREFIX=/usr MANDIR=/usr/share/man DESTDIR="${pkgdir}" install + install -D -m644 prog/init/lm_sensors.service "${pkgdir}/usr/lib/systemd/system/lm_sensors.service" install -D -m755 "${srcdir}/sensors.rc" "${pkgdir}/etc/rc.d/sensors" install -D -m755 "${srcdir}/fancontrol.rc" "${pkgdir}/etc/rc.d/fancontrol" install -D -m755 "${srcdir}/healthd" "${pkgdir}/usr/sbin/healthd" install -D -m755 "${srcdir}/healthd.rc" "${pkgdir}/etc/rc.d/healthd" - install -D -m644 "${srcdir}/healthd.conf" "${pkgdir}/etc/conf.d/healthd" + install -D -m644 "${srcdir}/healthd.conf" "${pkgdir}/etc/healthd.conf" install -D -m755 "${srcdir}/sensord.rc" "${pkgdir}/etc/rc.d/sensord" install -D -m644 "${srcdir}/sensord.conf" "${pkgdir}/etc/conf.d/sensord" + install -D -m644 "${srcdir}/fancontrol.service" "${pkgdir}/usr/lib/systemd/system/fancontrol.service" + install -D -m644 "${srcdir}/sensord.service" "${pkgdir}/usr/lib/systemd/system/sensord.service" + install -D -m644 "${srcdir}/healthd.service" "${pkgdir}/usr/lib/systemd/system/healthd.service" } diff --git a/abs/extra/lm_sensors/fancontrol.service b/abs/extra/lm_sensors/fancontrol.service new file mode 100644 index 0000000..c86b498 --- /dev/null +++ b/abs/extra/lm_sensors/fancontrol.service @@ -0,0 +1,9 @@ +[Unit] +Description=Fan control daemon + +[Service] +PIDFile=/var/run/fancontrol.pid +ExecStart=/usr/sbin/fancontrol + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/lm_sensors/healthd b/abs/extra/lm_sensors/healthd index 0315dd7..5ffed56 100644 --- a/abs/extra/lm_sensors/healthd +++ b/abs/extra/lm_sensors/healthd @@ -4,7 +4,7 @@ # /usr/sbin/healthd # -. /etc/conf.d/healthd +. /etc/healthd.conf cmd="${ALARM_CMD}" addr="${ADMIN_EMAIL}" @@ -21,6 +21,13 @@ while [ $# -gt 0 ] ; do esac done +case "${ALARM_RESET}" in + yes) /usr/bin/sensors > /dev/null + ;; + no) true + ;; +esac + [ -n "${cmd}" ] && [ -n "$( which -- "${cmd%% *}" )" ] || \ [ -n "${addr}" ] || exit 1 diff --git a/abs/extra/lm_sensors/healthd.rc b/abs/extra/lm_sensors/healthd.rc index 7bb7951..f50f4a6 100644 --- a/abs/extra/lm_sensors/healthd.rc +++ b/abs/extra/lm_sensors/healthd.rc @@ -1,29 +1,13 @@ #!/bin/bash -# -# /etc/rc.d/healthd -# - . /etc/rc.conf . /etc/rc.d/functions -. /etc/conf.d/healthd - -maybe_alarm_reset() { - case "${ALARM_RESET}" in - yes) /usr/bin/sensors > /dev/null - ;; - no) true - ;; - *) false - esac - return $? -} PID=$(pidof -x -o %PPID /usr/sbin/healthd) case "${1}" in start) stat_busy "Starting Health Daemon" - [ -z "${PID}" ] && maybe_alarm_reset && /usr/sbin/healthd &> /dev/null + [ -z "${PID}" ] && /usr/sbin/healthd &> /dev/null if [ $? -gt 0 ]; then stat_fail else diff --git a/abs/extra/lm_sensors/healthd.service b/abs/extra/lm_sensors/healthd.service new file mode 100644 index 0000000..59d3270 --- /dev/null +++ b/abs/extra/lm_sensors/healthd.service @@ -0,0 +1,9 @@ +[Unit] +Description=A daemon which can be used to alert you in the event of a hardware health monitoring alarm + +[Service] +Type=forking +ExecStart=/usr/sbin/healthd + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/lm_sensors/linux_3.0.patch b/abs/extra/lm_sensors/linux_3.0.patch new file mode 100644 index 0000000..da02a3d --- /dev/null +++ b/abs/extra/lm_sensors/linux_3.0.patch @@ -0,0 +1,11 @@ +--- prog/detect/sensors-detect 2011-08-02 10:23:46.000000000 +0200 ++++ prog/detect/sensors-detect 2011-08-02 10:24:04.000000000 +0200 +@@ -2472,7 +2472,7 @@ + + sub initialize_kernel_version + { +- `uname -r` =~ /(\d+)\.(\d+)\.(\d+)(.*)/; ++ `uname -r` =~ /(\d+)\.(\d+)(.*)/; + @kernel_version = ($1, $2, $3, $4); + chomp($kernel_arch = `uname -m`); + diff --git a/abs/extra/lm_sensors/sensord.service b/abs/extra/lm_sensors/sensord.service new file mode 100644 index 0000000..6d272f1 --- /dev/null +++ b/abs/extra/lm_sensors/sensord.service @@ -0,0 +1,9 @@ +[Unit] +Description=Sensor information logging daemon + +[Service] +PIDFile=/var/run/sensord.pid +ExecStart=/usr/sbin/sensord + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/lm_sensors/sensors-detect.patch b/abs/extra/lm_sensors/sensors-detect.patch deleted file mode 100644 index 1d12a2c..0000000 --- a/abs/extra/lm_sensors/sensors-detect.patch +++ /dev/null @@ -1,61 +0,0 @@ -diff -Naur lm_sensors-3.1.0/prog/detect/sensors-detect lm_sensors-3.1.0-new/prog/detect/sensors-detect ---- lm_sensors-3.1.0/prog/detect/sensors-detect 2009-03-03 20:36:33.000000000 -0500 -+++ lm_sensors-3.1.0-new/prog/detect/sensors-detect 2009-03-03 20:52:06.000000000 -0500 -@@ -5282,21 +5282,21 @@ - } - } - -- my $have_sysconfig = -d '/etc/sysconfig'; -- printf "Do you want to \%s /etc/sysconfig/lm_sensors? (\%s): ", -- (-e '/etc/sysconfig/lm_sensors' ? 'overwrite' : 'generate'), -+ my $have_sysconfig = -d '/etc/conf.d'; -+ printf "Do you want to \%s /etc/conf.d/lm_sensors? (\%s): ", -+ (-e '/etc/conf.d/lm_sensors' ? 'overwrite' : 'generate'), - ($have_sysconfig ? 'YES/no' : 'yes/NO'); - $_ = <STDIN>; - if (($have_sysconfig and not m/^\s*n/i) or m/^\s*y/i) { - unless ($have_sysconfig) { -- mkdir('/etc/sysconfig', 0777) -- or die "Sorry, can't create /etc/sysconfig ($!)"; -+ mkdir('/etc/conf.d', 0777) -+ or die "Sorry, can't create /etc/conf.d ($!)"; - } -- open(local *SYSCONFIG, ">/etc/sysconfig/lm_sensors") -- or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)"; -+ open(local *SYSCONFIG, ">/etc/conf.d/lm_sensors") -+ or die "Sorry, can't create /etc/conf.d/lm_sensors ($!)"; - print SYSCONFIG "# Generated by sensors-detect on " . scalar localtime() . "\n"; - print SYSCONFIG <<'EOT'; --# This file is sourced by /etc/init.d/lm_sensors and defines the modules to -+# This file is sourced by /etc/rc.d/lm_sensors and defines the modules to - # be loaded/unloaded. - # - # The format of this file is a shell script that simply defines variables: -@@ -5322,13 +5322,13 @@ - } - close(SYSCONFIG); - -- print "Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors\n". -+ print "Copy prog/init/lm_sensors.init to /etc/rc.d/lm_sensors\n". - "for initialization at boot time.\n" -- unless -f "/etc/init.d/lm_sensors"; -+ unless -f "/etc/rc.d/lm_sensors"; - -- if (-x "/sbin/insserv" && -f "/etc/init.d/lm_sensors") { -- system("/sbin/insserv", "/etc/init.d/lm_sensors"); -- } elsif (-x "/sbin/chkconfig" && -f "/etc/init.d/lm_sensors") { -+ if (-x "/sbin/insserv" && -f "/etc/rc.d/lm_sensors") { -+ system("/sbin/insserv", "/etc/rc.d/lm_sensors"); -+ } elsif (-x "/sbin/chkconfig" && -f "/etc/rc.d/lm_sensors") { - system("/sbin/chkconfig", "lm_sensors", "on"); - if (-x "/sbin/service") { - system("/sbin/service", "lm_sensors", "start"); -@@ -5377,7 +5377,7 @@ - exit -1; - } - -- if (-x "/sbin/service" && -f "/etc/init.d/lm_sensors" && -+ if (-x "/sbin/service" && -f "/etc/rc.d/sensors" && - -f "/var/lock/subsys/lm_sensors") { - system("/sbin/service", "lm_sensors", "stop"); - } diff --git a/abs/extra/lm_sensors/sensors.install b/abs/extra/lm_sensors/sensors.install deleted file mode 100644 index d593f84..0000000 --- a/abs/extra/lm_sensors/sensors.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - echo ">>> to control the lm_sensors daemon type" - echo ">>> \"/etc/rc.d/sensors start|stop|restart\" " - echo ">>> --------------------------------------" - echo ">>> before you can use the fancontrol daemon" - echo ">>> first create a fancontrol config file, use \"pwmconfig\"" - echo ">>> then type \"/etc/rc.d/fancontrol start|stop|restart\" " - echo ">>> --------------------------------------" - echo ">>> to decode memory SPD timings modprobe eeprom module" - echo ">>> and get this perl script from" - echo ">>> \"http://www.lm-sensors.org/browser/lm-sensors/trunk/prog/eeprom/decode-dimms.pl\"" -} diff --git a/abs/extra/lua/PKGBUILD b/abs/extra/lua/PKGBUILD new file mode 100644 index 0000000..9ed38d8 --- /dev/null +++ b/abs/extra/lua/PKGBUILD @@ -0,0 +1,42 @@ +# $Id: PKGBUILD 156332 2012-04-17 10:35:09Z bluewind $ +# Maintainer: Juergen Hoetzel <juergen@archlinux.org> +# Contributor: Damir Perisa <damir.perisa@bluewin.ch> + +pkgname=lua +pkgver=5.1.5 +pkgrel=2 +pkgdesc="A powerful light-weight programming language designed for extending applications" +arch=('i686' 'x86_64') +url="http://www.lua.org/" +depends=('readline') +license=('MIT') +options=('!makeflags' '!emptydirs') +source=(http://www.lua.org/ftp/${pkgname}-${pkgver}.tar.gz + lua-arch.patch lua-5.1-cflags.diff) +md5sums=('2e115fe26e435e33b0d5c022e4490567' + 'fa25feb70ef9fec975b1c20da5098b3c' + '249582bf1fd861ccf492d2c35a9fe732') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i "${srcdir}/lua-arch.patch" + patch -p1 -i "${srcdir}/lua-5.1-cflags.diff" + export CFLAGS="$CFLAGS -fPIC" + + make INSTALL_DATA="cp -d" TO_LIB="liblua.a liblua.so liblua.so.5.1" \ + INSTALL_TOP="${pkgdir}/usr" INSTALL_MAN="${pkgdir}/usr/share/man/man1" \ + linux +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make INSTALL_DATA="cp -d" TO_LIB="liblua.a liblua.so liblua.so.5.1 liblua.so.$pkgver" \ + INSTALL_TOP="${pkgdir}/usr" INSTALL_MAN="${pkgdir}/usr/share/man/man1" \ + install + install -D -m644 etc/lua.pc "${pkgdir}/usr/lib/pkgconfig/lua.pc" + install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/COPYRIGHT" + + # Install the documentation + install -d "${pkgdir}/usr/share/doc/lua" + install -m644 doc/*.{gif,png,css,html} "${pkgdir}/usr/share/doc/lua" +} diff --git a/abs/extra/community/lua/lua-5.1-cflags.diff b/abs/extra/lua/lua-5.1-cflags.diff index db658ae..db658ae 100644 --- a/abs/extra/community/lua/lua-5.1-cflags.diff +++ b/abs/extra/lua/lua-5.1-cflags.diff diff --git a/abs/extra/lua/lua-arch.patch b/abs/extra/lua/lua-arch.patch new file mode 100644 index 0000000..d8650c3 --- /dev/null +++ b/abs/extra/lua/lua-arch.patch @@ -0,0 +1,66 @@ +diff -ur lua-5.1.4/etc/lua.pc lua-5.1.4-new/etc/lua.pc +--- lua-5.1.4/etc/lua.pc 2008-08-08 14:46:11.000000000 +0200 ++++ lua-5.1.4-new/etc/lua.pc 2012-02-23 18:25:34.000000000 +0100 +@@ -8,6 +8,6 @@ + + # grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/' +-prefix= /usr/local ++prefix= /usr + INSTALL_BIN= ${prefix}/bin + INSTALL_INC= ${prefix}/include + INSTALL_LIB= ${prefix}/lib +diff -ur lua-5.1.4/src/luaconf.h lua-5.1.4-new/src/luaconf.h +--- lua-5.1.4/src/luaconf.h 2008-02-11 17:25:08.000000000 +0100 ++++ lua-5.1.4-new/src/luaconf.h 2012-02-23 18:25:34.000000000 +0100 +@@ -94,7 +94,7 @@ + ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll" + + #else +-#define LUA_ROOT "/usr/local/" ++#define LUA_ROOT "/usr/" + #define LUA_LDIR LUA_ROOT "share/lua/5.1/" + #define LUA_CDIR LUA_ROOT "lib/lua/5.1/" + #define LUA_PATH_DEFAULT \ +diff -ur lua-5.1.4/src/Makefile lua-5.1.4-new/src/Makefile +--- lua-5.1.4/src/Makefile 2008-01-19 20:37:58.000000000 +0100 ++++ lua-5.1.4-new/src/Makefile 2012-02-23 18:26:43.000000000 +0100 +@@ -23,6 +23,7 @@ + PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris + + LUA_A= liblua.a ++LUA_SO= liblua.so + CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \ + lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \ + lundump.o lvm.o lzio.o +@@ -36,7 +37,7 @@ + LUAC_O= luac.o print.o + + ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O) +-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) ++ALL_T= $(LUA_A) $(LUA_SO) $(LUA_T) $(LUAC_T) + ALL_A= $(LUA_A) + + default: $(PLAT) +@@ -51,6 +52,11 @@ + $(AR) $@ $? + $(RANLIB) $@ + ++$(LUA_SO): $(CORE_O) $(LIB_O) ++ $(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS) ++ ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V) ++ ln -sf $(LUA_SO).$(R) $(LUA_SO) ++ + $(LUA_T): $(LUA_O) $(LUA_A) + $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) + +--- lua-5.1.4/Makefile 2008-08-12 02:40:48.000000000 +0200 ++++ lua-5.1.4-new/Makefile 2012-02-23 19:06:32.000000000 +0100 +@@ -53,7 +53,7 @@ + all: $(PLAT) + + $(PLATS) clean: +- cd src && $(MAKE) $@ ++ cd src && $(MAKE) $@ V=$(V) R=$(R) + + test: dummy + src/lua test/hello.lua diff --git a/abs/extra/lynx/PKGBUILD b/abs/extra/lynx/PKGBUILD index c268b34..a793fff 100644 --- a/abs/extra/lynx/PKGBUILD +++ b/abs/extra/lynx/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 90160 2010-09-08 14:58:03Z andrea $ +# $Id: PKGBUILD 162749 2012-06-29 12:15:20Z pierre $ # Maintainer: # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> @@ -6,10 +6,10 @@ pkgname=lynx pkgver=2.8.7 _pkgver=2-8-7 -pkgrel=3 +pkgrel=6 pkgdesc="A text browser for the World Wide Web" url="http://lynx.isc.org/" -arch=(i686 x86_64) +arch=('i686' 'x86_64') license=('GPL') depends=('ncurses' 'openssl') backup=('etc/lynx.cfg') @@ -22,6 +22,7 @@ build() { --sysconfdir=/etc \ --with-ssl \ --enable-nls \ + --enable-ipv6 \ --mandir=/usr/share/man make } diff --git a/abs/extra/m17n-db/PKGBUILD b/abs/extra/m17n-db/PKGBUILD new file mode 100644 index 0000000..620beef --- /dev/null +++ b/abs/extra/m17n-db/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 172458 2012-12-03 05:46:30Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: damir <damir@archlinux.org> +# Contributor: Camille Moncelier <pix@devlife.org> + +pkgname=m17n-db +pkgver=1.6.4 +pkgrel=1 +pkgdesc='Multilingual text processing library (database)' +url='http://www.nongnu.org/m17n/' +arch=('any') +license=('GPL') +depends=('glibc') # not because of compiling, but because of /usr/share/i18n/charmaps/ files that glibc provides +source=("http://download.savannah.gnu.org/releases/m17n/${pkgname}-${pkgver}.tar.gz") +sha1sums=('756fd10b8d7fe66a14350443f307bcf95347c695') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/abs/extra/m17n-lib/PKGBUILD b/abs/extra/m17n-lib/PKGBUILD new file mode 100644 index 0000000..c2e8511 --- /dev/null +++ b/abs/extra/m17n-lib/PKGBUILD @@ -0,0 +1,27 @@ +# $Id: PKGBUILD 172459 2012-12-03 05:46:31Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: Camille Moncelier <pix@devlife.org> + +pkgname=m17n-lib +pkgver=1.6.4 +pkgrel=1 +pkgdesc='Multilingual text processing library (runtimes)' +url='http://www.nongnu.org/m17n/' +arch=('i686' 'x86_64') +license=('GPL') +depends=('libxft' 'm17n-db' 'fribidi' 'libxml2' 'gd' 'libotf') +optdepends=('anthy: to use the anthy input method') +options=('!makeflags' '!libtool' '!emptydirs') +source=("http://download.savannah.gnu.org/releases/m17n/${pkgname}-${pkgver}.tar.gz") +sha1sums=('83f2fc4facfd70a580bb95d9381eac7472d85171') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --enable-static=no + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/abs/extra/m2vrequantiser/PKGBUILD b/abs/extra/m2vrequantiser/PKGBUILD index 66e264b..38be40c 100644 --- a/abs/extra/m2vrequantiser/PKGBUILD +++ b/abs/extra/m2vrequantiser/PKGBUILD @@ -4,7 +4,7 @@ _pkgname=M2VRequantiser pkgver=1.1 pkgrel=2 pkgdesc="Requantize MPEG-2 streams without recompressing." -arch=('i686') +arch=('i686' 'x86_64') url="http://www.metakine.com/products/dvdremaster/developers.html" license=('GPLv2') source=(http://launchpad.net/${pkgname}/trunk/${pkgver}/+download/${_pkgname}-v${pkgver}.tar.gz \ diff --git a/abs/extra/make/PKGBUILD b/abs/extra/make/PKGBUILD deleted file mode 100644 index a908e6e..0000000 --- a/abs/extra/make/PKGBUILD +++ /dev/null @@ -1,20 +0,0 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: judd <jvinet@zeroflux.org> -pkgname=make -pkgver=3.81 -pkgrel=4 -pkgdesc="GNU make utility to maintain groups of programs" -arch=(i686 x86_64) -url="http://www.gnu.org/software/make" -license=('GPL') -groups=('base-devel') -depends=('glibc' 'bash') -source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('a4e9494ac6dc3f6b0c5ff75c5d52abba') - -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make DESTDIR=$startdir/pkg install -} diff --git a/abs/extra/mc/PKGBUILD b/abs/extra/mc/PKGBUILD index 889a421..240ff16 100644 --- a/abs/extra/mc/PKGBUILD +++ b/abs/extra/mc/PKGBUILD @@ -1,52 +1,64 @@ -# $Id: PKGBUILD 90427 2010-09-11 16:25:31Z pierre $ -# Contributer: dorphell <dorphell@archlinux.org> -# Committer: Judd Vinet <jvinet@zeroflux.org> -# Contributor: Lucien Immink <l.immink@student.fnt.hvu.nl> -# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> +# $Id: PKGBUILD 78273 2012-10-17 10:28:14Z allan $ +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> +# Maintainer: schuay <jakob.gruber@gmail.com> pkgname=mc -pkgver=4.7.4 -pkgrel=1 -pkgdesc="A filemanager/shell that emulates Norton Commander" +pkgver=4.8.6 +pkgrel=2 +pkgdesc="Midnight Commander is a text based filemanager/shell that emulates Norton Commander" arch=('i686' 'x86_64') url="http://www.ibiblio.org/mc/" license=('GPL') -depends=('e2fsprogs' 'glib2' 'pcre' 'gpm>=1.20.4' 'slang') +depends=('e2fsprogs' 'glib2' 'pcre' 'gpm' 'slang') makedepends=('libxt' 'libx11') -optdepends=('p7zip: support for 7zip archives') -provides=('mcedit-pkgbuild-syntax') -conflicts=('mc-utf8') -replaces=('mc-utf8') +optdepends=( + 'cabextract: ucab extfs' + 'cdparanoia: audio extfs' + 'cdrkit: iso9660 extfs' + 'gawk: hp48+ extfs' + 'aspell: spelling corrections' + 'cvs: CVS support' + 'mtools: a+ extfs' + 'perl: needed by several extfs scripts' + 'python2-boto: s3+ extfs' + 'python2-pytz: s3+ extfs' + 'smb: VFS support' + 'unace: uace extfs' + 'unarj: uarj extfs' + 'unrar: urar extfs' + 'zip: uzip extfs' + 'libssh2: support for sftp' + 'p7zip: support for 7zip archives') options=('!emptydirs' '!makeflags') +backup=('etc/mc/edit.indent.rc' + 'etc/mc/filehighlight.ini' + 'etc/mc/mcedit.menu' + 'etc/mc/mc.ext' + 'etc/mc/mc.keymap' + 'etc/mc/mc.menu' + 'etc/mc/sfs.ini') source=("http://www.midnight-commander.org/downloads/${pkgname}-${pkgver}.tar.bz2") -md5sums=('ae07f873b91e8a2e4a3b081f1adedd2e') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" - ./configure \ - --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man \ - --enable-background --enable-charset --enable-largefile \ - --with-edit --with-gpm-mouse --with-mmap --with-samba \ - --with-screen=slang --with-subshell --with-vfs --with-x \ - --without-debug --without-gnome --without-included-gettext \ - --libexecdir=/usr/lib + ./configure --prefix=/usr --sysconfdir=/etc --enable-vfs-smb \ + --with-x --libexecdir=/usr/lib - make + make } package() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install - # Fix FS#15177 - sed 's|op_has_zipinfo = 0|op_has_zipinfo = 1|' \ - -i ${pkgdir}/usr/lib/mc/extfs.d/uzip + # Fix FS#15177 + sed 's|op_has_zipinfo = 0|op_has_zipinfo = 1|' \ + -i "${pkgdir}/usr/lib/mc/extfs.d/uzip" - # Fix FS#18312 - rm ${pkgdir}/usr/lib/mc/extfs.d/u7z - - sed 's#/usr/bin/env python#/usr/bin/python2#' \ - -i ${pkgdir}/usr/lib/mc/extfs.d/s3+ + sed 's#/usr/bin/env python#/usr/bin/python2#' \ + -i "${pkgdir}/usr/lib/mc/extfs.d/s3+" } + +md5sums=('323706aa5e77698bed7b0b6faa7c1530') diff --git a/abs/extra/mc/mc-4.6.1-bash-all.patch b/abs/extra/mc/mc-4.6.1-bash-all.patch deleted file mode 100644 index e3e2afc..0000000 --- a/abs/extra/mc/mc-4.6.1-bash-all.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- /src/subshell.c.000 2006-05-08 23:11:48.000000000 +0200 -+++ /src/subshell.c 2006-10-28 15:40:46.000000000 +0200 -@@ -745,29 +745,13 @@ subshell_name_quote (const char *s) - memcpy (d, cmd_start, len); - d += len; - -- /* -- * Print every character in octal format with the leading backslash. -- * tcsh and zsh may require 4-digit octals, bash < 2.05b doesn't like them. -- */ -- if (subshell_type == BASH) { - for (; *s; s++) { -- /* Must quote numbers, so that they are not glued to octals */ - if (isalpha ((unsigned char) *s)) { - *d++ = (unsigned char) *s; - } else { -- sprintf (d, "\\%03o", (unsigned char) *s); -- d += 4; -- } -- } -- } else { -- for (; *s; s++) { -- if (isalnum ((unsigned char) *s)) { -- *d++ = (unsigned char) *s; -- } else { - sprintf (d, "\\0%03o", (unsigned char) *s); - d += 5; - } -- } - } - - memcpy (d, common_end, sizeof (common_end)); - diff --git a/abs/extra/mc/mc-4.6.1-find.patch b/abs/extra/mc/mc-4.6.1-find.patch deleted file mode 100644 index f44a6ac..0000000 --- a/abs/extra/mc/mc-4.6.1-find.patch +++ /dev/null @@ -1,155 +0,0 @@ -diff -Naur mc-4.6.1.orig/src/cmd.c mc-4.6.1/src/cmd.c ---- mc-4.6.1.orig/src/cmd.c 2005-05-27 16:19:18.000000000 +0200 -+++ mc-4.6.1/src/cmd.c 2006-03-19 12:57:00.000000000 +0100 -@@ -510,7 +510,7 @@ - continue; - } - c = regexp_match (reg_exp_t, current_panel->dir.list[i].fname, -- match_file); -+ match_file, 0); - if (c == -1) { - message (1, MSG_ERROR, _(" Malformed regular expression ")); - g_free (reg_exp); -diff -Naur mc-4.6.1.orig/src/dir.c mc-4.6.1/src/dir.c ---- mc-4.6.1.orig/src/dir.c 2005-05-27 16:19:18.000000000 +0200 -+++ mc-4.6.1/src/dir.c 2006-03-19 12:58:56.000000000 +0100 -@@ -405,7 +405,7 @@ - *stale_link = 1; - } - if (!(S_ISDIR (buf1->st_mode) || *link_to_dir) && filter -- && !regexp_match (filter, dp->d_name, match_file)) -+ && !regexp_match (filter, dp->d_name, match_file, 0)) - return 0; - - /* Need to grow the *list? */ -diff -Naur mc-4.6.1.orig/src/ext.c mc-4.6.1/src/ext.c ---- mc-4.6.1.orig/src/ext.c 2005-05-27 16:19:18.000000000 +0200 -+++ mc-4.6.1/src/ext.c 2006-03-19 13:00:43.000000000 +0100 -@@ -394,7 +394,7 @@ - } - - if (content_string[0] -- && regexp_match (ptr, content_string + content_shift, match_regex)) { -+ && regexp_match (ptr, content_string + content_shift, match_regex, 0)) { - found = 1; - } - -@@ -534,11 +534,11 @@ - /* Do not transform shell patterns, you can use shell/ for - * that - */ -- if (regexp_match (p, filename, match_regex)) -+ if (regexp_match (p, filename, match_regex, 0)) - found = 1; - } else if (!strncmp (p, "directory/", 10)) { - if (S_ISDIR (mystat.st_mode) -- && regexp_match (p + 10, filename, match_regex)) -+ && regexp_match (p + 10, filename, match_regex, 0)) - found = 1; - } else if (!strncmp (p, "shell/", 6)) { - p += 6; -diff -Naur mc-4.6.1.orig/src/find.c mc-4.6.1/src/find.c ---- mc-4.6.1.orig/src/find.c 2005-05-27 16:19:18.000000000 +0200 -+++ mc-4.6.1/src/find.c 2006-03-19 13:04:10.000000000 +0100 -@@ -575,6 +575,7 @@ - struct stat tmp_stat; - static int pos; - static int subdirs_left = 0; -+ int flags = 0; - - if (!h) { /* someone forces me to close dirp */ - if (dirp) { -@@ -586,6 +587,10 @@ - dp = 0; - return 1; - } -+ -+ if (!(case_sense->state & C_BOOL)) -+ flags |= REG_ICASE; -+ - do_search_begin: - while (!dp){ - -@@ -662,7 +667,7 @@ - g_free (tmp_name); - } - -- if (regexp_match (find_pattern, dp->d_name, match_file)){ -+ if (regexp_match (find_pattern, dp->d_name, match_file, flags)){ - if (content_pattern) { - if (search_content (h, directory, dp->d_name)) { - return 1; -diff -Naur mc-4.6.1.orig/src/user.c mc-4.6.1/src/user.c ---- mc-4.6.1.orig/src/user.c 2005-07-01 17:47:07.000000000 +0200 -+++ mc-4.6.1/src/user.c 2006-03-19 13:05:00.000000000 +0100 -@@ -412,18 +412,18 @@ - break; - case 'f': /* file name pattern */ - p = extract_arg (p, arg, sizeof (arg)); -- *condition = panel && regexp_match (arg, panel->dir.list [panel->selected].fname, match_file); -+ *condition = panel && regexp_match (arg, panel->dir.list [panel->selected].fname, match_file, 0); - break; - case 'y': /* syntax pattern */ - if (edit_widget && edit_widget->syntax_type) { - p = extract_arg (p, arg, sizeof (arg)); - *condition = panel && -- regexp_match (arg, edit_widget->syntax_type, match_normal); -+ regexp_match (arg, edit_widget->syntax_type, match_normal, 0); - } - break; - case 'd': - p = extract_arg (p, arg, sizeof (arg)); -- *condition = panel && regexp_match (arg, panel->cwd, match_file); -+ *condition = panel && regexp_match (arg, panel->cwd, match_file, 0); - break; - case 't': - p = extract_arg (p, arg, sizeof (arg)); -diff -Naur mc-4.6.1.orig/src/util.c mc-4.6.1/src/util.c ---- mc-4.6.1.orig/src/util.c 2005-05-27 16:19:18.000000000 +0200 -+++ mc-4.6.1/src/util.c 2006-03-19 13:06:58.000000000 +0100 -@@ -563,27 +563,30 @@ - return g_strdup (pattern); - } - --int regexp_match (const char *pattern, const char *string, int match_type) -+int regexp_match (const char *pattern, const char *string, int match_type, int flags) - { - static regex_t r; - static char *old_pattern = NULL; - static int old_type; -+ static int old_flags; - int rval; - char *my_pattern; - -- if (!old_pattern || STRCOMP (old_pattern, pattern) || old_type != match_type){ -+ if (!old_pattern || STRCOMP (old_pattern, pattern) || old_type != match_type || old_flags != flags){ - if (old_pattern){ - regfree (&r); - g_free (old_pattern); - old_pattern = NULL; - } - my_pattern = convert_pattern (pattern, match_type, 0); -- if (regcomp (&r, my_pattern, REG_EXTENDED|REG_NOSUB|MC_ARCH_FLAGS)) { -+ -+ if (regcomp (&r, my_pattern, REG_EXTENDED|REG_NOSUB|MC_ARCH_FLAGS|flags)) { - g_free (my_pattern); - return -1; - } - old_pattern = my_pattern; - old_type = match_type; -+ old_flags = flags; - } - rval = !regexec (&r, string, 0, NULL, 0); - return rval; -diff -Naur mc-4.6.1.orig/src/util.h mc-4.6.1/src/util.h ---- mc-4.6.1.orig/src/util.h 2005-01-13 20:20:47.000000000 +0100 -+++ mc-4.6.1/src/util.h 2006-03-19 13:07:16.000000000 +0100 -@@ -116,7 +116,7 @@ - - extern int easy_patterns; - char *convert_pattern (const char *pattern, int match_type, int do_group); --int regexp_match (const char *pattern, const char *string, int match_type); -+int regexp_match (const char *pattern, const char *string, int match_type, int flags); - - /* Error pipes */ - void open_error_pipe (void); diff --git a/abs/extra/mc/mc-4.6.1-invalid-mtime.patch b/abs/extra/mc/mc-4.6.1-invalid-mtime.patch deleted file mode 100644 index 07b1f6d..0000000 --- a/abs/extra/mc/mc-4.6.1-invalid-mtime.patch +++ /dev/null @@ -1,30 +0,0 @@ - - Invalid timestamps on files caused mc to segfault by passing a null - pointer to strftime. Avoid trying to print the time in this case. - - Reported by Maxim Britov <maxim@office.modum.by> - at http://bugs.gentoo.org/184296 - ---- mc-4.6.1/src/util.c -+++ mc-4.6.1/src/util.c -@@ -717,6 +717,7 @@ - static size_t i18n_timelength = 0; - static const char *fmtyear, *fmttime; - const char *fmt; -+ struct tm *whentm; - - if (i18n_timelength == 0){ - i18n_timelength = i18n_checktimelength() + 1; -@@ -740,7 +741,11 @@ - else - fmt = fmttime; - -- strftime (timebuf, i18n_timelength, fmt, localtime(&when)); -+ whentm = localtime(&when); -+ if (whentm == NULL) -+ return "(invalid)"; -+ -+ strftime (timebuf, i18n_timelength, fmt, whentm); - return timebuf; - } - diff --git a/abs/extra/mc/mc-4.6.1-largefile.patch b/abs/extra/mc/mc-4.6.1-largefile.patch deleted file mode 100644 index de30715..0000000 --- a/abs/extra/mc/mc-4.6.1-largefile.patch +++ /dev/null @@ -1,194 +0,0 @@ -diff -Naur mc-4.6.1.orig/intl/loadmsgcat.c mc-4.6.1/intl/loadmsgcat.c ---- mc-4.6.1.orig/intl/loadmsgcat.c 2005-07-23 18:52:57.000000000 +0200 -+++ mc-4.6.1/intl/loadmsgcat.c 2006-03-19 17:11:14.000000000 +0100 -@@ -1002,7 +1002,7 @@ - /* The magic number is wrong: not a message catalog file. */ - #ifdef HAVE_MMAP - if (use_mmap) -- munmap ((caddr_t) data, size); -+ munmap ((void *) data, size); - else - #endif - free (data); -@@ -1271,7 +1271,7 @@ - free (domain->malloced); - #ifdef HAVE_MMAP - if (use_mmap) -- munmap ((caddr_t) data, size); -+ munmap ((void *) data, size); - else - #endif - free (data); -@@ -1306,7 +1306,7 @@ - - # ifdef _POSIX_MAPPED_FILES - if (domain->use_mmap) -- munmap ((caddr_t) domain->data, domain->mmap_size); -+ munmap ((void *) domain->data, domain->mmap_size); - else - # endif /* _POSIX_MAPPED_FILES */ - free ((void *) domain->data); -diff -Naur mc-4.6.1.orig/src/view.c mc-4.6.1/src/view.c ---- mc-4.6.1.orig/src/view.c 2005-05-27 16:19:18.000000000 +0200 -+++ mc-4.6.1/src/view.c 2006-03-19 17:10:34.000000000 +0100 -@@ -76,6 +76,12 @@ - #define vwidth (view->widget.cols - (view->have_frame ? 2 : 0)) - #define vheight (view->widget.lines - (view->have_frame ? 2 : 0)) - -+#if GLIB_MAJOR_VERSION >= 2 -+# define my_g_malloc g_try_malloc -+#else -+# define my_g_malloc g_malloc -+#endif -+ - /* Offset in bytes into a file */ - typedef unsigned long offset_type; - #define INVALID_OFFSET ((offset_type) -1) -@@ -560,8 +566,8 @@ - view->data = mc_mmap (0, view->s.st_size, PROT_READ, - MAP_FILE | MAP_SHARED, view->file, 0); - else -- view->data = (caddr_t) -1; -- if ((caddr_t) view->data != (caddr_t) - 1) { -+ view->data = (void *) -1; -+ if (view->data != (void *)-1) { - /* mmap worked */ - view->first = 0; - view->bytes_read = view->s.st_size; -@@ -573,6 +579,9 @@ - /* For the OSes that don't provide mmap call, try to load all the - * file into memory (alex@bcs.zaporizhzhe.ua). Also, mmap can fail - * for any reason, so we use this as fallback (pavel@ucw.cz) */ -+ -+ /* If large file support is enabled, st_size is a 64 bit value and -+ * will thus on 32 bit platforms possibly be beyond the range of gulong */ - - /* Make sure view->s.st_size is not truncated when passed to g_malloc */ - if ((gulong) view->s.st_size == view->s.st_size) -diff -Naur mc-4.6.1.orig/vfs/local.c mc-4.6.1/vfs/local.c ---- mc-4.6.1.orig/vfs/local.c 2004-09-25 01:00:18.000000000 +0200 -+++ mc-4.6.1/vfs/local.c 2006-03-19 17:00:45.000000000 +0100 -@@ -243,8 +243,8 @@ - } - - #ifdef HAVE_MMAP --caddr_t --local_mmap (struct vfs_class *me, caddr_t addr, size_t len, int prot, int flags, void *data, off_t offset) -+void * -+local_mmap (struct vfs_class *me, void *addr, size_t len, int prot, int flags, void *data, off_t offset) - { - int fd = * (int *)data; - -@@ -252,7 +252,7 @@ - } - - int --local_munmap (struct vfs_class *me, caddr_t addr, size_t len, void *data) -+local_munmap (struct vfs_class *me, void *addr, size_t len, void *data) - { - return munmap (addr, len); - } -diff -Naur mc-4.6.1.orig/vfs/local.h mc-4.6.1/vfs/local.h ---- mc-4.6.1.orig/vfs/local.h 2004-08-17 11:17:43.000000000 +0200 -+++ mc-4.6.1/vfs/local.h 2006-03-19 17:01:35.000000000 +0100 -@@ -13,9 +13,9 @@ - extern int local_errno (struct vfs_class *me); - extern int local_lseek (void *data, off_t offset, int whence); - #ifdef HAVE_MMAP --extern caddr_t local_mmap (struct vfs_class *me, caddr_t addr, size_t len, -+extern void *local_mmap (struct vfs_class *me, void *addr, size_t len, - int prot, int flags, void *data, off_t offset); --extern int local_munmap (struct vfs_class *me, caddr_t addr, size_t len, void *data); -+extern int local_munmap (struct vfs_class *me, void *addr, size_t len, void *data); - #endif - - #endif -diff -Naur mc-4.6.1.orig/vfs/samba/lib/util.c mc-4.6.1/vfs/samba/lib/util.c ---- mc-4.6.1.orig/vfs/samba/lib/util.c 2005-05-27 16:19:19.000000000 +0200 -+++ mc-4.6.1/vfs/samba/lib/util.c 2006-03-19 17:06:39.000000000 +0100 -@@ -1836,7 +1836,7 @@ - - /* Look up the host address in the address list we just got. */ - for (i = 0; hp->h_addr_list[i]; i++) { -- if (memcmp(hp->h_addr_list[i], (caddr_t) & addr, sizeof(addr)) == 0) -+ if (memcmp(hp->h_addr_list[i], &addr, sizeof(addr)) == 0) - return True; - } - -diff -Naur mc-4.6.1.orig/vfs/vfs.c mc-4.6.1/vfs/vfs.c ---- mc-4.6.1.orig/vfs/vfs.c 2005-05-27 16:19:19.000000000 +0200 -+++ mc-4.6.1/vfs/vfs.c 2006-03-19 17:03:48.000000000 +0100 -@@ -740,27 +740,27 @@ - - #ifdef HAVE_MMAP - static struct mc_mmapping { -- caddr_t addr; -+ void *addr; - void *vfs_info; - struct vfs_class *vfs; - struct mc_mmapping *next; - } *mc_mmaparray = NULL; - --caddr_t --mc_mmap (caddr_t addr, size_t len, int prot, int flags, int fd, off_t offset) -+void * -+mc_mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset) - { - struct vfs_class *vfs; -- caddr_t result; -+ void *result; - struct mc_mmapping *mcm; - - if (fd == -1) -- return (caddr_t) -1; -+ return (void *) -1; - - vfs = vfs_op (fd); -- result = vfs->mmap ? (*vfs->mmap)(vfs, addr, len, prot, flags, vfs_info (fd), offset) : (caddr_t)-1; -- if (result == (caddr_t)-1){ -+ result = vfs->mmap ? (*vfs->mmap)(vfs, addr, len, prot, flags, vfs_info (fd), offset) : (void *)-1; -+ if (result == (void *)-1){ - errno = ferrno (vfs); -- return (caddr_t)-1; -+ return (void *)-1; - } - mcm =g_new (struct mc_mmapping, 1); - mcm->addr = result; -@@ -772,7 +772,7 @@ - } - - int --mc_munmap (caddr_t addr, size_t len) -+mc_munmap (void *addr, size_t len) - { - struct mc_mmapping *mcm, *mcm2 = NULL; - -diff -Naur mc-4.6.1.orig/vfs/vfs.h mc-4.6.1/vfs/vfs.h ---- mc-4.6.1.orig/vfs/vfs.h 2004-11-16 17:16:08.000000000 +0100 -+++ mc-4.6.1/vfs/vfs.h 2006-03-19 17:05:57.000000000 +0100 -@@ -49,8 +49,8 @@ - int mc_ctl (int fd, int ctlop, void *arg); - int mc_setctl (const char *path, int ctlop, void *arg); - #ifdef HAVE_MMAP --caddr_t mc_mmap (caddr_t, size_t, int, int, int, off_t); --int mc_munmap (caddr_t addr, size_t len); -+void *mc_mmap (void *, size_t, int, int, int, off_t); -+int mc_munmap (void *addr, size_t len); - #endif /* HAVE_MMAP */ - - /* Operations for mc_ctl - on open file */ -diff -Naur mc-4.6.1.orig/vfs/vfs-impl.h mc-4.6.1/vfs/vfs-impl.h ---- mc-4.6.1.orig/vfs/vfs-impl.h 2004-09-02 15:57:59.000000000 +0200 -+++ mc-4.6.1/vfs/vfs-impl.h 2006-03-19 17:12:01.000000000 +0100 -@@ -72,9 +72,9 @@ - int (*setctl) (struct vfs_class *me, const char *path, int ctlop, - void *arg); - #ifdef HAVE_MMAP -- caddr_t (*mmap) (struct vfs_class *me, caddr_t addr, size_t len, -+ void *(*mmap) (struct vfs_class *me, void *addr, size_t len, - int prot, int flags, void *vfs_info, off_t offset); -- int (*munmap) (struct vfs_class *me, caddr_t addr, size_t len, -+ int (*munmap) (struct vfs_class *me, void *addr, size_t len, - void *vfs_info); - #endif - }; diff --git a/abs/extra/mc/mc-4.6.1-nonblock.patch b/abs/extra/mc/mc-4.6.1-nonblock.patch deleted file mode 100644 index eca34aa..0000000 --- a/abs/extra/mc/mc-4.6.1-nonblock.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- mc-4.6.1/src/cons.saver.c.old 2006-04-30 20:45:11.725128977 +0200 -+++ mc-4.6.1/src/cons.saver.c 2006-04-30 20:45:55.545063247 +0200 -@@ -134,7 +134,7 @@ - - if (seteuid (uid) < 0) - die (); -- console_fd = open (tty_name, O_RDONLY); -+ console_fd = open (tty_name, O_RDONLY | O_NONBLOCK); - if (console_fd < 0) - die (); - if (fstat (console_fd, &st) < 0 || ! S_ISCHR (st.st_mode)) diff --git a/abs/extra/mcpp/PKGBUILD b/abs/extra/mcpp/PKGBUILD new file mode 100644 index 0000000..6ed62f1 --- /dev/null +++ b/abs/extra/mcpp/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 159222 2012-05-18 11:58:32Z jgc $ +# Maintainer: Alexander Baldeck <alexander@archlinux.org> +# Contributor: Jan de Groot <jgc@archlinux.org> + +pkgname=mcpp +pkgver=2.7.2 +pkgrel=4 +pkgdesc="Matsui's CPP implementation precisely conformed to standards" +arch=('i686' 'x86_64') +license=('custom') +url="http://mcpp.sourceforge.net" +depends=('glibc') +options=('!libtool') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz + namlen.patch + fs28284.patch) +md5sums=('512de48c87ab023a69250edc7a0c7b05' + '0bfc6177a58e912a9e23e368578dd3fe' + 'ba668fc6996e538f2e0c096f9eb282ce') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i "${srcdir}/namlen.patch" + patch -Np1 -i "${srcdir}/fs28284.patch" + ./configure --prefix=/usr --enable-mcpplib --disable-static + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + ln -sf ../../doc/${pkgname}/LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/abs/extra/mcpp/fs28284.patch b/abs/extra/mcpp/fs28284.patch new file mode 100644 index 0000000..960203c --- /dev/null +++ b/abs/extra/mcpp/fs28284.patch @@ -0,0 +1,100 @@ +diff -c -r -N ../mcpp-2.7.2/src/internal.H ./src/internal.H +*** ../mcpp-2.7.2/src/internal.H 2008-08-27 10:31:16.000000000 -0230 +--- ./src/internal.H 2009-12-17 21:01:35.000000000 -0330 +*************** +*** 390,395 **** +--- 390,397 ---- + extern char identifier[]; /* Lastly scanned name */ + extern IFINFO ifstack[]; /* Information of #if nesting */ + extern char work_buf[]; ++ extern FILEINFO * sh_file; ++ extern int sh_line; + /* Temporary buffer for directive line and macro expansion */ + + /* main.c */ +*************** +*** 557,562 **** + #endif + #endif + +! #if HOST_HAVE_STPCPY + extern char * stpcpy( char * dest, const char * src); + #endif +--- 559,564 ---- + #endif + #endif + +! #if HOST_HAVE_STPCPY && !defined(stpcpy) + extern char * stpcpy( char * dest, const char * src); + #endif +diff -c -r -N ../mcpp-2.7.2/src/main.c ./src/main.c +*** ../mcpp-2.7.2/src/main.c 2008-11-05 05:04:46.000000000 -0330 +--- ./src/main.c 2009-12-17 20:42:42.000000000 -0330 +*************** +*** 326,331 **** +--- 326,333 ---- + = FALSE; + option_flags.trig = TRIGRAPHS_INIT; + option_flags.dig = DIGRAPHS_INIT; ++ sh_file = NULL; ++ sh_line = 0; + } + + int mcpp_lib_main +diff -c -r -N ../mcpp-2.7.2/src/support.c ./src/support.c +*** ../mcpp-2.7.2/src/support.c 2008-06-10 06:02:33.000000000 -0230 +--- ./src/support.c 2009-12-17 20:42:39.000000000 -0330 +*************** +*** 188,194 **** + size_t length + ) + { +! if (mem_buf_p->bytes_avail < length) { /* Need to allocate more memory */ + size_t size = MAX( BUF_INCR_SIZE, length); + + if (mem_buf_p->buffer == NULL) { /* 1st append */ +--- 188,194 ---- + size_t length + ) + { +! if (mem_buf_p->bytes_avail < length + 1) { /* Need to allocate more memory */ + size_t size = MAX( BUF_INCR_SIZE, length); + + if (mem_buf_p->buffer == NULL) { /* 1st append */ +*************** +*** 1722,1727 **** +--- 1722,1729 ---- + sp -= 2; + while (*sp != '\n') /* Until end of line */ + mcpp_fputc( *sp++, OUT); ++ mcpp_fputc( '\n', OUT); ++ wrong_line = TRUE; + } + goto end_line; + default: /* Not a comment */ +diff -c -r -N ../mcpp-2.7.2/src/system.c ./src/system.c +*** ../mcpp-2.7.2/src/system.c 2008-11-26 06:23:51.000000000 -0330 +--- ./src/system.c 2009-12-17 20:42:42.000000000 -0330 +*************** +*** 3858,3863 **** +--- 3858,3866 ---- + } + #endif + ++ FILEINFO* sh_file; ++ int sh_line; ++ + void sharp( + FILEINFO * sharp_file, + int flag /* Flag to append to the line for GCC */ +*************** +*** 3868,3875 **** + * else (i.e. 'sharp_file' is NULL) 'infile'. + */ + { +- static FILEINFO * sh_file; +- static int sh_line; + FILEINFO * file; + int line; + +--- 3871,3876 ---- diff --git a/abs/extra/mcpp/namlen.patch b/abs/extra/mcpp/namlen.patch new file mode 100644 index 0000000..6af7418 --- /dev/null +++ b/abs/extra/mcpp/namlen.patch @@ -0,0 +1,11 @@ +--- mcpp-2.7.2/src/mbchar.c 2008-03-08 13:06:13.000000000 +0000 ++++ mcpp-2.7.2/src/mbchar.c 2009-03-08 13:14:17.000000000 +0000 +@@ -345,7 +345,7 @@ + static size_t mb_read_utf8( int c1, char ** in_pp, char ** out_pp); + /* For UTF8 mbchar encoding */ + +-#define NAMLEN 20 ++#define NAMLEN 40 + #define UPPER 1 /* To upper */ + #define LOWER 0 /* To lower */ + diff --git a/abs/extra/mdbtools/PKGBUILD b/abs/extra/mdbtools/PKGBUILD deleted file mode 100644 index 870551c..0000000 --- a/abs/extra/mdbtools/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# Contributor: TDY <tdy@gmx.com> -# Contributor: Eduard "bekks" Warkentin <eduard.warkentin@gmail.com> -pkgname=mdbtools -pkgver=0.5 -pkgrel=9 -pkgdesc="Utilities for viewing data and exporting schema from Microsoft Access Database files" -arch=('i686' 'x86_64') -url="http://sourceforge.net/projects/mdbtools/" -license=('LGPL' 'GPL') -depends=('libgnomeui') -makedepends=('bison' 'flex') -options=('!libtool') -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz - gmdb2.desktop) -md5sums=('4a18bf96e67161101cade64526756d22' - '289f236ca91d73510e842922b5776999') - -build() { - cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man - make || return 1 - make DESTDIR="$pkgdir" install - install -Dm644 ../gmdb2.desktop "$pkgdir/usr/share/applications/gmdb2.desktop" -} diff --git a/abs/extra/mdbtools/gmdb2.desktop b/abs/extra/mdbtools/gmdb2.desktop deleted file mode 100644 index 8b40dc2..0000000 --- a/abs/extra/mdbtools/gmdb2.desktop +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Version=1.0 -Type=Application -Name=MDB Tools -Comment=View data and export schema from MDB files -TryExec=/usr/bin/gmdb2 -Exec=gmdb2 -Icon=/usr/share/gmdb/glade/logo.xpm -Categories=System;FileTools; diff --git a/abs/extra/mediaserv/PKGBUILD b/abs/extra/mediaserv/PKGBUILD deleted file mode 100644 index 59eed79..0000000 --- a/abs/extra/mediaserv/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 5936 2008-07-21 20:24:16Z thomas $ -# Maintainer: Cecil Watson<knoppmyth@gmail.com> - -pkgname=mediaserv -pkgver=0.05 -pkgrel=20 -pkgdesc="On-demand transcoding server for videos, targetting the Nokia Internet Tablets." -arch=('i686' 'x86_64') -license=('ARTISTIC') -depends=('tablet-encode' 'perl-xml-rss') -backup=(/myth/mediaserv/config) -install=(mediaserv.install) -url="http://mediautils.garage.maemo.org/tablet-encode.html" -source=(https://garage.maemo.org/frs/download.php/2632/mediaserv-0.05.tar.gz linhes-mediaserv.tar.bz2 mediaserv.no_daemon.patch run finish) - -build() { - cd ${srcdir}/mediaserv - patch -Np1 -i ${startdir}/src/mediaserv.no_daemon.patch || return 1 - mkdir -p $startdir/pkg/usr/bin - mkdir -p $startdir/pkg/etc/sv/mediaserv/supervise - mkdir -p $startdir/pkg/usr/share/doc/mediaserv - mkdir -p $startdir/pkg/myth/mediaserv - mkdir -p $startdir/pkg/myth/mediaserv/media - install -D -m755 mediaserv $startdir/pkg/usr/bin - cp README.txt $startdir/pkg/usr/share/doc/mediaserv - cp -a ${srcdir}/.mediaserv/* ${pkgdir}/myth/mediaserv - install -D -m755 ${srcdir}/run ${srcdir}/finish $startdir/pkg/etc/sv/mediaserv -} -md5sums=('94c300a0e95c55dae42a61f77e4e41fe' - 'e7b6fcc91b73939db350c4854c19e9ee' - '68d25630786e76fa36c9e6bb29821367' - 'd047f0fa5f1d39d864debd8a76f677e2' - 'f2022c1cc8f04959299c97edde06d023') diff --git a/abs/extra/mediaserv/finish b/abs/extra/mediaserv/finish deleted file mode 100644 index f424494..0000000 --- a/abs/extra/mediaserv/finish +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -exec 2>&1 -export TERM=linux -. /etc/rc.conf -. /etc/rc.d/functions -stat_runit "Stopping mediaserv" -#wait -exec /usr/bin/killall mediaserv diff --git a/abs/extra/mediaserv/linhes-mediaserv.tar.bz2 b/abs/extra/mediaserv/linhes-mediaserv.tar.bz2 Binary files differdeleted file mode 100644 index 6397fb7..0000000 --- a/abs/extra/mediaserv/linhes-mediaserv.tar.bz2 +++ /dev/null diff --git a/abs/extra/mediaserv/mediaserv.install b/abs/extra/mediaserv/mediaserv.install deleted file mode 100644 index 4a9de8e..0000000 --- a/abs/extra/mediaserv/mediaserv.install +++ /dev/null @@ -1,38 +0,0 @@ -# arg 1: the new package version - - -post_install() { - if [ ! -e /home/mythtv/.mediaserv ] - then - ln -s /myth/mediaserv /home/mythtv/.mediaserv - fi - - if [ ! -e /myth/mediaserv/media/tv ] - then - ln -s /myth/pretty /myth/mediaserv/media/tv - fi - if [ ! -e /myth/mediaserv/media/video ] - then - ln -s /myth/video /myth/mediaserv/media/video - fi - chown -R mythtv.mythtv /myth/mediaserv - add_service.sh mediaserv - sv start mediaserv -} -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} - -# arg 1: the old package version -post_remove() { - sv stop mediaserv - remove_service.sh mediaserv - rm -fr /home/mythtv/.mediaserv - rm -fr /myth/mediaserv -} - -op=$1 -shift -$op $* diff --git a/abs/extra/mediaserv/mediaserv.no_daemon.patch b/abs/extra/mediaserv/mediaserv.no_daemon.patch deleted file mode 100644 index b659354..0000000 --- a/abs/extra/mediaserv/mediaserv.no_daemon.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- mediaserv/mediaserv.orig 2009-06-15 03:16:53.000000000 +0000 -+++ mediaserv/mediaserv 2009-06-15 03:17:29.000000000 +0000 -@@ -608,10 +608,10 @@ - # daemonize - daemonize the parent/control app - # - sub daemonize { -- my $pid = fork; # Fork off the main process -- defined ($pid) or die "Cannot start daemon: $!"; -- print "Parent daemon running.\n" if $pid; # If we have a PID, the parent daemonized okay -- exit if $pid; # Return control to the user -+# my $pid = fork; # Fork off the main process -+# defined ($pid) or die "Cannot start daemon: $!"; -+ print "Parent daemon running.\n" ; # If we have a PID, the parent daemonized okay -+# exit if $pid; # Return control to the user - - # Now we're a daemonized parent process! - diff --git a/abs/extra/mediaserv/run b/abs/extra/mediaserv/run deleted file mode 100644 index fbd1c97..0000000 --- a/abs/extra/mediaserv/run +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -exec 2>&1 -export TERM=linux -. /etc/rc.conf -. /etc/rc.d/functions -stat_runit "Starting mediaserv" -exec su mythtv -c "/usr/bin/mediaserv" 2>/dev/null -wait diff --git a/abs/extra/mednafen/ChangeLog b/abs/extra/mednafen/ChangeLog new file mode 100644 index 0000000..54b01d5 --- /dev/null +++ b/abs/extra/mednafen/ChangeLog @@ -0,0 +1,9 @@ +2012-02-23 Allan McRae <allan@archlinux.org> + * Rebuild for libcdio soname bumps + +2011-05-17 Angel Velasquez <angvp@archlinux.org> + * Updated to 0.8.D.3 + * Removed fix_build patch + * Cleaned PKGBUILD + * Adding ChangeLog + diff --git a/abs/extra/mednafen/PKGBUILD b/abs/extra/mednafen/PKGBUILD index 7a8060e..802249f 100755..100644 --- a/abs/extra/mednafen/PKGBUILD +++ b/abs/extra/mednafen/PKGBUILD @@ -1,23 +1,30 @@ -# Maintainer: Daenyth <Daenyth+Arch [at] gmail [dot] com> -# Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve> +# Maintainer: Angel Velasquez <angvp@archlinux.org> +# Contributor: Daenyth <Daenyth+Arch [at] gmail [dot] com> # Contributor: kagan <juanynie@mi.madritel.es> + pkgname=mednafen -pkgver=0.8.D -pkgrel=1 +pkgver=0.8.D.3 +pkgrel=2 pkgdesc="A command-line multi-system gaming emulator" url="http://mednafen.sourceforge.net/" -license=(GPL) +license=('GPL') arch=('i686' 'x86_64') -depends=('libcdio>=0.82' 'libsamplerate' 'libogg' 'libvorbis' 'sdl' 'sdl_net' 'libsndfile' 'zlib') +depends=('libcdio' 'libsamplerate' 'libogg' 'libvorbis' 'sdl' 'sdl_net' 'libsndfile' 'zlib') makedepends=('pkgconfig' 'mesa') -source=(http://downloads.sourceforge.net/mednafen/$pkgname-$pkgver.tar.bz2 fix_build.diff) -md5sums=('4c3f337f80bf54d2df0f3a0f24203141' - '0f44ef41b0220b66579626548d044f15') +changelog=ChangeLog +source=(http://downloads.sourceforge.net/mednafen/$pkgname-$pkgver.tar.bz2 + mednafen-0.8.13.3-zlib-1.2.6.patch) +md5sums=('57d22805071becd81858b0c088a275e5' + '450bb5aa7552db5b8f6d6713bdb725ce') build() { cd $srcdir/$pkgname - patch -Np1 -i $srcdir/fix_build.diff || return 1 - ./configure --prefix=/usr || return 1 - make || return 1 + patch -Np1 -i $srcdir/mednafen-0.8.13.3-zlib-1.2.6.patch + ./configure --prefix=/usr + make +} + +package() { + cd $srcdir/$pkgname make DESTDIR=$pkgdir install } diff --git a/abs/extra/mednafen/fix_build.diff b/abs/extra/mednafen/fix_build.diff deleted file mode 100644 index d91a6fa..0000000 --- a/abs/extra/mednafen/fix_build.diff +++ /dev/null @@ -1,12 +0,0 @@ -diff -ruN mednafen.orig//src/pcfx/soundbox.cpp mednafen/src/pcfx/soundbox.cpp ---- mednafen.orig//src/pcfx/soundbox.cpp 2010-06-05 09:35:40.000000000 -0400 -+++ mednafen/src/pcfx/soundbox.cpp 2010-06-05 09:35:55.000000000 -0400 -@@ -416,7 +416,7 @@ - int rolloff = (int)((double)0.90 * 21477272 * 2 / 1365 / (1 << SampleFreq) ) / 2; - for(int ch = 0; ch < 2; ch++) - for(int lr = 0; lr < 2; lr++) -- ADPCMSynth[ch][lr].treble_eq(blip_eq_t::blip_eq_t(-1000, rolloff, FSettings.SndRate)); -+ ADPCMSynth[ch][lr].treble_eq(blip_eq_t(-1000, rolloff, FSettings.SndRate)); - LSampleFreq = SampleFreq; - } - } diff --git a/abs/extra/mednafen/mednafen-0.8.13.3-zlib-1.2.6.patch b/abs/extra/mednafen/mednafen-0.8.13.3-zlib-1.2.6.patch new file mode 100644 index 0000000..9437f76 --- /dev/null +++ b/abs/extra/mednafen/mednafen-0.8.13.3-zlib-1.2.6.patch @@ -0,0 +1,29 @@ +--- mednafen.orig/src/file.cpp ++++ mednafen/src/file.cpp +@@ -229,7 +229,7 @@ + goto doret; + } + +- while((howmany = gzread(tz, tmp->data + cur_size, cur_alloced - cur_size)) > 0) ++ while((howmany = gzread((gzFile)tz, tmp->data + cur_size, cur_alloced - cur_size)) > 0) + { + cur_size += howmany; + cur_alloced <<= 1; +@@ -282,7 +282,7 @@ + } + else if(type == MDFN_FILETYPE_GZIP) + { +- gzclose(tz); ++ gzclose((gzFile)tz); + } + else if(type == MDFN_FILETYPE_ZIP) + { +@@ -444,7 +444,7 @@ + + if(!(fceufp = MakeMemWrap(t, 1))) + { +- gzclose(t); ++ gzclose((gzFile)t); + return(0); + } + diff --git a/abs/extra/memtest86+/PKGBUILD b/abs/extra/memtest86+/PKGBUILD new file mode 100644 index 0000000..36e4d68 --- /dev/null +++ b/abs/extra/memtest86+/PKGBUILD @@ -0,0 +1,17 @@ +# $Id: PKGBUILD 149463 2012-02-08 05:56:40Z eric $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> + +pkgname=memtest86+ +pkgver=4.20 +pkgrel=2 +pkgdesc="An advanced memory diagnostic tool" +arch=('any') +url="http://www.memtest.org" +license=('GPL2') +install=memtest86+.install +source=(http://www.memtest.org/download/${pkgver}/${pkgname}-${pkgver}.bin.gz) +sha1sums=('5a91dc1c9e3457456f314e6c99f579210624fafc') + +package() { + install -D -m644 "${srcdir}/${pkgname}-${pkgver}.bin" "${pkgdir}/boot/memtest86+/memtest.bin" +} diff --git a/abs/extra/memtest86+/memtest86+.install b/abs/extra/memtest86+/memtest86+.install new file mode 100644 index 0000000..40b5f20 --- /dev/null +++ b/abs/extra/memtest86+/memtest86+.install @@ -0,0 +1,23 @@ +post_install() { +cat << EOF +For using memtest86+, please modify your bootloaders. + +If /boot is on root partitions: +==> GRUB: add this to /boot/grub/menu.lst +title Memtest86+ [/boot/memtest86+/memtest.bin] +kernel (hd?,?)/boot/memtest86+/memtest.bin + +==> Lilo: add this to lilo.conf +image = /boot/memtest86+/memtest.bin +label = "Memtest86+" + +If /boot is on a separate partition, then just use /memtest86+/memtest.bin +without the /boot prefix. +EOF +} + +post_remove() { +cat << EOF +Please remove your additions from your bootloaders. +EOF +} diff --git a/abs/extra/mercurial/PKGBUILD b/abs/extra/mercurial/PKGBUILD deleted file mode 100644 index 7c146f5..0000000 --- a/abs/extra/mercurial/PKGBUILD +++ /dev/null @@ -1,41 +0,0 @@ -# $Id: PKGBUILD 99614 2010-11-15 21:11:47Z giovanni $ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Douglas Soares de Andrade <douglas@archlinux.org> - -pkgname=mercurial -pkgver=1.7.1 -pkgrel=2 -pkgdesc="A scalable distributed SCM tool" -arch=('i686' 'x86_64') -url="http://www.selenic.com/mercurial" -license=('GPL') -depends=('python2') -optdepends=('tk: for the hgk GUI') -source=(http://www.selenic.com/mercurial/release/${pkgname}-${pkgver}.tar.gz - mercurial.profile) -md5sums=('b14caa0f9e4dd5acbf9e9a6059c37fd3' - '43e1d36564d4c7fbe9a091d3ea370a44') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - python2 setup.py install --root="${pkgdir}/" --optimize=1 || return 1 - - sed -i -e 's#env python#env python2#' \ - "${pkgdir}"/usr/lib/python2.6/site-packages/mercurial/lsprof.py - - install -d ${pkgdir}/usr/share/man/{man1,man5} - install -m644 doc/hg.1 "${pkgdir}/usr/share/man/man1" || return 1 - install -m644 doc/{hgrc.5,hgignore.5} "${pkgdir}/usr/share/man/man5" || return 1 - install -m755 contrib/hgk "${pkgdir}/usr/bin" || return 1 - install -m644 -D contrib/zsh_completion "${pkgdir}/usr/share/zsh/site-functions/_hg" || return 1 - install -m644 -D contrib/bash_completion "${pkgdir}/etc/bash_completion.d/hg" || return 1 - install -d "${pkgdir}/usr/share/emacs/site-lisp" - install -m644 contrib/{mq.el,mercurial.el} "${pkgdir}/usr/share/emacs/site-lisp" || return 1 - - vimpath="${pkgdir}/usr/share/vim/vimfiles" - install -Dm644 contrib/vim/HGAnnotate.vim "${vimpath}/syntax/HGAnnotate.vim" || return 1 - - # set some variables - install -m755 -d ${pkgdir}/etc/profile.d - install -m755 ${srcdir}/mercurial.profile "${pkgdir}/etc/profile.d/mercurial.sh" || return 1 -} diff --git a/abs/extra/mercurial/__changelog b/abs/extra/mercurial/__changelog deleted file mode 100644 index e0cb121..0000000 --- a/abs/extra/mercurial/__changelog +++ /dev/null @@ -1 +0,0 @@ -7/4/11 - chw - change to ensure use of python 2.6 in PKGBUILD diff --git a/abs/extra/mercurial/mercurial.profile b/abs/extra/mercurial/mercurial.profile deleted file mode 100644 index fc96182..0000000 --- a/abs/extra/mercurial/mercurial.profile +++ /dev/null @@ -1 +0,0 @@ -export HG=/usr/bin/hg diff --git a/abs/extra/mingetty/PKGBUILD b/abs/extra/mingetty/PKGBUILD deleted file mode 100644 index d24a8b5..0000000 --- a/abs/extra/mingetty/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# Contributor: stonecrest <stonecrestATgmailDOTcom> -pkgname=mingetty -pkgver=1.08 -pkgrel=2 -pkgdesc="Designed to be a minimal getty and allows automatic logins." -arch=('i686' 'x86_64') -url="http://sourceforge.net/projects/mingetty" -license=('GPL') -depends=('glibc') -makedepends=('gcc' 'make') -provides=('mingetty') -conflicts=('mingetty') -md5sums=('2a75ad6487ff271424ffc00a64420990' - 'b1bcb0668c34d4981e3acddc3990dfdb') -source=(http://downloads.sourceforge.net/sourceforge/mingetty/$pkgname-$pkgver.tar.gz - mingetty-utf8.patch) - -build() { - patch $startdir/src/$pkgname-$pkgver/mingetty.c mingetty-utf8.patch || return 1 - - mkdir -p $startdir/pkg/sbin || return 1 - mkdir -p $startdir/pkg/usr/man/man8 || return 1 - - cd $startdir/src || return 1 - cd $startdir/src/$pkgname-$pkgver || return 1 - - LDFLAGS="-s" make || return 1 - install -m 0755 mingetty $startdir/pkg/sbin || return 1 - install -m 0644 mingetty.8 $startdir/pkg/usr/man/man8 || return 1 -} diff --git a/abs/extra/mingetty/mingetty-utf8.patch b/abs/extra/mingetty/mingetty-utf8.patch deleted file mode 100644 index c269039..0000000 --- a/abs/extra/mingetty/mingetty-utf8.patch +++ /dev/null @@ -1,158 +0,0 @@ -diff -Nru mingetty-1.07.orig/mingetty.c mingetty-1.07/mingetty.c ---- mingetty-1.07.orig/mingetty.c 2004-01-03 15:15:56.000000000 +0200 -+++ mingetty-1.07/mingetty.c 2006-11-22 22:13:26.967910100 +0200 -@@ -16,10 +16,15 @@ - * - autologin only at first login - * - /etc/mingetty.conf that can be used instead of /etc/inittab for - * command line options -- * - Can UTF-8 setup be done within mingetty? -+ * - Can UTF-8 setup be done within mingetty? Let's try now :-) (VinzC) - * - Also add /bin/login-type functionality in here? - */ - -+/* Additional comments: Vincent Cadet <vcadet@hotmail.com> (2006-11-21) -+ * - Attempt to make mingetty support UTF-8. Modifications were imported -+ * from Suse migetty.c 0.9.6s. -+ */ -+ - #include <stdio.h> - #include <stdlib.h> - #include <unistd.h> -@@ -39,6 +44,19 @@ - #include <syslog.h> - #include <sys/utsname.h> - #include <time.h> -+#include <locale.h> -+#include <iconv.h> -+#include <wctype.h> -+#include <sys/kd.h> -+#include <sys/ttydefaults.h> -+ -+#ifndef IUTF8 -+# ifndef ASM_IUTF8 -+# error ASM_IUTF8 input flag not defined - Cannot define IUTF8 -+# else -+# define IUTF8 ASM_IUTF8 -+# endif -+#endif - - /* name of this program (argv[0]) */ - static char *progname; -@@ -74,6 +92,8 @@ - static char *autologin = NULL; - /* try to read a char before dropping to login prompt */ - static int loginpause = 0; -+/* terminal mode */ -+static int mode = K_RAW; - - /* error() - output error messages */ - static void error (const char *fmt, ...) -@@ -187,10 +207,21 @@ - if (fd > 2) - close (fd); - -+ /* Detect mode of current keyboard setup, e.g. for UTF-8 */ -+ if (ioctl(0, KDGKBMODE, &mode) < 0) -+ mode = K_RAW; -+ - /* Write a reset string to the terminal. This is very linux-specific - and should be checked for other systems. */ - if (noclear == 0) -- write (0, "\033c", 2); -+ /* don't write a full reset (ESC c) because this leaves the -+ unicode mode again if the terminal was in unicode mode -+ and also undos the ESC sequences in CONSOLE_MAGIC which -+ are needed for some languages/console-fonts. -+ Just put the cursor to the home position (ESC [ H), -+ erase everything below the cursor (ESC [ J), and set the -+ scrolling region to the full window (ESC [ r) */ -+ write (0, "\033[r\033[H\033[J", 9); - - sigaction (SIGHUP, &sa_old, NULL); - } -@@ -292,32 +323,75 @@ - - static char *get_logname (void) - { -- static char logname[40]; -+ static char logname[4*UT_NAMESIZE]; - char *bp; - unsigned char c; -+ int ascii; -+ iconv_t ic; - - tcflush (0, TCIFLUSH); /* flush pending input */ -+ -+ /* Check for UTF-8 mode */ -+ switch(mode) { -+ case K_UNICODE: -+ ascii = 0; -+ setlocale(LC_CTYPE, "en_US.UTF-8"); -+ break; -+ case K_RAW: -+ case K_MEDIUMRAW: -+ case K_XLATE: -+ default: -+ ascii = 1; -+ setlocale(LC_CTYPE, "POSIX"); -+ break; -+ } -+ - for (*logname = 0; *logname == 0;) { - do_prompt (1); - for (bp = logname;;) { - if (read (0, &c, 1) < 1) { -- if (errno == EINTR || errno == EIO -- || errno == ENOENT) -+ if (errno == EINTR || errno == EAGAIN) { -+ usleep(1000); -+ continue; -+ } -+ if (errno == EIO || errno == ENOENT) - exit (EXIT_SUCCESS); - error ("%s: read: %s", tty, strerror (errno)); - } - if (c == '\n' || c == '\r') { - *bp = 0; - break; -- } else if (!isprint (c)) -- error ("%s: invalid character 0x%x in login" -- " name", tty, c); -+ } -+ -+ if (ascii && !isprint (c)) -+ error ("%s: invalid character 0x%x in login name", tty, c); - else if ((size_t)(bp - logname) >= sizeof (logname) - 1) - error ("%s: too long login name", tty); -- else -- *bp++ = c; -+ -+ *bp++ = c; - } - } -+ -+ if (!ascii && (ic = iconv_open("WCHAR_T", "UTF-8"))) { -+ char tmpbuf[4*sizeof(logname)], *op, *lp; -+ size_t len = bp - logname; -+ size_t out = sizeof(tmpbuf) - 1; -+ size_t wcl; -+ wint_t *wcp; -+ -+ op = tmpbuf; -+ lp = logname; -+ if ((wcl = iconv(ic , &lp, &len, &op, &out)) == (size_t)-1) -+ error ("%s: invalid character conversion for login name", tty); -+ iconv_close(ic); -+ -+ wcp = (wint_t*)tmpbuf; -+ wcp[wcl] = (wint_t)0; -+ while (*wcp) { -+ if (!iswprint(*wcp++)) -+ error ("%s: invalid character for login name found", tty); -+ } -+ } - return logname; - } - - - diff --git a/abs/extra/miro/PKGBUILD b/abs/extra/miro/PKGBUILD index e0a8d7f..1241350 100644 --- a/abs/extra/miro/PKGBUILD +++ b/abs/extra/miro/PKGBUILD @@ -1,30 +1,52 @@ -# $Id: PKGBUILD 96701 2010-10-24 10:50:35Z ronald $ +# $Id: PKGBUILD 163155 2012-07-08 09:31:52Z ibiru $ # Maintainer: Ronald van Haren <ronald.archlinux.org> pkgname=miro -pkgver=4.0.2 -pkgrel=2 +pkgver=5.0.1 +pkgrel=3 pkgdesc="The free and open source internet TV platform" arch=('i686' 'x86_64') url="http://www.getmiro.com" license=('GPL2') -depends=('dbus-python' 'pyrex' 'pygtk' 'gstreamer0.10' 'gnome-python' +depends=('dbus-python' 'pyrex' 'pygtk' 'gstreamer0.10' 'python2-gconf' 'python-pysqlite' 'pywebkitgtk' 'shared-mime-info' 'desktop-file-utils' 'gstreamer0.10' 'hicolor-icon-theme' 'gstreamer0.10-python' 'python-notify' 'libtorrent-rasterbar' - 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'python-pycurl' - 'python2-gconf') -makedepends=('pkgconfig') + 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'python-pycurl' + 'gstreamer0.10-ffmpeg' 'ffmpeg' 'mutagen' 'xdg-utils') +makedepends=('pkg-config' 'boost') install=miro.install -source=(http://ftp.osuosl.org/pub/pculture.org/${pkgname}/src/${pkgname}-${pkgver}.tar.gz) -sha1sums=('22342897ca748fa19738c9c1c510510f314fa7eb') +source=("http://ftp.osuosl.org/pub/pculture.org/${pkgname}/src/${pkgname}-${pkgver}.tar.gz" + 'ffmpeg.patch' 'miro_is.conf') build() { - cd "${srcdir}/${pkgname}-${pkgver}/linux" + cd "${srcdir}/${pkgname}-${pkgver}" - python2 setup.py install --root=${pkgdir} || return 1 + cd linux + patch -p2 -i "${srcdir}"/ffmpeg.patch + + python2 setup.py install --root="${pkgdir}" # fix miro startup script so --debug works with python2 - sed -i "s|which python|which python2|" ${pkgdir}/usr/bin/miro - sed -i "s|./miro.real|/usr/bin/miro.real|" ${pkgdir}/usr/bin/miro + sed -i "s|which python|which python2|" "${pkgdir}/usr/bin/miro" + sed -i "s|./miro.real|/usr/bin/miro.real|" "${pkgdir}/usr/bin/miro" + + # fix python scripts for python2 + sed -i "s|/usr/bin/env python|/usr/bin/env python2|" ${pkgdir}/usr/share/miro/resources/searchengines/update-icons.py + for i in usr/share/miro/resources/testdata/echonest-replies/generate.py usr/share/miro/resources/searchengines/update-icons.py \ + usr/share/miro/resources/testdata/7digital-replies/generate.py; do + sed -i "s|/usr/bin/python|/usr/bin/python2|" ${pkgdir}/${i} + done + + # Fakeroot segfaults on these; remove + if [ ${arch} == "i686" ]; then + rm -f ${pkgdir}/usr/bin/codegen.Linux-x86_64 || true + else + rm -f ${pkgdir}/usr/bin/codegen.Linux-i686 || true + fi + #add in miro_is.conf + install -D -m0744 ${srcdir}/miro_is.conf ${pkgdir}/etc/gen_is_xml.d/miro_is.conf } +md5sums=('c618ae4f091bb80b5bb6a669e364d330' + 'ee577d1e3cc33c2c50fcef5380fa215a' + 'fb6b77d8f346504bd3ea34be8983407b') diff --git a/abs/extra/miro/__changelog b/abs/extra/miro/__changelog index 4c11c5f..e721716 100644 --- a/abs/extra/miro/__changelog +++ b/abs/extra/miro/__changelog @@ -1,2 +1 @@ -2/5/11 - chw - the miro.install that is used is LinHES specfic. -2/5/11 - chw - added python2-gconf as dep. +miro.install -custom diff --git a/abs/extra/miro/ffmpeg.patch b/abs/extra/miro/ffmpeg.patch new file mode 100644 index 0000000..99c1410 --- /dev/null +++ b/abs/extra/miro/ffmpeg.patch @@ -0,0 +1,63 @@ +--- miro-5.0.1/linux/miro-segmenter.c~ 2012-07-06 14:33:24.618082171 +0000 ++++ miro-5.0.1/linux/miro-segmenter.c 2012-07-06 15:10:19.564146117 +0000 +@@ -156,7 +156,7 @@ + exit(1); + } + +- ret = av_open_input_file(&ic, input, ifmt, 0, NULL); ++ ret = avformat_open_input(&ic, input, ifmt, 0); + if (ret != 0) { + fprintf(stderr, "Could not open input file, make sure it is an mpegts file: %d\n", ret); + exit(1); +@@ -215,12 +215,7 @@ + } + } + +- if (av_set_parameters(oc, NULL) < 0) { +- fprintf(stderr, "Invalid output format parameters\n"); +- exit(1); +- } +- +- dump_format(oc, 0, input, 1); ++ av_dump_format(oc, 0, input, 1); + + if (video_st) { + codec = avcodec_find_decoder(video_st->codec->codec_id); +@@ -233,12 +228,12 @@ + } + } + +- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) { ++ if (avio_open(&oc->pb, output_filename, AVIO_FLAG_WRITE) < 0) { + fprintf(stderr, "Could not open '%s'\n", output_filename); + exit(1); + } + +- if (av_write_header(oc)) { ++ if (avformat_write_header(oc, NULL)) { + fprintf(stderr, "Could not write mpegts header to first output file\n"); + + exit(1); +@@ -274,10 +269,10 @@ + } + + if (segment_time - prev_segment_time >= segment_duration) { +- put_flush_packet(oc->pb); +- url_fclose(oc->pb); ++ avio_flush(oc->pb); ++ avio_close(oc->pb); + +- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) { ++ if (avio_open(&oc->pb, output_filename, AVIO_FLAG_WRITE) < 0) { + fprintf(stderr, "Could not open '%s'\n", output_filename); + break; + } +@@ -307,7 +302,7 @@ + av_freep(&oc->streams[i]); + } + +- url_fclose(oc->pb); ++ avio_close(oc->pb); + av_free(oc); + + /* End-of-transcode marker. */ diff --git a/abs/extra/miro/miro.install b/abs/extra/miro/miro.install index 02b2c06..202fe91 100644 --- a/abs/extra/miro/miro.install +++ b/abs/extra/miro/miro.install @@ -1,37 +1,24 @@ # arg 1: the new package version post_install() { update-desktop-database -q - mv /usr/share/mythtv/is.xml /tmp/is.xml.tmp - sed -e '/\#Miro/,/\#Miro/d' < /tmp/is.xml.tmp > /usr/share/mythtv/is.xml - mv /usr/share/mythtv/is.xml /tmp - grep -v -e /mythmenu /tmp/is.xml > /tmp/is.xml.tmp - echo "<!--#Miro-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Miro Player</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/bin/miro</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#Miro-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "</mythmenu>" >> /tmp/is.xml.tmp - mv /tmp/is.xml.tmp /usr/share/mythtv/is.xml + /usr/LH/bin/gen_is_xml.py if [ -d /myth/democracy ] then - ln -s /myth/democracy /home/mythtv/.miro + ln -s /myth/democracy /$MYTHHOME/.miro ln -s /myth/miro/Movies /myth/video/Miro exit 1 else if [ -d /myth/miro ] then - ln -s /myth/miro /home/mythtv/.miro + ln -s /myth/miro /$MYTHHOME/.miro ln -s /myth/miro/Movies /myth/video/Miro exit 1 else if [ ! -d /myth/miro -o /myth/democracy ] then mkdir -p /myth/miro/Movies - ln -s /myth/miro /home/mythtv/.miro - ln -s /myth/miro/Movies /home/mythtv/Movies + ln -s /myth/miro /$MYTHHOME/.miro + ln -s /myth/miro/Movies /$MYTHHOME/Movies ln -s /myth/miro/Movies /myth/video/Miro fi fi @@ -39,32 +26,19 @@ post_install() { chown -R mythtv.mythtv /myth/miro } -post_update() { - mv /usr/share/mythtv/is.xml /tmp/is.xml.tmp - sed -e '/\#Miro/,/\#Miro/d' < /tmp/is.xml.tmp > /usr/share/mythtv/is.xml - mv /usr/share/mythtv/is.xml /tmp/is.xml.tmp - sed -e '/\#Miro/,/\#Miro/d' < /tmp/is.xml.tmp > /usr/share/mythtv/is.xml - mv /usr/share/mythtv/is.xml /tmp - grep -v -e /mythmenu /tmp/is.xml > /tmp/is.xml.tmp - echo "<!--#Miro-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Miro Player</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/bin/miro</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#Miro-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "</mythmenu>" >> /tmp/is.xml.tmp - mv /tmp/is.xml.tmp /usr/share/mythtv/is.xml +post_upgrade() { + /usr/LH/bin/gen_is_xml.py } post_remove() { - update-desktop-database -q - rm -fr /home/mythtv/.miro /myth/video/Miro /myth/miro /myth/democracy - mv /usr/share/mythtv/is.xml /tmp/is.xml.tmp - sed -e '/\#Miro/,/\#Miro/d' < /tmp/is.xml.tmp > /usr/share/mythtv/is.xml + update-desktop-database -q + rm -fr /$MYTHHOME/.miro /myth/video/Miro /myth/miro /myth/democracy + /usr/LH/bin/gen_is_xml.py } +. /usr/MythVantage/bin/install_functions.sh +home_check + op=$1 shift $op $* diff --git a/abs/extra/miro/miro_is.conf b/abs/extra/miro/miro_is.conf new file mode 100644 index 0000000..9c6b258 --- /dev/null +++ b/abs/extra/miro/miro_is.conf @@ -0,0 +1,8 @@ +<!--#Miro--> + <button>" + <type>STREAM</type> + <text>Miro Player</text> + <action>EXEC /usr/bin/miro</action> + </button> +<!--#Miro--> + diff --git a/abs/extra/mkvtoolnix/PKGBUILD b/abs/extra/mkvtoolnix/PKGBUILD index fb275a2..2439562 100644 --- a/abs/extra/mkvtoolnix/PKGBUILD +++ b/abs/extra/mkvtoolnix/PKGBUILD @@ -1,32 +1,88 @@ -# $Id: PKGBUILD 41916 2009-06-07 23:34:29Z giovanni $ +# $Id: PKGBUILD 163843 2012-07-21 11:04:01Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: 03/08/04 <lefungus@altern.org> +# Contributor: xduugu <xduugu@gmx.com> -## -## NOTE!!! Newer versions of mkvtoolnix requires gcc v4.6.0+ !!! -## - - -pkgname=mkvtoolnix -pkgver=5.0.1 -pkgrel=1 -pkgdesc="Set of tools to create, edit and inspect Matroska files" +pkgbase=mkvtoolnix +pkgname=('mkvtoolnix-cli' 'mkvtoolnix-gtk') +pkgver=5.7.0 +pkgrel=3 arch=('i686' 'x86_64') -license=('GPL2') +license=('GPL') url="http://www.bunkus.org/videotools/mkvtoolnix/index.html" -depends=('libmatroska>=1.0.0' 'libebml>=1.0.0' 'flac>=1.1.4' 'libvorbis' 'wxgtk>=2.8.0.1' 'file' 'boost' 'lzo2' 'qt') -makedepends=('ruby' 'libcroco') -source=("http://www.bunkus.org/videotools/${pkgname}/sources/${pkgname}-${pkgver}.tar.bz2") +makedepends=('libmatroska' 'flac' 'libvorbis' 'file' 'wxgtk' + 'boost-libs' 'lzo2' 'xdg-utils' 'boost' 'ruby') +source=("http://www.bunkus.org/videotools/${pkgbase}/sources/${pkgbase}-${pkgver}.tar.bz2" + 'mm_io.patch') +md5sums=('99ea44be570412dadafe4ccaee0cfe6e' + '293bd4551ef8529e9d4796c5a201b8fc') build() { - cd ${srcdir}/${pkgname}-${pkgver}/ + cd "${srcdir}/${pkgbase}-${pkgver}" + + patch -Np1 -i "${srcdir}/mm_io.patch" + + # Disable automagic curl dep used for online update checking + sed -i -e '/curl/d' configure.in + export CURL_CFLAGS="" CURL_LIBS="" + + export CFLAGS="${CFLAGS} -DBOOST_FILESYSTEM_VERSION=3" + export CXXFLAGS="${CXXFLAGS} -DBOOST_FILESYSTEM_VERSION=3" + + autoreconf + ./configure --prefix=/usr \ --with-boost-libdir=/usr/lib \ - --enable-qt - ./drake || return 1 + --disable-gui + rake + + mv src/mkvinfo{,-cli} + + ./configure --prefix=/usr \ + --with-boost-libdir=/usr/lib + rake } -package() { - cd ${srcdir}/${pkgname}-${pkgver} - ./drake DESTDIR=${pkgdir} install + +package_mkvtoolnix-cli() { + pkgdesc="Set of tools to create, edit and inspect Matroska files - CLI version" + depends=('libmatroska' 'expat' 'flac' 'libvorbis' 'file' 'boost-libs' 'lzo2') + provides=('mkvtoolnix') + conflicts=('mkvtoolnix') + replaces=('mkvtoolnix') + + cd "${srcdir}/${pkgbase}-${pkgver}" + + rake DESTDIR="${pkgdir}" install + rm -rf "${pkgdir}"/usr/bin/mkvinfo + install -Dm755 src/mkvinfo-cli "${pkgdir}"/usr/bin/mkvinfo + + rm -rf "${pkgdir}"/usr/bin/mmg + rm -rf "${pkgdir}"/usr/share/man/ja/man1/mmg.1 + rm -rf "${pkgdir}"/usr/share/man/man1/mmg.1 + rm -rf "${pkgdir}"/usr/share/man/nl/man1/mmg.1 + rm -rf "${pkgdir}"/usr/share/man/zh_CN/man1/mmg.1 + rm -rf "${pkgdir}"/usr/share/man/uk/man1/mmg.1 + rm -rf "${pkgdir}"/usr/share/applications + rm -rf "${pkgdir}"/usr/share/icons + rm -rf "${pkgdir}"/usr/share/mime +} + +package_mkvtoolnix-gtk() { + pkgdesc="Set of tools to create, edit and inspect Matroska files - wxGTK GUI" + depends=("mkvtoolnix-cli=${pkgver}" 'wxgtk' 'xdg-utils') + install=mkvtoolnix.install + + cd "${srcdir}/${pkgbase}-${pkgver}" + + rake DESTDIR="${pkgdir}" install + rm -rf "${pkgdir}"/usr/bin/mkv* + install -Dm755 src/mkvinfo "${pkgdir}"/usr/bin/mkvinfo-gtk + sed -ri 's/^(Exec=mkvinfo)/\1-gtk/' "${pkgdir}"/usr/share/applications/mkvinfo.desktop + + rm -rf "${pkgdir}"/usr/share/doc + rm -rf "${pkgdir}"/usr/share/locale + rm -rf "${pkgdir}"/usr/share/man/ja/man1/mkv* + rm -rf "${pkgdir}"/usr/share/man/man1/mkv* + rm -rf "${pkgdir}"/usr/share/man/nl/man1/mkv* + rm -rf "${pkgdir}"/usr/share/man/zh_CN/man1/mkv* + rm -rf "${pkgdir}"/usr/share/man/uk/man1/mkv* } -md5sums=('2cd84ff24e1d9217dd3caf170f34e758') diff --git a/abs/extra/mkvtoolnix/mkvtoolnix.install b/abs/extra/mkvtoolnix/mkvtoolnix.install new file mode 100644 index 0000000..74d9eb2 --- /dev/null +++ b/abs/extra/mkvtoolnix/mkvtoolnix.install @@ -0,0 +1,14 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + if [ -f usr/bin/update-mime-database ]; then + update-mime-database usr/share/mime &> /dev/null + fi +} + +post_upgrade() { + post_install +} + +pre_remove() { + post_install +} diff --git a/abs/extra/mkvtoolnix/mm_io.patch b/abs/extra/mkvtoolnix/mm_io.patch new file mode 100644 index 0000000..9ee9e01 --- /dev/null +++ b/abs/extra/mkvtoolnix/mm_io.patch @@ -0,0 +1,11 @@ +--- a/src/common/mm_io.cpp 2012-07-08 20:06:02.000000000 +0200 ++++ b/src/common/mm_io.cpp 2012-07-21 11:59:59.000000000 +0200 +@@ -147,7 +147,7 @@ + void + mm_file_io_c::prepare_path(const std::string &path) { + boost::filesystem::path directory = boost::filesystem::path(path).parent_path(); +- if (boost::filesystem::exists(directory)) ++ if (directory.empty() || boost::filesystem::exists(directory)) + return; + + boost::system::error_code error_code; diff --git a/abs/extra/monitorix/PKGBUILD b/abs/extra/monitorix/PKGBUILD deleted file mode 100644 index d2dceec..0000000 --- a/abs/extra/monitorix/PKGBUILD +++ /dev/null @@ -1,47 +0,0 @@ -# Contributor: graysky <graysky AT archlinux dot us> -# Contributor: res <andres87p gmail> - -pkgname=monitorix -pkgver=1.5.2 -pkgrel=1 -pkgdesc='A lightweight system monitoring tool that uses rrd databases.' -arch=(any) -url=http://www.$pkgname.org/ -license=(GPL) -depends=('rrdtool' 'perl-libwww') -optdepends=('lm_sensors: enable support for system temp monitoring' -'hddtemp: enable support for hdd temp monitoring' -'metamail: enable support for reports via system mail') - -backup=(etc/$pkgname.conf) -source=($url$pkgname-$pkgver.tar.gz - monitorix.rc.d) -install=('readme.install') - -build() { - cd $pkgname-$pkgver - - install -D $pkgname.pl $pkgdir/usr/sbin/$pkgname.pl - install -D ../$pkgname.rc.d $pkgdir/etc/rc.d/$pkgname - -# use Arch defaults - sed -e '/^our $OSTYPE/ s,RHFC,Arch,' \ - -e '/^our @HDDTEMP_LIST/ s,hda,sda,' < $pkgname.conf \ - > $pkgdir/etc/$pkgname.conf - mkdir -p $pkgdir/var/lib/$pkgname/usage - cp -r reports $pkgdir/var/lib/$pkgname - - mkdir -p $pkgdir/usr/share/doc/$pkgname - cp Changes $pkgname-apache.conf $pkgname-alert.sh README README.nginx TODO \ - $pkgdir/usr/share/doc/$pkgname - - install -dm777 $pkgdir/srv/http/$pkgname/imgs - cp {logo_bot,logo_top,${pkgname}ico}.png $pkgdir/srv/http/$pkgname - - install -D $pkgname.cgi $pkgdir/srv/http/cgi-bin/$pkgname.cgi - - gzip -9 man/man5/$pkgname.conf.5 - install -Dm644 man/man5/$pkgname.conf.5.gz $pkgdir/usr/share/man/man5/$pkgname.conf.5.gz -} -sha256sums=('3d025d097fe8dd458501b8cf3345b80b1b66625ae257e21452b95d1596ec5b6d' - 'f9ba4e09f8e583808bc9fa5476ddac067182799512e103ea40565b7da47dbab6') diff --git a/abs/extra/monitorix/monitorix.rc.d b/abs/extra/monitorix/monitorix.rc.d deleted file mode 100644 index 24eb433..0000000 --- a/abs/extra/monitorix/monitorix.rc.d +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/bash -# -# @(#) Fibranet NSP, SL -# Copyright (C) 2005-2009 by Jordi Sanfeliu <jordi@fibranet.cat> -# -. /etc/rc.conf -. /etc/rc.d/functions - -case $1 in - start) - stat_busy "Starting Monitorix" - if ck_daemon monitorix; then - # check for monitorix-tmps and if present execute it - if [ -x /etc/cron.hourly/sync-monitorix.sh ]; then - /etc/cron.hourly/sync-monitorix.sh >/dev/null 2>&1 - fi - # Creates RRDs files if needed - /usr/sbin/monitorix.pl create >/dev/null 2>&1 || stat_die $? - /usr/sbin/monitorix.pl init >/dev/null 2>&1 || stat_die $? - add_daemon monitorix - # restart crond so data gets collected - /etc/rc.d/crond restart - stat_done - else - stat_fail - fi - ;; - - stop) - stat_busy "Stopping Monitorix" - if ! ck_daemon monitorix; then - # check for monitorix-tmps and if present execute it - if [ -x /etc/cron.hourly/sync-monitorix.sh ]; then - /etc/cron.hourly/sync-monitorix.sh >/dev/null 2>&1 - fi - /usr/sbin/monitorix.pl stop 2>&1 || stat_die $? - rm_daemon monitorix - # restart crond data stops getting collected - /etc/rc.d/crond restart - stat_done - else - stat_fail - fi - ;; - - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" - ;; -esac - -exit 0 diff --git a/abs/extra/monitorix/readme.install b/abs/extra/monitorix/readme.install deleted file mode 100644 index 2630018..0000000 --- a/abs/extra/monitorix/readme.install +++ /dev/null @@ -1,54 +0,0 @@ -post_install() { - echo '----------------------------------------------------------------------' - echo 'NOTE that you will need a mono-font for this package to work.' - echo 'There are many options here so I did not add one as a formal dep.' - echo 'You may use for example terminus-font. If your graphs have no numbers' - echo 'go ahead and install it. If they work as is you do not need it.' - echo ' ' - echo 'Consider having your rrd databases for monitorix reside in RAM.' - echo 'D/L and build the monitorix-tmpfs package from the AUR:' - echo - echo ' http://aur.archlinux.org/packages.php?ID=34134' - echo '----------------------------------------------------------------------' -} - -post_remove() { - echo '----------------------------------------------------------------------' - echo 'To remove all traces of monitorix from your system, you must manually' - echo 'remove the following dir trees (doing so will delete your databases):' - echo - echo '/var/lib/monitorix' - echo '/srv/http/monitorix' - echo '----------------------------------------------------------------------' -} - -# $1: The new package version -# $2: The old package version - -post_upgrade() { -NEW=`echo $1 | cut -f-1 -d '-'` -OLD=`echo $2 | cut -f-1 -d '-'` - -# if running the 1.4.2 series then display warning message - -if [ "$OLD" = "1.4.2" ]; then - echo '----------------------------------------------------------------------' - echo ' WARNING:' - echo - echo 'With this upgrade you MUST replace your current version of' - echo '/etc/monitorix.conf with /etc/monitorix.conf.pacnew which contains new' - echo 'configs needed by the 1.5.0 release of monitorix.' - echo - echo 'Simply do the following:' - echo '# cp /etc/monitorix.conf /etc/monitorix.conf.old' - echo '# mv /etc/monitorix.conf.pacnew /etc/monitorix.conf' - echo - echo 'Now you can compare your old config saved as /etc/monitorix.conf.old' - echo 'to your new config to ensure that you get all your config options into' - echo 'the new version.' - echo - echo 'Restart monitorix when you have completed the edit as well:' - echo '# /etc/rc.d/monitorix restart' - echo '----------------------------------------------------------------------' -fi -} diff --git a/abs/extra/mono/PKGBUILD b/abs/extra/mono/PKGBUILD index bd9bf3b..9a83fc9 100644 --- a/abs/extra/mono/PKGBUILD +++ b/abs/extra/mono/PKGBUILD @@ -1,22 +1,22 @@ -# $Id: PKGBUILD 95334 2010-10-18 17:54:25Z daniel $ +# $Id: PKGBUILD 145729 2011-12-29 13:13:45Z daniel $ # Maintainer: Daniel Isenmann <daniel@archlinux.org> # Contributor: Brice Carpentier <brice@dlfp.org> pkgname=mono -pkgver=2.8 +pkgver=2.10.8 pkgrel=1 pkgdesc="Free implementation of the .NET platform including runtime and compiler" arch=(i686 x86_64) license=('GPL' 'LGPL2' 'MPL' 'custom:MITX11') url="http://www.mono-project.com/" -depends=('zlib' 'libgdiplus>=2.8' 'sh') +depends=('zlib' 'libgdiplus>=2.10' 'sh') makedepends=('pkgconfig') options=('!libtool' '!makeflags') provides=('monodoc') conflicts=('monodoc') -source=(http://ftp.novell.com/pub/mono/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2 +source=(http://download.mono-project.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.gz mono.rc.d) -md5sums=('30b1180e20e5110d3fb36147137014a0' +md5sums=('411a2d9bcfc37a61eb9aedba88b40533' '8315e46c6a6e9625502521fc0ad1a322') build() { @@ -25,12 +25,21 @@ build() { ./configure --prefix=/usr --sysconfdir=/etc \ --with-libgdiplus=installed make || return 1 + + # build jay + cd ${srcdir}/${pkgname}-${pkgver}/mcs/jay + make || return 1 } package() { cd ${srcdir}/${pkgname}-${pkgver} make DESTDIR=${pkgdir} install || return 1 + # install jay + cd ${srcdir}/${pkgname}-${pkgver}/mcs/jay + make DESTDIR=${pkgdir} prefix=/usr INSTALL=../../install-sh install + cd ${srcdir}/${pkgname}-${pkgver} + # install daemons and pathes mkdir -p ${pkgdir}/etc/rc.d install -m755 ${srcdir}/mono.rc.d ${pkgdir}/etc/rc.d/mono diff --git a/abs/extra/mono/__changelog b/abs/extra/mono/__changelog deleted file mode 100644 index 8ed76c2..0000000 --- a/abs/extra/mono/__changelog +++ /dev/null @@ -1,2 +0,0 @@ -add bison as a make depends -update to 2.8 diff --git a/abs/extra/most/PKGBUILD b/abs/extra/most/PKGBUILD index b2d8624..6d91e7d 100644 --- a/abs/extra/most/PKGBUILD +++ b/abs/extra/most/PKGBUILD @@ -1,20 +1,32 @@ -# $Id: PKGBUILD 57011 2009-10-31 08:09:42Z allan $ -# Maintainer: juergen <juergen@archlinux.org> +# $Id: PKGBUILD 144477 2011-12-06 14:33:19Z stephane $ +# Maintainer: StĂ©phane Gaudreault <stephane@archlinux.org> +# Contributor: juergen <juergen@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=most pkgver=5.0.0a -pkgrel=2 +pkgrel=4 pkgdesc="A terminal pager similar to 'more' and 'less'" arch=('i686' 'x86_64') depends=('slang') license=('GPL') -url="ftp://space.mit.edu/pub/davis/most/" -source=(ftp://space.mit.edu/pub/davis/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('30f2131b67f61716f6fe1f65205da48b') +url="http://www.jedsoft.org/most/index.html" +source=(ftp://space.mit.edu/pub/davis/${pkgname}/${pkgname}-${pkgver}.tar.gz + most-debian.patch + most-leak-fd.patch) +sha1sums=('99eedb7169754b9a47c7755ac48949d76531e3b2' + '937796040c69bae3bf735fa3cd734775c582e7d0' + 'c5713e1278febdd0ed434e6e3044feb220b5d525') build() { - cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr --sysconfdir=/etc || return 1 - make DESTDIR=$pkgdir install || return 1 + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i ../most-debian.patch + patch -Np1 -i ../most-leak-fd.patch + ./configure --prefix=/usr --sysconfdir=/etc + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR=$pkgdir install } diff --git a/abs/extra/most/most-debian.patch b/abs/extra/most/most-debian.patch index 4387420..292c83b 100644 --- a/abs/extra/most/most-debian.patch +++ b/abs/extra/most/most-debian.patch @@ -1,1655 +1,2313 @@ ---- most-4.10.2.orig/most.1 -+++ most-4.10.2/most.1 -@@ -134,7 +134,7 @@ - Use this switch when you want to view files - containing 8 bit characters. - .I most --will display the file 16 bytes per line in hexidecimal notation. -+will display the file 16 bytes per line in hexadecimal notation. - A typical line looks like: - .IP - .Ds -@@ -185,12 +185,13 @@ - This option is meaningful only when used with the - .B \-v - option. -+.TP - .BI + lineno - Start up at - .IR lineno . +--- most-5.0.0a.orig/lesskeys.rc ++++ most-5.0.0a/lesskeys.rc +@@ -57,3 +57,8 @@ + setkey goto_mark "'" + setkey find_file "E" + setkey edit "v" ++setkey bob "^[[7~" ++setkey eob "^[[8~" ++setkey bob "^[OH" ++setkey eob "^[OF" ++ +--- most-5.0.0a.orig/most.1 ++++ most-5.0.0a/most.1 +@@ -203,7 +203,7 @@ + .TP + .B +u + Force UTF-8 mode. By default most will use the current locale to +-determine if UTF-8 mode shoul be used. The ++determine if UTF-8 mode should be used. The + .B +u + and + .B \-u +@@ -224,20 +224,28 @@ + Start up at the line containing the first occurrence of + .IR string . + .SH "COMMAND USAGE" +-The commands take effect immediately; it is not necessary to type a +-carriage return. +-.PP +-In the following commands, +-.I i +-is a numerical argument +-(1 by default). +-.TP +-.BR SPACE ", " CTRL-D ", " NEXT_SCREEN +-Display another windowful, or jump +-.I i +-windowfuls if +-.I i +-is specified. ++Some commands have an optional numeric argument ++.I id ++,entered before the command. If not given, the ++default value of ++.I i ++is 1. ++.PP ++Commands take effect immediately; typing a ++.I RETURN ++after isn't necessary or correct. (Besides, ++.I RETURN ++itself is a command.) ++.PP ++Example: to go down one line, press the ++.I DOWN_ARROW ++key. To go down 20 lines, press ++.I 2 ++then ++.I 0 ++then the ++.I DOWN_ARROW ++key. + .TP + \fBRETURN\fR, \fBDOWN_ARROW\fR, \fBV\fR, \fBCTRL-N\fR + Display another line, or +@@ -341,7 +349,7 @@ + .PD + Set a mark on the current line for later reference. .TP --.B +c --Make search case sensitive. -+.B -c -+Make searches case sensitive. - By default, they are not. +-.BR "INSERT_HERE, CTRL-X CTRL-X, COMMA, CTRL-K RETURN, GOLD PERIOD" ++.BR "INSERT_HERE" ", " "CTRL-X CTRL-X" ", " "COMMA" ", " "CTRL-K RETURN" ", " "GOLD PERIOD" + Set a mark on the current line but return to previous mark. + This allows the user to toggle back and forth between two positions + in the file. +@@ -355,7 +363,7 @@ + .BR "CTRL-X 2" ", " "CTRL-W 2" ", " "GOLD X" + Split this window in half. .TP - .B +d -@@ -482,7 +483,7 @@ - descriptors that represent the file name and line number, - respectively. For example, if JED is your editor, then set - .B MOST_EDITOR --to 'jed %s -g %d'. -+to 'jed %s -g %d'. This will only work where the %s preceeds the %d. +-.BR "CTRL-X o" ", " "CTRL-W o" ", " o ", " GOLD UP ", " GOLD DOWN ++.BR "CTRL-X o" ", " "CTRL-W o" ", " o ", " "GOLD UP" ", " "GOLD DOWN" + Move to other window. .TP - .B MOST_HELP - This variable may be used to specify an alternate help file. -@@ -496,7 +497,7 @@ - .I most.rc - on other systems. + .BR "CTRL-X 0" ", " "CTRL-W 0" ", " "GOLD V" +@@ -506,13 +514,15 @@ + .B MOST_INITFILE + Set this variable to specify the initialization file to load during + startup. The default action is to load the system configuration file +-and then a personal configuration file called +-.I .mostrc +-on Unix, and +-.I most.rc +-on other systems. ++from ++.I /etc/most.conf ++and then a personal configuration file located at ++.I $HOME/.mostrc ++. .SH CONFIGURATION FILE SYNTAX --When most starts up, it tries to read a system confiuration file and -+When most starts up, it tries to read a system configuration file and +-When most starts up, it tries to read a system configuration file and ++When ++.I most ++starts up, it tries to read a system configuration file and then a personal configuration file. These files may be used to specify keybindings and colors. .PP ---- most-4.10.2.orig/src/buffer.c -+++ most-4.10.2/src/buffer.c -@@ -44,10 +44,10 @@ - - Most_Buffer_Type *Most_Buf; - --int Most_Num_Lines; -+long long Most_Num_Lines; - --unsigned int Most_C_Offset; --int Most_C_Line; -+unsigned long long Most_C_Offset; -+long long Most_C_Line; - - static unsigned char *beg_of_line1(void) - { -@@ -61,24 +61,29 @@ - { - if (*pos == '\n') - { -- pos--; -- while ((pos > Most_Beg) -- && (*pos != '\n')) -+ pos--; /* Skip back the new-line. */ -+ /* This block is UTF-8 safe, because it only scans the -+ buffer for a new-line, and doesn't count -+ characters. */ -+ while ((pos > Most_Beg) && (*pos != '\n')) - pos--; - -- if (*pos != '\n') return pos; -+ if (*pos != '\n') return Most_Beg; -+ /* from here on *pos == '\n' */ - if (pos + 1 != cpos) - return pos + 1; - } - } -- else pos--; -+ else -+ pos = SLutf8_bskip_char(Most_Beg, pos); - - if (*pos != '\n') - { -- while ((pos > Most_Beg) -- && (*pos != '\n')) -+ /* This block is UTF-8 safe. See comment above. */ -+ while ((pos > Most_Beg) && (*pos != '\n')) - pos--; - if (*pos != '\n') return Most_Beg; -+ /* from here on *pos == '\n' */ - return pos + 1; - } - -@@ -93,55 +98,6 @@ - return pos; - } - -- --static unsigned char *forward_columns (unsigned char *b, unsigned char *e, unsigned int num_cols) --{ -- unsigned int col = 0; -- -- while ((b < e) -- && (col < num_cols)) -- { -- unsigned char ch = *b++; -- if (((ch >= ' ') && (ch < 0x7F)) -- || (ch >= SLsmg_Display_Eight_Bit)) -- { -- col++; -- continue; -- } -- -- if ((ch == '\b') || (ch == '\t') || (ch == '\r')) -- switch (ch) -- { -- case '\b': -- if (Most_V_Opt == 0) -- { -- if (col > 0) col--; -- } -- else col += 2; -- break; -- -- case '\r': -- if (Most_V_Opt == 0) -- col = 0; -- else -- col += 2; -- break; -- -- case '\t': -- if (Most_T_Opt == 0) -- col = Most_Tab_Width * (col/Most_Tab_Width + 1); -- else -- col += 2; -- break; -- } -- else if (ch & 0x80) -- col += 3; -- else -- col += 2; -- } -- return b; --} -- - /* does not move point */ - static unsigned char *end_of_line1(void) - { -@@ -164,6 +120,9 @@ - - if (*pos != '\n') - { -+ /* This block is UTF-8 safe, because it only scans the buffer -+ for a new-line, and doesn't count characters. */ -+ - n = pmax - pos; - n2 = n % 8; - pmax = pos + (n - 8); -@@ -215,7 +174,7 @@ - ncols = SLtt_Screen_Cols-1; - while (1) - { -- unsigned char *next_b = forward_columns (b, e, ncols); -+ unsigned char *next_b = most_forward_columns (b, e, ncols, 1); - if ((next_b == e) || (next_b == b)) - break; - -@@ -237,11 +196,12 @@ - return e; - - if (b == NULL) b = most_beg_of_line (); -- b = forward_columns (b, e, SLtt_Screen_Cols-1); -+ b = most_forward_columns (b, e, SLtt_Screen_Cols-1, 1); - - /* Do not wrap the line if the last character falls on the last column - * of the display. - */ -+ /* FIXME potential bug if dealing with multi-byte char. */ - if ((b + 1 <= e) - && (b + 1 < Most_Eob) - && (b[1] == '\n')) -@@ -250,10 +210,10 @@ - return b; - } - --int most_forward_line(int save) -+long long most_forward_line(long long save) - { -- int m; -- register int n = save; -+ long long m; -+ register long long n = save; - unsigned char *p; - unsigned char *pmax; - -@@ -346,14 +306,14 @@ - } - - /* Count lines in the region. A half line counts as 1 */ --int most_count_lines(unsigned char *beg, unsigned char *end) -+long long most_count_lines(unsigned char *beg, unsigned char *end) - { -- int save_line, n; -+ long long save_line, n; - unsigned char *save_beg, *save_eob; -- unsigned int save_pos; -+ unsigned long long save_pos; - int dn = 1000; - -- if (Most_B_Opt) return(1 + (int)(end - beg) / 16); -+ if (Most_B_Opt) return(1 + (long long)(end - beg) / 16); - - save_line = Most_C_Line; save_beg = Most_Beg; save_eob = Most_Eob; - save_pos = Most_C_Offset; -@@ -371,9 +331,9 @@ - return(n); - } - --void most_goto_line(int line) -+void most_goto_line(long long line) - { -- int dif_c, dif_b,dif_t; -+ long long dif_c, dif_b,dif_t; - - if (line < 1) line = 1; - most_read_to_line(line); -@@ -420,7 +380,7 @@ - } - - /* return line the point is on without the final '\n's */ --int most_extract_line(unsigned char **beg, unsigned char **end) -+long long most_extract_line(unsigned char **beg, unsigned char **end) - { - *beg = most_beg_of_line(); - *end = end_of_line (*beg); -@@ -428,12 +388,12 @@ - return 0; - } - --int most_what_line(unsigned char *pos) -+long long most_what_line(unsigned char *pos) - { -- unsigned int save_pos; -- int save_line, dir; -- register int dif_c, dif_b,dif_t; -- int ret; -+ unsigned long long save_pos; -+ long long save_line, dir; -+ register long long dif_c, dif_b,dif_t; -+ long long ret; - - if (Most_B_Opt) - { -@@ -517,7 +477,7 @@ - } - - /* given a buffer position, find the line and column */ --void most_find_row_column(unsigned char *pos, int *r, int *c) -+void most_find_row_column(unsigned char *pos, long long *r, long long *c) - { - unsigned char *beg; - unsigned int save_offset; -@@ -545,7 +505,10 @@ - /* Now we have found the line it is on so.... */ - beg = most_beg_of_line(); - *c = 1; -- while (beg++ < pos) *c = *c + 1; -+ if (Most_UTF8_Mode) -+ while ((beg = SLutf8_skip_char(beg, pos)) < pos) *c = *c + 1; -+ else -+ while (beg++ < pos) *c = *c + 1; - Most_C_Line = save_line; - Most_C_Offset = save_offset; - } ---- most-4.10.2.orig/src/buffer.h -+++ most-4.10.2/src/buffer.h -@@ -23,12 +23,12 @@ - - extern Most_Buffer_Type *Most_Buf; - extern unsigned char *Most_Beg, *Most_Eob; --extern int Most_Num_Lines; -+extern long long Most_Num_Lines; - - /* Offset of current position from beginning of buffer */ --extern unsigned int Most_C_Offset; -+extern unsigned long long Most_C_Offset; - --extern int Most_C_Line; -+extern long long Most_C_Line; - /* - * Current line number. If at the beginning of the buffer, it is 1. If - * we are at the last point of the buffer it is the number of lines. -@@ -37,26 +37,26 @@ - /* This routine does not move the point */ - extern unsigned char *most_beg_of_line(void); - --extern int most_forward_line(int); -+extern long long most_forward_line(long long); - /* This routine moves the point forward n lines. n can be negative. - It returns the number moved. */ - --extern void most_goto_line(int); -+extern void most_goto_line(long long); - /* Move the point somewhere on the nth line of the buffer returning - C_POS */ - --extern int most_what_line(unsigned char *); -+extern long long most_what_line(unsigned char *); - /* return the line number of position 'argument'. Does not move point */ - - /* count the number of lines in the region delimited by beg and end. - Counts lines from beg up to end but does not count end. - Does not move point. */ --extern int most_count_lines(unsigned char *, unsigned char *); --extern int most_extract_line(unsigned char **, unsigned char **); -+extern long long most_count_lines(unsigned char *, unsigned char *); -+extern long long most_extract_line(unsigned char **, unsigned char **); - - extern Most_Buffer_Type *most_switch_to_buffer(Most_Buffer_Type *); - extern Most_Buffer_Type *most_create_buffer(char *); --extern void most_find_row_column(unsigned char *, int *, int *); -+extern void most_find_row_column(unsigned char *, long long *, long long *); - - #endif - ---- most-4.10.2.orig/src/keym.c -+++ most-4.10.2/src/keym.c -@@ -228,7 +228,7 @@ - static void goto_percent_cmd(void) - { - unsigned char *pos; -- int n; -+ long long n; - - if (Most_Digit_Arg != (int *) NULL) n = *Most_Digit_Arg; - else -@@ -282,7 +282,7 @@ - - static void find_next_cmd(void) - { -- int col, line, n = 1; -+ long long col, line, n = 1; - unsigned long ofs; - - if (Most_Digit_Arg != NULL) n = *Most_Digit_Arg; -@@ -309,7 +309,7 @@ - #else - "Search: ", - #endif -- Most_Search_Str, -+ (char *) Most_Search_Str, - MOST_SEARCH_BUF_LEN - ) == -1) return; - Most_Curs_Offset = Most_C_Offset; -@@ -325,7 +325,7 @@ - #else - "Search Backwards: ", - #endif -- Most_Search_Str, -+ (char *) Most_Search_Str, - MOST_SEARCH_BUF_LEN) == -1) return; - find_next_cmd(); - } ---- most-4.10.2.orig/src/line.c -+++ most-4.10.2/src/line.c -@@ -87,8 +87,7 @@ - while (b < end) - { - ch = *b++; -- if (((ch >= ' ') && (ch < 0x7F)) -- || (ch >= SLsmg_Display_Eight_Bit)) -+ if (most_isprint(ch)) - { - *s++ = ch; - continue; -@@ -108,103 +107,156 @@ - - if (end > Most_Eob) end = Most_Eob; - -- sprintf (buf, "0x%08X: ", Most_C_Offset); -+ sprintf (buf, "0x%08llX: ", Most_C_Offset); - ascii_format_line (beg, end, buf + 12); - SLsmg_write_string (buf); - SLsmg_erase_eol (); - } - --static int most_analyse_line(unsigned char *begg, unsigned char *endd, -- char *out, char *attributes) -+int most_isprint(unsigned char ch) - { -- unsigned char *beg, *end; -- unsigned int min_col, max_col; -- unsigned int i, i_max; -+ /* Can this be directly replaced with isprint? */ -+ return (ch >= ' ' && ch < 0x7F) || ch >= SLsmg_Display_Eight_Bit; -+} -+ -+static void most_analyse_line(unsigned char *beg, unsigned char *end, -+ unsigned char *out, char *attributes) -+{ -+ unsigned char *pout; -+ char* pattributes; -+ -+ /* Holds the number of columns for the current character counting -+ * from the left margin (in contrast to the leftmost visible -+ * column). -+ */ -+ unsigned int col; -+ -+ /* Holds the number of the column up to which to apply the -+ * current/following formatting. Only meaningful when format_rlim > i. -+ */ -+ unsigned int format_rlim; - -- beg = begg; -- end = endd; -- i = i_max = 0; -- min_col = Most_Column - 1; -- max_col = min_col + SLtt_Screen_Cols; -+ beg = most_forward_columns(beg, end, Most_Column - 1, 0); -+ pout = out; -+ pattributes = attributes; -+ col = format_rlim = 0; - - while (beg < end) - { - char attr = ' '; -- unsigned char ch; -+ unsigned char ch = *beg++; - -- if ('\n' == (ch = *beg++)) -+ if ('\n' == ch) - break; - - if ((ch == '\r') && (Most_V_Opt == 0)) - { -- if (i > i_max) i_max = i; -- i = 0; -+ if (col > format_rlim) format_rlim = col; -+ col = 0; - continue; - } - - if ((ch == '\b') && (Most_V_Opt == 0)) - { -- if (i > i_max) i_max = i; -- if (i > 0) -- i--; -+ if (col > format_rlim) format_rlim = col; -+ if (col > 0) -+ { -+ if (Most_UTF8_Mode) -+ { -+ SLwchar_Type wc; -+ pout = SLutf8_bskip_char(out, pout); -+ if (SLutf8_decode(pout, pout + SLUTF8_MAX_MBLEN, &wc, NULL)) -+ { -+ unsigned int char_len = SLwchar_wcwidth(wc); -+ if (char_len > 1) -+ col -= char_len - 1; -+ } -+ } -+ else -+ pout--; -+ pattributes--; -+ col--; -+ } - continue; - } - -- if (i < i_max) /* overstrike */ -+ if (col < format_rlim) /* overstrike */ - { - attr = 'b'; -- if ((i >= min_col) && (i < max_col)) -+ if (col < SLtt_Screen_Cols) - { -- if (out[i-min_col] == '_') -+ if (*pout == '_') - attr = 'u'; - else if (ch == '_') - { - attr = 'u'; -- ch = out[i - min_col]; -+ ch = *pout; - } - } - if (ch == ' ') - { -- i++; -+ col++; - continue; - } - /* drop */ - } -- -- if ((ch >= ' ') && (ch < 0x7F)) -- { -- if ((i >= min_col) && (i < max_col)) -+ -+ if (Most_UTF8_Mode) { -+ unsigned char *prev = --beg; -+ SLwchar_Type wc; -+ unsigned int len; -+ -+ if (SLutf8_decode(beg, end, &wc, NULL)) -+ { -+ unsigned int char_len = SLwchar_wcwidth(wc); -+ if (char_len > 1) -+ col += char_len - 1; -+ } -+ -+ beg = SLutf8_skip_char(beg, end); -+ len = beg - prev; -+ -+ if (len > 1) { -+ /* Non-ASCII char, display it. */ -+ if (col < SLtt_Screen_Cols) - { -- out[i-min_col] = ch; -- attributes[i-min_col] = attr; -+ memcpy(pout, prev, len); -+ pout += len; -+ *pattributes++ = attr; - } -- i++; -+ col++; - continue; -- } -- -- if (ch >= SLsmg_Display_Eight_Bit) -+ } -+ } -+ -+ if (most_isprint(ch)) - { -- if ((i >= min_col) && (i < max_col)) -+ if (col < SLtt_Screen_Cols) - { -- out[i-min_col] = ch; -- attributes[i-min_col] = attr; -+ *pout++ = ch; -+ *pattributes++ = attr; - } -- i++; -+ col++; - continue; - } - - if ((ch == '\t') && (Most_T_Opt == 0) && (Most_Tab_Width)) - { -- -- int nspaces = Most_Tab_Width * (i/Most_Tab_Width + 1) - i; -+ /* Tab expansion must take into consideration the -+ * leftmost visible column. However, variable col holds the -+ * number of columns from the left margin and must be -+ * corrected. -+ */ -+ int vis_col = col + Most_Column - 1; -+ int nspaces = Most_Tab_Width - (vis_col % Most_Tab_Width); - while (nspaces > 0) - { -- if ((i >= min_col) && (i < max_col)) -+ if (col < SLtt_Screen_Cols) - { -- out[i-min_col] = ' '; -- attributes[i-min_col] = attr; -+ *pout++ = ' '; -+ *pattributes++ = attr; - } -- i++; -+ col++; - nspaces--; - } - continue; -@@ -212,36 +264,36 @@ - - if (ch & 0x80) - { -- if ((i >= min_col) && (i < max_col)) -+ if (col < SLtt_Screen_Cols) - { -- out[i-min_col] = '~'; -- attributes[i-min_col] = attr; -+ *pout++ = '~'; -+ *pattributes++ = attr; - } -- i++; -+ col++; - ch &= 0x7F; - /* drop */ - } - -- if ((i >= min_col) && (i < max_col)) -+ if (col < SLtt_Screen_Cols) - { -- out[i-min_col] = '^'; -- attributes[i-min_col] = attr; -+ *pout++ = '^'; -+ *pattributes++ = attr; - } -- i++; -+ col++; - - if (ch == 0x7F) ch = '?'; - else ch += '@'; - -- if ((i >= min_col) && (i < max_col)) -+ if (col < SLtt_Screen_Cols) - { -- out[i-min_col] = ch; -- attributes[i-min_col] = attr; -+ *pout++ = ch; -+ *pattributes++ = attr; - } -- i++; -+ col++; - } - -- if (i < i_max) -- i = i_max; -+ if (col < format_rlim) -+ col = format_rlim; - - /* Now add "..." if selective display. To do that, the next line needs to - * be dealt with to determine whether or not it will be hidden. -@@ -249,7 +301,7 @@ - if (Most_Selective_Display - && (Most_W_Opt == 0) - && (beg < Most_Eob) -- && ((i >= min_col) && (i < max_col))) -+ && (col < SLtt_Screen_Cols)) - { - if (*beg == '\n') beg++; - -@@ -260,37 +312,29 @@ - if ((beg >= Most_Eob) || (*beg == '\n') - || (most_apparant_distance(beg) >= Most_Selective_Display)) - { -- i_max = i + 3; -- while (i < i_max) -+ /* Add an ellipsis, if they fit on the screen. */ -+ int rlimit = col + 3; -+ while (col < rlimit) - { -- if (i < max_col) -+ if (col < SLtt_Screen_Cols) - { -- out[i] = '.'; -- attributes[i] = ' '; -+ *pout++ = '.'; -+ *pattributes++ = ' '; - } -- i++; -+ col++; - } - } - } -- -- i_max = i; - -- if (i < min_col) -- i = min_col; -- else if (i >= max_col) -- i = max_col; -- -- i -= min_col; -- -- out[i] = 0; -- attributes[i] = 0; -- return i_max; -+ *pout = 0; -+ *pattributes = 0; - } - --static void output_with_attr (unsigned char *out, unsigned char *attr) -+static void output_with_attr (unsigned char *out, char *attr) - { -- unsigned char at, ch, lat; -+ unsigned char at, lat; - unsigned char *p = out; -+ unsigned char *pmax = p + strlen((char *) p); - - if (Most_V_Opt) - { -@@ -299,7 +343,7 @@ - } - - lat = ' '; -- while ((ch = *p) != 0) -+ while (p < pmax) - { - if (lat != *attr) - { -@@ -321,7 +365,7 @@ - else most_tt_normal_video (); - lat = at; - } -- p++; -+ p = SLutf8_skip_char(p, pmax); - attr++; - } - -@@ -340,10 +384,11 @@ - void most_display_line (void) +@@ -520,13 +530,13 @@ + .PP + .B setkey function-name key-sequence + .PP +-The ++The + .I setkey + command requires two arguments. The + .I function-name + argument specifies the function that is to be executed as a response + to the keys specified by the +-.I key-sequence ++.I key-sequence + argument are pressed. For example, + .PP + setkey "up" "^P" +@@ -544,9 +554,9 @@ + .PP + unsetkey "^F" + .PP +-Colors may be defined through the use of the ++Colors may be defined through the use of the + .I color +-keyword in the the configuration file using the syntax: ++keyword in the configuration file using the syntax: + .PP + .B color OBJECT-NAME FOREGROUND-COLOR BACKGROUND-COLOR + .PP +@@ -589,19 +599,19 @@ + for valuable comments and criticisms. + I would especially like to thank those individuals + who have contributed code to +-.IR most. ++.IR most . + .PP + Mats Akerberg, Henk D. Davids, Rex O. Livingston, and Mark + Pizzolato contributed to the early VMS versions of +-.IR most. ++.IR most . + In particular, Mark worked on it to get it ready for DECUS. + .PP + Foteos Macrides <MACRIDES@SCI.WFEB.EDU> adapted + .IR most +-for use in ++for use in + .IR cswing + and +-.IR gopher. ++.IR gopher . + A few features of the present version of + .IR most + was inspired from his work. +@@ -613,7 +623,7 @@ + automatic detection of zipped files. + .PP + I would also like to thank Shinichi Hama for his valuable criticisms of +-.IR most. ++.IR most . + .PP + Javier Kohen was instrumental in the support for UTF-8. + .PP +--- most-5.0.0a.orig/src/file.h ++++ most-5.0.0a/src/file.h +@@ -22,6 +22,7 @@ + #define MOST_MAX_FILES 4096 + #define MOST_GUNZIP_POPEN_FORMAT "gzip -dc \"%s\"" + #define MOST_BZIP2_POPEN_FORMAT "bzip2 -dc \"%s\"" ++#define MOST_LZMA_POPEN_FORMAT "lzma -dc '%s'" + + extern void most_reread_file (void); + extern void most_read_to_line (int); +--- most-5.0.0a.orig/src/file.c ++++ most-5.0.0a/src/file.c +@@ -77,7 +77,7 @@ + static int open_compressed_file(char *file, int mode, int *size) { - unsigned char *beg, *end; -- unsigned int len; -+#if 0 - unsigned char dollar; -+#endif - static unsigned char *line; -- static unsigned char *attr; -+ static char *attr; - static unsigned int line_len; - - if (Most_B_Opt) -@@ -357,37 +402,43 @@ - if (line_len < (unsigned int)(SLtt_Screen_Cols + 1) * SLUTF8_MAX_MBLEN) - { - SLfree ((char *) line); -- SLfree ((char *) attr); -+ SLfree (attr); - - line_len = (SLtt_Screen_Cols + 1) * SLUTF8_MAX_MBLEN; - - if ((NULL == (line = (unsigned char *) SLmalloc (line_len))) -- || (NULL == (attr = (unsigned char *) SLmalloc (line_len)))) -+ || (NULL == (attr = SLmalloc (line_len)))) - most_exit_error ("Out of memory"); - } + int fd; +- char buf[4], cmdbuf[2*MAX_PATHLEN]; ++ char buf[6], cmdbuf[2*MAX_PATHLEN]; + struct stat st; - (void) most_extract_line (&beg, &end); + # ifdef O_BINARY +@@ -97,7 +97,7 @@ -- len = most_analyse_line(beg, end, (char *) line, (char *) attr); -+ most_analyse_line(beg, end, line, attr); + if (fd < 0) return fd; -+#if 0 -+ /* Currently the dollar sign is not always being written at the -+ rightmost column when displaying multi-byte characters. */ - dollar = 0; - if (Most_W_Opt) - { -- if ((end < Most_Eob) -- && (*end != '\n')) -- dollar = '\\'; -+ if ((end < Most_Eob) -+ && (*end != '\n')) -+ dollar = '\\'; - } - else if (len > (unsigned int) SLtt_Screen_Cols + (Most_Column - 1)) - dollar = '$'; -- -+ - if (dollar) +- if (4 == read(fd, buf, 4)) ++ if (6 == read(fd, buf, 6)) { -- line[SLtt_Screen_Cols-1] = dollar; -- attr[SLtt_Screen_Cols-1] = ' '; -- line[SLtt_Screen_Cols] = 0; -- attr[SLtt_Screen_Cols] = 0; -+ unsigned char *pline = -+ most_forward_columns(line, line + line_len, SLtt_Screen_Cols-1, 1); -+ *pline = dollar; -+ *(pline+1) = 0; -+ attr[SLtt_Screen_Cols-1] = ' '; -+ attr[SLtt_Screen_Cols] = 0; - } -- -+#endif -+ - output_with_attr (line, attr); - SLsmg_erase_eol (); - } -@@ -398,21 +449,34 @@ - int most_apparant_distance (unsigned char *pos) - { - int i; -- unsigned char *save_pos, ch; -+ unsigned char *save_pos, *beg, ch; - unsigned int save_offset; + char *cmd = NULL; - save_offset = Most_C_Offset; - save_pos = pos; - Most_C_Offset = (unsigned int) (pos - Most_Beg); -- pos = most_beg_of_line(); -+ beg = pos = most_beg_of_line(); - Most_C_Offset = save_offset; - - i = 0; - while (pos < save_pos) - { -- ch = *pos++; -- if (((ch >= ' ') && (ch < 0x7F)) -- || (ch >= SLsmg_Display_Eight_Bit)) -+ ch = *pos; -+ -+ if (Most_UTF8_Mode) { -+ unsigned char *prev = pos; -+ int len; -+ pos = SLutf8_skip_char(pos, save_pos); -+ len = pos - prev; -+ if (len > 1) { -+ i++; -+ continue; -+ } -+ } else { -+ pos++; -+ } -+ -+ if (most_isprint(ch)) +@@ -113,6 +113,13 @@ { - i++; - continue; -@@ -420,7 +484,13 @@ - - if (!Most_V_Opt && (ch == '\b')) - { -- if (i > 0) i--; -+ if (i > 0) -+ { -+ if (Most_UTF8_Mode) -+ i -= pos - SLutf8_bskip_char(beg, pos); -+ else -+ i--; -+ } + cmd = MOST_BZIP2_POPEN_FORMAT; } - else if (!Most_V_Opt && (ch == '\015')) /* ^M */ - { -@@ -439,3 +509,95 @@ - } - return i; - } -+ -+/* -+ * Returns a pointer to the num_cols'th character after the one -+ * pointed at b. Invisible character runs are not counted toward this -+ * limit, i.e. strings that represent attributes, such as "_\b" for -+ * underlines. -+ * -+ * If multi_column is non-zero, characters spanning more than one -+ * column will add their extra width to the column count. -+ * -+ * If there the end of the buffer is reached, as delimited by argument -+ * e, then e is returned. -+ */ -+unsigned char *most_forward_columns (unsigned char *beg, unsigned char *e, unsigned int num_cols, int multi_column) -+{ -+ unsigned int col = 0; -+ unsigned int prev_width = 1; -+ unsigned char* b = beg; -+ -+ while ((b < e) -+ && ((col < num_cols) -+ || (*b == '\b') -+ || (*b == '\r'))) -+ { -+ unsigned char ch = *b; -+ -+ if (Most_UTF8_Mode) ++ else if ((buf[0] == (char) 0xff) ++ && (buf[1] == 'L') && (buf[2] == 'Z') ++ && (buf[3] == 'M') && (buf[4] == 'A') ++ && (buf[5] == (char) 0x00)) + { -+ unsigned char *prev = b; -+ int len; -+ b = SLutf8_skip_char(b, e); -+ len = b - prev; -+ if (len > 1) -+ { -+ if (multi_column) -+ { -+ SLwchar_Type wc; -+ if (SLutf8_decode(prev, e, &wc, NULL)) -+ col += prev_width = SLwchar_wcwidth(wc); -+ } -+ else -+ col++; -+ continue; -+ } ++ cmd = MOST_LZMA_POPEN_FORMAT; + } -+ else -+ b++; -+ -+ if (most_isprint(ch)) -+ { -+ col++; -+ prev_width = 1; -+ continue; -+ } -+ -+ if ((ch == '\b') || (ch == '\t') || (ch == '\r')) -+ switch (ch) -+ { -+ case '\b': -+ if (Most_V_Opt == 0) -+ { -+ if (col > 0) col -= prev_width; -+ } -+ else col += 2; -+ break; -+ -+ case '\r': -+ if (Most_V_Opt == 0) -+ col = 0; -+ else -+ col += 2; -+ break; + + if (cmd != NULL) + { +--- most-5.0.0a.orig/autoconf/config.guess ++++ most-5.0.0a/autoconf/config.guess +@@ -1,9 +1,10 @@ + #! /bin/sh + # Attempt to guess a canonical system name. + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +-# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. ++# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 ++# Free Software Foundation, Inc. + +-timestamp='2005-04-22' ++timestamp='2009-12-30' + + # This file is free software; you can redistribute it and/or modify it + # under the terms of the GNU General Public License as published by +@@ -17,23 +18,25 @@ + # + # You should have received a copy of the GNU General Public License + # along with this program; if not, write to the Free Software +-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA ++# 02110-1301, USA. + # + # As a special exception to the GNU General Public License, if you + # distribute this file as part of a program that contains a + # configuration script generated by Autoconf, you may include it under + # the same distribution terms that you use for the rest of that program. + +-# Originally written by Per Bothner <per@bothner.com>. +-# Please send patches to <config-patches@gnu.org>. Submit a context +-# diff and a properly formatted ChangeLog entry. + -+ case '\t': -+ if (Most_T_Opt == 0) -+ col = Most_Tab_Width * (col/Most_Tab_Width + 1); -+ else -+ col += 2; /* ^I is two chars long. */ -+ break; -+ } -+ else if (ch & 0x80) -+ col += 3; -+ else -+ col += 2; -+ } ++# Originally written by Per Bothner. Please send patches (context ++# diff format) to <config-patches@gnu.org> and include a ChangeLog ++# entry. + # + # This script attempts to guess a canonical system name similar to + # config.sub. If it succeeds, it prints the system name on stdout, and + # exits with 0. Otherwise, it exits with 1. + # +-# The plan is that this can be called by configure scripts if you +-# don't specify an explicit build system type. ++# You can get the latest version of this script from: ++# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD + + me=`echo "$0" | sed -e 's,.*/,,'` + +@@ -53,8 +56,9 @@ + GNU config.guess ($timestamp) + + Originally written by Per Bothner. +-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +-Free Software Foundation, Inc. ++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, ++2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free ++Software Foundation, Inc. + + This is free software; see the source for copying conditions. There is NO + warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." +@@ -66,11 +70,11 @@ + while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) +- echo "$timestamp" ; exit 0 ;; ++ echo "$timestamp" ; exit ;; + --version | -v ) +- echo "$version" ; exit 0 ;; ++ echo "$version" ; exit ;; + --help | --h* | -h ) +- echo "$usage"; exit 0 ;; ++ echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. +@@ -104,7 +108,7 @@ + trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; + trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; + : ${TMPDIR=/tmp} ; +- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || ++ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; +@@ -123,7 +127,7 @@ + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +-esac ;' ++esac ; set_cc_for_build= ;' + + # This is needed to find uname on a Pyramid OSx when run in the BSD universe. + # (ghazi@noc.rutgers.edu 1994-08-24) +@@ -158,6 +162,7 @@ + arm*) machine=arm-unknown ;; + sh3el) machine=shl-unknown ;; + sh3eb) machine=sh-unknown ;; ++ sh5el) machine=sh5le-unknown ;; + *) machine=${UNAME_MACHINE_ARCH}-unknown ;; + esac + # The Operating System including object format, if it has switched +@@ -166,7 +171,7 @@ + arm*|i386|m68k|ns32k|sh3*|sparc|vax) + eval $set_cc_for_build + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ +- | grep __ELF__ >/dev/null ++ | grep -q __ELF__ + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? +@@ -196,55 +201,23 @@ + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" +- exit 0 ;; +- amd64:OpenBSD:*:*) +- echo x86_64-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- amiga:OpenBSD:*:*) +- echo m68k-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- cats:OpenBSD:*:*) +- echo arm-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- hp300:OpenBSD:*:*) +- echo m68k-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- luna88k:OpenBSD:*:*) +- echo m88k-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- mac68k:OpenBSD:*:*) +- echo m68k-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- macppc:OpenBSD:*:*) +- echo powerpc-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- mvme68k:OpenBSD:*:*) +- echo m68k-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- mvme88k:OpenBSD:*:*) +- echo m88k-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- mvmeppc:OpenBSD:*:*) +- echo powerpc-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- sgi:OpenBSD:*:*) +- echo mips64-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; +- sun3:OpenBSD:*:*) +- echo m68k-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:OpenBSD:*:*) +- echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} +- exit 0 ;; ++ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` ++ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} ++ exit ;; + *:ekkoBSD:*:*) + echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; ++ *:SolidBSD:*:*) ++ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} ++ exit ;; + macppc:MirBSD:*:*) +- echo powerppc-unknown-mirbsd${UNAME_RELEASE} +- exit 0 ;; ++ echo powerpc-unknown-mirbsd${UNAME_RELEASE} ++ exit ;; + *:MirBSD:*:*) + echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + alpha:OSF1:*:*) + case $UNAME_RELEASE in + *4.0) +@@ -297,40 +270,43 @@ + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` +- exit 0 ;; ++ exit ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix +- exit 0 ;; ++ exit ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 +- exit 0 ;; ++ exit ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 +- exit 0;; ++ exit ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos +- exit 0 ;; ++ exit ;; + *:[Mm]orph[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-morphos +- exit 0 ;; ++ exit ;; + *:OS/390:*:*) + echo i370-ibm-openedition +- exit 0 ;; ++ exit ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe +- exit 0 ;; ++ exit ;; + *:OS400:*:*) + echo powerpc-ibm-os400 +- exit 0 ;; ++ exit ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} +- exit 0;; ++ exit ;; ++ arm:riscos:*:*|arm:RISCOS:*:*) ++ echo arm-unknown-riscos ++ exit ;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp +- exit 0;; ++ exit ;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then +@@ -338,32 +314,51 @@ + else + echo pyramid-pyramid-bsd + fi +- exit 0 ;; ++ exit ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 +- exit 0 ;; ++ exit ;; + DRS?6000:unix:4.0:6*) + echo sparc-icl-nx6 +- exit 0 ;; ++ exit ;; + DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) + case `/usr/bin/uname -p` in +- sparc) echo sparc-icl-nx7 && exit 0 ;; ++ sparc) echo sparc-icl-nx7; exit ;; + esac ;; ++ s390x:SunOS:*:*) ++ echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ++ exit ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` +- exit 0 ;; ++ exit ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` +- exit 0 ;; +- i86pc:SunOS:5.*:*) +- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` +- exit 0 ;; ++ exit ;; ++ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) ++ echo i386-pc-auroraux${UNAME_RELEASE} ++ exit ;; ++ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) ++ eval $set_cc_for_build ++ SUN_ARCH="i386" ++ # If there is a compiler, see if it is configured for 64-bit objects. ++ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. ++ # This test works for both compilers. ++ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then ++ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ ++ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ ++ grep IS_64BIT_ARCH >/dev/null ++ then ++ SUN_ARCH="x86_64" ++ fi ++ fi ++ echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ++ exit ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` +- exit 0 ;; ++ exit ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) +@@ -372,10 +367,10 @@ + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` +- exit 0 ;; ++ exit ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 +@@ -387,10 +382,10 @@ + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac +- exit 0 ;; ++ exit ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor +@@ -401,40 +396,40 @@ + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + m68k:machten:*:*) + echo m68k-apple-machten${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 +- exit 0 ;; ++ exit ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c +@@ -458,32 +453,33 @@ + exit (-1); + } + EOF +- $CC_FOR_BUILD -o $dummy $dummy.c \ +- && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ +- && exit 0 ++ $CC_FOR_BUILD -o $dummy $dummy.c && ++ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && ++ SYSTEM_NAME=`$dummy $dummyarg` && ++ { echo "$SYSTEM_NAME"; exit; } + echo mips-mips-riscos${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + Motorola:PowerMAX_OS:*:*) + echo powerpc-motorola-powermax +- exit 0 ;; ++ exit ;; + Motorola:*:4.3:PL8-*) + echo powerpc-harris-powermax +- exit 0 ;; ++ exit ;; + Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) + echo powerpc-harris-powermax +- exit 0 ;; ++ exit ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix +- exit 0 ;; ++ exit ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 +- exit 0 ;; ++ exit ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 +- exit 0 ;; ++ exit ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 +- exit 0 ;; ++ exit ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` +@@ -499,29 +495,29 @@ + else + echo i586-dg-dgux${UNAME_RELEASE} + fi +- exit 0 ;; ++ exit ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 +- exit 0 ;; ++ exit ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 +- exit 0 ;; ++ exit ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 +- exit 0 ;; ++ exit ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd +- exit 0 ;; ++ exit ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` +- exit 0 ;; ++ exit ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. +- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id +- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' ++ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id ++ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i*86:AIX:*:*) + echo i386-ibm-aix +- exit 0 ;; ++ exit ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` +@@ -529,7 +525,7 @@ + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} +- exit 0 ;; ++ exit ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + eval $set_cc_for_build +@@ -544,15 +540,19 @@ + exit(0); + } + EOF +- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 +- echo rs6000-ibm-aix3.2.5 ++ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` ++ then ++ echo "$SYSTEM_NAME" ++ else ++ echo rs6000-ibm-aix3.2.5 ++ fi + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi +- exit 0 ;; +- *:AIX:*:[45]) ++ exit ;; ++ *:AIX:*:[456]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 +@@ -565,28 +565,28 @@ + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} +- exit 0 ;; ++ exit ;; + *:AIX:*:*) + echo rs6000-ibm-aix +- exit 0 ;; ++ exit ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 +- exit 0 ;; ++ exit ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to +- exit 0 ;; # report: romp-ibm BSD 4.3 ++ exit ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx +- exit 0 ;; ++ exit ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 +- exit 0 ;; ++ exit ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd +- exit 0 ;; ++ exit ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 +- exit 0 ;; ++ exit ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in +@@ -648,9 +648,19 @@ + esac + if [ ${HP_ARCH} = "hppa2.0w" ] + then +- # avoid double evaluation of $set_cc_for_build +- test -n "$CC_FOR_BUILD" || eval $set_cc_for_build +- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null ++ eval $set_cc_for_build + -+ /* Last character was too wide. Backstep it. */ -+ if (col > num_cols) -+ b = SLutf8_bskip_char(beg, b); ++ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating ++ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler ++ # generating 64-bit code. GNU and HP use different nomenclature: ++ # ++ # $ CC_FOR_BUILD=cc ./config.guess ++ # => hppa2.0w-hp-hpux11.23 ++ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess ++ # => hppa64-hp-hpux11.23 + -+ return b; -+} ---- most-4.10.2.orig/src/line.h -+++ most-4.10.2/src/line.h -@@ -7,5 +7,7 @@ - - extern void most_display_line(void); - extern int most_apparant_distance(unsigned char *); -+extern int most_isprint(unsigned char); -+extern unsigned char *most_forward_columns (unsigned char *, unsigned char *, unsigned int, int); - #endif - ---- most-4.10.2.orig/src/most.c -+++ most-4.10.2/src/most.c -@@ -125,7 +125,7 @@ - ch = *(++str); - if ( ch == '/') - { -- strcpy (Most_Search_Str,++str); -+ strcpy ((char *) Most_Search_Str,++str); - return; - } - -@@ -329,7 +329,8 @@ - - static void do_most (char *file, int start) - { -- int piped, row, col; -+ int piped; -+ long long row, col; - - most_get_cdir(Most_C_Dir); - -@@ -347,7 +348,7 @@ - Most_Curs_Offset = Most_C_Offset; - - if (*Most_Search_Str -- && ((row = most_search (Most_Beg + Most_C_Offset, 1, &col)) > 0)) -+ && ((row = most_search (Most_Beg + Most_C_Offset, 1LL, &col)) > 0)) - most_goto_line(row); - else - { -@@ -455,13 +456,7 @@ - - SLtt_get_terminfo(); - #if SLANG_VERSION >= 20000 --#if 0 -- Most_UTF8_Mode = SLutf8_enable (1); -- if (Most_UTF8_Mode) -- { -- fprintf (stderr, "UTF-8 Mode is in effect\n"); -- } --#endif -+ Most_UTF8_Mode = SLutf8_enable (-1); - #endif - SLtt_Ignore_Beep = 1; - if (No_Colors) ---- most-4.10.2.orig/src/most.h -+++ most-4.10.2/src/most.h -@@ -1,4 +1,5 @@ - #include "config.h" -+#define SLANG_REGEXP - extern int Most_S_Opt; - extern int Most_A_Opt; /* automatically choose -b if necessary */ - extern int Most_V_Opt; /* display control chars */ ---- most-4.10.2.orig/src/search.c -+++ most-4.10.2/src/search.c -@@ -20,6 +20,7 @@ - */ - #include "config.h" - -+#include <ctype.h> - #include <stdio.h> - #include <string.h> - #include <slang.h> -@@ -31,18 +32,18 @@ - #include "display.h" - #include "search.h" - --/* Note!!! The regular expression searches may not work. I have not -- * tested them. -- * FIXME!!! -- */ -- - int Most_Case_Sensitive = 0; --char Most_Search_Str[256]; -+unsigned char Most_Search_Str[256]; - int Most_Search_Dir = 1; - - #include "jdmacros.h" - --#define UPCASE(ch) ((!Most_Case_Sensitive && (ch <= 'z') && (ch >= 'a')) ? (ch - 32) : ch) -+#if SLANG_VERSION < 20000 -+# define NORM_CHAR(ch) ((!Most_Case_Sensitive) ? toupper(ch) : ch) -+# define UPCASE(ch) NORM_CHAR(ch) -+#else -+# define NORM_CHAR(ch) (ch) -+#endif - - #if defined(HAVE_V8_REGCOMP) || defined(SLANG_REGEXP) - -@@ -78,7 +79,7 @@ - * This function is called by the V8 regcomp to report - * errors in regular expressions. - */ --static void regerror(char *s) -+static void regerror(const char *s) - { - char string[256]; - -@@ -95,13 +96,17 @@ - * 0 error - * - */ --static int do_regcomp(unsigned char *key) -+static int do_regcomp(const unsigned char *key) - { - static int old_Most_Case_Sensitive; -- unsigned char UpCaseKey[sizeof(savepattern)]; - # ifndef HAVE_V8_REGCOMP - int posn; /* reg exp error at this offset */ - # endif -+# if SLANG_VERSION < 20000 -+ unsigned char UpCaseKey[sizeof(savepattern)]; -+# else -+ int re_flags = 0; -+# endif - - /* - * Only recompile search string if it has changed -@@ -124,6 +129,7 @@ - - old_Most_Case_Sensitive = Most_Case_Sensitive; - -+# if SLANG_VERSION < 20000 - if ( Most_Case_Sensitive == 0 ) - { - register unsigned char *p; /* ptr to UpCaseKey */ -@@ -141,6 +147,7 @@ - - *p = '\0'; - } -+# endif - - strcpy((char *)savepattern, (char *)key); - -@@ -162,7 +169,12 @@ - # else - if (Regexp != NULL) - SLregexp_free (Regexp); -- if (NULL == (Regexp = SLregexp_compile ((char *)key, Most_Case_Sensitive ? 0 : SLREGEXP_CASELESS))) -+ -+ if (!Most_Case_Sensitive) -+ re_flags |= SLREGEXP_CASELESS; -+ if (Most_UTF8_Mode) -+ re_flags |= SLREGEXP_UTF8; -+ if (NULL == (Regexp = SLregexp_compile ((char *)key, re_flags))) - posn = -1; - else - posn = 0; -@@ -187,7 +199,7 @@ - * Call the appropriate regular expression execute function - */ - --static unsigned char *do_regexec(unsigned char *string) -+static unsigned char *do_regexec(const unsigned char *string, size_t length) - { - # ifdef HAVE_V8_REGCOMP - if ( regexec(regpattern, (char *)string) ) -@@ -196,40 +208,46 @@ - return( NULL ); - # else - # if SLANG_VERSION < 20000 -- return ( SLang_regexp_match(string, strlen((char *)string), ®data) ); -+ return ( SLang_regexp_match(string, length, ®data) ); - # else -- return (unsigned char *)SLregexp_match (Regexp, (char *)string, strlen ((char *)string)); -+ return (unsigned char *)SLregexp_match (Regexp, (char *)string, length); - # endif - # endif /* HAVE_V8_REGCOMP */ - } - - /* -- * Make a upper case copy of a string. Also changes any "c\b" character -- * strings into just "" so that highlighted and underlined characters -- * can be searched. -+ * Changes any "c\b" character strings into just "" so that -+ * highlighted and underlined characters can be searched. Stores in -+ * length the new size of the string, after the aforementioned -+ * changes. -+ * -+ * If using a version of S-Lang that does not support case -+ * insensitive regular expressions, this function upper cases the -+ * input string, as well. - * - * Reuses malloced memory, so a copy cannot be retained between calls. - */ - --static unsigned char *StrUpCaseCopy(unsigned char *input) -+static const unsigned char *StrNormCopy(const unsigned char *input, -+ size_t *length) - { - static unsigned char *uppercase; /* ptr to malloced area */ - static size_t bufsize; /* size of malloced area */ -- unsigned char *src; /* ptr to source */ -+ const unsigned char *src; /* ptr to source */ -+ const unsigned char *end; /* ptr to end of source */ - register unsigned char *dest; /* ptr to destination */ - register int idx; /* index into uppercase[] */ -- register unsigned char c; /* source character */ -- size_t length; /* size of string to copy */ - - src = input; -- length = strlen((char *)src) + 1; /* len of line plus terminator */ -+ end = input + *length; - -- if ( length > bufsize ) -+ if ( *length >= bufsize ) - { - if ( uppercase != (unsigned char *)NULL ) - free(uppercase); - -- bufsize = (length > 256 ) ? length : 256; /* 256 byte default */ -+ /* len of line plus terminator */ -+ bufsize = (*length >= 256 ) ? *length + 1 : 256; /* 256 byte default */ - - uppercase = (unsigned char *)malloc(bufsize); - if ( uppercase == (unsigned char *)NULL ) -@@ -242,8 +260,9 @@ - - dest = uppercase; - -- for ( idx = 0 ; (c = *src) != '\0' ; src++ ) -+ for ( idx = 0 ; src < end ; src++ ) - { -+ unsigned char c = *src; - if ( c == '\b' ) /* backspace */ - { - if ( idx-- > 0 ) -@@ -252,54 +271,79 @@ ++ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | ++ grep -q __LP64__ + then + HP_ARCH="hppa2.0w" + else +@@ -658,11 +668,11 @@ + fi + fi + echo ${HP_ARCH}-hp-hpux${HPUX_REV} +- exit 0 ;; ++ exit ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} +- exit 0 ;; ++ exit ;; + 3050*:HI-UX:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c +@@ -690,219 +700,248 @@ + exit (0); + } + EOF +- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 ++ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && ++ { echo "$SYSTEM_NAME"; exit; } + echo unknown-hitachi-hiuxwe2 +- exit 0 ;; ++ exit ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd +- exit 0 ;; ++ exit ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd +- exit 0 ;; ++ exit ;; + *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix +- exit 0 ;; ++ exit ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf +- exit 0 ;; ++ exit ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf +- exit 0 ;; ++ exit ;; + i*86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk else - { - if ( idx++ >= 0 ) -- *dest++ = UPCASE(c); -+ *dest++ = NORM_CHAR(c); - } - } - - *dest = '\0'; /* add termination */ - -+ *length = dest - uppercase; - return(uppercase); - } - - /* -- * Given an offset into a copy made by StrUpCaseCopy() and a pointer to the -+ * Given an offset into a copy made by StrNormCopy() and a pointer to the - * original string, returns a pointer into the original string corresponding - * to this offset. - */ - --static unsigned char *GetOrigPtr(unsigned char *original, int offset) -+static const unsigned char * -+GetOrigPtr(const unsigned char *original, int offset, -+ const unsigned char *end) - { -- register unsigned char *p = original; -+ const unsigned char *p = original; - register int j = offset; - - /* - * Step through, adjusting offset according to backspaces found - */ -- while ( *p != '\0' ) -+ while ( p < end ) - { -+ const unsigned char *next; -+ if (Most_UTF8_Mode) -+ next = SLutf8_skip_char((unsigned char*) p, (unsigned char*) end); + echo ${UNAME_MACHINE}-unknown-osf1 + fi +- exit 0 ;; ++ exit ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites +- exit 0 ;; ++ exit ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd +- exit 0 ;; ++ exit ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi +- exit 0 ;; ++ exit ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd +- exit 0 ;; ++ exit ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd +- exit 0 ;; ++ exit ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd +- exit 0 ;; ++ exit ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' +- exit 0 ;; ++ exit ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ + -e 's/\.[^.]*$/.X/' +- exit 0 ;; ++ exit ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' +- exit 0 ;; ++ exit ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' +- exit 0 ;; ++ exit ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' +- exit 0 ;; ++ exit ;; + *:UNICOS/mp:*:*) + echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' +- exit 0 ;; ++ exit ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" +- exit 0 ;; ++ exit ;; + 5000:UNIX_System_V:4.*:*) + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" +- exit 0 ;; ++ exit ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:FreeBSD:*:*) +- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` +- exit 0 ;; ++ case ${UNAME_MACHINE} in ++ pc98) ++ echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; ++ amd64) ++ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; ++ *) ++ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; ++ esac ++ exit ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin +- exit 0 ;; +- i*:MINGW*:*) ++ exit ;; ++ *:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 +- exit 0 ;; ++ exit ;; ++ i*:windows32*:*) ++ # uname -m includes "-pc" on this system. ++ echo ${UNAME_MACHINE}-mingw32 ++ exit ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 +- exit 0 ;; +- x86:Interix*:[34]*) +- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' +- exit 0 ;; ++ exit ;; ++ *:Interix*:*) ++ case ${UNAME_MACHINE} in ++ x86) ++ echo i586-pc-interix${UNAME_RELEASE} ++ exit ;; ++ authenticamd | genuineintel | EM64T) ++ echo x86_64-unknown-interix${UNAME_RELEASE} ++ exit ;; ++ IA64) ++ echo ia64-unknown-interix${UNAME_RELEASE} ++ exit ;; ++ esac ;; + [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) + echo i${UNAME_MACHINE}-pc-mks +- exit 0 ;; ++ exit ;; ++ 8664:Windows_NT:*) ++ echo x86_64-pc-mks ++ exit ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i586-pc-interix +- exit 0 ;; ++ exit ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin +- exit 0 ;; +- amd64:CYGWIN*:*:*) ++ exit ;; ++ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin +- exit 0 ;; ++ exit ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin +- exit 0 ;; ++ exit ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` +- exit 0 ;; ++ exit ;; + *:GNU:*:*) + # the GNU system + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` +- exit 0 ;; ++ exit ;; + *:GNU/*:*:*) + # other systems with GNU libc and userland + echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu +- exit 0 ;; ++ exit ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix +- exit 0 ;; ++ exit ;; ++ alpha:Linux:*:*) ++ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in ++ EV5) UNAME_MACHINE=alphaev5 ;; ++ EV56) UNAME_MACHINE=alphaev56 ;; ++ PCA56) UNAME_MACHINE=alphapca56 ;; ++ PCA57) UNAME_MACHINE=alphapca56 ;; ++ EV6) UNAME_MACHINE=alphaev6 ;; ++ EV67) UNAME_MACHINE=alphaev67 ;; ++ EV68*) UNAME_MACHINE=alphaev68 ;; ++ esac ++ objdump --private-headers /bin/sh | grep -q ld.so.1 ++ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi ++ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ++ exit ;; + arm*:Linux:*:*) ++ eval $set_cc_for_build ++ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ ++ | grep -q __ARM_EABI__ ++ then ++ echo ${UNAME_MACHINE}-unknown-linux-gnu + else -+ next = p + 1; -+ size_t length_last = next - p; -+ - if ( *p == '\b' ) -- j++; -+ j += length_last; ++ echo ${UNAME_MACHINE}-unknown-linux-gnueabi ++ fi ++ exit ;; ++ avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +- exit 0 ;; ++ exit ;; + cris:Linux:*:*) + echo cris-axis-linux-gnu +- exit 0 ;; ++ exit ;; + crisv32:Linux:*:*) + echo crisv32-axis-linux-gnu +- exit 0 ;; ++ exit ;; + frv:Linux:*:*) + echo frv-unknown-linux-gnu +- exit 0 ;; ++ exit ;; ++ i*86:Linux:*:*) ++ LIBC=gnu ++ eval $set_cc_for_build ++ sed 's/^ //' << EOF >$dummy.c ++ #ifdef __dietlibc__ ++ LIBC=dietlibc ++ #endif ++EOF ++ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` ++ echo "${UNAME_MACHINE}-pc-linux-${LIBC}" ++ exit ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +- exit 0 ;; ++ exit ;; + m32r*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +- exit 0 ;; ++ exit ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +- exit 0 ;; +- mips:Linux:*:*) ++ exit ;; ++ mips:Linux:*:* | mips64:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU +- #undef mips +- #undef mipsel ++ #undef ${UNAME_MACHINE} ++ #undef ${UNAME_MACHINE}el + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) +- CPU=mipsel ++ CPU=${UNAME_MACHINE}el + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) +- CPU=mips ++ CPU=${UNAME_MACHINE} + #else + CPU= + #endif + #endif + EOF +- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` +- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 ++ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` ++ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } + ;; +- mips64:Linux:*:*) +- eval $set_cc_for_build +- sed 's/^ //' << EOF >$dummy.c +- #undef CPU +- #undef mips64 +- #undef mips64el +- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) +- CPU=mips64el +- #else +- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) +- CPU=mips64 +- #else +- CPU= +- #endif +- #endif +-EOF +- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` +- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 +- ;; +- ppc:Linux:*:*) +- echo powerpc-unknown-linux-gnu +- exit 0 ;; +- ppc64:Linux:*:*) +- echo powerpc64-unknown-linux-gnu +- exit 0 ;; +- alpha:Linux:*:*) +- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in +- EV5) UNAME_MACHINE=alphaev5 ;; +- EV56) UNAME_MACHINE=alphaev56 ;; +- PCA56) UNAME_MACHINE=alphapca56 ;; +- PCA57) UNAME_MACHINE=alphapca56 ;; +- EV6) UNAME_MACHINE=alphaev6 ;; +- EV67) UNAME_MACHINE=alphaev67 ;; +- EV68*) UNAME_MACHINE=alphaev68 ;; +- esac +- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null +- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi +- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} +- exit 0 ;; ++ or32:Linux:*:*) ++ echo or32-unknown-linux-gnu ++ exit ;; ++ padre:Linux:*:*) ++ echo sparc-unknown-linux-gnu ++ exit ;; ++ parisc64:Linux:*:* | hppa64:Linux:*:*) ++ echo hppa64-unknown-linux-gnu ++ exit ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in +@@ -910,87 +949,40 @@ + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; + esac +- exit 0 ;; +- parisc64:Linux:*:* | hppa64:Linux:*:*) +- echo hppa64-unknown-linux-gnu +- exit 0 ;; ++ exit ;; ++ ppc64:Linux:*:*) ++ echo powerpc64-unknown-linux-gnu ++ exit ;; ++ ppc:Linux:*:*) ++ echo powerpc-unknown-linux-gnu ++ exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux +- exit 0 ;; ++ exit ;; + sh64*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +- exit 0 ;; ++ exit ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +- exit 0 ;; ++ exit ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu +- exit 0 ;; ++ exit ;; ++ vax:Linux:*:*) ++ echo ${UNAME_MACHINE}-dec-linux-gnu ++ exit ;; + x86_64:Linux:*:*) + echo x86_64-unknown-linux-gnu +- exit 0 ;; +- i*86:Linux:*:*) +- # The BFD linker knows what the default object file format is, so +- # first see if it will tell us. cd to the root directory to prevent +- # problems with other programs or directories called `ld' in the path. +- # Set LC_ALL=C to ensure ld outputs messages in English. +- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ +- | sed -ne '/supported targets:/!d +- s/[ ][ ]*/ /g +- s/.*supported targets: *// +- s/ .*// +- p'` +- case "$ld_supported_targets" in +- elf32-i386) +- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" +- ;; +- a.out-i386-linux) +- echo "${UNAME_MACHINE}-pc-linux-gnuaout" +- exit 0 ;; +- coff-i386) +- echo "${UNAME_MACHINE}-pc-linux-gnucoff" +- exit 0 ;; +- "") +- # Either a pre-BFD a.out linker (linux-gnuoldld) or +- # one that does not give us useful --help. +- echo "${UNAME_MACHINE}-pc-linux-gnuoldld" +- exit 0 ;; +- esac +- # Determine whether the default compiler is a.out or elf +- eval $set_cc_for_build +- sed 's/^ //' << EOF >$dummy.c +- #include <features.h> +- #ifdef __ELF__ +- # ifdef __GLIBC__ +- # if __GLIBC__ >= 2 +- LIBC=gnu +- # else +- LIBC=gnulibc1 +- # endif +- # else +- LIBC=gnulibc1 +- # endif +- #else +- #ifdef __INTEL_COMPILER +- LIBC=gnu +- #else +- LIBC=gnuaout +- #endif +- #endif +- #ifdef __dietlibc__ +- LIBC=dietlibc +- #endif +-EOF +- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` +- test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 +- test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 +- ;; ++ exit ;; ++ xtensa*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-gnu ++ exit ;; + i*86:DYNIX/ptx:4*:*) + # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. + # earlier versions are messed up and put the nodename in both + # sysname and nodename. + echo i386-sequent-sysv4 +- exit 0 ;; ++ exit ;; + i*86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... +@@ -998,27 +990,27 @@ + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} +- exit 0 ;; ++ exit ;; + i*86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx +- exit 0 ;; ++ exit ;; + i*86:XTS-300:*:STOP) + echo ${UNAME_MACHINE}-unknown-stop +- exit 0 ;; ++ exit ;; + i*86:atheos:*:*) + echo ${UNAME_MACHINE}-unknown-atheos +- exit 0 ;; +- i*86:syllable:*:*) ++ exit ;; ++ i*86:syllable:*:*) + echo ${UNAME_MACHINE}-pc-syllable +- exit 0 ;; +- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) ++ exit ;; ++ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + i*86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp +- exit 0 ;; ++ exit ;; + i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then +@@ -1026,15 +1018,16 @@ else -- j--; -+ j -= length_last; - - if ( j < 0 ) - break; + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi +- exit 0 ;; +- i*86:*:5:[78]*) ++ exit ;; ++ i*86:*:5:[678]*) ++ # UnixWare 7.x, OpenUNIX and OpenServer 6. + case `/bin/uname -X | grep "^Machine"` in + *486*) UNAME_MACHINE=i486 ;; + *Pentium) UNAME_MACHINE=i586 ;; + *Pent*|*Celeron) UNAME_MACHINE=i686 ;; + esac + echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} +- exit 0 ;; ++ exit ;; + i*86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` +@@ -1052,73 +1045,86 @@ else -- p++; -+ p = next; - } - - return(p); - } - #endif /* HAVE_V8_REGCOMP || SLANG_REGEXP */ - -+/* Returns a pointer to the first occurrence of '\n' in string beg, or -+ * end if no '\n' can be found between inclusive beg and exclusive -+ * end. -+ */ -+static const unsigned char * -+find_eol(const unsigned char *beg, const unsigned char *end) -+{ -+ const unsigned char *p; -+ if ( (p = memchr(beg, '\n', end - beg)) != NULL) -+ return p; -+ else -+ return end; -+} -+ - /* This routine returns the 1 + position of first match of key in str. - key is modified to match the case of str. */ - /* We should try to optimize this routine */ - /* searches from beg up to but not including end */ - --static unsigned char *forw_search_region(unsigned char *beg, -- unsigned char *end, -- unsigned char *key) -+static const unsigned char * -+forw_search_region(const unsigned char *beg, -+ const unsigned char *end, -+ const unsigned char *key) - { - #if defined(HAVE_V8_REGCOMP) || defined(SLANG_REGEXP) - /* -@@ -307,10 +351,11 @@ - * to be broken into lines. - * - */ -- unsigned char *p; /* temp pointer */ -- unsigned char *linebeg; /* beginning of working line */ -- unsigned char *copy; /* ptr to upper case copy */ -+ const unsigned char *linebeg; /* beginning of working line */ -+ const unsigned char *lineend; /* end of working line */ -+ const unsigned char *norm_line; /* ptr to normalized line */ - unsigned char *match; /* ptr to matching string */ -+ int anchored_re; - - /* - * Compile "key" into an executable regular expression -@@ -318,58 +363,35 @@ - if ( do_regcomp(key) == 0 ) - return(Most_Eob); - -- /* -- * For regular expression searches we need to do a line by line -- * search, so it is necessary to temporarily replace '\n' with '\0' -- * characters. -- */ -- p = beg; -- linebeg = beg; -+ anchored_re = key[0] == '^'; - -- while (linebeg < end) -+ for ( linebeg = beg ; linebeg < end ; linebeg = lineend + 1 ) - { -- while ((p < end) && (*p != '\n')) p++; -- if (p == end) break; -- *p = 0; -+ size_t length; - -- if ( Most_Case_Sensitive == 0 ) /* i.e. case insensitive */ -- { -- copy = StrUpCaseCopy(linebeg); -- if ( copy == (unsigned char *)NULL ) -- return(Most_Eob); -- } -+ lineend = find_eol(linebeg, end); -+ -+ length = lineend - linebeg; -+ if (0 == length) continue; /* Skip empty lines. */ -+ -+ norm_line = StrNormCopy(linebeg, &length); -+ if ( norm_line == NULL ) -+ return(Most_Eob); - - /* - * Quick sanity check for beginning of line archored tests. -- * If 1st char of key is "^", then the character before linebeg (which -- * must be beyond the start of the window), must be a "\n", -- * otherwise do_regexec() isn't called. -+ * If 1st char of key is "^", then the character before -+ * linebeg (which must be within the buffer), must be a "\n". - */ -- if ( --# if 0 -- ((*key != '^') -- || (linebeg > Most_Win->beg_pos && linebeg[-1] == '\n')) -- && --#endif -- (match = do_regexec(Most_Case_Sensitive ? linebeg : copy))) -+ if ( !(anchored_re && (linebeg <= Most_Beg || linebeg[-1] != '\n')) -+ && (match = do_regexec(norm_line, length)) ) - { -- *p = '\n'; -- if ( Most_Case_Sensitive == 0 ) -- { -- /* -- * Use offset into "copy" as idx to find point in -- * real line. -- */ -- return( GetOrigPtr(linebeg, match - copy) ); -- } -- else -- { -- return( match ); -- } -+ /* -+ * Use offset into "norm_line" as idx to find point in -+ * real line. -+ */ -+ return( GetOrigPtr(linebeg, match - norm_line, lineend) ); - } -- -- *p++ = '\n'; -- linebeg = p; - } - - return(Most_Eob); -@@ -475,23 +497,18 @@ - * pattern "key". - */ - --static unsigned char *back_search_region(unsigned char *beg, -- unsigned char *end, -- unsigned char *key) -+static const unsigned char * -+back_search_region(const unsigned char *beg, -+ const unsigned char *end, -+ const unsigned char *key) - { - #if defined(HAVE_V8_REGCOMP) || defined(SLANG_REGEXP) -- register unsigned char *p; -- unsigned char *endp, /* end of line */ -- *lastmatch, /* last match in line */ -+ const unsigned char *p; -+ const unsigned char *endp, /* end of line */ -+ *lastmatch, /* last match in line */ - *endprevline, /* end of line before this one */ - *match; /* ptr to matching string */ -- unsigned char savec; /* last char on line */ -- -- /* -- * Compile "key" into an executable regular expression -- */ -- if ( do_regcomp(key) == 0 ) -- return(Most_Eob); -+ int anchored_re; + echo ${UNAME_MACHINE}-pc-sysv32 + fi +- exit 0 ;; ++ exit ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about +- # the processor, so we play safe by assuming i386. +- echo i386-pc-msdosdjgpp +- exit 0 ;; ++ # the processor, so we play safe by assuming i586. ++ # Note: whatever this is, it MUST be the same as what config.sub ++ # prints for the "djgpp" host, or else GDB configury will decide that ++ # this is a cross-build. ++ echo i586-pc-msdosdjgpp ++ exit ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 +- exit 0 ;; ++ exit ;; + paragon:*:*:*) + echo i860-intel-osf1 +- exit 0 ;; ++ exit ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi +- exit 0 ;; ++ exit ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv +- exit 0 ;; ++ exit ;; + mc68k:UNIX:SYSTEM5:3.51m) + echo m68k-convergent-sysv +- exit 0 ;; ++ exit ;; + M680?0:D-NIX:5.3:*) + echo m68k-diab-dnix +- exit 0 ;; ++ exit ;; + M68*:*:R3V[5678]*:*) +- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; ++ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; + 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ +- && echo i486-ncr-sysv4.3${OS_REL} && exit 0 ++ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ +- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; ++ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ +- && echo i486-ncr-sysv4 && exit 0 ;; ++ && { echo i486-ncr-sysv4; exit; } ;; ++ NCR*:*:4.2:* | MPRAS*:*:4.2:*) ++ OS_REL='.3' ++ test -r /etc/.relid \ ++ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` ++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ ++ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } ++ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ ++ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ++ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ ++ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 +- exit 0 ;; ++ exit ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} +- exit 0 ;; +- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) ++ exit ;; ++ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 +- exit 0 ;; ++ exit ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 +- exit 0 ;; ++ exit ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` +@@ -1126,73 +1132,94 @@ + else + echo ns32k-sni-sysv + fi +- exit 0 ;; ++ exit ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says <Richard.M.Bartel@ccMail.Census.GOV> + echo i586-unisys-sysv4 +- exit 0 ;; ++ exit ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes <hewes@openmarket.com>. + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 +- exit 0 ;; ++ exit ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 +- exit 0 ;; ++ exit ;; + i*86:VOS:*:*) + # From Paul.Green@stratus.com. + echo ${UNAME_MACHINE}-stratus-vos +- exit 0 ;; ++ exit ;; + *:VOS:*:*) + # From Paul.Green@stratus.com. + echo hppa1.1-stratus-vos +- exit 0 ;; ++ exit ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 +- exit 0 ;; ++ exit ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi +- exit 0 ;; ++ exit ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos +- exit 0 ;; ++ exit ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos +- exit 0 ;; ++ exit ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos +- exit 0 ;; ++ exit ;; ++ BePC:Haiku:*:*) # Haiku running on Intel PC compatible. ++ echo i586-pc-haiku ++ exit ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + SX-6:SUPER-UX:*:*) + echo sx6-nec-superux${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; ++ SX-7:SUPER-UX:*:*) ++ echo sx7-nec-superux${UNAME_RELEASE} ++ exit ;; ++ SX-8:SUPER-UX:*:*) ++ echo sx8-nec-superux${UNAME_RELEASE} ++ exit ;; ++ SX-8R:SUPER-UX:*:*) ++ echo sx8r-nec-superux${UNAME_RELEASE} ++ exit ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:Darwin:*:*) + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + case $UNAME_PROCESSOR in +- *86) UNAME_PROCESSOR=i686 ;; ++ i386) ++ eval $set_cc_for_build ++ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then ++ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ ++ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ ++ grep IS_64BIT_ARCH >/dev/null ++ then ++ UNAME_PROCESSOR="x86_64" ++ fi ++ fi ;; + unknown) UNAME_PROCESSOR=powerpc ;; + esac + echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + UNAME_PROCESSOR=`uname -p` + if test "$UNAME_PROCESSOR" = "x86"; then +@@ -1200,25 +1227,25 @@ + UNAME_MACHINE=pc + fi + echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:QNX:*:4*) + echo i386-pc-qnx +- exit 0 ;; ++ exit ;; + NSE-?:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + NSR-?:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux +- exit 0 ;; ++ exit ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv +- exit 0 ;; ++ exit ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 +@@ -1229,41 +1256,50 @@ + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 +- exit 0 ;; ++ exit ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 +- exit 0 ;; ++ exit ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex +- exit 0 ;; ++ exit ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 +- exit 0 ;; ++ exit ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 +- exit 0 ;; ++ exit ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 +- exit 0 ;; ++ exit ;; + *:ITS:*:*) + echo pdp10-unknown-its +- exit 0 ;; ++ exit ;; + SEI:*:*:SEIUX) + echo mips-sei-seiux${UNAME_RELEASE} +- exit 0 ;; ++ exit ;; + *:DragonFly:*:*) + echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` +- exit 0 ;; ++ exit ;; + *:*VMS:*:*) + UNAME_MACHINE=`(uname -p) 2>/dev/null` + case "${UNAME_MACHINE}" in +- A*) echo alpha-dec-vms && exit 0 ;; +- I*) echo ia64-dec-vms && exit 0 ;; +- V*) echo vax-dec-vms && exit 0 ;; ++ A*) echo alpha-dec-vms ; exit ;; ++ I*) echo ia64-dec-vms ; exit ;; ++ V*) echo vax-dec-vms ; exit ;; + esac ;; + *:XENIX:*:SysV) + echo i386-pc-xenix +- exit 0 ;; ++ exit ;; ++ i*86:skyos:*:*) ++ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' ++ exit ;; ++ i*86:rdos:*:*) ++ echo ${UNAME_MACHINE}-pc-rdos ++ exit ;; ++ i*86:AROS:*:*) ++ echo ${UNAME_MACHINE}-pc-aros ++ exit ;; + esac + + #echo '(No uname command or uname output not recognized.)' 1>&2 +@@ -1295,7 +1331,7 @@ + #endif - /* - * Starting from the end of the buffer, break the buffer into lines -@@ -501,84 +518,60 @@ - * and isn't that what we want to do in a reverse search. - */ - endp = end; -- lastmatch = Most_Eob; -- while ( 1 ) /* forever loop */ -- { -- if ( (endp < beg) ) -- return(Most_Eob); /* Reach start of buffer, no match */ -+ endprevline = end; -+ match = Most_Eob; + #if defined (__arm) && defined (__acorn) && defined (__unix) +- printf ("arm-acorn-riscix"); exit (0); ++ printf ("arm-acorn-riscix\n"); exit (0); + #endif -- /* Find the real end of current line */ -- if ( (p = (unsigned char *)strchr((char *)endp, '\n')) != NULL ) -- endp = p; + #if defined (hp300) && !defined (hpux) +@@ -1384,11 +1420,12 @@ + } + EOF + +-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 ++$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && ++ { echo "$SYSTEM_NAME"; exit; } + + # Apollos put the system type in the environment. + +-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } ++test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } + + # Convex versions that predate uname can use getsysinfo(1) + +@@ -1397,22 +1434,22 @@ + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd +- exit 0 ;; ++ exit ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi +- exit 0 ;; ++ exit ;; + c34*) + echo c34-convex-bsd +- exit 0 ;; ++ exit ;; + c38*) + echo c38-convex-bsd +- exit 0 ;; ++ exit ;; + c4*) + echo c4-convex-bsd +- exit 0 ;; ++ exit ;; + esac + fi + +@@ -1423,9 +1460,9 @@ + the operating system you are using. It is advised that you + download the most up to date version of the config scripts from + +- http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess ++ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD + and +- http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub ++ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD + + If the version you run ($0) is already up to date, please + send the following data and any information you think might be +--- most-5.0.0a.orig/autoconf/config.sub ++++ most-5.0.0a/autoconf/config.sub +@@ -1,9 +1,10 @@ + #! /bin/sh + # Configuration validation subroutine script. + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +-# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. ++# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 ++# Free Software Foundation, Inc. + +-timestamp='2005-04-22' ++timestamp='2010-01-22' + + # This file is (in principle) common to ALL GNU software. + # The presence of a machine in this file suggests that SOME GNU software +@@ -21,22 +22,26 @@ + # + # You should have received a copy of the GNU General Public License + # along with this program; if not, write to the Free Software +-# Foundation, Inc., 59 Temple Place - Suite 330, +-# Boston, MA 02111-1307, USA. - -- savec = *endp; -- *endp = '\0'; /* terminate line with NULL */ -+ /* Find out whether the regexp attempts to match a line boundary. -+ * In this case, only a match on the full line should be attempted. -+ */ -+ anchored_re = key[strlen((const char *) key)-1] == '$'; ++# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA ++# 02110-1301, USA. ++# + # As a special exception to the GNU General Public License, if you + # distribute this file as part of a program that contains a + # configuration script generated by Autoconf, you may include it under + # the same distribution terms that you use for the rest of that program. -+ while ( endp > beg ) -+ { - /* Find the beginning of line */ - for ( p = endp - 1 ; (p >= beg) && (*p != '\n') ; p-- ) - { - } - -+ if ( p < beg ) -+ break; + - endprevline = p; - -- p++; /* point to 1st char after newline */ -+ /* -+ * Quick sanity check for end of line archored tests. If last -+ * char of key is "$", then the character after endp (which -+ * must be within the buffer), must be a "\n". -+ */ -+ if ( anchored_re && endp < Most_Eob && endp[0] != '\n' ) -+ { -+ endp = p; -+ continue; -+ } - - /* - * Keep searching forward in this line till no more matches - */ -- if ( Most_Case_Sensitive == 0 ) /* i.e. case insensitive */ -+ do - { -- unsigned char *copy; /* ptr to upper case copy */ -- unsigned char *savecopy; /* copy of "copy" */ -- -- copy = StrUpCaseCopy(p); -- if ( copy == (unsigned char *)NULL ) -- return(Most_Eob); -+ lastmatch = match; - -- savecopy = copy; -- -- /* -- * Quick sanity check for beginning of line archored tests. -- * Must be at start of line. -- */ -- while ( ((*key != '^') || (copy == savecopy)) -- && (match = do_regexec(copy)) ) -- { -- if ( GetOrigPtr(p, match - savecopy) > end ) -- break; -- lastmatch = match; -- if ( *lastmatch == '\0' ) /* key must be "$" or "^" */ -- break; -- copy = lastmatch + 1; /* character after match */ -- } -+ if (Most_UTF8_Mode) -+ p = SLutf8_skip_char((unsigned char*) p, (unsigned char*) endp); -+ else -+ p++; - -- if ( lastmatch != Most_Eob ) /* found a match */ -- lastmatch = GetOrigPtr(p, lastmatch - savecopy); -- } -- else -- { -- /* -- * Quick sanity check for beginning of line archored tests. -- * Must be at start of buffer or start of line -- */ -- while ( ( (*key != '^') || (p == endprevline + 1) ) -- && (match = do_regexec(p)) ) -- { -- if ( match > end ) -- break; -- lastmatch = match; -- if ( *lastmatch == '\0' ) /* key must be "$" or "^" */ -- break; -- p = lastmatch + 1; /* character after match */ -- } -+ match = forw_search_region(p, endp, key); - } -+ while ( match <= endp ); - -- *endp = savec; - if ( lastmatch != Most_Eob ) /* found a match */ - return(lastmatch); - - endp = endprevline; - } + # Please send patches to <config-patches@gnu.org>. Submit a context +-# diff and a properly formatted ChangeLog entry. ++# diff and a properly formatted GNU ChangeLog entry. + # + # Configuration subroutine to validate and canonicalize a configuration type. + # Supply the specified configuration type as an argument. + # If it is invalid, we print an error message on stderr and exit with code 1. + # Otherwise, we print the canonical config type on stdout and succeed. + ++# You can get the latest version of this script from: ++# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD + -+ return(Most_Eob); /* Reached start of buffer, no match */ - #else - char ch, char1, work[256]; - unsigned char *pos; -@@ -670,15 +663,15 @@ - #endif /* HAVE_V8_REGCOMP || SLANG_REGEXP */ - } - --int most_search(unsigned char *from, int repeat, int *col) -+long long most_search(const unsigned char *from, int repeat, long long *col) - { - /* return the line match was found as well as line number, - * search from i on; assume that line_array match the i so we need - * no initial lookup */ - -- int test, save_line, the_col, row, s_len; -+ long long test, save_line, the_col, row, s_len; - char string[300]; -- unsigned char *pos; -+ const unsigned char *pos; - unsigned int save_ofs; - unsigned int found_ofs; - -@@ -687,7 +680,10 @@ - save_line = Most_C_Line; - found_ofs = Most_Eob - Most_Beg; - *col = 0; -- s_len = strlen (Most_Search_Str); -+ if (Most_UTF8_Mode) -+ s_len = SLutf8_strlen (Most_Search_Str, 0); -+ else -+ s_len = strlen ((char *) Most_Search_Str); - pos = from; - - if (*Most_Search_Str) ---- most-4.10.2.orig/src/search.h -+++ most-4.10.2/src/search.h -@@ -6,7 +6,7 @@ - extern int Most_Case_Sensitive; - extern int Most_Search_Dir; - #define MOST_SEARCH_BUF_LEN 256 --extern char Most_Search_Str[MOST_SEARCH_BUF_LEN]; --extern int most_search(unsigned char *, int, int *); -+extern unsigned char Most_Search_Str[MOST_SEARCH_BUF_LEN]; -+extern long long most_search(const unsigned char *, int, long long *); - #endif - ---- most-4.10.2.orig/src/window.c -+++ most-4.10.2/src/window.c -@@ -48,10 +48,11 @@ - - Most_Window_Type *Most_Win; - Most_Window_Type *Most_Top_Win; --int Most_Top_Line; /* row number of top window */ --int Most_Curs_Row; --int Most_Curs_Col; --int Most_Column = 1; -+long long Most_Top_Line; /* row number of top window */ -+long long Most_Curs_Row; -+long long Most_Curs_Col; -+/* The leftmost visible column. */ -+long long Most_Column = 1; - int Most_Restore_Width_To = 0; - char Most_Mini_Buf[256]; - unsigned long Most_Curs_Offset; -@@ -156,7 +157,7 @@ - SLsmg_write_nchars (buf + point, len - point); - if (col < SLtt_Screen_Cols) - break; -- buf++; point--; len--; /* FIXME for UTF-8 */ -+ buf++; point--; len--; - } - SLsmg_erase_eol (); - SLsmg_gotorc (SLtt_Screen_Rows - 1, col); -@@ -227,6 +228,8 @@ - { - SLang_RLine_Info_Type *rli; - unsigned int flags = SL_RLINE_BLINK_MATCH; -+ if (Most_UTF8_Mode) -+ flags |= SL_RLINE_UTF8_MODE; - - if (NULL == (rli = SLrline_open (SLtt_Screen_Cols, flags))) - return NULL; -@@ -258,7 +261,7 @@ - - /* do not use default. The up arrow can always get it back. */ - if ((what != NULL) -- && (*what) && (what != Most_Search_Str)) -+ && (*what) && (what != (char *) Most_Search_Str)) - { - if (-1 == SLrline_set_line (Most_RLI, what)) - return -1; -@@ -593,7 +596,8 @@ - unsigned int num_chars; - unsigned int field_width, info_len; - unsigned char *eob; -- int r, x; -+ int r; -+ long long x; - - eob = Most_Eob; - #if MOST_HAS_MMAP -@@ -601,20 +605,20 @@ - eob = Most_Beg + Most_Buf->mmap_size; - #endif - -- if (eob == Most_Beg) x = 100; -+ if (eob == Most_Beg) x = 100LL; - else - { -- x = Most_C_Offset * 100; -+ x = Most_C_Offset * 100LL; - x = x / (eob - Most_Beg); - } - - if (Most_C_Line + (Most_Win->bot - Most_Win->top + 1) >= Most_Num_Lines) -- x = 100; -+ x = 100LL; - - /* for files with end of file above the bottom row (due to window manipulations) */ -- if (x > 100) x = 100; -+ if (x > 100LL) x = 100LL; - -- sprintf (info, "(%d,%d) %d%%", Most_C_Line, Most_Column, x); -+ sprintf (info, "(%lld,%lld) %d%%", Most_C_Line, Most_Column, (int)x); - - r = Most_Win->bot + 1; - most_goto_rc (r,1); ---- most-4.10.2.orig/src/window.h -+++ most-4.10.2/src/window.h -@@ -5,11 +5,11 @@ - typedef struct _Most_Window_Type - { - unsigned long top_offset; /* offset of top line of window from bob */ -- int beg_line; /* line number of top */ -- int curs_line; /* line number of curs pos */ -- int curs_col; /* column number of curs pos */ -+ long long beg_line; /* line number of top */ -+ long long curs_line; /* line number of curs pos */ -+ long long curs_col; /* column number of curs pos */ - unsigned long curs_offset; /* pos of cursor from bob*/ -- int col; /* column offset */ -+ long long col; /* column offset */ - int n_lines; /* number of lines of buffer (mode dependent) */ - int top; /* screen location of top */ - int bot; /* screen location of bot */ -@@ -29,9 +29,9 @@ - extern Most_Window_Type *Most_Win; - extern Most_Window_Type *Most_Top_Win; - extern unsigned long Most_Curs_Offset; --extern int Most_Column; --extern int Most_Curs_Row; --extern int Most_Curs_Col; -+extern long long Most_Column; -+extern long long Most_Curs_Row; -+extern long long Most_Curs_Col; - #define MOST_MINI_BUF_LEN 256 - extern char Most_Mini_Buf[MOST_MINI_BUF_LEN]; - extern int Most_Selective_Display; + # This file is supposed to be the same for all GNU packages + # and recognize all the CPU types, system types and aliases + # that are meaningful with *any* GNU software. +@@ -70,8 +75,9 @@ + version="\ + GNU config.sub ($timestamp) + +-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +-Free Software Foundation, Inc. ++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, ++2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free ++Software Foundation, Inc. + + This is free software; see the source for copying conditions. There is NO + warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." +@@ -83,11 +89,11 @@ + while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) +- echo "$timestamp" ; exit 0 ;; ++ echo "$timestamp" ; exit ;; + --version | -v ) +- echo "$version" ; exit 0 ;; ++ echo "$version" ; exit ;; + --help | --h* | -h ) +- echo "$usage"; exit 0 ;; ++ echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. +@@ -99,7 +105,7 @@ + *local*) + # First pass through any local machine types. + echo $1 +- exit 0;; ++ exit ;; + + * ) + break ;; +@@ -118,8 +124,10 @@ + # Here we must recognize all the valid KERNEL-OS combinations. + maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` + case $maybe_os in +- nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \ +- kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) ++ nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ ++ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ ++ kopensolaris*-gnu* | \ ++ storm-chaos* | os2-emx* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; +@@ -145,10 +153,13 @@ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ +- -apple | -axis | -knuth | -cray) ++ -apple | -axis | -knuth | -cray | -microblaze) + os= + basic_machine=$1 + ;; ++ -bluegene*) ++ os=-cnk ++ ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 +@@ -170,6 +181,10 @@ + -hiux*) + os=-hiuxwe2 + ;; ++ -sco6) ++ os=-sco5v6 ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` +@@ -186,6 +201,10 @@ + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; ++ -sco5v6*) ++ # Don't forget version if it is 3.2v4 or newer. ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` +@@ -230,23 +249,28 @@ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ +- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ ++ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ + | bfin \ + | c4x | clipper \ + | d10v | d30v | dlx | dsp16xx \ +- | fr30 | frv \ ++ | fido | fr30 | frv \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | i370 | i860 | i960 | ia64 \ + | ip2k | iq2000 \ +- | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \ ++ | lm32 \ ++ | m32c | m32r | m32rle | m68000 | m68k | m88k \ ++ | maxq | mb | microblaze | mcore | mep | metag \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ +- | mips64vr | mips64vrel \ ++ | mips64octeon | mips64octeonel \ + | mips64orion | mips64orionel \ ++ | mips64r5900 | mips64r5900el \ ++ | mips64vr | mips64vrel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ ++ | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa64 | mipsisa64el \ +@@ -255,31 +279,40 @@ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipstx39 | mipstx39el \ + | mn10200 | mn10300 \ ++ | moxie \ ++ | mt \ + | msp430 \ ++ | nios | nios2 \ + | ns16k | ns32k \ +- | openrisc | or32 \ ++ | or32 \ + | pdp10 | pdp11 | pj | pjl \ + | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ + | pyramid \ +- | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ ++ | rx \ ++ | score \ ++ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh64 | sh64le \ +- | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \ +- | sparcv8 | sparcv9 | sparcv9b \ +- | strongarm \ ++ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ ++ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ ++ | spu | strongarm \ + | tahoe | thumb | tic4x | tic80 | tron \ ++ | ubicom32 \ + | v850 | v850e \ + | we32k \ +- | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \ +- | z8k) ++ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ ++ | z8k | z80) + basic_machine=$basic_machine-unknown + ;; +- m6811 | m68hc11 | m6812 | m68hc12) ++ m6811 | m68hc11 | m6812 | m68hc12 | picochip) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + ;; ++ ms1) ++ basic_machine=mt-unknown ++ ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and +@@ -299,28 +332,32 @@ + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ +- | avr-* \ ++ | avr-* | avr32-* \ + | bfin-* | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ + | clipper-* | craynv-* | cydra-* \ + | d10v-* | d30v-* | dlx-* \ + | elxsi-* \ +- | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ ++ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | i*86-* | i860-* | i960-* | ia64-* \ + | ip2k-* | iq2000-* \ +- | m32r-* | m32rle-* \ ++ | lm32-* \ ++ | m32c-* | m32r-* | m32rle-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ +- | m88110-* | m88k-* | maxq-* | mcore-* \ ++ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips16-* \ + | mips64-* | mips64el-* \ +- | mips64vr-* | mips64vrel-* \ ++ | mips64octeon-* | mips64octeonel-* \ + | mips64orion-* | mips64orionel-* \ ++ | mips64r5900-* | mips64r5900el-* \ ++ | mips64vr-* | mips64vrel-* \ + | mips64vr4100-* | mips64vr4100el-* \ + | mips64vr4300-* | mips64vr4300el-* \ + | mips64vr5000-* | mips64vr5000el-* \ ++ | mips64vr5900-* | mips64vr5900el-* \ + | mipsisa32-* | mipsisa32el-* \ + | mipsisa32r2-* | mipsisa32r2el-* \ + | mipsisa64-* | mipsisa64el-* \ +@@ -329,27 +366,35 @@ + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipstx39-* | mipstx39el-* \ + | mmix-* \ ++ | mt-* \ + | msp430-* \ ++ | nios-* | nios2-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ + | pyramid-* \ +- | romp-* | rs6000-* \ +- | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ ++ | romp-* | rs6000-* | rx-* \ ++ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ +- | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \ ++ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ + | sparclite-* \ +- | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ ++ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ + | tahoe-* | thumb-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ ++ | tile-* | tilegx-* \ + | tron-* \ ++ | ubicom32-* \ + | v850-* | v850e-* | vax-* \ + | we32k-* \ +- | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \ +- | xstormy16-* | xtensa-* \ ++ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ ++ | xstormy16-* | xtensa*-* \ + | ymp-* \ +- | z8k-*) ++ | z8k-* | z80-*) ++ ;; ++ # Recognize the basic CPU types without company name, with glob match. ++ xtensa*) ++ basic_machine=$basic_machine-unknown + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. +@@ -413,6 +458,10 @@ + basic_machine=m68k-apollo + os=-bsd + ;; ++ aros) ++ basic_machine=i386-pc ++ os=-aros ++ ;; + aux) + basic_machine=m68k-apple + os=-aux +@@ -421,10 +470,26 @@ + basic_machine=ns32k-sequent + os=-dynix + ;; ++ blackfin) ++ basic_machine=bfin-unknown ++ os=-linux ++ ;; ++ blackfin-*) ++ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` ++ os=-linux ++ ;; ++ bluegene*) ++ basic_machine=powerpc-ibm ++ os=-cnk ++ ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; ++ cegcc) ++ basic_machine=arm-unknown ++ os=-cegcc ++ ;; + convex-c1) + basic_machine=c1-convex + os=-bsd +@@ -453,8 +518,8 @@ + basic_machine=craynv-cray + os=-unicosmp + ;; +- cr16c) +- basic_machine=cr16c-unknown ++ cr16) ++ basic_machine=cr16-unknown + os=-elf + ;; + crds | unos) +@@ -492,6 +557,10 @@ + basic_machine=m88k-motorola + os=-sysv3 + ;; ++ dicos) ++ basic_machine=i686-pc ++ os=-dicos ++ ;; + djgpp) + basic_machine=i586-pc + os=-msdosdjgpp +@@ -646,6 +715,14 @@ + basic_machine=m68k-isi + os=-sysv + ;; ++ m68knommu) ++ basic_machine=m68k-unknown ++ os=-linux ++ ;; ++ m68knommu-*) ++ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` ++ os=-linux ++ ;; + m88k-omron*) + basic_machine=m88k-omron + ;; +@@ -657,10 +734,17 @@ + basic_machine=ns32k-utek + os=-sysv + ;; ++ microblaze) ++ basic_machine=microblaze-xilinx ++ ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 + ;; ++ mingw32ce) ++ basic_machine=arm-unknown ++ os=-mingw32ce ++ ;; + miniframe) + basic_machine=m68000-convergent + ;; +@@ -686,6 +770,9 @@ + basic_machine=i386-pc + os=-msdos + ;; ++ ms1-*) ++ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ++ ;; + mvs) + basic_machine=i370-ibm + os=-mvs +@@ -761,9 +848,8 @@ + basic_machine=hppa1.1-oki + os=-proelf + ;; +- or32 | or32-*) ++ openrisc | openrisc-*) + basic_machine=or32-unknown +- os=-coff + ;; + os400) + basic_machine=powerpc-ibm +@@ -785,6 +871,14 @@ + basic_machine=i860-intel + os=-osf + ;; ++ parisc) ++ basic_machine=hppa-unknown ++ os=-linux ++ ;; ++ parisc-*) ++ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` ++ os=-linux ++ ;; + pbd) + basic_machine=sparc-tti + ;; +@@ -794,6 +888,12 @@ + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; ++ pc98) ++ basic_machine=i386-pc ++ ;; ++ pc98-*) ++ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; + pentium | p5 | k5 | k6 | nexgen | viac3) + basic_machine=i586-pc + ;; +@@ -850,6 +950,10 @@ + basic_machine=i586-unknown + os=-pw32 + ;; ++ rdos) ++ basic_machine=i386-pc ++ os=-rdos ++ ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff +@@ -876,6 +980,10 @@ + sb1el) + basic_machine=mipsisa64sb1el-unknown + ;; ++ sde) ++ basic_machine=mipsisa32-sde ++ os=-elf ++ ;; + sei) + basic_machine=mips-sei + os=-seiux +@@ -887,6 +995,9 @@ + basic_machine=sh-hitachi + os=-hms + ;; ++ sh5el) ++ basic_machine=sh5le-unknown ++ ;; + sh64) + basic_machine=sh64-unknown + ;; +@@ -976,6 +1087,15 @@ + basic_machine=tic6x-unknown + os=-coff + ;; ++ # This must be matched before tile*. ++ tilegx*) ++ basic_machine=tilegx-unknown ++ os=-linux-gnu ++ ;; ++ tile*) ++ basic_machine=tile-unknown ++ os=-linux-gnu ++ ;; + tx39) + basic_machine=mipstx39-unknown + ;; +@@ -1051,6 +1171,10 @@ + basic_machine=z8k-unknown + os=-sim + ;; ++ z80-*-coff) ++ basic_machine=z80-unknown ++ os=-sim ++ ;; + none) + basic_machine=none-none + os=-none +@@ -1089,13 +1213,10 @@ + we32k) + basic_machine=we32k-att + ;; +- sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) ++ sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) + basic_machine=sh-unknown + ;; +- sh64) +- basic_machine=sh64-unknown +- ;; +- sparc | sparcv8 | sparcv9 | sparcv9b) ++ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) + basic_machine=sparc-sun + ;; + cydra) +@@ -1142,6 +1263,9 @@ + # First match some system type aliases + # that might get confused with valid system types. + # -solaris* is a basic system type, with this one exception. ++ -auroraux) ++ os=-auroraux ++ ;; + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; +@@ -1162,26 +1286,30 @@ + # Each alternative MUST END IN A *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ +- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ +- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ ++ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ ++ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ ++ | -sym* | -kopensolaris* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ +- | -aos* \ ++ | -aos* | -aros* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ +- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \ ++ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ ++ | -openbsd* | -solidbsd* \ + | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ + | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ +- | -chorusos* | -chorusrdb* \ ++ | -chorusos* | -chorusrdb* | -cegcc* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ +- | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \ ++ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ ++ | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ + | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ + | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ + | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ +- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*) ++ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ ++ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) + # Remember, each alternative MUST END IN *, to match a version number. + ;; + -qnx*) +@@ -1199,7 +1327,7 @@ + os=`echo $os | sed -e 's|nto|nto-qnx|'` + ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ +- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ ++ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + ;; + -mac*) +@@ -1311,6 +1439,11 @@ + -zvmoe) + os=-zvmoe + ;; ++ -dicos*) ++ os=-dicos ++ ;; ++ -nacl*) ++ ;; + -none) + ;; + *) +@@ -1333,6 +1466,12 @@ + # system, and we'll never get to this point. + + case $basic_machine in ++ score-*) ++ os=-elf ++ ;; ++ spu-*) ++ os=-elf ++ ;; + *-acorn) + os=-riscix1.2 + ;; +@@ -1342,9 +1481,9 @@ + arm*-semi) + os=-aout + ;; +- c4x-* | tic4x-*) +- os=-coff +- ;; ++ c4x-* | tic4x-*) ++ os=-coff ++ ;; + # This must come before the *-dec entry. + pdp10-*) + os=-tops20 +@@ -1370,6 +1509,9 @@ + m68*-cisco) + os=-aout + ;; ++ mep-*) ++ os=-elf ++ ;; + mips*-cisco) + os=-elf + ;; +@@ -1388,6 +1530,9 @@ + *-be) + os=-beos + ;; ++ *-haiku) ++ os=-haiku ++ ;; + *-ibm) + os=-aix + ;; +@@ -1496,7 +1641,7 @@ + -sunos*) + vendor=sun + ;; +- -aix*) ++ -cnk*|-aix*) + vendor=ibm + ;; + -beos*) +@@ -1559,7 +1704,7 @@ + esac + + echo $basic_machine$os +-exit 0 ++exit + + # Local variables: + # eval: (add-hook 'write-file-hooks 'time-stamp) diff --git a/abs/extra/most/most-leak-fd.patch b/abs/extra/most/most-leak-fd.patch new file mode 100644 index 0000000..c8cd2af --- /dev/null +++ b/abs/extra/most/most-leak-fd.patch @@ -0,0 +1,14 @@ +--- most-5.0.0a.orig/src/most.c 2007-06-03 00:03:59.000000000 -0400 ++++ most-5.0.0a/src/most.c 2010-12-31 04:42:08.000000000 -0500 +@@ -321,9 +321,11 @@ + { + fprintf (stderr, "fwrite returned %d, errno = %d\n", + m, errno); ++ (void) fclose (fp); + exit (1); + } + } ++ (void) fclose (fp); + } + + void most_initialize_most (void) diff --git a/abs/extra/mozilla-common/PKGBUILD b/abs/extra/mozilla-common/PKGBUILD index 5f73687..e18e5d5 100644 --- a/abs/extra/mozilla-common/PKGBUILD +++ b/abs/extra/mozilla-common/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 42379 2009-06-13 13:08:37Z jgc $ +# $Id: PKGBUILD 137692 2011-09-10 12:22:03Z pierre $ # Maintainer: dale <dale@archlinux.org> pkgname=mozilla-common pkgver=1.4 -pkgrel=1 +pkgrel=3 pkgdesc="Common Initialization Profile for Mozilla.org products" -arch=(i686 x86_64) +arch=('any') license=('GPL') url="http://www.mozilla.org/" install=mozilla-common.install -source=(mozilla-common.sh - mozilla-common.csh) +source=('mozilla-common.sh' + 'mozilla-common.csh') md5sums=('39451f6fe87d3cb224e140322c55eb27' '924887e41bd96db37029f479befe40cf') -build() { - install -m755 -d "${pkgdir}/etc/profile.d" - install -m755 mozilla-common.{,c}sh "${pkgdir}/etc/profile.d/" || return 1 +package() { + install -d "${pkgdir}/etc/profile.d/" + install -m755 mozilla-common.{,c}sh "${pkgdir}/etc/profile.d/" } diff --git a/abs/extra/mozilla-common/mozilla-common.install b/abs/extra/mozilla-common/mozilla-common.install index dc4228b..d5db81e 100644 --- a/abs/extra/mozilla-common/mozilla-common.install +++ b/abs/extra/mozilla-common/mozilla-common.install @@ -1,4 +1,3 @@ post_install() { echo "relogin or source /etc/profile.d/mozilla-common.sh" } -# vim:set ts=2 sw=2 et: diff --git a/abs/extra/community/mozplugger-chromium/PKGBUILD b/abs/extra/mozplugger-chromium/PKGBUILD index 360fcad..360fcad 100644 --- a/abs/extra/community/mozplugger-chromium/PKGBUILD +++ b/abs/extra/mozplugger-chromium/PKGBUILD diff --git a/abs/extra/mpc/ChangeLog b/abs/extra/mpc/ChangeLog deleted file mode 100644 index b645e19..0000000 --- a/abs/extra/mpc/ChangeLog +++ /dev/null @@ -1,15 +0,0 @@ -2009-03-11 Alexander Fehr <pizzapunk gmail com> - - * mpc-0.15-1: - New upstream release. - Changed license to GPL2. - -2008-12-22 Alexander Fehr <pizzapunk gmail com> - - * mpc-0.14-1: - New upstream release. - New maintainer. - Changed url. - Added !emptydirs option. - Changed download location to downloads.sourceforge.net. - Added ChangeLog. diff --git a/abs/extra/mpc/PKGBUILD b/abs/extra/mpc/PKGBUILD deleted file mode 100644 index b8acd57..0000000 --- a/abs/extra/mpc/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 63165 2010-01-15 13:32:46Z andrea $ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Alexander Fehr <pizzapunk gmail com> -# Contributor: Link Dupont <link@subpop.net> - -pkgname=mpc -pkgver=0.19 -pkgrel=1 -pkgdesc="Minimalist command line interface to MPD" -arch=('i686' 'x86_64') -url="http://mpd.wikia.com/wiki/Client:Mpc" -license=('GPL2') -depends=('libmpdclient') -options=('!emptydirs') -source=(http://downloads.sourceforge.net/musicpd/${pkgname}-$pkgver.tar.bz2) -md5sums=('9ab2967d9ec719b06a86f3b4121be654') - -build() { - cd "$srcdir/$pkgname-$pkgver" - - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR="$pkgdir" install || return 1 - - # Install bash completion file - install -D -m644 doc/mpc-completion.bash "$pkgdir/etc/bash_completion.d/mpc" || return 1 -} diff --git a/abs/extra/mpeg_stat/PKGBUILD b/abs/extra/mpeg_stat/PKGBUILD deleted file mode 100644 index b0f7315..0000000 --- a/abs/extra/mpeg_stat/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# Contributor: Nick B <Shirakawasuna at gmail _dot_com> -pkgname=mpeg_stat -pkgver=2.2b -pkgrel=2 -pkgdesc="A Berkely MPEG Tools bitstream analysis tool." -arch=('i686' 'x86_64') -url="http://bmrc.berkeley.edu/ftp/pub/multimedia/mpeg/" -license=('custom') -depends=('ffmpeg') -source=(http://www.sfr-fresh.com/unix/misc/old/${pkgname}-${pkgver}-src.tar.gz) - -build() { - cd ${srcdir}/${pkgname} - - make || return 1 -} -package() { - cd ${srcdir}/${pkgname} - install -m755 -D ${srcdir}/mpeg_stat/mpeg_stat ${pkgdir}/usr/bin/mpeg_stat - install -m644 -D ${srcdir}/mpeg_stat/COPYRIGHT ${pkgdir}/usr/share/licenses/mpeg_stat/COPYRIGHT -} -md5sums=('d0eca3833b76855c4e348b39deaf667d') diff --git a/abs/extra/mpg123/PKGBUILD b/abs/extra/mpg123/PKGBUILD index 5b1b335..8b2633f 100644 --- a/abs/extra/mpg123/PKGBUILD +++ b/abs/extra/mpg123/PKGBUILD @@ -1,28 +1,27 @@ -# $Id: PKGBUILD 85300 2010-07-11 18:52:51Z eric $ -# Maintainer: Hugo Doria <hugo@archlinux.org> -# Contributor: Giovanni Scafora <giovanni@archlinux.org> +# $Id: PKGBUILD 163205 2012-07-09 20:33:57Z eric $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> pkgname=mpg123 -pkgver=1.12.3 +pkgver=1.14.3 pkgrel=1 pkgdesc="A console based real time MPEG Audio Player for Layer 1, 2 and 3" arch=('i686' 'x86_64') url="http://sourceforge.net/projects/mpg123" license=('GPL2' 'LGPL2.1') -depends=('glibc' 'libtool' 'alsa-lib') -makedepends=('esound' 'sdl') -optdepends=('esound: for additional audio support' 'sdl: for additional audio support') +depends=('libltdl' 'alsa-lib') +makedepends=('sdl') +optdepends=('sdl: for sdl audio support') conflicts=('mpg321') provides=('mpg321') -replaces=('mpg321') -options=('libtool') -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('c1568be2d1715786bd6b1a89ec6fa7ef') -sha1sums=('5e92d3c918f6095264089f711a9f38a5d2168b31') +options=('!libtool') +source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2{,.sig}) +sha1sums=('c3cd800121bccf15d8fc31a30575a5dce8aaa5d5' + '32f4a507aed62c038b1620c938c8001b3a9b04b5') build() { cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --with-audio="alsa esd sdl" + ./configure --prefix=/usr --enable-int-quality --with-module-suffix=.so \ + --with-audio="alsa oss sdl " make } @@ -30,4 +29,3 @@ package() { cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install } - diff --git a/abs/extra/mpg123/__changelog b/abs/extra/mpg123/__changelog new file mode 100644 index 0000000..6ca760c --- /dev/null +++ b/abs/extra/mpg123/__changelog @@ -0,0 +1 @@ +remove pulse jack diff --git a/abs/extra/mpgtx/PKGBUILD b/abs/extra/mpgtx/PKGBUILD deleted file mode 100644 index 8474da3..0000000 --- a/abs/extra/mpgtx/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# $Id: PKGBUILD 5185 2009-11-07 02:20:01Z dgriffiths $ -# Contributor: Peter Baldwin <bald_pete@hotmail.com> -pkgname=mpgtx -pkgver=1.3.1 -pkgrel=2 -pkgdesc="A command line MPEG audio/video/system toolkit" -arch=('i686' 'x86_64') -url="http://mpgtx.sourceforge.net" -license=("GPL") -depends=() -source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('d628060aa04ad3b40a175bf35f5167cf') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr - make || return 1 -} -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make PREFIX=${pkgdir}/usr install - mv ${pkgdir}/usr/man ${pkgdir}/usr/share/ -} diff --git a/abs/extra/mupen64plus-svn/PKGBUILD b/abs/extra/mupen64plus-svn/PKGBUILD deleted file mode 100644 index 5df794d..0000000 --- a/abs/extra/mupen64plus-svn/PKGBUILD +++ /dev/null @@ -1,71 +0,0 @@ -#!!! Due to a limitation in pacman's SVN package handling, -# this package requires out-of-the-ordinary building. pacman checks -# the SVN repo for new revisions before scanning the PKGBUILD. -#!!! So, when you run makepkg, if it asks you for a password for 'mupen64', -# give it 'Dyson5632-kart' without the quotes. If it asks for a password -# for _your_ username, hit Enter to make it ask for a new username, tell it -# 'mupen64' without the quotes, and then give it the password above. When -# it asks you to save the password unencrypted, you can say yes, because -# it's just a read-only access login :P Once you do that, you shouldn't -# need to do the above anymore. - -# Maintainer: Devin Cofer <ranguvar@archlinux.us> -# Contributor: Rudy Matela <rudy.matela@gmail.com> -# Contributor: Allan McRae <allan@archlinux.org> -# Contributor: Zephyr - -pkgname=mupen64plus-svn -pkgver=1416 -pkgrel=1 -pkgdesc="Nintendo64 emulator, SVN version" -arch=('i686' 'x86_64') -url="http://code.google.com/p/mupen64plus/" -license=('GPL2') - -makedepends=('subversion' 'pkgconfig' 'libsamplerate' 'yasm' 'mesa') -depends=('gtk2' 'sdl_ttf') -optdepends=('libsamplerate: Higher quality audio') -conflicts=('mupen64plus') -provides=('mupen64plus') -source=('install.patch' - 'fix-gcc4.4-const-char.patch') -md5sums=('f6a3bc6e59d4f2af9db1b3fce257eb43' - '7bb0182949bf043847ad7ff66097e66f') - -_svnuser=mupen64 -_svnpass=Dyson5632-kart -_svntrunk=svn://$_svnuser:$_svnpass@fascination.homelinux.net:7684/mupen64plus/trunk -_svnmod=mupen64plus - -build() { - if [ -d $_svnmod/.svn ]; then - (cd $_svnmod &&\ - svn up --config-dir . -r $pkgver \ - --non-interactive --username $_svnuser --password $_svnpass) - else - svn co $_svntrunk --config-dir . -r $pkgver $_svnmod \ - --non-interactive --username $_svnuser --password $_svnpass - fi - msg "SVN checkout done or server timeout" - - cp -r $_svnmod $_svnmod-build - patch -d $_svnmod-build < install.patch || return 1 -# patch -p0 -d $_svnmod-build < fix-gcc4.4-const-char.patch || return 1 - cd $_svnmod-build - - make PREFIX="/usr" LIRC=1 all || return 1 - make PREFIX="$pkgdir/usr" install || return 1 - - ##### Qt 4 GUI build ##### - #==> Currently broken - #make PREFIX="/usr" GUI=QT4 all || return 1 - #install -m755 mupen64plus "$pkgdir/usr/bin/mupen64plus-qt" - # - #cd "$pkgdir/usr/share/applications" - #cp mupen64plus.desktop mupen64plus-qt.desktop - #sed -i "s#Name=Mupen64Plus#Name=Mupen64Plus (Qt)#" mupen64plus-qt.desktop || return 1 - #sed -i "s#Exec=mupen64plus#Exec=mupen64plus-qt#" mupen64plus-qt.desktop || return 1 - ##### End Qt 4 GUI build ##### - - rm -r "$srcdir/$_svnmod-build" -} diff --git a/abs/extra/mupen64plus-svn/fix-gcc4.4-const-char.patch b/abs/extra/mupen64plus-svn/fix-gcc4.4-const-char.patch deleted file mode 100644 index fd1495d..0000000 --- a/abs/extra/mupen64plus-svn/fix-gcc4.4-const-char.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- glide64/Combine.old.cpp 2009-06-19 17:59:20.191723065 -0400 -+++ glide64/Combine.cpp 2009-06-19 18:43:46.955453868 -0400 -@@ -11873,7 +11873,7 @@ - LOG ("InitCombine() "); - memset(&cmb, 0, sizeof(cmb)); - const char *extensions = grGetString (GR_EXTENSION); -- if (char * extstr = strstr(extensions, "COMBINE")) { -+ if (const char * extstr = strstr(extensions, "COMBINE")) { - if (!strncmp(extstr, "COMBINE", 7)) { - LOG ("extensions "); - cmb.grColorCombineExt = (GRCOLORCOMBINEEXT) grGetProcAddress("grColorCombineExt"); ---- glide64/Main.old.cpp 2009-06-19 18:47:04.238930057 -0400 -+++ glide64/Main.cpp 2009-06-19 18:47:18.018772876 -0400 -@@ -784,7 +784,7 @@ - printf("bebefore2\n"); - if (settings.fb_hires) - { -- if (char * extstr = strstr(extensions, "TEXTUREBUFFER")) -+ if (const char * extstr = strstr(extensions, "TEXTUREBUFFER")) - { - if (!strncmp(extstr, "TEXTUREBUFFER", 13)) - { diff --git a/abs/extra/mupen64plus-svn/install.patch b/abs/extra/mupen64plus-svn/install.patch deleted file mode 100644 index 5e41460..0000000 --- a/abs/extra/mupen64plus-svn/install.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: install.sh -=================================================================== ---- install.sh (revision 1295) -+++ install.sh (working copy) -@@ -90,7 +90,7 @@ - if [ -f mupen64plus.desktop ] - then - $INSTALL -d -v "${APPLICATIONSDIR}" -- $INSTALL -m 0644 mupen64plus.desktop "${APPLICATIONSDIR}" -+ $INSTALL -m 0644 mupen64plus.desktop "${APPLICATIONSDIR}/mupen64plus.desktop" - fi - if [ "x$(ls plugins/)" != "x" ] - then diff --git a/abs/extra/mutt/PKGBUILD b/abs/extra/mutt/PKGBUILD deleted file mode 100644 index c481eec..0000000 --- a/abs/extra/mutt/PKGBUILD +++ /dev/null @@ -1,39 +0,0 @@ -# $Id: PKGBUILD 50055 2009-08-19 01:49:30Z thayer $ -# Maintainer: tobias [tobias [at] archlinux.org] -pkgname=mutt -pkgver=1.5.20 -pkgrel=2 -pkgdesc="A small but very powerful text-based mail client" -arch=(i686 x86_64) -license=('GPL') -url="http://www.mutt.org/" -depends=('slang' 'openssl>=0.9.8e' 'gdbm' 'mime-types' 'zlib' 'libsasl' 'gpgme') -makedepends=('gnupg') -install=${pkgname}.install -source=(ftp://ftp.mutt.org/mutt/devel/${pkgname}-${pkgver}.tar.gz - mutt-unmailbox.patch) -url="http://www.mutt.org/" -md5sums=('027cdd9959203de0c3c64149a7ee351c' - 'fa8e03a49a2fa7b294dc8237d928cdb7') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - # patch a segfault bug in 1.5.20 -- remove for next release - patch -p1 < ${srcdir}/mutt-unmailbox.patch || return 1 - #patch -Np1 -i ../mutt-unmailbox.patch || exit 1 - - ./configure --prefix=/usr --sysconfdir=/etc \ - --enable-pop --enable-imap --enable-smtp \ - --with-sasl --with-ssl=/usr --without-idn \ - --enable-hcache --enable-pgp --enable-inodesort \ - --enable-compressed --with-regex \ - --enable-gpgme --with-slang=/usr - make || return 1 - make DESTDIR=${pkgdir} install - rm -f ${pkgdir}/usr/bin/{flea,muttbug} - rm -f ${pkgdir}/usr/share/man/man1/{flea,muttbug}.1 - rm -f ${pkgdir}/etc/mime.types* - install -Dm644 contrib/gpg.rc ${pkgdir}/etc/Muttrc.gpg.dist -} - diff --git a/abs/extra/mutt/mutt-unmailbox.patch b/abs/extra/mutt/mutt-unmailbox.patch deleted file mode 100644 index cbb3210..0000000 --- a/abs/extra/mutt/mutt-unmailbox.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/buffy.c 2009-08-10 08:23:12.731846990 -0400 -+++ b/buffy.c 2009-08-10 08:23:50.541878087 -0400 -@@ -236,7 +236,6 @@ - { - if(*tmp) - { -- FREE (&((*tmp)->path)); - tmp1=(*tmp)->next; - FREE (tmp); /* __FREE_CHECKED__ */ - *tmp=tmp1; diff --git a/abs/extra/mutt/mutt.install b/abs/extra/mutt/mutt.install deleted file mode 100644 index 98ece96..0000000 --- a/abs/extra/mutt/mutt.install +++ /dev/null @@ -1,15 +0,0 @@ -# arg 1: the new package version -post_install() { - cat << EOM - ---> to support gpg, please use the following line in your ~/.muttrc - -source /etc/Muttrc.gpg.dist - -EOM -} - -post_upgrade() { - post_install $1 -} - diff --git a/abs/extra/myt2xvid3/PKGBUILD b/abs/extra/myt2xvid3/PKGBUILD deleted file mode 100755 index abd7cb5..0000000 --- a/abs/extra/myt2xvid3/PKGBUILD +++ /dev/null @@ -1,18 +0,0 @@ -pkgname=myt2xvid3 -pkgver=0.1 -pkgrel=9 -arch=("i686") -pkgdesc="A multimedia framework based on the MPEG-4 Systems standard" -url="http://www.knoppmythwiki.org/index.php?page=XvidEncoding" -depends=('nuvexport') -install="myt2xvid3.install" -source=( myt2xvid3 myt2xvid3-userjob.sh archive.php) - - -build() { - cd $startdir/src - install -D -m 755 myt2xvid3 $startdir/pkg/usr/bin/myt2xvid3 - install -D -m 755 myt2xvid3-userjob.sh $startdir/pkg/usr/bin/myt2xvid3-userjob.sh - mkdir -m777 -p $startdir/pkg/myth/video/archive/ - install -D -m 755 archive.php $startdir/pkg/myth/video/archive/ -} diff --git a/abs/extra/myt2xvid3/archive.php b/abs/extra/myt2xvid3/archive.php deleted file mode 100644 index f970868..0000000 --- a/abs/extra/myt2xvid3/archive.php +++ /dev/null @@ -1,159 +0,0 @@ -<? -//archive.php -// based on m2iweb.php by http://anthony.lusby.us/m2iweb/ -//release 0.1 -//10/05/07 -?> - -<html> -<head> - <title>MythWeb - Archive Recordings</title> - - <meta http-equiv="content-type" content="text/html; charset=utf-8" /> - - <script type="text/javascript" src="/mythweb/js/init.js"></script> - <script type="text/javascript" src="/mythweb/js/browser.js"></script> - <script type="text/javascript" src="/mythweb/js/utils.js"></script> - - <script type="text/javascript" src="/mythweb/js/mouseovers.js"></script> - <script type="text/javascript" src="/mythweb/js/visibility.js"></script> - <script type="text/javascript" src="/mythweb/js/ajax.js"></script> - - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/style.css" /> - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/header.css" /> - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/menus.css" /> - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/programming.css" /> - - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/status.css" /> - -</head> - -<body> - -<div id="page_header" class="clearfix"> - <div id="logo_box"> - <a id="mythtv_logo" href="/mythweb/"> - <img src="/mythweb/skins/default/img/mythtv-logo.png" -width="174" height="48" border="0" alt="MythTV" class="alpha_png"> - </a> - - </div> - <div id="sections"> - <a id="tv_link" href="/mythweb/tv" onmouseover="return help_text('TV functions, including recorded programs.')" onmouseout="return help_text()"> - <img src="/mythweb/skins/default/img/tv.png" width="48" height="48" class="alpha_png" alt="MythTV"/> - </a> - <a id="video_link" href="/mythweb/video" onmouseover="return help_text('MythVideo on the web.')" onmouseout="return help_text()"> - <img src="/mythweb/skins/default/img/video.png" width="48" height="48" class="alpha_png" alt="MythVideo" /> - </a> - <a id="weather_link" href="/mythweb/weather" onmouseover="return help_text('MythWeb Weather.')" onmouseout="return help_text()"> - <img src="/mythweb/skins/default/img/weather.png" width="48" height="48" class="alpha_png" alt="MythWeather" /> - </a> - <a id="settings_link" href="/mythweb/settings" onmouseover="return help_text('Edit MythWeb and some MythTV settings.')" onmouseout="return help_text()"> - <img src="/mythweb/skins/default/img/settings.png" width="48" height="48" class="alpha_png" alt="Settings" /> - </a> - </div> - <div id="extra_header"> - <div id="help_wrapper"> - <div id="help_box"> - - <div id="help_text_default"> - MythWeb: Mon May 16, 2006, 09:09 PM </div> - <div id="help_text"> - </div> - </div> - </div> - <div id="search" > - <form action="/mythweb/tv/search" method="post"> - - <div id="simple_search"> - <input id="search_text" type="text" name="searchstr" size="15" value=""> - <input id="search_submit" type="submit" class="submit" value="Search"> (<a href="/mythweb/tv/search">Advanced</a>) - </div> - <div id="search_options"> - </div> - </form> - - </div> - </div> -</div> - - -<table width="100%" border="0" cellspacing="2" cellpadding="0"> -<tr> - - <td colspan="2" class="menu menu_border_t menu_border_b"><table class="body" width="100%" border="0" - -cellspacing="2" cellpadding="2"> - <tr> - <td><div id="command_choices"> - <a href="/mythweb/" id="category_legend" onmouseover="popup('category_legend'); return true;">MythTV:</a> - - <a href="/mythweb/tv/list">Listings</a> - | - <a href="/mythweb/tv/searches">Searches</a> - | - <a href="/mythweb/tv/schedules">Recording Schedules</a> - (<a href="/mythweb/tv/schedules/manual">Manual</a>, - <a href="/mythweb/tv/schedules/custom">Custom</a>) - | - <a href="/mythweb/tv/upcoming">Upcoming Recordings</a> - | - <a href="/mythweb/tv/recorded">Recorded Programs</a> - | - <a href="/ipodfeed/m2iweb.php">Myth2iPod</a> - | - <a href="/archive/archive.php">Myt2XviD3</a> - | - <a href="/mythweb/status">Backend Status</a> - </div></td> - </tr> - </table></td> - -</tr> -</table> - -<table width="100%" border="0" cellpadding="4" cellspacing="2" class="list small"> -<tr><td colspan="10" class="list_separator">View and delete recordings transcoded to XviD via Myt2XviD3.</td></tr> -<?php -if (isset($_REQUEST['delete'])){ - $delete = $_REQUEST['delete']; - if ($delete AND substr($delete, -9) == ".XviD.xml") { - echo '<tr><td colspan="10" class="list_separator"> - <font color="red">'; - echo $delete; - unlink($delete) or print(" failed to be "); - echo ' has been deleted, '; - $deletetoo = substr($delete, 0, -3)."avi"; - echo $deletetoo; - unlink($deletetoo) or print(" failed to be "); - echo ' has been deleted.'; - echo'</td></tr>'; - } -} - $i=1; - foreach (glob("*.XviD.xml") as $file) { - $lines = file($file); - echo '<tr class="recorded"><td class="list"> </td><td>'; - echo '<font color="'; - if (!file_exists(substr($file, 0, -3)."avi")) { - echo "red"; - } - echo '">'.$i.'</font>'; - echo "</td></td><td><a href=".'"'.substr($file, 0, -3)."avi".'"'."style='color:white'>".strip_tags($lines[1])."</a></td><td>".strip_tags($lines[7])."</td><td>".strip_tags($lines[6])."</td><td nowrap>".filesizeparse(filesize(substr($file, 0, -3)."avi"))."</td><td>".'<a href="?delete='.$file.'" onclick="return confirm('."'Are you sure you want to delete?'".')">Delete</a>'."</td>".'<td class="list"> </td>'."</tr>"; - $i++; - } -//} - -function filesizeparse($size){ - $i=0; - $iec = array(" B", " KB", " MB", " GB", " TB"); - while (($size/1024)>1) { - $size=$size/1024; - $i++; - } - return substr($size,0,strpos($size,'.')+3).$iec[$i]; -} -?> -</table> -</body> -</html> diff --git a/abs/extra/myt2xvid3/myt2xvid3 b/abs/extra/myt2xvid3/myt2xvid3 deleted file mode 100755 index af65188..0000000 --- a/abs/extra/myt2xvid3/myt2xvid3 +++ /dev/null @@ -1,310 +0,0 @@ -#!/usr/bin/perl -w
-# VERSION: 1.0b2 - myth2ipod
-# Get the latest version, and change log at myth2ipod.com
-# Author: Chris aka Wififun - email: wififun@myth2ipod.com
-# Contributions and testing by Paul Egli
-# modified to use nuvexport by starv at juniks dot org
-
-# Includes
-use DBI;
-use Getopt::Long;
-use File::Path;
-
-# User variables
-my $portable = "XviD";
-my $feedfile = "/myth/video/archive/feed.php";
-my $feedpath = "/myth/video/archive/";
-my $wwwloc = "/data/srv/httpd/htdocs";
-my $feedurl = "http://REPLACEME/archive/";
-my $nuvoptions ="--mode=XviD --nice=19 --cutlist --nodenoise --nodeinterlace --crop --multipass";
-
-# Some variables
-our ($dest, $format, $usage);
-our ($db_host, $db_user, $db_name, $db_pass, $video_dir);
-our ($hostname, $db_handle, $sql, $statement, $row_ref);
-our ($chanid, $start, $nuvfile, @nuvarray);
-my $rebuild = '0';
-my $encode = '0';
-my $debug = '0';
-my $setup = '0';
-my $cut = '0';
-my( $rightnow ) = `date`;
-
-GetOptions ("rebuild" => \$rebuild,
- "encode" => \$encode,
- "debug" => \$debug,
- "setup" => \$setup,
- "cut" => \$cut);
-
-if ($setup == 1){
- system("clear");
- print "Setup will do everything needed to run this script.\n";
- print "This has only been tested on KnoppMyth R5A22.\n";
- print "make sure you have edited the variables for your conguration.\n";
- my $cksetup = &promptUser("\nAre you sure you want to procceed?","n");
- if ($cksetup =~ "y") {
- DoSetup();
- exit;
- }
- print "Setup exited. Nothing done.\n";
- exit;
-}
-elsif ($rebuild == 1){
- GenerateRSSFeed();
- print "Rebuilding of RSS feed is complete.\n";
- exit;
-}
-else {
- Encode4Portable();
- print "$title is ready for your $portable\n";
-
- # Check to see if the feed file exists; if not, create it.
- if (! -e $feedfile) {
- print "No feed file found. I will make one for you.\n";
- GenerateRSSFeed();
- print "All done.\n";
- }
-}
-
-sub Encode4Portable{
- if ($#ARGV != 1) {
- print "Encoding requires options.\nusage: myth2ipod <options> DIRECTORY FILE\n";
- exit;
- }
-
- # Get the show information
- $directory = $ARGV[0];
- $file = $ARGV[1];
- @file = split(/_/, $file);
- $chanid = $file[0];
- $start = substr $file[1],0,14;
- if($debug == 1){ print "$chanid\n$start\n"};
- if (! -e $directory."/".$file){
- print "Oops, the file ".$directory.$file." does not exist.\n";
- exit;
- }
-
- # Connect to the database
- PrepSQLRead();
- $db_handle = DBI->connect("dbi:mysql:database=$db_name:host=$db_host", $db_user, $db_pass)
- or die "Cannot connect to database: $!\n\n";
- $sql = "SELECT title, subtitle, description, category, starttime FROM recorded WHERE chanid = $chanid AND DATE_FORMAT(starttime,'%Y%m%d%H%i%s') = $start";
-
- $statement = $db_handle->prepare($sql)
- or die "Couldn't prepare query '$sql': $DBI::errstr\n";
-
- $statement->execute()
- or die "Couldn't execute query '$sql': $DBI::errstr\n";
- $row_ref = $statement->fetchrow_hashref();
- if($debug == 1){ print "$row_ref->{starttime}\n"};
- $title = $row_ref->{title};
- $subtitle = $row_ref->{subtitle};
- $recorddate = $row_ref->{starttime};
- $description = $row_ref->{description};
- $category = $row_ref->{category};
- $filename = $title."-".$subtitle."-".substr $start, 0, 8;
- $filename =~ s/ /_/g;
- $filename =~ s/&/+/g;
- $filename =~ s/\047//g;
- $filename =~ s/[^+0-9a-zA-Z_-]+/_/g;
- $filename =~ s/_$//g;
-
- printf("Starting nuvexport...\n");
- EncodeIt();
- printf("Nuvexport completed, starting xml generation...\n");
- CreateItemXML();
- printf("XML file created for \"$filename\" : Yipeee\n");
- printf("Cleaning up temporary files\n");
- $cmd = "rm -f $feedpath$chanid\_$start.temp.mp4";
- print $cmd."\n";
- if(system($cmd)) { print "Removing nuvexport temp file failed\n"; }
-
- # remove the cutlist incase we added it.
- if ($cut == 1){
- printf("Generating cutlist\n");
- $cmd = "/usr/bin/mythcommflag --chanid $chanid --starttime $start --clearcutlist";
- print $cmd."\n";
- if(system($cmd)) { print "It looks like I was not able to generate a cutlist.\n"; }
- }
- return 0;
-}
-
-#
-# Encode for Portable
-#
-sub EncodeIt {
- # Create cutlist from commercial flagging if -cut was passed to the script
- if ($cut == 1){
- printf("Generating cutlist\n");
- $cmd = "/usr/bin/mythcommflag --chanid $chanid --starttime $start --gencutlist";
- print $cmd."\n";
- if(system($cmd)) { print "It looks like I was not able to generate a cutlist.\n"; }
- }
-
- # Use nuvexport to do the work
- $cmd = "/usr/bin/nuvexport --chanid=$chanid --start=$start $nuvoptions --filename=$chanid\_$start.$portable --path=$feedpath";
- print $cmd."\n";
- if(system($cmd)) { print "Nuvexport encoding seems to have failed\n"; }
-
- # Now clean up the output so iPods with firmware 1.1 and above can use it
- #$cmd = "/usr/local/bin/MP4Box -add $feedpath$chanid\_$start.temp.mp4 $feedpath$chanid\_$start.$portable.mp4";
- #print $cmd."\n";
- #if(system($cmd)) { print "MP4Box cleanup seems to have failed\n"; }
- return 0;
-}
-
-#
-# Create XML with <ITEM> tag for this video file
-#
-sub CreateItemXML {
- open(ITEM, ">$feedpath$chanid\_$start.$portable.xml");
- print ITEM "<item>\n";
- print ITEM "<title>".&encodeForXML($title." - ".$subtitle)."</title>\n";
- print ITEM "<itunes:author>MythTV</itunes:author>\n";
- print ITEM "<author>MythTV</author>\n";
- print ITEM "<itunes:category text=\"TV Shows\"></itunes:category>\n";
- print ITEM "<comments>".&encodeForXML($file)."</comments>\n";
- print ITEM "<description>".&encodeForXML($description)."</description>\n";
- print ITEM "<pubDate>".$recorddate."</pubDate>\n";
- print ITEM "<enclosure url=\"".&encodeForXML("$feedurl$chanid\_$start.$portable.avi")."\" type=\"video/quicktime\" />\n";
- print ITEM "<itunes:duration></itunes:duration>\n";
- print ITEM "<itunes:keywords>".&encodeForXML($title." - ".$subtitle." - ".$category)."</itunes:keywords>\n";
- print ITEM "<category>".&encodeForXML($category)."</category>\n";
- print ITEM "</item>\n";
- print "\"$filename\" has been added to the feed.\n";
- close(ITEM);
- return 0;
-}
-
-#
-# Generate the RSS feed by combining the ITEM XML Files
-#
-sub GenerateRSSFeed {
-
- open(RSS, ">$feedfile");
- print RSS "<?php\n";
- print RSS "header(\"Content-Type: text/xml\");\n";
- print RSS "echo \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\"; ?>\n";
- print RSS "<rss xmlns:itunes=\"http://www.itunes.com/DTDs/Podcast-1.0.dtd\" version=\"2.0\">\n";
- print RSS "<channel>\n";
- print RSS "<title>MythTV - <? if (\$_GET['title'] == \"\") { \$title = \"*\"; echo \"Recorded Programs\"; }\n";
- print RSS "else { \$title = \$_GET['title']; echo str_replace(\"_\",\" \",\$_GET['title']); } ?> </title>\n";
- print RSS "<itunes:author>MythTV - myth2ipod</itunes:author>\n";
- print RSS "<link>".&encodeForXML($feedurl)."</link>\n";
- print RSS "<itunes:subtitle>Transcoded recording for your iPod Video.</itunes:subtitle>\n";
- print RSS "<itunes:summary>Myth TV Recorded Programs for the iPod v.1</itunes:summary>\n";
- print RSS "<description>Myth TV Recorded Programs for the iPod v.1</description>\n";
- print RSS "<itunes:owner>\n";
- print RSS "<itunes:name>MythTV</itunes:name>\n";
- print RSS "<itunes:email>mythtv\@localhost</itunes:email>\n";
- print RSS "</itunes:owner>\n";
- print RSS "<itunes:explicit>No</itunes:explicit>\n";
- print RSS "<language>en-us</language>\n";
- print RSS "<copyright>Copyright 2005.</copyright>\n";
- print RSS "<webMaster>mythtv\@localhost</webMaster>\n";
- print RSS "<itunes:image href=\"http://myth2ipod.com/mythipod_200.jpg\" />\n";
- print RSS "<itunes:category text=\"TV Shows\"></itunes:category>\n";
- print RSS "<category>TV Shows</category>\n";
- print RSS "<itunes:image href=\"http://myth2ipod.com/mythipod_200.jpg\"/>";
- print RSS "<image>";
- print RSS "<url>http://myth2ipod.com/mythipod_200.jpg</url>\n";
- print RSS "<title>MythTV 2 iPod</title>\n";
- print RSS "<link>".&encodeForXML($feedurl)."</link>\n";
- print RSS "<width>200</width>\n";
- print RSS "<height>200</height>\n";
- print RSS "</image>\n";
- print RSS "<? foreach (glob(\$title\.\"*\.$portable\.xml\") as \$file) {include \$file;} ?>\n";
- print RSS "</channel>\n";
- print RSS "</rss>\n";
- close(RSS);
- if($debug == 1){ print "I created a feed file, was I supposed to?\n"};
-
- return 0;
-}
-
-# substitute for XML entities
-sub encodeForXML {
- local $result;
- $result = $_[0];
- $result =~ s/&/&/g;
- $result =~ s/</</g;
- $result =~ s/>/>/g;
- $result;
-}
-
-
-#
-# This code taken from one of the mythlink.sh scripts to get MySQL information
-#
-sub PrepSQLRead{
-# Get the hostname of this machine
- $hostname = `hostname`;
- chomp($hostname);
-
-# Read the mysql.txt file in use by MythTV.
-# could be in a couple places, so try the usual suspects
- my $found = 0;
- my @mysql = ('/usr/local/share/mythtv/mysql.txt',
- '/usr/share/mythtv/mysql.txt',
- '/etc/mythtv/mysql.txt',
- '/usr/local/etc/mythtv/mysql.txt',
- "$ENV{HOME}/.mythtv/mysql.txt",
- 'mysql.txt'
- );
- foreach my $file (@mysql) {
- next unless (-e $file);
- $found = 1;
- open(CONF, $file) or die "Unable to open $file: $!\n\n";
- while (my $line = <CONF>) {
- # Cleanup
- next if ($line =~ /^\s*#/);
- $line =~ s/^str //;
- chomp($line);
- # Split off the var=val pairs
- my ($var, $val) = split(/\=/, $line, 2);
- next unless ($var && $var =~ /\w/);
- if ($var eq 'DBHostName') {
- $db_host = $val;
- }
- elsif ($var eq 'DBUserName') {
- $db_user = $val;
- }
- elsif ($var eq 'DBName') {
- $db_name = $val;
- }
- elsif ($var eq 'DBPassword') {
- $db_pass = $val;
- }
- # Hostname override
- elsif ($var eq 'LocalHostName') {
- $hostname = $val;
- }
- }
- close CONF;
- }
- die "Unable to locate mysql.txt: $!\n\n" unless ($found && $db_host);
- return 0;
-}
-
-sub promptUser {
- local($promptString,$defaultValue) = @_;
- if ($defaultValue) {
- print $promptString, "[", $defaultValue, "]: ";
- } else {
- print $promptString, ": ";
- }
-
- $| = 1; # force a flush after our print
- $_ = <STDIN>; # get the input from STDIN (presumably the keyboard)
- chomp;
- if ("$defaultValue") {
- return $_ ? $_ : $defaultValue; # return $_ if it has a value
- } else {
- return $_;
- }
-}
-
-sub DoSetup {
- print "\nNot ready yet. How do you send the cd command from perl?\n";
- return 0;
-}
diff --git a/abs/extra/myt2xvid3/myt2xvid3-userjob.sh b/abs/extra/myt2xvid3/myt2xvid3-userjob.sh deleted file mode 100755 index 6bd46ea..0000000 --- a/abs/extra/myt2xvid3/myt2xvid3-userjob.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -. /etc/profile -#su mythtv -c "TERM=vt100 /usr/bin/myth2ipod "$1" "$2" >/tmp/logfile" -su mythtv -c "TERM=vt100 /usr/bin/myt2xvid3 "$1" "$2" " -#or to also use commercial flagging cutlist -#su mythtv -c "TERM=vt100 /usr/bin/myth2ipod -cut "$1" "$2" >/tmp/logfile" diff --git a/abs/extra/myt2xvid3/myt2xvid3.install b/abs/extra/myt2xvid3/myt2xvid3.install deleted file mode 100755 index b3767f3..0000000 --- a/abs/extra/myt2xvid3/myt2xvid3.install +++ /dev/null @@ -1,38 +0,0 @@ - -pre_install() { - mkdir -p /myth/video/archive - chown mythtv:http /myth/video/archive -} - -pre_upgrade() { - pre_install -} - -pre_remove() { - pre_install -} - -post_install() { - . /etc/systemconfig - ln -s /myth/video/archive /data/srv/httpd/htdocs/archive - ln -s /myth/video/archive/archive.php /myth/video/archive/index.php - sed -i -e "s/REPLACEME/$HOSTNAME/g" /usr/bin/myt2xvid3 - chown -R mythtv:http /myth/video/archive - /usr/bin/myt2xvid3 -rebuild -} - -post_upgrade() { - /usr/bin/myt2xvid3 -rebuild -} - -post_remove() { - rm -fr /data/srv/http/htdocs/archive - rm -rf /myth/video/archive/index.php - rm -rf /myth/video/archive/archive.php - # don't delete content that the user may still want, so leave /myth/video/archive -} - -op=$1 -shift - -$op $* diff --git a/abs/extra/myth2ipod/PKGBUILD b/abs/extra/myth2ipod/PKGBUILD deleted file mode 100755 index 2c7540b..0000000 --- a/abs/extra/myth2ipod/PKGBUILD +++ /dev/null @@ -1,19 +0,0 @@ -pkgname=myth2ipod -pkgver=0.2 -pkgrel=29 -arch=("i686") -pkgdesc="A multimedia framework based on the MPEG-4 Systems standard" -url="myth2ipod.com" -depends=('gpac' 'nuvexport' ) -install="myth2ipod.install" -source=( myth2ipod iPod.pm myth2ipod-userjob.sh m2iweb.php) - - -build() { - cd $startdir/src - install -D -m 755 myth2ipod $startdir/pkg/usr/bin/myth2ipod - install -D -m 755 myth2ipod-userjob.sh /$startdir/pkg/usr/bin/myth2ipod-userjob.sh - install -D -m755 iPod.pm $startdir/pkg/usr/share/nuvexport/export/ffmpeg/iPod.pm - mkdir -m755 -p $startdir/pkg/myth/ipodfeed - install -D -m755 m2iweb.php $startdir/pkg/myth/ipodfeed/ -} diff --git a/abs/extra/myth2ipod/iPod.pm b/abs/extra/myth2ipod/iPod.pm deleted file mode 100755 index 24eae99..0000000 --- a/abs/extra/myth2ipod/iPod.pm +++ /dev/null @@ -1,184 +0,0 @@ -# -# $Date: 2006-01-18 00:15:31 -0800 (Wed, 18 Jan 2006) $ -# $Revision: 226 $ -# $Author: xris $ -# -# export::ffmpeg::iPod -# - -package export::ffmpeg::iPod; - use base 'export::ffmpeg'; - -# Load the myth and nuv utilities, and make sure we're connected to the database - use nuv_export::shared_utils; - use nuv_export::cli; - use nuv_export::ui; - use mythtv::db; - use mythtv::recordings; - -# Load the following extra parameters from the commandline - add_arg('quantisation|q=i', 'Quantisation'); - add_arg('a_bitrate|a=i', 'Audio bitrate'); - add_arg('v_bitrate|v=i', 'Video bitrate'); - add_arg('multipass!', 'Enably two-pass encoding.'); - - sub new { - my $class = shift; - my $self = { - 'cli' => qr/\bipod\b/i, - 'name' => 'Export to iPod', - 'enabled' => 1, - 'errors' => [], - 'defaults' => {}, - }; - bless($self, $class); - - # Initialize the default parameters - $self->load_defaults(); - - # Verify any commandline or config file options - die "Audio bitrate must be > 0\n" unless (!defined $self->val('a_bitrate') || $self->{'a_bitrate'} > 0); - die "Video bitrate must be > 0\n" unless (!defined $self->val('v_bitrate') || $self->{'v_bitrate'} > 0); - - # VBR, multipass, etc. - if ($self->val('multipass')) { - $self->{'vbr'} = 0; - } - elsif ($self->val('quantisation')) { - die "Quantisation must be a number between 1 and 31 (lower means better quality).\n" if ($self->{'quantisation'} < 1 || $self->{'quantisation'} > 31); - $self->{'vbr'} = 1; - } - - # Initialize and check for ffmpeg - $self->init_ffmpeg(); - - # Can we even encode ipod? - # if (!$self->can_encode('mov')) { - # push @{$self->{'errors'}}, "Your ffmpeg installation doesn't support encoding to mov file formats."; - # } - if (!$self->can_encode('xvid')) { - push @{$self->{'errors'}}, "Your ffmpeg installation doesn't support encoding to xvid video."; - } - if (!$self->can_encode('aac')) { - push @{$self->{'errors'}}, "Your ffmpeg installation doesn't support encoding to aac audio."; - } - # Any errors? disable this function - $self->{'enabled'} = 0 if ($self->{'errors'} && @{$self->{'errors'}} > 0); - # Return - return $self; - } - -# Load default settings - sub load_defaults { - my $self = shift; - # Load the parent module's settings - $self->SUPER::load_defaults(); - # Default bitrates - $self->{'defaults'}{'v_bitrate'} = 384; - $self->{'defaults'}{'a_bitrate'} = 64; - } - -# Gather settings from the user - sub gather_settings { - my $self = shift; - # Load the parent module's settings - $self->SUPER::gather_settings(); - # Audio Bitrate - $self->{'a_bitrate'} = query_text('Audio bitrate?', - 'int', - $self->val('a_bitrate')); - # VBR options - if (!$is_cli) { - $self->{'vbr'} = query_text('Variable bitrate video?', - 'yesno', - $self->val('vbr')); - if ($self->{'vbr'}) { - $self->{'multipass'} = query_text('Multi-pass (slower, but better quality)?', - 'yesno', - $self->val('multipass')); - if (!$self->{'multipass'}) { - while (1) { - my $quantisation = query_text('VBR quality/quantisation (1-31)?', - 'float', - $self->val('quantisation')); - if ($quantisation < 1) { - print "Too low; please choose a number between 1 and 31.\n"; - } - elsif ($quantisation > 31) { - print "Too high; please choose a number between 1 and 31\n"; - } - else { - $self->{'quantisation'} = $quantisation; - last; - } - } - } - } else { - $self->{'multipass'} = 0; - } - # Ask the user what video bitrate he/she wants - $self->{'v_bitrate'} = query_text('Video bitrate?', - 'int', - $self->val('v_bitrate')); - } - } - - sub export { - my $self = shift; - my $episode = shift; - # Force to 4:3 aspect ratio - $self->{'out_aspect'} = 1.3333; - $self->{'aspect_stretched'} = 1; - # PAL or NTSC? - my $standard = ($episode->{'finfo'}{'fps'} =~ /^2(?:5|4\.9)/) ? 'PAL' : 'NTSC'; - $self->{'width'} = 320; - $self->{'height'} = ($standard eq 'PAL') ? '288' : '240'; - $self->{'out_fps'} = ($standard eq 'PAL') ? 25 : 29.97; - # Embed the title - my $safe_title = shell_escape($episode->{'show_name'}.' - '.$episode->{'title'}); - # Dual pass? - if ($self->{'multipass'}) { - # Build the common ffmpeg string - my $ffmpeg_xtra = ' -b ' . $self->{'v_bitrate'} - .' -bufsize 65535' - .' -vcodec xvid -acodec aac ' - .' -ab ' . $self->{'a_bitrate'} - ." -f mp4 -title $safe_title"; - # Add the temporary file to the list - push @tmpfiles, "/tmp/xvid.$$.log"; - # Back up the path and use /dev/null for the first pass - my $path_bak = $self->{'path'}; - $self->{'path'} = '/dev/null'; - # Build the ffmpeg string - print "First pass...\n"; - $self->{'ffmpeg_xtra'} = " -pass 1 -passlogfile '/tmp/divx.$$.log'" - .$ffmpeg_xtra; - $self->SUPER::export($episode, ''); - # Restore the path - $self->{'path'} = $path_bak; - # Second Pass - print "Final pass...\n"; - $self->{'ffmpeg_xtra'} = " -pass 2 -passlogfile '/tmp/divx.$$.log'" - .$ffmpeg_xtra; - } - # Single Pass - else { - $self->{'ffmpeg_xtra'} = ' -b ' . $self->{'v_bitrate'} - .(($self->{'vbr'}) - ? ' -qmin '.$self->{'quantisation'} - .' -qmax 31 -minrate 32' - .' -maxrate '.(2*$self->{'v_bitrate'}) - .' -bt 32' - : '') - .' -vcodec xvid -acodec aac ' - .' -ab ' . $self->{'a_bitrate'} - ." -f mp4 -title $safe_title"; - } - # Execute the (final pass) encode - $self->SUPER::export($episode, '.mp4'); - } - -1; #return true - -# vim:ts=4:sw=4:ai:et:si:sts=4 - diff --git a/abs/extra/myth2ipod/m2iweb.php b/abs/extra/myth2ipod/m2iweb.php deleted file mode 100755 index a8a9e4d..0000000 --- a/abs/extra/myth2ipod/m2iweb.php +++ /dev/null @@ -1,157 +0,0 @@ -<? -//archive.php -// based on m2iweb.php by http://anthony.lusby.us/m2iweb/ -//release 0.1 -//10/05/07 -?> - -<html> -<head> - <title>MythWeb - Archive Recordings</title> - - <meta http-equiv="content-type" content="text/html; charset=utf-8" /> - - <script type="text/javascript" src="/mythweb/js/init.js"></script> - <script type="text/javascript" src="/mythweb/js/browser.js"></script> - <script type="text/javascript" src="/mythweb/js/utils.js"></script> - - <script type="text/javascript" src="/mythweb/js/mouseovers.js"></script> - <script type="text/javascript" src="/mythweb/js/visibility.js"></script> - <script type="text/javascript" src="/mythweb/js/ajax.js"></script> - - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/style.css" /> - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/header.css" /> - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/menus.css" /> - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/programming.css" /> - - <link rel="stylesheet" type="text/css" href="/mythweb/skins/default/status.css" /> - -</head> - -<body> - -<div id="page_header" class="clearfix"> - <div id="logo_box"> - <a id="mythtv_logo" href="/mythweb/"> - <img src="/mythweb/skins/default/img/mythtv-logo.png" -width="174" height="48" border="0" alt="MythTV" class="alpha_png"> - </a> - - </div> - <div id="sections"> - <a id="tv_link" href="/mythweb/tv" onmouseover="return help_text('TV functions, including recorded programs.')" onmouseout="return help_text()"> - <img src="/mythweb/skins/default/img/tv.png" width="48" height="48" class="alpha_png" alt="MythTV"/> - </a> - <a id="video_link" href="/mythweb/video" onmouseover="return help_text('MythVideo on the web.')" onmouseout="return help_text()"> - <img src="/mythweb/skins/default/img/video.png" width="48" height="48" class="alpha_png" alt="MythVideo" /> - </a> - <a id="weather_link" href="/mythweb/weather" onmouseover="return help_text('MythWeb Weather.')" onmouseout="return help_text()"> - <img src="/mythweb/skins/default/img/weather.png" width="48" height="48" class="alpha_png" alt="MythWeather" /> - </a> - <a id="settings_link" href="/mythweb/settings" onmouseover="return help_text('Edit MythWeb and some MythTV settings.')" onmouseout="return help_text()"> - <img src="/mythweb/skins/default/img/settings.png" width="48" height="48" class="alpha_png" alt="Settings" /> - </a> - </div> - <div id="extra_header"> - <div id="help_wrapper"> - <div id="help_box"> - - <div id="help_text_default"> - MythWeb: Mon May 16, 2006, 09:09 PM </div> - <div id="help_text"> - </div> - </div> - </div> - <div id="search" > - <form action="/mythweb/tv/search" method="post"> - - <div id="simple_search"> - <input id="search_text" type="text" name="searchstr" size="15" value=""> - <input id="search_submit" type="submit" class="submit" value="Search"> (<a href="/mythweb/tv/search">Advanced</a>) - </div> - <div id="search_options"> - </div> - </form> - - </div> - </div> -</div> - - -<table width="100%" border="0" cellspacing="2" cellpadding="0"> -<tr> - - <td colspan="2" class="menu menu_border_t menu_border_b"><table class="body" width="100%" border="0" - -cellspacing="2" cellpadding="2"> - <tr> - <td><div id="command_choices"> - <a href="/mythweb/" id="category_legend" onmouseover="popup('category_legend'); return true;">MythTV:</a> - - <a href="/mythweb/tv/list">Listings</a> - | - <a href="/mythweb/tv/searches">Searches</a> - | - <a href="/mythweb/tv/schedules">Recording Schedules</a> - (<a href="/mythweb/tv/schedules/manual">Manual</a>, - <a href="/mythweb/tv/schedules/custom">Custom</a>) - | - <a href="/mythweb/tv/upcoming">Upcoming Recordings</a> - | - <a href="/mythweb/tv/recorded">Recorded Programs</a> - | - <a href="/ipodfeed/m2iweb.php">Myth2iPod</a> - | - <a href="/archive/archive.php">Myt2XviD3</a> - | - <a href="/mythweb/status">Backend Status</a> - </div></td> - </tr> - </table></td> - -</tr> -</table> -<table width="100%" border="0" cellpadding="4" cellspacing="2" class="list small"> -<tr><td colspan="10" class="list_separator">View information and delete myth2ipod recordings.</td></tr> -<?php -if (isset($_REQUEST['delete'])){ -$delete = $_REQUEST['delete']; -if ($delete AND substr($delete, -9) == ".ipod.xml") { - echo '<br><font color="red">'; - echo $delete; - unlink($delete) or print(" failed to be "); - echo 'deleted<br>'; - $deletetoo = substr($delete, 0, -3)."mp4"; - echo $deletetoo; - unlink($deletetoo) or print(" failed to be "); - echo 'deleted<br><br><a href="?">Home</a>'; -} -} -else { - $i=1; - foreach (glob("*.ipod.xml") as $file) { - $lines = file($file); - echo '<tr class="recorded"><td class="list"> </td><td>'; - echo '<font color="'; - if (!file_exists(substr($file, 0, -3)."mp4")) { - echo "red"; - } - echo '">'.$i.'</font>'; - echo "</td></td><td><a href=".'"'.substr($file, 0, -3)."mp4".'"'."style='color:white'>".strip_tags($lines[1])."</a></td><td>".strip_tags($lines[7])."</td><td>".strip_tags($lines[6])."</td><td nowrap>".filesizeparse(filesize(substr($file, 0, -3)."mp4"))."</td><td>".'<a href="?delete='.$file.'" onclick="return confirm('."'Are you sure you want to delete?'".')">Delete</a>'."</td>".'<td class="list"> </td>'."</tr>"; - $i++; - } -} -function filesizeparse($size){ - $i=0; - $iec = array(" B", " KB", " MB", " GB", " TB"); - while (($size/1024)>1) { - $size=$size/1024; - $i++; - } - return substr($size,0,strpos($size,'.')+3).$iec[$i]; -} -?> -</table> -</body> -</html> -</code> diff --git a/abs/extra/myth2ipod/myth2ipod b/abs/extra/myth2ipod/myth2ipod deleted file mode 100755 index baf749e..0000000 --- a/abs/extra/myth2ipod/myth2ipod +++ /dev/null @@ -1,310 +0,0 @@ -#!/usr/bin/perl -w -# VERSION: 1.0b2 - myth2ipod -# Get the latest version, and change log at myth2ipod.com -# Author: Chris aka Wififun - email: wififun@myth2ipod.com -# Contributions and testing by Paul Egli -# modified to use nuvexport by starv at juniks dot org - -# Includes -use DBI; -use Getopt::Long; -use File::Path; - -# User variables -my $portable = "ipod"; -my $feedfile = "/myth/ipodfeed/feed.php"; -my $feedpath = "/myth/ipodfeed/"; -my $wwwloc = "/data/srv/httpd/htdocs"; -my $feedurl = "http://REPLACEME/ipodfeed/"; -my $nuvoptions ="--mode=iPod --nice=19 --cutlist --nodenoise --nodeinterlace --nomultipass"; - -# Some variables -our ($dest, $format, $usage); -our ($db_host, $db_user, $db_name, $db_pass, $video_dir); -our ($hostname, $db_handle, $sql, $statement, $row_ref); -our ($chanid, $start, $nuvfile, @nuvarray); -my $rebuild = '0'; -my $encode = '0'; -my $debug = '0'; -my $setup = '0'; -my $cut = '0'; -my( $rightnow ) = `date`; - -GetOptions ("rebuild" => \$rebuild, - "encode" => \$encode, - "debug" => \$debug, - "setup" => \$setup, - "cut" => \$cut); - -if ($setup == 1){ - system("clear"); - print "Setup will do everything needed to run this script.\n"; - print "This has only been tested on KnoppMyth R5A22.\n"; - print "make sure you have edited the variables for your conguration.\n"; - my $cksetup = &promptUser("\nAre you sure you want to procceed?","n"); - if ($cksetup =~ "y") { - DoSetup(); - exit; - } - print "Setup exited. Nothing done.\n"; - exit; -} -elsif ($rebuild == 1){ - GenerateRSSFeed(); - print "Rebuilding of RSS feed is complete.\n"; - exit; -} -else { - Encode4Portable(); - print "$title is ready for your $portable\n"; - - # Check to see if the feed file exists; if not, create it. - if (! -e $feedfile) { - print "No feed file found. I will make one for you.\n"; - GenerateRSSFeed(); - print "All done.\n"; - } -} - -sub Encode4Portable{ - if ($#ARGV != 1) { - print "Encoding requires options.\nusage: myth2ipod <options> DIRECTORY FILE\n"; - exit; - } - - # Get the show information - $directory = $ARGV[0]; - $file = $ARGV[1]; - @file = split(/_/, $file); - $chanid = $file[0]; - $start = substr $file[1],0,14; - if($debug == 1){ print "$chanid\n$start\n"}; - if (! -e $directory."/".$file){ - print "Oops, the file ".$directory.$file." does not exist.\n"; - exit; - } - - # Connect to the database - PrepSQLRead(); - $db_handle = DBI->connect("dbi:mysql:database=$db_name:host=$db_host", $db_user, $db_pass) - or die "Cannot connect to database: $!\n\n"; - $sql = "SELECT title, subtitle, description, category, starttime FROM recorded WHERE chanid = $chanid AND DATE_FORMAT(starttime,'%Y%m%d%H%i%s') = $start"; - - $statement = $db_handle->prepare($sql) - or die "Couldn't prepare query '$sql': $DBI::errstr\n"; - - $statement->execute() - or die "Couldn't execute query '$sql': $DBI::errstr\n"; - $row_ref = $statement->fetchrow_hashref(); - if($debug == 1){ print "$row_ref->{starttime}\n"}; - $title = $row_ref->{title}; - $subtitle = $row_ref->{subtitle}; - $recorddate = $row_ref->{starttime}; - $description = $row_ref->{description}; - $category = $row_ref->{category}; - $filename = $title."-".$subtitle."-".substr $start, 0, 8; - $filename =~ s/ /_/g; - $filename =~ s/&/+/g; - $filename =~ s/\047//g; - $filename =~ s/[^+0-9a-zA-Z_-]+/_/g; - $filename =~ s/_$//g; - - printf("Starting nuvexport...\n"); - EncodeIt(); - printf("Nuvexport completed, starting xml generation...\n"); - CreateItemXML(); - printf("XML file created for \"$filename\" : Yipeee\n"); - printf("Cleaning up temporary files\n"); - $cmd = "rm -f $feedpath$chanid\_$start.temp.mp4"; - print $cmd."\n"; - if(system($cmd)) { print "Removing nuvexport temp file failed\n"; } - - # remove the cutlist incase we added it. - if ($cut == 1){ - printf("Generating cutlist\n"); - $cmd = "/usr/bin/mythcommflag --chanid $chanid --starttime $start --clearcutlist"; - print $cmd."\n"; - if(system($cmd)) { print "It looks like I was not able to generate a cutlist.\n"; } - } - return 0; -} - -# -# Encode for Portable -# -sub EncodeIt { - # Create cutlist from commercial flagging if -cut was passed to the script - if ($cut == 1){ - printf("Generating cutlist\n"); - $cmd = "/usr/bin/mythcommflag --chanid $chanid --starttime $start --gencutlist"; - print $cmd."\n"; - if(system($cmd)) { print "It looks like I was not able to generate a cutlist.\n"; } - } - - # Use nuvexport to do the work - $cmd = "/usr/bin/nuvexport --chanid=$chanid --start=$start $nuvoptions --filename=$chanid\_$start.temp --path=$feedpath"; - print $cmd."\n"; - if(system($cmd)) { print "Nuvexport encoding seems to have failed\n"; } - - # Now clean up the output so iPods with firmware 1.1 and above can use it - $cmd = "/usr/bin/MP4Box -add $feedpath$chanid\_$start.temp.mp4 $feedpath$chanid\_$start.$portable.mp4"; - print $cmd."\n"; - if(system($cmd)) { print "MP4Box cleanup seems to have failed\n"; } - return 0; -} - -# -# Create XML with <ITEM> tag for this video file -# -sub CreateItemXML { - open(ITEM, ">$feedpath$chanid\_$start.$portable.xml"); - print ITEM "<item>\n"; - print ITEM "<title>".&encodeForXML($title." - ".$subtitle)."</title>\n"; - print ITEM "<itunes:author>MythTV</itunes:author>\n"; - print ITEM "<author>MythTV</author>\n"; - print ITEM "<itunes:category text=\"TV Shows\"></itunes:category>\n"; - print ITEM "<comments>".&encodeForXML($file)."</comments>\n"; - print ITEM "<description>".&encodeForXML($description)."</description>\n"; - print ITEM "<pubDate>".$recorddate."</pubDate>\n"; - print ITEM "<enclosure url=\"".&encodeForXML("$feedurl$chanid\_$start.$portable.mp4")."\" type=\"video/quicktime\" />\n"; - print ITEM "<itunes:duration></itunes:duration>\n"; - print ITEM "<itunes:keywords>".&encodeForXML($title." - ".$subtitle." - ".$category)."</itunes:keywords>\n"; - print ITEM "<category>".&encodeForXML($category)."</category>\n"; - print ITEM "</item>\n"; - print "\"$filename\" has been added to the feed.\n"; - close(ITEM); - return 0; -} - -# -# Generate the RSS feed by combining the ITEM XML Files -# -sub GenerateRSSFeed { - - open(RSS, ">$feedfile"); - print RSS "<?php\n"; - print RSS "header(\"Content-Type: text/xml\");\n"; - print RSS "echo \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\"; ?>\n"; - print RSS "<rss xmlns:itunes=\"http://www.itunes.com/DTDs/Podcast-1.0.dtd\" version=\"2.0\">\n"; - print RSS "<channel>\n"; - print RSS "<title>MythTV - <? if (\$_GET['title'] == \"\") { \$title = \"*\"; echo \"Recorded Programs\"; }\n"; - print RSS "else { \$title = \$_GET['title']; echo str_replace(\"_\",\" \",\$_GET['title']); } ?> </title>\n"; - print RSS "<itunes:author>MythTV - myth2ipod</itunes:author>\n"; - print RSS "<link>".&encodeForXML($feedurl)."</link>\n"; - print RSS "<itunes:subtitle>Transcoded recording for your iPod Video.</itunes:subtitle>\n"; - print RSS "<itunes:summary>Myth TV Recorded Programs for the iPod v.1</itunes:summary>\n"; - print RSS "<description>Myth TV Recorded Programs for the iPod v.1</description>\n"; - print RSS "<itunes:owner>\n"; - print RSS "<itunes:name>MythTV</itunes:name>\n"; - print RSS "<itunes:email>mythtv\@localhost</itunes:email>\n"; - print RSS "</itunes:owner>\n"; - print RSS "<itunes:explicit>No</itunes:explicit>\n"; - print RSS "<language>en-us</language>\n"; - print RSS "<copyright>Copyright 2005.</copyright>\n"; - print RSS "<webMaster>mythtv\@localhost</webMaster>\n"; - print RSS "<itunes:image href=\"http://myth2ipod.com/mythipod_200.jpg\" />\n"; - print RSS "<itunes:category text=\"TV Shows\"></itunes:category>\n"; - print RSS "<category>TV Shows</category>\n"; - print RSS "<itunes:image href=\"http://myth2ipod.com/mythipod_200.jpg\"/>"; - print RSS "<image>"; - print RSS "<url>http://myth2ipod.com/mythipod_200.jpg</url>\n"; - print RSS "<title>MythTV 2 iPod</title>\n"; - print RSS "<link>".&encodeForXML($feedurl)."</link>\n"; - print RSS "<width>200</width>\n"; - print RSS "<height>200</height>\n"; - print RSS "</image>\n"; - print RSS "<? foreach (glob(\$title\.\"*\.$portable\.xml\") as \$file) {include \$file;} ?>\n"; - print RSS "</channel>\n"; - print RSS "</rss>\n"; - close(RSS); - if($debug == 1){ print "I created a feed file, was I supposed to?\n"}; - - return 0; -} - -# substitute for XML entities -sub encodeForXML { - local $result; - $result = $_[0]; - $result =~ s/&/&/g; - $result =~ s/</</g; - $result =~ s/>/>/g; - $result; -} - - -# -# This code taken from one of the mythlink.sh scripts to get MySQL information -# -sub PrepSQLRead{ -# Get the hostname of this machine - $hostname = `hostname`; - chomp($hostname); - -# Read the mysql.txt file in use by MythTV. -# could be in a couple places, so try the usual suspects - my $found = 0; - my @mysql = ('/usr/share/mythtv/mysql.txt', - '/usr/share/mythtv/mysql.txt', - '/etc/mythtv/mysql.txt', - '/usr/local/etc/mythtv/mysql.txt', - '$ENV{HOME}/.mythtv/mysql.txt', - 'mysql.txt' - ); - foreach my $file (@mysql) { - next unless (-e $file); - $found = 1; - open(CONF, $file) or die "Unable to open $file: $!\n\n"; - while (my $line = <CONF>) { - # Cleanup - next if ($line =~ /^\s*#/); - $line =~ s/^str //; - chomp($line); - # Split off the var=val pairs - my ($var, $val) = split(/\=/, $line, 2); - next unless ($var && $var =~ /\w/); - if ($var eq 'DBHostName') { - $db_host = $val; - } - elsif ($var eq 'DBUserName') { - $db_user = $val; - } - elsif ($var eq 'DBName') { - $db_name = $val; - } - elsif ($var eq 'DBPassword') { - $db_pass = $val; - } - # Hostname override - elsif ($var eq 'LocalHostName') { - $hostname = $val; - } - } - close CONF; - } - die "Unable to locate mysql.txt: $!\n\n" unless ($found && $db_host); - return 0; -} - -sub promptUser { - local($promptString,$defaultValue) = @_; - if ($defaultValue) { - print $promptString, "[", $defaultValue, "]: "; - } else { - print $promptString, ": "; - } - - $| = 1; # force a flush after our print - $_ = <STDIN>; # get the input from STDIN (presumably the keyboard) - chomp; - if ("$defaultValue") { - return $_ ? $_ : $defaultValue; # return $_ if it has a value - } else { - return $_; - } -} - -sub DoSetup { - print "\nNot ready yet. How do you send the cd command from perl?\n"; - return 0; -} diff --git a/abs/extra/myth2ipod/myth2ipod-userjob.sh b/abs/extra/myth2ipod/myth2ipod-userjob.sh deleted file mode 100755 index 9ed65b2..0000000 --- a/abs/extra/myth2ipod/myth2ipod-userjob.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -. /etc/profile -#su mythtv -c "TERM=vt100 /usr/bin/myth2ipod "$1" "$2" >/tmp/logfile" -su mythtv -c "TERM=vt100 /usr/bin/myth2ipod "$1" "$2" " -#or to also use commercial flagging cutlist -#su mythtv -c "TERM=vt100 /usr/bin/myth2ipod -cut "$1" "$2" >/tmp/logfile" diff --git a/abs/extra/myth2ipod/myth2ipod.install b/abs/extra/myth2ipod/myth2ipod.install deleted file mode 100755 index 367d90f..0000000 --- a/abs/extra/myth2ipod/myth2ipod.install +++ /dev/null @@ -1,38 +0,0 @@ - -pre_install() { - mkdir -p /myth/ipodfeed - chown mythtv:http /myth/ipodfeed -} - -pre_upgrade() { - pre_install -} - -pre_remove() { - pre_install -} - -post_install() { - . /etc/systemconfig - ln -s /myth/ipodfeed /data/srv/httpd/htdocs/ipodfeed - ln -s /myth/ipodfeed/m2iweb.php /myth/ipodfeed/index.php - sed -i -e "s/REPLACEME/$hostname/g" /usr/bin/myth2ipod - chown -R mythtv:http /myth/ipodfeed - /usr/bin/myth2ipod -rebuild -} - -post_upgrade() { - /usr/bin/myth2ipod -rebuild -} - -post_remove() { - rm -fr /data/srv/httpd/htdocs/ipodfeed - rm -rf /myth/ipodfeed/m2iweb.php - rm -rf /myth/ipodfeed/index.php - # don't delete content that the user may still want, so leave /myth/ipodfeed -} - -op=$1 -shift - -$op $* diff --git a/abs/extra/mythappletrailers/PKGBUILD b/abs/extra/mythappletrailers/PKGBUILD index 2f36a4d..140c8b7 100644 --- a/abs/extra/mythappletrailers/PKGBUILD +++ b/abs/extra/mythappletrailers/PKGBUILD @@ -3,33 +3,54 @@ pkgname=mythappletrailers pkgver=0.04.3 -pkgrel=41 +pkgrel=46 pkgdesc="Unofficial Add-on for MythTV to get Apple.com Movie Trailers." arch=('i686' 'x86_64') license=('GPL2') url="http://www.mythtv.org/wiki/index.php/Myth_Apple_Trailers" depends=('php' 'mythtv' 'mplayer-wrapper') install=mythappletrailers.install -source=('myth_trailers_grabber' 'appletrailer.xml' -'trailers' 'loading.sh' 'fix_aple_url.sh') - +source=('myth_trailers_grabber' 'appletrailer.xml'\ + 'trailers' 'loading.sh' 'fix_aple_url.sh'\ + 'play_trailer.sh' 'gen_trailer_menu.sh'\ + 'all_trailers' 'shuffle_trailers'\ + 'appletrailers_is.conf') +#. /usr/MythVantage/bin/install_functions.sh build() { + MYTHHOME="/home/mythtv" mkdir -p $startdir/pkg/usr/bin mkdir -p $startdir/pkg/etc/cron.daily - mkdir -p $startdir/pkg/home/mythtv/ + mkdir -p $startdir/pkg/$MYTHHOME mkdir -p $startdir/pkg/usr/share/mythtv/ - cp appletrailer.xml $startdir/pkg/home/mythtv/appletrailer.xml - chown 1000:1000 $startdir/pkg/home/mythtv/appletrailer.xml + cp appletrailer.xml $startdir/pkg/$MYTHHOME/appletrailer.xml + chown 1000:1000 $startdir/pkg/$MYTHHOME/appletrailer.xml chmod 755 trailers chmod 755 myth_trailers_grabber - chmod 755 loading.sh + chmod 755 loading.sh cp myth_trailers_grabber $startdir/pkg/usr/bin/ cp loading.sh $startdir/pkg/usr/bin/ cp trailers $startdir/pkg/etc/cron.daily/ install -m755 $srcdir/fix_aple_url.sh $pkgdir/usr/bin + install -m755 $srcdir/play_trailer.sh $pkgdir/usr/bin + install -m755 $srcdir/gen_trailer_menu.sh $pkgdir/usr/bin + install -m644 $srcdir/all_trailers $pkgdir/home/mythtv + install -m644 $srcdir/shuffle_trailers $pkgdir/home/mythtv + chown 1000:1000 $startdir/pkg/$MYTHHOME/*_trailers + + #add in file for gen_is.xml + install -D -m0744 ${srcdir}/appletrailers_is.conf ${pkgdir}/etc/gen_is_xml.d/appletrailers_is.conf } + + + + md5sums=('336e68953d0e1e8a0c7a4990f8d43a2b' - 'c7da92600afe2a3b1f564764500315a0' - '5fdd4aa17b9c1e77b272437ae42a1827' - 'ece3c5f8a605b6e2270c6f7671705631' - 'a2349f844e47fd95a672739177ca44ff') + 'be0d071981e5536f24aaf67545a96cc5' + 'a508f2de763f5bec5b4549885c062c8a' + 'f072ec9c3d78b107e25039758fd5b378' + 'a2349f844e47fd95a672739177ca44ff' + '14f153c1efa7ae4e192d87010cbf9f7c' + '3e9d8014a0e76e2cf8057291d20c9291' + '7af1e58dfab2772dbb6f339481ae8d5d' + 'd26681921482cbf334b43f700adf0d29' + '341eb4f98b70b51b9420f58051c8df6a') diff --git a/abs/extra/mythappletrailers/all_trailers b/abs/extra/mythappletrailers/all_trailers new file mode 100644 index 0000000..186c49c --- /dev/null +++ b/abs/extra/mythappletrailers/all_trailers @@ -0,0 +1,134 @@ +http://trailers.apple.com/movies/independent/10years/10years-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/2daysinny/2daysinny-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/360/360-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/7500/7500-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/aroyalaffair/aroyalaffair-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/after/after-tlr2_h640w.mov +http://trailers.apple.com/movies/lionsgate/alexcross/alexcross-tlr1_h640w.mov +http://trailers.apple.com/movies/focus_features/annakarenina/annakerenina-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/arbitrage/arbitrageroad-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/argo/argo-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/bachelorette/bachelorette-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/battleoftheyear/battleoftheyear-tlr1_h640w.mov +http://trailers.apple.com/movies/fox_searchlight/beastsofthesouthernwild/beastsofthesouthernwild-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/branded/branded-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/brave/brave-tlr5_h640w.mov +http://trailers.apple.com/movies/sony_pictures/celesteandjesseforever/celesteandjesse-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/chained/chained-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/championsofthedeep/championsofthedeep-tlr1_h640w.mov +http://trailers.apple.com/movies/fox/chasingmavericks/chasingmaverics-tlr2_h640w.mov +http://trailers.apple.com/movies/sony/chickenwithplums/chickenwithplums-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/cirque/cirque-tl1_h640w.mov +http://trailers.apple.com/movies/wb/cloudatlas/cloudatlas-trailer1b_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/compliance/compliance-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/deadfall/deadfall-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/despicableme2/despicableme2-tsr1_h640w.mov +http://trailers.apple.com/movies/fox/diaryofawimpykiddogdays/diaryofawimpykiddogday-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/djangounchained/django-tsr1_h640w.mov +http://trailers.apple.com/movies/independent/doggieb/doggieb-tlr1_h640w.mov +http://trailers.apple.com/movies/lionsgate/dredd/dredd-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/endofwatch/endofwatch-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/escapefire/escapefire-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/finding_nemo/findingnemo-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/flight/flight-tlr1zyx77_h640w.mov +http://trailers.apple.com/movies/focus_features/foragoodtimecall/foragoodtimecall-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/frankenweenie/frankenweenie-tlr2_h640w.mov +http://trailers.apple.com/movies/lionsgate/freelancers/freelancers-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/funsize/funsize-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/gijoeretaliation/gijoeretaliation-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/generaleducation/generaleducation-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/goats/goats-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/hanselandgretel/hanselandgretel-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/helloimustbegoing/helloimustbegoing_h640w.mov +http://trailers.apple.com/movies/sony_pictures/herecomestheboom/herecomestheboom-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/hitandrun/hitandrun-tl1_h640w.mov +http://trailers.apple.com/movies/sony/hopesprings/hopesprings-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/hoteltransylvania/hoteltransylvania-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/houseattheendofthestreet/houseattheendofthestreet-tlr3_h640w.mov +http://trailers.apple.com/movies/focus_features/hydeparkonthehudson/hydeparkonthehudson-tlr1_h640w.mov +http://trailers.apple.com/movies/fox/iceage4/iceage4-tlr2_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/jackanddiane/jackanddiane-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/killerjoe/killerjoe-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/killingthemsoftly/killingthemsoftly-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/klown/klown-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/luv/luv_h640w.mov +http://trailers.apple.com/movies/weinstein/lawless/lawless-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/leastamongsaints/leastamongsaints-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/lesmiserables/lesmiserables-tsr1_h640w.mov +http://trailers.apple.com/movies/fox/lifeofpi/lifeofpi-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/looper/looper-tlr2_h640w.mov +http://trailers.apple.com/movies/dreamworks/madagascar3/madagascar3-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/manofsteel/manofsteel-tlr1-r_h640w.mov +http://trailers.apple.com/movies/independent/middleofnowhere/middleofnowhere-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/monstersuniversity/monstersuniversity-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/monstersinc3d/monstersinc3d-tlr3_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/nobodywalks/nobodywalks-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/ozthegreatandpowerful/oz-tlr1-2938tyz_h640w.mov +http://trailers.apple.com/movies/focus_features/paranorman/paranorman-tlr2_h640w.mov +http://trailers.apple.com/movies/paramount/paranormalactivity4/paranormalactivity4-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/pitchperfect/pitchperfect-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/premiumrush/premiumrush-tlr2_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/rec3/rec3-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/redhooksummer/redhooksummer-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/residentevilretribution/residentevil-tlr2_h640w.mov +http://trailers.apple.com/movies/dreamworks/riseoftheguardians/riseoftheguardians-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/robotfrank/robotandfrank-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/sacrifice/sacrifice-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/saintsandsoldiers2/saintsandsoldiers2-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/samsara/samsara-tlr2_h640w.mov +http://trailers.apple.com/movies/sony/searchingforsugarman/searchingforsugarman-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/sevenpsychopaths/sevenpsychopaths-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/silverliningsplaybook/silverlinings-tlr1_h640w.mov +http://trailers.apple.com/movies/summit/sinister/sinister-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/skyfall/skyfall-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/soldiersoffortune/soldiersoffortune-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/solomonkane/solomonkane-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/somewherebetween/somewherebetween-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/sparkle/sparkle-tlr1_h640w.mov +http://trailers.apple.com/movies/summit/stepuprevolution/stepuprevolution-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/stolen/stolen-tlr2_h640w.mov +http://trailers.apple.com/movies/fox/taken2/taken2-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/ted/ted-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/theapparition/theapparition-tlr1_h640w.mov +http://trailers.apple.com/movies/marvel/theavengers/avengers-7c7b7a-tlr3_h640w.mov +http://trailers.apple.com/movies/independent/theawakening/awakening-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/babymakers/babymakers-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/thebay/thebay-tlr_h640w.mov +http://trailers.apple.com/movies/lionsgate/thebigwedding/bigwedding-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/bournelegacy/bournelegacy-tlr2_h640w.mov +http://trailers.apple.com/movies/wb/thecampaign/thecampaign-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thedarkknightrises/darkknightrises-tlr4_h640w.mov +http://trailers.apple.com/movies/lionsgate/expendables2/expendables2-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/flyingswords/flyingswords-tlr1b_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/thegooddoctor/gooddoctor-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thegreatgatsby/greatgatsby-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thehobbit1/thehobbit-tlr1_h640w.mov +http://trailers.apple.com/movies/lionsgate/thehungergames/thehungergames-tlr1a_h640w.mov +http://trailers.apple.com/movies/summit/theimpossible/theimpossible-tlr1_h640w.mov +http://trailers.apple.com/movies/newline/thelaststand/laststand-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/themanwiththeironfists/manwiththeironfists-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/themaster/themaster-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/theoddlifeoftimothygreen/oddlifeoftimothygreen-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/oogieloves/oog-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/theoranges/oranges-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/thepaperboy/thepaperboy-tlr1_h640w.mov +http://trailers.apple.com/movies/summit/theperksofbeingawallflower/perksofbeingawallflower-tlr1_h640w.mov +http://trailers.apple.com/movies/lionsgate/thepossession/possession-tlr1_h640w.mov +http://trailers.apple.com/movies/fox_searchlight/thesessions/thesessions-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/thetallman/thetallman-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/troublewiththetruth/troublewiththetruth-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thetroublewiththecurve/troublewiththecurve-tlr1_h640w.mov +http://trailers.apple.com/movies/summit/twilightbreakingdawn2/twilightbd2-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/thevictim/thevictim-tlr1_h640w.mov +http://trailers.apple.com/movies/fox/thewatch/thewatch-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/thewords/thewords-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/thisis40/thisis40-tlr3_h640w.mov +http://trailers.apple.com/movies/weinstein/thismustbetheplace/thismustbetheplace-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thunderstruck/thunderstruck-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/totalrecall/totalrecall-tlr4_h640w.mov +http://trailers.apple.com/movies/independent/toysintheattic/toysintheattic-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/unconditional/unconditional-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/vhs/vhs-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/warofthebuttons/warofthebuttons-tlr1_h640w.mov +http://trailers.apple.com/movies/fox/wontbackdown/wontbackdown-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/wreckitralph/wreakitralph-tlr1_h640w.mov diff --git a/abs/extra/mythappletrailers/appletrailer.xml b/abs/extra/mythappletrailers/appletrailer.xml index 9aa19f5..aa18391 100644 --- a/abs/extra/mythappletrailers/appletrailer.xml +++ b/abs/extra/mythappletrailers/appletrailer.xml @@ -1,602 +1,824 @@ <mythmenu name="TRAILERS"> + <button> + <type>VIDEO_BROWSER</type> + <text>Play All Trailers</text> + <action>EXEC /usr/bin/play_trailer.sh /home/mythtv/all_trailers</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Shuffle Play Trailers</text> + <action>EXEC /usr/bin/play_trailer.sh /home/mythtv/shuffle_trailers</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Play Random Trailer</text> + <action>EXEC loading.sh && mplayer -fs -zoom -really-quiet -user-agent QuickTime/7.6.2 -cache 16000 $(sort -R /home/mythtv/all_trailers | tail -1)</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>10 Years</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/10years/10years-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>2 Days in New York</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/2daysinny/2daysinny-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>360</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/360/360-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>7500</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/7500/7500-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>A Royal Affair</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/aroyalaffair/aroyalaffair-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>After</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/after/after-tlr2_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Alex Cross</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/alexcross/alexcross-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Anna Karenina</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/focus_features/annakarenina/annakerenina-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Arbitrage</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/arbitrage/arbitrageroad-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Argo</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/argo/argo-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Bachelorette</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/bachelorette/bachelorette-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Battle of the Year</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/battleoftheyear/battleoftheyear-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Beasts of the Southern Wild</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox_searchlight/beastsofthesouthernwild/beastsofthesouthernwild-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Branded</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/branded/branded-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Brave</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/brave/brave-tlr5_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Celeste and Jesse Forever</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/celesteandjesseforever/celesteandjesse-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Chained</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/chained/chained-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Champions of the Deep</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/championsofthedeep/championsofthedeep-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Chasing Mavericks</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/chasingmavericks/chasingmaverics-tlr2_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Chicken with Plums</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/chickenwithplums/chickenwithplums-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Cirque du Soleil: Worlds Away 3D</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/cirque/cirque-tl1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Cloud Atlas</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/cloudatlas/cloudatlas-trailer1b_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Compliance</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/compliance/compliance-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Deadfall</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/deadfall/deadfall-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Despicable Me 2</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/despicableme2/despicableme2-tsr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Diary of a Wimpy Kid: Dog Days</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/diaryofawimpykiddogdays/diaryofawimpykiddogday-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Django Unchained</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/djangounchained/django-tsr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Doggie B</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/doggieb/doggieb-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Dredd</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/dredd/dredd-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>End of Watch</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/endofwatch/endofwatch-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Escape Fire: The Fight to Rescue American Healthcare</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/escapefire/escapefire-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Finding Nemo 3D</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/finding_nemo/findingnemo-tlr1_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>Flight</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/flight/flight-tlr1zyx77_h640w.mov</action> + </button> + + <button> + <type>VIDEO_BROWSER</type> + <text>For a Good Time, Call...</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/focus_features/foragoodtimecall/foragoodtimecall-tlr1_h640w.mov</action> + </button> + <button> <type>VIDEO_BROWSER</type> - <text>Morning Glory</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/morningglory/morningglory-tlr1_h640w.mov</action> + <text>Frankenweenie</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/frankenweenie/frankenweenie-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Scott Pilgrim vs. The World</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/scottpilgrim/scottpilgrim-tlr2_h640w.mov</action> + <text>Freelancers</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/freelancers/freelancers-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Adjustment Bureau</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/adjustmentbureau/adjustmentbureau-tlr1_h640w.mov</action> + <text>Fun Size</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/funsize/funsize-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Grease Sing-A-Long</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/greasesingalong/greasesingalong-tlr1_h640w.mov</action> + <text>GI Joe: Retaliation</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/gijoeretaliation/gijoeretaliation-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Solitary Man</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/solitaryman/solitaryman-tlr1_h640w.mov</action> + <text>General Education</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/generaleducation/generaleducation-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Racing Dreams</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/racingdreams/racingdreams-tlr1_h640w.mov</action> + <text>Goats</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/goats/goats-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Joan Rivers: A Piece of Work</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/joanriversapieceofwork/joanriversapieceofwork-tlr1_h640w.mov</action> + <text>Hansel </text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/hanselandgretel/hanselandgretel-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Killer Inside Me</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/ifc_films/killerinsideme/killerinsideme-tlr1_h640w.mov</action> + <text>Hello I Must Be Going</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/helloimustbegoing/helloimustbegoing_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>You Again</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/youagain/youagain-tlr1_h640w.mov</action> + <text>Here Comes the Boom</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/herecomestheboom/herecomestheboom-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Love Ranch</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/loveranch/loveranch-tlr1_h640w.mov</action> + <text>Hit </text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/hitandrun/hitandrun-tl1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Charlie St. Cloud</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/charliestcloud/charliestcloud-tlr1_h640w.mov</action> + <text>Hope Springs</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/hopesprings/hopesprings-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Step Up 3D</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/touchstone/stepup3d/stepup3d-tlr2_h640w.mov</action> + <text>Hotel Transylvania</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/hoteltransylvania/hoteltransylvania-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Secretariat</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/secretariat/secretariat-tlr1_h640w.mov</action> + <text>House at the End of the Street</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/houseattheendofthestreet/houseattheendofthestreet-tlr3_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>African Cats</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/africancats/africancats-tlr1_h640w.mov</action> + <text>Hyde Park on Hudson</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/focus_features/hydeparkonthehudson/hydeparkonthehudson-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Nowhere Boy</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/nowhereboy/nowhereboy-tlr1_h640w.mov</action> + <text>Ice Age: Continental Drift</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/iceage4/iceage4-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Jonah Hex</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/jonahhex/jonahhex-tlr1_h640w.mov</action> + <text>Jack and Diane</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/jackanddiane/jackanddiane-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Splice</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/splice/splice-tlr2_h640w.mov</action> + <text>Killer Joe</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/killerjoe/killerjoe-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Winter's Bone</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/wintersbone/wintersbone-tlr1_h640w.mov</action> + <text>Killing Them Softly</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/killingthemsoftly/killingthemsoftly-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Super 8</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/super8/super8-tlr1_h640w.mov</action> + <text>Klown</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/klown/klown-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Piranha 3D</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/piranha3d/piranha3d-tlr2_h640w.mov</action> + <text>LUV</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/luv/luv_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Gangster Paradise: Jerusalema</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/gangsterparadise/gangsterparadise-tlr1_h640w.mov</action> + <text>Lawless</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/lawless/lawless-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Waiting for Superman</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount_vantage/waitingforsuperman/waitingforsuperman-tlr1a_h640w.mov</action> + <text>Least Among Saints</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/leastamongsaints/leastamongsaints-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Survival of the Dead</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/survivalofthedead/survivalofthedead-tlr1_h640w.mov</action> + <text>Les Miserables</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/lesmiserables/lesmiserables-tsr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Countdown to Zero</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/countdowntozero/countdowntozero-tlr1_h640w.mov</action> + <text>Life of Pi</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/lifeofpi/lifeofpi-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Nanny McPhee Returns</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/nannymcpheereturns/nannymcpheereturns-tlr1_h640w.mov</action> + <text>Looper</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/looper/looper-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>I Spit On Your Grave</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/ispitonyourgrave/ispitonyourgrave-tlr1_h640w.mov</action> + <text>Madagascar 3: Europe's Most Wanted</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/dreamworks/madagascar3/madagascar3-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Buried</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/buried/buried-tlr1_h640w.mov</action> + <text>Man of Steel</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/manofsteel/manofsteel-tlr1-r_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Lottery Ticket</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/lotteryticket/lotteryticket-tlr1_h640w.mov</action> + <text>Middle of Nowhere</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/middleofnowhere/middleofnowhere-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Get Low</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/getlow/getlow-tlr2_h640w.mov</action> + <text>Monsters University</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/monstersuniversity/monstersuniversity-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Princess Kaiulani</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/princesskaiulani/princesskaiulani-tlr1_h640w.mov</action> + <text>Monsters, Inc. 3D</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/monstersinc3d/monstersinc3d-tlr3_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Twilight Saga: Eclipse</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/summit/twilightsagaeclipse/twilightsagaeclipse-tlr2_h640w.mov</action> + <text>Nobody Walks</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/nobodywalks/nobodywalks-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>8: The Mormon Proposition</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/8themormonproposition/8themormonproposition_h640w.mov</action> + <text>Oz the Great and Powerful</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/ozthegreatandpowerful/oz-tlr1-2938tyz_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Predators</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/predators/predators-tlr1_h640w.mov</action> + <text>ParaNorman</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/focus_features/paranorman/paranorman-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Acts of Violence</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/actsofviolence/actsofviolence-tlr1_h640w.mov</action> + <text>Paranormal Activity 4</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/paranormalactivity4/paranormalactivity4-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Disappearance of Alice Creed</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/thedisappearanceofalicecreed/disappearanceofalicecreed-tlr2_h640w.mov</action> + <text>Pitch Perfect</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/pitchperfect/pitchperfect-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Expendables</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/theexpendables/expendables-tlr2_h640w.mov</action> + <text>Premium Rush</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/premiumrush/premiumrush-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>TiMER</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/timer/timer-tlr1_h640w.mov</action> + <text>Rec 3</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/rec3/rec3-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Paper Man</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/paperman/paperman-tlr1_h640w.mov</action> + <text>Red Hook Summer</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/redhooksummer/redhooksummer-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Holy Rollers</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/holyrollers/holyrollers-tlr1_h640w.mov</action> + <text>Resident Evil: Retribution</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/residentevilretribution/residentevil-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Ondine</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/ondine/ondine-tlr1_h640w.mov</action> + <text>Rise of the Guardians</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/dreamworks/riseoftheguardians/riseoftheguardians-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>DCI 2010: The Countdown</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/dci2010thecountdown/dcicountdown-tlr1_h640w.mov</action> + <text>Robot </text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/robotfrank/robotandfrank-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Other Guys</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/theotherguys/theotherguys-tlr1_h640w.mov</action> + <text>Sacrifice</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/sacrifice/sacrifice-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Kids Are All Right</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/focus_features/thekidsareallright/kidsarealright-tlr1_h640w.mov</action> + <text>Saints and Soldiers: Airborne Creed</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/saintsandsoldiers2/saintsandsoldiers2-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Dinner for Schmucks</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/dinnerforschmucks/dinnerforschmucks-tlr1_h640w.mov</action> + <text>Samsara</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/samsara/samsara-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Micmacs</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/micmacs/micmacs-tlr1_h640w.mov</action> + <text>Searching for Sugar Man</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/searchingforsugarman/searchingforsugarman-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Coco Chanel and Igor Stravinsky</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/cocoandigor/cocoigor-tlr1_h640w.mov</action> + <text>Seven Psychopaths</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/sevenpsychopaths/sevenpsychopaths-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Casino Jack and the United States of Money</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/casinojack/casinojack-tlr1_h640w.mov</action> + <text>Silver Linings Playbook</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/silverliningsplaybook/silverlinings-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>I Am Love</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/iamlove/iamlove-tlr1_h640w.mov</action> + <text>Sinister</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/summit/sinister/sinister-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Mother and Child</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/motherandchild/motherandchild-tlr1_h640w.mov</action> + <text>Skyfall</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/skyfall/skyfall-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Just Wright</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox_searchlight/justwright/justwright-tlr1_h640w.mov</action> + <text>Soldiers of Fortune</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/soldiersoffortune/soldiersoffortune-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>In My Sleep</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/inmysleep/inmysleep_h640w.mov</action> + <text>Solomon Kane</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/solomonkane/solomonkane-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>My Girlfriend's Boyfriend</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/mygirlfriendsboyfriend/mygirlfriendsboyfriend-tlr1_h640w.mov</action> + <text>Somewhere Between</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/somewherebetween/somewherebetween-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Wild Grass</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/wildgrass/wildgrass-tlr1_h640w.mov</action> + <text>Sparkle</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/sparkle/sparkle-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Eat Pray Love</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/eatpraylove/eatpraylove-tlr1_h640w.mov</action> + <text>Step Up: Revolution</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/summit/stepuprevolution/stepuprevolution-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Secret In Their Eyes</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/thesecretintheireyes/thesecretintheireyes-tlr1_h640w.mov</action> + <text>Stolen</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/stolen/stolen-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Switch</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/miramax/theswitch/theswitch-tlr1_h640w.mov</action> + <text>Taken 2</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/taken2/taken2-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Harry Brown</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/harrybrown/harrybrown-tlr1a_h640w.mov</action> + <text>Ted</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/ted/ted-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Please Give</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony/pleasegive/pleasegive-tlr1_h640w.mov</action> + <text>The Apparition</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/theapparition/theapparition-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Touching Home</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/touchinghome/touchinghome-tlr1_h640w.mov</action> + <text>The Avengers</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/marvel/theavengers/avengers-7c7b7a-tlr3_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Hey Hey It's Esther Blueburger </text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/heyheyitsestherblueburger/heyhey-tlr1_h640w.mov</action> + <text>The Awakening</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/theawakening/awakening-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Good Heart</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/thegoodheart/thegoodheart-tlr1_h640w.mov</action> + <text>The Babymakers</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/babymakers/babymakers-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Killers</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/killers/killers-tlr1_h640w.mov</action> + <text>The Bay</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/thebay/thebay-tlr_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Get Him To The Greek</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/gethimtothegreek/gethimtothegreek-tlr_h640w.mov</action> + <text>The Big Wedding</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/thebigwedding/bigwedding-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The A-Team</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/theateam/ateam-tlr2_h640w.mov</action> + <text>The Bourne Legacy</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/bournelegacy/bournelegacy-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Alice In Wonderland</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/aliceinwonderland/aliceinwonderland-tlr1_h640w.mov</action> + <text>The Campaign</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/thecampaign/thecampaign-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Avatar</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/avatar/avatar-tlrf_h640w.mov</action> + <text>The Dark Knight Rises</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/thedarkknightrises/darkknightrises-tlr4_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Babies</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/focus_features/babies/babies-tlr1_h640w.mov</action> + <text>The Expendables 2</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/expendables2/expendables2-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Back-up Plan</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/thebackupplan/backupplan-tlr1_h640w.mov</action> + <text>The Flying Swords of Dragon Gate</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/flyingswords/flyingswords-tlr1b_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Beastly</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/beastly/beastly-tlr1b_h640w.mov</action> + <text>The Good Doctor</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/thegooddoctor/gooddoctor-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Cats and Dogs: The Revenge of Kitty Galore 3D</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/catsanddogs2/catsanddogs2-tlr1_h640w.mov</action> + <text>The Great Gatsby</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/thegreatgatsby/greatgatsby-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Cyrus</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox_searchlight/cyrus/cyrus-tlr1_h640w.mov</action> + <text>The Hobbit: An Unexpected Journey</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/thehobbit1/thehobbit-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Date Night</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/datenight/datenight-tlr1_h640w.mov</action> + <text>The Hunger Games</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/thehungergames/thehungergames-tlr1a_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Despicable Me</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/despicableme/despicableme-tlr5i_h640w.mov</action> + <text>The Impossible</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/summit/theimpossible/theimpossible-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Furry Vengeance</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/summit/furryvengeance/furryvengeance-tlr1_h640w.mov</action> + <text>The Last Stand</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/newline/thelaststand/laststand-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Grown Ups</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/grownups/grownups-tlr2_h640w.mov</action> + <text>The Man with the Iron Fists</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/themanwiththeironfists/manwiththeironfists-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Hot Tub Time Machine</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/mgm/hottubtimemachine/hottubtimemachine-tlr2_h640w.mov</action> + <text>The Master</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/themaster/themaster-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>How To Train Your Dragon</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/dreamworks/howtotrainyourdragon/howtotrainyourdragon-tlr2_h640w.mov</action> + <text>The Odd Life of Timothy Green</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/theoddlifeoftimothygreen/oddlifeoftimothygreen-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Hubble 3D</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/imax/hubble3d/hubble3d-tlr1_h640w.mov</action> + <text>The Oogieloves in the Big Balloon Adventure</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/oogieloves/oog-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Inception</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/inception/inception-tlr3_h640w.mov</action> + <text>The Oranges</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/theoranges/oranges-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Iron Man 2</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/ironman2/ironman2-34rgrwt9-tlr2_h640w.mov</action> + <text>The Paperboy</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/thepaperboy/thepaperboy-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Karate Kid</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/karatekid/karatekid-tlr2_h640w.mov</action> + <text>The Perks of Being a Wallflower</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/summit/theperksofbeingawallflower/perksofbeingawallflower-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Knight and Day</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/knightandday/knightandday-tlr2_h640w.mov</action> + <text>The Possession</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/thepossession/possession-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Last Airbender</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/thelastairbender/lastairbender-tlr3_h640w.mov</action> + <text>The Sessions</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox_searchlight/thesessions/thesessions-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Letters To Juliet</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/summit/letterstojuliet/letterstojuliet-tlr1_h640w.mov</action> + <text>The Tall Man</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/thetallman/thetallman-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Losers</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/thelosers/thelosers-tlr1b_h640w.mov</action> + <text>The Trouble With The Truth</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/troublewiththetruth/troublewiththetruth-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>MacGruber</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/macgruber/macgruber-tlr4_h640w.mov</action> + <text>The Trouble with the Curve</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/thetroublewiththecurve/troublewiththecurve-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Multiple Sarcasms</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/multiplesarcasms/multiplesarcasms-tlr1_h640w.mov</action> + <text>The Twilight Saga: Breaking Dawn - Part 2</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/summit/twilightbreakingdawn2/twilightbd2-tlr2_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>A Nightmare On Elm Street</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/newline/anightmareonelmstreet/nightmareonelmstreet-tlr2_h640w.mov</action> + <text>The Victim</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/thevictim/thevictim-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Oceans</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/oceans/oceans-tsr1_h640w.mov</action> + <text>The Watch</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/thewatch/thewatch-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Prince of Persia: the Sands of Time</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/princeofpersia/princeofpersia-tlr1_h640w.mov</action> + <text>The Words</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/thewords/thewords-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Robin Hood</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/robinhood/robinhood-tlr3_h640w.mov</action> + <text>This Is 40</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/universal/thisis40/thisis40-tlr3_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Salt</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/salt/salt-tlr2_h640w.mov</action> + <text>This Must Be the Place</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/thismustbetheplace/thismustbetheplace-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Sex and the City 2</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/sexandthecity2/sexandthecity2-tlr2_h640w.mov</action> + <text>Thunderstruck</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/wb/thunderstruck/thunderstruck-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Shrek Forever After</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/dreamworks/shrekforeverafter/shrek4-tlr2_h640w.mov</action> + <text>Total Recall</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/sony_pictures/totalrecall/totalrecall-tlr4_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Shutter Island</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/paramount/shutterisland/shutterisland-tlr1r2r_h640w.mov</action> + <text>Toys in the Attic</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/toysintheattic/toysintheattic-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>The Sorcerer's Apprentice</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/thesorcerersapprentice/sorcerersapprentice-tlr2_h640w.mov</action> + <text>Unconditional</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/independent/unconditional/unconditional-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Toy Story 3</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/toystory3/toystory3-tlr3_h640w.mov</action> + <text>V/H/S</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/magnolia_pictures/vhs/vhs-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Tron Legacy</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/tronlegacy/tronlegacy-tsr1_h640w.mov</action> + <text>War of the Buttons</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/weinstein/warofthebuttons/warofthebuttons-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Tyler Perry's Why Did I Get Married Too</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/lionsgate/whydidigetmarriedtoo/whydidigetmarriedtoo-tlr2_h640w.mov</action> + <text>Won't Back Down</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/wontbackdown/wontbackdown-tlr1_h640w.mov</action> </button> <button> <type>VIDEO_BROWSER</type> - <text>Wall Street: Money Never Sleeps</text> - <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/fox/wallstreetmoneyneversleeps/wallstreet-tlrf_h640w.mov</action> + <text>Wreck-It Ralph</text> + <action>EXEC loading.sh && mplayer-wrapper.pl -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 http://trailers.apple.com/movies/disney/wreckitralph/wreakitralph-tlr1_h640w.mov</action> </button> </mythmenu> diff --git a/abs/extra/mythappletrailers/appletrailers_is.conf b/abs/extra/mythappletrailers/appletrailers_is.conf new file mode 100644 index 0000000..1ba4379 --- /dev/null +++ b/abs/extra/mythappletrailers/appletrailers_is.conf @@ -0,0 +1,8 @@ +<!--#MythAppleTrailers--> + <button> + <type>STREAM</type> + <text>Apple Trailers</text> + <action>MENU appletrailer.xml</action> + </button> +<!--#MythAppleTrailers--> + diff --git a/abs/extra/mythappletrailers/gen_trailer_menu.sh b/abs/extra/mythappletrailers/gen_trailer_menu.sh new file mode 100644 index 0000000..43b2fae --- /dev/null +++ b/abs/extra/mythappletrailers/gen_trailer_menu.sh @@ -0,0 +1,29 @@ +#!/bin/bash +cp /home/mythtv/appletrailer.xml /tmp +sed -n -e 's/.*<action>\(.*\)<\/action>.*/\1/p' /tmp/appletrailer.xml > /tmp/a.log +awk < /tmp/a.log '{ print $NF }' > /tmp/b.log +sort -R /tmp/b.log > /tmp/c.log +echo "<mythmenu name=\"TRAILERS\">" > /tmp/appletrailer.2.xml +echo " <button>" >> /tmp/appletrailer.2.xml +echo " <type>VIDEO_BROWSER</type>" >> /tmp/appletrailer.2.xml +echo " <text>Play All Trailers</text>" >> /tmp/appletrailer.2.xml +echo " <action>EXEC /usr/bin/play_trailer.sh /home/mythtv/all_trailers</action>" >> /tmp/appletrailer.2.xml +echo " </button>" >> /tmp/appletrailer.2.xml +echo "" >> /tmp/appletrailer.2.xml +echo " <button>" >> /tmp/appletrailer.2.xml +echo " <type>VIDEO_BROWSER</type>" >> /tmp/appletrailer.2.xml +echo " <text>Shuffle Play Trailers</text>" >> /tmp/appletrailer.2.xml +echo " <action>EXEC /usr/bin/play_trailer.sh /home/mythtv/shuffle_trailers</action>" >> /tmp/appletrailer.2.xml +echo " </button>" >> /tmp/appletrailer.2.xml +echo "" >> /tmp/appletrailer.2.xml +echo " <button>" >> /tmp/appletrailer.2.xml +echo " <type>VIDEO_BROWSER</type>" >> /tmp/appletrailer.2.xml +echo " <text>Play Random Trailer</text>" >> /tmp/appletrailer.2.xml +echo " <action>EXEC loading.sh && mplayer -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 \$(sort -R /home/mythtv/all_trailers | tail -1)</action>" >> /tmp/appletrailer.2.xml +echo " </button>" >> /tmp/appletrailer.2.xml +echo "" >> /tmp/appletrailer.2.xml + +grep -v TRAILERS /tmp/appletrailer.xml >> /tmp/appletrailer.2.xml +mv /tmp/b.log /home/mythtv/all_trailers +mv /tmp/c.log /home/mythtv/shuffle_trailers +mv /tmp/appletrailer.2.xml /home/mythtv/appletrailer.xml diff --git a/abs/extra/mythappletrailers/loading.sh b/abs/extra/mythappletrailers/loading.sh index e4e85fc..55321fa 100755 --- a/abs/extra/mythappletrailers/loading.sh +++ b/abs/extra/mythappletrailers/loading.sh @@ -1,12 +1,13 @@ #!/bin/bash +msg_client.py --timeout 10 --msg "Loading . . . " -. /etc/osd_cat.cfg || { - color=yellow - outline=2 - outlinecolour=black - shadow=0 - shadowcolour=black - font="-adobe-helvetica-bold-*-*-*-34-*-*-*-*-*-*-*" -} +#. /etc/osd_cat.cfg || { +# color=yellow +# outline=2 +# outlinecolour=black +# shadow=0 +# shadowcolour=black +# font="-adobe-helvetica-bold-*-*-*-34-*-*-*-*-*-*-*" +#} -echo -e "Loading . . . " | osd_cat --pos=middle --align=center --delay=10 --color=$color --outline=$outline --outlinecolour=$outlinecolour --shadow=$shadow --shadowcolour=$shadowcolour --font=$font +#echo -e "Loading . . . " | osd_cat --pos=middle --align=center --delay=10 --color=$color --outline=$outline --outlinecolour=$outlinecolour --shadow=$shadow --shadowcolour=$shadowcolour --font=$font diff --git a/abs/extra/mythappletrailers/mythappletrailers.install b/abs/extra/mythappletrailers/mythappletrailers.install index 96f6717..602b96a 100644 --- a/abs/extra/mythappletrailers/mythappletrailers.install +++ b/abs/extra/mythappletrailers/mythappletrailers.install @@ -1,37 +1,30 @@ # arg 1: the new package version post_install() { - ln -s /home/mythtv/appletrailer.xml /usr/share/mythtv/themes/defaultmenu/appletrailer.xml - mv /usr/share/mythtv/themes/defaultmenu/is.xml /tmp - grep -v -e /mythmenu /tmp/is.xml > /tmp/is.xml.tmp - echo "<!--#MythAppleTrailers-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Apple Trailers</text>" >> /tmp/is.xml.tmp - echo " <action>MENU appletrailer.xml</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#MythAppleTrailers-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "</mythmenu>" >> /tmp/is.xml.tmp - mv /tmp/is.xml.tmp /usr/share/mythtv/themes/defaultmenu/is.xml + ln -s $MYTHHOME/appletrailer.xml /usr/share/mythtv/themes/defaultmenu/appletrailer.xml + /usr/LH/bin/gen_is_xml.py } # arg 1: the new package version # arg 2: the old package version post_upgrade() { + /usr/LH/bin/gen_is_xml.py if [ -e /usr/share/mythtv/themes/defaultmenu/appletrailer.xml ] then exit else - ln -s /home/mythtv/appletrailer.xml /usr/share/mythtv/themes/defaultmenu/appletrailer.xml + ln -s /$MYTHHOME/appletrailer.xml /usr/share/mythtv/themes/defaultmenu/appletrailer.xml fi } # arg 1: the old package version post_remove() { - rm -fr /usr/share/mythtv/appletrailer.xml /usr/share/mythtv/themes/defaulmenu/mythappletrailer.xml - mv /usr/share/mythtv/themes/defaultmenu/is.xml /tmp/is.xml.tmp - sed -e '/\#MythAp/,/\#MythAp/d' < /tmp/is.xml.tmp > /usr/share/mythtv/themes/defaultmenu/is.xml + rm -fr /usr/share/mythtv/appletrailer.xml /usr/share/mythtv/themes/defaulmenu/mythappletrailer.xml + /usr/LH/bin/gen_is_xml.py } +#This bit of code is used to check for MYTHHOME and set it +. /usr/MythVantage/bin/install_functions.sh +home_check + op=$1 shift $op $* diff --git a/abs/extra/mythappletrailers/play_trailer.sh b/abs/extra/mythappletrailers/play_trailer.sh new file mode 100644 index 0000000..b584bd1 --- /dev/null +++ b/abs/extra/mythappletrailers/play_trailer.sh @@ -0,0 +1,8 @@ +#!/bin/bash +for TRAILER in $(cat $1) +do + /usr/bin/loading.sh + mplayer -fs -zoom -really-quiet -user-agent "QuickTime/7.6.2" -cache 16000 $TRAILER +done + + diff --git a/abs/extra/mythappletrailers/shuffle_trailers b/abs/extra/mythappletrailers/shuffle_trailers new file mode 100644 index 0000000..f2d3a5e --- /dev/null +++ b/abs/extra/mythappletrailers/shuffle_trailers @@ -0,0 +1,134 @@ +http://trailers.apple.com/movies/lionsgate/expendables2/expendables2-tlr2_h640w.mov +http://trailers.apple.com/movies/dreamworks/riseoftheguardians/riseoftheguardians-tlr2_h640w.mov +http://trailers.apple.com/movies/focus_features/hydeparkonthehudson/hydeparkonthehudson-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/themaster/themaster-tlr1_h640w.mov +http://trailers.apple.com/movies/sony/searchingforsugarman/searchingforsugarman-tlr1_h640w.mov +http://trailers.apple.com/movies/focus_features/paranorman/paranorman-tlr2_h640w.mov +http://trailers.apple.com/movies/summit/theperksofbeingawallflower/perksofbeingawallflower-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/flyingswords/flyingswords-tlr1b_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/aroyalaffair/aroyalaffair-tlr1_h640w.mov +http://trailers.apple.com/movies/dreamworks/madagascar3/madagascar3-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/funsize/funsize-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/samsara/samsara-tlr2_h640w.mov +http://trailers.apple.com/movies/universal/despicableme2/despicableme2-tsr1_h640w.mov +http://trailers.apple.com/movies/independent/killerjoe/killerjoe-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/ted/ted-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/luv/luv_h640w.mov +http://trailers.apple.com/movies/fox/thewatch/thewatch-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/thewords/thewords-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/chained/chained-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thedarkknightrises/darkknightrises-tlr4_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/thegooddoctor/gooddoctor-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/gijoeretaliation/gijoeretaliation-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/escapefire/escapefire-tlr1_h640w.mov +http://trailers.apple.com/movies/lionsgate/thebigwedding/bigwedding-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/monstersinc3d/monstersinc3d-tlr3_h640w.mov +http://trailers.apple.com/movies/sony/hopesprings/hopesprings-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/cloudatlas/cloudatlas-trailer1b_h640w.mov +http://trailers.apple.com/movies/independent/somewherebetween/somewherebetween-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/herecomestheboom/herecomestheboom-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/soldiersoffortune/soldiersoffortune-tlr1_h640w.mov +http://trailers.apple.com/movies/summit/sinister/sinister-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thehobbit1/thehobbit-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/after/after-tlr2_h640w.mov +http://trailers.apple.com/movies/paramount/hanselandgretel/hanselandgretel-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/thevictim/thevictim-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/7500/7500-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thunderstruck/thunderstruck-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/championsofthedeep/championsofthedeep-tlr1_h640w.mov +http://trailers.apple.com/movies/summit/twilightbreakingdawn2/twilightbd2-tlr2_h640w.mov +http://trailers.apple.com/movies/paramount/cirque/cirque-tl1_h640w.mov +http://trailers.apple.com/movies/fox/taken2/taken2-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/10years/10years-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/stolen/stolen-tlr2_h640w.mov +http://trailers.apple.com/movies/weinstein/thismustbetheplace/thismustbetheplace-tlr1_h640w.mov +http://trailers.apple.com/movies/marvel/theavengers/avengers-7c7b7a-tlr3_h640w.mov +http://trailers.apple.com/movies/newline/thelaststand/laststand-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/klown/klown-tlr1_h640w.mov +http://trailers.apple.com/movies/lionsgate/freelancers/freelancers-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/finding_nemo/findingnemo-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/hitandrun/hitandrun-tl1_h640w.mov +http://trailers.apple.com/movies/independent/theoranges/oranges-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/jackanddiane/jackanddiane-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/arbitrage/arbitrageroad-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/lawless/lawless-tlr1_h640w.mov +http://trailers.apple.com/movies/summit/stepuprevolution/stepuprevolution-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thetroublewiththecurve/troublewiththecurve-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/leastamongsaints/leastamongsaints-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/middleofnowhere/middleofnowhere-tlr1_h640w.mov +http://trailers.apple.com/movies/focus_features/foragoodtimecall/foragoodtimecall-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/endofwatch/endofwatch-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/flight/flight-tlr1zyx77_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/2daysinny/2daysinny-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/vhs/vhs-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/sevenpsychopaths/sevenpsychopaths-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/helloimustbegoing/helloimustbegoing_h640w.mov +http://trailers.apple.com/movies/universal/lesmiserables/lesmiserables-tsr1_h640w.mov +http://trailers.apple.com/movies/weinstein/warofthebuttons/warofthebuttons-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/redhooksummer/redhooksummer-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/saintsandsoldiers2/saintsandsoldiers2-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/pitchperfect/pitchperfect-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/frankenweenie/frankenweenie-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/toysintheattic/toysintheattic-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/battleoftheyear/battleoftheyear-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/oogieloves/oog-tlr2_h640w.mov +http://trailers.apple.com/movies/summit/theimpossible/theimpossible-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/sparkle/sparkle-tlr1_h640w.mov +http://trailers.apple.com/movies/fox/wontbackdown/wontbackdown-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/argo/argo-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/themanwiththeironfists/manwiththeironfists-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/360/360-tlr1_h640w.mov +http://trailers.apple.com/movies/lionsgate/alexcross/alexcross-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/rec3/rec3-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/silverliningsplaybook/silverlinings-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/looper/looper-tlr2_h640w.mov +http://trailers.apple.com/movies/lionsgate/thehungergames/thehungergames-tlr1a_h640w.mov +http://trailers.apple.com/movies/sony_pictures/premiumrush/premiumrush-tlr2_h640w.mov +http://trailers.apple.com/movies/lionsgate/dredd/dredd-tlr1_h640w.mov +http://trailers.apple.com/movies/fox/chasingmavericks/chasingmaverics-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/doggieb/doggieb-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/djangounchained/django-tsr1_h640w.mov +http://trailers.apple.com/movies/fox/iceage4/iceage4-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/thetallman/thetallman-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/troublewiththetruth/troublewiththetruth-tlr1_h640w.mov +http://trailers.apple.com/movies/fox_searchlight/thesessions/thesessions-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/sacrifice/sacrifice-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/houseattheendofthestreet/houseattheendofthestreet-tlr3_h640w.mov +http://trailers.apple.com/movies/disney/theoddlifeoftimothygreen/oddlifeoftimothygreen-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/babymakers/babymakers-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/robotfrank/robotandfrank-tlr1_h640w.mov +http://trailers.apple.com/movies/weinstein/killingthemsoftly/killingthemsoftly-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/compliance/compliance-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/celesteandjesseforever/celesteandjesse-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/skyfall/skyfall-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/thepaperboy/thepaperboy-tlr1_h640w.mov +http://trailers.apple.com/movies/paramount/paranormalactivity4/paranormalactivity4-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/generaleducation/generaleducation-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/thegreatgatsby/greatgatsby-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/residentevilretribution/residentevil-tlr2_h640w.mov +http://trailers.apple.com/movies/fox/diaryofawimpykiddogdays/diaryofawimpykiddogday-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/unconditional/unconditional-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/thisis40/thisis40-tlr3_h640w.mov +http://trailers.apple.com/movies/independent/theawakening/awakening-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/ozthegreatandpowerful/oz-tlr1-2938tyz_h640w.mov +http://trailers.apple.com/movies/sony_pictures/totalrecall/totalrecall-tlr4_h640w.mov +http://trailers.apple.com/movies/wb/thecampaign/thecampaign-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/solomonkane/solomonkane-tlr1_h640w.mov +http://trailers.apple.com/movies/wb/manofsteel/manofsteel-tlr1-r_h640w.mov +http://trailers.apple.com/movies/wb/theapparition/theapparition-tlr1_h640w.mov +http://trailers.apple.com/movies/universal/bournelegacy/bournelegacy-tlr2_h640w.mov +http://trailers.apple.com/movies/independent/bachelorette/bachelorette-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/nobodywalks/nobodywalks-tlr1_h640w.mov +http://trailers.apple.com/movies/fox_searchlight/beastsofthesouthernwild/beastsofthesouthernwild-tlr1_h640w.mov +http://trailers.apple.com/movies/magnolia_pictures/deadfall/deadfall-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/branded/branded-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/thebay/thebay-tlr_h640w.mov +http://trailers.apple.com/movies/sony/chickenwithplums/chickenwithplums-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/brave/brave-tlr5_h640w.mov +http://trailers.apple.com/movies/focus_features/annakarenina/annakerenina-tlr1_h640w.mov +http://trailers.apple.com/movies/lionsgate/thepossession/possession-tlr1_h640w.mov +http://trailers.apple.com/movies/fox/lifeofpi/lifeofpi-tlr1_h640w.mov +http://trailers.apple.com/movies/disney/wreckitralph/wreakitralph-tlr1_h640w.mov +http://trailers.apple.com/movies/sony_pictures/hoteltransylvania/hoteltransylvania-tlr2_h640w.mov +http://trailers.apple.com/movies/disney/monstersuniversity/monstersuniversity-tlr1_h640w.mov +http://trailers.apple.com/movies/independent/goats/goats-tlr1_h640w.mov diff --git a/abs/extra/mythappletrailers/trailers b/abs/extra/mythappletrailers/trailers index 241a60a..9611439 100755 --- a/abs/extra/mythappletrailers/trailers +++ b/abs/extra/mythappletrailers/trailers @@ -1,2 +1,2 @@ #!/bin/sh -su mythtv -c '/usr/bin/php -q /usr/bin/myth_trailers_grabber > /home/mythtv/appletrailer.xml && /usr/bin/fix_aple_url.sh' 2>/dev/null +su mythtv -c '/usr/bin/php -q /usr/bin/myth_trailers_grabber > /home/mythtv/appletrailer.xml && /usr/bin/fix_aple_url.sh && /usr/bin/gen_trailer_menu.sh' 2>/dev/null diff --git a/abs/extra/mythexport/PKGBUILD b/abs/extra/mythexport/PKGBUILD index 1a51bd2..9a973e5 100644 --- a/abs/extra/mythexport/PKGBUILD +++ b/abs/extra/mythexport/PKGBUILD @@ -13,8 +13,9 @@ depends=('atomicparsley' 'perl-config-simple' 'perl-net-upnp' 'perl-xml-rss' optdepends=('lighttpd: For web based interaction') url="http://www.ubuntuupdates.org/mythexport" source=(https://launchpad.net/ubuntu/precise/+source/${pkgname}/${pkgver}-0ubuntu2/+files/${pkgname}_${pkgver}.orig.tar.gz - mythexport.lighttpd.include - linhes.diff) + mythexport.lighttpd.include mythexport_gen_light.conf + linhes.diff + ) install=mythexport.install build() { @@ -32,6 +33,9 @@ package() { # Install lighttpd include file install -D -m644 ${srcdir}/mythexport.lighttpd.include ${pkgdir}/etc/mythexport/mythexport.lighttpd.include + #gen_light_conf + install -D -m0744 ${srcdir}/mythexport_gen_light.conf ${pkgdir}/etc/gen_light_conf.d/mythexport.conf + # Compress man pages gzip -9 *.1 install -D -m644 mythexport.1.gz ${pkgdir}/usr/share/man/man1/mythexport.1.gz || return 1 @@ -43,4 +47,5 @@ package() { } md5sums=('a780c00536a4680ce7d79057658971c8' 'b08404255abcc99a35e9c1ab8e0dec57' + 'e6f84aa222eddf803a81d1b92a315d06' 'e32369bb2fde6352798e3522d67527b2') diff --git a/abs/extra/mythexport/mythexport.install b/abs/extra/mythexport/mythexport.install index d2c1ae0..2718715 100644 --- a/abs/extra/mythexport/mythexport.install +++ b/abs/extra/mythexport/mythexport.install @@ -13,19 +13,11 @@ post_install() { mysql -u root mythconverg < /usr/share/mythtv/mythexport.sql ln -s /usr/share/mythtv/mythexport /data/srv/httpd/htdocs ln -s /myth/mythexport /usr/share/mythtv/mythexport/video - ln -s /home/mythtv/.mythtv/config.xml /srv/http/.mythtv + ln -s $MYTHHOME/.mythtv/config.xml /srv/http/.mythtv chown mythtv:mythtv /var/run/mythtv chown -R mythtv:mythtv /etc/mythtv - COUNT=`grep -c "include \"/etc/mythexport/mythexport.lighttpd.include\"" /etc/lighttpd/conf.include` - - if [ $COUNT == 0 ] ; then - echo "==> Adding mythexport.lighttpd.include to conf.include" - echo "include \"/etc/mythexport/mythexport.lighttpd.include\"" >> \ - /etc/lighttpd/conf.include - fi - - echo "" + gen_light_include.py echo "==> Forcing a re-read of lighttpd's configuration file." echo "" /sbin/sv hup /service/lighttpd @@ -45,15 +37,7 @@ post_install() { } post_upgrade() { - - COUNT=`grep -c "include \"/etc/mythexport/mythexport.lighttpd.include\"" /etc/lighttpd/conf.include` - - if [ $COUNT == 0 ] ; then - echo "==> Adding mythexport.lighttpd.include to conf.include" - echo "include \"/etc/mythexport/mythexport.lighttpd.include\"" >> \ - /etc/lighttpd/conf.include - fi - + gen_light_include.py echo "" echo "==> Forcing a re-read of lighttpd's configuration file." echo "" @@ -68,15 +52,7 @@ pre_remove() { } post_remove() { - - COUNT=`grep -c "include \"/etc/mythexport/mythexport.lighttpd.include\"" /etc/lighttpd/conf.include` - - if [ $COUNT -gt 0 ] ; then - echo "==> Removing mythexport.lighttpd.include from conf.include" - sed -e 's#include \"/etc/mythexport/mythexport.lighttpd.include\"##' -i \ - /etc/lighttpd/conf.include - fi - + gen_light_include.py echo "" echo "==> Forcing re-read of lighttpd's configuration file." echo "" diff --git a/abs/extra/mythexport/mythexport_gen_light.conf b/abs/extra/mythexport/mythexport_gen_light.conf new file mode 100644 index 0000000..f495657 --- /dev/null +++ b/abs/extra/mythexport/mythexport_gen_light.conf @@ -0,0 +1 @@ +include "/etc/mythexport/mythexport.lighttpd.include" diff --git a/abs/extra/mythexpress/PKGBUILD b/abs/extra/mythexpress/PKGBUILD new file mode 100755 index 0000000..37a9dfb --- /dev/null +++ b/abs/extra/mythexpress/PKGBUILD @@ -0,0 +1,46 @@ +pkgname=mythexpress +pkgver=20121210 +pkgrel=2 +pkgdesc="MythExpress is a browser-based interface to MythTV HTTP streaming capability" +arch=('i686' 'x86_64') +url="https://github.com/MythTV-Clients/MythExpress" +license=('GPL3') +depends=('nodejs' 'avahi' ) +makedepends=('git') +source=('mythexpress.html' ) + +_gitroot="https://github.com/MythTV-Clients/MythExpress.git" +_gitname=MythExpress + +build() { + cd "${srcdir}" + + if [ ! -d "${srcdir}/${_gitname}" ]; then + git clone ${_gitroot} + else + cd ${_gitname} && git pull origin + fi + + msg "GIT checkout done." + + + cd "${srcdir}" + if [ -e ${_gitname}-build ] + then + rm -rf ${_gitname}-build + fi + cp -rf "${_gitname}" "${_gitname}-build" + + cd "${srcdir}/${_gitname}-build" + npm install || exit 1 + +} + +package() { + cd "${srcdir}" + mkdir -p $pkgdir/usr/$pkgname + rsync -arvp --exclude .git ${_gitname}-build/ $pkgdir/usr/${pkgname} + cd $startdir/src + install -m755 -D mythexpress.html $pkgdir/data/srv/httpd/htdocs/mythexpress.html +} +md5sums=('93b0d936c5c7838e1c0367f2d5286b3b') diff --git a/abs/extra/mythexpress/mythexpress.html b/abs/extra/mythexpress/mythexpress.html new file mode 100755 index 0000000..d9dd9a3 --- /dev/null +++ b/abs/extra/mythexpress/mythexpress.html @@ -0,0 +1,30 @@ +<head> +<script type="text/javascript"> +function r() +{ + current_hostname=parent.location.hostname + top.frames["content"].location.href = ( "http://" + current_hostname + ":6544" ) ; + +} + +function express() +{ + current_hostname=parent.location.hostname + top.frames["content"].location.href = ( "http://" + current_hostname + ":6565" ) ; + + } + +function remyth() +{ + current_hostname=parent.location.hostname + top.frames["content"].location.href = ( "http://" + current_hostname + ":8088" ) ; + + } + + +</script> +</head> +<body onload="JavaScript:express();"> + +</body> +</html>
\ No newline at end of file diff --git a/abs/extra/nacl-toolchain-newlib/PKGBUILD b/abs/extra/nacl-toolchain-newlib/PKGBUILD new file mode 100644 index 0000000..0635d1e --- /dev/null +++ b/abs/extra/nacl-toolchain-newlib/PKGBUILD @@ -0,0 +1,54 @@ +# $Id: PKGBUILD 165618 2012-08-27 12:19:30Z foutrelis $ +# Maintainer: Evangelos Foutras <evangelos@foutrelis.com> +# Contributor: Gustavo Alvarez <sl1pkn07@gmail.com> + +pkgname=nacl-toolchain-newlib +pkgver=9513 +pkgrel=1 +_binutilsver=2.20.1 +_newlibver=1.20.0 +_gccver=4.4.3 +pkgdesc="Native Client newlib-based toolchain (only for compiling IRT)" +arch=('i686' 'x86_64') +url="http://code.google.com/chrome/nativeclient/" +license=('BSD' 'GPL3' 'LGPL3' 'GPL2' 'FDL' 'custom') +depends=('zlib' 'mpfr') +options=('!strip') +source=(http://ftp.gnu.org/gnu/binutils/binutils-$_binutilsver.tar.bz2 + ftp://sources.redhat.com/pub/newlib/newlib-$_newlibver.tar.gz + http://ftp.gnu.org/gnu/gcc/gcc-$_gccver/gcc-$_gccver.tar.bz2 + http://commondatastorage.googleapis.com/nativeclient-archive2/x86_toolchain/r$pkgver/nacltoolchain-buildscripts-r$pkgver.tar.gz + http://commondatastorage.googleapis.com/nativeclient-archive2/x86_toolchain/r$pkgver/naclbinutils-$_binutilsver-r$pkgver.patch.bz2 + http://commondatastorage.googleapis.com/nativeclient-archive2/x86_toolchain/r$pkgver/naclnewlib-$_newlibver-r$pkgver.patch.bz2 + http://commondatastorage.googleapis.com/nativeclient-archive2/x86_toolchain/r$pkgver/naclgcc-$_gccver-r$pkgver.patch.bz2) +sha256sums=('71d37c96451333c5c0b84b170169fdcb138bbb27397dc06281905d9717c8ed64' + 'c644b2847244278c57bec2ddda69d8fab5a7c767f3b9af69aa7aa3da823ff692' + '97ed664694b02b4d58ac2cafe443d02a388f9cb3645e7778843b5086a5fec040' + '3c3d6e63ef8caec24a9e368b72e6c94a28edc8c016da5fef73a312b4a3514909' + 'caaefc2bf90325f152bd0998a29fcad425522a22c6ce373366c4dde2b76c5338' + 'be9e48f8714eaadfc3349ac6d8b077050b719d16a3e7592573670cee7a3c4934' + 'ccbc83627bc7c36f7bbe994ccffe4d51584d8812f2ed62f08528c173e06dcf85') + +build() { + cd "$srcdir" + + mkdir SRC + mv binutils-$_binutilsver SRC/binutils + mv newlib-$_newlibver SRC/newlib + mv gcc-$_gccver SRC/gcc + + for _patch in *.patch; do + patch -d SRC -Np0 -i "$srcdir/$_patch" + done + + make PREFIX="$srcdir/$pkgname" CANNED_REVISION="yes" build-with-newlib +} + +package() { + cd "$srcdir" + + install -d "$pkgdir/usr/lib" + mv $pkgname "$pkgdir/usr/lib/$pkgname" +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/nbd/PKGBUILD b/abs/extra/nbd/PKGBUILD new file mode 100644 index 0000000..e02e890 --- /dev/null +++ b/abs/extra/nbd/PKGBUILD @@ -0,0 +1,42 @@ +# $Id: PKGBUILD 73924 2012-07-17 05:54:37Z svenstaro $ +# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> +# Contributor: Christian Hesse <mail@eworm.de> +# Contributor: Ionut Biru <ibiru@archlinux.org> +# Contributor: Gerhard Brauer <gerbra@archlinux.de> + +pkgname=nbd +pkgver=3.2 +pkgrel=2 +pkgdesc="tools for network block devices, allowing you to use remote block devices over TCP/IP" +arch=('i686' 'x86_64') +url="http://nbd.sourceforge.net" +license=('GPL') +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2 + config nbd nbd.service) +backup=('etc/nbd-server/config') +depends=('glib2') +install=nbd.install +md5sums=('9cafce4ecfb55e670d7ded4c8f4e6bc9' + '2d05d426b8c2708d5f8a0d028fcbae05' + 'e7b13a8b3369e11927d9917664557efa' + '5d1acc143018117174f79eff15afa038') + +build(){ + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr --sysconfdir=/etc + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + + install -D -m644 "${srcdir}"/config "${pkgdir}"/etc/nbd-server/config + install -D -m755 "${srcdir}"/nbd "${pkgdir}"/etc/rc.d/nbd + install -D -m644 "${srcdir}"/nbd.service "${pkgdir}"/usr/lib/systemd/system/nbd.service + + install -D -m644 README "${pkgdir}"/usr/share/doc/nbd/README +} diff --git a/abs/extra/nbd/config b/abs/extra/nbd/config new file mode 100644 index 0000000..777f0ef --- /dev/null +++ b/abs/extra/nbd/config @@ -0,0 +1,33 @@ +[generic] + # The [generic] section is required, even if nothing is specified + # there. + # When either of these options are specified, nbd-server drops + # privileges to the given user and group after opening ports, but + # _before_ opening files. + user = nbd + group = nbd + # Since version 2.9.17, nbd-server will do exports on a name + # basis (the used name is the name of the section in which the + # export is specified). This however required an incompatible + # protocol change. To enable backwards-compatible port-based + # exports, uncomment the following line: + # oldstyle = true +[export1] + exportname = /export/nbd/export1-file + # The following line will be ignored unless the + # "oldstyle = true" line in the generic section above is + # enabled. + #port = 12345 + authfile = /export/nbd/export1-authfile + timeout = 30 + filesize = 10000000 + readonly = false + multifile = false + copyonwrite = false + prerun = dd if=/dev/zero of=%s bs=1k count=500 + postrun = rm -f %s +[otherexport] + exportname = /export/nbd/experiment + # The other options are all optional, except this one in case + # the oldstyle option is used in [generic]: + # port = 12346 diff --git a/abs/extra/nbd/nbd b/abs/extra/nbd/nbd new file mode 100644 index 0000000..76d16c7 --- /dev/null +++ b/abs/extra/nbd/nbd @@ -0,0 +1,39 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PIDFILE="/var/run/nbd-server.pid" +PID=`cat $PIDFILE 2>/dev/null` +case "$1" in + start) + stat_busy "Starting Network Block Device Server" + if [ "$PID" = "" ]; then + /usr/bin/nbd-server + fi + if [ "$PID" != "" -o $? -gt 0 ]; then + stat_fail + else + add_daemon nbd + stat_done + fi + ;; + stop) + stat_busy "Stopping Network Block Device Server" + [ ! -z "$PID" ] && kill $PID &> /dev/null + rm -f $PIDFILE + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon nbd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/abs/extra/nbd/nbd.install b/abs/extra/nbd/nbd.install new file mode 100644 index 0000000..9e7a01e --- /dev/null +++ b/abs/extra/nbd/nbd.install @@ -0,0 +1,13 @@ +post_install() { + getent group "nbd" &>/dev/null || groupadd -r -g 44 nbd 1>/dev/null + getent passwd "nbd" &>/dev/null || useradd -r -u 44 -g nbd -d "/var/empty" -s "/bin/false" nbd 1>/dev/null +} + +post_upgrade() { + post_install +} + +pre_remove() { + getent passwd "nbd" &>/dev/null && userdel nbd 1>/dev/null + getent group "nbd" &>/dev/null && groupdel nbd 1>/dev/null +} diff --git a/abs/extra/nbd/nbd.service b/abs/extra/nbd/nbd.service new file mode 100644 index 0000000..3d58051 --- /dev/null +++ b/abs/extra/nbd/nbd.service @@ -0,0 +1,10 @@ +[Unit] +Description=Network Block Device Server +After=network.target + +[Service] +Type=forking +ExecStart=/usr/bin/nbd-server + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/ncdu/PKGBUILD b/abs/extra/ncdu/PKGBUILD new file mode 100644 index 0000000..011f7e0 --- /dev/null +++ b/abs/extra/ncdu/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 76727 2012-09-27 22:43:52Z bisson $ + +# Contributor: lp76 <l.peduto@gmail.com> +# Contributor: Daenyth <Daenyth+Arch AT gmail DOT com> +# Maintainer: Gaetan Bisson <bisson@archlinux.org> + +pkgname=ncdu +pkgver=1.9 +pkgrel=1 +pkgdesc='Disk usage analyzer with an ncurses interface' +url='http://dev.yorhel.nl/ncdu/' +license=('custom:MIT') +depends=('ncurses') +arch=('i686' 'x86_64') +source=("http://dev.yorhel.nl/download/${pkgname}-${pkgver}.tar.gz") +sha1sums=('27cb5464b192db8ffdf0a894fe51d29985348eb0') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/abs/extra/neon/PKGBUILD b/abs/extra/neon/PKGBUILD index 64e21c5..9ab0fd8 100644 --- a/abs/extra/neon/PKGBUILD +++ b/abs/extra/neon/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 129362 2011-06-27 05:41:06Z andrea $ +# $Id: PKGBUILD 153967 2012-03-21 06:21:04Z pierre $ # Maintainer: # Contributor: Tom Newsom <Jeepster@gmx.co.uk> # Contributor: Juergen Hoetzel <juergen@archlinux.org> pkgname=neon pkgver=0.29.6 -pkgrel=2 +pkgrel=4 pkgdesc="HTTP and WebDAV client library with a C interface" arch=('i686' 'x86_64') license=('GPL' 'LGPL') -depends=('heimdal' 'expat' 'ca-certificates') +depends=('krb5' 'expat' 'ca-certificates') url="http://www.webdav.org/neon/" source=("http://www.webdav.org/${pkgname}/${pkgname}-${pkgver}.tar.gz") md5sums=('591e0c82e6979e7e615211b386b8f6bc') diff --git a/abs/extra/net-snmp/PKGBUILD b/abs/extra/net-snmp/PKGBUILD new file mode 100644 index 0000000..d70068f --- /dev/null +++ b/abs/extra/net-snmp/PKGBUILD @@ -0,0 +1,58 @@ +# $Id: PKGBUILD 160499 2012-06-02 10:26:47Z bluewind $ +# Maintainer: +# Contributor: Dale Blount <dale@archlinux.org> + +pkgname=net-snmp +pkgver=5.7.1 +pkgrel=3 +pkgdesc="A suite of applications used to implement SNMP v1, SNMP v2c and SNMP v3 using both IPv4 and IPv6" +arch=('i686' 'x86_64') +url="http://www.net-snmp.org/" +license=('BSD') +depends=('openssl' 'libnl' 'pciutils') +makedepends=('python2-distribute') +optdepends=('perl-term-readkey: for snmpcheck application' + 'perl-tk: for snmpcheck and tkmib applications' + 'python2: for the python modules') +provides=('ucd-snmp') +backup=('etc/conf.d/snmpd') +options=('!libtool' '!makeflags' '!emptydirs') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.asc} + snmpd.confd snmpd.rc libnl32.patch) +sha1sums=('ddb82ce1112ef0642869d3c8d7c7e585f151849a' + '2bdc2839ce09d7daa608cd54687fa8beb47ed907' + 'cf811da9e57bbca34d8e2a3c358bb3bfc0c2b33b' + '90600c0141eed10d6e3ca3ccc97ad8dda15c2112' + '74a9848b95f63378eb1753fc309d2b74de5afb0f') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # http://sourceforge.net/tracker/index.php?func=detail&aid=3250304&group_id=12694&atid=112694 + patch -Np1 -i "$srcdir/libnl32.patch" + autoreconf -f -i + + sed -i -e "s:\(install --basedir=\$\$dir\):\1 --root='${pkgdir}':" Makefile.in + PYTHONPROG=/usr/bin/python2 ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ + --enable-ucd-snmp-compatibility \ + --enable-ipv6 \ + --with-python-modules \ + --with-default-snmp-version="3" \ + --with-sys-contact="root@localhost" \ + --with-sys-location="Unknown" \ + --with-logfile="/var/log/snmpd.log" \ + --with-mib-modules="host misc/ipfwacc ucd-snmp/diskio tunnel ucd-snmp/dlmod" \ + --with-persistent-directory="/var/net-snmp" \ + --disable-static + make NETSNMP_DONT_CHECK_VERSION=1 +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" INSTALL_PREFIX="${pkgdir}" INSTALLDIRS=vendor install + install -D -m755 "${srcdir}/snmpd.rc" "${pkgdir}/etc/rc.d/snmpd" + install -D -m644 "${srcdir}/snmpd.confd" "${pkgdir}/etc/conf.d/snmpd" + install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/abs/extra/net-snmp/libnl32.patch b/abs/extra/net-snmp/libnl32.patch new file mode 100644 index 0000000..d93d7ef --- /dev/null +++ b/abs/extra/net-snmp/libnl32.patch @@ -0,0 +1,80 @@ +diff -u -r net-snmp-5.7.1/agent/mibgroup/mibII/tcpTable.c net-snmp-5.7.1-libnl32/agent/mibgroup/mibII/tcpTable.c +--- net-snmp-5.7.1/agent/mibgroup/mibII/tcpTable.c 2011-09-28 06:53:47.000000000 +0200 ++++ net-snmp-5.7.1-libnl32/agent/mibgroup/mibII/tcpTable.c 2012-02-09 20:02:49.136022132 +0100 +@@ -566,8 +566,9 @@ + static int + tcpTable_load_netlink(void) + { ++ int err; + /* TODO: perhaps use permanent nl handle? */ +- struct nl_handle *nl = nl_handle_alloc(); ++ struct nl_sock *nl = nl_socket_alloc(); + + if (nl == NULL) { + DEBUGMSGTL(("mibII/tcpTable", "Failed to allocate netlink handle\n")); +@@ -575,10 +576,10 @@ + return -1; + } + +- if (nl_connect(nl, NETLINK_INET_DIAG) < 0) { +- DEBUGMSGTL(("mibII/tcpTable", "Failed to connect to netlink: %s\n", nl_geterror())); +- snmp_log(LOG_ERR, "snmpd: Couldn't connect to netlink: %s\n", nl_geterror()); +- nl_handle_destroy(nl); ++ if ((err = nl_connect(nl, NETLINK_INET_DIAG)) < 0) { ++ DEBUGMSGTL(("mibII/tcpTable", "Failed to connect to netlink: %s\n", nl_geterror(err))); ++ snmp_log(LOG_ERR, "snmpd: Couldn't connect to netlink: %s\n", nl_geterror(err)); ++ nl_socket_free(nl); + return -1; + } + +@@ -590,10 +591,10 @@ + struct nl_msg *nm = nlmsg_alloc_simple(TCPDIAG_GETSOCK, NLM_F_ROOT|NLM_F_MATCH|NLM_F_REQUEST); + nlmsg_append(nm, &req, sizeof(struct inet_diag_req), 0); + +- if (nl_send_auto_complete(nl, nm) < 0) { +- DEBUGMSGTL(("mibII/tcpTable", "nl_send_autocomplete(): %s\n", nl_geterror())); +- snmp_log(LOG_ERR, "snmpd: nl_send_autocomplete(): %s\n", nl_geterror()); +- nl_handle_destroy(nl); ++ if ((err = nl_send_auto_complete(nl, nm)) < 0) { ++ DEBUGMSGTL(("mibII/tcpTable", "nl_send_autocomplete(): %s\n", nl_geterror(err))); ++ snmp_log(LOG_ERR, "snmpd: nl_send_autocomplete(): %s\n", nl_geterror(err)); ++ nl_socket_free(nl); + return -1; + } + nlmsg_free(nm); +@@ -604,9 +605,9 @@ + + while (running) { + if ((len = nl_recv(nl, &peer, &buf, NULL)) <= 0) { +- DEBUGMSGTL(("mibII/tcpTable", "nl_recv(): %s\n", nl_geterror())); +- snmp_log(LOG_ERR, "snmpd: nl_recv(): %s\n", nl_geterror()); +- nl_handle_destroy(nl); ++ DEBUGMSGTL(("mibII/tcpTable", "nl_recv(): %s\n", nl_geterror(len))); ++ snmp_log(LOG_ERR, "snmpd: nl_recv(): %s\n", nl_geterror(len)); ++ nl_socket_free(nl); + return -1; + } + +@@ -655,7 +656,7 @@ + free(buf); + } + +- nl_handle_destroy(nl); ++ nl_socket_free(nl); + + if (tcp_head) { + DEBUGMSGTL(("mibII/tcpTable", "Loaded TCP Table using netlink\n")); +diff -u -r net-snmp-5.7.1/configure.d/config_os_libs2 net-snmp-5.7.1-libnl32/configure.d/config_os_libs2 +--- net-snmp-5.7.1/configure.d/config_os_libs2 2011-09-28 06:53:47.000000000 +0200 ++++ net-snmp-5.7.1-libnl32/configure.d/config_os_libs2 2012-02-09 20:10:44.282165275 +0100 +@@ -224,8 +224,9 @@ + if test "x$with_nl" != "xno"; then + case $target_os in + linux*) # Check for libnl (linux) ++ CPPFLAGS="$CPPFLAGS $(pkg-config --cflags-only-I libnl-3.0)" + NETSNMP_SEARCH_LIBS( +- nl_connect, nl, ++ nl_connect, nl-3, + [AC_CHECK_HEADERS(netlink/netlink.h)],,, LMIBLIBS) + ;; + esac diff --git a/abs/extra/net-snmp/snmpd.confd b/abs/extra/net-snmp/snmpd.confd new file mode 100644 index 0000000..926b09b --- /dev/null +++ b/abs/extra/net-snmp/snmpd.confd @@ -0,0 +1,5 @@ +# +# Parameters to be passed to snmpd +# +SNMPD_ARGS="" + diff --git a/abs/extra/net-snmp/snmpd.rc b/abs/extra/net-snmp/snmpd.rc new file mode 100644 index 0000000..b00c09f --- /dev/null +++ b/abs/extra/net-snmp/snmpd.rc @@ -0,0 +1,39 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/snmpd + +PID=`pidof -o %PPID /usr/sbin/snmpd` +case "$1" in + start) + stat_busy "Starting Net-SNMP" + [ -z "$PID" ] && /usr/sbin/snmpd $SNMPD_ARGS + if [ $? -gt 0 ]; then + stat_fail + else + echo $PID > /var/run/snmpd.pid + add_daemon snmpd + stat_done + fi + ;; + stop) + stat_busy "Stopping Net-SNMP" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm /var/run/snmpd.pid + rm_daemon snmpd + stat_done + fi + ;; + restart) + $0 stop + sleep 2 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/extra/netkit-bsd-finger/LICENSE b/abs/extra/netkit-bsd-finger/LICENSE deleted file mode 100644 index 7825451..0000000 --- a/abs/extra/netkit-bsd-finger/LICENSE +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 1989 The Regents of the University of California. - * All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Tony Nardo of the Johns Hopkins University/Applied Physics Lab. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - diff --git a/abs/extra/netkit-bsd-finger/PKGBUILD b/abs/extra/netkit-bsd-finger/PKGBUILD deleted file mode 100644 index 06a45cc..0000000 --- a/abs/extra/netkit-bsd-finger/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 35715 2009-04-16 03:28:17Z eric $ -# Maintainer: dorphell <dorphell@archlinux.org> -pkgname=netkit-bsd-finger -pkgver=0.17 -pkgrel=4 -pkgdesc="bsd-finger ported to Linux" -arch=('i686' 'x86_64') -url="ftp://ftp.uk.linux.org/pub/linux/Networking/netkit" -license=('BSD') -depends=('glibc' 'xinetd') -backup=('etc/xinetd.d/finger') -source=(ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/bsd-finger-$pkgver.tar.gz finger.xinetd LICENSE) -md5sums=('52bf281aac8814bf56cdc92f7661ee75' 'a8682004dc8dee356065162bde892b47'\ - '5fc568418a0379fc3a358ed1c2523b44') - -build() { - cd $srcdir/bsd-finger-$pkgver - install -d $pkgdir/usr/{bin,sbin} $pkgdir/usr/share/man/{man1,man8} - ./configure --prefix=/usr || return 1 - sed -i 's@include <sys/time.h>@include <time.h>@' finger/lprint.c || return 1 - sed -i 's@include <sys/time.h>@include <time.h>@' finger/sprint.c || return 1 - make || return 1 - make INSTALLROOT=$pkgdir MANDIR=/usr/share/man install || return 1 - install -D -m644 $srcdir/finger.xinetd $pkgdir/etc/xinetd.d/finger || return 1 - install -D -m644 ../LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/abs/extra/netkit-bsd-finger/finger.xinetd b/abs/extra/netkit-bsd-finger/finger.xinetd deleted file mode 100644 index cc9a8b1..0000000 --- a/abs/extra/netkit-bsd-finger/finger.xinetd +++ /dev/null @@ -1,8 +0,0 @@ -service finger -{ - socket_type = stream - wait = no - user = nobody - server = /usr/sbin/in.fingerd - disable = yes -} diff --git a/abs/extra/netpbm/PKGBUILD b/abs/extra/netpbm/PKGBUILD index 14ddc32..b447bee 100644 --- a/abs/extra/netpbm/PKGBUILD +++ b/abs/extra/netpbm/PKGBUILD @@ -1,37 +1,36 @@ -# $Id: PKGBUILD 88007 2010-08-19 02:32:47Z eric $ +# $Id: PKGBUILD 148858 2012-02-05 11:53:06Z ibiru $ # Maintainer: Kevin Piche <kevin@archlinux.org> -# Contributor: Jochem Kossen <j.kossen@home.nl> pkgname=netpbm -pkgver=10.47.18 +pkgver=10.57.1 pkgrel=1 pkgdesc="A toolkit for manipulation of graphic images" arch=('i686' 'x86_64') license=('custom' 'BSD' 'GPL' 'LGPL') url="http://netpbm.sourceforge.net/" -depends=('perl' 'libjpeg' 'libpng' 'libtiff' 'libxml2') +depends=('perl' 'libpng' 'libtiff' 'libxml2') makedepends=('python2') options=('!makeflags') # Releases after 10.34 are available via SVN only. -# Get stable tarball here: http://netpbm.sourceforge.net/release.html#tarball -# get doc with: wget --recursive --relative -nH http://netpbm.sourceforge.net/doc/ +# Get Advanced tarball here: http://netpbm.sourceforge.net/release.html#tarball +# Get version number from version.mk +# Get docs with: wget --recursive --relative -nH http://netpbm.sourceforge.net/doc/ source=(ftp://ftp.archlinux.org/other/netpbm/${pkgname}-${pkgver}.tar.gz \ ftp://ftp.archlinux.org/other/netpbm/netpbm-doc-22Feb2009.tar.xz \ - libpng-1.4.patch netpbm-CAN-2005-2471.patch \ - netpbm-security-code.patch netpbm-security-scripts.patch) -md5sums=('c3b66d329f818b6b4f02f7367ce1a6f8' '48efce0093c5f242bce3072958fe88c3'\ - '6a8319e77f2d41881ee11c86b78c51d0' '07ee863e6f951250e8d0a08243c828c7'\ - 'fac4c9bedff9d90ac5a66e93d8c2eb33' 'cbb689129c82d16360d7f840b86789c7') -sha1sums=('d670574754f161e37534c16f86ebda08a4266774' 'dfeba9f9a5fe987d64db0aadb5ca8c1b20fcead2'\ - 'ab2e67374871b8b6c0c8b69a24e3502e68487759' '456b76004622479f6ee81107c54b5211a1663a6a'\ - '5af979e8fb7d3bbb7e731eed62326bb594bc91b3' '2ac31f714121e08e47af9337c6bbaab3cbfc5c75') + netpbm-CAN-2005-2471.patch netpbm-security-code.patch netpbm-security-scripts.patch) +sha1sums=('cd0b99333faf994a680d77c5d217034df35ebd4e' + 'dfeba9f9a5fe987d64db0aadb5ca8c1b20fcead2' + 'b79cf9d42488fea065ba16262ed97694c47af08d' + '4cd5b94a24886ecae3973c5ae104d8298fe5a1f5' + '2ac31f714121e08e47af9337c6bbaab3cbfc5c75') build() { - cd "${srcdir}/stable" - patch -p1 < ../libpng-1.4.patch + cd "${srcdir}/advanced" patch -p1 < ../netpbm-CAN-2005-2471.patch patch -p1 < ../netpbm-security-code.patch patch -p1 < ../netpbm-security-scripts.patch + sed -i 's|#!/usr/bin/python|#!/usr/bin/python2|' buildtools/makeman + sed -i 's|@python|@python2|' buildtools/manpage.mk cp config.mk.in config.mk [ "${CARCH}" = 'x86_64' ] && echo 'CFLAGS_SHLIB = -fPIC' >> config.mk @@ -41,42 +40,33 @@ build() { echo 'PNGLIB = libpng.so' >> config.mk echo 'ZLIB = libz.so' >> config.mk - sed -i 's|PKGMANDIR = man|PKGMANDIR = share/man|' common.mk sed -i 's|misc|share/netpbm|' common.mk sed -i 's|/link|/lib|' lib/Makefile sed -i 's|install.manweb install.man|install.man|' GNUmakefile - sed -i '/MANUALS1 = $(BINARIES) $(SCRIPTS)/a\ - MANUALS1 += bmptoppm faxformat gemtopbm jpegtopnm mrf netpbm pamtotiff pamx pgmedge \\\ - pgmnorm pgmoil pgmslice pnmarith pnmcut pnmdepth pnmenlarge pnmfile \\\ - pnminterp pnmnoraw pnmscale pnmsplit pnmtofits pnmtojpeg pnmtopnm pnmtops \\\ - pnmtotiff pnmtotiffcmyk ppmnorm ppmsvgalib ppmtojpeg ppmtotga ppmtouil \\\ - tifftopnm vidtoppm \ - MANUALS3 += libnetpbm_image libnetpbm_ug libpbm libpgm libpm libpnm libppm libsystem libtmpfile \ - MANUALS5 += extendedopacity pfm' common.mk make # Generating useful man pages with html doc cd "${srcdir}/doc" - make MAKEMAN="${srcdir}/stable/buildtools/makeman" USERGUIDE=. \ - -f "${srcdir}/stable/buildtools/manpage.mk" manpages + make MAKEMAN="${srcdir}/advanced/buildtools/makeman" USERGUIDE=. \ + -f "${srcdir}/advanced/buildtools/manpage.mk" manpages } package() { - cd "${srcdir}/stable" - make pkgdir="${pkgdir}/usr" install-run install-dev + cd "${srcdir}/advanced" + make pkgdir="${pkgdir}/usr" PKGMANDIR=share/man install-run install-dev # Removing dummy man pages rm "${pkgdir}"/usr/share/man/man{1,3,5}/* cd "${srcdir}/doc" - make MAKEMAN="${srcdir}/stable/buildtools/makeman" MANDIR="${pkgdir}/usr/share/man" \ - -f "${srcdir}/stable/buildtools/manpage.mk" installman + make MAKEMAN="${srcdir}/advanced/buildtools/makeman" MANDIR="${pkgdir}/usr/share/man" \ + -f "${srcdir}/advanced/buildtools/manpage.mk" installman # Replace obsolete utility echo -e '#!/bin/sh\npamditherbw $@ | pamtopnm\n' > "${pkgdir}/usr/bin/pgmtopbm" # Licensing. Note that each program in the package has a separate license. - install -D -m644 "${srcdir}/stable/doc/copyright_summary" \ + install -D -m644 "${srcdir}/advanced/doc/copyright_summary" \ "${pkgdir}/usr/share/licenses/${pkgname}/copyright_summary.txt" } diff --git a/abs/extra/netpbm/__changelog b/abs/extra/netpbm/__changelog deleted file mode 100644 index 6cbbaea..0000000 --- a/abs/extra/netpbm/__changelog +++ /dev/null @@ -1 +0,0 @@ -makedepends changed to python2 diff --git a/abs/extra/netpbm/libpng-1.4.patch b/abs/extra/netpbm/libpng-1.4.patch deleted file mode 100644 index c02ded7..0000000 --- a/abs/extra/netpbm/libpng-1.4.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff -Naur netpbm-orig/converter/other/pnmtopng.c netpbm/converter/other/pnmtopng.c ---- netpbm-orig/converter/other/pnmtopng.c 2010-01-22 00:13:48.000000000 -0500 -+++ netpbm/converter/other/pnmtopng.c 2010-01-22 00:21:33.000000000 -0500 -@@ -2641,7 +2641,7 @@ - info_ptr->color_type == PNG_COLOR_TYPE_RGB) { - if (transparent > 0) { - info_ptr->valid |= PNG_INFO_tRNS; -- info_ptr->trans_values = -+ info_ptr->trans_color = - xelToPngColor_16(transcolor, maxval, png_maxval); - } - } else { -@@ -2653,10 +2653,10 @@ - if (info_ptr->valid && PNG_INFO_tRNS) - pm_message("Transparent color {gray, red, green, blue} = " - "{%d, %d, %d, %d}", -- info_ptr->trans_values.gray, -- info_ptr->trans_values.red, -- info_ptr->trans_values.green, -- info_ptr->trans_values.blue); -+ info_ptr->trans_color.gray, -+ info_ptr->trans_color.red, -+ info_ptr->trans_color.green, -+ info_ptr->trans_color.blue); - else - pm_message("No transparent color"); - } -diff -Naur netpbm-orig/converter/other/pngtopnm.c netpbm/converter/other/pngtopnm.c ---- netpbm-orig/converter/other/pngtopnm.c 2010-01-22 00:33:25.000000000 -0500 -+++ netpbm/converter/other/pngtopnm.c 2010-01-22 00:39:21.000000000 -0500 -@@ -569,8 +569,8 @@ - for (i = 0, foundGray = FALSE; - i < info_ptr->num_trans && !foundGray; - ++i) { -- if (info_ptr->trans[i] != 0 && -- info_ptr->trans[i] != maxval) { -+ if (info_ptr->trans_alpha[i] != 0 && -+ info_ptr->trans_alpha[i] != maxval) { - foundGray = TRUE; - } - } -@@ -641,7 +641,7 @@ - unsigned int i; - trans_mix = TRUE; - for (i = 0; i < info_ptr->num_trans; ++i) -- if (info_ptr->trans[i] != 0 && info_ptr->trans[i] != 255) { -+ if (info_ptr->trans_alpha[i] != 0 && info_ptr->trans_alpha[i] != 255) { - trans_mix = FALSE; - break; - } -@@ -1061,7 +1061,7 @@ - setXel(&xelrow[col], fgColor, bgColor, alphaHandling, - (pngxP->info_ptr->valid & PNG_INFO_tRNS) && - index < pngxP->info_ptr->num_trans ? -- pngxP->info_ptr->trans[index] : maxval); -+ pngxP->info_ptr->trans_alpha[index] : maxval); - } - break; - diff --git a/abs/extra/netpbm/netpbm-CAN-2005-2471.patch b/abs/extra/netpbm/netpbm-CAN-2005-2471.patch index 8cbbd6d..3759d7e 100644 --- a/abs/extra/netpbm/netpbm-CAN-2005-2471.patch +++ b/abs/extra/netpbm/netpbm-CAN-2005-2471.patch @@ -1,9 +1,9 @@ --- netpbm-10.29/converter/other/pstopnm.c.CAN-2005-2471 2005-08-15 02:39:46.000000000 +0200 +++ netpbm-10.29/converter/other/pstopnm.c 2005-08-16 15:38:15.000000000 +0200 @@ -711,11 +711,11 @@ - "'%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s'", ghostscriptProg, arg0, - deviceopt, outfileopt, gopt, ropt, "-q", "-dNOPAUSE", + deviceopt, outfileopt, gopt, ropt, textalphabitsopt, + "-q", "-dNOPAUSE", - "-dSAFER", "-"); + "-dPARANOIDSAFER", "-"); } diff --git a/abs/extra/netpbm/netpbm-security-code.patch b/abs/extra/netpbm/netpbm-security-code.patch index e8fbc29..da67a8f 100644 --- a/abs/extra/netpbm/netpbm-security-code.patch +++ b/abs/extra/netpbm/netpbm-security-code.patch @@ -22,15 +22,15 @@ diff -up netpbm-10.47.04/analyzer/pgmtexture.c.security netpbm-10.47.04/analyzer if (m == NULL) pm_error("Unable to allocate memory for a matrix."); @@ -102,6 +108,9 @@ matrix (int nrl, int nrh, int ncl, int n - m -= ncl; + assert (nch >= ncl); /* allocate rows and set pointers to them */ + if(nch < ncl) + pm_error("assert: h < l"); + overflow_add(nch - ncl, 1); - for (i = nrl; i <= nrh; i++) - { + for (i = nrl; i <= nrh; ++i) { MALLOCARRAY(m[i], (unsigned) (nch - ncl + 1)); + if (m[i] == NULL) diff -up netpbm-10.47.04/converter/other/gemtopnm.c.security netpbm-10.47.04/converter/other/gemtopnm.c --- netpbm-10.47.04/converter/other/gemtopnm.c.security 2009-10-21 13:39:06.000000000 +0200 +++ netpbm-10.47.04/converter/other/gemtopnm.c 2009-10-21 15:09:33.000000000 +0200 @@ -118,46 +118,6 @@ diff -up netpbm-10.47.04/converter/other/pnmtojpeg.c.security netpbm-10.47.04/co buffer = (*cinfo_p->mem->alloc_sarray) ((j_common_ptr) cinfo_p, JPOOL_IMAGE, (unsigned int) cinfo_p->image_width * cinfo_p->input_components, -diff -up netpbm-10.47.04/converter/other/pnmtops.c.security netpbm-10.47.04/converter/other/pnmtops.c ---- netpbm-10.47.04/converter/other/pnmtops.c.security 2009-10-21 13:39:06.000000000 +0200 -+++ netpbm-10.47.04/converter/other/pnmtops.c 2009-10-21 15:09:33.000000000 +0200 -@@ -186,16 +186,20 @@ parseCommandLine(int argc, char ** argv, - cmdlineP->canturn = !noturn; - cmdlineP->showpage = !noshowpage; - -+ overflow2(width, 72); - cmdlineP->width = width * 72; -+ overflow2(height, 72); - cmdlineP->height = height * 72; - -- if (imagewidthSpec) -+ if (imagewidthSpec) { -+ overflow2(imagewidth, 72); - cmdlineP->imagewidth = imagewidth * 72; -- else -+ } else - cmdlineP->imagewidth = 0; -- if (imageheightSpec) -+ if (imageheightSpec) { -+ overflow2(imageheight, 72); - cmdlineP->imageheight = imageheight * 72; -- else -+ } else - cmdlineP->imageheight = 0; - - if (!cmdlineP->psfilter && -diff -up netpbm-10.47.04/converter/other/pnmtorle.c.security netpbm-10.47.04/converter/other/pnmtorle.c ---- netpbm-10.47.04/converter/other/pnmtorle.c.security 2009-10-21 13:39:06.000000000 +0200 -+++ netpbm-10.47.04/converter/other/pnmtorle.c 2009-10-21 15:09:33.000000000 +0200 -@@ -19,6 +19,8 @@ - * If you modify this software, you should include a notice giving the - * name of the person performing the modification, the date of modification, - * and the reason for such modification. -+ * -+ * 2002-12-19: Fix maths wrapping bugs. Alan Cox <alan@redhat.com> - */ - /* - * pnmtorle - A program which will convert pbmplus (ppm or pgm) images diff -up netpbm-10.47.04/converter/other/pnmtosgi.c.security netpbm-10.47.04/converter/other/pnmtosgi.c --- netpbm-10.47.04/converter/other/pnmtosgi.c.security 2009-10-21 13:39:06.000000000 +0200 +++ netpbm-10.47.04/converter/other/pnmtosgi.c 2009-10-21 15:09:33.000000000 +0200 @@ -216,25 +176,22 @@ diff -up netpbm-10.47.04/converter/other/rletopnm.c.security netpbm-10.47.04/con diff -up netpbm-10.47.04/converter/other/sgitopnm.c.security netpbm-10.47.04/converter/other/sgitopnm.c --- netpbm-10.47.04/converter/other/sgitopnm.c.security 2009-10-21 13:39:06.000000000 +0200 +++ netpbm-10.47.04/converter/other/sgitopnm.c 2009-10-21 15:09:33.000000000 +0200 -@@ -252,13 +252,17 @@ read_channels(ifp, head, table, func, oc - - if (ochan < 0) { - maxchannel = (head->zsize < 3) ? head->zsize : 3; +@@ -252,10 +252,14 @@ read_channels(ifp, head, table, func, oc + MALLOCARRAY_NOFAIL(image, head->ysize); + } else { + maxchannel = MIN(3, head->zsize); + overflow2(head->ysize, maxchannel); MALLOCARRAY_NOFAIL(image, head->ysize * maxchannel); - } else { - maxchannel = ochan + 1; - MALLOCARRAY_NOFAIL(image, head->ysize); } -- if ( table ) -+ if ( table ) { +- if (table) ++ if (table) { + overflow2(head->xsize, 2); + overflow_add(head->xsize*2, 2); MALLOCARRAY_NOFAIL(temp, WORSTCOMPR(head->xsize)); + } - for( channel = 0; channel < maxchannel; channel++ ) { - #ifdef DEBUG + for(channel = 0; channel < maxchannel; ++channel) { + unsigned int row; diff -up netpbm-10.47.04/converter/other/sirtopnm.c.security netpbm-10.47.04/converter/other/sirtopnm.c --- netpbm-10.47.04/converter/other/sirtopnm.c.security 2009-10-21 13:39:06.000000000 +0200 +++ netpbm-10.47.04/converter/other/sirtopnm.c 2009-10-21 15:09:33.000000000 +0200 @@ -282,9 +239,9 @@ diff -up netpbm-10.47.04/converter/other/xwdtopnm.c.security netpbm-10.47.04/con *padrightP = h11FixedP->bytes_per_line * 8 - h11FixedP->pixmap_width * h11FixedP->bits_per_pixel; -diff -up netpbm-10.47.04/converter/pbm/icontopbm.c.security netpbm-10.47.04/converter/pbm/icontopbm.c ---- netpbm-10.47.04/converter/pbm/icontopbm.c.security 2009-10-21 13:39:10.000000000 +0200 -+++ netpbm-10.47.04/converter/pbm/icontopbm.c 2009-10-21 15:09:33.000000000 +0200 +diff -up netpbm-10.47.04/converter/other/sunicontopnm.c.security netpbm-10.47.04/converter/other/sunicontopnm.c +--- netpbm-10.47.04/converter/other/sunicontopnm.c.security 2009-10-21 13:39:10.000000000 +0200 ++++ netpbm-10.47.04/converter/other/sunicontopnm.c 2009-10-21 15:09:33.000000000 +0200 @@ -11,6 +11,7 @@ */ @@ -294,17 +251,17 @@ diff -up netpbm-10.47.04/converter/pbm/icontopbm.c.security netpbm-10.47.04/conv #include "nstring.h" #include "pbm.h" @@ -87,6 +88,11 @@ ReadIconFile(FILE * const - if ( *heightP <= 0 ) - pm_error( "invalid height (must be positive): %d", *heightP ); + if (*heightP <= 0) + pm_error("invalid height (must be positive): %d", *heightP); + if ( *widthP > INT_MAX - 16 || *widthP < 0) + pm_error( "invalid width: %d", *widthP); + + overflow2(*widthP + 16, *heightP); + - data_length = BitmapSize( *widthP, *heightP ); - *dataP = (short unsigned int *) malloc( data_length ); - if ( *dataP == NULL ) + } + + diff -up netpbm-10.47.04/converter/pbm/mdatopbm.c.security netpbm-10.47.04/converter/pbm/mdatopbm.c --- netpbm-10.47.04/converter/pbm/mdatopbm.c.security 2009-10-21 13:39:10.000000000 +0200 +++ netpbm-10.47.04/converter/pbm/mdatopbm.c 2009-10-21 15:09:33.000000000 +0200 @@ -367,22 +324,6 @@ diff -up netpbm-10.47.04/converter/pbm/pbmto4425.c.security netpbm-10.47.04/conv if(vmap == NULL) { pm_error( "Cannot allocate memory" ); -diff -up netpbm-10.47.04/converter/pbm/pbmtoascii.c.security netpbm-10.47.04/converter/pbm/pbmtoascii.c ---- netpbm-10.47.04/converter/pbm/pbmtoascii.c.security 2009-10-21 13:39:10.000000000 +0200 -+++ netpbm-10.47.04/converter/pbm/pbmtoascii.c 2009-10-21 15:09:33.000000000 +0200 -@@ -115,9 +115,11 @@ char* argv[]; - pm_usage( usage ); - - pbm_readpbminit( ifp, &cols, &rows, &format ); -+ overflow_add(cols, gridx); - ccols = ( cols + gridx - 1 ) / gridx; - bitrow = pbm_allocrow( cols ); - sig = (int*) pm_allocrow( ccols, sizeof(int) ); -+ overflow_add(ccols, 1); - line = (char*) pm_allocrow( ccols + 1, sizeof(char) ); - - for ( row = 0; row < rows; row += gridy ) -diff -up netpbm-10.47.04/converter/pbm/pbmtocmuwm.c.security netpbm-10.47.04/converter/pbm/pbmtocmuwm.c diff -up netpbm-10.47.04/converter/pbm/pbmtogem.c.security netpbm-10.47.04/converter/pbm/pbmtogem.c --- netpbm-10.47.04/converter/pbm/pbmtogem.c.security 2009-10-21 13:39:10.000000000 +0200 +++ netpbm-10.47.04/converter/pbm/pbmtogem.c 2009-10-21 15:09:33.000000000 +0200 @@ -405,17 +346,6 @@ diff -up netpbm-10.47.04/converter/pbm/pbmtogo.c.security netpbm-10.47.04/conver rucols = ( cols + 7 ) / 8; bytesperrow = rucols; /* GraphOn uses bytes */ rucols = rucols * 8; -diff -up netpbm-10.47.04/converter/pbm/pbmtoicon.c.security netpbm-10.47.04/converter/pbm/pbmtoicon.c ---- netpbm-10.47.04/converter/pbm/pbmtoicon.c.security 2009-10-21 13:39:10.000000000 +0200 -+++ netpbm-10.47.04/converter/pbm/pbmtoicon.c 2009-10-21 15:38:55.000000000 +0200 -@@ -114,6 +114,7 @@ writeIcon(FILE * const ifP, - unsigned char * bitrow; - unsigned int row; - -+ overflow_add(cols, 15); - bitbuffer = pbm_allocrow_packed(cols + wordintSize); - bitrow = &bitbuffer[1]; - bitbuffer[0] = 0; diff -up netpbm-10.47.04/converter/pbm/pbmtolj.c.security netpbm-10.47.04/converter/pbm/pbmtolj.c --- netpbm-10.47.04/converter/pbm/pbmtolj.c.security 2009-10-21 13:39:10.000000000 +0200 +++ netpbm-10.47.04/converter/pbm/pbmtolj.c 2009-10-21 15:09:33.000000000 +0200 @@ -511,13 +441,13 @@ diff -up netpbm-10.47.04/converter/pbm/pbmtoybm.c.security netpbm-10.47.04/conve --- netpbm-10.47.04/converter/pbm/pbmtoybm.c.security 2009-10-21 13:39:10.000000000 +0200 +++ netpbm-10.47.04/converter/pbm/pbmtoybm.c 2009-10-21 15:09:33.000000000 +0200 @@ -45,6 +45,7 @@ main( argc, argv ) - bitrow = pbm_allocrow( cols ); + bitrow = pbm_allocrow(cols); /* Compute padding to round cols up to the nearest multiple of 16. */ + overflow_add(cols, 16); - padright = ( ( cols + 15 ) / 16 ) * 16 - cols; + padright = ((cols + 15) / 16) * 16 - cols; - putinit( cols, rows ); + putinit(cols, rows); diff -up netpbm-10.47.04/converter/pbm/pbmtozinc.c.security netpbm-10.47.04/converter/pbm/pbmtozinc.c --- netpbm-10.47.04/converter/pbm/pbmtozinc.c.security 2009-10-21 13:39:10.000000000 +0200 +++ netpbm-10.47.04/converter/pbm/pbmtozinc.c 2009-10-21 15:09:33.000000000 +0200 @@ -565,14 +495,14 @@ diff -up netpbm-10.47.04/converter/pbm/thinkjettopbm.l.security netpbm-10.47.04/ diff -up netpbm-10.47.04/converter/pbm/ybmtopbm.c.security netpbm-10.47.04/converter/pbm/ybmtopbm.c --- netpbm-10.47.04/converter/pbm/ybmtopbm.c.security 2009-10-21 13:39:10.000000000 +0200 +++ netpbm-10.47.04/converter/pbm/ybmtopbm.c 2009-10-21 15:09:33.000000000 +0200 -@@ -88,6 +88,7 @@ getinit( file, colsP, rowsP, depthP, pad - pm_error( "EOF / read error" ); +@@ -88,4 +88,5 @@ getinit( file, colsP, rowsP, depthP, pad + pm_error("EOF / read error"); *depthP = 1; + overflow_add(*colsP, 15); - *padrightP = ( ( *colsP + 15 ) / 16 ) * 16 - *colsP; - bitsperitem = 0; - } + *padrightP = ((*colsP + 15) / 16) * 16 - *colsP; +} + diff -up netpbm-10.47.04/converter/pgm/lispmtopgm.c.security netpbm-10.47.04/converter/pgm/lispmtopgm.c --- netpbm-10.47.04/converter/pgm/lispmtopgm.c.security 2009-10-21 13:39:06.000000000 +0200 +++ netpbm-10.47.04/converter/pgm/lispmtopgm.c 2009-10-21 15:09:33.000000000 +0200 @@ -707,7 +637,7 @@ diff -up netpbm-10.47.04/converter/ppm/Makefile.security netpbm-10.47.04/convert leaftoppm mtvtoppm neotoppm \ - pcxtoppm pc1toppm pi1toppm picttoppm pjtoppm \ + pcxtoppm pc1toppm pi1toppm pjtoppm \ - ppmtoacad ppmtoarbtxt \ + ppmtoacad ppmtoapplevol ppmtoarbtxt ppmtoascii \ ppmtobmp ppmtoeyuv ppmtogif ppmtoicr ppmtoilbm \ ppmtoleaf ppmtolj ppmtomitsu ppmtoneo \ diff -up netpbm-10.47.04/converter/ppm/pcxtoppm.c.security netpbm-10.47.04/converter/ppm/pcxtoppm.c @@ -894,14 +824,14 @@ diff -up netpbm-10.47.04/converter/ppm/ppmtopict.c.security netpbm-10.47.04/conv --- netpbm-10.47.04/converter/ppm/ppmtopict.c.security 2009-10-21 13:39:10.000000000 +0200 +++ netpbm-10.47.04/converter/ppm/ppmtopict.c 2009-10-21 15:09:33.000000000 +0200 @@ -245,6 +245,8 @@ char *argv[]; - putShort(stdout, 0); /* mode */ - - /* Finally, write out the data. */ -+ overflow_add(cols/MAX_COUNT, 1); -+ overflow_add(cols, cols/MAX_COUNT+1); - packed = (char*) malloc((unsigned)(cols+cols/MAX_COUNT+1)); - oc = 0; - for (row = 0; row < rows; row++) + putShort(stdout, 0); /* mode */ + + /* Finally, write out the data. */ ++ overflow_add(cols/MAX_COUNT, 1); ++ overflow_add(cols, cols/MAX_COUNT+1); + packed = malloc((unsigned)(cols+cols/MAX_COUNT+1)); + for (row = 0, oc = 0; row < rows; row++) + oc += putRow(stdout, row, cols, pixels[row], packed); diff -up netpbm-10.47.04/converter/ppm/ppmtopj.c.security netpbm-10.47.04/converter/ppm/ppmtopj.c --- netpbm-10.47.04/converter/ppm/ppmtopj.c.security 2009-10-21 13:39:10.000000000 +0200 +++ netpbm-10.47.04/converter/ppm/ppmtopj.c 2009-10-21 15:09:33.000000000 +0200 @@ -1106,17 +1036,6 @@ diff -up netpbm-10.47.04/editor/pamcut.c.security netpbm-10.47.04/editor/pamcut. outpam.width = rightcol - leftcol + 1; outpam.height = bottomrow - toprow + 1; -diff -up netpbm-10.47.04/editor/pbmpscale.c.security netpbm-10.47.04/editor/pbmpscale.c ---- netpbm-10.47.04/editor/pbmpscale.c.security 2009-10-21 13:38:57.000000000 +0200 -+++ netpbm-10.47.04/editor/pbmpscale.c 2009-10-21 15:27:21.000000000 +0200 -@@ -110,6 +110,7 @@ main(int argc, char ** argv) { - inrow[0] = inrow[1] = inrow[2] = NULL; - pbm_readpbminit(ifP, &columns, &rows, &format) ; - -+ overflow2(columns, scale); - outrow = pbm_allocrow(columns*scale) ; - MALLOCARRAY(flags, columns); - if (flags == NULL) diff -up netpbm-10.47.04/editor/pbmreduce.c.security netpbm-10.47.04/editor/pbmreduce.c --- netpbm-10.47.04/editor/pbmreduce.c.security 2009-10-21 13:38:57.000000000 +0200 +++ netpbm-10.47.04/editor/pbmreduce.c 2009-10-21 15:26:13.000000000 +0200 @@ -1249,29 +1168,6 @@ diff -up netpbm-10.47.04/editor/pnmshear.c.security netpbm-10.47.04/editor/pnmsh newcols = rows * shearfac + cols + 0.999999; pnm_writepnminit(stdout, newcols, rows, newmaxval, newformat, 0); -diff -up netpbm-10.47.04/editor/ppmdither.c.security netpbm-10.47.04/editor/ppmdither.c ---- netpbm-10.47.04/editor/ppmdither.c.security 2009-10-21 13:38:57.000000000 +0200 -+++ netpbm-10.47.04/editor/ppmdither.c 2009-10-21 15:09:34.000000000 +0200 -@@ -111,6 +111,9 @@ dith_matrix(unsigned int const dith_dim) - (dith_dim * sizeof(int *)) + /* pointers */ - (dith_dim * dith_dim * sizeof(int)); /* data */ - -+ overflow2(dith_dim, sizeof(int *)); -+ overflow3(dith_dim, dith_dim, sizeof(int)); -+ overflow_add(dith_dim * sizeof(int *), dith_dim * dith_dim * sizeof(int)); - dith_mat = (unsigned int **) malloc(dith_mat_sz); - - if (dith_mat == NULL) -@@ -165,7 +168,8 @@ dith_setup(const unsigned int dith_power - if (dith_nb < 2) - pm_error("too few shades for blue, minimum of 2"); - -- MALLOCARRAY(*colormapP, dith_nr * dith_ng * dith_nb); -+ overflow2(dith_nr, dith_ng); -+ *colormapP = malloc3(dith_nr * dith_ng, dith_nb, sizeof(pixel)); - if (*colormapP == NULL) - pm_error("Unable to allocate space for the color lookup table " - "(%d by %d by %d pixels).", dith_nr, dith_ng, dith_nb); diff -up netpbm-10.47.04/editor/specialty/pamoil.c.security netpbm-10.47.04/editor/specialty/pamoil.c --- netpbm-10.47.04/editor/specialty/pamoil.c.security 2009-10-21 13:38:56.000000000 +0200 +++ netpbm-10.47.04/editor/specialty/pamoil.c 2009-10-21 15:09:33.000000000 +0200 @@ -1283,19 +1179,6 @@ diff -up netpbm-10.47.04/editor/specialty/pamoil.c.security netpbm-10.47.04/edit MALLOCARRAY(hist, inpam.maxval + 1); if (hist == NULL) pm_error("Unable to allocate memory for histogram."); -diff -up netpbm-10.47.04/generator/pbmpage.c.security netpbm-10.47.04/generator/pbmpage.c ---- netpbm-10.47.04/generator/pbmpage.c.security 2009-10-21 13:38:57.000000000 +0200 -+++ netpbm-10.47.04/generator/pbmpage.c 2009-10-21 15:09:34.000000000 +0200 -@@ -170,6 +170,9 @@ outputPbm(FILE * const file, - /* We round the allocated row space up to a multiple of 8 so the ugly - fast code below can work. - */ -+ -+ overflow_add(bitmap.Width, 7); -+ - pbmrow = pbm_allocrow(((bitmap.Width+7)/8)*8); - - bitmap_cursor = 0; diff -up netpbm-10.47.04/generator/pbmtext.c.security netpbm-10.47.04/generator/pbmtext.c --- netpbm-10.47.04/generator/pbmtext.c.security 2009-10-21 13:38:57.000000000 +0200 +++ netpbm-10.47.04/generator/pbmtext.c 2009-10-21 15:23:15.000000000 +0200 @@ -1390,16 +1273,6 @@ diff -up netpbm-10.47.04/lib/libpbm1.c.security netpbm-10.47.04/lib/libpbm1.c pm_check(file, check_type, need_raster_size, retval_p); } } -diff -up netpbm-10.47.04/lib/libpbmvms.c.security netpbm-10.47.04/lib/libpbmvms.c ---- netpbm-10.47.04/lib/libpbmvms.c.security 2009-10-21 13:39:00.000000000 +0200 -+++ netpbm-10.47.04/lib/libpbmvms.c 2009-10-21 15:09:34.000000000 +0200 -@@ -1,3 +1,5 @@ -+#warning "NOT AUDITED" -+ - /*************************************************************************** - This file contains library routines needed to build Netpbm for VMS. - However, as of 2000.05.26, when these were split out of libpbm1.c -diff -up netpbm-10.47.04/lib/libpm.c.security netpbm-10.47.04/lib/libpm.c --- netpbm-10.47.04/lib/libpm.c.security 2009-10-21 13:39:00.000000000 +0200 +++ netpbm-10.47.04/lib/libpm.c 2009-10-21 15:09:34.000000000 +0200 @@ -827,4 +827,53 @@ pm_parse_height(const char * const arg) @@ -1482,18 +1355,6 @@ diff -up netpbm-10.47.04/other/pnmcolormap.c.security netpbm-10.47.04/other/pnmc } { unsigned int const intQuotient = colormap.size / pamP->width; -diff -up netpbm-10.47.04/urt/README.security netpbm-10.47.04/urt/README ---- netpbm-10.47.04/urt/README.security 2009-10-21 13:39:11.000000000 +0200 -+++ netpbm-10.47.04/urt/README 2009-10-21 15:09:34.000000000 +0200 -@@ -18,3 +18,8 @@ in its initializer in the original. But - defines stdout as a variable, so that wouldn't compile. So I changed - it to NULL and added a line to rle_hdr_init to set that field to - 'stdout' dynamically. 2000.06.02 BJH. -+ -+Redid the code to check for maths overflows and other crawly horrors. -+Removed pipe through and compress support (unsafe) -+ -+Alan Cox <alan@redhat.com> diff -up netpbm-10.47.04/urt/rle_addhist.c.security netpbm-10.47.04/urt/rle_addhist.c --- netpbm-10.47.04/urt/rle_addhist.c.security 2009-10-21 13:39:11.000000000 +0200 +++ netpbm-10.47.04/urt/rle_addhist.c 2009-10-21 15:09:34.000000000 +0200 @@ -1630,37 +1491,6 @@ diff -up netpbm-10.47.04/urt/rle_hdr.c.security netpbm-10.47.04/urt/rle_hdr.c size *= sizeof(char *); to_hdr->comments = (CONST_DECL char **)malloc( size ); RLE_CHECK_ALLOC( to_hdr->cmd, to_hdr->comments, "comments" ); -diff -up netpbm-10.47.04/urt/rle.h.security netpbm-10.47.04/urt/rle.h ---- netpbm-10.47.04/urt/rle.h.security 2009-10-21 13:39:11.000000000 +0200 -+++ netpbm-10.47.04/urt/rle.h 2009-10-21 15:09:34.000000000 +0200 -@@ -14,6 +14,9 @@ - * If you modify this software, you should include a notice giving the - * name of the person performing the modification, the date of modification, - * and the reason for such modification. -+ * -+ * 2002-12-19: Fix maths wrapping bugs. Alan Cox <alan@redhat.com> -+ * Header declarations needed - */ - /* - * rle.h - Global declarations for Utah Raster Toolkit RLE programs. -@@ -166,6 +169,17 @@ rle_hdr /* End of typedef. * - */ - extern rle_hdr rle_dflt_hdr; - -+/* -+ * Provided by pm library -+ */ -+ -+extern void overflow_add(int, int); -+#define overflow2(a,b) __overflow2(a,b) -+extern void __overflow2(int, int); -+extern void overflow3(int, int, int); -+extern void *malloc2(int, int); -+extern void *malloc3(int, int, int); -+extern void *realloc2(void *, int, int); - - /* Declare RLE library routines. */ - diff -up netpbm-10.47.04/urt/rle_open_f.c.security netpbm-10.47.04/urt/rle_open_f.c --- netpbm-10.47.04/urt/rle_open_f.c.security 2009-10-21 13:39:11.000000000 +0200 +++ netpbm-10.47.04/urt/rle_open_f.c 2009-10-21 15:15:38.000000000 +0200 @@ -1704,11 +1534,11 @@ diff -up netpbm-10.47.04/urt/rle_open_f.c.security netpbm-10.47.04/urt/rle_open_ - *noSubprocessP = FALSE; - - if (*mode == 'w') -- asprintfN(&command, "compress > %s", file_name); +- pm_asprintf(&command, "compress > %s", file_name); - else if (*mode == 'a') -- asprintfN(&command, "compress >> %s", file_name); +- pm_asprintf(&command, "compress >> %s", file_name); - else -- asprintfN(&command, "compress -d < %s", file_name); +- pm_asprintf(&command, "compress -d < %s", file_name); - - *fpP = my_popen(command, mode, &thepid); - @@ -1720,7 +1550,7 @@ diff -up netpbm-10.47.04/urt/rle_open_f.c.security netpbm-10.47.04/urt/rle_open_ - if (*catchingChildrenP < MAX_CHILDREN) - pids[(*catchingChildrenP)++] = thepid; - } -- strfree(command); +- pm_strfree(command); - } else { - *noSubprocessP = TRUE; - *errorP = NULL; @@ -1815,3 +1645,24 @@ diff -up netpbm-10.47.04/urt/scanargs.c.security netpbm-10.47.04/urt/scanargs.c #if defined(c_plusplus) && !defined(USE_PROTOTYPES) #define USE_PROTOTYPES +--- advanced/urt/rle_hdr.c.old 2012-01-21 05:57:25.000000000 -0500 ++++ advanced/urt/rle_hdr.c 2012-01-21 05:57:50.000000000 -0500 +@@ -29,6 +29,18 @@ + + #include <string.h> + ++/* ++ * Provided by pm library ++ */ ++ ++extern void overflow_add(int, int); ++#define overflow2(a,b) __overflow2(a,b) ++extern void __overflow2(int, int); ++extern void overflow3(int, int, int); ++extern void *malloc2(int, int); ++/*extern void *malloc3(int, int, int);*/ ++extern void *realloc2(void *, int, int); ++ + /***************************************************************** + * TAG( rle_names ) + * diff --git a/abs/extra/network-ups-tools/PKGBUILD b/abs/extra/network-ups-tools/PKGBUILD new file mode 100644 index 0000000..50afbcc --- /dev/null +++ b/abs/extra/network-ups-tools/PKGBUILD @@ -0,0 +1,57 @@ +# Maintainer: Alex Reznichenko <sa5gap@yandex.ru> +# Contributor: Roman Kyrylych <roman@archlinux.org> +# Contributor: Giuseppe Lucarelli <luk@rebelsoft.org> + +pkgname=network-ups-tools +pkgver=2.6.5 +pkgrel=2 +pkgdesc="NUT is a collection of programs for monitoring and administering UPS hardware" +arch=('i686' 'x86_64') +url="http://www.networkupstools.org/" +license=('GPL2') +depends=('openssl' 'libusb-compat') +makedepends=() +backup=(etc/ups/{ups.conf,upsd.conf,upsd.users,upsmon.conf,upssched.conf}) +install=nut.install +source=("http://www.networkupstools.org/source/2.6/nut-$pkgver.tar.gz" + 'upsd.init' 'nut-driver.service.patch') +options=('!emptydirs' '!libtool') +md5sums=('e6eac4fa04baff0d0a827d64efe81a7e' + '089ea4a56552253328d17603ff5670cc' + 'ee3aa25a08caca24f51951ee1f090c44') + +build() { + + cd $srcdir/nut-$pkgver + ./configure \ + --without-wrap \ + --with-user=ups \ + --with-group=nut \ + --with-usb \ + --prefix=/usr \ + --with-udev-dir=/usr/lib/udev \ + --with-systemdsystemunitdir=/lib/systemd/system \ + --datadir=/usr/share/ups \ + --sysconfdir=/etc/ups || return 1 + + make || return 1 + +} + +package() { + + cd $srcdir/nut-$pkgver + make DESTDIR=$pkgdir install || return 1 + + install -D -m755 $startdir/upsd.init $pkgdir/etc/rc.d/upsd || return 1 + install -D -m644 conf/ups.conf.sample $pkgdir/etc/ups/ups.conf + install -D -m640 conf/upsd.conf.sample $pkgdir/etc/ups/upsd.conf + install -D -m640 conf/upsd.users.sample $pkgdir/etc/ups/upsd.users + install -D -m640 conf/upsmon.conf.sample $pkgdir/etc/ups/upsmon.conf + install -D -m644 conf/upssched.conf.sample $pkgdir/etc/ups/upssched.conf + + # Fix systemd's nut-driver.service + cd $pkgdir + patch -p1 < ../nut-driver.service.patch + +} diff --git a/abs/extra/community/network-ups-tools/finish.upsd b/abs/extra/network-ups-tools/finish.upsd index 8eb335b..8eb335b 100644 --- a/abs/extra/community/network-ups-tools/finish.upsd +++ b/abs/extra/network-ups-tools/finish.upsd diff --git a/abs/extra/network-ups-tools/network-ups-tools.tar.gz b/abs/extra/network-ups-tools/network-ups-tools.tar.gz Binary files differnew file mode 100644 index 0000000..eeb2ed6 --- /dev/null +++ b/abs/extra/network-ups-tools/network-ups-tools.tar.gz diff --git a/abs/extra/network-ups-tools/nut-driver.service.patch b/abs/extra/network-ups-tools/nut-driver.service.patch new file mode 100644 index 0000000..fec8116 --- /dev/null +++ b/abs/extra/network-ups-tools/nut-driver.service.patch @@ -0,0 +1,14 @@ +--- pkg/usr/lib/systemd/system/nut-driver.service 2012-10-15 21:50:08.216981122 +0400 ++++ pkg/usr/lib/systemd/system/nut-driver.service 2012-10-15 22:08:44.826990389 +0400 +@@ -4,7 +4,9 @@ + StopWhenUnneeded=yes + + [Service] +-ExecStart=${exec_prefix}/bin/upsdrvctl start +-ExecStop=${exec_prefix}/bin/upsdrvctl stop ++ExecStart=/usr/bin/upsdrvctl start ++ExecStop=/usr/bin/upsdrvctl stop + Type=forking + ++[Install] ++WantedBy=multi-user.target diff --git a/abs/extra/network-ups-tools/nut.install b/abs/extra/network-ups-tools/nut.install new file mode 100644 index 0000000..1eca341 --- /dev/null +++ b/abs/extra/network-ups-tools/nut.install @@ -0,0 +1,18 @@ +post_install() { + groupadd -g 55 nut &> /dev/null + useradd -u 55 -g nut -G tty -d /var/state/ups -s /bin/false ups >/dev/null 2>&1 + mkdir -p /var/state/ups/ + chmod 0770 /var/state/ups/ + chown root:nut /var/state/ups/ + chown root:nut /etc/ups/upsd.conf /etc/ups/upsd.users /etc/ups/upsmon.conf + echo ">>> Before starting your UPSd daemon, you must" + echo ">>> edit /etc/ups/ups.conf in order to set your" + echo ">>> UPS driver and port." +} + +pre_remove() { + userdel ups >/dev/null 2>&1 + groupdel nut >/dev/null 2>&1 + rm -rf /var/state/ups/ +} + diff --git a/abs/extra/community/network-ups-tools/run.upsd b/abs/extra/network-ups-tools/run.upsd index 83be88d..83be88d 100644 --- a/abs/extra/community/network-ups-tools/run.upsd +++ b/abs/extra/network-ups-tools/run.upsd diff --git a/abs/extra/network-ups-tools/upsd.init b/abs/extra/network-ups-tools/upsd.init new file mode 100644 index 0000000..acdd115 --- /dev/null +++ b/abs/extra/network-ups-tools/upsd.init @@ -0,0 +1,43 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/upsd` +case "$1" in + start) + stat_busy "Starting UPSd Daemon" + /usr/bin/upsdrvctl start &> /dev/null + [ -z "$PID" ] && /usr/sbin/upsd &>/dev/null + /usr/sbin/upsmon &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon upsd + stat_done + fi + ;; + + stop) + stat_busy "Stopping UPSd Daemon" + /usr/sbin/upsmon -c stop &> /dev/null + /usr/sbin/upsd -c stop &> /dev/null + /usr/bin/upsdrvctl stop &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon upsd + stat_done + fi + ;; + + restart) + $0 stop + sleep 3 + $0 start + ;; + + *) + cho "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/extra/nodejs/PKGBUILD b/abs/extra/nodejs/PKGBUILD new file mode 100644 index 0000000..7cada4d --- /dev/null +++ b/abs/extra/nodejs/PKGBUILD @@ -0,0 +1,61 @@ +# $Id: PKGBUILD 78912 2012-10-27 18:07:12Z bpiotrowski $ +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> +# Contributor: Thomas Dziedzic < gostrc at gmail > +# Contributor: James Campos <james.r.campos@gmail.com> +# Contributor: BlackEagle < ike DOT devolder AT gmail DOT com > +# Contributor: Dongsheng Cai <dongsheng at moodle dot com> +# Contributor: Masutu Subric <masutu.arch at googlemail dot com> +# Contributor: TIanyi Cui <tianyicui@gmail.com> + +pkgname=nodejs +pkgver=0.8.14 +pkgrel=1 +pkgdesc='Evented I/O for V8 javascript' +arch=('i686' 'x86_64') +url='http://nodejs.org/' +license=('MIT') +depends=('openssl' 'python2' 'v8') +checkdepends=('curl') # curl used for check() +options=('!emptydirs') +source=(http://nodejs.org/dist/v${pkgver}/node-v${pkgver}.tar.gz) +md5sums=('284fd2c7578064c339d9cf6a3a475ac7') + +build() { + cd node-v${pkgver} + + msg 'Fixing for python2 name' + find -type f -exec sed \ + -e 's_^#!/usr/bin/env python$_&2_' \ + -e 's_^\(#!/usr/bin/python2\).[45]$_\1_' \ + -e 's_^#!/usr/bin/python$_&2_' \ + -e "s_'python'_'python2'_" -i {} \; + find test/ -type f -exec sed 's_python _python2 _' -i {} \; + export PYTHON=python2 + + ./configure \ + --prefix=/usr \ + --shared-openssl + + make +} + +check() { + cd node-v${pkgver} + make test || true +} + +package() { + cd node-v${pkgver} + + make DESTDIR=$pkgdir install + + # install docs as per user request + install -d $pkgdir/usr/share/doc/nodejs + cp -r doc/api/*.html \ + $pkgdir/usr/share/doc/nodejs + + install -D -m644 LICENSE \ + $pkgdir/usr/share/licenses/nodejs/LICENSE +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/nspr/PKGBUILD b/abs/extra/nspr/PKGBUILD index 750f05f..3b1ad58 100644 --- a/abs/extra/nspr/PKGBUILD +++ b/abs/extra/nspr/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 87667 2010-08-17 14:52:56Z jgc $ +# $Id: PKGBUILD 162022 2012-06-18 22:10:00Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Alexander Baldeck <alexander@archlinux.org> pkgname=nspr -pkgver=4.8.6 +pkgver=4.9.1 pkgrel=1 pkgdesc="Netscape Portable Runtime" -arch=('i686' 'x86_64') +arch=(i686 x86_64) url="http://www.mozilla.org/projects/nspr/" license=('MPL' 'GPL') depends=('glibc') @@ -13,7 +13,7 @@ makedepends=('zip') options=(!emptydirs) source=(ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${pkgver}/src/${pkgname}-${pkgver}.tar.gz nspr.pc.in) -md5sums=('592c275728c29d193fdba8009165990b' +md5sums=('d36d7b65a38f5b43ebd50ad3ad227120' 'bce1611f3117b53fc904cab549c09967') build() { @@ -23,8 +23,10 @@ build() { else confflags="" fi - unset CFLAGS - unset CXXFLAGS + + sed -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \ + -i mozilla/nsprpub/config/rules.mk + ./mozilla/nsprpub/configure \ --prefix=/usr \ --libdir=/usr/lib \ @@ -33,6 +35,7 @@ build() { --disable-debug ${confflags} make } + package() { cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install diff --git a/abs/extra/nss/PKGBUILD b/abs/extra/nss/PKGBUILD index 998cd1c..77bc6ef 100644 --- a/abs/extra/nss/PKGBUILD +++ b/abs/extra/nss/PKGBUILD @@ -1,58 +1,66 @@ -# $Id: PKGBUILD 91903 2010-09-28 12:13:33Z jgc $ +# $Id: PKGBUILD 162023 2012-06-18 22:10:13Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> + pkgname=nss -pkgver=3.12.8 +pkgver=3.13.5 pkgrel=1 pkgdesc="Mozilla Network Security Services" arch=(i686 x86_64) url="http://www.mozilla.org/projects/security/pki/nss/" license=('MPL' 'GPL') -_nsprver=4.8.6 -depends=("nspr>=${_nsprver}" 'sqlite3>=3.6.17' 'zlib') +_nsprver=4.9.1 +depends=("nspr>=${_nsprver}" 'sqlite' 'zlib' 'sh') makedepends=('perl') -replaces=('nss-nspr') +options=('!strip') source=(ftp://ftp.mozilla.org/pub/security/nss/releases/NSS_${pkgver//./_}_RTM/src/${pkgname}-${pkgver}.tar.gz nss-no-rpath.patch nss.pc.in nss-config.in add_spi+cacert_ca_certs.patch ssl-renegotiate-transitional.patch) -options=('!strip') -md5sums=('40bf1bb0c7567827d3768d1fc6081100' - 'e5c97db0c884d5f4cfda21e562dc9bba' - 'c547b030c57fe1ed8b77c73bf52b3ded' - '46bee81908f1e5b26d6a7a2e14c64d9f' - '7f39c19b1dfd62d7db7d8bf19f156fed' - 'd83c7b61abb7e9f8f7bcd157183d1ade') +sha1sums=('22cfe2cbccc93189699e6eed283eca288b45f6cb' + 'c8fcdb153af9d39689243119adb475905a657284' + 'aa5b2c0aa38d3c1066d511336cf28d1333e3aebd' + 'cb744cc3e56b604e4754bc3c7d9f25bb9a0a136c' + '3d89f29e321d7df7269b7ae6d219654543feaa6a' + '8a964a744ba098711b80c0d279a2993524e8eb92') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - # Adds the SPI Inc. and CAcert.org CA certificates - patch from Debian - patch -Np1 -i "${srcdir}/add_spi+cacert_ca_certs.patch" + cd "${srcdir}/${pkgname}-${pkgver}/mozilla" + # Adds the SPI Inc. and CAcert.org CA certificates - patch from Debian, modified to apply on certdata.txt only + patch -Np2 -i "${srcdir}/add_spi+cacert_ca_certs.patch" # Adds transitional SSL renegotiate support - patch from Debian - patch -Np1 -i "${srcdir}/ssl-renegotiate-transitional.patch" + patch -Np2 -i "${srcdir}/ssl-renegotiate-transitional.patch" # Removes rpath - patch -Np0 -i "${srcdir}/nss-no-rpath.patch" + patch -Np2 -i "${srcdir}/nss-no-rpath.patch" - cd mozilla/security/nss/lib/ckfw/builtins + # Respect LDFLAGS + sed -e 's/\$(MKSHLIB) -o/\$(MKSHLIB) \$(LDFLAGS) -o/g' \ + -i security/coreconf/rules.mk + + # Generate certdata.c from certdata.txt + cd security/nss/lib/ckfw/builtins make generate cd "${srcdir}/${pkgname}-${pkgver}" - unset CFLAGS - unset CXXFLAGS export BUILD_OPT=1 export PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 export NSS_USE_SYSTEM_SQLITE=1 + export NSS_ENABLE_ECC=1 export NSPR_INCLUDE_DIR=`pkg-config --cflags-only-I nspr | sed 's/-I//'` export NSPR_LIB_DIR=`pkg-config --libs-only-L nspr | sed 's/-L.//'` + export XCFLAGS="${CFLAGS}" [ "$CARCH" = "x86_64" ] && export USE_64=1 make -j 1 -C mozilla/security/coreconf make -j 1 -C mozilla/security/dbm make -j 1 -C mozilla/security/nss +} +package() { + cd "${srcdir}/${pkgname}-${pkgver}" install -m755 -d "${pkgdir}/usr/lib/pkgconfig" install -m755 -d "${pkgdir}/usr/bin" install -m755 -d "${pkgdir}/usr/include/nss" diff --git a/abs/extra/nss/add_spi+cacert_ca_certs.patch b/abs/extra/nss/add_spi+cacert_ca_certs.patch index 1cc7c18..bf7e2ca 100644 --- a/abs/extra/nss/add_spi+cacert_ca_certs.patch +++ b/abs/extra/nss/add_spi+cacert_ca_certs.patch @@ -1,10 +1,17 @@ ---- a/mozilla/security/nss/lib/ckfw/builtins/certdata.txt -+++ b/mozilla/security/nss/lib/ckfw/builtins/certdata.txt -@@ -20926,3 +20926,558 @@ CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR - CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR - CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR +## 95_add_spi+cacert_ca_certs.patch by martin f. krafft <madduck@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Adds the SPI Inc. and CAcert.org CA certificates + +Index: nss/mozilla/security/nss/lib/ckfw/builtins/certdata.txt +=================================================================== +--- nss.orig/mozilla/security/nss/lib/ckfw/builtins/certdata.txt 2012-02-24 09:32:14.000000000 +0100 ++++ nss/mozilla/security/nss/lib/ckfw/builtins/certdata.txt 2012-02-24 09:35:07.577861466 +0100 +@@ -23475,3 +23475,558 @@ + CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED + CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE -+ ++ +# +# Certificate "CAcert.org Class 1 Root CA" +# diff --git a/abs/extra/numlockx/PKGBUILD b/abs/extra/numlockx/PKGBUILD deleted file mode 100644 index 172cceb..0000000 --- a/abs/extra/numlockx/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 19225 2008-11-17 22:12:15Z thayer $ -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> -# Contributor: Travis Willard <travisw@wmpub.ca> -# Maintainer: Thayer Williams <thayer@archlinux.org> - -pkgname=numlockx -pkgver=1.1 -pkgrel=4 -pkgdesc="Turns on the numlock key in X11" -arch=('i686' 'x86_64') -license=('MIT') -url="http://ktown.kde.org/~seli/numlockx/" -depends=('libxtst') -source=(http://ktown.kde.org/~seli/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('127d9dfbbbe6dbec62cc78db340f913c') - -build() { - cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr x_includes=/usr/include/X11 \ - x_libraries=/usr/lib || return 1 - make || return 1 - make prefix=$pkgdir/usr install || return 1 - - # Install the custom MIT license - install -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE || return 1 -} diff --git a/abs/extra/community/nvidia-cg-toolkit/PKGBUILD b/abs/extra/nvidia-cg-toolkit/PKGBUILD index c3f896e..c3f896e 100644 --- a/abs/extra/community/nvidia-cg-toolkit/PKGBUILD +++ b/abs/extra/nvidia-cg-toolkit/PKGBUILD diff --git a/abs/extra/nvram-wakup/PKGBUILD b/abs/extra/nvram-wakup/PKGBUILD index 057606b..c434716 100755 --- a/abs/extra/nvram-wakup/PKGBUILD +++ b/abs/extra/nvram-wakup/PKGBUILD @@ -3,7 +3,7 @@ pkgver=1.1 pkgrel=1 pkgdesc="set the wakeup time of the localpc" license="GPL" -arch=(i686) +arch=(i686 x86_64) url="http://sourceforge.net/projects/nvram-wakeup/" source=("http://downloads.sourceforge.net/project/nvram-wakeup/nvram-wakup-1.1.tar.gz?use_mirror=kent") @@ -13,3 +13,4 @@ build() { make prefix=$startdir/pkg/usr install } +md5sums=('ebd6e276167ba4351ecb1ea2bd368422') diff --git a/abs/extra/ocaml/PKGBUILD b/abs/extra/ocaml/PKGBUILD index 7b0cd86..e7ad5ec 100644 --- a/abs/extra/ocaml/PKGBUILD +++ b/abs/extra/ocaml/PKGBUILD @@ -1,9 +1,10 @@ -# $Id: PKGBUILD 88099 2010-08-19 13:05:24Z tpowa $ +# $Id: PKGBUILD 143814 2011-11-29 13:33:35Z stephane $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> -pkgname=ocaml -pkgver=3.12.0 -pkgrel=1 +pkgbase='ocaml' +pkgname=('ocaml' 'ocaml-compiler-libs') +pkgver=3.12.1 +pkgrel=3 pkgdesc="A functional language with OO extensions" arch=('i686' 'x86_64') license=('LGPL2' 'custom: QPL-1.0') @@ -11,19 +12,46 @@ url="http://caml.inria.fr/" depends=('gdbm') makedepends=('tk' 'ncurses>=5.6-7' 'libx11') optdepends=('ncurses: advanced ncurses features' 'tk: advanced tk features') -source=(http://caml.inria.fr/distrib/ocaml-3.12/$pkgname-$pkgver.tar.gz) +source=(http://caml.inria.fr/distrib/ocaml-3.12/${pkgname}-${pkgver}.tar.gz) options=('!makeflags' '!emptydirs') build() { - cd $srcdir/$pkgname-$pkgver + cd "${srcdir}/${pkgname}-${pkgver}" ./configure -prefix /usr - make world.opt || return 1 - make PREFIX=$pkgdir/usr MANDIR=$pkgdir/usr/share/man install || return 1 + make world.opt +} + +package_ocaml() { + cd "${srcdir}/${pkgbase}-${pkgver}" + make PREFIX="${pkgdir}/usr" MANDIR="${pkgdir}/usr/share/man" install -# Save >10MB with this one, makepkg only strips debug symbols. - find ${startdir}/pkg/usr/lib -type f -name '*.so.*' -exec strip --strip-unneeded {} \; + # Save >10MB with this one, makepkg only strips debug symbols. + #find "${pkgdir}/usr/lib" -type f -name '*.so.*' -exec strip --strip-unneeded {} \; + + # install license + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/" +} + +package_ocaml-compiler-libs() { +pkgdesc="Several modules used internally by the OCaml compiler" +license=('custom: QPL-1.0') +depends=('ocaml') +optdepends=() + + cd "${srcdir}/${pkgbase}-${pkgver}" + + # Install compiler libraries + local compiler_libs="${pkgdir}/usr/lib/ocaml/compiler-libs" + mkdir -p "$compiler_libs"/{parsing,typing,utils} + cp parsing/*.{cmi,cmo,cmx,ml,mli,mll,o} "$compiler_libs"/parsing + cp typing/*.{cmi,cmo,cmx,ml,mli,o} "$compiler_libs"/typing + cp utils/*.{cmi,cmo,cmx,ml,mli,o} "$compiler_libs"/utils + # duplicated by installation + rm -f "$compiler_libs"/typing/outcometree.{cmi,mli} -# install license -install -D -m 644 $startdir/src/$pkgname-$pkgver/LICENSE $startdir/pkg/usr/share/licenses/ocaml/LICENSE + # install license + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/" } -md5sums=('3ba7cc65123c3579f14e7c726d3ee782') +md5sums=('814a047085f0f901ab7d8e3a4b7a9e65') diff --git a/abs/extra/ocaml/fix-ocaml-binutils-2.21.patch b/abs/extra/ocaml/fix-ocaml-binutils-2.21.patch new file mode 100644 index 0000000..fa7664c --- /dev/null +++ b/abs/extra/ocaml/fix-ocaml-binutils-2.21.patch @@ -0,0 +1,66 @@ +From: Stephane Glondu <steph@glondu.net> +Date: Tue, 8 Mar 2011 21:17:40 +0100 +Subject: [PATCH] Fix ocamlopt w.r.t. binutils 2.21 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Bug: http://caml.inria.fr/mantis/view.php?id=5237 +Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=617404 +Authors: Eric Cooper, spiralvoice +Reviewed-by: Stéphane Glondu <steph@glondu.net> +--- + asmcomp/amd64/emit.mlp | 13 +++++++------ + asmcomp/i386/emit.mlp | 6 +++--- + 2 files changed, 10 insertions(+), 9 deletions(-) + +diff --git a/asmcomp/amd64/emit.mlp b/asmcomp/amd64/emit.mlp +index 4a3f844..525c6e6 100644 +--- a/asmcomp/amd64/emit.mlp ++++ b/asmcomp/amd64/emit.mlp +@@ -679,17 +679,18 @@ let fundecl fundecl = + emit_all true fundecl.fun_body; + List.iter emit_call_gc !call_gc_sites; + emit_call_bound_errors (); ++ begin match Config.system with ++ "linux" | "gnu" -> ++ ` .type {emit_symbol fundecl.fun_name},@function\n`; ++ ` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n` ++ | _ -> () ++ end; + if !float_constants <> [] then begin + if macosx + then ` .literal8\n` + else ` .section .rodata.cst8,\"a\",@progbits\n`; + List.iter emit_float_constant !float_constants +- end; +- match Config.system with +- "linux" | "gnu" -> +- ` .type {emit_symbol fundecl.fun_name},@function\n`; +- ` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n` +- | _ -> () ++ end + + (* Emission of data *) + +diff --git a/asmcomp/i386/emit.mlp b/asmcomp/i386/emit.mlp +index 2992f29..0b1252c 100644 +--- a/asmcomp/i386/emit.mlp ++++ b/asmcomp/i386/emit.mlp +@@ -905,12 +905,12 @@ let fundecl fundecl = + emit_all true fundecl.fun_body; + List.iter emit_call_gc !call_gc_sites; + emit_call_bound_errors (); +- List.iter emit_float_constant !float_constants; +- match Config.system with ++ begin match Config.system with + "linux_elf" | "bsd_elf" | "gnu" -> + ` .type {emit_symbol fundecl.fun_name},@function\n`; + ` .size {emit_symbol fundecl.fun_name},.-{emit_symbol fundecl.fun_name}\n` +- | _ -> () ++ | _ -> () end; ++ List.iter emit_float_constant !float_constants + + + (* Emission of data *) +-- diff --git a/abs/extra/ocaml/ocaml-3.12.1-3.src.tar.gz b/abs/extra/ocaml/ocaml-3.12.1-3.src.tar.gz new file mode 120000 index 0000000..140a1a6 --- /dev/null +++ b/abs/extra/ocaml/ocaml-3.12.1-3.src.tar.gz @@ -0,0 +1 @@ +/data/pkg_repo/src_packages/ocaml-3.12.1-3.src.tar.gz
\ No newline at end of file diff --git a/abs/extra/community/openal/PKGBUILD b/abs/extra/openal/PKGBUILD index 6d6c669..6d6c669 100644 --- a/abs/extra/community/openal/PKGBUILD +++ b/abs/extra/openal/PKGBUILD diff --git a/abs/extra/community/openal/__changelog b/abs/extra/openal/__changelog index 7f47556..7f47556 100644 --- a/abs/extra/community/openal/__changelog +++ b/abs/extra/openal/__changelog diff --git a/abs/extra/community/opencl-headers/LICENSE.txt b/abs/extra/opencl-headers/LICENSE.txt index a89e4f5..a89e4f5 100644 --- a/abs/extra/community/opencl-headers/LICENSE.txt +++ b/abs/extra/opencl-headers/LICENSE.txt diff --git a/abs/extra/community/opencl-headers/PKGBUILD b/abs/extra/opencl-headers/PKGBUILD index 0a21ce2..0a21ce2 100644 --- a/abs/extra/community/opencl-headers/PKGBUILD +++ b/abs/extra/opencl-headers/PKGBUILD diff --git a/abs/extra/opencore-amr/PKGBUILD b/abs/extra/opencore-amr/PKGBUILD index 2c569d8..71d8eb5 100644 --- a/abs/extra/opencore-amr/PKGBUILD +++ b/abs/extra/opencore-amr/PKGBUILD @@ -1,24 +1,27 @@ -# $Id: PKGBUILD 62600 2010-01-10 14:06:30Z ibiru $ +# $Id: PKGBUILD 151248 2012-02-25 09:58:05Z ibiru $ # Maintainer: Ionut Biru <ionut@archlinux.ro> # Contributor: WAntilles <wantilles@adslgr.com> pkgname=opencore-amr -pkgver=0.1.2 +pkgver=0.1.3 pkgrel=1 pkgdesc="Open source implementation of the Adaptive Multi Rate (AMR) speech codec" arch=('i686' 'x86_64') license=('APACHE') url="http://opencore-amr.sourceforge.net/" -depends=('gcc-libs') -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz) +source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz) +depends=(glibc) options=('!libtool') -md5sums=('8e8b8b253eb046340ff7b6bf7a6ccd3e') +md5sums=('09d2c5dfb43a9f6e9fec8b1ae678e725') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr --disable-static + make +} - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR=${pkgdir}/ install || return 1 +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install } diff --git a/abs/extra/openjpeg/30_fix_build_for_debian.dpatch b/abs/extra/openjpeg/30_fix_build_for_debian.dpatch deleted file mode 100644 index afd9950..0000000 --- a/abs/extra/openjpeg/30_fix_build_for_debian.dpatch +++ /dev/null @@ -1,70 +0,0 @@ - -#! /bin/sh /usr/share/dpatch/dpatch-run -## 30_fix_build_for_debian.dpatch by <robin.cornelius@gmail.com> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Dont apply the -s strip flag to the shared lib debian will do it for us -## DP: where necessary -## DP: Remove unnecessary linkage on lstdc++ and lm and add missing linkage for -lm - -@DPATCH@ - -Index: ./Makefile -=================================================================== ---- ./Makefile (revision 96) -+++ ./Makefile (working copy) -@@ -18,8 +18,7 @@ - # Converts cr/lf to just lf - DOS2UNIX = dos2unix - --COMPILERFLAGS = -Wall -O3 -ffast-math -std=c99 -fPIC --LIBRARIES = -lstdc++ -+COMPILERFLAGS = -Wall -O3 -ffast-math -std=c99 -fPIC -g $(EXTRA_CFLAGS) - - MODULES = $(SRCS:.c=.o) - CFLAGS = $(COMPILERFLAGS) $(INCLUDE) -@@ -54,7 +53,7 @@ - $(AR) r $@ $(MODULES) - - $(SHAREDLIB): $(MODULES) -- $(CC) -s -shared -Wl,-soname,$(LIBNAME) -o $@ $(MODULES) $(LIBRARIES) -+ $(CC) -shared -Wl,-soname,$(LIBNAME) -o $@ $(MODULES) -lm - - install: OpenJPEG - install -d '$(DESTDIR)$(INSTALL_LIBDIR)' '$(DESTDIR)$(INSTALL_INCLUDE)' - -Index: ./indexer_JPIP/Makefile -=================================================================== ---- ./indexer_JPIP/Makefile (revision 95) -+++ ./indexer_JPIP/Makefile (working copy) -@@ -1,7 +1,6 @@ - CC = gcc - --LDFLAGS = -lm --CFLAGS = -Wall -+CFLAGS = -Wall $(EXTRA_CFLAGS) - - all: index_create - -Index: ./codec/Makefile -=================================================================== ---- ./codec/Makefile (revision 96) -+++ ./codec/Makefile (working copy) -@@ -1,13 +1,13 @@ - # Makefile for the main OpenJPEG codecs: j2k_to_image and image_to_j2k - --CFLAGS = -O3 -lstdc++ # -g -p -pg -+CFLAGS = $(EXTRA_CFLAGS) # -g -p -pg - - all: j2k_to_image image_to_j2k - --j2k_to_image: j2k_to_image.c ../libopenjpeg.a -+j2k_to_image: j2k_to_image.c - gcc $(CFLAGS) compat/getopt.c index.c convert.c j2k_to_image.c -o j2k_to_image -L.. -lopenjpeg -I ../libopenjpeg/ -lm -ltiff - --image_to_j2k: image_to_j2k.c ../libopenjpeg.a -+image_to_j2k: image_to_j2k.c - gcc $(CFLAGS) compat/getopt.c index.c convert.c image_to_j2k.c -o image_to_j2k -L.. -lopenjpeg -I ../libopenjpeg/ -lm -ltiff - - clean: - diff --git a/abs/extra/openjpeg/PKGBUILD b/abs/extra/openjpeg/PKGBUILD index 087da2f..7055c19 100644 --- a/abs/extra/openjpeg/PKGBUILD +++ b/abs/extra/openjpeg/PKGBUILD @@ -1,27 +1,30 @@ -# $Id: $ +# $Id: PKGBUILD 156266 2012-04-16 14:12:28Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=openjpeg -pkgver=1.3 -_pkgver=v1_3 -pkgrel=3 +pkgver=1.5.0 +pkgrel=1 pkgdesc="An open source JPEG 2000 codec" arch=(i686 x86_64) license=('BSD') url="http://www.openjpeg.org" -depends=('glibc') -source=(http://www.openjpeg.org/openjpeg_${_pkgver}.tar.gz - 30_fix_build_for_debian.dpatch) -md5sums=('f9a3ccfa91ac34b589e9bf7577ce8ff9' - '2557f485513e77f6dcea77f4741c4fa1') +depends=('zlib') +options=('!libtool') +source=(http://openjpeg.googlecode.com/files/openjpeg-${pkgver}.tar.gz) +sha1sums=('dce705ae45f137e4698a8cf39d1fbf22bc434fa8') build() { - cd "${srcdir}/OpenJPEG_${_pkgver}" - patch -Np1 -i "${srcdir}/30_fix_build_for_debian.dpatch" || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 + cd "${srcdir}/${pkgname}-${pkgver}" + # make sure we use system libs + rm -rf thirtparty + ./configure --prefix=/usr \ + --disable-static --disable-silent-rules + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/licenses/openjpeg" - tr '\r' '\n' < license.txt > "${pkgdir}/usr/share/licenses/openjpeg/license.txt" || return 1 - chmod 644 "${pkgdir}/usr/share/licenses/openjpeg/license.txt" || return 1 - ln -s libopenjpeg.so.2 "${pkgdir}/usr/lib/libopenjpeg.so" || return 1 + install -m644 LICENSE "${pkgdir}/usr/share/licenses/openjpeg/LICENSE" } diff --git a/abs/extra/openmpi/PKGBUILD b/abs/extra/openmpi/PKGBUILD index 7dd1084..3e57dde 100644 --- a/abs/extra/openmpi/PKGBUILD +++ b/abs/extra/openmpi/PKGBUILD @@ -1,38 +1,45 @@ -# $Id$ +# $Id: PKGBUILD 159287 2012-05-20 22:11:21Z stephane $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> pkgname=openmpi -pkgver=1.5.3 -pkgrel=4 +pkgver=1.6 +pkgrel=2 pkgdesc="High performance message passing library (MPI)" arch=('i686' 'x86_64') url="http://www.open-mpi.org" license=('custom') -depends=('gcc' 'gcc-fortran' 'openssh' 'valgrind' 'libtool' 'hwloc') -makedepends=('net-tools') +depends=('gcc-fortran' 'openssh' 'valgrind' 'libltdl' 'hwloc') +makedepends=('inetutils') options=(!libtool) -source=(http://www.open-mpi.org/software/ompi/v1.5/downloads/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('669565c708deab82ad4069d82675b2020eb0e0c6') +source=(http://www.open-mpi.org/software/ompi/v1.6/downloads/${pkgname}-${pkgver}.tar.bz2 + openmpi-hostfile.patch) +sha1sums=('8b81eea712bb8f8120468003b5f29baecedf2367' + 'a76da03418a106d57cfd020d0f8d887d7ec9225b') build() { cd "${srcdir}/${pkgname}-${pkgver}" + # Make sure we use the system ltdl librariry rather than the ones in the tarball + rm -r opal/libltdl + + # Search for openmpi-default-hostfile in /etc/openmpi + patch -Np1 -i ../openmpi-hostfile.patch + ./configure --prefix=/usr \ --sysconfdir=/etc/${pkgname} \ --mandir=/usr/share/man \ --enable-mpi-f90 \ --libdir=/usr/lib/${pkgname} \ --with-threads=posix \ - --enable-mpi-threads \ --enable-smp-locks \ --with-valgrind \ --enable-memchecker \ --enable-debug \ --enable-pretty-print-stacktrace \ --without-slurm \ - --with-hwloc=external \ - --with-libltdl=/usr \ + --with-hwloc=/usr \ + --with-libltdl=/usr \ FC=/usr/bin/gfortran \ - LDFLAGS='-Wl,-z,noexecstack' + LDFLAGS="$LDFLAGS -Wl,-z,noexecstack" make } @@ -41,13 +48,19 @@ package() { cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install + # FS#28583 + install -d -m 755 "${pkgdir}"/usr/lib/pkgconfig + for i in ompi-c.pc ompi-cxx.pc ompi-f77.pc ompi-f90.pc ompi.pc; do + ln -sf /usr/lib/openmpi/pkgconfig/${i} "${pkgdir}"/usr/lib/pkgconfig/ + done + # Openmpi's otfinfo conflicts with the one from texlive - mv "${pkgdir}"/usr/bin/otfinfo "${pkgdir}"/usr/bin/otfinfompi + mv "${pkgdir}"/usr/bin/otfinfo{,mpi} # Openmpi's otfdump conflicts with the one from libotf - mv "${pkgdir}"/usr/bin/otfdump "${pkgdir}"/usr/bin/otfdumpompi + mv "${pkgdir}"/usr/bin/otfdump{,ompi} - # Symlink points to non-existing ortec++.1 + # Remove dangling symlink rm "${pkgdir}"/usr/share/man/man1/orteCC.1 install -d -m 755 "${pkgdir}"/etc/ld.so.conf.d diff --git a/abs/extra/openmpi/openmpi-hostfile.patch b/abs/extra/openmpi/openmpi-hostfile.patch new file mode 100644 index 0000000..f637767 --- /dev/null +++ b/abs/extra/openmpi/openmpi-hostfile.patch @@ -0,0 +1,12 @@ +diff -up openmpi-1.6/orte/runtime/orte_mca_params.c.hostfile openmpi-1.6/orte/runtime/orte_mca_params.c +--- openmpi-1.6/orte/runtime/orte_mca_params.c.hostfile 2012-04-24 13:18:21.000000000 -0600 ++++ openmpi-1.6/orte/runtime/orte_mca_params.c 2012-05-15 16:35:24.769565442 -0600 +@@ -225,7 +225,7 @@ int orte_register_params(void) + false, false, 1000, &orte_timeout_usec_per_proc); + + /* default hostfile */ +- asprintf(&orte_default_hostfile, "%s/etc/openmpi-default-hostfile", opal_install_dirs.prefix); ++ asprintf(&orte_default_hostfile, "%s/openmpi-default-hostfile", opal_install_dirs.sysconfdir); + mca_base_param_reg_string_name("orte", "default_hostfile", + "Name of the default hostfile (relative or absolute path, \"none\" to ignore environmental or default MCA param setting)", + false, false, orte_default_hostfile, &orte_default_hostfile); diff --git a/abs/extra/openslp/PKGBUILD b/abs/extra/openslp/PKGBUILD index 9ba1f94..70e0833 100644 --- a/abs/extra/openslp/PKGBUILD +++ b/abs/extra/openslp/PKGBUILD @@ -1,13 +1,14 @@ -# $Id: PKGBUILD 75251 2010-04-01 04:53:24Z allan $ +# $Id: PKGBUILD 150461 2012-02-18 00:02:24Z allan $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> + pkgname=openslp pkgver=1.2.1 -pkgrel=3 +pkgrel=4 pkgdesc="Open-source implementation of Service Location Protocol" -arch=(i686 x86_64) +arch=('i686' 'x86_64') url="http://www.openslp.org" license=('BSD') -depends=('glibc' 'bash' 'openssl') +depends=('bash' 'openssl') backup=('etc/slp.conf' 'etc/slp.reg' 'etc/slp.spi') options=('!libtool') source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz rc.slpd) @@ -15,9 +16,13 @@ md5sums=('ff9999d1b44017281dd00ed2c4d32330' '4f6889a5944894b8be2c01404a9566d2') build() { cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR=${pkgdir} DOC_DIR=/usr/share/doc/openslp-${pkgver} install || return 1 + ./configure --prefix=/usr + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} DOC_DIR=/usr/share/doc/openslp-${pkgver} install install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE - install -D -m755 ../rc.slpd ${pkgdir}/etc/rc.d/slpd + install -D -m755 $srcdir/rc.slpd ${pkgdir}/etc/rc.d/slpd } diff --git a/abs/extra/opensp/PKGBUILD b/abs/extra/opensp/PKGBUILD index 1f79263..ff23a6d 100644 --- a/abs/extra/opensp/PKGBUILD +++ b/abs/extra/opensp/PKGBUILD @@ -1,29 +1,35 @@ -# $Id: PKGBUILD 27689 2009-02-24 21:08:28Z eric $ -# Maintainer: dorphell <dorphell@archlinux.org> +# $Id: PKGBUILD 150566 2012-02-18 14:51:32Z pierre $ +# Maintainer: +# Contributor: dorphell <dorphell@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=opensp pkgver=1.5.2 -pkgrel=1 -pkgdesc="A library and a set of tools for validating, parsing and manipulating SGML and XML documents." +pkgrel=3 +pkgdesc="A library and a set of tools for validating, parsing and manipulating SGML and XML documents" arch=('i686' 'x86_64') url="http://openjade.sourceforge.net/" license=('BSD') depends=('gcc-libs') makedepends=('xmlto' 'docbook-xsl') options=('!libtool') -source=(http://download.sourceforge.net/openjade/OpenSP-$pkgver.tar.gz) +source=("http://download.sourceforge.net/openjade/OpenSP-$pkgver.tar.gz") md5sums=('670b223c5d12cee40c9137be86b6c39b') build() { - cd $srcdir/OpenSP-$pkgver - ./configure --prefix=/usr --mandir=/usr/share/man \ - --disable-nls \ - --enable-http \ - --enable-default-catalog=/etc/sgml/catalog:/etc/xml/catalog \ - --enable-default-search-path=/usr/share/sgml:/usr/share/xml \ - --enable-xml-messages || return 1 - make || return 1 - make DESTDIR=$pkgdir install || return 1 - install -D -m644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING + cd "${srcdir}"/OpenSP-$pkgver + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --disable-nls \ + --enable-http \ + --enable-default-catalog=/etc/sgml/catalog:/etc/xml/catalog \ + --enable-default-search-path=/usr/share/sgml:/usr/share/xml \ + --enable-xml-messages + make +} + +package() { + cd "${srcdir}"/OpenSP-$pkgver + make DESTDIR="${pkgdir}" install + install -D -m644 COPYING "${pkgdir}"/usr/share/licenses/$pkgname/LICENSE } diff --git a/abs/extra/orbit2/PKGBUILD b/abs/extra/orbit2/PKGBUILD index 293eaba..1e47872 100644 --- a/abs/extra/orbit2/PKGBUILD +++ b/abs/extra/orbit2/PKGBUILD @@ -1,25 +1,25 @@ -# $Id: PKGBUILD 29413 2009-03-08 16:43:13Z jgc $ +# $Id: PKGBUILD 151081 2012-02-24 18:27:05Z ibiru $ # Maintainer: Jan de Groot <jan@archlinux.org> pkgname=orbit2 pkgver=2.14.19 -pkgrel=1 +pkgrel=2 pkgdesc="Thin/fast CORBA ORB" -arch=(i686 x86_64) +arch=('i686' 'x86_64') license=('LGPL' 'GPL') -depends=('libidl2>=0.8.11') -makedepends=('pkgconfig') +depends=('libidl2') options=('!libtool' '!makeflags') url="http://www.gnome.org" source=(http://ftp.gnome.org/pub/gnome/sources/ORBit2/2.14/ORBit2-${pkgver}.tar.bz2) +sha256sums=('55c900a905482992730f575f3eef34d50bda717c197c97c08fa5a6eafd857550') build() { cd "${srcdir}/ORBit2-${pkgver}" - ./configure --prefix=/usr --disable-static || return 1 - make || return 1 + ./configure --prefix=/usr --disable-static + make } + package() { cd "${srcdir}/ORBit2-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 + make DESTDIR="${pkgdir}" install } -md5sums=('7082d317a9573ab338302243082d10d1') diff --git a/abs/extra/orc/PKGBUILD b/abs/extra/orc/PKGBUILD index 659bc47..dcdde8b 100644 --- a/abs/extra/orc/PKGBUILD +++ b/abs/extra/orc/PKGBUILD @@ -1,7 +1,7 @@ -# $Id: PKGBUILD 98440 2010-11-08 23:53:36Z ibiru $ +# $Id: PKGBUILD 149305 2012-02-06 18:30:33Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> pkgname=orc -pkgver=0.4.11 +pkgver=0.4.16 pkgrel=1 pkgdesc="The Oild Runtime Compiler" arch=('i686' 'x86_64') @@ -9,16 +9,17 @@ license=('custom') url="http://code.entropywave.com/projects/orc/" depends=('glibc') options=('!libtool') -source=(http://code.entropywave.com/download/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('b8b0b148d319422c3ad250c29483b3c4') +source=(http://code.entropywave.com/download/$pkgname/$pkgname-$pkgver.tar.gz) +md5sums=('e482932e544c847761449b106ecbc483') build () { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr \ - --disable-static + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr --disable-static make - make DESTDIR=${pkgdir} install - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" } +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING" +} diff --git a/abs/extra/oss/PKGBUILD b/abs/extra/oss/PKGBUILD index a3405f8..8303c40 100644 --- a/abs/extra/oss/PKGBUILD +++ b/abs/extra/oss/PKGBUILD @@ -10,7 +10,7 @@ pkgdesc="Open Sound System UNIX audio architecture" arch=('i686' 'x86_64') url="http://developer.opensound.com/" license=('GPL2') -depends=('gcc' 'make' 'kernel26-headers' 'module-init-tools' 'libtool' 'sed') +depends=('gcc' 'make' 'linux-headers' 'module-init-tools' 'libtool' 'sed') makedepends=('pkgconfig' 'gawk' 'gtk2' 'findutils') optdepends=('gtk2: for graphical mixer (ossxmix)') conflicts=('oss-linux' 'oss-linux-free' 'oss-testing' 'libflashsupport' 'libflashsupport-pulse' 'libflashsupport-oss') diff --git a/abs/extra/p7zip/7zFM.desktop b/abs/extra/p7zip/7zFM.desktop new file mode 100644 index 0000000..62b8e85 --- /dev/null +++ b/abs/extra/p7zip/7zFM.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=7-Zip FM +GenericName=7-Zip File Manager +Type=Application +Categories=GTK;Utility;Archiving;Compression; +Terminal=false +Icon=p7zip +Exec=7zFM diff --git a/abs/extra/p7zip/PKGBUILD b/abs/extra/p7zip/PKGBUILD index 1776568..4bb2bb4 100644 --- a/abs/extra/p7zip/PKGBUILD +++ b/abs/extra/p7zip/PKGBUILD @@ -1,51 +1,62 @@ -# $Id: PKGBUILD 85904 2010-07-22 04:49:57Z dgriffiths $ +# $Id: PKGBUILD 143961 2011-11-30 22:27:42Z andrea $ # Contributor: Thayer Williams <thayer@archlinux.org> # Contributor: Hugo Doria <hugo@archlinux.org> # Contributor: TuxSpirit<tuxspirit@archlinux.fr> 2007/11/17 21:22:36 UTC -# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> +# Maintainer: Gaetan Bisson <bisson@archlinux.org> pkgname=p7zip -pkgver=9.13 -pkgrel=2 -pkgdesc="A command-line port of the 7zip compression utility" +pkgver=9.20.1 +pkgrel=6 +pkgdesc='Command-line version of the 7zip compressed file archiver' +url='http://p7zip.sourceforge.net/' +license=('GPL' 'custom') arch=('i686' 'x86_64') -license=('GPL') -url="http://p7zip.sourceforge.net" depends=('gcc-libs' 'bash') -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}_${pkgver}_src_all.tar.bz2) -md5sums=('8ddb5053db3b1f2696407d01be145779') -options=(!emptydirs) +optdepends=('wxgtk: GUI' + 'desktop-file-utils: desktop entries') +makedepends=('yasm' 'nasm' 'wxgtk') +options=('!makeflags') +source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}_${pkgver}_src_all.tar.bz2" + '7zFM.desktop') +sha1sums=('1cd567e043ee054bf08244ce15f32cb3258306b7' + 'f2c370d6f1b286b7ce9a2804e22541b755616a40') -build() { - cd ${srcdir}/${pkgname}_${pkgver} +install=install - #Arch64 fix - if [ "$CARCH" == "x86_64" ]; then - cp makefile.linux_amd64 makefile.machine - else - cp makefile.linux_x86_ppc_alpha_gcc_4.X makefile.machine - fi +build() { + cd "${srcdir}/${pkgname}_${pkgver}" - sed -i "s|usr/local|usr|g" makefile + [[ $CARCH = x86_64 ]] \ + && cp makefile.linux_amd64_asm makefile.machine \ + || cp makefile.linux_x86_asm_gcc_4.X makefile.machine - make all3 OPTFLAGS="${CXXFLAGS}" || return 1 + make all4 OPTFLAGS="${CXXFLAGS}" } package() { - cd ${srcdir}/${pkgname}_${pkgver} - - make install DEST_HOME="${pkgdir}/usr" \ - DEST_MAN="${pkgdir}/usr/share/man" \ - DEST_SHARE_DOC="http://www.bugaco.com/7zip" - - mkdir -p ${pkgdir}/usr/share/doc/p7zip/DOCS - install -m555 bin/7z.so ${pkgdir}/usr/lib/p7zip/ - - sed -i "s|${pkgdir}/usr|/usr|g" ${pkgdir}/usr/bin/7z - sed -i "s|${pkgdir}/usr|/usr|g" ${pkgdir}/usr/bin/7za - sed -i "s|${pkgdir}/usr|/usr|g" ${pkgdir}/usr/bin/7zr - - # Install mc's virtual filesystem - install -Dm755 contrib/VirtualFileSystemForMidnightCommander/u7z \ - ${pkgdir}/usr/lib/mc/extfs.d/u7z + cd "${srcdir}/${pkgname}_${pkgver}" + + make install \ + DEST_DIR="${pkgdir}" \ + DEST_HOME="/usr" \ + DEST_MAN="/usr/share/man" + + # Licenses + install -d "${pkgdir}"/usr/share/licenses/p7zip + ln -s -t "${pkgdir}"/usr/share/licenses/p7zip \ + /usr/share/doc/p7zip/DOCS/License.txt \ + /usr/share/doc/p7zip/DOCS/unRarLicense.txt + + # Integration with stuff... + install -D GUI/p7zip_32.png "${pkgdir}"/usr/share/icons/hicolor/32x32/apps/p7zip.png + install -d "${pkgdir}"/usr/share/{applications,kde4/services/ServiceMenus} + cp GUI/kde4/* "${pkgdir}"/usr/share/kde4/services/ServiceMenus/ + cp ../7zFM.desktop "${pkgdir}"/usr/share/applications/ + ln -s 7zCon.sfx "${pkgdir}"/usr/lib/p7zip/7z.sfx + + find GUI/help -type d -exec chmod 755 {} \; + cp -r GUI/help "${pkgdir}"/usr/lib/p7zip/ + + chmod -R u+w "${pkgdir}/usr" } diff --git a/abs/extra/p7zip/install b/abs/extra/p7zip/install new file mode 100644 index 0000000..7f3cc43 --- /dev/null +++ b/abs/extra/p7zip/install @@ -0,0 +1,13 @@ +post_install() { + [[ -x usr/bin/update-desktop-database ]] && update-desktop-database -q || true + [[ -x usr/bin/gtk-update-icon-cache ]] && gtk-update-icon-cache -q -t -f usr/share/icons/hicolor || true +} + +post_upgrade() { + post_install +} + + +post_remove() { + post_install +} diff --git a/abs/extra/perl-class-inspector/PKGBUILD b/abs/extra/perl-class-inspector/PKGBUILD index fd138b8..5eb8012 100644 --- a/abs/extra/perl-class-inspector/PKGBUILD +++ b/abs/extra/perl-class-inspector/PKGBUILD @@ -1,29 +1,48 @@ -#$Id:$ +# Maintainer: Justin "juster" Davis <jrcd83@gmail.com> +# $Id: PKGBUILD 150510 2012-02-18 11:51:33Z allan $ + pkgname=perl-class-inspector -_realname=Class-Inspector -pkgver=1.24 +pkgver=1.27 pkgrel=1 -pkgdesc="'Get information about a class and its structure'" -arch=(i686 x86_64) -license=('GPL' 'Artistic') -url="http://search.cpan.org/~adamk/Class-Inspector" +pkgdesc="Get information about a class and its structure" +arch=(any) +license=(PerlArtistic GPL) options=(!emptydirs) -depends=('perl>=5.10.0') -provides=('class-inspector=1.24' 'Class::Inspector=1.24' 'perl-class-inspector=1.24' 'Class::Inspector::Functions=1.24' 'perl-class-inspector-functions=1.24') -source=(http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/Class-Inspector-1.24.tar.gz) -md5sums=('609189b49f64d329a6e413e0a6d8724a') +depends=('perl>=5.6.0') +url=http://search.cpan.org/dist/Class-Inspector +source=("http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/Class-Inspector-${pkgver}.tar.gz") +md5sums=('52e6391cae3c2abdfcd1d450b42bba7e') +sha512sums=('e16786d32c695863b474036c494efa5ee2ea84f5c460e49fa58bb645c0332810796ddb81865f30e1c942a697556af9e26b47a4dc4300c10da37fde499f9507d8') +_distdir="${srcdir}/Class-Inspector-${pkgver}" build() { - cd "${srcdir}/${_realname}-${pkgver}" - # install module in vendor directories. - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make - make install DESTDIR=${pkgdir} + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \ + PERL_AUTOINSTALL=--skipdeps \ + PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \ + PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \ + MODULEBUILDRC=/dev/null - # remove perllocal.pod and .packlist - find ${pkgdir} -name perllocal.pod -delete - find ${pkgdir} -name .packlist -delete + cd "$_distdir" + /usr/bin/perl Makefile.PL + make + ) } -# vim:set ts=2 sw=2 et: +check() { + ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" + cd "$_distdir" + make test + ) +} +package() { + cd "$_distdir" + make DESTDIR="$pkgdir" install + find "$pkgdir" -name .packlist -o -name perllocal.pod -delete +} + +# Local Variables: +# mode: shell-script +# sh-basic-offset: 2 +# End: +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/perl-net-smtp-ssl/PKGBUILD b/abs/extra/perl-net-smtp-ssl/PKGBUILD index e4b24bb..0a10c5b 100644 --- a/abs/extra/perl-net-smtp-ssl/PKGBUILD +++ b/abs/extra/perl-net-smtp-ssl/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 17474 2010-05-24 13:41:50Z cbrannon $ +# $Id: PKGBUILD 64819 2012-02-18 11:10:48Z cbrannon $ # Maintainer: Chris Brannon <cmbrannon79@gmail.com> # Contributor: Abhishek Dasgupta <abhidg@gmail.com> pkgname=perl-net-smtp-ssl pkgver=1.01 -pkgrel=2 +pkgrel=3 pkgdesc="SSL support for Net::SMTP" arch=(any) url="http://search.cpan.org/dist/Net-SMTP-SSL/" @@ -13,11 +13,11 @@ depends=('perl-io-socket-ssl') source=("http://www.cpan.org/authors/id/C/CW/CWEST/Net-SMTP-SSL-${pkgver}.tar.gz") options=(!emptydirs) -build() { +package() { cd "${srcdir}/Net-SMTP-SSL-${pkgver}" # Install module into the vendor directories. - perl Makefile.PL INSTALLDIRS=vendor || return 1 - make || return 1 + perl Makefile.PL INSTALLDIRS=vendor + make make DESTDIR="$pkgdir" install || return 1 # Remove .packlist and perllocal.pod files. @@ -25,4 +25,3 @@ build() { find "$pkgdir" -name 'perllocal.pod' -delete } md5sums=('ba039288ebf7a343feecacd374da8c1a') - diff --git a/abs/extra/perl-sgmls/perl-sgmls-1.03ii-4.src.tar.gz b/abs/extra/perl-sgmls/perl-sgmls-1.03ii-4.src.tar.gz Binary files differdeleted file mode 100644 index 317169f..0000000 --- a/abs/extra/perl-sgmls/perl-sgmls-1.03ii-4.src.tar.gz +++ /dev/null diff --git a/abs/extra/perl-time-hires/PKGBUILD b/abs/extra/perl-time-hires/PKGBUILD deleted file mode 100644 index 2e01636..0000000 --- a/abs/extra/perl-time-hires/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 82203 2010-06-09 09:42:03Z jgc $ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: mezcal <fila at pruda dot com> - -pkgname=perl-time-hires -pkgver=1.9721 -pkgrel=2 -pkgdesc="Perl module: high resolution time, sleep, and alarm" -arch=('i686' 'x86_64') -license=('PerlArtistic') -url="http://search.cpan.org/dist/Time-HiRes/" -depends=('perl') -options=(!emptydirs) -source=(http://search.cpan.org/CPAN/authors/id/J/JH/JHI/Time-HiRes-${pkgver}.tar.gz) -md5sums=('bf09911a36b9481537c8e0d28fbb3aaf') - -build() { - cd "${srcdir}/Time-HiRes-${pkgver}" - - # install module in vendor directories. - perl Makefile.PL INSTALLDIRS=vendor || return 1 - make || return 1 - make test || return 1 - make install DESTDIR="${pkgdir}" || return 1 -} - diff --git a/abs/extra/perl-yaml/PKGBUILD b/abs/extra/perl-yaml/PKGBUILD deleted file mode 100644 index b2e093c..0000000 --- a/abs/extra/perl-yaml/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: Charles Mauch <cmauch@gmail.com> - -pkgname=perl-yaml -_realname=YAML -pkgver=0.66 -pkgrel=1 -pkgdesc="Perl/CPAN Module YAML : YAML Aint Markup Language tm" -arch=(i686 x86_64) -url="http://search.cpan.org/dist/${_realname}/" -license=('GPL' 'PerlArtistic') -depends=('perl>=5.10.0') -options=(!emptydirs) -source=(http://www.cpan.org/authors/id/I/IN/INGY/${_realname}-${pkgver}.tar.gz) -md5sums=('33a0367cb343e1f0dce20f144d0167ba') - -build() { - cd ${startdir}/src/${_realname}-${pkgver} - # install module in vendor directories. - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1 - make || return 1 - make install DESTDIR=${startdir}/pkg || return 1 - - # remove perllocal.pod and .packlist - find ${startdir}/pkg -name perllocal.pod -delete - find ${startdir}/pkg -name .packlist -delete -} diff --git a/abs/extra/phonon/PKGBUILD b/abs/extra/phonon/PKGBUILD deleted file mode 100644 index 40b13d2..0000000 --- a/abs/extra/phonon/PKGBUILD +++ /dev/null @@ -1,53 +0,0 @@ -# $Id$ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> - -pkgbase=phonon -pkgname=('phonon' 'phonon-xine' 'phonon-gstreamer') -pkgver=4.4.2 -pkgrel=3 -arch=('i686' 'x86_64') -url="http://phonon.kde.org" -license=('LGPL') -makedepends=('cmake' 'automoc4' 'qt' 'xine-lib' 'gstreamer0.10-base-plugins' 'mesa') -source=("http://download.kde.org/stable/${pkgname}/${pkgver}/${pkgbase}-${pkgver}.tar.bz2") -sha1sums=('c329d924fb75a89a9de8a4d799ff4dcd7ee3302e') - -build() { - cd ${srcdir} - mkdir build - cd build - cmake ../${pkgbase}-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_SKIP_RPATH=ON \ - -DWITH_PulseAudio=OFF - make -} - -package_phonon(){ - pkgdesc="The multimedia API for KDE4" - depends=('qt' 'phonon-backend') - cd ${srcdir}/build/phonon - make DESTDIR=${pkgdir} install - cd ${srcdir}/build/includes - make DESTDIR=${pkgdir} install - cd ${srcdir}/build - install -Dm644 phonon.pc ${pkgdir}/usr/lib/pkgconfig/phonon.pc -} - -package_phonon-gstreamer(){ - pkgdesc="Phonon Gstreamer backend" - depends=('qt' 'gstreamer0.10-base-plugins') - provides=('phonon-backend') - cd ${srcdir}/build/gstreamer - make DESTDIR=${pkgdir} install -} - -package_phonon-xine(){ - pkgdesc="Phonon Xine backend" - depends=('qt' 'xine-lib') - provides=('phonon-backend') - cd ${srcdir}/build/xine - make DESTDIR=${pkgdir} install -} - diff --git a/abs/extra/phpmyadmin/PKGBUILD b/abs/extra/phpmyadmin/PKGBUILD deleted file mode 100644 index f3b9be3..0000000 --- a/abs/extra/phpmyadmin/PKGBUILD +++ /dev/null @@ -1,48 +0,0 @@ -# $Id: PKGBUILD 34046 2010-12-01 14:03:04Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: tobias <tobias@archlinux.org> -# Committer: Manolis Tzanidakis <manolis@archlinux.org> -# Contributor: Simon Lackerbauer <calypso "at" strpg.org> - -pkgname=phpmyadmin -pkgver=3.3.8.1 -pkgrel=1 -pkgdesc="A PHP and hence web-based tool to administrate MySQL over the WWW" -arch=('any') -url="http://www.phpmyadmin.net" -license=('GPL') -depends=('mysql-clients' 'php') -optdepends=('libmcrypt: to use phpMyAdmin internal authentication' - 'python2') -backup=("etc/webapps/phpmyadmin/.htaccess" - "etc/webapps/phpmyadmin/config.inc.php") -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/phpMyAdmin-$pkgver-all-languages.tar.bz2) -md5sums=('784b2534c443b1cb2328e3b97f0d2a36') - -build() { - _instdir=${startdir}/pkg/data/srv/httpd/htdocs/phpMyAdmin - mkdir -p ${_instdir} $pkgdir/etc/webapps/phpmyadmin - cd ${_instdir} - - cp -ra $srcdir/phpMyAdmin-${pkgver}-all-languages/* . -# echo "deny from all" >$pkgdir/etc/webapps/phpmyadmin/.htaccess - - ln -s /etc/webapps/phpmyadmin/.htaccess ${_instdir}/.htaccess - ln -s /etc/webapps/phpmyadmin/config.inc.php ${_instdir}/config.inc.php - cp ${_instdir}/config.sample.inc.php $pkgdir/etc/webapps/phpmyadmin/config.inc.php - cp ${_instdir}/config.sample.inc.php $pkgdir/etc/webapps/phpmyadmin/ - - # apache -# cat >$pkgdir/etc/webapps/phpmyadmin/apache.example.conf <<EOF -# Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin" -# <Directory "/usr/share/webapps/phpMyAdmin"> -# AllowOverride All -# Options FollowSymlinks -# Order allow,deny -# Allow from all -# </Directory> -#EOF - -} - - diff --git a/abs/extra/phpmyadmin/__changelog b/abs/extra/phpmyadmin/__changelog deleted file mode 100644 index 4ee3bf9..0000000 --- a/abs/extra/phpmyadmin/__changelog +++ /dev/null @@ -1,2 +0,0 @@ -Comment out all apache related stuff. -optdepends: change 'python' to 'python2' diff --git a/abs/extra/pmount/PKGBUILD b/abs/extra/pmount/PKGBUILD deleted file mode 100644 index bbdb957..0000000 --- a/abs/extra/pmount/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id: PKGBUILD 119797 2011-04-15 09:29:18Z jgc $ -# Maintainer: Tobias Powalowski <tpowa@archlinux.org> - -pkgname=pmount -pkgver=0.9.23 -pkgrel=2 -pkgdesc="mount removable devices as normal user" -arch=(i686 x86_64) -license=('GPL2') -url="http://pmount.alioth.debian.org/" -backup=('etc/pmount.allow') -depends=('sysfsutils>=2.0.0-1' 'bash') -makedepends=('intltool') -source=(https://alioth.debian.org/frs/download.php/3310/pmount-0.9.23.tar.bz2) -md5sums=('db19f5bf3151b1b41705ec7bafa439d3') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --disable-hal - make - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/pmount/pmount-dbus-close.patch b/abs/extra/pmount/pmount-dbus-close.patch deleted file mode 100644 index 06ffa2b..0000000 --- a/abs/extra/pmount/pmount-dbus-close.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -ruN pmount-0.9.13/src/pmount-hal.c pmount-0.9.13-new/src/pmount-hal.c ---- pmount-0.9.13/src/pmount-hal.c 2006-08-15 22:31:02.000000000 +0200 -+++ pmount-0.9.13-new/src/pmount-hal.c 2007-02-05 12:01:09.000000000 +0100 -@@ -361,7 +361,6 @@ - /* shut down hal connection */ - libhal_ctx_shutdown( hal_ctx, &error ); - libhal_ctx_free( hal_ctx ); -- dbus_connection_close( dbus_conn ); - dbus_connection_unref( dbus_conn ); - - /* go */ diff --git a/abs/extra/polkit/CVE-2011-1485.patch b/abs/extra/polkit/CVE-2011-1485.patch deleted file mode 100644 index f7054a6..0000000 --- a/abs/extra/polkit/CVE-2011-1485.patch +++ /dev/null @@ -1,908 +0,0 @@ -From dd848a42a64a3b22a0cc60f6657b56ce9b6010ae Mon Sep 17 00:00:00 2001 -From: David Zeuthen <davidz@redhat.com> -Date: Thu, 31 Mar 2011 16:59:09 +0000 -Subject: PolkitUnixProcess: Clarify that the real uid is returned, not the effective one - -On Linux, also switch to parsing /proc/<pid>/status instead of relying -on the st_uid returned by stat(2) to be the uid we want. - -This was pointed out by Neel Mehta <nmehta@google.com>. Thanks! - -Signed-off-by: David Zeuthen <davidz@redhat.com> ---- -diff --git a/src/polkit/polkitunixprocess.c b/src/polkit/polkitunixprocess.c -index d95a1d4..876da69 100644 ---- a/src/polkit/polkitunixprocess.c -+++ b/src/polkit/polkitunixprocess.c -@@ -24,9 +24,7 @@ - #endif - - #include <sys/types.h> --#ifndef HAVE_FREEBSD --#include <sys/stat.h> --#else -+#ifdef HAVE_FREEBSD - #include <sys/param.h> - #include <sys/sysctl.h> - #include <sys/user.h> -@@ -34,6 +32,7 @@ - #include <stdlib.h> - #include <string.h> - #include <errno.h> -+#include <stdio.h> - - #include "polkitunixprocess.h" - #include "polkitsubject.h" -@@ -208,6 +207,8 @@ polkit_unix_process_get_pid (PolkitUnixProcess *process) - * - * Gets the uid of the owner of @process. - * -+ * Note that this returns the real user-id (not the effective user-id) of @process. -+ * - * Returns: The UNIX user id of the owner for @process or 0 if @error is set. - **/ - gint -@@ -215,17 +216,21 @@ polkit_unix_process_get_owner (PolkitUnixProcess *process, - GError **error) - { - gint result; -+ gchar *contents; -+ gchar **lines; - #ifdef HAVE_FREEBSD - struct kinfo_proc p; - #else -- struct stat statbuf; -- char procbuf[32]; -+ gchar filename[64]; -+ guint n; - #endif - - g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), 0); - g_return_val_if_fail (error == NULL || *error == NULL, 0); - - result = 0; -+ lines = NULL; -+ contents = NULL; - - #ifdef HAVE_FREEBSD - if (get_kinfo_proc (process->pid, &p) == 0) -@@ -241,23 +246,52 @@ polkit_unix_process_get_owner (PolkitUnixProcess *process, - - result = p.ki_uid; - #else -- g_snprintf (procbuf, sizeof procbuf, "/proc/%d", process->pid); -- if (stat (procbuf, &statbuf) != 0) -+ -+ /* see 'man proc' for layout of the status file -+ * -+ * Uid, Gid: Real, effective, saved set, and file system UIDs (GIDs). -+ */ -+ g_snprintf (filename, sizeof filename, "/proc/%d/status", process->pid); -+ if (!g_file_get_contents (filename, -+ &contents, -+ NULL, -+ error)) - { -- g_set_error (error, -- POLKIT_ERROR, -- POLKIT_ERROR_FAILED, -- "stat() failed for /proc/%d: %s", -- process->pid, -- g_strerror (errno)); - goto out; - } -+ lines = g_strsplit (contents, "\n", -1); -+ for (n = 0; lines != NULL && lines[n] != NULL; n++) -+ { -+ gint real_uid, effective_uid; -+ if (!g_str_has_prefix (lines[n], "Uid:")) -+ continue; -+ if (sscanf (lines[n] + 4, "%d %d", &real_uid, &effective_uid) != 2) -+ { -+ g_set_error (error, -+ POLKIT_ERROR, -+ POLKIT_ERROR_FAILED, -+ "Unexpected line `%s' in file %s", -+ lines[n], -+ filename); -+ goto out; -+ } -+ else -+ { -+ result = real_uid; -+ goto out; -+ } -+ } - -- result = statbuf.st_uid; -+ g_set_error (error, -+ POLKIT_ERROR, -+ POLKIT_ERROR_FAILED, -+ "Didn't find any line starting with `Uid:' in file %s", -+ filename); - #endif - -- out: -- -+out: -+ g_strfreev (lines); -+ g_free (contents); - return result; - } - --- -cgit v0.8.3-6-g21f6 -From 129b6223a19e7fb2753f8cad7957ac5402394076 Mon Sep 17 00:00:00 2001 -From: David Zeuthen <davidz@redhat.com> -Date: Fri, 01 Apr 2011 16:09:45 +0000 -Subject: Make PolkitUnixProcess also record the uid of the process - -This is needed to avoid possible TOCTTOU issues since a process can -change both its real uid and effective uid. - -Signed-off-by: David Zeuthen <davidz@redhat.com> ---- -diff --git a/docs/polkit/polkit-1-sections.txt b/docs/polkit/polkit-1-sections.txt -index 12141e3..9f4fcf8 100644 ---- a/docs/polkit/polkit-1-sections.txt -+++ b/docs/polkit/polkit-1-sections.txt -@@ -145,10 +145,13 @@ POLKIT_UNIX_SESSION_GET_CLASS - PolkitUnixProcess - polkit_unix_process_new - polkit_unix_process_new_full -+polkit_unix_process_new_for_owner -+polkit_unix_process_set_pid - polkit_unix_process_get_pid -+polkit_unix_process_set_start_time - polkit_unix_process_get_start_time --polkit_unix_process_set_pid --polkit_unix_process_get_owner -+polkit_unix_process_set_uid -+polkit_unix_process_get_uid - <SUBSECTION Standard> - PolkitUnixProcessClass - POLKIT_UNIX_PROCESS -diff --git a/src/polkit/polkitsubject.c b/src/polkit/polkitsubject.c -index 577afec..d2c4c20 100644 ---- a/src/polkit/polkitsubject.c -+++ b/src/polkit/polkitsubject.c -@@ -238,13 +238,18 @@ polkit_subject_from_string (const gchar *str, - { - gint scanned_pid; - guint64 scanned_starttime; -- if (sscanf (str, "unix-process:%d:%" G_GUINT64_FORMAT, &scanned_pid, &scanned_starttime) == 2) -+ gint scanned_uid; -+ if (sscanf (str, "unix-process:%d:%" G_GUINT64_FORMAT ":%d", &scanned_pid, &scanned_starttime, &scanned_uid) == 3) -+ { -+ subject = polkit_unix_process_new_for_owner (scanned_pid, scanned_starttime, scanned_uid); -+ } -+ else if (sscanf (str, "unix-process:%d:%" G_GUINT64_FORMAT, &scanned_pid, &scanned_starttime) == 2) - { - subject = polkit_unix_process_new_full (scanned_pid, scanned_starttime); - } - else if (sscanf (str, "unix-process:%d", &scanned_pid) == 1) - { -- subject = polkit_unix_process_new_full (scanned_pid, 0); -+ subject = polkit_unix_process_new (scanned_pid); - if (polkit_unix_process_get_start_time (POLKIT_UNIX_PROCESS (subject)) == 0) - { - g_object_unref (subject); -@@ -297,6 +302,8 @@ polkit_subject_to_gvariant (PolkitSubject *subject) - g_variant_new_uint32 (polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject)))); - g_variant_builder_add (&builder, "{sv}", "start-time", - g_variant_new_uint64 (polkit_unix_process_get_start_time (POLKIT_UNIX_PROCESS (subject)))); -+ g_variant_builder_add (&builder, "{sv}", "uid", -+ g_variant_new_int32 (polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject)))); - } - else if (POLKIT_IS_UNIX_SESSION (subject)) - { -@@ -395,6 +402,7 @@ polkit_subject_new_for_gvariant (GVariant *variant, - GVariant *v; - guint32 pid; - guint64 start_time; -+ gint32 uid; - - v = lookup_asv (details_gvariant, "pid", G_VARIANT_TYPE_UINT32, error); - if (v == NULL) -@@ -414,7 +422,18 @@ polkit_subject_new_for_gvariant (GVariant *variant, - start_time = g_variant_get_uint64 (v); - g_variant_unref (v); - -- ret = polkit_unix_process_new_full (pid, start_time); -+ v = lookup_asv (details_gvariant, "uid", G_VARIANT_TYPE_INT32, error); -+ if (v != NULL) -+ { -+ uid = g_variant_get_int32 (v); -+ g_variant_unref (v); -+ } -+ else -+ { -+ uid = -1; -+ } -+ -+ ret = polkit_unix_process_new_for_owner (pid, start_time, uid); - } - else if (g_strcmp0 (kind, "unix-session") == 0) - { -diff --git a/src/polkit/polkitunixprocess.c b/src/polkit/polkitunixprocess.c -index 876da69..913be3a 100644 ---- a/src/polkit/polkitunixprocess.c -+++ b/src/polkit/polkitunixprocess.c -@@ -62,6 +62,7 @@ struct _PolkitUnixProcess - - gint pid; - guint64 start_time; -+ gint uid; - }; - - struct _PolkitUnixProcessClass -@@ -74,6 +75,7 @@ enum - PROP_0, - PROP_PID, - PROP_START_TIME, -+ PROP_UID - }; - - static void subject_iface_init (PolkitSubjectIface *subject_iface); -@@ -81,6 +83,9 @@ static void subject_iface_init (PolkitSubjectIface *subject_iface); - static guint64 get_start_time_for_pid (gint pid, - GError **error); - -+static gint _polkit_unix_process_get_owner (PolkitUnixProcess *process, -+ GError **error); -+ - #ifdef HAVE_FREEBSD - static gboolean get_kinfo_proc (gint pid, struct kinfo_proc *p); - #endif -@@ -92,6 +97,7 @@ G_DEFINE_TYPE_WITH_CODE (PolkitUnixProcess, polkit_unix_process, G_TYPE_OBJECT, - static void - polkit_unix_process_init (PolkitUnixProcess *unix_process) - { -+ unix_process->uid = -1; - } - - static void -@@ -108,6 +114,10 @@ polkit_unix_process_get_property (GObject *object, - g_value_set_int (value, unix_process->pid); - break; - -+ case PROP_UID: -+ g_value_set_int (value, unix_process->uid); -+ break; -+ - case PROP_START_TIME: - g_value_set_uint64 (value, unix_process->start_time); - break; -@@ -132,6 +142,14 @@ polkit_unix_process_set_property (GObject *object, - polkit_unix_process_set_pid (unix_process, g_value_get_int (value)); - break; - -+ case PROP_UID: -+ polkit_unix_process_set_uid (unix_process, g_value_get_int (value)); -+ break; -+ -+ case PROP_START_TIME: -+ polkit_unix_process_set_start_time (unix_process, g_value_get_uint64 (value)); -+ break; -+ - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; -@@ -139,12 +157,39 @@ polkit_unix_process_set_property (GObject *object, - } - - static void -+polkit_unix_process_constructed (GObject *object) -+{ -+ PolkitUnixProcess *process = POLKIT_UNIX_PROCESS (object); -+ -+ /* sets start_time and uid in case they are unset */ -+ -+ if (process->start_time == 0) -+ process->start_time = get_start_time_for_pid (process->pid, NULL); -+ -+ if (process->uid == -1) -+ { -+ GError *error; -+ error = NULL; -+ process->uid = _polkit_unix_process_get_owner (process, &error); -+ if (error != NULL) -+ { -+ process->uid = -1; -+ g_error_free (error); -+ } -+ } -+ -+ if (G_OBJECT_CLASS (polkit_unix_process_parent_class)->constructed != NULL) -+ G_OBJECT_CLASS (polkit_unix_process_parent_class)->constructed (object); -+} -+ -+static void - polkit_unix_process_class_init (PolkitUnixProcessClass *klass) - { - GObjectClass *gobject_class = G_OBJECT_CLASS (klass); - - gobject_class->get_property = polkit_unix_process_get_property; - gobject_class->set_property = polkit_unix_process_set_property; -+ gobject_class->constructed = polkit_unix_process_constructed; - - /** - * PolkitUnixProcess:pid: -@@ -156,7 +201,7 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass) - g_param_spec_int ("pid", - "Process ID", - "The UNIX process ID", -- -1, -+ 0, - G_MAXINT, - 0, - G_PARAM_CONSTRUCT | -@@ -166,6 +211,27 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass) - G_PARAM_STATIC_NICK)); - - /** -+ * PolkitUnixProcess:uid: -+ * -+ * The UNIX user id of the process or -1 if unknown. -+ * -+ * Note that this is the real user-id, not the effective user-id. -+ */ -+ g_object_class_install_property (gobject_class, -+ PROP_UID, -+ g_param_spec_int ("uid", -+ "User ID", -+ "The UNIX user ID", -+ -1, -+ G_MAXINT, -+ -1, -+ G_PARAM_CONSTRUCT | -+ G_PARAM_READWRITE | -+ G_PARAM_STATIC_NAME | -+ G_PARAM_STATIC_BLURB | -+ G_PARAM_STATIC_NICK)); -+ -+ /** - * PolkitUnixProcess:start-time: - * - * The start time of the process. -@@ -178,7 +244,8 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass) - 0, - G_MAXUINT64, - 0, -- G_PARAM_READABLE | -+ G_PARAM_CONSTRUCT | -+ G_PARAM_READWRITE | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_BLURB | - G_PARAM_STATIC_NICK)); -@@ -186,113 +253,50 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass) - } - - /** -- * polkit_unix_process_get_pid: -+ * polkit_unix_process_get_uid: - * @process: A #PolkitUnixProcess. - * -- * Gets the process id for @process. -+ * Gets the user id for @process. Note that this is the real user-id, -+ * not the effective user-id. - * -- * Returns: The process id for @process. -+ * Returns: The user id for @process or -1 if unknown. - */ - gint --polkit_unix_process_get_pid (PolkitUnixProcess *process) -+polkit_unix_process_get_uid (PolkitUnixProcess *process) - { -- g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), 0); -- return process->pid; -+ g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), -1); -+ return process->uid; - } - - /** -- * polkit_unix_process_get_owner: -+ * polkit_unix_process_set_uid: - * @process: A #PolkitUnixProcess. -- * @error: (allow-none): Return location for error or %NULL. -+ * @uid: The user id to set for @process or -1 to unset it. - * -- * Gets the uid of the owner of @process. -+ * Sets the (real, not effective) user id for @process. -+ */ -+void -+polkit_unix_process_set_uid (PolkitUnixProcess *process, -+ gint uid) -+{ -+ g_return_if_fail (POLKIT_IS_UNIX_PROCESS (process)); -+ g_return_if_fail (uid >= -1); -+ process->uid = uid; -+} -+ -+/** -+ * polkit_unix_process_get_pid: -+ * @process: A #PolkitUnixProcess. - * -- * Note that this returns the real user-id (not the effective user-id) of @process. -+ * Gets the process id for @process. - * -- * Returns: The UNIX user id of the owner for @process or 0 if @error is set. -- **/ -+ * Returns: The process id for @process. -+ */ - gint --polkit_unix_process_get_owner (PolkitUnixProcess *process, -- GError **error) -+polkit_unix_process_get_pid (PolkitUnixProcess *process) - { -- gint result; -- gchar *contents; -- gchar **lines; --#ifdef HAVE_FREEBSD -- struct kinfo_proc p; --#else -- gchar filename[64]; -- guint n; --#endif -- - g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), 0); -- g_return_val_if_fail (error == NULL || *error == NULL, 0); -- -- result = 0; -- lines = NULL; -- contents = NULL; -- --#ifdef HAVE_FREEBSD -- if (get_kinfo_proc (process->pid, &p) == 0) -- { -- g_set_error (error, -- POLKIT_ERROR, -- POLKIT_ERROR_FAILED, -- "get_kinfo_proc() failed for pid %d: %s", -- process->pid, -- g_strerror (errno)); -- goto out; -- } -- -- result = p.ki_uid; --#else -- -- /* see 'man proc' for layout of the status file -- * -- * Uid, Gid: Real, effective, saved set, and file system UIDs (GIDs). -- */ -- g_snprintf (filename, sizeof filename, "/proc/%d/status", process->pid); -- if (!g_file_get_contents (filename, -- &contents, -- NULL, -- error)) -- { -- goto out; -- } -- lines = g_strsplit (contents, "\n", -1); -- for (n = 0; lines != NULL && lines[n] != NULL; n++) -- { -- gint real_uid, effective_uid; -- if (!g_str_has_prefix (lines[n], "Uid:")) -- continue; -- if (sscanf (lines[n] + 4, "%d %d", &real_uid, &effective_uid) != 2) -- { -- g_set_error (error, -- POLKIT_ERROR, -- POLKIT_ERROR_FAILED, -- "Unexpected line `%s' in file %s", -- lines[n], -- filename); -- goto out; -- } -- else -- { -- result = real_uid; -- goto out; -- } -- } -- -- g_set_error (error, -- POLKIT_ERROR, -- POLKIT_ERROR_FAILED, -- "Didn't find any line starting with `Uid:' in file %s", -- filename); --#endif -- --out: -- g_strfreev (lines); -- g_free (contents); -- return result; -+ return process->pid; - } - - /** -@@ -311,6 +315,21 @@ polkit_unix_process_get_start_time (PolkitUnixProcess *process) - } - - /** -+ * polkit_unix_process_set_start_time: -+ * @process: A #PolkitUnixProcess. -+ * @start_time: The start time for @pid. -+ * -+ * Set the start time of @process. -+ */ -+void -+polkit_unix_process_set_start_time (PolkitUnixProcess *process, -+ guint64 start_time) -+{ -+ g_return_if_fail (POLKIT_IS_UNIX_PROCESS (process)); -+ process->start_time = start_time; -+} -+ -+/** - * polkit_unix_process_set_pid: - * @process: A #PolkitUnixProcess. - * @pid: A process id. -@@ -323,18 +342,17 @@ polkit_unix_process_set_pid (PolkitUnixProcess *process, - { - g_return_if_fail (POLKIT_IS_UNIX_PROCESS (process)); - process->pid = pid; -- if (pid != (gint) -1) -- process->start_time = get_start_time_for_pid (pid, NULL); - } - - /** - * polkit_unix_process_new: - * @pid: The process id. - * -- * Creates a new #PolkitUnixProcess for @pid. The start time of the -- * process will be looked up in using e.g. the -- * <filename>/proc</filename> filesystem depending on the platform in -- * use. -+ * Creates a new #PolkitUnixProcess for @pid. -+ * -+ * The uid and start time of the process will be looked up in using -+ * e.g. the <filename>/proc</filename> filesystem depending on the -+ * platform in use. - * - * Returns: (transfer full): A #PolkitSubject. Free with g_object_unref(). - */ -@@ -353,22 +371,42 @@ polkit_unix_process_new (gint pid) - * - * Creates a new #PolkitUnixProcess object for @pid and @start_time. - * -+ * The uid of the process will be looked up in using e.g. the -+ * <filename>/proc</filename> filesystem depending on the platform in -+ * use. -+ * - * Returns: (transfer full): A #PolkitSubject. Free with g_object_unref(). - */ - PolkitSubject * - polkit_unix_process_new_full (gint pid, - guint64 start_time) - { -- PolkitUnixProcess *process; -- -- process = POLKIT_UNIX_PROCESS (polkit_unix_process_new ((gint) -1)); -- process->pid = pid; -- if (start_time != 0) -- process->start_time = start_time; -- else -- process->start_time = get_start_time_for_pid (pid, NULL); -+ return POLKIT_SUBJECT (g_object_new (POLKIT_TYPE_UNIX_PROCESS, -+ "pid", pid, -+ "start_time", start_time, -+ NULL)); -+} - -- return POLKIT_SUBJECT (process); -+/** -+ * polkit_unix_process_new_for_owner: -+ * @pid: The process id. -+ * @start_time: The start time for @pid or 0 to look it up in e.g. <filename>/proc</filename>. -+ * @uid: The (real, not effective) uid of the owner of @pid or -1 to look it up in e.g. <filename>/proc</filename>. -+ * -+ * Creates a new #PolkitUnixProcess object for @pid, @start_time and @uid. -+ * -+ * Returns: (transfer full): A #PolkitSubject. Free with g_object_unref(). -+ */ -+PolkitSubject * -+polkit_unix_process_new_for_owner (gint pid, -+ guint64 start_time, -+ gint uid) -+{ -+ return POLKIT_SUBJECT (g_object_new (POLKIT_TYPE_UNIX_PROCESS, -+ "pid", pid, -+ "start_time", start_time, -+ "uid", uid, -+ NULL)); - } - - static guint -@@ -616,3 +654,95 @@ out: - - return start_time; - } -+ -+static gint -+_polkit_unix_process_get_owner (PolkitUnixProcess *process, -+ GError **error) -+{ -+ gint result; -+ gchar *contents; -+ gchar **lines; -+#ifdef HAVE_FREEBSD -+ struct kinfo_proc p; -+#else -+ gchar filename[64]; -+ guint n; -+#endif -+ -+ g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), 0); -+ g_return_val_if_fail (error == NULL || *error == NULL, 0); -+ -+ result = 0; -+ lines = NULL; -+ contents = NULL; -+ -+#ifdef HAVE_FREEBSD -+ if (get_kinfo_proc (process->pid, &p) == 0) -+ { -+ g_set_error (error, -+ POLKIT_ERROR, -+ POLKIT_ERROR_FAILED, -+ "get_kinfo_proc() failed for pid %d: %s", -+ process->pid, -+ g_strerror (errno)); -+ goto out; -+ } -+ -+ result = p.ki_uid; -+#else -+ -+ /* see 'man proc' for layout of the status file -+ * -+ * Uid, Gid: Real, effective, saved set, and file system UIDs (GIDs). -+ */ -+ g_snprintf (filename, sizeof filename, "/proc/%d/status", process->pid); -+ if (!g_file_get_contents (filename, -+ &contents, -+ NULL, -+ error)) -+ { -+ goto out; -+ } -+ lines = g_strsplit (contents, "\n", -1); -+ for (n = 0; lines != NULL && lines[n] != NULL; n++) -+ { -+ gint real_uid, effective_uid; -+ if (!g_str_has_prefix (lines[n], "Uid:")) -+ continue; -+ if (sscanf (lines[n] + 4, "%d %d", &real_uid, &effective_uid) != 2) -+ { -+ g_set_error (error, -+ POLKIT_ERROR, -+ POLKIT_ERROR_FAILED, -+ "Unexpected line `%s' in file %s", -+ lines[n], -+ filename); -+ goto out; -+ } -+ else -+ { -+ result = real_uid; -+ goto out; -+ } -+ } -+ -+ g_set_error (error, -+ POLKIT_ERROR, -+ POLKIT_ERROR_FAILED, -+ "Didn't find any line starting with `Uid:' in file %s", -+ filename); -+#endif -+ -+out: -+ g_strfreev (lines); -+ g_free (contents); -+ return result; -+} -+ -+/* deprecated public method */ -+gint -+polkit_unix_process_get_owner (PolkitUnixProcess *process, -+ GError **error) -+{ -+ return _polkit_unix_process_get_owner (process, error); -+} -diff --git a/src/polkit/polkitunixprocess.h b/src/polkit/polkitunixprocess.h -index b88cd03..531a57d 100644 ---- a/src/polkit/polkitunixprocess.h -+++ b/src/polkit/polkitunixprocess.h -@@ -47,16 +47,24 @@ typedef struct _PolkitUnixProcess PolkitUnixProcess; - typedef struct _PolkitUnixProcessClass PolkitUnixProcessClass; - - GType polkit_unix_process_get_type (void) G_GNUC_CONST; --PolkitSubject *polkit_unix_process_new (gint pid); --PolkitSubject *polkit_unix_process_new_full (gint pid, -- guint64 start_time); -- -+PolkitSubject *polkit_unix_process_new (gint pid); -+PolkitSubject *polkit_unix_process_new_full (gint pid, -+ guint64 start_time); -+PolkitSubject *polkit_unix_process_new_for_owner (gint pid, -+ guint64 start_time, -+ gint uid); - gint polkit_unix_process_get_pid (PolkitUnixProcess *process); - guint64 polkit_unix_process_get_start_time (PolkitUnixProcess *process); -+gint polkit_unix_process_get_uid (PolkitUnixProcess *process); - void polkit_unix_process_set_pid (PolkitUnixProcess *process, - gint pid); -+void polkit_unix_process_set_uid (PolkitUnixProcess *process, -+ gint uid); -+void polkit_unix_process_set_start_time (PolkitUnixProcess *process, -+ guint64 start_time); -+ - gint polkit_unix_process_get_owner (PolkitUnixProcess *process, -- GError **error); -+ GError **error) G_GNUC_DEPRECATED_FOR (polkit_unix_process_get_uid); - - G_END_DECLS - --- -cgit v0.8.3-6-g21f6 -From c23d74447c7615dc74dae259f0fc3688ec988867 Mon Sep 17 00:00:00 2001 -From: David Zeuthen <davidz@redhat.com> -Date: Fri, 01 Apr 2011 16:12:27 +0000 -Subject: Use polkit_unix_process_get_uid() to get the owner of a process - -This avoids a TOCTTOU problem. - -Signed-off-by: David Zeuthen <davidz@redhat.com> ---- -diff --git a/src/polkitbackend/polkitbackendsessionmonitor.c b/src/polkitbackend/polkitbackendsessionmonitor.c -index 495f752..9c331b6 100644 ---- a/src/polkitbackend/polkitbackendsessionmonitor.c -+++ b/src/polkitbackend/polkitbackendsessionmonitor.c -@@ -293,14 +293,15 @@ polkit_backend_session_monitor_get_user_for_subject (PolkitBackendSessionMonitor - - if (POLKIT_IS_UNIX_PROCESS (subject)) - { -- local_error = NULL; -- uid = polkit_unix_process_get_owner (POLKIT_UNIX_PROCESS (subject), &local_error); -- if (local_error != NULL) -+ uid = polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject)); -+ if ((gint) uid == -1) - { -- g_propagate_prefixed_error (error, local_error, "Error getting user for process: "); -+ g_set_error (error, -+ POLKIT_ERROR, -+ POLKIT_ERROR_FAILED, -+ "Unix process subject does not have uid set"); - goto out; - } -- - ret = polkit_unix_user_new (uid); - } - else if (POLKIT_IS_SYSTEM_BUS_NAME (subject)) --- -cgit v0.8.3-6-g21f6 -From 3b12cfac29dddd27f1f166a7574d8374cc1dccf2 Mon Sep 17 00:00:00 2001 -From: David Zeuthen <davidz@redhat.com> -Date: Fri, 01 Apr 2011 16:13:15 +0000 -Subject: pkexec: Avoid TOCTTOU problems with parent process - -In a nutshell, the parent process may change its uid (either real- or -effective uid) after launching pkexec. It can do this by exec()'ing -e.g. a setuid root program. - -To avoid this problem, just use the uid the parent process had when it -executed pkexec. This happens to be the same uid of the pkexec process -itself. - -Additionally, remove some dubious code that allowed pkexec to continue -when the parent process died as there is no reason to support -something like that. Also ensure that the pkexec process is killed if -the parent process dies. - -This problem was pointed out by Neel Mehta <nmehta@google.com>. - -Signed-off-by: David Zeuthen <davidz@redhat.com> ---- -diff --git a/src/programs/pkexec.c b/src/programs/pkexec.c -index 9217954..3e656be 100644 ---- a/src/programs/pkexec.c -+++ b/src/programs/pkexec.c -@@ -35,6 +35,10 @@ - #include <pwd.h> - #include <errno.h> - -+#ifdef __linux__ -+#include <sys/prctl.h> -+#endif -+ - #include <glib/gi18n.h> - - #ifdef POLKIT_AUTHFW_PAM -@@ -423,7 +427,6 @@ main (int argc, char *argv[]) - GPtrArray *saved_env; - gchar *opt_user; - pid_t pid_of_caller; -- uid_t uid_of_caller; - gpointer local_agent_handle; - - ret = 127; -@@ -598,40 +601,49 @@ main (int argc, char *argv[]) - */ - g_type_init (); - -- /* now check if the program that invoked us is authorized */ -+ /* make sure we are nuked if the parent process dies */ -+#ifdef __linux__ -+ if (prctl (PR_SET_PDEATHSIG, SIGTERM) != 0) -+ { -+ g_printerr ("prctl(PR_SET_PDEATHSIG, SIGTERM) failed: %s\n", g_strerror (errno)); -+ goto out; -+ } -+#else -+#warning "Please add OS specific code to catch when the parent dies" -+#endif -+ -+ /* Figure out the parent process */ - pid_of_caller = getppid (); - if (pid_of_caller == 1) - { - /* getppid() can return 1 if the parent died (meaning that we are reaped -- * by /sbin/init); get process group leader instead - for example, this -- * happens when launching via gnome-panel (alt+f2, then 'pkexec gedit'). -+ * by /sbin/init); In that case we simpy bail. - */ -- pid_of_caller = getpgrp (); -- } -- -- subject = polkit_unix_process_new (pid_of_caller); -- if (subject == NULL) -- { -- g_printerr ("No such process for pid %d: %s\n", (gint) pid_of_caller, error->message); -- g_error_free (error); -+ g_printerr ("Refusing to render service to dead parents.\n"); - goto out; - } - -- /* paranoia: check that the uid of pid_of_caller matches getuid() */ -- error = NULL; -- uid_of_caller = polkit_unix_process_get_owner (POLKIT_UNIX_PROCESS (subject), -- &error); -- if (error != NULL) -- { -- g_printerr ("Error determing pid of caller (pid %d): %s\n", (gint) pid_of_caller, error->message); -- g_error_free (error); -- goto out; -- } -- if (uid_of_caller != getuid ()) -- { -- g_printerr ("User of caller (%d) does not match our uid (%d)\n", uid_of_caller, getuid ()); -- goto out; -- } -+ /* This process we want to check an authorization for is the process -+ * that launched us - our parent process. -+ * -+ * At the time the parent process fork()'ed and exec()'ed us, the -+ * process had the same real-uid that we have now. So we use this -+ * real-uid instead of of looking it up to avoid TOCTTOU issues -+ * (consider the parent process exec()'ing a setuid helper). -+ * -+ * On the other hand, the monotonic process start-time is guaranteed -+ * to never change so it's safe to look that up given only the PID -+ * since we are guaranteed to be nuked if the parent goes away -+ * (cf. the prctl(2) call above). -+ */ -+ subject = polkit_unix_process_new_for_owner (pid_of_caller, -+ 0, /* 0 means "look up start-time in /proc" */ -+ getuid ()); -+ /* really double-check the invariants guaranteed by the PolkitUnixProcess class */ -+ g_assert (subject != NULL); -+ g_assert (polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject)) == pid_of_caller); -+ g_assert (polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject)) >= 0); -+ g_assert (polkit_unix_process_get_start_time (POLKIT_UNIX_PROCESS (subject)) > 0); - - error = NULL; - authority = polkit_authority_get_sync (NULL /* GCancellable* */, &error); --- -cgit v0.8.3-6-g21f6 diff --git a/abs/extra/polkit/PKGBUILD b/abs/extra/polkit/PKGBUILD index 3a55ddc..e86dbbc 100644 --- a/abs/extra/polkit/PKGBUILD +++ b/abs/extra/polkit/PKGBUILD @@ -1,9 +1,9 @@ -# $Id$ +# $Id: PKGBUILD 158972 2012-05-13 21:06:37Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=polkit -pkgver=0.101 -pkgrel=2 +pkgver=0.105 +pkgrel=1 pkgdesc="Application development toolkit for controlling system-wide privileges" arch=(i686 x86_64) license=('LGPL') @@ -12,21 +12,22 @@ depends=('glib2' 'pam' 'expat') makedepends=('intltool' 'gtk-doc' 'gobject-introspection') replaces=('policykit') options=('!libtool') -source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz - CVE-2011-1485.patch +source=(http://www.freedesktop.org/software/polkit/releases/$pkgname-$pkgver.tar.gz polkit.pam) -md5sums=('f925ac93aba3c072977370c1e27feb7f' - '4d858b8ab602614d7db2bc8574f6fd29' +md5sums=('9c29e1b6c214f0bd6f1d4ee303dfaed9' '6564f95878297b954f0572bc1610dd15') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/CVE-2011-1485.patch" + cd $pkgname-$pkgver ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --libexecdir=/usr/lib/polkit-1 \ --disable-static --enable-gtk-doc make - make DESTDIR="${pkgdir}" install +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install - install -m644 "${srcdir}/polkit.pam" "${pkgdir}/etc/pam.d/polkit-1" + install -m644 "$srcdir/polkit.pam" "$pkgdir/etc/pam.d/polkit-1" } diff --git a/abs/extra/polkit/systemd-fallback.patch b/abs/extra/polkit/systemd-fallback.patch new file mode 100644 index 0000000..f89ce10 --- /dev/null +++ b/abs/extra/polkit/systemd-fallback.patch @@ -0,0 +1,1571 @@ +diff -u -rN polkit-0.104/configure.ac polkit-0.104-systemd-fallback/configure.ac +--- polkit-0.104/configure.ac 2012-01-03 17:25:49.000000000 +0100 ++++ polkit-0.104-systemd-fallback/configure.ac 2012-03-06 15:45:55.275860194 +0100 +@@ -160,14 +160,14 @@ + [enable_systemd=auto]) + if test "$enable_systemd" != "no"; then + PKG_CHECK_MODULES(SYSTEMD, +- [libsystemd-login], ++ [libsystemd-login libsystemd-daemon], + have_systemd=yes, + have_systemd=no) + if test "$have_systemd" = "yes"; then + SESSION_TRACKING=systemd + else + if test "$enable_systemd" = "yes"; then +- AC_MSG_ERROR([systemd support requested but libsystemd-login1 library not found]) ++ AC_MSG_ERROR([systemd support requested but systemd libraries not found]) + fi + fi + fi +diff -u -rN polkit-0.104/src/polkit/Makefile.am polkit-0.104-systemd-fallback/src/polkit/Makefile.am +--- polkit-0.104/src/polkit/Makefile.am 2012-01-03 16:03:47.000000000 +0100 ++++ polkit-0.104-systemd-fallback/src/polkit/Makefile.am 2012-03-06 15:19:25.108853325 +0100 +@@ -79,15 +79,8 @@ + polkitimplicitauthorization.c polkitimplicitauthorization.h \ + polkittemporaryauthorization.c polkittemporaryauthorization.h \ + polkitpermission.c polkitpermission.h \ +- $(NULL) +- +-if HAVE_SYSTEMD +-libpolkit_gobject_1_la_SOURCES += \ +- polkitunixsession-systemd.c polkitunixsession.h +-else +-libpolkit_gobject_1_la_SOURCES += \ + polkitunixsession.c polkitunixsession.h +-endif ++ $(NULL) + + libpolkit_gobject_1_la_CFLAGS = \ + -D_POLKIT_COMPILATION \ +diff -u -rN polkit-0.104/src/polkit/polkitunixsession.c polkit-0.104-systemd-fallback/src/polkit/polkitunixsession.c +--- polkit-0.104/src/polkit/polkitunixsession.c 2011-10-18 19:02:27.000000000 +0200 ++++ polkit-0.104-systemd-fallback/src/polkit/polkitunixsession.c 2012-03-06 15:17:29.829788021 +0100 +@@ -23,12 +23,18 @@ + # include "config.h" + #endif + ++#include <stdlib.h> + #include <string.h> + #include "polkitunixsession.h" + #include "polkitsubject.h" + #include "polkiterror.h" + #include "polkitprivate.h" + ++#ifdef HAVE_SYSTEMD ++# include <systemd/sd-daemon.h> ++# include <systemd/sd-login.h> ++#endif ++ + /** + * SECTION:polkitunixsession + * @title: PolkitUnixSession +@@ -364,34 +370,44 @@ + PolkitUnixSession *session = POLKIT_UNIX_SESSION (subject); + GDBusConnection *connection; + GVariant *result; +- gboolean ret; +- +- ret = FALSE; ++ gboolean ret = FALSE; + +- connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, cancellable, error); +- if (connection == NULL) +- goto out; +- +- result = g_dbus_connection_call_sync (connection, +- "org.freedesktop.ConsoleKit", /* name */ +- session->session_id, /* object path */ +- "org.freedesktop.ConsoleKit.Session", /* interface name */ +- "GetUser", /* method */ +- NULL, /* parameters */ +- G_VARIANT_TYPE ("(u)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, +- cancellable, +- error); +- if (result == NULL) +- goto out; ++#ifdef HAVE_SYSTEMD ++ uid_t uid; ++ ++ if (sd_booted () > 0) ++ { ++ if (sd_session_get_uid (session->session_id, &uid) == 0) ++ ret = TRUE; ++ } ++ else ++#endif ++ { ++ connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, cancellable, error); ++ if (connection == NULL) ++ goto out; ++ ++ result = g_dbus_connection_call_sync (connection, ++ "org.freedesktop.ConsoleKit", /* name */ ++ session->session_id, /* object path */ ++ "org.freedesktop.ConsoleKit.Session", /* interface name */ ++ "GetUser", /* method */ ++ NULL, /* parameters */ ++ G_VARIANT_TYPE ("(u)"), ++ G_DBUS_CALL_FLAGS_NONE, ++ -1, ++ cancellable, ++ error); ++ if (result == NULL) ++ goto out; + +- ret = TRUE; +- g_variant_unref (result); ++ ret = TRUE; ++ g_variant_unref (result); + +- out: +- if (connection != NULL) +- g_object_unref (connection); ++ out: ++ if (connection != NULL) ++ g_object_unref (connection); ++ } + return ret; + } + +@@ -470,12 +486,9 @@ + GError **error) + { + PolkitUnixSession *session = POLKIT_UNIX_SESSION (initable); +- GDBusConnection *connection; ++ GDBusConnection *connection = NULL; + GVariant *result; +- gboolean ret; +- +- connection = NULL; +- ret = FALSE; ++ gboolean ret = FALSE; + + if (session->session_id != NULL) + { +@@ -484,33 +497,56 @@ + goto out; + } + +- connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, cancellable, error); +- if (connection == NULL) +- goto out; ++#ifdef HAVE_SYSTEMD ++ char *s; ++ ++ if (sd_booted () > 0) ++ { ++ if (sd_pid_get_session (session->pid, &s) == 0) ++ { ++ session->session_id = g_strdup (s); ++ free (s); ++ ret = TRUE; ++ goto out; ++ } ++ ++ g_set_error (error, ++ POLKIT_ERROR, ++ POLKIT_ERROR_FAILED, ++ "No session for pid %d", ++ (gint) session->pid); ++ } ++ else ++#endif ++ { ++ connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, cancellable, error); ++ if (connection == NULL) ++ goto out; ++ ++ result = g_dbus_connection_call_sync (connection, ++ "org.freedesktop.ConsoleKit", /* name */ ++ "/org/freedesktop/ConsoleKit/Manager", /* object path */ ++ "org.freedesktop.ConsoleKit.Manager", /* interface name */ ++ "GetSessionForUnixProcess", /* method */ ++ g_variant_new ("(u)", session->pid), /* parameters */ ++ G_VARIANT_TYPE ("(o)"), ++ G_DBUS_CALL_FLAGS_NONE, ++ -1, ++ cancellable, ++ error); ++ if (result == NULL) ++ goto out; + +- result = g_dbus_connection_call_sync (connection, +- "org.freedesktop.ConsoleKit", /* name */ +- "/org/freedesktop/ConsoleKit/Manager", /* object path */ +- "org.freedesktop.ConsoleKit.Manager", /* interface name */ +- "GetSessionForUnixProcess", /* method */ +- g_variant_new ("(u)", session->pid), /* parameters */ +- G_VARIANT_TYPE ("(o)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, +- cancellable, +- error); +- if (result == NULL) +- goto out; ++ g_variant_get (result, "(o)", &session->session_id); ++ g_variant_unref (result); + +- g_variant_get (result, "(o)", &session->session_id); +- g_variant_unref (result); ++ ret = TRUE; ++ } + +- ret = TRUE; + + out: + if (connection != NULL) + g_object_unref (connection); +- + return ret; + } + +diff -u -rN polkit-0.104/src/polkit/polkitunixsession-systemd.c polkit-0.104-systemd-fallback/src/polkit/polkitunixsession-systemd.c +--- polkit-0.104/src/polkit/polkitunixsession-systemd.c 2012-01-03 16:03:47.000000000 +0100 ++++ polkit-0.104-systemd-fallback/src/polkit/polkitunixsession-systemd.c 1970-01-01 01:00:00.000000000 +0100 +@@ -1,481 +0,0 @@ +-/* +- * Copyright (C) 2011 Red Hat, Inc. +- * +- * This 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 of the License, or (at your option) any later version. +- * +- * This 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 this library; if not, write to the +- * Free Software Foundation, Inc., 59 Temple Place, Suite 330, +- * Boston, MA 02111-1307, USA. +- * +- * Author: Matthias Clasen +- */ +- +-#ifdef HAVE_CONFIG_H +-# include "config.h" +-#endif +- +-#include <string.h> +-#include "polkitunixsession.h" +-#include "polkitsubject.h" +-#include "polkiterror.h" +-#include "polkitprivate.h" +- +-#include <systemd/sd-login.h> +- +-/** +- * SECTION:polkitunixsession +- * @title: PolkitUnixSession +- * @short_description: Unix sessions +- * +- * An object that represents an user session. +- * +- * The session id is an opaque string obtained from ConsoleKit. +- */ +- +-/** +- * PolkitUnixSession: +- * +- * The #PolkitUnixSession struct should not be accessed directly. +- */ +-struct _PolkitUnixSession +-{ +- GObject parent_instance; +- +- gchar *session_id; +- +- gint pid; +-}; +- +-struct _PolkitUnixSessionClass +-{ +- GObjectClass parent_class; +-}; +- +-enum +-{ +- PROP_0, +- PROP_SESSION_ID, +- PROP_PID, +-}; +- +-static void subject_iface_init (PolkitSubjectIface *subject_iface); +-static void initable_iface_init (GInitableIface *initable_iface); +-static void async_initable_iface_init (GAsyncInitableIface *async_initable_iface); +- +-G_DEFINE_TYPE_WITH_CODE (PolkitUnixSession, polkit_unix_session, G_TYPE_OBJECT, +- G_IMPLEMENT_INTERFACE (POLKIT_TYPE_SUBJECT, subject_iface_init) +- G_IMPLEMENT_INTERFACE (G_TYPE_INITABLE, initable_iface_init) +- G_IMPLEMENT_INTERFACE (G_TYPE_ASYNC_INITABLE, async_initable_iface_init) +- ); +- +-static void +-polkit_unix_session_init (PolkitUnixSession *session) +-{ +-} +- +-static void +-polkit_unix_session_finalize (GObject *object) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (object); +- +- g_free (session->session_id); +- +- if (G_OBJECT_CLASS (polkit_unix_session_parent_class)->finalize != NULL) +- G_OBJECT_CLASS (polkit_unix_session_parent_class)->finalize (object); +-} +- +-static void +-polkit_unix_session_get_property (GObject *object, +- guint prop_id, +- GValue *value, +- GParamSpec *pspec) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (object); +- +- switch (prop_id) +- { +- case PROP_SESSION_ID: +- g_value_set_string (value, session->session_id); +- break; +- +- default: +- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); +- break; +- } +-} +- +-static void +-polkit_unix_session_set_property (GObject *object, +- guint prop_id, +- const GValue *value, +- GParamSpec *pspec) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (object); +- +- switch (prop_id) +- { +- case PROP_SESSION_ID: +- polkit_unix_session_set_session_id (session, g_value_get_string (value)); +- break; +- +- case PROP_PID: +- session->pid = g_value_get_int (value); +- break; +- +- default: +- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); +- break; +- } +-} +- +-static void +-polkit_unix_session_class_init (PolkitUnixSessionClass *klass) +-{ +- GObjectClass *gobject_class = G_OBJECT_CLASS (klass); +- +- gobject_class->finalize = polkit_unix_session_finalize; +- gobject_class->get_property = polkit_unix_session_get_property; +- gobject_class->set_property = polkit_unix_session_set_property; +- +- /** +- * PolkitUnixSession:session-id: +- * +- * The UNIX session id. +- */ +- g_object_class_install_property (gobject_class, +- PROP_SESSION_ID, +- g_param_spec_string ("session-id", +- "Session ID", +- "The UNIX session ID", +- NULL, +- G_PARAM_CONSTRUCT | +- G_PARAM_READWRITE | +- G_PARAM_STATIC_NAME | +- G_PARAM_STATIC_BLURB | +- G_PARAM_STATIC_NICK)); +- +- +- /** +- * PolkitUnixSession:pid: +- * +- * The UNIX process id to look up the session. +- */ +- g_object_class_install_property (gobject_class, +- PROP_PID, +- g_param_spec_int ("pid", +- "Process ID", +- "Process ID to use for looking up the session", +- 0, +- G_MAXINT, +- 0, +- G_PARAM_CONSTRUCT_ONLY | +- G_PARAM_WRITABLE | +- G_PARAM_STATIC_NAME | +- G_PARAM_STATIC_BLURB | +- G_PARAM_STATIC_NICK)); +- +-} +- +-/** +- * polkit_unix_session_get_session_id: +- * @session: A #PolkitUnixSession. +- * +- * Gets the session id for @session. +- * +- * Returns: The session id for @session. Do not free this string, it +- * is owned by @session. +- **/ +-const gchar * +-polkit_unix_session_get_session_id (PolkitUnixSession *session) +-{ +- g_return_val_if_fail (POLKIT_IS_UNIX_SESSION (session), NULL); +- return session->session_id; +-} +- +-/** +- * polkit_unix_session_set_session_id: +- * @session: A #PolkitUnixSession. +- * @session_id: The session id. +- * +- * Sets the session id for @session to @session_id. +- **/ +-void +-polkit_unix_session_set_session_id (PolkitUnixSession *session, +- const gchar *session_id) +-{ +- g_return_if_fail (POLKIT_IS_UNIX_SESSION (session)); +- /*g_return_if_fail (session_id != NULL);*/ +- g_free (session->session_id); +- session->session_id = g_strdup (session_id); +-} +- +-/** +- * polkit_unix_session_new: +- * @session_id: The session id. +- * +- * Creates a new #PolkitUnixSession for @session_id. +- * +- * Returns: (transfer full): A #PolkitUnixSession. Free with g_object_unref(). +- **/ +-PolkitSubject * +-polkit_unix_session_new (const gchar *session_id) +-{ +- return POLKIT_SUBJECT (g_object_new (POLKIT_TYPE_UNIX_SESSION, +- "session-id", session_id, +- NULL)); +-} +- +-/** +- * polkit_unix_session_new_for_process: +- * @pid: The process id of the process to get the session for. +- * @cancellable: (allow-none): A #GCancellable or %NULL. +- * @callback: A #GAsyncReadyCallback to call when the request is satisfied +- * @user_data: The data to pass to @callback. +- * +- * Asynchronously creates a new #PolkitUnixSession object for the +- * process with process id @pid. +- * +- * When the operation is finished, @callback will be invoked in the +- * <link linkend="g-main-context-push-thread-default">thread-default +- * main loop</link> of the thread you are calling this method +- * from. You can then call +- * polkit_unix_session_new_for_process_finish() to get the result of +- * the operation. +- * +- * This method constructs the object asynchronously, for the synchronous and blocking version +- * use polkit_unix_session_new_for_process_sync(). +- **/ +-void +-polkit_unix_session_new_for_process (gint pid, +- GCancellable *cancellable, +- GAsyncReadyCallback callback, +- gpointer user_data) +-{ +- g_async_initable_new_async (POLKIT_TYPE_UNIX_SESSION, +- G_PRIORITY_DEFAULT, +- cancellable, +- callback, +- user_data, +- "pid", pid, +- NULL); +-} +- +-/** +- * polkit_unix_session_new_for_process_finish: +- * @res: A #GAsyncResult obtained from the #GAsyncReadyCallback passed to polkit_unix_session_new_for_process(). +- * @error: (allow-none): Return location for error. +- * +- * Finishes constructing a #PolkitSubject for a process id. +- * +- * Returns: (transfer full) (allow-none): A #PolkitUnixSession for the @pid passed to +- * polkit_unix_session_new_for_process() or %NULL if @error is +- * set. Free with g_object_unref(). +- **/ +-PolkitSubject * +-polkit_unix_session_new_for_process_finish (GAsyncResult *res, +- GError **error) +-{ +- GObject *object; +- GObject *source_object; +- +- source_object = g_async_result_get_source_object (res); +- g_assert (source_object != NULL); +- +- object = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), +- res, +- error); +- g_object_unref (source_object); +- +- if (object != NULL) +- return POLKIT_SUBJECT (object); +- else +- return NULL; +-} +- +- +-/** +- * polkit_unix_session_new_for_process_sync: +- * @pid: The process id of the process to get the session for. +- * @cancellable: (allow-none): A #GCancellable or %NULL. +- * @error: (allow-none): Return location for error. +- * +- * Creates a new #PolkitUnixSession for the process with process id @pid. +- * +- * This is a synchronous call - the calling thread is blocked until a +- * reply is received. For the asynchronous version, see +- * polkit_unix_session_new_for_process(). +- * +- * Returns: (allow-none) (transfer full): A #PolkitUnixSession for +- * @pid or %NULL if @error is set. Free with g_object_unref(). +- **/ +-PolkitSubject * +-polkit_unix_session_new_for_process_sync (gint pid, +- GCancellable *cancellable, +- GError **error) +-{ +- return POLKIT_SUBJECT (g_initable_new (POLKIT_TYPE_UNIX_SESSION, +- cancellable, +- error, +- "pid", pid, +- NULL)); +-} +- +-static guint +-polkit_unix_session_hash (PolkitSubject *subject) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (subject); +- +- return g_str_hash (session->session_id); +-} +- +-static gboolean +-polkit_unix_session_equal (PolkitSubject *a, +- PolkitSubject *b) +-{ +- PolkitUnixSession *session_a; +- PolkitUnixSession *session_b; +- +- session_a = POLKIT_UNIX_SESSION (a); +- session_b = POLKIT_UNIX_SESSION (b); +- +- return g_strcmp0 (session_a->session_id, session_b->session_id) == 0; +-} +- +-static gchar * +-polkit_unix_session_to_string (PolkitSubject *subject) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (subject); +- +- return g_strdup_printf ("unix-session:%s", session->session_id); +-} +- +-static gboolean +-polkit_unix_session_exists_sync (PolkitSubject *subject, +- GCancellable *cancellable, +- GError **error) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (subject); +- gboolean ret; +- uid_t uid; +- +- ret = FALSE; +- +- if (!sd_session_get_uid (session->session_id, &uid)) +- ret = FALSE; +- +- return ret; +-} +- +-static void +-exists_in_thread_func (GSimpleAsyncResult *res, +- GObject *object, +- GCancellable *cancellable) +-{ +- GError *error; +- error = NULL; +- if (!polkit_unix_session_exists_sync (POLKIT_SUBJECT (object), +- cancellable, +- &error)) +- { +- g_simple_async_result_set_from_error (res, error); +- g_error_free (error); +- } +-} +- +-static void +-polkit_unix_session_exists (PolkitSubject *subject, +- GCancellable *cancellable, +- GAsyncReadyCallback callback, +- gpointer user_data) +-{ +- GSimpleAsyncResult *simple; +- +- g_return_if_fail (POLKIT_IS_UNIX_SESSION (subject)); +- +- simple = g_simple_async_result_new (G_OBJECT (subject), +- callback, +- user_data, +- polkit_unix_session_exists); +- g_simple_async_result_run_in_thread (simple, +- exists_in_thread_func, +- G_PRIORITY_DEFAULT, +- cancellable); +- g_object_unref (simple); +-} +- +-static gboolean +-polkit_unix_session_exists_finish (PolkitSubject *subject, +- GAsyncResult *res, +- GError **error) +-{ +- GSimpleAsyncResult *simple = G_SIMPLE_ASYNC_RESULT (res); +- gboolean ret; +- +- g_warn_if_fail (g_simple_async_result_get_source_tag (simple) == polkit_unix_session_exists); +- +- ret = FALSE; +- +- if (g_simple_async_result_propagate_error (simple, error)) +- goto out; +- +- ret = g_simple_async_result_get_op_res_gboolean (simple); +- +- out: +- return ret; +-} +- +-static void +-subject_iface_init (PolkitSubjectIface *subject_iface) +-{ +- subject_iface->hash = polkit_unix_session_hash; +- subject_iface->equal = polkit_unix_session_equal; +- subject_iface->to_string = polkit_unix_session_to_string; +- subject_iface->exists = polkit_unix_session_exists; +- subject_iface->exists_finish = polkit_unix_session_exists_finish; +- subject_iface->exists_sync = polkit_unix_session_exists_sync; +-} +- +-static gboolean +-polkit_unix_session_initable_init (GInitable *initable, +- GCancellable *cancellable, +- GError **error) +-{ +- PolkitUnixSession *session = POLKIT_UNIX_SESSION (initable); +- gboolean ret; +- +- ret = FALSE; +- +- if (session->session_id != NULL) +- { +- /* already set, nothing to do */ +- ret = TRUE; +- goto out; +- } +- +- if (!sd_pid_get_session (session->pid, &session->session_id)) +- ret = TRUE; +- +-out: +- return ret; +-} +- +-static void +-initable_iface_init (GInitableIface *initable_iface) +-{ +- initable_iface->init = polkit_unix_session_initable_init; +-} +- +-static void +-async_initable_iface_init (GAsyncInitableIface *async_initable_iface) +-{ +- /* use default implementation to run GInitable code in a thread */ +-} +diff -u -rN polkit-0.104/src/polkitbackend/Makefile.am polkit-0.104-systemd-fallback/src/polkitbackend/Makefile.am +--- polkit-0.104/src/polkitbackend/Makefile.am 2012-01-03 16:03:47.000000000 +0100 ++++ polkit-0.104-systemd-fallback/src/polkitbackend/Makefile.am 2012-03-06 15:44:15.380014886 +0100 +@@ -41,15 +41,8 @@ + polkitbackendconfigsource.h polkitbackendconfigsource.c \ + polkitbackendactionlookup.h polkitbackendactionlookup.c \ + polkitbackendlocalauthorizationstore.h polkitbackendlocalauthorizationstore.c \ +- $(NULL) +- +-if HAVE_SYSTEMD +-libpolkit_backend_1_la_SOURCES += \ +- polkitbackendsessionmonitor.h polkitbackendsessionmonitor-systemd.c +-else +-libpolkit_backend_1_la_SOURCES += \ + polkitbackendsessionmonitor.h polkitbackendsessionmonitor.c +-endif ++ $(NULL) + + libpolkit_backend_1_la_CFLAGS = \ + -D_POLKIT_COMPILATION \ +diff -u -rN polkit-0.104/src/polkitbackend/polkitbackendsessionmonitor.c polkit-0.104-systemd-fallback/src/polkitbackend/polkitbackendsessionmonitor.c +--- polkit-0.104/src/polkitbackend/polkitbackendsessionmonitor.c 2011-10-18 19:02:27.000000000 +0200 ++++ polkit-0.104-systemd-fallback/src/polkitbackend/polkitbackendsessionmonitor.c 2012-03-06 15:43:49.353562242 +0100 +@@ -26,6 +26,12 @@ + #include <string.h> + #include <glib/gstdio.h> + ++#ifdef HAVE_SYSTEMD ++# include <systemd/sd-daemon.h> ++# include <systemd/sd-login.h> ++# include <stdlib.h> ++#endif ++ + #include <polkit/polkit.h> + #include "polkitbackendsessionmonitor.h" + +@@ -39,6 +45,88 @@ + * The #PolkitBackendSessionMonitor class is a utility class to track and monitor sessions. + */ + ++#ifdef HAVE_SYSTEMD ++typedef struct ++{ ++ GSource source; ++ GPollFD pollfd; ++ sd_login_monitor *monitor; ++} SdSource; ++ ++static gboolean ++sd_source_prepare (GSource *source, ++ gint *timeout) ++{ ++ *timeout = -1; ++ return FALSE; ++} ++ ++static gboolean ++sd_source_check (GSource *source) ++{ ++ SdSource *sd_source = (SdSource *)source; ++ ++ return sd_source->pollfd.revents != 0; ++} ++ ++static gboolean ++sd_source_dispatch (GSource *source, ++ GSourceFunc callback, ++ gpointer user_data) ++ ++{ ++ SdSource *sd_source = (SdSource *)source; ++ gboolean ret; ++ ++ g_warn_if_fail (callback != NULL); ++ ++ ret = (*callback) (user_data); ++ ++ sd_login_monitor_flush (sd_source->monitor); ++ ++ return ret; ++} ++ ++static void ++sd_source_finalize (GSource *source) ++{ ++ SdSource *sd_source = (SdSource*)source; ++ ++ sd_login_monitor_unref (sd_source->monitor); ++} ++ ++static GSourceFuncs sd_source_funcs = { ++ sd_source_prepare, ++ sd_source_check, ++ sd_source_dispatch, ++ sd_source_finalize ++}; ++ ++static GSource * ++sd_source_new (void) ++{ ++ GSource *source; ++ SdSource *sd_source; ++ int ret; ++ ++ source = g_source_new (&sd_source_funcs, sizeof (SdSource)); ++ sd_source = (SdSource *)source; ++ ++ if ((ret = sd_login_monitor_new (NULL, &sd_source->monitor)) < 0) ++ { ++ g_printerr ("Error getting login monitor: %d", ret); ++ } ++ else ++ { ++ sd_source->pollfd.fd = sd_login_monitor_get_fd (sd_source->monitor); ++ sd_source->pollfd.events = G_IO_IN; ++ g_source_add_poll (source, &sd_source->pollfd); ++ } ++ ++ return source; ++} ++#endif /* HAVE_SYSTEMD */ ++ + struct _PolkitBackendSessionMonitor + { + GObject parent_instance; +@@ -48,6 +136,10 @@ + GKeyFile *database; + GFileMonitor *database_monitor; + time_t database_mtime; ++ ++#ifdef HAVE_SYSTEMD ++ GSource *sd_source; ++#endif + }; + + struct _PolkitBackendSessionMonitorClass +@@ -162,6 +254,18 @@ + g_signal_emit (monitor, signals[CHANGED_SIGNAL], 0); + } + ++#ifdef HAVE_SYSTEMD ++static gboolean ++sessions_changed (gpointer user_data) ++{ ++ PolkitBackendSessionMonitor *monitor = POLKIT_BACKEND_SESSION_MONITOR (user_data); ++ ++ g_signal_emit (monitor, signals[CHANGED_SIGNAL], 0); ++ ++ return TRUE; ++} ++#endif ++ + static void + polkit_backend_session_monitor_init (PolkitBackendSessionMonitor *monitor) + { +@@ -176,31 +280,47 @@ + g_error_free (error); + } + +- error = NULL; +- if (!ensure_database (monitor, &error)) +- { +- g_printerr ("Error loading " CKDB_PATH ": %s", error->message); +- g_error_free (error); +- } ++#ifdef HAVE_SYSTEMD ++ monitor->sd_source = NULL; ++ ++ if (sd_booted () > 0) ++ { ++ monitor->sd_source = sd_source_new (); ++ g_source_set_callback (monitor->sd_source, sessions_changed, monitor, NULL); ++ g_source_attach (monitor->sd_source, NULL); + +- error = NULL; +- file = g_file_new_for_path (CKDB_PATH); +- monitor->database_monitor = g_file_monitor_file (file, +- G_FILE_MONITOR_NONE, +- NULL, +- &error); +- g_object_unref (file); +- if (monitor->database_monitor == NULL) +- { +- g_printerr ("Error monitoring " CKDB_PATH ": %s", error->message); +- g_error_free (error); ++ monitor->database = NULL; ++ monitor->database_monitor = NULL; + } + else ++#endif + { +- g_signal_connect (monitor->database_monitor, +- "changed", +- G_CALLBACK (on_file_monitor_changed), +- monitor); ++ error = NULL; ++ if (!ensure_database (monitor, &error)) ++ { ++ g_printerr ("Error loading " CKDB_PATH ": %s", error->message); ++ g_error_free (error); ++ } ++ ++ error = NULL; ++ file = g_file_new_for_path (CKDB_PATH); ++ monitor->database_monitor = g_file_monitor_file (file, ++ G_FILE_MONITOR_NONE, ++ NULL, ++ &error); ++ g_object_unref (file); ++ if (monitor->database_monitor == NULL) ++ { ++ g_printerr ("Error monitoring " CKDB_PATH ": %s", error->message); ++ g_error_free (error); ++ } ++ else ++ { ++ g_signal_connect (monitor->database_monitor, ++ "changed", ++ G_CALLBACK (on_file_monitor_changed), ++ monitor); ++ } + } + } + +@@ -212,6 +332,14 @@ + if (monitor->system_bus != NULL) + g_object_unref (monitor->system_bus); + ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ { ++ g_source_destroy (monitor->sd_source); ++ g_source_unref (monitor->sd_source); ++ } ++#endif ++ + if (monitor->database_monitor != NULL) + g_object_unref (monitor->database_monitor); + +@@ -328,22 +456,38 @@ + } + else if (POLKIT_IS_UNIX_SESSION (subject)) + { +- if (!ensure_database (monitor, error)) ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) + { +- g_prefix_error (error, "Error getting user for session: Error ensuring CK database at " CKDB_PATH ": "); +- goto out; ++ if (sd_session_get_uid (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (subject)), &uid) < 0) ++ { ++ g_set_error (error, ++ POLKIT_ERROR, ++ POLKIT_ERROR_FAILED, ++ "Error getting uid for session"); ++ goto out; ++ } + } +- +- group = g_strdup_printf ("Session %s", polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (subject))); +- local_error = NULL; +- uid = g_key_file_get_integer (monitor->database, group, "uid", &local_error); +- if (local_error != NULL) ++ else ++#endif + { +- g_propagate_prefixed_error (error, local_error, "Error getting uid using " CKDB_PATH ": "); ++ if (!ensure_database (monitor, error)) ++ { ++ g_prefix_error (error, "Error getting user for session: Error ensuring CK database at " CKDB_PATH ": "); ++ goto out; ++ } ++ ++ group = g_strdup_printf ("Session %s", polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (subject))); ++ local_error = NULL; ++ uid = g_key_file_get_integer (monitor->database, group, "uid", &local_error); ++ if (local_error != NULL) ++ { ++ g_propagate_prefixed_error (error, local_error, "Error getting uid using " CKDB_PATH ": "); ++ g_free (group); ++ goto out; ++ } + g_free (group); +- goto out; + } +- g_free (group); + + ret = polkit_unix_user_new (uid); + } +@@ -373,29 +517,46 @@ + + if (POLKIT_IS_UNIX_PROCESS (subject)) + { +- const gchar *session_id; +- GVariant *result; +- result = g_dbus_connection_call_sync (monitor->system_bus, +- "org.freedesktop.ConsoleKit", +- "/org/freedesktop/ConsoleKit/Manager", +- "org.freedesktop.ConsoleKit.Manager", +- "GetSessionForUnixProcess", +- g_variant_new ("(u)", polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject))), +- G_VARIANT_TYPE ("(o)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, /* timeout_msec */ +- NULL, /* GCancellable */ +- error); +- if (result == NULL) +- goto out; +- g_variant_get (result, "(&o)", &session_id); +- session = polkit_unix_session_new (session_id); +- g_variant_unref (result); ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ { ++ gchar *session_id; ++ pid_t pid; ++ ++ pid = polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject)); ++ if (sd_pid_get_session (pid, &session_id) < 0) ++ goto out; ++ ++ session = polkit_unix_session_new (session_id); ++ free (session_id); ++ } ++ else ++#endif ++ { ++ const gchar *session_id; ++ GVariant *result; ++ result = g_dbus_connection_call_sync (monitor->system_bus, ++ "org.freedesktop.ConsoleKit", ++ "/org/freedesktop/ConsoleKit/Manager", ++ "org.freedesktop.ConsoleKit.Manager", ++ "GetSessionForUnixProcess", ++ g_variant_new ("(u)", polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject))), ++ G_VARIANT_TYPE ("(o)"), ++ G_DBUS_CALL_FLAGS_NONE, ++ -1, /* timeout_msec */ ++ NULL, /* GCancellable */ ++ error); ++ if (result == NULL) ++ goto out; ++ g_variant_get (result, "(&o)", &session_id); ++ session = polkit_unix_session_new (session_id); ++ g_variant_unref (result); ++ } + } + else if (POLKIT_IS_SYSTEM_BUS_NAME (subject)) + { + guint32 pid; +- const gchar *session_id; ++ gchar *session_id; + GVariant *result; + + result = g_dbus_connection_call_sync (monitor->system_bus, +@@ -414,22 +575,35 @@ + g_variant_get (result, "(u)", &pid); + g_variant_unref (result); + +- result = g_dbus_connection_call_sync (monitor->system_bus, +- "org.freedesktop.ConsoleKit", +- "/org/freedesktop/ConsoleKit/Manager", +- "org.freedesktop.ConsoleKit.Manager", +- "GetSessionForUnixProcess", +- g_variant_new ("(u)", pid), +- G_VARIANT_TYPE ("(o)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, /* timeout_msec */ +- NULL, /* GCancellable */ +- error); +- if (result == NULL) +- goto out; +- g_variant_get (result, "(&o)", &session_id); +- session = polkit_unix_session_new (session_id); +- g_variant_unref (result); ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ { ++ if (sd_pid_get_session (pid, &session_id) < 0) ++ goto out; ++ ++ session = polkit_unix_session_new (session_id); ++ free (session_id); ++ } ++ else ++#endif ++ { ++ result = g_dbus_connection_call_sync (monitor->system_bus, ++ "org.freedesktop.ConsoleKit", ++ "/org/freedesktop/ConsoleKit/Manager", ++ "org.freedesktop.ConsoleKit.Manager", ++ "GetSessionForUnixProcess", ++ g_variant_new ("(u)", pid), ++ G_VARIANT_TYPE ("(o)"), ++ G_DBUS_CALL_FLAGS_NONE, ++ -1, /* timeout_msec */ ++ NULL, /* GCancellable */ ++ error); ++ if (result == NULL) ++ goto out; ++ g_variant_get (result, "(&o)", &session_id); ++ session = polkit_unix_session_new (session_id); ++ g_variant_unref (result); ++ } + } + else + { +@@ -490,7 +664,22 @@ + polkit_backend_session_monitor_is_session_local (PolkitBackendSessionMonitor *monitor, + PolkitSubject *session) + { +- return get_boolean (monitor, session, "is_local"); ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ { ++ char *seat; ++ ++ if (!sd_session_get_seat (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session)), &seat)) ++ { ++ free (seat); ++ return TRUE; ++ } ++ ++ return FALSE; ++ } ++ else ++#endif ++ return get_boolean (monitor, session, "is_local"); + } + + +@@ -498,6 +687,11 @@ + polkit_backend_session_monitor_is_session_active (PolkitBackendSessionMonitor *monitor, + PolkitSubject *session) + { +- return get_boolean (monitor, session, "is_active"); ++#ifdef HAVE_SYSTEMD ++ if (monitor->sd_source != NULL) ++ return sd_session_is_active (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session))); ++ else ++#endif ++ return get_boolean (monitor, session, "is_active"); + } + +diff -u -rN polkit-0.104/src/polkitbackend/polkitbackendsessionmonitor-systemd.c polkit-0.104-systemd-fallback/src/polkitbackend/polkitbackendsessionmonitor-systemd.c +--- polkit-0.104/src/polkitbackend/polkitbackendsessionmonitor-systemd.c 2012-01-03 16:03:47.000000000 +0100 ++++ polkit-0.104-systemd-fallback/src/polkitbackend/polkitbackendsessionmonitor-systemd.c 1970-01-01 01:00:00.000000000 +0100 +@@ -1,414 +0,0 @@ +-/* +- * Copyright (C) 2011 Red Hat, Inc. +- * +- * This 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 of the License, or (at your option) any later version. +- * +- * This 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 this library; if not, write to the +- * Free Software Foundation, Inc., 59 Temple Place, Suite 330, +- * Boston, MA 02111-1307, USA. +- * +- * Author: Matthias Clasen +- */ +- +-#include "config.h" +-#include <errno.h> +-#include <pwd.h> +-#include <grp.h> +-#include <string.h> +-#include <glib/gstdio.h> +-#include <systemd/sd-login.h> +-#include <stdlib.h> +- +-#include <polkit/polkit.h> +-#include "polkitbackendsessionmonitor.h" +- +-/* <internal> +- * SECTION:polkitbackendsessionmonitor +- * @title: PolkitBackendSessionMonitor +- * @short_description: Monitor sessions +- * +- * The #PolkitBackendSessionMonitor class is a utility class to track and monitor sessions. +- */ +- +-typedef struct +-{ +- GSource source; +- GPollFD pollfd; +- sd_login_monitor *monitor; +-} SdSource; +- +-static gboolean +-sd_source_prepare (GSource *source, +- gint *timeout) +-{ +- *timeout = -1; +- return FALSE; +-} +- +-static gboolean +-sd_source_check (GSource *source) +-{ +- SdSource *sd_source = (SdSource *)source; +- +- return sd_source->pollfd.revents != 0; +-} +- +-static gboolean +-sd_source_dispatch (GSource *source, +- GSourceFunc callback, +- gpointer user_data) +- +-{ +- SdSource *sd_source = (SdSource *)source; +- gboolean ret; +- +- g_warn_if_fail (callback != NULL); +- +- ret = (*callback) (user_data); +- +- sd_login_monitor_flush (sd_source->monitor); +- +- return ret; +-} +- +-static void +-sd_source_finalize (GSource *source) +-{ +- SdSource *sd_source = (SdSource*)source; +- +- sd_login_monitor_unref (sd_source->monitor); +-} +- +-static GSourceFuncs sd_source_funcs = { +- sd_source_prepare, +- sd_source_check, +- sd_source_dispatch, +- sd_source_finalize +-}; +- +-static GSource * +-sd_source_new (void) +-{ +- GSource *source; +- SdSource *sd_source; +- int ret; +- +- source = g_source_new (&sd_source_funcs, sizeof (SdSource)); +- sd_source = (SdSource *)source; +- +- if ((ret = sd_login_monitor_new (NULL, &sd_source->monitor)) < 0) +- { +- g_printerr ("Error getting login monitor: %d", ret); +- } +- else +- { +- sd_source->pollfd.fd = sd_login_monitor_get_fd (sd_source->monitor); +- sd_source->pollfd.events = G_IO_IN; +- g_source_add_poll (source, &sd_source->pollfd); +- } +- +- return source; +-} +- +-struct _PolkitBackendSessionMonitor +-{ +- GObject parent_instance; +- +- GDBusConnection *system_bus; +- +- GSource *sd_source; +-}; +- +-struct _PolkitBackendSessionMonitorClass +-{ +- GObjectClass parent_class; +- +- void (*changed) (PolkitBackendSessionMonitor *monitor); +-}; +- +- +-enum +-{ +- CHANGED_SIGNAL, +- LAST_SIGNAL, +-}; +- +-static guint signals[LAST_SIGNAL] = {0}; +- +-G_DEFINE_TYPE (PolkitBackendSessionMonitor, polkit_backend_session_monitor, G_TYPE_OBJECT); +- +-/* ---------------------------------------------------------------------------------------------------- */ +- +-static gboolean +-sessions_changed (gpointer user_data) +-{ +- PolkitBackendSessionMonitor *monitor = POLKIT_BACKEND_SESSION_MONITOR (user_data); +- +- g_signal_emit (monitor, signals[CHANGED_SIGNAL], 0); +- +- return TRUE; +-} +- +- +-static void +-polkit_backend_session_monitor_init (PolkitBackendSessionMonitor *monitor) +-{ +- GError *error; +- +- error = NULL; +- monitor->system_bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, &error); +- if (monitor->system_bus == NULL) +- { +- g_printerr ("Error getting system bus: %s", error->message); +- g_error_free (error); +- } +- +- monitor->sd_source = sd_source_new (); +- g_source_set_callback (monitor->sd_source, sessions_changed, monitor, NULL); +- g_source_attach (monitor->sd_source, NULL); +-} +- +-static void +-polkit_backend_session_monitor_finalize (GObject *object) +-{ +- PolkitBackendSessionMonitor *monitor = POLKIT_BACKEND_SESSION_MONITOR (object); +- +- if (monitor->system_bus != NULL) +- g_object_unref (monitor->system_bus); +- +- if (monitor->sd_source != NULL) +- { +- g_source_destroy (monitor->sd_source); +- g_source_unref (monitor->sd_source); +- } +- +- if (G_OBJECT_CLASS (polkit_backend_session_monitor_parent_class)->finalize != NULL) +- G_OBJECT_CLASS (polkit_backend_session_monitor_parent_class)->finalize (object); +-} +- +-static void +-polkit_backend_session_monitor_class_init (PolkitBackendSessionMonitorClass *klass) +-{ +- GObjectClass *gobject_class; +- +- gobject_class = G_OBJECT_CLASS (klass); +- +- gobject_class->finalize = polkit_backend_session_monitor_finalize; +- +- /** +- * PolkitBackendSessionMonitor::changed: +- * @monitor: A #PolkitBackendSessionMonitor +- * +- * Emitted when something changes. +- */ +- signals[CHANGED_SIGNAL] = g_signal_new ("changed", +- POLKIT_BACKEND_TYPE_SESSION_MONITOR, +- G_SIGNAL_RUN_LAST, +- G_STRUCT_OFFSET (PolkitBackendSessionMonitorClass, changed), +- NULL, /* accumulator */ +- NULL, /* accumulator data */ +- g_cclosure_marshal_VOID__VOID, +- G_TYPE_NONE, +- 0); +-} +- +-PolkitBackendSessionMonitor * +-polkit_backend_session_monitor_new (void) +-{ +- PolkitBackendSessionMonitor *monitor; +- +- monitor = POLKIT_BACKEND_SESSION_MONITOR (g_object_new (POLKIT_BACKEND_TYPE_SESSION_MONITOR, NULL)); +- +- return monitor; +-} +- +-/* ---------------------------------------------------------------------------------------------------- */ +- +-GList * +-polkit_backend_session_monitor_get_sessions (PolkitBackendSessionMonitor *monitor) +-{ +- /* TODO */ +- return NULL; +-} +- +-/* ---------------------------------------------------------------------------------------------------- */ +- +-/** +- * polkit_backend_session_monitor_get_user: +- * @monitor: A #PolkitBackendSessionMonitor. +- * @subject: A #PolkitSubject. +- * @error: Return location for error. +- * +- * Gets the user corresponding to @subject or %NULL if no user exists. +- * +- * Returns: %NULL if @error is set otherwise a #PolkitUnixUser that should be freed with g_object_unref(). +- */ +-PolkitIdentity * +-polkit_backend_session_monitor_get_user_for_subject (PolkitBackendSessionMonitor *monitor, +- PolkitSubject *subject, +- GError **error) +-{ +- PolkitIdentity *ret; +- guint32 uid; +- +- ret = NULL; +- +- if (POLKIT_IS_UNIX_PROCESS (subject)) +- { +- uid = polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject)); +- if ((gint) uid == -1) +- { +- g_set_error (error, +- POLKIT_ERROR, +- POLKIT_ERROR_FAILED, +- "Unix process subject does not have uid set"); +- goto out; +- } +- ret = polkit_unix_user_new (uid); +- } +- else if (POLKIT_IS_SYSTEM_BUS_NAME (subject)) +- { +- GVariant *result; +- +- result = g_dbus_connection_call_sync (monitor->system_bus, +- "org.freedesktop.DBus", +- "/org/freedesktop/DBus", +- "org.freedesktop.DBus", +- "GetConnectionUnixUser", +- g_variant_new ("(s)", polkit_system_bus_name_get_name (POLKIT_SYSTEM_BUS_NAME (subject))), +- G_VARIANT_TYPE ("(u)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, /* timeout_msec */ +- NULL, /* GCancellable */ +- error); +- if (result == NULL) +- goto out; +- g_variant_get (result, "(u)", &uid); +- g_variant_unref (result); +- +- ret = polkit_unix_user_new (uid); +- } +- else if (POLKIT_IS_UNIX_SESSION (subject)) +- { +- +- if (sd_session_get_uid (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (subject)), &uid) < 0) +- { +- g_set_error (error, +- POLKIT_ERROR, +- POLKIT_ERROR_FAILED, +- "Error getting uid for session"); +- goto out; +- } +- +- ret = polkit_unix_user_new (uid); +- } +- +- out: +- return ret; +-} +- +-/** +- * polkit_backend_session_monitor_get_session_for_subject: +- * @monitor: A #PolkitBackendSessionMonitor. +- * @subject: A #PolkitSubject. +- * @error: Return location for error. +- * +- * Gets the session corresponding to @subject or %NULL if no session exists. +- * +- * Returns: %NULL if @error is set otherwise a #PolkitUnixSession that should be freed with g_object_unref(). +- */ +-PolkitSubject * +-polkit_backend_session_monitor_get_session_for_subject (PolkitBackendSessionMonitor *monitor, +- PolkitSubject *subject, +- GError **error) +-{ +- PolkitSubject *session; +- +- session = NULL; +- +- if (POLKIT_IS_UNIX_PROCESS (subject)) +- { +- gchar *session_id; +- pid_t pid; +- +- pid = polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject)); +- if (sd_pid_get_session (pid, &session_id) < 0) +- goto out; +- +- session = polkit_unix_session_new (session_id); +- free (session_id); +- } +- else if (POLKIT_IS_SYSTEM_BUS_NAME (subject)) +- { +- guint32 pid; +- gchar *session_id; +- GVariant *result; +- +- result = g_dbus_connection_call_sync (monitor->system_bus, +- "org.freedesktop.DBus", +- "/org/freedesktop/DBus", +- "org.freedesktop.DBus", +- "GetConnectionUnixProcessID", +- g_variant_new ("(s)", polkit_system_bus_name_get_name (POLKIT_SYSTEM_BUS_NAME (subject))), +- G_VARIANT_TYPE ("(u)"), +- G_DBUS_CALL_FLAGS_NONE, +- -1, /* timeout_msec */ +- NULL, /* GCancellable */ +- error); +- if (result == NULL) +- goto out; +- g_variant_get (result, "(u)", &pid); +- g_variant_unref (result); +- +- if (sd_pid_get_session (pid, &session_id) < 0) +- goto out; +- +- session = polkit_unix_session_new (session_id); +- free (session_id); +- } +- else +- { +- g_set_error (error, +- POLKIT_ERROR, +- POLKIT_ERROR_NOT_SUPPORTED, +- "Cannot get user for subject of type %s", +- g_type_name (G_TYPE_FROM_INSTANCE (subject))); +- } +- +- out: +- +- return session; +-} +- +-gboolean +-polkit_backend_session_monitor_is_session_local (PolkitBackendSessionMonitor *monitor, +- PolkitSubject *session) +-{ +- char *seat; +- +- if (!sd_session_get_seat (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session)), &seat)) +- { +- free (seat); +- return TRUE; +- } +- +- return FALSE; +-} +- +- +-gboolean +-polkit_backend_session_monitor_is_session_active (PolkitBackendSessionMonitor *monitor, +- PolkitSubject *session) +-{ +- return sd_session_is_active (polkit_unix_session_get_session_id (POLKIT_UNIX_SESSION (session))); +-} +- diff --git a/abs/extra/poppler-data/PKGBUILD b/abs/extra/poppler-data/PKGBUILD index 6b22ea3..49db88e 100644 --- a/abs/extra/poppler-data/PKGBUILD +++ b/abs/extra/poppler-data/PKGBUILD @@ -2,7 +2,7 @@ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=poppler-data -pkgver=0.4.3 +pkgver=0.4.5 pkgrel=1 pkgdesc="Encoding data for the poppler PDF rendering library" arch=(any) @@ -10,7 +10,7 @@ license=('custom' 'GPL2') conflicts=('poppler<0.10.5') url="http://poppler.freedesktop.org/" source=(http://poppler.freedesktop.org/${pkgname}-${pkgver}.tar.gz) -md5sums=('2d648047e5d0b315df1571b460ee6a96') +md5sums=('448dd7c5077570e340340706cef931aa') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/abs/extra/poppler/PKGBUILD b/abs/extra/poppler/PKGBUILD deleted file mode 100644 index af474e4..0000000 --- a/abs/extra/poppler/PKGBUILD +++ /dev/null @@ -1,66 +0,0 @@ -# $Id: PKGBUILD 94944 2010-10-12 19:48:07Z ibiru $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgbase=poppler -pkgname=('poppler' 'poppler-glib' 'poppler-qt') -pkgver=0.14.4 -pkgrel=1 -arch=(i686 x86_64) -license=('GPL') -makedepends=('libjpeg>=8.0.2' 'gcc-libs>=4.5.0' 'cairo>=1.10.0' 'libxml2>=2.7.7' 'fontconfig>=2.8.0' 'openjpeg>=1.3-3' 'gtk2>=2.22.0' 'qt>=4.7.0' 'pkgconfig' 'lcms>=1.19') -options=('!libtool') -url="http://poppler.freedesktop.org/" -source=(http://poppler.freedesktop.org/${pkgname}-${pkgver}.tar.gz) -md5sums=('a40fe96e1115f648ce4689e667743530') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static \ - --enable-cairo-output \ - --enable-xpdf-headers \ - --enable-libjpeg --enable-zlib \ - --enable-poppler-qt4 \ - --enable-poppler-glib - make -} - -package_poppler() { - pkgdesc="PDF rendering library based on xpdf 3.0" - depends=('libjpeg>=8.0.2' 'gcc-libs>=4.5.0' 'cairo>=1.10.0' 'libxml2>=2.7.7' 'fontconfig>=2.8.0' 'openjpeg>=1.3-3' 'lcms>=1.19' 'poppler-data>=0.4.3') - conflicts=("poppler-qt3<${pkgver}") - - cd "${srcdir}/${pkgbase}-${pkgver}" - make DESTDIR="${pkgdir}" install - - rm -rf "${pkgdir}"/usr/include/poppler/{glib,qt4} - rm -f "${pkgdir}"/usr/lib/libpoppler-{glib,qt4}.so* - rm -f "${pkgdir}"/usr/lib/pkgconfig/poppler-{glib,qt4}.pc - rm -rf "${pkgdir}/usr/share/gtk-doc" -} - -package_poppler-glib() { - pkgdesc="Poppler glib bindings" - depends=("poppler=${pkgver}" 'gtk2>=2.22.0') - - cd "${srcdir}/${pkgbase}-${pkgver}/poppler" - make DESTDIR="${pkgdir}" install-libLTLIBRARIES - cd "${srcdir}/${pkgbase}-${pkgver}/glib" - make DESTDIR="${pkgdir}" install - install -m755 -d "${pkgdir}/usr/lib/pkgconfig" - install -m644 ../poppler-glib.pc "${pkgdir}/usr/lib/pkgconfig/" - rm -f "${pkgdir}"/usr/lib/libpoppler.* -} - -package_poppler-qt() { - pkgdesc="Poppler Qt bindings" - depends=("poppler=${pkgver}" 'qt>=4.7.0') - - cd "${srcdir}/${pkgbase}-${pkgver}/poppler" - make DESTDIR="${pkgdir}" install-libLTLIBRARIES - cd "${srcdir}/${pkgbase}-${pkgver}/qt4" - make DESTDIR="${pkgdir}" install - install -m755 -d "${pkgdir}/usr/lib/pkgconfig" - install -m644 ../poppler-qt4.pc "${pkgdir}/usr/lib/pkgconfig/" - rm -f "${pkgdir}"/usr/lib/libpoppler.* -} diff --git a/abs/extra/postgresql/PKGBUILD b/abs/extra/postgresql/PKGBUILD index 2bbda86..a00160c 100644 --- a/abs/extra/postgresql/PKGBUILD +++ b/abs/extra/postgresql/PKGBUILD @@ -1,60 +1,56 @@ -# $Id: PKGBUILD 98184 2010-11-04 14:55:39Z dan $ -# Maintainer: Douglas Soares de Andrade <douglas@archlinux.org> +# $Id: PKGBUILD 160730 2012-06-04 17:58:05Z dan $ +# Maintainer: Dan McGee <dan@archlinux.org> pkgbase=postgresql pkgname=('postgresql-libs' 'postgresql-docs' 'postgresql') -pkgver=9.0.1 -pkgrel=3 +pkgver=9.1.4 +_majorver=${pkgver%.*} +pkgrel=1 arch=('i686' 'x86_64') -url="http://www.postgresql.org" -license=('BSD') -makedepends=('libxml2' 'python2' 'perl') -source=(ftp://ftp.postgresql.org/pub/source/v${pkgver}/postgresql-${pkgver}.tar.bz2 \ - postgresql postgresql.confd build.patch postgresql.pam postgresql.logrotate) +url="http://www.postgresql.org/" +license=('custom:PostgreSQL') +makedepends=('krb5' 'libxml2' 'python2' 'perl' 'tcl' 'openssl>=1.0.0') +source=(ftp://ftp.postgresql.org/pub/source/v${pkgver}/postgresql-${pkgver}.tar.bz2 + postgresql.rcd postgresql.confd postgresql.pam postgresql.logrotate) build() { - cd "${srcdir}/${pkgbase}-${pkgver}" + cd "${srcdir}/postgresql-${pkgver}" + + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --datadir=/usr/share/postgresql \ + --with-krb5 \ + --with-libxml \ + --with-openssl \ + --with-perl \ + --with-python PYTHON=/usr/bin/python2 \ + --with-tcl \ + --with-pam \ + --with-system-tzdata=/usr/share/zoneinfo \ + --enable-nls \ + --enable-thread-safety - # patch to remove regress/test make target (won't build with it present) - patch -Np1 -i ../build.patch - - # configure - ./configure --prefix=/usr --mandir=/usr/share/man --with-libxml \ - --with-openssl --with-perl \ - --with-python PYTHON=/usr/bin/python2 --with-pam \ - --with-system-tzdata=/usr/share/zoneinfo --enable-nls \ - --datadir=/usr/share/postgresql --enable-thread-safety - - sed -i -e '/interfaces/d' src/Makefile - - # build make world - - # build libs - for dir in src/interfaces src/bin/pg_config; do - pushd ${dir} - make - popd - done } package_postgresql-libs() { pkgdesc="Libraries for use with PostgreSQL" - depends=('openssl>=1.0.0') + depends=('krb5' 'openssl>=1.0.0' 'readline>=6.0') + provides=('postgresql-client') + conflicts=('postgresql-client') - cd "${srcdir}/${pkgbase}-${pkgver}" + cd "${srcdir}/postgresql-${pkgver}" # install license - install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/postgresql-libs/LICENSE" # install libs - for dir in src/interfaces src/bin/pg_config; do - pushd ${dir} - make DESTDIR="${pkgdir}" install - popd + for dir in src/interfaces src/bin/pg_config src/bin/psql; do + make -C ${dir} DESTDIR="${pkgdir}" install done install -D -m644 doc/src/sgml/man1/pg_config.1 "${pkgdir}/usr/share/man/man1/pg_config.1" + install -D -m644 doc/src/sgml/man1/psql.1 "${pkgdir}/usr/share/man/man1/psql.1" cd src/include @@ -78,33 +74,42 @@ package_postgresql-docs() { pkgdesc="HTML documentation for PostgreSQL" options=(docs) - cd "${srcdir}/${pkgbase}-${pkgver}" + cd "${srcdir}/postgresql-${pkgver}" # install license - install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/postgresql-docs/LICENSE" make -C doc/src/sgml DESTDIR="${pkgdir}" install-html chown -R root:root "${pkgdir}/usr/share/doc/postgresql/html/" + + # clean up + rmdir "${pkgdir}"/usr/share/man/man{1,3,7} + rmdir "${pkgdir}"/usr/share/man } package_postgresql() { pkgdesc="A sophisticated object-relational DBMS" backup=('etc/conf.d/postgresql' 'etc/pam.d/postgresql' 'etc/logrotate.d/postgresql') - depends=("postgresql-libs>=${pkgver}" 'libxml2' 'readline>=6.0') + depends=("postgresql-libs>=${pkgver}" 'krb5' 'libxml2' 'readline>=6.0' 'openssl>=1.0.0') optdepends=('python2: for PL/Python support' - 'perl: for PL/Perl support') - provides=('postgresql-client') - conflicts=('postgresql-client') + 'perl: for PL/Perl support' + 'tcl: for PL/Tcl support' + 'postgresql-old-upgrade: upgrade from previous major version using pg_upgrade') + install=postgresql.install - cd "${srcdir}/${pkgbase}-${pkgver}" + cd "${srcdir}/postgresql-${pkgver}" # install make DESTDIR="${pkgdir}" install make -C contrib DESTDIR="${pkgdir}" install make -C doc/src/sgml DESTDIR="${pkgdir}" install-man - # we don't want this, it is in the -libs package - make -C src/bin/pg_config DESTDIR="${pkgdir}" uninstall + + # we don't want these, they are in the -libs package + for dir in src/interfaces src/bin/pg_config src/bin/psql; do + make -C ${dir} DESTDIR="${pkgdir}" uninstall + done rm "${pkgdir}/usr/share/man/man1/pg_config.1" + rm "${pkgdir}/usr/share/man/man1/psql.1" # install license install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgbase}/LICENSE" @@ -113,9 +118,10 @@ package_postgresql() { rm -rf "${pkgdir}/usr/include/postgresql/internal" rm -rf "${pkgdir}/usr/include/libpq" find "${pkgdir}/usr/include" -maxdepth 1 -type f -execdir rm {} + + rmdir "${pkgdir}/usr/share/doc/postgresql/html" # install launch script - install -D -m755 "${srcdir}/postgresql" "${pkgdir}/etc/rc.d/postgresql" + install -D -m755 "${srcdir}/postgresql.rcd" "${pkgdir}/etc/rc.d/postgresql" # install conf file install -D -m644 ${srcdir}/postgresql.confd \ @@ -128,9 +134,13 @@ package_postgresql() { "${pkgdir}/etc/logrotate.d/postgresql" } -md5sums=('57ba57e43cfe29e16dacbf5789be98d1' - '4153ac0ef4a77e709385b0a13e1c0fad' - 'd63a05943cf0a2726aa2070f3033c569' - '4d74f4227dc5e12bf95b3490758d86c9' +md5sums=('a8035688dba988b782725ac1aec60186' + '1ddd1df8010549f237e7983bb326025e' + 'a54d09a20ab1672adf08f037df188d53' '96f82c38f3f540b53f3e5144900acf17' 'd28e443f9f65a5712c52018b84e27137') +sha256sums=('a0795a8eb3ae2d1a2914b63bf143d20182835d90699915ff43567c041d3c9712' + '9f6307b1358892e304f9474a456f0cb9160cfb8812a9da0430abe647f8a9cf45' + '3de5c059eead8816db15c2c5588e6196d6c4b0d704faf1a20912796cf589ba81' + '57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5' + '6abb842764bbed74ea4a269d24f1e73d1c0b1d8ecd6e2e6fb5fb10590298605e') diff --git a/abs/extra/postgresql/build.patch b/abs/extra/postgresql/build.patch deleted file mode 100644 index c8f665d..0000000 --- a/abs/extra/postgresql/build.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -Naur postgresql-8.2.3-orig/src/Makefile postgresql-8.2.3/src/Makefile ---- postgresql-8.2.3-orig/src/Makefile 2006-06-22 16:50:35.000000000 -0700 -+++ postgresql-8.2.3/src/Makefile 2007-03-05 10:46:24.000000000 -0800 -@@ -23,7 +23,6 @@ - $(MAKE) -C bin $@ - $(MAKE) -C pl $@ - $(MAKE) -C makefiles $@ -- $(MAKE) -C test/regress $@ - - install: install-local - diff --git a/abs/extra/postgresql/postgresql b/abs/extra/postgresql/postgresql deleted file mode 100755 index b00289e..0000000 --- a/abs/extra/postgresql/postgresql +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/postgresql - -case "$1" in - start) - stat_busy "Starting PostgreSQL" - # initialization - if [ ! `egrep '^postgres:' /etc/group` ]; then - stat_busy "Adding postgres group" - groupadd -g 88 postgres - stat_done - fi - if [ ! `egrep '^postgres:' /etc/passwd` ]; then - stat_busy "Adding postgres user" - useradd -u 88 -g postgres -d $PGROOT -s /bin/bash postgres - [ -d $PGROOT ] && chown -R postgres.postgres $PGROOT - stat_done - fi - if [ ! -d $PGROOT ]; then - mkdir -p $PGROOT/data && chown -R postgres.postgres $PGROOT - su - postgres -c "/usr/bin/initdb $INITOPTS -D $PGROOT/data" - fi - if [ ! -e /var/log/postgresql.log ]; then - touch /var/log/postgresql.log - chown postgres /var/log/postgresql.log - fi - # start the process - su - postgres -c \ - "/usr/bin/pg_ctl -D $PGROOT/data -l /var/log/postgresql.log -W start" - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon postgresql - stat_done - fi - ;; - stop) - stat_busy "Stopping PostgreSQL" - su - postgres -c \ - "/usr/bin/pg_ctl -D $PGROOT/data -l /var/log/postgresql.log -w stop" - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon postgresql - stat_done - fi - ;; - restart) - $0 stop - sleep 3 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/abs/extra/postgresql/postgresql.confd b/abs/extra/postgresql/postgresql.confd index 5f8fa03..6001c16 100644 --- a/abs/extra/postgresql/postgresql.confd +++ b/abs/extra/postgresql/postgresql.confd @@ -1,5 +1,11 @@ -# -# Parameters to be passed to postgresql -# -PGROOT="/var/lib/postgres" -INITOPTS="--locale $LANG" +## +## Parameters to be passed to postgresql +## +## Default data directory location +#PGROOT="/var/lib/postgres" +## Passed to initdb if necessary +INITOPTS="--locale en_US.UTF-8" +## Default log file location +#PGLOG="/var/log/postgresql.log" +## Additional options to pass via pg_ctl's '-o' option +#PGOPTS="" diff --git a/abs/extra/postgresql/postgresql.install b/abs/extra/postgresql/postgresql.install new file mode 100644 index 0000000..c524322 --- /dev/null +++ b/abs/extra/postgresql/postgresql.install @@ -0,0 +1,26 @@ +post_install() { + if [ ! -d '/var/lib/postgres' ]; then + mkdir -p '/var/lib/postgres' + fi + getent group postgres >/dev/null || groupadd -g 88 postgres + getent passwd postgres >/dev/null || useradd -c 'PostgreSQL user' -u 88 -g postgres -d '/var/lib/postgres' -s /bin/bash postgres + passwd -l postgres >/dev/null +} + +post_upgrade() { + post_install $1 + # FS#23858, fix postgres user shell issue + postgres_shell=$(getent passwd postgres | cut -d: -f7) + if [ "$postgres_shell" = "/sbin/nologin" ]; then + chsh -s /bin/bash postgres + fi +} + +post_remove() { + if getent passwd postgres >/dev/null; then + userdel postgres + fi + if getent group postgres >/dev/null; then + groupdel postgres + fi +} diff --git a/abs/extra/postgresql/postgresql.logrotate b/abs/extra/postgresql/postgresql.logrotate deleted file mode 100644 index 9c36918..0000000 --- a/abs/extra/postgresql/postgresql.logrotate +++ /dev/null @@ -1,4 +0,0 @@ -/var/log/postgresql.log { - copytruncate - missingok -} diff --git a/abs/extra/postgresql/postgresql.rcd b/abs/extra/postgresql/postgresql.rcd new file mode 100755 index 0000000..f3600b3 --- /dev/null +++ b/abs/extra/postgresql/postgresql.rcd @@ -0,0 +1,79 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/postgresql + +# Default PGROOT if it wasn't defined in the conf.d file +PGROOT=${PGROOT:-/var/lib/postgres} +PGLOG=${PGLOG:-/var/log/postgresql.log} +PGCTL_BIN=/usr/bin/pg_ctl +PGCTL_ARGS=(-D "$PGROOT/data" -l "$PGLOG" -s -w) +[[ $PGOPTS ]] && PGCTL_ARGS+=(-o "$PGOPTS") + +postgres_init() { + # initialization + if [[ ! -d "$PGROOT/data" ]]; then + mkdir -p "$PGROOT/data" && chown -R postgres:postgres "$PGROOT" + su - postgres -c "/usr/bin/initdb $INITOPTS -D '$PGROOT/data'" + fi + if [[ ! -e "$PGLOG" ]]; then + touch "$PGLOG" + chown postgres "$PGLOG" + fi +} + +do_postgres() { + su - postgres -c "'$PGCTL_BIN' $(printf '%q ' "${PGCTL_ARGS[@]}" "$@")" +} + +case $1 in + start) + postgres_init + stat_busy "Starting PostgreSQL" + if do_postgres start; then + add_daemon postgresql + stat_done + else + stat_fail + exit 1 + fi + ;; + stop) + stat_busy "Stopping PostgreSQL" + if do_postgres stop -m fast; then + rm_daemon postgresql + stat_done + else + stat_fail + exit 1 + fi + ;; + reload) + stat_busy "Reloading PostgreSQL" + if do_postgres reload; then + stat_done + else + stat_fail + exit 1 + fi + ;; + restart) + postgres_init + stat_busy "Restarting PostgreSQL" + if do_postgres restart -m fast; then + add_daemon postgresql + stat_done + else + stat_fail + exit 1 + fi + ;; + status) + stat_busy "Checking PostgreSQL status"; + ck_status postgresql + ;; + *) + echo "usage: $0 {start|stop|reload|restart|status}" + exit 1 +esac diff --git a/abs/extra/powertop/ChangeLog b/abs/extra/powertop/ChangeLog deleted file mode 100644 index 811f87d..0000000 --- a/abs/extra/powertop/ChangeLog +++ /dev/null @@ -1,3 +0,0 @@ -2007-06-28 tardo <tardo@nagi-fanboi.net> -* Built for x86_64 - diff --git a/abs/extra/powertop/PKGBUILD b/abs/extra/powertop/PKGBUILD index 83f906f..efec607 100644 --- a/abs/extra/powertop/PKGBUILD +++ b/abs/extra/powertop/PKGBUILD @@ -1,25 +1,31 @@ -# $Id: PKGBUILD 24103 2010-08-19 22:45:29Z heftig $ +# $Id: PKGBUILD 78981 2012-10-28 15:59:46Z jlichtblau $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Alexander Fehr <pizzapunk gmail com> # Contributor: Xilon <xilonmu@gmail.com> pkgname=powertop -pkgver=1.13 -pkgrel=2 -pkgdesc="Tool that finds the software that makes your laptop use more power than necessary" +pkgver=2.1.1 +pkgrel=1 +pkgdesc='A tool to diagnose issues with power consumption and power management' arch=('i686' 'x86_64') -url="http://www.lesswatts.org/projects/powertop/" +url='https://01.org/powertop/' license=('GPL2') -depends=('ncurses') -source=(http://www.lesswatts.org/projects/powertop/download/$pkgname-$pkgver.tar.gz) -md5sums=('78aa17c8f55178004223bf236654298e') +depends=('gcc-libs' 'libnl' 'ncurses' 'pciutils') +changelog=$pkgname.changelog +source=($pkgname-$pkgver.tar.gz::https://github.com/fenrus75/powertop/tarball/v2.1.1) +#https://01.org/powertop/sites/default/files/downloads/$pkgname-$pkgver.tar.gz) +sha256sums=('e925230cc9006dbc226aec4dea389b97a0f906a7997b33aca40a1d6bc7568dc4') build() { - cd "$srcdir/powertop-$pkgver" + cd ${srcdir}/*-$pkgname-* + + ./autogen.sh + ./configure --prefix=/usr make } package() { - cd "$srcdir/powertop-$pkgver" - make DESTDIR="$pkgdir" install + cd ${srcdir}/*-$pkgname-* + + make DESTDIR=${pkgdir} install } diff --git a/abs/extra/powertop/powertop.changelog b/abs/extra/powertop/powertop.changelog new file mode 100644 index 0000000..9a53fc3 --- /dev/null +++ b/abs/extra/powertop/powertop.changelog @@ -0,0 +1,8 @@ +2012-10-28 Jaroslav Lichtblau (Dragonlord) <dragonlord@aur.archlinux.org> + * powertop 2.1.1-1 + +2012-08-22 Sébastien Luttringer (seblu) <seblu@aur.archlinux.org> + * powertop 2.1-1 + +2012-05-12 Jaroslav Lichtblau (Dragonlord) <dragonlord@aur.archlinux.org> + * powertop 2.0-1 diff --git a/abs/extra/pptpclient/PKGBUILD b/abs/extra/pptpclient/PKGBUILD deleted file mode 100644 index f94a7d2..0000000 --- a/abs/extra/pptpclient/PKGBUILD +++ /dev/null @@ -1,21 +0,0 @@ -# Maintainer: Daniel Isenmann <daniel @ archlinux.org> -# Contributor: Mark Nikkel <mnikkel@gmail.com> -pkgname=pptpclient -pkgver=1.7.2 -pkgrel=2 -pkgdesc="Client for the proprietary Microsoft Point-to-Point Tunneling Protocol, PPTP." -url="http://pptpclient.sourceforge.net/" -license=('GPL') -depends=(glibc ppp iproute2) -backup=(etc/ppp/{options.pptp}) -source=(http://downloads.sourceforge.net/sourceforge/pptpclient/pptp-$pkgver.tar.gz) -md5sums=('4c3d19286a37459a632c7128c92a9857') -arch=('i686' 'x86_64') - -build() { - cd $srcdir/pptp-$pkgver - sed -i '/CFLAGS/d' Makefile - sed -i 's|\/bin\/ip|\/usr\/sbin\/ip|g' routing.c - make || return 1 - make DESTDIR=$pkgdir install -} diff --git a/abs/extra/premake/PKGBUILD b/abs/extra/premake/PKGBUILD new file mode 100644 index 0000000..f4343e1 --- /dev/null +++ b/abs/extra/premake/PKGBUILD @@ -0,0 +1,25 @@ +# Contributor: Anders Bergh <anders1@gmail.com> +# Contributor: Mildred <silkensedai@online.fr> +# Maintainer: Daniel J Griffiths <griffithsdj@archlinux.us> + +pkgname=premake +pkgver=3.7 +pkgrel=1 +pkgdesc="A build configuration tool. Describe your build using Lua and generate \ +the project files for your specific toolset." +arch=('i686' 'x86_64') +url="http://premake.sourceforge.net" +license=('GPL') +makedepends=() +source=("http://downloads.sourceforge.net/sourceforge/premake/premake-src-${pkgver}.zip") +md5sums=('8d30dc5bbc52aad81abb1509c1dd7d8f') + +build() { + cd ${srcdir}/Premake-${pkgver} + make || return 1 +} + +package() { + cd ${srcdir}/Premake-${pkgver} + install -Dm755 bin/premake ${pkgdir}/usr/bin/premake +} diff --git a/abs/extra/procmail/PKGBUILD b/abs/extra/procmail/PKGBUILD deleted file mode 100644 index 356a147..0000000 --- a/abs/extra/procmail/PKGBUILD +++ /dev/null @@ -1,21 +0,0 @@ -# $Id: PKGBUILD 35774 2009-04-17 03:11:54Z eric $ -# Maintainer: dorphell <dorphell@archlinux.org> -# Committer: Judd Vinet <jvinet@zeroflux.org> -pkgname=procmail -pkgver=3.22 -pkgrel=2 -pkgdesc="Highly configurable auto mail processing." -arch=(i686 x86_64) -url="http://www.procmail.org" -license=('GPL' 'custom:Artistic') -depends=('glibc') -source=(http://www.procmail.org/${pkgname}-${pkgver}.tar.gz) -source=(ftp://ftp.psg.com/pub/unix/procmail/procmail-3.22.tar.gz) -md5sums=('1678ea99b973eb77eda4ecf6acae53f1') - -build() { - cd $srcdir/$pkgname-$pkgver - yes n | make LOCKINGTEST="/tmp ." || return 1 - make BASENAME=$pkgdir/usr MANDIR=$pkgdir/usr/share/man install || return 1 - install -D -m644 Artistic ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/abs/extra/projectx/IDCTFast.patch b/abs/extra/projectx/IDCTFast.patch new file mode 100644 index 0000000..70487bf --- /dev/null +++ b/abs/extra/projectx/IDCTFast.patch @@ -0,0 +1,86 @@ +diff -ru Project-X_0.91.0//noguisources.lst Project-X_0.91.0.new/noguisources.lst +--- Project-X_0.91.0//noguisources.lst 2011-03-27 15:48:48.000000000 +0200 ++++ Project-X_0.91.0.new/noguisources.lst 2011-04-09 16:54:28.886676016 +0200 +@@ -67,6 +67,7 @@ + src/net/sourceforge/dvb/projectx/video/IDCTRefNative.java
+ src/net/sourceforge/dvb/projectx/video/IDCTSseNative.java
+ src/net/sourceforge/dvb/projectx/video/MpvDecoder.java
++src/net/sourceforge/dvb/projectx/video/IDCTFast.java + src/net/sourceforge/dvb/projectx/video/Preview.java
+ src/net/sourceforge/dvb/projectx/video/PreviewObject.java
+ src/net/sourceforge/dvb/projectx/video/Video.java
+Binary files Project-X_0.91.0//ProjectX.jar and Project-X_0.91.0.new/ProjectX.jar differ +diff -ru Project-X_0.91.0//sources.lst Project-X_0.91.0.new/sources.lst +--- Project-X_0.91.0//sources.lst 2011-03-27 15:02:42.000000000 +0200 ++++ Project-X_0.91.0.new/sources.lst 2011-04-09 16:54:12.916676017 +0200 +@@ -67,6 +67,7 @@ + src/net/sourceforge/dvb/projectx/video/IDCTRefNative.java
+ src/net/sourceforge/dvb/projectx/video/IDCTSseNative.java
+ src/net/sourceforge/dvb/projectx/video/MpvDecoder.java
++src/net/sourceforge/dvb/projectx/video/IDCTFast.java + src/net/sourceforge/dvb/projectx/video/Preview.java
+ src/net/sourceforge/dvb/projectx/video/PreviewObject.java
+ src/net/sourceforge/dvb/projectx/video/Video.java
+diff -ru Project-X_0.91.0//src/net/sourceforge/dvb/projectx/video/MpvDecoder.java Project-X_0.91.0.new/src/net/sourceforge/dvb/projectx/video/MpvDecoder.java +--- Project-X_0.91.0//src/net/sourceforge/dvb/projectx/video/MpvDecoder.java 2011-03-27 15:01:38.000000000 +0200 ++++ Project-X_0.91.0.new/src/net/sourceforge/dvb/projectx/video/MpvDecoder.java 2011-04-09 16:51:16.936676017 +0200 +@@ -74,6 +74,7 @@ +
+ private IDCTRefNative idct;
+ private IDCTSseNative idctsse;
++ private IDCTFast idctfast; +
+ private int preview_horizontal_size = 512;
+ private int preview_vertical_size = 288;
+@@ -133,14 +134,20 @@ + public MpvDecoder()
+ {
+ Arrays.fill(pixels2, 0xFF505050);
++ idctfast = new IDCTFast(); +
+ idct = new IDCTRefNative();
+ idctsse = new IDCTSseNative();
++ if (IDCTFast.isLibraryLoaded()) ++ idctfast.init(); ++ +
+ if (IDCTRefNative.isLibraryLoaded())
+ idct.init();
+
+- if (IDCTRefNative.isLibraryLoaded() || IDCTSseNative.isLibraryLoaded())
++ if (IDCTFast.isLibraryLoaded() ++ || IDCTRefNative.isLibraryLoaded() ++ || IDCTSseNative.isLibraryLoaded()) + acceleration = true;
+ }
+
+@@ -2394,7 +2401,21 @@ + //form_predictions(bx, by, macroblock_type, motion_type, PMV, motion_vertical_field_select, dmvector);
+
+
+- if (IDCTSseNative.isLibraryLoaded() && isAccelerated())
++ if (IDCTFast.isLibraryLoaded() && isAccelerated()) ++ { ++ /* copy or add block data into picture */ ++ for (comp=0; comp<block_count; comp++) ++ { ++ /* ISO/IEC 13818-2 section Annex A: inverse DCT */ ++ idctfast.referenceIDCT(block[comp]); ++ ++ /* ISO/IEC 13818-2 section 7.6.8: Adding prediction and coefficient data */ ++ Add_Block(comp, bx, by, dct_type, (macroblock_type[0] & MACROBLOCK_INTRA)==0); ++ } ++ } ++ ++ ++ else if (IDCTSseNative.isLibraryLoaded() && isAccelerated())
+ {
+ /* copy or add block data into picture */
+ for (comp=0; comp<block_count; comp++)
+@@ -3913,4 +3934,4 @@ + ///
+
+
+-} +\ No newline at end of file ++} diff --git a/abs/extra/projectx/PKGBUILD b/abs/extra/projectx/PKGBUILD new file mode 100644 index 0000000..758df7c --- /dev/null +++ b/abs/extra/projectx/PKGBUILD @@ -0,0 +1,57 @@ +# Contributer: Sebastian Sareyko <public@nooms.de> +# +# It is possible to choose the idct implementation +# Available are: +# +# none use ProjectX Java implementation +# idct the C implementation of the source from ProjectX +# idct-ffmpeg taken from the ffmpeg Project +# idct-mjpeg taken from MJPEGTOOLS 1.8.0 +# idct-mjpeg-mmx taken from MJPEGTOOLS 1.8.0 +# +_idct=idct-mjpeg-mmx + +pkgname=projectx +pkgver=0.91.0 +pkgrel=5 +license=('GPL') +arch=('i686' 'x86_64') +pkgdesc="DVB demux tool for repairing and analyzing different stream types" +makedepends=('java-environment') +depends=('java-runtime') +url="http://sourceforge.net/projects/project-x" +source=(http://downloads.sourceforge.net/sourceforge/project-x/ProjectX_$pkgver.zip \ + IDCTFast.patch + projectx) + +md5sums=('5cf7bb227abe2c16d34e8e9c84915291' + '364022b37a55643fd8ec8d042827c3c9' + '0bb5dfb7683babb91f7fc996f5de7f2d') +build() { + cd ${srcdir} + cd Project-X_0.91.0/ + if [ ${_idct} != "none" ]; then + patch -p1 < ${srcdir}/IDCTFast.patch + unzip lib/Linux/ProjectX_Source_0.90.4-portable.zip + cp ProjectX_Source_0.90.4/src/net/sourceforge/dvb/projectx/video/IDCTFast.java src/net/sourceforge/dvb/projectx/video/ + fi + sh ./build.sh + if [ ${_idct} != "none" ]; then + cd ProjectX_Source_0.90.4/lib/PORTABLE/ + make clean + make PROJECTX_HOME=${srcdir}/Project-X_0.91.0 IDCT=${_idct} CPLAT="$CFLAGS -fPIC" + cd ${srcdir}/Project-X_0.91.0 + fi + install -D -m0755 $startdir/projectx $startdir/pkg/usr/bin/projectx + install -D -m0644 ProjectX.jar $startdir/pkg/opt/projectx/ProjectX.jar + if [ ${_idct} != "none" ]; then + install -D -m0644 ProjectX_Source_0.90.4/lib/PORTABLE/libidctfast.so \ + $startdir/pkg/opt/projectx/lib/libidctfast.so + fi + install -D -m0644 lib/commons-net-1.3.0.jar \ + $startdir/pkg/opt/projectx/lib/commons-net-1.3.0.jar + install -D -m0644 lib/jakarta-oro-2.0.8.jar \ + $startdir/pkg/opt/projectx/lib/jakarta-oro-2.0.8.jar + sed -i -e 's#Exec=java -jar /usr/share/projectx/ProjectX.jar#Exec=/usr/bin/projectx#' projectx.desktop + install -D -m0644 projectx.desktop $startdir/pkg/usr/share/applications/projectx.desktop +} diff --git a/abs/extra/projectx/projectx b/abs/extra/projectx/projectx new file mode 100644 index 0000000..1418831 --- /dev/null +++ b/abs/extra/projectx/projectx @@ -0,0 +1,10 @@ +#!/bin/sh + +if [ ! -d ~/.projectx ] ; then + mkdir ~/.projectx +fi + +if [ "$#" -eq 0 ] ; then + cd ~/.projectx +fi +java -Djava.library.path=/opt/projectx/lib -jar /opt/projectx/ProjectX.jar "$@" diff --git a/abs/extra/psutils/PKGBUILD b/abs/extra/psutils/PKGBUILD index b8dab78..e5c9af4 100644 --- a/abs/extra/psutils/PKGBUILD +++ b/abs/extra/psutils/PKGBUILD @@ -1,33 +1,38 @@ -# $Id: PKGBUILD 49744 2009-08-15 14:42:41Z jgc $ +# $Id: PKGBUILD 137768 2011-09-10 17:03:05Z pierre $ # Maintainer: eric <eric@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=psutils pkgver=1.17 -pkgrel=2 -pkgdesc="A set of postscript utilities" +pkgrel=3 arch=('i686' 'x86_64') +pkgdesc="A set of postscript utilities" +url="http://www.tardis.ed.ac.uk/~ajcd/psutils/index.html" license=('custom') depends=('glibc' 'ghostscript') provides=('psutils-lprng') replaces=('psutils-lprng') -url="http://www.tardis.ed.ac.uk/~ajcd/psutils/index.html" -source=(ftp://ftp.enst.fr/pub/unix/a2ps/${pkgname}-${pkgver}.tar.gz - psutils-1.17.diff) +options=('!makeflags') +source=("ftp://ftp.archlinux.org/other/psutils/${pkgname}-${pkgver}.tar.gz" + 'psutils-1.17.diff') md5sums=('b161522f3bd1507655326afa7db4a0ad' '2b49e9e796000b42f42804d4b50a2be1') build() { cd "${srcdir}/${pkgname}" - patch -Np1 -i "${srcdir}/psutils-1.17.diff" || return 1 + patch -Np1 -i "${srcdir}/psutils-1.17.diff" + make -f Makefile.unix BINDIR="${pkgdir}/usr/bin" \ + INCLUDEDIR="${pkgdir}/usr/include/psutils" PERL=/usr/bin/perl \ + MANDIR="${pkgdir}/usr/share/man/man1" +} + +package() { + cd "${srcdir}/${pkgname}" install -d -m755 "${pkgdir}/usr/include" install -d -m755 "${pkgdir}/usr/share/man" - make -j1 -f Makefile.unix BINDIR="${pkgdir}/usr/bin" \ - INCLUDEDIR="${pkgdir}/usr/include/psutils" PERL=/usr/bin/perl \ - MANDIR="${pkgdir}/usr/share/man/man1" || return 1 - make -j1 -f Makefile.unix BINDIR="${pkgdir}/usr/bin" \ + make -f Makefile.unix BINDIR="${pkgdir}/usr/bin" \ INCLUDEDIR="${pkgdir}/usr/include/psutils" PERL=/usr/bin/perl \ - MANDIR="${pkgdir}/usr/share/man/man1" install || return 1 + MANDIR="${pkgdir}/usr/share/man/man1" install install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1 + install -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/" } diff --git a/abs/extra/pth/PKGBUILD b/abs/extra/pth/PKGBUILD deleted file mode 100644 index 2e0f66b..0000000 --- a/abs/extra/pth/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id: PKGBUILD 35785 2009-04-17 05:07:12Z eric $ -# Maintainer: damir <damir@archlinux.org> - -pkgname=pth -pkgver=2.0.7 -pkgrel=2 -pkgdesc="The GNU Portable Threads." -arch=('i686' 'x86_64') -url="http://www.gnu.org/software/pth/" -license=('LGPL') -depends=('glibc') -options=('!libtool' '!makeflags') -source=(ftp://ftp.gnu.org/gnu/pth/${pkgname}-${pkgver}.tar.gz) -md5sums=('9cb4a25331a4c4db866a31cbe507c793') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --mandir=/usr/share/man || return 1 - make || return 1 - make DESTDIR=${pkgdir} install || return 1 -} diff --git a/abs/extra/python-libconcord/PKGBUILD b/abs/extra/python-libconcord/PKGBUILD deleted file mode 100644 index fb638f8..0000000 --- a/abs/extra/python-libconcord/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id$ -# Maintainers: -# Andreas Baumann <abaumann@yahoo.com> -# Guillaume DUMOULIN <guillaume.dumoulin@gmail.com> -# Contributor: elsixdiab -pkgname=python-libconcord -_pkgsrcname=concordance -pkgver=0.23 -pkgrel=3 -pkgdesc="This software will allow you to program your Logitech Harmony universal remote control" -url="http://www.phildev.net/harmony/index.shtml" -license="GPL" -arch=('any') -depends=('libconcord=0.23' 'python2') -source=("http://downloads.sourceforge.net/${_pkgsrcname}/${_pkgsrcname}-${pkgver}.tar.bz2") -md5sums=('d7400d5b351b195b63adfafae68be3d8') -build() { - cd $srcdir/${_pkgsrcname}-${pkgver}/libconcord/bindings/python/ - python2 setup.py install --prefix=/usr --root="$pkgdir" || return 1 -} - - diff --git a/abs/extra/qscintilla/PKGBUILD b/abs/extra/qscintilla/PKGBUILD deleted file mode 100644 index b0f83be..0000000 --- a/abs/extra/qscintilla/PKGBUILD +++ /dev/null @@ -1,59 +0,0 @@ -# $Id$ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org> - -pkgbase=qscintilla -pkgname=('qscintilla' 'python2-qscintilla') -pkgver=2.5.1 -pkgrel=3 -license=('GPL') -arch=('i686' 'x86_64') -url="http://www.riverbankcomputing.co.uk/software/qscintilla/intro" -makedepends=('python2-pyqt') -source=("http://riverbankcomputing.com/static/Downloads/QScintilla2/QScintilla-gpl-${pkgver}.tar.gz" - 'configure.py-objdir-support.diff') -md5sums=('dd7edef5ff674d307057a3c12dbd8fce' - '8cf9c06252e2f11ab00e62848e322fd3') - - -build() { - cd "${srcdir}/QScintilla-gpl-${pkgver}" - patch -Np1 -i "${srcdir}/configure.py-objdir-support.diff" - - cd Qt4 - qmake qscintilla.pro - make - - cd ../designer-Qt4 - qmake designer.pro INCLUDEPATH+=../Qt4 QMAKE_LIBDIR+=../Qt4 - make - - cd ../ - cp -rf Python Python2 - cd Python - python configure.py -n ../Qt4/ -o ../Qt4 -c -p 4 - make - - cd ../Python2 - python2 configure.py -n ../Qt4/ -o ../Qt4 -c -p 4 - make -} - -package_qscintilla() { - pkgdesc="A port to Qt4 of Neil Hodgson's Scintilla C++ editor class" - depends=('qt') - - cd "${srcdir}/QScintilla-gpl-${pkgver}/Qt4" - make DESTDIR="${pkgdir}" INSTALL_ROOT="${pkgdir}" install - - cd "${srcdir}/QScintilla-gpl-${pkgver}/designer-Qt4" - make DESTDIR="${pkgdir}" INSTALL_ROOT="${pkgdir}" install -} - -package_python2-qscintilla() { - pkgdesc="Python 2 bindings for QScintilla2" - depends=('pyqt' 'qscintilla') - - cd "${srcdir}/QScintilla-gpl-${pkgver}/Python2" - make DESTDIR="${pkgdir}" INSTALL_ROOT="${pkgdir}" install -} diff --git a/abs/extra/qscintilla/configure.py-objdir-support.diff b/abs/extra/qscintilla/configure.py-objdir-support.diff deleted file mode 100644 index b595de1..0000000 --- a/abs/extra/qscintilla/configure.py-objdir-support.diff +++ /dev/null @@ -1,39 +0,0 @@ -#! /bin/sh /usr/share/dpatch/dpatch-run -## 02_configure.dpatch by Torsten Marek <shlomme@debian.org> -## -## DP: patch the configure script for the Python bindings to support object dir builds - -@DPATCH@ -Index: qscintilla2-2.4.2/Python/configure.py -=================================================================== ---- qscintilla2-2.4.2.orig/Python/configure.py 2010-01-20 20:56:09.000000000 +0100 -+++ qscintilla2-2.4.2/Python/configure.py 2010-01-27 22:54:35.603870417 +0100 -@@ -33,6 +33,7 @@ - import glob - import optparse - -+src_dir = os.path.dirname(os.path.abspath(__file__)) - - # Import SIP's configuration module so that we have access to the error - # reporting. Then try and import the configuration modules for both PyQt3 and -@@ -162,7 +163,7 @@ - if os.access(sciglobal, os.F_OK): - # Get the QScintilla version string. - _, sciversstr = sipconfig.read_version(sciglobal, "QScintilla", "QSCINTILLA_VERSION", "QSCINTILLA_VERSION_STR") -- -+ return # Debian: do not check for the installed version, we're good this way. - if glob.glob(os.path.join(opts.qscilibdir, "*qscintilla2*")): - # Because we include the Python bindings with the C++ code we can - # reasonably force the same version to be used and not bother about -@@ -232,9 +233,9 @@ - argv.append(buildfile) - - if pyqt.pyqt_version >= 0x040000: -- argv.append("sip/qscimod4.sip") -+ argv.append(os.path.join(src_dir, "sip/qscimod4.sip")) - else: -- argv.append("sip/qscimod3.sip") -+ argv.append(os.path.join(src_dir, "sip/qscimod3.sip")) - - os.system(" ".join(argv)) - diff --git a/abs/extra/qt-assistant-compat/PKGBUILD b/abs/extra/qt-assistant-compat/PKGBUILD index 49fa9f0..74cd0de 100644 --- a/abs/extra/qt-assistant-compat/PKGBUILD +++ b/abs/extra/qt-assistant-compat/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 92392 2010-09-29 14:51:01Z ronald $ +# $Id: PKGBUILD 149629 2012-02-08 20:53:42Z pierre $ # Maintainer: Ronald van Haren <ronald.archlinux.org> pkgname=qt-assistant-compat pkgver=4.6.3 -pkgrel=1 -pkgdesk="compat version of Qt Assistant" +pkgrel=2 +pkgdesc="compat version of Qt Assistant" url="http://qt.nokia.com/" arch=('i686' 'x86_64') license=('GPL3' 'LGPL') depends=('qt') source=('ftp://ftp.qt.nokia.com/qt/source/qt-assistant-qassistantclient-library-compat-src-4.6.3.tar.gz' - 'debian_patches_01_build_system.diff') + 'debian_patches_01_build_system.diff') md5sums=('a20148e0488d5c12ab35ccc107dcc64d' '1b55290dc9fab0c035797e9301d2fa61') @@ -18,38 +18,37 @@ md5sums=('a20148e0488d5c12ab35ccc107dcc64d' build() { cd ${srcdir}/qt-assistant-qassistantclient-library-compat-version-${pkgver} - patch -Np1 -i ${srcdir}/debian_patches_01_build_system.diff - + patch -Np1 -i ${srcdir}/debian_patches_01_build_system.diff + cd lib; if [ -e Makefile ]; then $(MAKE) distclean; fi - rm -f translations/assistant_adp_*.qm + rm -f translations/assistant_adp_*.qm qmake CONFIG+=create_prl - make - cd ../translations; lrelease assistant_adp_*.ts - cd .. - qmake CONFIG+=create_prl - make + make + cd ../translations; lrelease assistant_adp_*.ts + cd .. + qmake CONFIG+=create_prl + make } -package(){ - cd ${srcdir}/qt-assistant-qassistantclient-library-compat-version-${pkgver} +package() { + cd ${srcdir}/qt-assistant-qassistantclient-library-compat-version-${pkgver} - make install INSTALL_ROOT=${pkgdir} - cd lib - make install INSTALL_ROOT=${pkgdir} - cd .. + make install INSTALL_ROOT=${pkgdir} + cd lib + make install INSTALL_ROOT=${pkgdir} + cd .. # Fix wrong path in prl file sed -i -e "/^QMAKE_PRL_BUILD_DIR/d" \ - ${pkgdir}/usr/lib/libQtAssistantClient.prl + ${pkgdir}/usr/lib/libQtAssistantClient.prl # Install translations install -d ${pkgdir}/usr/share/qt/translations/ install -p -m0644 translations/assistant_adp_*.qm \ - ${pkgdir}/usr/share/qt/translations/ + ${pkgdir}/usr/share/qt/translations/ # Install prf file install -D -p -m0644 features/assistant.prf \ - ${pkgdir}/usr/share/qt/mkspecs/features/assistant.prf - + ${pkgdir}/usr/share/qt/mkspecs/features/assistant.prf } diff --git a/abs/extra/qtwebkit/PKGBUILD b/abs/extra/qtwebkit/PKGBUILD deleted file mode 100644 index 30f1c84..0000000 --- a/abs/extra/qtwebkit/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# $Id$ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> - -pkgname=qtwebkit -pkgver=2.2.0 -pkgrel=3 -arch=('i686' 'x86_64') -url='http://trac.webkit.org/wiki/QtWebKit' -pkgdesc='An open source web browser engine (Qt port)' -license=('LGPL2.1' 'GPL3') -depends=('qt' 'gperf' 'bison' 'phonon' 'gstreamer0.10-base') -makedepends=('python2' 'mesa' 'chrpath') -conflicts=('qt<4.7') -source=("http://get.qt.nokia.com/${pkgname}/QtWebKit-${pkgver}.tar.gz" - 'python2-path.patch') -sha1sums=('3582f3a8b593140af004a19479f5ec19693b3df7' - 'b0ef3d5596171e3900a685df9bcfac3068ad6330') - -build() { - cd "${srcdir}"/QtWebKit-${pkgver} - - patch -p1 -i "${srcdir}"/python2-path.patch - - cd Tools/Scripts - ./build-webkit --qt \ - --prefix=/usr \ - --makeargs="${MAKEFLAGS}" \ - --release \ - --3d-canvas -} - -package() { - cd "${srcdir}"/QtWebKit-${pkgver} - make INSTALL_ROOT="${pkgdir}" -C WebKitBuild/Release install - - # Fix RPATH - chrpath -r /usr/lib/ "${pkgdir}"/usr/lib/qt/imports/QtWebKit/libqmlwebkitplugin.so -} diff --git a/abs/extra/qtwebkit/python2-path.patch b/abs/extra/qtwebkit/python2-path.patch deleted file mode 100644 index 2e270e6..0000000 --- a/abs/extra/qtwebkit/python2-path.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- QtWebKit-2.2.0/Source/JavaScriptCore/DerivedSources.pro~ 2011-10-20 22:39:56.044519075 +0000 -+++ QtWebKit-2.2.0/Source/JavaScriptCore/DerivedSources.pro 2011-10-20 22:41:21.302047082 +0000 -@@ -88,5 +88,5 @@ - retgen.output = $$JSC_GENERATED_SOURCES_DIR/RegExpJitTables.h - retgen.wkScript = $$PWD/create_regex_tables - retgen.input = retgen.wkScript --retgen.commands = python $$retgen.wkScript > ${QMAKE_FILE_OUT} -+retgen.commands = python2 $$retgen.wkScript > ${QMAKE_FILE_OUT} - addExtraCompiler(retgen) ---- QtWebKit-2.2.0/Source/WebCore/CodeGenerators.pri~ 2011-10-20 22:44:23.827225580 +0000 -+++ QtWebKit-2.2.0/Source/WebCore/CodeGenerators.pri 2011-10-20 22:44:38.550707819 +0000 -@@ -640,7 +640,7 @@ - inspectorJSON.output = $${WC_GENERATED_SOURCES_DIR}/Inspector.idl - inspectorJSON.input = INSPECTOR_JSON - inspectorJSON.wkScript = $$PWD/inspector/generate-inspector-idl --inspectorJSON.commands = python $$inspectorJSON.wkScript -o $${WC_GENERATED_SOURCES_DIR}/Inspector.idl $$PWD/inspector/Inspector.json -+inspectorJSON.commands = python2 $$inspectorJSON.wkScript -o $${WC_GENERATED_SOURCES_DIR}/Inspector.idl $$PWD/inspector/Inspector.json - inspectorJSON.depends = $$PWD/inspector/generate-inspector-idl - inspectorJSON.wkAddOutputToSources = false - addExtraCompiler(inspectorJSON) -@@ -723,7 +723,7 @@ - entities.output = $${WC_GENERATED_SOURCES_DIR}/HTMLEntityTable.cpp - entities.input = HTML_ENTITIES - entities.wkScript = $$PWD/html/parser/create-html-entity-table --entities.commands = python $$entities.wkScript -o $${WC_GENERATED_SOURCES_DIR}/HTMLEntityTable.cpp $$HTML_ENTITIES -+entities.commands = python2 $$entities.wkScript -o $${WC_GENERATED_SOURCES_DIR}/HTMLEntityTable.cpp $$HTML_ENTITIES - entities.clean = ${QMAKE_FILE_OUT} - entities.depends = $$PWD/html/parser/create-html-entity-table - addExtraCompiler(entities) diff --git a/abs/extra/quilt/PKGBUILD b/abs/extra/quilt/PKGBUILD deleted file mode 100644 index 1775294..0000000 --- a/abs/extra/quilt/PKGBUILD +++ /dev/null @@ -1,20 +0,0 @@ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: dibblethewrecker <dibblethewrecker.at.jiwe.org> - -pkgname=quilt -pkgver=0.48 -pkgrel=3 -pkgdesc="Manage a series of patches by keeping track of the changes each patch makes." -arch=('i686' 'x86_64') -url="http://savannah.nongnu.org/projects/quilt" -license=('GPL') -depends=('perl' 'diffstat' 'gawk' 'patch' 'diffutils' 'gettext') -source=(http://savannah.nongnu.org/download/quilt/${pkgname}-${pkgver}.tar.gz) - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --mandir=/usr/share/man || return 1 - make || return 1 - make prefix=${pkgdir}/usr mandir=${pkgdir}/usr/share/man install || return 1 -} -md5sums=('f77adda60039ffa753f3c584a286f12b') diff --git a/abs/extra/rarian/PKGBUILD b/abs/extra/rarian/PKGBUILD index b83caff..f6ddb58 100644 --- a/abs/extra/rarian/PKGBUILD +++ b/abs/extra/rarian/PKGBUILD @@ -1,18 +1,15 @@ -# $Id: PKGBUILD 11986 2008-09-06 21:33:59Z jgc $ +# $Id: PKGBUILD 137591 2011-09-09 23:51:24Z allan $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=rarian pkgver=0.8.1 -pkgrel=1 +pkgrel=2 pkgdesc="Documentation meta-data library, designed as a replacement for Scrollkeeper." arch=('i686' 'x86_64') url="http://rarian.freedesktop.org/" license=('GPL') depends=('gcc-libs') makedepends=('libxslt') -conflicts=('scrollkeeper') -provides=('scrollkeeper') -replaces=('scrollkeeper') options=('!libtool') source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.8/${pkgname}-${pkgver}.tar.bz2 user-segfault.patch) @@ -20,10 +17,14 @@ md5sums=('75091185e13da67a0ff4279de1757b94' '457e9827197009cfa360911fe49a5ad7') build() { - cd ${startdir}/src/${pkgname}-${pkgver} - patch -p0 -i ${srcdir}/user-segfault.patch || return 1 + cd ${srcdir}/${pkgname}-${pkgver} + patch -p0 -i ${srcdir}/user-segfault.patch ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --disable-static || return 1 - make || return 1 - make DESTDIR=${startdir}/pkg install || return 1 + --localstatedir=/var --disable-static + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${startdir}/pkg install } diff --git a/abs/extra/read-edid/PKGBUILD b/abs/extra/read-edid/PKGBUILD deleted file mode 100644 index 6e6b0b3..0000000 --- a/abs/extra/read-edid/PKGBUILD +++ /dev/null @@ -1,20 +0,0 @@ -# Contributor: Mateusz Herych <heniekk@gmail.com> - -pkgname=read-edid -pkgver=2.0.0 -pkgrel=2 -pkgdesc="Program that can get information from a pnp monitor" -arch=('i686' 'x86_64') -url="http://www.polypux.org/projects/read-edid/" -license=('GPL') -depends=('libx86') -source=(http://www.polypux.org/projects/read-edid/read-edid-$pkgver.tar.gz) -md5sums=('586e7fa1167773b27f4e505edc93274b') - -build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make DESTDIR=$startdir/pkg install || return 1 - -} diff --git a/abs/extra/recode/PKGBUILD b/abs/extra/recode/PKGBUILD index af65e17..c1bf9ad 100644 --- a/abs/extra/recode/PKGBUILD +++ b/abs/extra/recode/PKGBUILD @@ -1,38 +1,45 @@ -# $Id: PKGBUILD 84692 2010-07-03 16:19:26Z ibiru $ +# $Id: PKGBUILD 151219 2012-02-25 08:35:55Z pierre $ +# Maintainer: Kevin Piche <kevin@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=recode pkgver=3.6 -pkgrel=6 +pkgrel=7 pkgdesc="Converts files between various character sets and usages" arch=('i686' 'x86_64') -url="http://www.gnu.org/software/recode/recode.html" +url="http://recode.progiciels-bpi.ca/index.html" license=('GPL' 'LGPL') depends=('glibc' 'texinfo') options=('!libtool') install=recode.install -#source=(ftp://ftp.gnu.org/pub/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz -source=(ftp://ftp.knoppmyth.net/R6/sources/pinard-Recode-v3.6-0-g2127b34.tar.gz - http://ftp.de.debian.org/debian/pool/main/r/recode/recode_3.6-15.diff.gz - recode-3.6-as-if.patch recode-3.6-gettextfix.diff) +source=(${pkgname}-${pkgver}.tar.gz::"https://github.com/pinard/${pkgname}/tarball/v${pkgver}" + 'http://ftp.de.debian.org/debian/pool/main/r/recode/recode_3.6-17.diff.gz' + 'recode-3.6-as-if.patch' 'recode-3.6-gettextfix.diff' 'recode_automake.patch') build() { cd ${srcdir}/pinard-Recode-2127b34 patch -Np1 -i ${srcdir}/recode-3.6-as-if.patch patch -Np1 -i ${srcdir}/recode-3.6-gettextfix.diff - patch -Np1 -i ${srcdir}/recode_3.6-15.diff + patch -Np1 -i ${srcdir}/recode_3.6-17.diff + patch -Np1 -i ${srcdir}/recode_automake.patch sed -i '1i#include <stdlib.h>' src/argmatch.c rm -f acinclude.m4 autoreconf -fi libtoolize ./configure --prefix=/usr --mandir=/usr/share/man \ --infodir=/usr/share/info --without-included-gettext - make || return 1 - make DESTDIR=${pkgdir} install || return 1 + make +} + +package() { + cd ${srcdir}/pinard-Recode-2127b34 + make DESTDIR=${pkgdir} install + rm ${pkgdir}/usr/share/info/dir gzip ${pkgdir}/usr/share/info/* } md5sums=('f82e9a6ede9119268c13493c9add2809' - '95ca772e367a7ef56d3f46d724b6f86e' + '3716ae269074e31add3d29387ff09438' 'fca7484ba332c8ad59eb02334883cd92' - 'eb602e80a24b5448604bfebeacc55304') + 'eb602e80a24b5448604bfebeacc55304' + 'ad550ad030ebbbd29b29d794e19f6ca8') diff --git a/abs/extra/recode/__changelog b/abs/extra/recode/__changelog index af8fbcb..14932e3 100644 --- a/abs/extra/recode/__changelog +++ b/abs/extra/recode/__changelog @@ -1 +1,3 @@ -1/2/11 - chw - fixed URL for source +changed patch to 3.6.17 +added recode_automakepatch, taken from fedora + diff --git a/abs/extra/recode/recode_automake.patch b/abs/extra/recode/recode_automake.patch new file mode 100644 index 0000000..8468f54 --- /dev/null +++ b/abs/extra/recode/recode_automake.patch @@ -0,0 +1,23 @@ +--- recode-3.6.orig/configure.in 2001-01-03 16:50:54.000000000 +0100 ++++ recode-3.6/configure.in 2012-07-23 14:15:28.000000000 +0200 +@@ -15,7 +15,7 @@ + AM_PROG_LIBTOOL + + AC_ISC_POSIX +-AM_C_PROTOTYPES ++dnl AM_C_PROTOTYPES + AC_C_CONST + AC_C_INLINE + ad_AC_PROG_FLEX +--- recode-3.6.orig/src/Makefile.am 2000-12-06 17:36:12.000000000 +0100 ++++ recode-3.6/src/Makefile.am 2012-07-23 14:47:07.000000000 +0200 +@@ -17,7 +17,7 @@ + # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + # 02111-1307, USA. + +-AUTOMAKE_OPTIONS = gnits ansi2knr ++AUTOMAKE_OPTIONS = gnits + bin_PROGRAMS = recode + lib_LTLIBRARIES = librecode.la + man_MANS = recode.1 + diff --git a/abs/extra/remyth/PKGBUILD b/abs/extra/remyth/PKGBUILD new file mode 100755 index 0000000..7243a12 --- /dev/null +++ b/abs/extra/remyth/PKGBUILD @@ -0,0 +1,48 @@ +pkgname=remyth +pkgver=20121210 +pkgrel=3 +pkgdesc="This project is meant to provide a nicer remote for your MythTV Frontends. " +arch=('i686' 'x86_64') +url="https://github.com/SchraderMJ11/ReMyth" +license=('GPL') +depends=('nodejs' 'avahi' ) +makedepends=('git') +source=(service_type.js.patch remyth.html) + +_gitroot="https://github.com/SchraderMJ11/ReMyth.git" +_gitname=ReMyth + +build() { + cd "${srcdir}" + + if [ ! -d "${srcdir}/${_gitname}" ]; then + git clone ${_gitroot} + else + cd ${_gitname} && git pull origin + fi + + msg "GIT checkout done." + + + cd "${srcdir}" + if [ -e ${_gitname}-build ] + then + rm -rf ${_gitname}-build + fi + cp -rf "${_gitname}" "${_gitname}-build" + + cd "${srcdir}/${_gitname}-build" + npm install || exit 1 + patch -Np0 -i ${srcdir}/service_type.js.patch || return 1 + +} + +package() { + cd "${srcdir}" + mkdir -p $pkgdir/usr/$pkgname + rsync -arvp --exclude .git ${_gitname}-build/ $pkgdir/usr/${pkgname} + cd $startdir/src + install -m755 -D remyth.html $pkgdir/data/srv/httpd/htdocs/remyth.html +} +md5sums=('69f9edd22284e003249902999579d7c2' + 'bce9d81d3aa3c39f8a4fefe3bfdb77f4') diff --git a/abs/extra/remyth/remyth.html b/abs/extra/remyth/remyth.html new file mode 100755 index 0000000..4d1ddb3 --- /dev/null +++ b/abs/extra/remyth/remyth.html @@ -0,0 +1,30 @@ +<head> +<script type="text/javascript"> +function r() +{ + current_hostname=parent.location.hostname + top.frames["content"].location.href = ( "http://" + current_hostname + ":6544" ) ; + +} + +function express() +{ + current_hostname=parent.location.hostname + top.frames["content"].location.href = ( "http://" + current_hostname + ":6565" ) ; + + } + +function remyth() +{ + current_hostname=parent.location.hostname + top.frames["content"].location.href = ( "http://" + current_hostname + ":8088" ) ; + + } + + +</script> +</head> +<body onload="JavaScript:remyth();"> + +</body> +</html>
\ No newline at end of file diff --git a/abs/extra/remyth/service_type.js.patch b/abs/extra/remyth/service_type.js.patch new file mode 100644 index 0000000..ef1feca --- /dev/null +++ b/abs/extra/remyth/service_type.js.patch @@ -0,0 +1,24 @@ +--- node_modules/mdns/lib/service_type.js.orig 2012-11-05 02:42:27.910994908 +0000 ++++ node_modules/mdns/lib/service_type.js 2012-11-05 02:43:26.784326471 +0000 +@@ -156,8 +156,8 @@ + if (str.length === 0) { + throw new Error('type ' + str + ' must not be empty'); + } +- if (str.length > 14) { +- throw new Error('type ' + str + ' has more than 14 characters'); ++ if (str.length > 24) { ++ throw new Error('type ' + str + ' has more than 24 characters'); + } + if (str.match(charset_regex)) { + throw new Error('type ' + str + ' may only contain alphanumeric ' + +@@ -170,8 +170,8 @@ + if (str.length === 0) { + throw new Error('type string must not be empty'); + } +- if (str.length > 15) { +- throw new Error('type ' + _uu(str) + ' has more than 14 characters'); ++ if (str.length > 25) { ++ throw new Error('type ' + _uu(str) + ' has more than 24 characters'); + } + if ( ! str.match(format_regex)) { + throw new Error('type ' + str + ' must start with an underscore ' + diff --git a/abs/extra/rhino/PKGBUILD b/abs/extra/rhino/PKGBUILD index 27d7c46..c2637c8 100644 --- a/abs/extra/rhino/PKGBUILD +++ b/abs/extra/rhino/PKGBUILD @@ -1,18 +1,69 @@ +# $Id: PKGBUILD 166675 2012-09-15 10:31:01Z guillaume $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> -# Maintainer: Jan de Groot <jgc@archlinux.org> +# Maintainer: Guillaume ALAUX <guillaume@archlinux.org> +# Contributor: Jan de Groot <jgc@archlinux.org> -pkgname=rhino -pkgver=1.7R1 +pkgbase=rhino +pkgname=('java-rhino' 'rhino' 'rhino-javadoc') +pkgver=1.7R4 pkgrel=1 -pkgdesc="Open-source implementation of JavaScript written entirely in Java" -arch=('i686' 'x86_64') +arch=('any') url="http://www.mozilla.org/rhino/" -license=('MPL' 'GPL2') -source=(ftp://ftp.mozilla.org/pub/mozilla.org/js/rhino1_7R1.zip) -md5sums=('613eed8201d37be201805e5048ebb0c3') +license=('MPL') +makedepends=('apache-ant') +source=(https://github.com/downloads/mozilla/rhino/${pkgbase}${pkgver/./_}.zip + http://mirrors.axint.net/apache/xmlbeans/binaries/xmlbeans-2.5.0.tgz + rhino + rhino.1 + rhino-debugger + rhino-debugger.1 + rhino-jsc + rhino-jsc.1) +md5sums=('ad67a3dff135e3a70f0c3528a2d6edf2' + '982e8e3d36aa5f7839f7675adc2b0c53' + '2006b1ac37d162597b959acd685a4bee' + '9c6bfda92befa45d484c88f9c7a2403b' + '08d1ab306f0e07bc9a93afead55d54e8' + '6c86e6746df7a327b46196a2c4942e0f' + 'dad268ba00bb4182045507d4017d9815' + 'af86e6abdf97ee68958ece356a9a7bc1') build() { - cd ${srcdir}/rhino1_7R1 - install -m755 -d ${pkgdir}/usr/share/java - install -m644 js.jar ${pkgdir}/usr/share/java/ || return 1 + cd ${srcdir}/${pkgbase}${pkgver/./_} + ant \ + -Dxbean.jar=${srcdir}/xmlbeans-2.5.0/lib/xbean.jar \ + -Djsr173.jar=${srcdir}/xmlbeans-2.5.0/lib/jsr173_1.0_api.jar \ + jar \ + javadoc +} + +# As explained on the build.xml, tests are difficult to run from CLI. We skip them. + +package_java-rhino() { + pkgdesc="Open-source implementation of JavaScript written entirely in Java - JAR" + depends=('java-runtime-headless') + + cd ${srcdir}/${pkgbase}${pkgver/./_}/build/${pkgbase}${pkgver/./_} + install -Dm644 js.jar ${pkgdir}/usr/share/java/js-${pkgver}.jar + ln -s js-${pkgver}.jar ${pkgdir}/usr/share/java/js.jar +} + +package_rhino() { + pkgdesc="Open-source implementation of JavaScript written entirely in Java" + depends=('java-rhino' 'java-jline') + + cd ${srcdir} + + install -dm755 ${pkgdir}/usr/bin + install -m755 rhino rhino-debugger rhino-jsc ${pkgdir}/usr/bin/ + install -dm755 ${pkgdir}/usr/share/man/man1 + install -m755 rhino.1 rhino-debugger.1 rhino-jsc.1 ${pkgdir}/usr/share/man/man1/ +} + +package_rhino-javadoc() { + pkgdesc="Open-source implementation of JavaScript written entirely in Java - Javadoc" + + cd ${srcdir}/${pkgbase}${pkgver/./_}/build/${pkgbase}${pkgver/./_} + install -m755 -d ${pkgdir}/usr/share/${pkgbase} + cp -r javadoc ${pkgdir}/usr/share/${pkgbase} } diff --git a/abs/extra/rhino/rhino b/abs/extra/rhino/rhino new file mode 100644 index 0000000..f56ae62 --- /dev/null +++ b/abs/extra/rhino/rhino @@ -0,0 +1,8 @@ +#!/bin/sh + +JAVA_CMD="/usr/bin/java" +JAVA_OPTS="" +JAVA_CLASSPATH="/usr/share/java/js.jar:/usr/share/java/jline.jar" +JAVA_MAIN="org.mozilla.javascript.tools.shell.Main" + +$JAVA_CMD $JAVA_OPTS -classpath $JAVA_CLASSPATH $JAVA_MAIN "$@" diff --git a/abs/extra/rhino/rhino-debugger b/abs/extra/rhino/rhino-debugger new file mode 100644 index 0000000..671778f --- /dev/null +++ b/abs/extra/rhino/rhino-debugger @@ -0,0 +1,8 @@ +#!/bin/sh + +JAVA_CMD="/usr/bin/java" +JAVA_OPTS="" +JAVA_CLASSPATH="/usr/share/java/js.jar" +JAVA_MAIN="org.mozilla.javascript.tools.debugger.Main" + +$JAVA_CMD $JAVA_OPTS -classpath $JAVA_CLASSPATH $JAVA_MAIN "$@" diff --git a/abs/extra/rhino/rhino-debugger.1 b/abs/extra/rhino/rhino-debugger.1 new file mode 100644 index 0000000..24cbbab --- /dev/null +++ b/abs/extra/rhino/rhino-debugger.1 @@ -0,0 +1,60 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH RHINO-DEBUGGER 1 "Friday 17, 2009" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp <n> insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +rhino-debugger \- invokes the rhino JavaScript debugger GUI + +.SH SYNOPSIS +.B rhino-debugger +.I [options] +.I script_filename_or_url +.I [script_arguments] + +.SH DESCRIPTION +This manual page documents briefly the +.B rhino-debugger +command. +This manual page was written for the Debian distribution because the original +program does not have a manual page. It is written according to the html documentation. +.PP +\fBrhino-debugger\fP is a start script for the rhino JavaScript debugger. The Rhino JavaScript debugger is a GUI that allows debugging of interpreted JavaScript scripts run in Rhino. Note that this debugger will not work with JavaScript scripts run in the mozilla browser since Rhino is not the engine used in such environments. + +.SH OPTIONS + +.IP -e\ \fIscript_source\fP +Executes script_source as a JavaScript script. +.IP -f\ \fIscript_filename_or_url\fP +Reads script_filename_or_url content and execute it as a JavaScript script. +.IP -opt,\ -O\ \fIoptLevel\fP +Optimizes at level optLevel, which must be an integer between 0 and 9. +.IP -version\ \fIversionNumber\fP +Specifies the language version to compile with. The string versionNumber must be one of 100, 110, 120, 130, or 140. See JavaScript Language Versions for more information on language versions. +.IP -strict +Enable strict mode. + +.SH EXAMPLE + +Example debugging the NervousText.js applet written in JavaScript. The example is provided in the librhino-java-doc package. + +$ rhino-debugger NervousText.js + +.SH SEE ALSO +The online documentation under http://www.mozilla.org/rhino/debugger.html + +.SH AUTHOR +This manual page was written by Damien Raude-Morvan <drazzib@debian.org>, +for the Debian project (but may be used by others). diff --git a/abs/extra/rhino/rhino-jsc b/abs/extra/rhino/rhino-jsc new file mode 100644 index 0000000..0f47a61 --- /dev/null +++ b/abs/extra/rhino/rhino-jsc @@ -0,0 +1,8 @@ +#!/bin/sh + +JAVA_CMD="/usr/bin/java" +JAVA_OPTS="" +JAVA_CLASSPATH="/usr/share/java/js.jar" +JAVA_MAIN="org.mozilla.javascript.tools.jsc.Main" + +$JAVA_CMD $JAVA_OPTS -classpath $JAVA_CLASSPATH $JAVA_MAIN "$@" diff --git a/abs/extra/rhino/rhino-jsc.1 b/abs/extra/rhino/rhino-jsc.1 new file mode 100644 index 0000000..6b9face --- /dev/null +++ b/abs/extra/rhino/rhino-jsc.1 @@ -0,0 +1,67 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH RHINO-JSC 1 "February 12, 2005" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp <n> insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +rhino-jsc \- invokes the rhino JavaScript compiler + +.SH SYNOPSIS +.B rhino-jsc +.I [options] +.I file1.js +.I [file2.js\&.\&.\&.] + +.SH DESCRIPTION +This manual page documents briefly the +.B rhino-jsc +command. +This manual page was written for the Debian distribution because the original +program does not have a manual page. It is written according to the html documentation. +.PP +\fBrhino-jsc\fP is a start script for the rhino JavaScript compiler. The JavaScript compiler translates JavaScript source into Java class files. The resulting Java class files can then be loaded and executed at another time, providing a convenient method for transferring JavaScript, and for avoiding translation cost. +Note that the top-level functions available to the shell (such as print) are not available to compiled scripts when they are run outside the shell. + +.SH OPTIONS + +.IP -extends\ \fIjava_class_name\fP +Specifies that a java class extending the Java class java_class_name should be generated from the incoming JavaScript source file. Each global function in the source file is made a method of the generated class, overriding any methods in the base class by the same name. +.IP -implements\ \fIjava_intf_name\fP +Specifies that a java class implementing the Java interface java_intf_name should be generated from the incoming JavaScript source file. Each global function in the source file is made a method of the generated class, implementing any methods in the interface by the same name. +.IP -debug,\ -g +Specifies that debug information should be generated. May not be combined with optimization at an optLevel greater than zero. +.IP -nosource +Does not save the source in the class file. Functions and scripts compiled this way cannot be decompiled. This option can be used to avoid distributing source or simply to save space in the resulting class file. +.IP -o\ \fIoutputFile\fP +Writes the class file to the given file (which should end in .class). The string outputFile must be a writable filename. +.IP -opt,\ -O\ \fIoptLevel\fP +Optimizes at level optLevel, which must be an integer between 0 and 9. +.IP -package\ \fIpackageName\fP +Specifies the package to generate the class into. The string packageName must be composed of valid identifier characters optionally separated by periods. +.IP -version\ \fIversionNumber\fP +Specifies the language version to compile with. The string versionNumber must be one of 100, 110, 120, 130, or 140. See JavaScript Language Versions for more information on language versions. + +.SH EXAMPLE + +Example compiling the NervousText.js applet written in JavaScript. The example is provided in the librhino-java-doc package. + +$ rhino-jsc \-extends java.applet.Applet \-implements java.lang.Runnable NervousText.js + +.SH SEE ALSO +The online documentation under http://www.mozilla.org/rhino/jsc.html + +.SH AUTHOR +This manual page was written by Wolfgang Baer <WBaer@gmx.de>, +for the Debian project (but may be used by others). diff --git a/abs/extra/rhino/rhino.1 b/abs/extra/rhino/rhino.1 new file mode 100644 index 0000000..99fdb05 --- /dev/null +++ b/abs/extra/rhino/rhino.1 @@ -0,0 +1,93 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH RHINO 1 "February 12, 2005" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp <n> insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +rhino \- invokes the JavaScript shell for running scripts in batch mode or interactive + +.SH SYNOPSIS +.B rhino +.I [options] +.I script_filename_or_url +.I [script_arguments] + +.SH DESCRIPTION +This manual page documents briefly the +.B rhino +command. +This manual page was written for the Debian distribution because the original +program does not have a manual page. It is written according to the html documentation. +.PP +.\" TeX users may be more comfortable with the \fB<whatever>\fP and +.\" \fI<whatever>\fP escape sequences to invode bold face and italics, +.\" respectively. +\fBrhino\fP is a start script for the rhino JavaScript shell which provides a simple way +to run scripts in batch mode or an interactive environment for exploratory programming. + +.SH OPTIONS + +.IP -e\ \fIscript_source\fP +Executes script_source as a JavaScript script. +.IP -f\ \fIscript_filename_or_url\fP +Reads script_filename_or_url content and execute it as a JavaScript script. +.IP -opt,\ -O\ \fIoptLevel\fP +Optimizes at level optLevel, which must be an integer between -1 and 9. -1 means Interpretive mode is always used. 0 means no optimizations whereas 9 means all optimizations are performed. +.IP -version\ \fIversionNumber\fP +Specifies the language version to compile with. The string versionNumber must be one of 100, 110, 120, 130, or 140. See JavaScript Language Versions for more information on language versions. +.IP -strict +Enable strict mode. + +.SH PREDEFINED PROPERTIES + +Scripts executing in the shell have access to some additional properties of the top-level object. + +.IP arguments +The arguments object is an array containing the strings of all the arguments given at the command line when the shell was invoked. +.IP help() +Executing the help function will print usage and help messages. +.IP defineClass(\fIclassName\fP) +Define an extension using the Java class named with the string argument className. Uses ScriptableObject.defineClass() to define the extension. +.IP deserialize(\fIfilename\fP) +Restore from the specified file an object previously written by a call to serialize. +.IP load(\fI[filename,\&.\&.\&.]\fP) +Load JavaScript source files named by string arguments. If multiple arguments are given, each file is read in and executed in turn. +.IP loadClass(\fIclassName\fP) +Load and execute the class named by the string argument className. The class must be a class that implements the Script interface, as will any script compiled by jsc. +.IP print(\fI[expr\&.\&.\&.]\fP) +Evaluate and print expressions. Evaluates each expression, converts the result to a string, and prints it. +.IP readFile(\fIpath[,characterCoding]\fP) +Read given file and convert its bytes to a string using the specified character coding or default character coding if explicit coding argument is not given. +.IP readUrl(\fIurl[,characterCoding]\fP) +Open an input connection to the given string url, read all its bytes and convert them to a string using the specified character coding or default character coding if explicit coding argument is not given. +.IP runCommand(\fIcommandName,[arg,\&.\&.\&.][options]\fP) +Execute the specified command with the given argument and options as a separate process and return the exit status of the process. For details, see JavaDoc for org.mozilla.javascript.tools.shell.Global#runCommand. +.IP serialize(\fIobject,filename\fP) +Serialize the given object to the specified file. +.IP spawn(\fIfunctionOrScript\fP) +Run the given function or script in a different thread. +.IP sync(\fIfunction\fP) +creates a synchronized function (in the sense of a Java synchronized method) from an existing function. The new function synchronizes on the this object of its invocation. +.IP quit() +Quit shell. The shell will also quit in interactive mode if an end-of-file character is typed at the prompt. +.IP version(\fI[number]\fP) +Get or set JavaScript version number. If no argument is supplied, the current version number is returned. If an argument is supplied, it is expected to be one of 100, 110, 120, 130, or 140 to indicate JavaScript version 1.0, 1.1, 1.2, 1.3, or 1.4 respectively. + +.SH SEE ALSO +The online documentation under http://www.mozilla.org/rhino/shell.html + +.SH AUTHOR +This manual page was written by Wolfgang Baer <WBaer@gmx.de>, +for the Debian project (but may be used by others). diff --git a/abs/extra/romdb/PKGBUILD b/abs/extra/romdb/PKGBUILD index 9601fc6..d05ef83 100644 --- a/abs/extra/romdb/PKGBUILD +++ b/abs/extra/romdb/PKGBUILD @@ -8,10 +8,12 @@ pkgdesc="Table used by MythGame to store information about games." arch=('i686' 'x86_64') license=('GPL2') url="http://linhes.org/" -source=(ftp://ftp.knoppmyth.net/R6/sources/romdb-20051116-02.tgz) +#source=(ftp://ftp.knoppmyth.net/R6/sources/romdb-20051116-02.tgz) +source=(http://www.phaze.org/romdb/data/romdb-20051116-01.zip) install=romdb.install build() { cd $startdir/src/ mkdir -p $startdir/pkg/usr/LH/sql cp -a *.sql $startdir/pkg/usr/LH/sql } +md5sums=('3bb5a5c7252e4f5723baed562ee52bce') diff --git a/abs/extra/rpmextract/PKGBUILD b/abs/extra/rpmextract/PKGBUILD index 1d76670..89505fa 100644 --- a/abs/extra/rpmextract/PKGBUILD +++ b/abs/extra/rpmextract/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 83879 2010-06-23 15:55:24Z andrea $ +# $Id: PKGBUILD 149521 2012-02-08 11:18:26Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> pkgname=rpmextract pkgver=1.0 -pkgrel=4 +pkgrel=5 pkgdesc="Script to convert or extract RPM archives (contains rpm2cpio)" url="http://www.archlinux.org" arch=('any') diff --git a/abs/extra/rrd_stats/PKGBUILD b/abs/extra/rrd_stats/PKGBUILD deleted file mode 100644 index b000185..0000000 --- a/abs/extra/rrd_stats/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -pkgname=rrd_stats -pkgver=1 -pkgrel=20 -pkgdesc="graph system stats" -arch=('i686' 'x86_64') -url="" -license=('GPL') -source=(rrd_stats.tgz) -depends=('hddtemp' 'sysstat' 'xmbmon' 'rrdtool' 'perl' 'local-website') -backup=('etc/rrdsettings.cfg' 'data/srv/httpd/htdocs/index-rrd.html' - 'data/srv/httpd/htdocs/cgi-bin/rrd.cgi' 'usr/bin/rrd_python.py') -install=rrd_stats.install - -build() { - - /bin/true - -} - -package() { - - cd ${srcdir}/${pkgname} - cp -a * ${pkgdir}/ - install -d ${pkgdir}/var/lib/rrd - echo "RRD files are used by rrd_stats" > ${pkgdir}/var/lib/rrd/README - mv ${pkgdir}/data/srv/httpd/htdocs/rrd/index.html ${pkgdir}/data/srv/httpd/htdocs/rrd/index-rrd.html - chown -R http:users ${pkgdir}/data/srv/httpd - chmod -R 755 ${pkgdir}/data/srv/httpd - -} -md5sums=('1be3b8b684853908aab62aa5130ae30f') diff --git a/abs/extra/rrd_stats/rrd_stats.install b/abs/extra/rrd_stats/rrd_stats.install deleted file mode 100644 index 126e4f0..0000000 --- a/abs/extra/rrd_stats/rrd_stats.install +++ /dev/null @@ -1,34 +0,0 @@ -post_install() { - PFIX="/data/srv/httpd/htdocs/rrd" - if [ ! -e $PFIX/index.html.orig ] - then - mv $PFIX/index.html $PFIX/index.html.orig - ln -s $PFIX/index-rrd.html $PFIX/index.html - fi - - ct=`crontab -l` - echo $ct | grep -q run_rrd.sh - if [ $? != 0 ] - then - line="*/5 * * * * /usr/bin/run_rrd.sh > /dev/null" - (crontab -l; echo "$line") | crontab - - fi - - -} - -post_upgrade() { - post_install $1 -} - - -pre_remove() { - crontab -l | grep -v run_rrd | crontab - - PFIX="/data/srv/httpd/htdocs/rrd" - if [ -e $PFIX/index.html.orig ] - then - rm $PFIX/index.html - mv $PFIX/index.html.orig $PFIX/index.html - fi - -} diff --git a/abs/extra/rrd_stats/rrd_stats.tgz b/abs/extra/rrd_stats/rrd_stats.tgz Binary files differdeleted file mode 100644 index 7dde039..0000000 --- a/abs/extra/rrd_stats/rrd_stats.tgz +++ /dev/null diff --git a/abs/extra/rrd_stats/run_rrd.sh b/abs/extra/rrd_stats/run_rrd.sh deleted file mode 100644 index 19150a4..0000000 --- a/abs/extra/rrd_stats/run_rrd.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh -RRD='hddtemp disk traffic mem cpu usage ups' -DIR='/usr/bin' -# -for x in $RRD -do - $DIR/rrd_${x}.pl >& /dev/null -done diff --git a/abs/extra/rsync/PKGBUILD b/abs/extra/rsync/PKGBUILD new file mode 100644 index 0000000..1224537 --- /dev/null +++ b/abs/extra/rsync/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 160933 2012-06-07 05:56:33Z pierre $ + +pkgname=rsync +pkgver=3.0.9 +pkgrel=3 +pkgdesc="A file transfer program to keep remote files in sync" +arch=('i686' 'x86_64') +url="http://samba.anu.edu.au/rsync/" +license=('GPL3') +depends=('perl') +backup=('etc/rsyncd.conf' 'etc/xinetd.d/rsync') +source=("http://rsync.samba.org/ftp/rsync/$pkgname-$pkgver.tar.gz" + 'rsyncd.conf' 'rsyncd' 'rsync.xinetd' 'rsyncd.service') +md5sums=('5ee72266fe2c1822333c407e1761b92b' + 'bce64d122a8e0f86872a4a21a03bc7f3' + 'ba413da4ebca05c57860151fda21efbc' + 'ea3e9277dc908bc51f9eddc0f6b935c1' + 'ec96f9089d71109557cdcaa3f0633ed6') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr --with-included-popt + make +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + make test +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + install -Dm755 ../rsyncd "$pkgdir/etc/rc.d/rsyncd" + install -Dm644 ../rsyncd.conf "$pkgdir/etc/rsyncd.conf" + install -Dm644 ../rsync.xinetd "$pkgdir/etc/xinetd.d/rsync" + install -Dm644 ../rsyncd.service "$pkgdir/usr/lib/systemd/system/rsyncd.service" + install -Dm755 support/rrsync "$pkgdir/usr/lib/rsync/rrsync" +} diff --git a/abs/extra/rsync/rsync.xinetd b/abs/extra/rsync/rsync.xinetd new file mode 100644 index 0000000..f5b6b1e --- /dev/null +++ b/abs/extra/rsync/rsync.xinetd @@ -0,0 +1,11 @@ +service rsync +{ + socket_type = stream + wait = no + user = root + server = /usr/bin/rsync + server_args = --daemon + log_on_success += HOST DURATION + log_on_failure += HOST + disable = yes +} diff --git a/abs/extra/rsync/rsyncd b/abs/extra/rsync/rsyncd new file mode 100644 index 0000000..27836d5 --- /dev/null +++ b/abs/extra/rsync/rsyncd @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +[ -f /etc/conf.d/rsyncd ] && . /etc/conf.d/rsyncd + +case "$1" in + start) + stat_busy "Starting rsyncd" + [ ! -f /run/daemons/rsyncd ] && /usr/bin/rsync --daemon $RSYNCD_ARGS + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon rsyncd + stat_done + fi + ;; + stop) + stat_busy "Stopping rsyncd" + [ -f /run/rsyncd.pid ] && kill `cat /run/rsyncd.pid` + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon rsyncd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/extra/rsync/rsyncd.conf b/abs/extra/rsync/rsyncd.conf new file mode 100644 index 0000000..1521060 --- /dev/null +++ b/abs/extra/rsync/rsyncd.conf @@ -0,0 +1,10 @@ +uid = nobody +gid = nobody +use chroot = no +max connections = 4 +syslog facility = local5 +pid file = /run/rsyncd.pid + +[ftp] + path = /srv/ftp + comment = ftp area diff --git a/abs/extra/rsync/rsyncd.service b/abs/extra/rsync/rsyncd.service new file mode 100644 index 0000000..ea2e32c --- /dev/null +++ b/abs/extra/rsync/rsyncd.service @@ -0,0 +1,10 @@ +[Unit] +Description=A file transfer program to keep remote files in sync + +[Service] +EnvironmentFile=-/etc/conf.d/rsyncd +ExecStart=/usr/bin/rsync --daemon --no-detach ${RSYNCD_ARGS} +RestartSec=1 + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/rtmpdump/PKGBUILD b/abs/extra/rtmpdump/PKGBUILD index 03263a4..b1e933a 100644 --- a/abs/extra/rtmpdump/PKGBUILD +++ b/abs/extra/rtmpdump/PKGBUILD @@ -1,4 +1,4 @@ -# $Id$ +# $Id: PKGBUILD 134127 2011-08-02 03:47:07Z eric $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: xduugu # Contributor: Elis Hughes <elishughes@googlemail.com> diff --git a/abs/extra/ruby/PKGBUILD b/abs/extra/ruby/PKGBUILD index e990221..0845452 100644 --- a/abs/extra/ruby/PKGBUILD +++ b/abs/extra/ruby/PKGBUILD @@ -1,51 +1,56 @@ -# $Id: PKGBUILD 96253 2010-10-19 15:06:00Z stephane $ -# Maintainer: Allan McRae <allan@archlinux.org> +# Maintainer: Thomas Dziedzic <gostrc@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: John Proctor <jproctor@prium.net> # Contributor: Jeramy Rutley <jrutley@gmail.com> -pkgname=('ruby' 'ruby-docs') -pkgver=1.9.2_p0 -_pkgver=1.9.2-p0 -pkgrel=4 -pkgdesc="An object-oriented language for quick and easy programming" +pkgname=ruby +pkgver=1.9.3_p194 +pkgrel=2 +pkgdesc='An object-oriented language for quick and easy programming' arch=('i686' 'x86_64') -url="http://www.ruby-lang.org/en/" -license=('custom') -makedepends=('gdbm' 'db' 'openssl' 'zlib' 'readline' 'tk' 'libffi' - 'doxygen' 'graphviz') -options=('!emptydirs') -source=("ftp://ftp.ruby-lang.org/pub/ruby/1.9/${pkgname}-${_pkgver}.tar.bz2") -md5sums=('d8a02cadf57d2571cd4250e248ea7e4b') -sha256sums=('e9710990ed8c2e794123aba509010471915fb13c27dae0118831d2001a9c8d3b') +url='http://www.ruby-lang.org/en/' +license=('BSD' 'custom') +backup=('etc/gemrc') +provides=('rubygems' 'rake') +conflicts=('rake') +depends=('openssl' 'libffi' 'libyaml') +makedepends=('tk') +optdepends=('tk: for Ruby/TK' + 'ruby-docs: Ruby documentation') +options=('!emptydirs' '!makeflags') +install='ruby.install' +source=("ftp://ftp.ruby-lang.org/pub/ruby/${pkgver%.*}/ruby-${pkgver//_/-}.tar.bz2" + 'gemrc') +md5sums=('2278eff4cfed3cbc0653bc73085caa34' + '6fb8e7a09955e0f64be3158fb4a27e7a') build() { - cd "${srcdir}/${pkgname}-${_pkgver}" - ./configure --prefix=/usr \ - --enable-shared \ - --enable-pthread \ - --disable-rpath + cd ruby-${pkgver//_/-} + + PKG_CONFIG=/usr/bin/pkg-config ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --enable-shared \ + --enable-pthread \ + --disable-rpath \ + --disable-install-doc + make } -package_ruby() -{ - depends=('gdbm' 'db' 'openssl' 'zlib' 'readline' 'libffi') - provides=('rubygems' 'rake') - conflicts=('rubygems' 'rake') - optdepends=('tk: for Ruby/TK') +check() { + cd ruby-${pkgver//_/-} - cd "${srcdir}/${pkgname}-${_pkgver}" - make DESTDIR="${pkgdir}" install-nodoc - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" + make test } -package_ruby-docs() -{ - pkgdesc="Documentation files for ruby" - #arch=('any') - depends=('ruby') +package() { + cd ruby-${pkgver//_/-} + + make DESTDIR="${pkgdir}" install-nodoc + + install -D -m644 ${srcdir}/gemrc "${pkgdir}/etc/gemrc" - cd "${srcdir}/${pkgname}-${_pkgver}" - make -j1 DESTDIR="${pkgdir}" install-doc install-capi - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/ruby-docs/COPYING" + install -D -m644 COPYING "${pkgdir}/usr/share/licenses/ruby/LICENSE" + install -D -m644 BSDL "${pkgdir}/usr/share/licenses/ruby/BSDL" } diff --git a/abs/extra/ruby/gemrc b/abs/extra/ruby/gemrc new file mode 100644 index 0000000..3d11de1 --- /dev/null +++ b/abs/extra/ruby/gemrc @@ -0,0 +1,5 @@ +# Read about the gemrc format at http://docs.rubygems.org/read/chapter/11 + +# --user-install is used to install to $HOME/.gem/ by default since we want to separate +# pacman installed gems and gem installed gems +gem: --user-install diff --git a/abs/extra/ruby/ruby.install b/abs/extra/ruby/ruby.install new file mode 100644 index 0000000..ce78e96 --- /dev/null +++ b/abs/extra/ruby/ruby.install @@ -0,0 +1,22 @@ +#!/bin/sh + +print_gem_default_target() { + echo 'The default location of gem installs is $HOME/.gem/ruby' + echo 'Add the following line to your PATH if you plan to install using gem' + echo '$(ruby -rubygems -e "puts Gem.user_dir")/bin' + echo 'If you want to install to the system wide location, you must either:' + echo 'edit /etc/gemrc or run gem with the --no-user-install flag.' +} + +# arg 1: the new package version +post_install() { + print_gem_default_target +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + if [ "$(vercmp $2 1.9.3_p125-4)" -lt 0 ]; then + print_gem_default_target + fi +} diff --git a/abs/extra/samba/PKGBUILD b/abs/extra/samba/PKGBUILD index eced810..63d943d 100644 --- a/abs/extra/samba/PKGBUILD +++ b/abs/extra/samba/PKGBUILD @@ -1,25 +1,27 @@ -# $Id: PKGBUILD 94658 2010-10-09 09:44:15Z tpowa $ -# Maintainer: Tobias Powalowski <tpowa@archlinux.org +# $Id: PKGBUILD 162373 2012-06-26 05:39:58Z tpowa $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgbase=samba -pkgname=('smbclient' 'samba') -pkgver=3.5.6 +pkgname=('libwbclient' 'smbclient' 'samba') +pkgver=3.6.6 # We use the 'A' to fake out pacman's version comparators. Samba chooses # to append 'a','b',etc to their subsequent releases, which pamcan # misconstrues as alpha, beta, etc. Bad samba! -_realver=3.5.6 -pkgrel=2 -arch=('i686' 'x86_64') +_realver=3.6.6 +pkgrel=1 +arch=(i686 x86_64) url="http://www.samba.org" license=('GPL3') -makedepends=('db>=4.7' 'popt' 'acl' 'libldap' 'libcap>=2.16' 'heimdal>=1.2-1' 'pam' 'gnutls>=2.4.1' 'talloc' 'tdb') -options=(!makeflags) +makedepends=('db' 'popt' 'libcups' 'acl' 'libldap' 'libcap' 'krb5' 'pam' 'gnutls>=2.4.1' 'talloc' 'tdb') source=(http://us1.samba.org/samba/ftp/stable/${pkgbase}-${_realver}.tar.gz - samba samba.logrotate - swat.xinetd - samba.pam + samba samba.logrotate + swat.xinetd + samba.pam samba.conf.d - fix-ipv6-mount.patch) + smbd.service + nmbd.service + winbindd.service + samba.conf) ### UNINSTALL dmapi package before building!!! build() { @@ -33,42 +35,48 @@ build() { --with-fhs \ --with-pam \ --with-pam_smbpass \ - --with-pammodulesdir=/lib/security \ + --with-pammodulesdir=/usr/lib/security \ + --with-dnsupdate \ + --with-automount \ + --with-quotas \ --with-ads \ --with-acl-support \ - --with-cifsmount \ --with-libsmbclient \ --with-syslog \ --enable-external-libtalloc \ --disable-dnssd \ --disable-avahi \ - --with-cifsumount \ - --with-shared-modules=idmap_ad,idmap_adex,idmap_rid,idmap_hash \ + --with-shared-modules=idmap_ad,idmap_adex,idmap_rid,idmap_hash,idmap_tdb2 \ --enable-external-libtdb - make || return 1 + make +} + +package_libwbclient () { +pkgdesc="Samba winbind client library" +depends=('glibc') + cd ${srcdir}/${pkgbase}-${_realver}/source3 + mkdir -p ${pkgdir}/usr/lib + for i in libwbclient*; do + cp -a bin/${i}*.so* ${pkgdir}/usr/lib/ + done } package_smbclient () { pkgdesc="Tools to access a server's filespace and printers via SMB" -depends=('readline>=6.0.00' 'popt' 'libldap>=2.4.18-1' 'libcap>=2.16' 'heimdal>=1.2-1' 'db>=4.7' 'e2fsprogs' 'tdb' 'talloc') +depends=('readline' 'popt' 'libldap' 'cifs-utils' 'libcap' 'krb5' 'db' 'e2fsprogs' 'tdb' 'talloc' 'libwbclient') cd ${srcdir}/${pkgbase}-${_realver}/source3 - mkdir -p ${pkgdir}/usr/bin ${pkgdir}/sbin ${pkgdir}/usr/lib + mkdir -p ${pkgdir}/usr/bin ${pkgdir}/usr/lib install -m755 bin/{smbclient,rpcclient,smbspool,smbtree,smbcacls,smbcquotas,smbget,net,nmblookup} ${pkgdir}/usr/bin/ - install -m755 bin/{mount.cifs,umount.cifs} ${pkgdir}/sbin/ - for i in libnetapi* libwbclient* libsmbclient*;do + for i in libnetapi* libsmbclient*;do cp -a bin/${i}*.so* ${pkgdir}/usr/lib/ done install -m755 script/smbtar ${pkgdir}/usr/bin/ - #mkdir -p ${pkgdir}/usr/lib/cups/backend - #ln -sf /usr/bin/smbspool ${pkgdir}/usr/lib/cups/backend/smb + mkdir -p ${pkgdir}/usr/lib/cups/backend + ln -sf /usr/bin/smbspool ${pkgdir}/usr/lib/cups/backend/smb mkdir -p ${pkgdir}/usr/include install -m644 include/libsmbclient.h ${pkgdir}/usr/include/ install -m644 lib/netapi/netapi.h ${pkgdir}/usr/include/ - mkdir -p ${pkgdir}/usr/share/man/man{1,7,8} - for man in smbspool \ - umount.cifs mount.cifs net; do - install -m644 ../docs/manpages/${man}.8 ${pkgdir}/usr/share/man/man8/ - done + mkdir -p ${pkgdir}/usr/share/man/man{1,7} for man in rpcclient smbcacls smbclient smbcquotas smbget \ smbtree smbtar nmblookup; do install -m644 ../docs/manpages/${man}.1 ${pkgdir}/usr/share/man/man1/ @@ -78,25 +86,25 @@ depends=('readline>=6.0.00' 'popt' 'libldap>=2.4.18-1' 'libcap>=2.16' 'heimdal>= package_samba () { pkgdesc="Tools to access a server's filespace and printers via SMB" -backup=(etc/logrotate.d/samba - etc/pam.d/samba +backup=(etc/logrotate.d/samba + etc/pam.d/samba etc/samba/smb.conf etc/xinetd.d/swat etc/conf.d/samba) -depends=('db>=4.7' 'popt' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap>=2.16' 'heimdal>=1.2-1' 'pam' 'gnutls>=2.4.1' 'e2fsprogs' 'tdb' 'talloc') +depends=('db' 'popt' 'libcups' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap' 'krb5' 'pam' 'gnutls' 'e2fsprogs' 'tdb' 'talloc') +install='samba.install' cd ${srcdir}/samba-${_realver}/source3 - mkdir -p ${pkgdir}/var/log/samba mkdir -p ${pkgdir}/etc/samba/private chmod 700 ${pkgdir}/etc/samba/private - make DESTDIR=${pkgdir} install || return 1 + make DESTDIR=${pkgdir} install chmod 644 ${pkgdir}/usr/include/*.h rm -rf ${pkgdir}/usr/var + rm -rf ${pkgdir}/var/run/samba (cd script; cp installbin.sh i; cat i | sed 's/\/sbin\///' > installbin.sh) install -D -m755 ../../samba ${pkgdir}/etc/rc.d/samba install -D -m644 ../../samba.conf.d ${pkgdir}/etc/conf.d/samba mkdir -p ${pkgdir}/etc/samba - cat ../examples/smb.conf.default | \ - sed 's|log file = .*$|log file = /var/log/samba/log.%m|g' >${pkgdir}/etc/samba/smb.conf.default + cat ../examples/smb.conf.default | sed 's|log file = .*$|log file = /var/log/samba/log.%m|g' >${pkgdir}/etc/samba/smb.conf.default install -D -m644 ../../samba.logrotate ${pkgdir}/etc/logrotate.d/samba install -D -m644 ../../swat.xinetd ${pkgdir}/etc/xinetd.d/swat install -D -m644 ../../samba.pam ${pkgdir}/etc/pam.d/samba @@ -106,15 +114,20 @@ depends=('db>=4.7' 'popt' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap>=2.16' 'h # fix logrotate sed -i -e 's|log.%m|%m.log|g' ${pkgdir}/etc/samba/smb.conf.default # nsswitch libraries - install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_wins.so ${pkgdir}/lib/libnss_wins.so - ln -s libnss_wins.so ${pkgdir}/lib/libnss_wins.so.2 - install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_winbind.so ${pkgdir}/lib/libnss_winbind.so + install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_wins.so ${pkgdir}/usr/lib/libnss_wins.so + ln -s libnss_wins.so ${pkgdir}/usr/lib/libnss_wins.so.2 + install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_winbind.so ${pkgdir}/usr/lib/libnss_winbind.so + ln -s libnss_winbind.so ${pkgdir}/usr/lib/libnss_winbind.so.2 + # winbind krb5 locator + mkdir -p ${pkgdir}/usr/lib/krb5/plugins/libkrb5 + install -d -m 0755 ${pkgdir}/usr/lib/krb5/plugins/libkrb5 + install -m 755 bin/winbind_krb5_locator.so ${pkgdir}/usr/lib/krb5/plugins/libkrb5/winbind_krb5_locator.so # remove conflict files of smbclient for man in libsmbclient smbspool \ - umount.cifs mount.cifs net; do + mount.cifs net cifs.upcall; do rm -f ${pkgdir}/usr/share/man/man8/${man}.8 done - for i in libnetapi* libwbclient* libsmbclient*;do + for i in libnetapi* libwbclient* libsmbclient* winbind_krb5*;do rm -f ${pkgdir}/usr/lib/$i done for bin in net \ @@ -122,6 +135,7 @@ depends=('db>=4.7' 'popt' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap>=2.16' 'h smbcquotas smbget smbspool smbtar smbtree; do rm -f ${pkgdir}/usr/bin/$bin done + rm -f ${pkgdir}/usr/sbin/cifs.upcall rm -f ${pkgdir}/usr/include/netapi.h for man in rpcclient smbcacls smbclient smbcquotas \ smbtree smbtar nmblookup smbget; do @@ -134,11 +148,21 @@ depends=('db>=4.7' 'popt' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap>=2.16' 'h rm -f ${pkgdir}/usr/include/libsmbclient.h # copy ldap example install -D -m644 ${srcdir}/samba-${_realver}/examples/LDAP/samba.schema ${pkgdir}/usr/share/doc/samba/examples/LDAP/samba.schema + # install systemd files + for i in smbd nmbd winbindd; do + install -D -m644 ${srcdir}/$i.service ${pkgdir}/usr/lib/systemd/system/$i.service + done + # create ephemeral dirs via tmpfiles rather than shipping them in package + install -D -m644 ${srcdir}/samba.conf ${pkgdir}/usr/lib/tmpfiles.d/samba.conf + rm -rf ${pkgdir}/var/run } -md5sums=('bf6c09ea497a166df8bd672db1d8da8f' - '891b9be03e7adf65c9a00319c76d33e5' +md5sums=('0bea52842d172231c0c0e23ee570d7af' + 'a45a4283723be2b0ae32439dc4496a09' '5697da77590ec092cc8a883bae06093c' 'a4bbfa39fee95bba2e7ad6b535fae7e6' '96f82c38f3f540b53f3e5144900acf17' 'f2f2e348acd1ccb566e95fa8a561b828' - 'c6a38a8c8fa24979e6217aed533358ea') + '389cc4fa3b459360feaa1b3d93274693' + 'ea6a1251be979cb30c6098a28b270d2d' + '455f106ce7a4f983975b3a686eaa85e5' + '8e7ed39b54968e427f9506e9107bfb45') diff --git a/abs/extra/samba/__changelog b/abs/extra/samba/__changelog index 1fdfc4a..bb83999 100644 --- a/abs/extra/samba/__changelog +++ b/abs/extra/samba/__changelog @@ -1,4 +1 @@ -remove fam support -update to 3.5.6 - -remove libcups as dep and build without it. +removed fam/gamin diff --git a/abs/extra/samba/fix-ipv6-mount.patch b/abs/extra/samba/fix-ipv6-mount.patch deleted file mode 100644 index 89bef65..0000000 --- a/abs/extra/samba/fix-ipv6-mount.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- client/mount.cifs.c.orig 2010-03-03 13:42:02.143936727 +1000 -+++ client/mount.cifs.c 2010-03-04 01:53:22.752879004 +1000 -@@ -1563,7 +1563,7 @@ - } - } - -- if (addr->ai_addr->sa_family == AF_INET6 && addr6->sin6_scope_id) { -+ if (addr && addr->ai_addr->sa_family == AF_INET6 && addr6->sin6_scope_id) { - strlcat(options, "%", options_size); - current_len = strnlen(options, options_size); - optionstail = options + current_len; diff --git a/abs/extra/samba/nmbd.service b/abs/extra/samba/nmbd.service new file mode 100644 index 0000000..6e22ef2 --- /dev/null +++ b/abs/extra/samba/nmbd.service @@ -0,0 +1,8 @@ +[Unit] +Description=Samba NetBIOS name server + +[Service] +ExecStart=/usr/sbin/nmbd -F + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/samba/samba b/abs/extra/samba/samba index 1b222d6..6098ee0 100755 --- a/abs/extra/samba/samba +++ b/abs/extra/samba/samba @@ -10,9 +10,9 @@ case "$1" in start) rc=0 stat_busy "Starting Samba Server" - if [ ! -x /var/run/samba ] ; then - install -m755 -g 81 -o 81 -d /var/run/samba - fi + if [ ! -x /var/log/samba ] ; then + install -m755 -d /var/log/samba + fi for d in ${SAMBA_DAEMONS[@]}; do PID=`pidof -o %PPID /usr/sbin/$d` [ -z "$PID" ] && /usr/sbin/$d -D @@ -36,9 +36,9 @@ case "$1" in if [ $rc -gt 0 ]; then stat_fail else - rm /var/run/samba/smbd.pid &>/dev/null - rm /var/run/samba/nmbd.pid &>/dev/null - rm /var/run/samba/winbindd.pid &>/dev/null + rm /run/samba/smbd.pid &>/dev/null + rm /run/samba/nmbd.pid &>/dev/null + rm /run/samba/winbindd.pid &>/dev/null rm_daemon samba stat_done fi diff --git a/abs/extra/samba/samba.conf b/abs/extra/samba/samba.conf new file mode 100644 index 0000000..c12610d --- /dev/null +++ b/abs/extra/samba/samba.conf @@ -0,0 +1 @@ +D /run/samba 0755 - - - diff --git a/abs/extra/samba/samba.install b/abs/extra/samba/samba.install new file mode 100644 index 0000000..d9baeac --- /dev/null +++ b/abs/extra/samba/samba.install @@ -0,0 +1,7 @@ +#!/bin/sh + +post_install() { + systemd-tmpfiles --create /usr/lib/tmpfiles.d/samba.conf +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/samba/samba.logrotate b/abs/extra/samba/samba.logrotate deleted file mode 100644 index 581f4c3..0000000 --- a/abs/extra/samba/samba.logrotate +++ /dev/null @@ -1,9 +0,0 @@ -/var/log/samba/log.smbd /var/log/samba/log.nmbd /var/log/samba/*.log { - notifempty - missingok - sharedscripts - copytruncate - postrotate - /bin/kill -HUP `cat /var/run/samba/*.pid 2>/dev/null` 2>/dev/null || true - endscript -} diff --git a/abs/extra/samba/smbd.service b/abs/extra/samba/smbd.service new file mode 100644 index 0000000..beb9bfa --- /dev/null +++ b/abs/extra/samba/smbd.service @@ -0,0 +1,9 @@ +[Unit] +Description=Samba SMB/CIFS server + +[Service] +ExecStart=/usr/sbin/smbd -F +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/samba/winbindd.service b/abs/extra/samba/winbindd.service new file mode 100644 index 0000000..509c896 --- /dev/null +++ b/abs/extra/samba/winbindd.service @@ -0,0 +1,9 @@ +[Unit] +Description=Samba Winbind daemon + +[Service] +ExecStart=/usr/sbin/winbindd -F +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/sample-media/PKGBUILD b/abs/extra/sample-media/PKGBUILD deleted file mode 100644 index 9851899..0000000 --- a/abs/extra/sample-media/PKGBUILD +++ /dev/null @@ -1,37 +0,0 @@ -pkgname=sample-media -pkgver=1 -pkgrel=5 -pkgdesc="sample media for testing" -url="" -license="public domain" -depends=(media_dirs) -makedepends=() -conflicts=() -replaces=() -backup=() -install=sample.install -provides=("") -source=() -md5sums=() -arch=('i686') - -build() { -cd $startdir/src/ -mkdir -p myth/music -mkdir -p myth/gallery -mkdir -p myth/video -mkdir -p myth/games/snes/roms - - -cp -rp $startdir/audio/* myth/music -cp -rp $startdir/images/* myth/gallery -cp -rp $startdir/video/* myth/video -cp -rp $startdir/rom/* myth/games/snes/roms - -cd myth -chown -R mythtv media -chmod -R 777 media -cd $startdir/src -cp -rp myth $startdir/pkg/ - -} diff --git a/abs/extra/sample-media/audio/05-Hush.mp3 b/abs/extra/sample-media/audio/05-Hush.mp3 Binary files differdeleted file mode 100644 index e335abb..0000000 --- a/abs/extra/sample-media/audio/05-Hush.mp3 +++ /dev/null diff --git a/abs/extra/sample-media/images/115_1573.jpg b/abs/extra/sample-media/images/115_1573.jpg Binary files differdeleted file mode 100644 index f626325..0000000 --- a/abs/extra/sample-media/images/115_1573.jpg +++ /dev/null diff --git a/abs/extra/sample-media/images/345-1217206791B81W.jpg b/abs/extra/sample-media/images/345-1217206791B81W.jpg Binary files differdeleted file mode 100644 index 646ae95..0000000 --- a/abs/extra/sample-media/images/345-1217206791B81W.jpg +++ /dev/null diff --git a/abs/extra/sample-media/images/classic-menugraph.png b/abs/extra/sample-media/images/classic-menugraph.png Binary files differdeleted file mode 100644 index bedbd93..0000000 --- a/abs/extra/sample-media/images/classic-menugraph.png +++ /dev/null diff --git a/abs/extra/sample-media/images/dvr_menugraph.png b/abs/extra/sample-media/images/dvr_menugraph.png Binary files differdeleted file mode 100644 index 712ab36..0000000 --- a/abs/extra/sample-media/images/dvr_menugraph.png +++ /dev/null diff --git a/abs/extra/sample-media/images/menu_diagram_color.png b/abs/extra/sample-media/images/menu_diagram_color.png Binary files differdeleted file mode 100644 index d364d94..0000000 --- a/abs/extra/sample-media/images/menu_diagram_color.png +++ /dev/null diff --git a/abs/extra/sample-media/rom/PACMAN.SMC b/abs/extra/sample-media/rom/PACMAN.SMC Binary files differdeleted file mode 100644 index 7a1f403..0000000 --- a/abs/extra/sample-media/rom/PACMAN.SMC +++ /dev/null diff --git a/abs/extra/sample-media/sample.install b/abs/extra/sample-media/sample.install deleted file mode 100644 index 123d060..0000000 --- a/abs/extra/sample-media/sample.install +++ /dev/null @@ -1,41 +0,0 @@ -# This is a default template for a post-install scriptlet. You can -# remove any functions you don't need (and this header). - -# arg 1: the new package version -pre_install() { - /bin/true -} - -# arg 1: the new package version -post_install() { - cd / - chown -R mythtv:users /myth - -} - -# arg 1: the new package version -# arg 2: the old package version -pre_upgrade() { - /bin/true -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - depmod -A - /bin/true -} - -# arg 1: the old package version -pre_remove() { - /bin/true -} - -# arg 1: the old package version -post_remove() { - /bin/true -} - -op=$1 -shift -$op $* diff --git a/abs/extra/sample-media/video/TripThe1939.mpeg b/abs/extra/sample-media/video/TripThe1939.mpeg Binary files differdeleted file mode 100644 index 84f9ba3..0000000 --- a/abs/extra/sample-media/video/TripThe1939.mpeg +++ /dev/null diff --git a/abs/extra/scanfw/PKGBUILD b/abs/extra/scanfw/PKGBUILD index 21d4f29..e320880 100644 --- a/abs/extra/scanfw/PKGBUILD +++ b/abs/extra/scanfw/PKGBUILD @@ -3,7 +3,7 @@ pkgname=scanfw pkgver=98d.beta pkgrel=1 pkgdesc="A CCI scanner for MythTV" -arch=('i686') +arch=('i686' 'x86_64' ) url="https://help.ubuntu.com/community/MythTV_Firewire/scanfw" license=('GPL2') depends=('libraw1394' 'libiec61883' 'libavc1394') diff --git a/abs/extra/schedulesdirect_qam_scripts/PKGBUILD b/abs/extra/schedulesdirect_qam_scripts/PKGBUILD new file mode 100644 index 0000000..f9fda2e --- /dev/null +++ b/abs/extra/schedulesdirect_qam_scripts/PKGBUILD @@ -0,0 +1,19 @@ +pkgname=schedulesdirect_qam_scripts +pkgver=1 +pkgrel=1 +pkgdesc="Perl scripts provided to collect QAM info maps" +arch=('i686' 'x86_64') +url="http://forums.schedulesdirect.org/viewtopic.php?f=3&t=1214" +license=('GPL') +depends=('perl' 'perl-file-homedir') +options=() +source=("https://raw.github.com/rkulagowski/qamscanner/master/qamscanner.pl" "https://raw.github.com/rkulagowski/qamextract/master/qamextract.pl" ) + +build() { + cd "${srcdir}" + install -Dm755 qamscanner.pl "${pkgdir}"/usr/bin/qamscanner.pl + install -Dm755 qamextract.pl "${pkgdir}"/usr/bin/qamextract.pl + +} +md5sums=('fc486b1a318c664fcba6d07912e4da5e' + 'df317bd1d8a5b4e1b005d7b7196c0d1a') diff --git a/abs/extra/schroedinger/PKGBUILD b/abs/extra/schroedinger/PKGBUILD index 0de2d23..7a8e011 100644 --- a/abs/extra/schroedinger/PKGBUILD +++ b/abs/extra/schroedinger/PKGBUILD @@ -1,29 +1,29 @@ -# $Id: PKGBUILD 79531 2010-05-04 09:01:27Z ibiru $ +# $Id: PKGBUILD 149308 2012-02-06 18:45:09Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Contributor: Timm Preetz <timm@preetz.us> # Contributor: rabyte <rabyte__gmail> pkgname=schroedinger -pkgver=1.0.9 +pkgver=1.0.11 pkgrel=1 pkgdesc="An implemenation of the Dirac video codec in ANSI C code" arch=('i686' 'x86_64') url="http://www.diracvideo.org/" -license=('GPL2' 'LGPL2' 'MPL' 'MIT') -depends=('orc>=0.4.3') -makedepends=('pkgconfig') +license=('GPL2' 'LGPL2.1' 'MPL' 'MIT') +depends=('orc' 'gcc-libs') options=(!libtool) source=(http://www.diracvideo.org/download/schroedinger/$pkgname-$pkgver.tar.gz) -md5sums=('d67ec48b7c506db8c8b49156bf409e60') +md5sums=('da6af08e564ca1157348fb8d92efc891') build() { - cd $srcdir/$pkgname-$pkgver - - export LDFLAGS="${LDFLAGS//-Wl,--as-needed}" + cd "$srcdir/$pkgname-$pkgver" ./configure --prefix=/usr - make || return 1 - make DESTDIR=$pkgdir install - - install -m644 -D COPYING.MIT $pkgdir/usr/share/licenses/$pkgname/COPYING.MIT + make } +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + install -m644 -D COPYING.MIT "$pkgdir/usr/share/licenses/$pkgname/COPYING.MIT" +} diff --git a/abs/extra/scons/PKGBUILD b/abs/extra/scons/PKGBUILD index edc4fbc..6563bf2 100644 --- a/abs/extra/scons/PKGBUILD +++ b/abs/extra/scons/PKGBUILD @@ -1,21 +1,21 @@ -# $Id: PKGBUILD 90304 2010-09-10 14:41:36Z schiv $ +# $Id: PKGBUILD 151216 2012-02-25 08:28:41Z pierre $ # Maintainer: Ray Rashif <schiv@archlinux.org> # Contributor: damir <damir@archlinux.org> # Contributor: Lukas Sabota <punkrockguy318@comcast.net> # Contributor: Brice Carpentier <brice@dlfp.org> pkgname=scons -pkgver=2.0.1 -pkgrel=1 +pkgver=2.1.0 +pkgrel=2 pkgdesc="Extensible Python-based build utility" arch=('any') url="http://scons.org" license=('MIT') depends=('python2') -source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('beca648b894cdbf85383fffc79516d18') +source=("http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz") +md5sums=('47daf989e303a045b76c11236df719df') -build() { +package() { cd "$srcdir/$pkgname-$pkgver" python2 setup.py install --standard-lib \ @@ -31,4 +31,3 @@ build() { } # vim:set ts=2 sw=2 et: - diff --git a/abs/extra/screen/PKGBUILD b/abs/extra/screen/PKGBUILD index c22d539..3413734 100644 --- a/abs/extra/screen/PKGBUILD +++ b/abs/extra/screen/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 131720 2011-07-14 01:42:52Z allan $ +# $Id: PKGBUILD 147962 2012-01-29 04:41:21Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Committer: dorphell <dorphell@gmx.net> pkgname=screen pkgver=4.0.3 -pkgrel=12 +pkgrel=13 _ptygroup=5 #the UID of our PTY/TTY group pkgdesc="Full-screen window manager that multiplexes a physical terminal" arch=('i686' 'x86_64') diff --git a/abs/extra/scte65scan/PKGBUILD b/abs/extra/scte65scan/PKGBUILD index 221b7ba..1d15ce0 100644 --- a/abs/extra/scte65scan/PKGBUILD +++ b/abs/extra/scte65scan/PKGBUILD @@ -3,7 +3,7 @@ pkgname=scte65scan pkgver=0.2.1 pkgrel=1 pkgdesc="A reader and parser of SCTE-65 in-band SI data with HDHomerun support." -arch=('i686') +arch=('i686' 'x86_64') url="http://scte65scan.sourceforge.net/" license=('GPL') source=(http://downloads.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tgz http://download.silicondust.com/hdhomerun/libhdhomerun_20090830.tgz) diff --git a/abs/extra/sdl_gfx/PKGBUILD b/abs/extra/sdl_gfx/PKGBUILD index 393f047..6da6577 100644 --- a/abs/extra/sdl_gfx/PKGBUILD +++ b/abs/extra/sdl_gfx/PKGBUILD @@ -1,9 +1,10 @@ -# $Id: PKGBUILD 96464 2010-10-21 10:33:40Z allan $ -# Maintainer: Allan McRae <allan@archlinux.org> +# $Id: PKGBUILD 165865 2012-09-01 20:41:32Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=sdl_gfx -pkgver=2.0.22 +pkgver=2.0.24 pkgrel=1 pkgdesc="SDL Graphic Primitives" arch=('i686' 'x86_64') @@ -12,10 +13,10 @@ options=(!libtool) url="http://www.ferzkopp.net/joomla/software-mainmenu-14/4-ferzkopps-linux-software/19-sdlgfx" source=(http://www.ferzkopp.net/Software/SDL_gfx-2.0/SDL_gfx-${pkgver}.tar.gz) depends=('sdl') -md5sums=('330f291f1f09a1bdf397c9b40d92ca41') +md5sums=('838514185ff9a3b6377760aaa52fef8a') build() { - cd ${srcdir}/SDL_gfx-${pkgver} + cd SDL_gfx-${pkgver} if [ "${CARCH}" == "x86_64" ]; then ./configure --prefix=/usr --disable-mmx @@ -27,6 +28,6 @@ build() { } package() { - cd ${srcdir}/SDL_gfx-${pkgver} + cd SDL_gfx-${pkgver} make DESTDIR=${pkgdir} install } diff --git a/abs/extra/sdl_image/PKGBUILD b/abs/extra/sdl_image/PKGBUILD index 062490b..3f5fefb 100644 --- a/abs/extra/sdl_image/PKGBUILD +++ b/abs/extra/sdl_image/PKGBUILD @@ -1,22 +1,29 @@ -# $Id$ -# Maintainer: Allan McRae <allan@archlinux.org> +# $Id: PKGBUILD 148924 2012-02-05 11:56:07Z ibiru $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=sdl_image -pkgver=1.2.10 +pkgver=1.2.12 pkgrel=2 pkgdesc="A simple library to load images of various formats as SDL surfaces" arch=('i686' 'x86_64') -license=('LGPL') +license=('custom') depends=('sdl>=1.2.13' 'libpng' 'libjpeg>=7' 'libtiff' 'zlib') options=('!libtool') url="http://www.libsdl.org/projects/SDL_image/" -source=(http://www.libsdl.org/projects/SDL_image/release/SDL_image-${pkgver}.tar.gz) -md5sums=('6c06584b31559e2b59f2b982d0d1f628') +source=(http://www.libsdl.org/projects/SDL_image/release/SDL_image-$pkgver.tar.gz) +md5sums=('a0f9098ebe5400f0bdc9b62e60797ecb') build() { - cd ${srcdir}/SDL_image-${pkgver} - ./configure --prefix=/usr - make || return 1 - make DESTDIR=${pkgdir} install + cd "$srcdir/SDL_image-$pkgver" + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd "$srcdir/SDL_image-$pkgver" + make DESTDIR="$pkgdir" install + + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } diff --git a/abs/extra/sdl_mixer/PKGBUILD b/abs/extra/sdl_mixer/PKGBUILD index f241519..626d401 100644 --- a/abs/extra/sdl_mixer/PKGBUILD +++ b/abs/extra/sdl_mixer/PKGBUILD @@ -1,29 +1,48 @@ -# $Id: PKGBUILD 70367 2010-02-26 13:24:25Z allan $ -# Maintainer: Allan McRae <allan@archlinux.org> +# $Id: PKGBUILD 170804 2012-11-12 02:00:36Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> # Contributor: Lukas Sabota <punkrockguy318@cocmast.net> (Timidity Patch) pkgname=sdl_mixer -pkgver=1.2.11 -pkgrel=2 +pkgver=1.2.12 +pkgrel=3 pkgdesc="A simple multi-channel audio mixer" arch=('i686' 'x86_64') url="http://www.libsdl.org/projects/SDL_mixer/" -license=('LGPL' 'GPL') +license=('custom') depends=('sdl>=1.2.12' 'libvorbis' 'libmikmod' 'smpeg') +makedepends=('fluidsynth') +optdepends=('fluidsynth: MIDI software synth, replaces built-in timidity') options=('!libtool') -source=(http://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-${pkgver}.tar.gz) -md5sums=('65ada3d997fe85109191a5fb083f248c') +source=(http://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-$pkgver.tar.gz + mikmod1.patch mikmod2.patch fluidsynth-volume.patch double-free-crash.patch) +md5sums=('e03ff73d77a55e3572ad0217131dc4a1' + '95a6d58686fe3017d58c39e3e1dd40f7' + 'd823994c3961f2ff48644478f27a27d1' + 'eed8b61defde36ac2077ef96d868ea3e' + '4b4835c63297f016a198cacb7dd68ec1') build() { - cd ${srcdir}/SDL_mixer-${pkgver} + cd "$srcdir/SDL_mixer-$pkgver" - sed -e "/CONFIG_FILE_ETC/s/\/etc\/timidity.cfg/\/etc\/timidity++\/timidity.cfg/" \ - -e "/DEFAULT_PATH/s/\/etc\/timidity/\/etc\/timidity++/" \ - -e "/DEFAULT_PATH2/s/\/usr\/local\/lib\/timidity/\/usr\/lib\/timidity/" \ + patch -Np1 -i ../mikmod1.patch + patch -Np1 -i ../mikmod2.patch + patch -Np1 -i ../fluidsynth-volume.patch + patch -Np1 -i ../double-free-crash.patch + + sed -e "/CONFIG_FILE_ETC/s|/etc/timidity.cfg|/etc/timidity++/timidity.cfg|" \ + -e "/DEFAULT_PATH/s|/etc/timidity|/etc/timidity++|" \ + -e "/DEFAULT_PATH2/s|/usr/local/lib/timidity|/usr/lib/timidity|" \ -i timidity/config.h - ./configure --prefix=/usr - make || return 1 - make DESTDIR=${pkgdir} install + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd "$srcdir/SDL_mixer-$pkgver" + make DESTDIR="$pkgdir" install + + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } diff --git a/abs/extra/sdl_mixer/double-free-crash.patch b/abs/extra/sdl_mixer/double-free-crash.patch new file mode 100644 index 0000000..6f4e6a1 --- /dev/null +++ b/abs/extra/sdl_mixer/double-free-crash.patch @@ -0,0 +1,32 @@ + +# HG changeset patch +# User Sam Lantinga <slouken@libsdl.org> +# Date 1329087437 18000 +# Node ID 2d713670db9b832b0c5aa700824900bc1fc3c3cd +# Parent df72f22b4b411ad4b08f924329678aabd5ac97d6 +Fixed 1418 - crash on double free if loading WAV file failed + +diff -r df72f22b4b41 -r 2d713670db9b mixer.c +--- a/mixer.c Mon Jan 30 21:41:45 2012 -0500 ++++ b/mixer.c Sun Feb 12 17:57:17 2012 -0500 +@@ -610,13 +610,15 @@ + break; + default: + SDL_SetError("Unrecognized sound file type"); +- return(0); ++ if ( freesrc ) { ++ SDL_RWclose(src); ++ } ++ loaded = NULL; ++ break; + } + if ( !loaded ) { ++ /* The individual loaders have closed src if needed */ + SDL_free(chunk); +- if ( freesrc ) { +- SDL_RWclose(src); +- } + return(NULL); + } + + diff --git a/abs/extra/sdl_mixer/fluidsynth-volume.patch b/abs/extra/sdl_mixer/fluidsynth-volume.patch new file mode 100644 index 0000000..cf346ed --- /dev/null +++ b/abs/extra/sdl_mixer/fluidsynth-volume.patch @@ -0,0 +1,23 @@ + +# HG changeset patch +# User James Le Cuirot <chewi@aura-online.co.uk> +# Date 1330896767 0 +# Node ID c92001a2c18f628698c58aa4e05a7335d10d0e9e +# Parent 2d713670db9b832b0c5aa700824900bc1fc3c3cd +Raise the maximum FluidSynth gain from 0.8 to 1.2 because apparently the former is too quiet in some cases. + +diff -r 2d713670db9b -r c92001a2c18f fluidsynth.c +--- a/fluidsynth.c Sun Feb 12 17:57:17 2012 -0500 ++++ b/fluidsynth.c Sun Mar 04 21:32:47 2012 +0000 +@@ -176,8 +176,8 @@ + + void fluidsynth_setvolume(FluidSynthMidiSong *song, int volume) + { +- /* FluidSynth's default is 0.2. Make 0.8 the maximum. */ +- fluidsynth.fluid_synth_set_gain(song->synth, (float) (volume * 0.00625)); ++ /* FluidSynth's default is 0.2. Make 1.2 the maximum. */ ++ fluidsynth.fluid_synth_set_gain(song->synth, (float) (volume * 1.2 / MIX_MAX_VOLUME)); + } + + int fluidsynth_playsome(FluidSynthMidiSong *song, void *dest, int dest_len) + diff --git a/abs/extra/sdl_mixer/mikmod1.patch b/abs/extra/sdl_mixer/mikmod1.patch new file mode 100644 index 0000000..b3bb829 --- /dev/null +++ b/abs/extra/sdl_mixer/mikmod1.patch @@ -0,0 +1,67 @@ + +# HG changeset patch +# User Sam Lantinga <slouken@libsdl.org> +# Date 1342998807 25200 +# Node ID 56cad6484b04f83c8d42428c755a046678506436 +# Parent c92001a2c18f628698c58aa4e05a7335d10d0e9e +Paul P Komkoff Jr fixed malloc/free mismatch in the MikMod driver + +diff -r c92001a2c18f -r 56cad6484b04 CHANGES +--- a/CHANGES Sun Mar 04 21:32:47 2012 +0000 ++++ b/CHANGES Sun Jul 22 16:13:27 2012 -0700 +@@ -1,3 +1,7 @@ ++1.2.13: ++Paul P Komkoff Jr - Sun Jul 22 16:12:28 PDT 2012 ++ * Fixed malloc/free mismatch in the MikMod driver ++ + 1.2.12: + Sam Lantinga - Sat Jan 14 22:00:29 2012 -0500 + * Fixed seek offset with SMPEG (was relative, should be absolute) +diff -r c92001a2c18f -r 56cad6484b04 dynamic_mod.c +--- a/dynamic_mod.c Sun Mar 04 21:32:47 2012 +0000 ++++ b/dynamic_mod.c Sun Jul 22 16:13:27 2012 -0700 +@@ -93,6 +93,13 @@ + SDL_UnloadObject(mikmod.handle); + return -1; + } ++ mikmod.MikMod_free = ++ (void (*)(void*)) ++ SDL_LoadFunction(mikmod.handle, "MikMod_free"); ++ if ( mikmod.MikMod_free == NULL ) { ++ SDL_UnloadObject(mikmod.handle); ++ return -1; ++ } + mikmod.Player_Active = + (BOOL (*)(void)) + SDL_LoadFunction(mikmod.handle, "Player_Active"); +diff -r c92001a2c18f -r 56cad6484b04 dynamic_mod.h +--- a/dynamic_mod.h Sun Mar 04 21:32:47 2012 +0000 ++++ b/dynamic_mod.h Sun Jul 22 16:13:27 2012 -0700 +@@ -35,6 +35,7 @@ + void (*MikMod_RegisterDriver)(struct MDRIVER*); + int* MikMod_errno; + char* (*MikMod_strerror)(int); ++ void (*MikMod_free)(void*); + BOOL (*Player_Active)(void); + void (*Player_Free)(MODULE*); + MODULE* (*Player_LoadGeneric)(MREADER*,int,BOOL); +diff -r c92001a2c18f -r 56cad6484b04 music_mod.c +--- a/music_mod.c Sun Mar 04 21:32:47 2012 +0000 ++++ b/music_mod.c Sun Jul 22 16:13:27 2012 -0700 +@@ -109,13 +109,13 @@ + + list = mikmod.MikMod_InfoDriver(); + if ( list ) +- free(list); ++ mikmod.MikMod_free(list); + else + mikmod.MikMod_RegisterDriver(mikmod.drv_nos); + + list = mikmod.MikMod_InfoLoader(); + if ( list ) +- free(list); ++ mikmod.MikMod_free(list); + else + mikmod.MikMod_RegisterAllLoaders(); + + diff --git a/abs/extra/sdl_mixer/mikmod2.patch b/abs/extra/sdl_mixer/mikmod2.patch new file mode 100644 index 0000000..6e89ca8 --- /dev/null +++ b/abs/extra/sdl_mixer/mikmod2.patch @@ -0,0 +1,35 @@ + +# HG changeset patch +# User Sam Lantinga <slouken@libsdl.org> +# Date 1343000017 25200 +# Node ID 2ebb0d016f277f7f643d8a66ed0e1099e10d1fba +# Parent 56cad6484b04f83c8d42428c755a046678506436 +Fixed normal linking with libmikmod and linking with earlier versions of libmikmod. + +diff -r 56cad6484b04 -r 2ebb0d016f27 dynamic_mod.c +--- a/dynamic_mod.c Sun Jul 22 16:13:27 2012 -0700 ++++ b/dynamic_mod.c Sun Jul 22 16:33:37 2012 -0700 +@@ -97,8 +97,8 @@ + (void (*)(void*)) + SDL_LoadFunction(mikmod.handle, "MikMod_free"); + if ( mikmod.MikMod_free == NULL ) { +- SDL_UnloadObject(mikmod.handle); +- return -1; ++ /* libmikmod 3.1 and earlier doesn't have it */ ++ mikmod.MikMod_free = free; + } + mikmod.Player_Active = + (BOOL (*)(void)) +@@ -246,6 +246,11 @@ + mikmod.MikMod_RegisterDriver = MikMod_RegisterDriver; + mikmod.MikMod_errno = &MikMod_errno; + mikmod.MikMod_strerror = MikMod_strerror; ++#if LIBMIKMOD_VERSION < ((3<<16)|(2<<8)) ++ mikmod.MikMod_free = free; ++#else ++ mikmod.MikMod_free = MikMod_free; ++#endif + mikmod.Player_Active = Player_Active; + mikmod.Player_Free = Player_Free; + mikmod.Player_LoadGeneric = Player_LoadGeneric; + diff --git a/abs/extra/sdl_net/PKGBUILD b/abs/extra/sdl_net/PKGBUILD index ac3073e..76605a5 100644 --- a/abs/extra/sdl_net/PKGBUILD +++ b/abs/extra/sdl_net/PKGBUILD @@ -1,22 +1,29 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: Alexander Baldeck <alexander@archlinux.org> +# $Id: PKGBUILD 146689 2012-01-16 11:36:24Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: dorphell <dorphell@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> + pkgname=sdl_net -pkgver=1.2.7 -pkgrel=2 +pkgver=1.2.8 +pkgrel=1 pkgdesc="A small sample cross-platform networking library" -arch=(i686 x86_64) -license=(GPL) +arch=('i686' 'x86_64') +license=('custom') +url="http://www.libsdl.org/projects/SDL_net/" depends=('sdl') options=('!libtool') -url="http://www.libsdl.org/projects/SDL_net/" -source=(http://www.libsdl.org/projects/SDL_net/release/SDL_net-${pkgver}.tar.gz) +source=(http://www.libsdl.org/projects/SDL_net/release/SDL_net-$pkgver.tar.gz) +md5sums=('20e64e61d65662db66c379034f11f718') build() { - cd ${startdir}/src/SDL_net-${pkgver} - ./configure --prefix=/usr - make || return 1 - make DESTDIR=${startdir}/pkg install + cd "$srcdir/SDL_net-$pkgver" + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd "$srcdir/SDL_net-$pkgver" + make DESTDIR="$pkgdir" install + + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } -md5sums=('6bd4662d1423810f3140d4da21b6d912') diff --git a/abs/extra/sdl_pango/PKGBUILD b/abs/extra/sdl_pango/PKGBUILD index 705e900..2587f1e 100644 --- a/abs/extra/sdl_pango/PKGBUILD +++ b/abs/extra/sdl_pango/PKGBUILD @@ -1,24 +1,33 @@ -# $Id: PKGBUILD 8769 2008-08-16 05:40:38Z eric $ -# +# $Id: PKGBUILD 149427 2012-02-07 16:56:19Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.com> # Contributor: gyo <nucleogeek@gmail.com> pkgname=sdl_pango pkgver=0.1.2 -pkgrel=1 +pkgrel=4 pkgdesc="Pango SDL binding" arch=('i686' 'x86_64') url="http://sdlpango.sourceforge.net/" -license="" +license=('LGPL') depends=('pango' 'sdl') options=('!libtool') -source=(http://switch.dl.sourceforge.net/sourceforge/sdlpango/SDL_Pango-$pkgver.tar.gz http://zarb.org/~gc/t/SDL_Pango-$pkgver-API-adds.patch) -md5sums=('85bbf9bb7b1cee0538154dadd045418c' '5decf3d7eb724e27548af3142131a2f6') +source=(http://downloads.sourceforge.net/sourceforge/sdlpango/SDL_Pango-$pkgver.tar.gz + SDL_Pango-$pkgver-API-adds.patch + matrix_declarations.patch) +md5sums=('85bbf9bb7b1cee0538154dadd045418c' + '5decf3d7eb724e27548af3142131a2f6' + '1067d401f4df54c7eb84ac3fd56ab76f') build() { - _prefixname=SDL_Pango - cd $startdir/src/$_prefixname-$pkgver - patch -Np0 < $startdir/src/$_prefixname-$pkgver-API-adds.patch + cd $srcdir/SDL_Pango-$pkgver + patch -Np0 -i $srcdir/SDL_Pango-$pkgver-API-adds.patch + patch -Np1 -i $srcdir/matrix_declarations.patch ./configure --prefix=/usr - make || return 1 - make DESTDIR=$startdir/pkg install + make +} + +package() { + cd $srcdir/SDL_Pango-$pkgver + make DESTDIR=$pkgdir install } diff --git a/abs/extra/sdl_pango/matrix_declarations.patch b/abs/extra/sdl_pango/matrix_declarations.patch new file mode 100644 index 0000000..c35d0a7 --- /dev/null +++ b/abs/extra/sdl_pango/matrix_declarations.patch @@ -0,0 +1,131 @@ +Index: SDL_Pango-0.1.2/src/SDL_Pango.c +=================================================================== +--- SDL_Pango-0.1.2.orig/src/SDL_Pango.c 2007-09-18 15:03:10.732910311 +0200 ++++ SDL_Pango-0.1.2/src/SDL_Pango.c 2007-09-18 15:04:41.970109622 +0200 +@@ -286,6 +286,59 @@ + } contextImpl;
+
+
++const SDLPango_Matrix _MATRIX_WHITE_BACK
++ = {255, 0, 0, 0,
++ 255, 0, 0, 0,
++ 255, 0, 0, 0,
++ 255, 255, 0, 0,};
++
++/*!
++ Specifies white back and black letter.
++*/
++const SDLPango_Matrix *MATRIX_WHITE_BACK = &_MATRIX_WHITE_BACK;
++
++const SDLPango_Matrix _MATRIX_BLACK_BACK
++ = {0, 255, 0, 0,
++ 0, 255, 0, 0,
++ 0, 255, 0, 0,
++ 255, 255, 0, 0,};
++/*!
++ Specifies black back and white letter.
++*/
++const SDLPango_Matrix *MATRIX_BLACK_BACK = &_MATRIX_BLACK_BACK;
++
++const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_BLACK_LETTER
++ = {0, 0, 0, 0,
++ 0, 0, 0, 0,
++ 0, 0, 0, 0,
++ 0, 255, 0, 0,};
++/*!
++ Specifies transparent back and black letter.
++*/
++const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER = &_MATRIX_TRANSPARENT_BACK_BLACK_LETTER;
++
++const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_WHITE_LETTER
++ = {255, 255, 0, 0,
++ 255, 255, 0, 0,
++ 255, 255, 0, 0,
++ 0, 255, 0, 0,};
++/*!
++ Specifies transparent back and white letter.
++*/
++const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER = &_MATRIX_TRANSPARENT_BACK_WHITE_LETTER;
++
++const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER
++ = {255, 255, 0, 0,
++ 255, 255, 0, 0,
++ 255, 255, 0, 0,
++ 0, 0, 0, 0,};
++/*!
++ Specifies transparent back and transparent letter.
++ This is useful for KARAOKE like rendering.
++*/
++const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER = &_MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER;
++
++
+ /*!
+ Initialize the Glib and Pango API.
+ This must be called before using other functions in this library,
+Index: SDL_Pango-0.1.2/src/SDL_Pango.h +=================================================================== +--- SDL_Pango-0.1.2.orig/src/SDL_Pango.h 2007-09-18 15:03:10.732910311 +0200 ++++ SDL_Pango-0.1.2/src/SDL_Pango.h 2007-09-18 15:06:24.919976401 +0200 +@@ -47,57 +47,27 @@ + Uint8 m[4][4]; /*! Matrix variables */
+ } SDLPango_Matrix;
+
+-const SDLPango_Matrix _MATRIX_WHITE_BACK
+- = {255, 0, 0, 0,
+- 255, 0, 0, 0,
+- 255, 0, 0, 0,
+- 255, 255, 0, 0,};
+-
+ /*!
+ Specifies white back and black letter.
+ */
+-const SDLPango_Matrix *MATRIX_WHITE_BACK = &_MATRIX_WHITE_BACK;
+-
+-const SDLPango_Matrix _MATRIX_BLACK_BACK
+- = {0, 255, 0, 0,
+- 0, 255, 0, 0,
+- 0, 255, 0, 0,
+- 255, 255, 0, 0,};
++extern const SDLPango_Matrix *MATRIX_WHITE_BACK;
+ /*!
+ Specifies black back and white letter.
+ */
+-const SDLPango_Matrix *MATRIX_BLACK_BACK = &_MATRIX_BLACK_BACK;
+-
+-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_BLACK_LETTER
+- = {0, 0, 0, 0,
+- 0, 0, 0, 0,
+- 0, 0, 0, 0,
+- 0, 255, 0, 0,};
++extern const SDLPango_Matrix *MATRIX_BLACK_BACK;
+ /*!
+ Specifies transparent back and black letter.
+ */
+-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER = &_MATRIX_TRANSPARENT_BACK_BLACK_LETTER;
+-
+-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_WHITE_LETTER
+- = {255, 255, 0, 0,
+- 255, 255, 0, 0,
+- 255, 255, 0, 0,
+- 0, 255, 0, 0,};
++extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER;
+ /*!
+ Specifies transparent back and white letter.
+ */
+-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER = &_MATRIX_TRANSPARENT_BACK_WHITE_LETTER;
+-
+-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER
+- = {255, 255, 0, 0,
+- 255, 255, 0, 0,
+- 255, 255, 0, 0,
+- 0, 0, 0, 0,};
++extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER;
+ /*!
+ Specifies transparent back and transparent letter.
+ This is useful for KARAOKE like rendering.
+ */
+-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER = &_MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER;
++extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER;
+
+ /*!
+ Specifies direction of text. See Pango reference for detail
diff --git a/abs/extra/sdl_perl/PKGBUILD b/abs/extra/sdl_perl/PKGBUILD deleted file mode 100644 index 82552e8..0000000 --- a/abs/extra/sdl_perl/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 85950 2010-07-22 19:09:33Z kevin $ -# Maintainer: Allan McRae <allan@archlinux.org> -# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca> - -pkgname=sdl_perl -_realname=SDL_Perl -pkgver=2.2.6 -pkgrel=4 -pkgdesc="A Perl wrapper for SDL" -arch=('i686' 'x86_64') -license=('LGPL') -url="http://sdl.perl.org" -depends=('perl>=5.10.1' 'sdl_net' 'sdl_ttf' 'sdl_image>=1.2.8' 'sdl_mixer>=1.2.10' - 'mesa' 'sdl_gfx>=2.0.20' 'smpeg') -makedepends=('perl-yaml') -options=(!emptydirs) -source=(http://search.cpan.org/CPAN/authors/id/K/KT/KTHAKORE/${_realname}-v${pkgver}.tar.gz) -md5sums=('445950ca7b9991f34ec792bbac8386b6') - -build() { - cd "${srcdir}/${_realname}-v${pkgver}" - # install module in vendor directories - perl Build.PL installdirs=vendor destdir="${pkgdir}" \ - --config man1ext=1p --config man3ext=3pm || return 1 - perl Build || return 1 - perl Build install || return 1 -} diff --git a/abs/extra/sdl_sound/PKGBUILD b/abs/extra/sdl_sound/PKGBUILD deleted file mode 100644 index cf47cae..0000000 --- a/abs/extra/sdl_sound/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 22259 2008-12-24 15:26:14Z allan $ -# Maintainer: Allan McRae <allan@archlinux.org> -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> - -pkgname=sdl_sound -pkgver=1.0.3 -pkgrel=2 -pkgdesc="A library to decode several popular sound file formats, such as .WAV and .MP3" -arch=('i686' 'x86_64') -url="http://icculus.org/SDL_sound/" -license=('LGPL') -depends=('sdl' 'libmikmod' 'libvorbis' 'flac' 'speex' 'smpeg') -options=('!libtool') -source=(http://icculus.org/SDL_sound/downloads/SDL_sound-$pkgver.tar.gz - flac.patch) -md5sums=('aa09cd52df85d29bee87a664424c94b5' - '302aa9dc94cc71dd3339ca3177d36e1c') - -build() { - cd ${srcdir}/SDL_sound-${pkgver} - - CFLAGS="$CFLAGS -I/usr/include/smpeg" \ - CXXFLAGS="$CXXFLAGS -I/usr/include/smpeg" \ - ./configure --prefix=/usr - - make || return 1 - make DESTDIR=${pkgdir} install -} - diff --git a/abs/extra/sdl_sound/flac.patch b/abs/extra/sdl_sound/flac.patch deleted file mode 100644 index d0ed491..0000000 --- a/abs/extra/sdl_sound/flac.patch +++ /dev/null @@ -1,126 +0,0 @@ -diff -u -r SDL_sound-1.0.1/configure.in SDL_sound-1.0.1-flac/configure.in ---- SDL_sound-1.0.1/configure.in 2003-10-12 20:49:54.000000000 +0200 -+++ SDL_sound-1.0.1-flac/configure.in 2006-12-11 20:43:46.546583251 +0100 -@@ -155,9 +155,12 @@ - dnl FLAC developers tend to break their API with every release, so we're - dnl checking for the latest-and-greatest here so we don't have to support - dnl obsolete versions. -+dnl Starting with FLAC 1.1.3: -+dnl libFLAC supports Ogg FLAC (no more libOggFLAC) so we also need -logg -+dnl the libFLAC .so version is also #defined in FLAC/export.h - - dnl Hooray for shitty autoconf bugs! --x="C__seekable_stream_decoder_process_single" -+x="C__stream_decoder_process_single" - flcsym="FLA$x" - dnl Check for libFLAC - AC_ARG_ENABLE(flac, -@@ -167,7 +170,7 @@ - AC_CHECK_HEADER(FLAC/stream_decoder.h, have_flac_hdr=yes) - AC_CHECK_LIB(FLAC, $flcsym, have_flac_lib=yes) - if test x$have_flac_hdr = xyes -a x$have_flac_lib = xyes; then -- LIBS="$LIBS -lFLAC" -+ LIBS="$LIBS -lFLAC -logg" - AC_DEFINE(SOUND_SUPPORTS_FLAC) - fi - fi -diff -u -r SDL_sound-1.0.1/decoders/flac.c SDL_sound-1.0.1-flac/decoders/flac.c ---- SDL_sound-1.0.1/decoders/flac.c 2003-03-10 23:44:14.000000000 +0100 -+++ SDL_sound-1.0.1-flac/decoders/flac.c 2006-12-11 20:43:57.880097062 +0100 -@@ -44,6 +44,16 @@ - #define __SDL_SOUND_INTERNAL__ - #include "SDL_sound_internal.h" - -+#include <FLAC/export.h> -+ -+/* FLAC 1.1.3 has FLAC_API_VERSION_CURRENT == 8 */ -+#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT < 8 -+#define LEGACY_FLAC -+#else -+#undef LEGACY_FLAC -+#endif -+ -+#ifdef LEGACY_FLAC - #include <FLAC/seekable_stream_decoder.h> - - #define D_END_OF_STREAM FLAC__SEEKABLE_STREAM_DECODER_END_OF_STREAM -@@ -80,6 +90,34 @@ - typedef FLAC__SeekableStreamDecoderSeekStatus d_seek_status_t; - typedef FLAC__SeekableStreamDecoderTellStatus d_tell_status_t; - typedef FLAC__SeekableStreamDecoderLengthStatus d_length_status_t; -+#else -+#include <FLAC/stream_decoder.h> -+ -+#define D_END_OF_STREAM FLAC__STREAM_DECODER_END_OF_STREAM -+ -+#define d_new() FLAC__stream_decoder_new() -+#define d_process_metadata(x) FLAC__stream_decoder_process_until_end_of_metadata(x) -+#define d_process_one_frame(x) FLAC__stream_decoder_process_single(x) -+#define d_get_state(x) FLAC__stream_decoder_get_state(x) -+#define d_finish(x) FLAC__stream_decoder_finish(x) -+#define d_delete(x) FLAC__stream_decoder_delete(x) -+ -+typedef FLAC__StreamDecoder decoder_t; -+typedef FLAC__StreamDecoderReadStatus d_read_status_t; -+ -+#define D_SEEK_STATUS_OK FLAC__STREAM_DECODER_SEEK_STATUS_OK -+#define D_SEEK_STATUS_ERROR FLAC__STREAM_DECODER_SEEK_STATUS_ERROR -+#define D_TELL_STATUS_OK FLAC__STREAM_DECODER_TELL_STATUS_OK -+#define D_TELL_STATUS_ERROR FLAC__STREAM_DECODER_TELL_STATUS_ERROR -+#define D_LENGTH_STATUS_OK FLAC__STREAM_DECODER_LENGTH_STATUS_OK -+#define D_LENGTH_STATUS_ERROR FLAC__STREAM_DECODER_LENGTH_STATUS_ERROR -+ -+#define d_seek_absolute(x, y) FLAC__stream_decoder_seek_absolute(x, y) -+ -+typedef FLAC__StreamDecoderSeekStatus d_seek_status_t; -+typedef FLAC__StreamDecoderTellStatus d_tell_status_t; -+typedef FLAC__StreamDecoderLengthStatus d_length_status_t; -+#endif - - #define D_WRITE_CONTINUE FLAC__STREAM_DECODER_WRITE_STATUS_CONTINUE - #define D_READ_END_OF_STREAM FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM -@@ -141,9 +179,15 @@ - } /* free_flac */ - - -+#ifdef LEGACY_FLAC - static d_read_status_t read_callback( - const decoder_t *decoder, FLAC__byte buffer[], - unsigned int *bytes, void *client_data) -+#else -+static d_read_status_t read_callback( -+ const decoder_t *decoder, FLAC__byte buffer[], -+ size_t *bytes, void *client_data) -+#endif - { - flac_t *f = (flac_t *) client_data; - Uint32 retval; -@@ -400,6 +444,7 @@ - BAIL_MACRO(ERR_OUT_OF_MEMORY, 0); - } /* if */ - -+#ifdef LEGACY_FLAC - d_set_read_callback(decoder, read_callback); - d_set_write_callback(decoder, write_callback); - d_set_metadata_callback(decoder, metadata_callback); -@@ -410,6 +455,7 @@ - d_set_eof_callback(decoder, eof_callback); - - d_set_client_data(decoder, f); -+#endif - - f->rw = internal->rw; - f->sample = sample; -@@ -418,7 +464,12 @@ - f->is_flac = 0 /* !!! FIXME: should be "has_extension", not "0". */; - - internal->decoder_private = f; -+ /* really should check the init return value here: */ -+#ifdef LEGACY_FLAC - d_init(decoder); -+#else -+ FLAC__stream_decoder_init_stream(decoder, read_callback, seek_callback, tell_callback, length_callback, eof_callback, write_callback, metadata_callback, error_callback, f); -+#endif - - sample->flags = SOUND_SAMPLEFLAG_NONE; - diff --git a/abs/extra/sdl_ttf/PKGBUILD b/abs/extra/sdl_ttf/PKGBUILD index 56e56d9..02a4649 100644 --- a/abs/extra/sdl_ttf/PKGBUILD +++ b/abs/extra/sdl_ttf/PKGBUILD @@ -1,26 +1,35 @@ -# $Id: PKGBUILD 85134 2010-07-09 10:09:49Z allan $ -# Maintainer: Allan McRae <allan@archlinux.org> +# $Id: PKGBUILD 151697 2012-02-29 21:54:21Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=sdl_ttf -pkgver=2.0.10 -pkgrel=1 +pkgver=2.0.11 +pkgrel=2 pkgdesc="A library that allows you to use TrueType fonts in your SDL applications" arch=('i686' 'x86_64') -license=('LGPL') +license=('custom') url="http://www.libsdl.org/projects/SDL_ttf/" depends=('sdl>=1.2.12' 'freetype2') options=('!libtool') -source=(http://www.libsdl.org/projects/SDL_ttf/release/SDL_ttf-${pkgver}.tar.gz) -md5sums=('814e6e17e8879254208d23b3b7e0354b') +source=(http://www.libsdl.org/projects/SDL_ttf/release/SDL_ttf-$pkgver.tar.gz + bug1433.patch) +md5sums=('61e29bd9da8d245bc2471d1b2ce591aa' + 'f847697e18eec539aaf3ffb96996abbf') build() { - cd ${srcdir}/SDL_ttf-${pkgver} - ./configure --prefix=/usr + cd "$srcdir/SDL_ttf-$pkgver" + + # Fix FS#28674 + patch -Ni "$srcdir/bug1433.patch" + + ./configure --prefix=/usr --disable-static make } package() { - cd ${srcdir}/SDL_ttf-${pkgver} - make DESTDIR=${pkgdir} install + cd "$srcdir/SDL_ttf-$pkgver" + make DESTDIR="$pkgdir" install + + install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } diff --git a/abs/extra/sdl_ttf/bug1433.patch b/abs/extra/sdl_ttf/bug1433.patch new file mode 100644 index 0000000..b402fb3 --- /dev/null +++ b/abs/extra/sdl_ttf/bug1433.patch @@ -0,0 +1,11 @@ +--- SDL_ttf.c.orig 2012-02-12 16:36:41.859977617 +0100
++++ SDL_ttf.c 2012-02-12 16:36:53.696580159 +0100
+@@ -1747,7 +1747,7 @@
+ /* Copy the character from the pixmap */
+ src = glyph->pixmap.buffer;
+ dst = (Uint8*) textbuf->pixels;
+- for ( row = 0; row < glyph->bitmap.rows; ++row ) {
++ for ( row = 0; row < glyph->pixmap.rows; ++row ) {
+ memcpy( dst, src, glyph->pixmap.width );
+ src += glyph->pixmap.pitch;
+ dst += textbuf->pitch;
\ No newline at end of file diff --git a/abs/extra/sdlmame/ChangeLog b/abs/extra/sdlmame/ChangeLog deleted file mode 100644 index 872c595..0000000 --- a/abs/extra/sdlmame/ChangeLog +++ /dev/null @@ -1,5 +0,0 @@ -2008-02-13 JJDaNiMoTh <jjdanimoth.aur@gmail.com> - * 0.123 version - -2008-01-22 JJDaNiMoTh <jjdanimoth.aur@gmail.com> - * 0.122u6 version diff --git a/abs/extra/sdlmame/PKGBUILD b/abs/extra/sdlmame/PKGBUILD index 7e1aabc..daf290a 100644 --- a/abs/extra/sdlmame/PKGBUILD +++ b/abs/extra/sdlmame/PKGBUILD @@ -1,24 +1,24 @@ -# $Id: PKGBUILD 50675 2011-06-29 12:53:08Z spupykin $ +# $Id: PKGBUILD 80432 2012-11-21 14:28:56Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: robb_force <robb_force@holybuffalo.net> # Maintainer: JJDaNiMoTh <jjdanimoth@gmail.com> -_patchlevel=0 -_basever=0.143 +_patchlevel=3 +_basever=0.147 pkgname=sdlmame if [ ${_patchlevel} -ne 0 ]; then - pkgver=${_basever}u${_patchlevel} + pkgver=${_basever}.u${_patchlevel} else pkgver=${_basever} fi -pkgrel=2 +pkgrel=1 pkgdesc="A port of the popular Multiple Arcade Machine Emulator using SDL with OpenGL support." url="http://mamedev.org/" license=('custom:MAME License') arch=('i686' 'x86_64') depends=('sdl>=1.2.11' 'libxinerama' 'gconf' 'sdl_ttf' 'gtk2') -makedepends=('unzip' 'nasm' 'mesa') +makedepends=('unzip' 'nasm' 'mesa' 'glu' 'wget') DLAGENTS=('http::/usr/bin/wget -U "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.2) Gecko/20090804 Shiretoko/3.5.2" -c -t 3 --waitretry=3 -O %o %u') install=sdlmame.install @@ -30,38 +30,27 @@ source=("mame${_basever/./}s.zip::http://mamedev.org/downloader.php?file=release "sdlmame.sh" "extras.tar.gz" ${_patches}) -md5sums=('2d95b9d9f79a97a690f62284e4db0e7e' - '3119ccfa1e970eba4467df31208adaf0' - '420b61240bf5ae11615ba7c6100ee00d') +md5sums=('b5fc953ee0351f5145b9d704603f2ee3' + 'e11a7d26704a9e2cff223b9b867d6a05' + '420b61240bf5ae11615ba7c6100ee00d' + '7f2dbea383138a6ae2bbaac3b32376d6' + 'c0306cbf583309d23549529f441e97f2' + '8851533ae3f692e436bc399b773c4fcb') build() { cd $srcdir/ - if [ $NOEXTRACT -eq 0 ]; then unzip mame.zip find . -type f -not -name \*.png | xargs perl -pi -e 's/\r\n?/\n/g' for i in `seq 1 ${_patchlevel}`; do - patch -p0 -E <${_basever/./}u$i.diff + msg "Patch#$i" + patch -p0 -E <${_basever/./}u$i.diff || true # FIXME: done - sed -i 's/-Werror//' makefile - sed -i 's/LDFLAGS = -Wl,--warn-common/LDFLAGS = -Wl,--warn-common -Wl,-zmuldefs/' makefile - fi - - # Modify the make options based on the user's architecture - if [ "$CARCH" == "x86_64" ]; then - echo "Compiling for AMD64..." - make AMD64=1 PTR64=1 - make tools AMD64=1 PTR64=1 - elif [ "$CARCH" == "i686" ]; then - make I686=1 - make tools I686=1 - else - echo "Compiling for i386..." - make PM=1 - make tools PM=1 fi - + make NOWERROR=1 OPTIMIZE=2 + make tools NOWERROR=1 OPTIMIZE=2 } + package() { cd $srcdir/ # Install the sdlmame script @@ -81,15 +70,13 @@ package() { install -m755 ldverify $pkgdir/usr/share/${pkgname}/ldverify install -m755 ldresample $pkgdir/usr/share/${pkgname}/ldresample -# install -m755 makemeta $pkgdir/usr/share/${pkgname}/makemeta -# install -m755 runtest $pkgdir/usr/share/${pkgname}/runtest -# install -m644 ui.bdf $pkgdir/usr/share/${pkgname}/ui.bdf - # Install the extra bits install -d $pkgdir/usr/share/${pkgname}/{artwork,ctrlr,keymaps,shader} install -d $pkgdir/usr/share/man/man1 + install -d $pkgdir/usr/share/man/man6 install -m644 src/osd/sdl/shader/glsl*.*h $pkgdir/usr/share/${pkgname}/shader/ - install -m644 src/osd/sdl/man/* $pkgdir/usr/share/man/man1/ + install -m644 src/osd/sdl/man/*.1* $pkgdir/usr/share/man/man1/ + install -m644 src/osd/sdl/man/*.6* $pkgdir/usr/share/man/man6/ install -m644 $srcdir/artwork/* $pkgdir/usr/share/${pkgname}/artwork/ install -m644 $srcdir/ctrlr/* $pkgdir/usr/share/${pkgname}/ctrlr/ @@ -98,5 +85,11 @@ package() { # Include the license install -Dm644 docs/license.txt $pkgdir/usr/share/licenses/${pkgname}/license.txt + # FS#28203 + sed -i 's|KEYCODE_2_PAD|KEYCODE_2PAD|' $pkgdir/usr/share/sdlmame/ctrlr/*.cfg + sed -i 's|KEYCODE_4_PAD|KEYCODE_4PAD|' $pkgdir/usr/share/sdlmame/ctrlr/*.cfg + sed -i 's|KEYCODE_6_PAD|KEYCODE_6PAD|' $pkgdir/usr/share/sdlmame/ctrlr/*.cfg + sed -i 's|KEYCODE_8_PAD|KEYCODE_8PAD|' $pkgdir/usr/share/sdlmame/ctrlr/*.cfg + find $pkgdir -type f -exec strip {} \; } diff --git a/abs/extra/sdlmame/mame-0137-wiimote.diff b/abs/extra/sdlmame/mame-0137-wiimote.diff deleted file mode 100644 index 8f29b8e..0000000 --- a/abs/extra/sdlmame/mame-0137-wiimote.diff +++ /dev/null @@ -1,424 +0,0 @@ -diff -BNburp mame-org/makefile mame-wiimote/makefile -diff -BNburp mame-org/src/osd/sdl/input.c mame-wiimote/src/osd/sdl/input.c ---- mame-org/src/osd/sdl/input.c 2010-02-28 04:16:40.000000000 +0100 -+++ mame-wiimote/src/osd/sdl/input.c 2010-05-07 13:53:59.000000000 +0200 -@@ -17,6 +17,12 @@ - #include <ctype.h>
- #include <stddef.h>
-
-+// for xinput -+#include <X11/Xlib.h> -+#include <X11/extensions/XInput.h> -+#include <X11/Xutil.h> -+ -+ - // MAME headers
- #include "emu.h"
- #include "ui.h"
-@@ -53,6 +59,16 @@ enum
- #define MAX_POV 4
- #define MAX_DEVMAP_ENTRIES 16
-
-+//For xinput -+#define INVALID_EVENT_TYPE -1 -+static int motion_type = INVALID_EVENT_TYPE; -+static int button_press_type = INVALID_EVENT_TYPE; -+static int button_release_type = INVALID_EVENT_TYPE; -+static int key_press_type = INVALID_EVENT_TYPE; -+static int key_release_type = INVALID_EVENT_TYPE; -+static int proximity_in_type = INVALID_EVENT_TYPE; -+static int proximity_out_type = INVALID_EVENT_TYPE; -+ - //============================================================
- // MACROS
- //============================================================
-@@ -86,6 +102,16 @@ struct _mouse_state
- INT32 buttons[MAX_BUTTONS];
- };
-
-+// state information for a lightgun -+typedef struct _lightgun_state lightgun_state; -+struct _lightgun_state -+{ -+ INT32 lX, lY; -+ INT32 buttons[MAX_BUTTONS]; -+ XID deviceid; //Xinput device id -+ INT32 maxx,maxy; -+ INT32 minx,miny; -+}; -
- // state information for a joystick; DirectInput state must be first element
- typedef struct _joystick_state joystick_state;
-@@ -115,6 +141,7 @@ struct _device_info
- keyboard_state keyboard;
- mouse_state mouse;
- joystick_state joystick;
-+ lightgun_state lightgun; - };
- };
-
-@@ -164,10 +191,13 @@ struct _device_map_t
-
- static device_map_t joy_map;
- static device_map_t mouse_map;
-+static device_map_t lightgun_map; - static device_map_t keyboard_map;
-
- static int sixaxis_mode;
-
-+Display *XDisplay; -+ -
- //============================================================
- // PROTOTYPES
-@@ -671,6 +703,244 @@ static device_info *devmap_class_registe - return devinfo;
- }
-
-+//============================================================ -+// WiiMote lightgun stuff -+//============================================================ -+ -+//Copypasted from xinfo -+XDeviceInfo* -+find_device_info(Display *display, -+ char *name, -+ Bool only_extended) -+{ -+ XDeviceInfo *devices; -+ XDeviceInfo *found = NULL; -+ int loop; -+ int num_devices; -+ int len = strlen(name); -+ Bool is_id = True; -+ XID id=0; -+ -+ for(loop=0; loop<len; loop++) { -+ if (!isdigit(name[loop])) { -+ is_id = False; -+ break; -+ } -+ } -+ -+ if (is_id) { -+ id = atoi(name); -+ } -+ -+ devices = XListInputDevices(display, &num_devices); -+ -+ for(loop=0; loop<num_devices; loop++) { -+ if ((!only_extended || (devices[loop].use >= IsXExtensionDevice)) && -+ ((!is_id && strcmp(devices[loop].name, name) == 0) || -+ (is_id && devices[loop].id == id))) { -+ if (found) { -+ fprintf(stderr, -+ "Warning: There are multiple devices named \"%s\".\n" -+ "To ensure the correct one is selected, please use " -+ "the device ID instead.\n\n", name); -+ } else { -+ found = &devices[loop]; -+ } -+ } -+ } -+ return found; -+} -+ -+//Copypasted from xinfo -+static int -+register_events(Display *dpy, -+ XDeviceInfo *info, -+ char *dev_name, -+ Bool handle_proximity) -+{ -+ int number = 0; /* number of events registered */ -+ XEventClass event_list[7]; -+ int i; -+ XDevice *device; -+ Window root_win; -+ unsigned long screen; -+ XInputClassInfo *ip; -+ -+ screen = DefaultScreen(dpy); -+ root_win = RootWindow(dpy, screen); -+ -+ device = XOpenDevice(dpy, info->id); -+ -+ if (!device) { -+ fprintf(stderr, "unable to open device %s\n", dev_name); -+ return 0; -+ } -+ -+ if (device->num_classes > 0) { -+ for (ip = device->classes, i=0; i<info->num_classes; ip++, i++) { -+ switch (ip->input_class) { -+ case KeyClass: -+ DeviceKeyPress(device, key_press_type, event_list[number]); number++; -+ DeviceKeyRelease(device, key_release_type, event_list[number]); number++; -+ break; -+ -+ case ButtonClass: -+ DeviceButtonPress(device, button_press_type, event_list[number]); number++; -+ DeviceButtonRelease(device, button_release_type, event_list[number]); number++; -+ break; -+ -+ case ValuatorClass: -+ DeviceMotionNotify(device, motion_type, event_list[number]); number++; -+ fprintf(stderr, "Motion = %i\n",motion_type); -+ if (handle_proximity) { -+ ProximityIn(device, proximity_in_type, event_list[number]); number++; -+ ProximityOut(device, proximity_out_type, event_list[number]); number++; -+ } -+ break; -+ -+ default: -+ fprintf(stderr, "unknown class\n"); -+ break; -+ } -+ } -+ -+ if (XSelectExtensionEvent(dpy, root_win, event_list, number)) { -+ fprintf(stderr, "error selecting extended events\n"); -+ return 0; -+ } -+ } -+ return number; -+} -+ -+ -+ -+static void sdlinput_register_lightguns(running_machine *machine) -+{ -+ int index; -+ XExtensionVersion *version; -+ -+ lightgun_enabled = options_get_bool(mame_options(), OPTION_LIGHTGUN); -+ devmap_init(machine, &lightgun_map, SDLOPTION_LIGHTGUNINDEX, 8, "Lightgun mapping"); -+ -+ XDisplay = XOpenDisplay(NULL); -+ -+ if (XDisplay == NULL) { -+ fprintf(stderr, "Unable to connect to X server\n"); -+ return; -+ } -+ -+ version = XGetExtensionVersion(XDisplay, INAME); -+ -+ if (!version || (version == (XExtensionVersion*) NoSuchExtension)) { -+ fprintf(stderr, "xinput extension not available!\n"); -+ return; -+ } -+ -+ -+ for (index=0; index<8; index++) { -+ XDeviceInfo *info; -+ if (strlen(lightgun_map.map[index].name)!=0) { -+ device_info *devinfo; -+ char *name=lightgun_map.map[index].name; -+ char defname[512]; -+ devinfo = devmap_class_register(machine, &lightgun_map, index, &lightgun_list, DEVICE_CLASS_LIGHTGUN); -+ fprintf(stderr, "%i: %s\n",index, name); -+ info=find_device_info(XDisplay, name, 0); -+ if (!info) continue; -+ -+ //Grab device info and translate to stuff mame can use -+ if (info->num_classes > 0) { -+ XAnyClassPtr any = (XAnyClassPtr) (info->inputclassinfo); -+ int i; -+ for (i=0; i<info->num_classes; i++) { -+ int button; -+ XValuatorInfoPtr v; -+ XAxisInfoPtr a; -+ int j; -+ XButtonInfoPtr b; -+ switch (any->c_class) { -+ case ButtonClass: -+ b = (XButtonInfoPtr) any; -+ for (button = 0; button < b->num_buttons; button++) -+ { -+ input_item_id itemid; -+ sprintf(defname, "B%d", button + 1); -+ itemid=(input_item_id) (ITEM_ID_BUTTON1+button); -+ input_device_item_add(devinfo->device, defname, &devinfo->lightgun.buttons[button], itemid, generic_button_get_state); -+ } -+ break; -+ case ValuatorClass: -+ v = (XValuatorInfoPtr) any; -+ a = (XAxisInfoPtr) ((char *) v + sizeof (XValuatorInfo)); -+ for (j=0; j<v->num_axes; j++, a++) { -+ if (j==0) { -+ devinfo->lightgun.maxx=a->max_value; -+ devinfo->lightgun.minx=a->min_value; -+ } -+ if (j==1) { -+ devinfo->lightgun.maxy=a->max_value; -+ devinfo->lightgun.miny=a->min_value; -+ } -+ } -+ break; -+ } -+ any = (XAnyClassPtr) ((char *) any + any->length); -+ } -+ } -+ -+ -+ sprintf(defname, "X %s", devinfo->name); -+ input_device_item_add(devinfo->device, defname, &devinfo->lightgun.lX, ITEM_ID_XAXIS, generic_axis_get_state); -+ sprintf(defname, "Y %s", devinfo->name); -+ input_device_item_add(devinfo->device, defname, &devinfo->lightgun.lY, ITEM_ID_YAXIS, generic_axis_get_state); -+ -+ -+ devinfo->lightgun.deviceid=info->id; -+ if (!info) { -+ fprintf(stderr, "Can't find device %s!\n", lightgun_map.map[index].name); -+ } else { -+ fprintf(stderr, "Device %i: Registered %i events.\n",(int)info->id, register_events(XDisplay, info, lightgun_map.map[index].name, 0)); -+ } -+ } -+ } -+ mame_printf_verbose("Lightgun: End initialization\n"); -+} -+ -+device_info *get_lightgun_info_for_deviceid(XID deviceid) { -+ device_info *devinfo; -+ int index; -+ //Find lightgun according to device id -+ for (index=0; ; index++) { -+ devinfo = generic_device_find_index(lightgun_list, index); -+ if (devinfo==NULL) break; -+ if (devinfo->lightgun.deviceid==deviceid) break; -+ } -+ return devinfo; -+} -+ -+int normalize_absolute_axis(int raw, int rawmin, int rawmax) -+{ -+ int center = (rawmax + rawmin) / 2; -+ -+ // make sure we have valid data -+ if (rawmin >= rawmax) -+ return raw; -+ -+ // above center -+ if (raw >= center) -+ { -+ int result = (long)(raw - center) * (long)INPUT_ABSOLUTE_MAX / (long)(rawmax - center); -+ return MIN(result, INPUT_ABSOLUTE_MAX); -+ } -+ -+ // below center -+ else -+ { -+ int result = -((long)(center - raw) * (long)-INPUT_ABSOLUTE_MIN / (long)(center - rawmin)); -+ return MAX(result, INPUT_ABSOLUTE_MIN); -+ } -+} -+ -
- //============================================================
- // sdlinput_register_joysticks
-@@ -1115,6 +1385,9 @@ void sdlinput_init(running_machine *mach - // register the mice
- sdlinput_register_mice(machine);
-
-+ // register the lightguns -+ sdlinput_register_lightguns(machine); -+ - if (machine->debug_flags & DEBUG_FLAG_OSD_ENABLED)
- {
- mame_printf_warning("Debug Build: Disabling input grab for -debug\n");
-@@ -1131,6 +1404,7 @@ void sdlinput_init(running_machine *mach - device_list_reset_devices(keyboard_list);
- device_list_reset_devices(mouse_list);
- device_list_reset_devices(joystick_list);
-+ device_list_reset_devices(lightgun_list); -
- }
-
-@@ -1248,6 +1522,7 @@ void sdlinput_poll(running_machine *mach - device_info *devinfo;
- SDL_Event event;
- int index;
-+ XEvent xevent; -
- // only for SDLMAME_EVENTS_IN_WORKER_THREAD
- SDL_Event loc_event_buf[MAX_BUF_EVENTS];
-@@ -1263,6 +1538,21 @@ void sdlinput_poll(running_machine *mach - devinfo->mouse.lY = 0;
- }
-
-+ //Get XInput events -+ while (XPending(XDisplay)!=0) { -+ XNextEvent(XDisplay, &xevent); -+ if (xevent.type==motion_type) { -+ XDeviceMotionEvent *motion = (XDeviceMotionEvent *) &xevent; -+ devinfo=get_lightgun_info_for_deviceid(motion->deviceid); -+ devinfo->lightgun.lX=normalize_absolute_axis(motion->axis_data[0], devinfo->lightgun.minx, devinfo->lightgun.maxx); -+ devinfo->lightgun.lY=normalize_absolute_axis(motion->axis_data[1], devinfo->lightgun.miny, devinfo->lightgun.maxy); -+ } else if (xevent.type==button_press_type || xevent.type==button_release_type) { -+ XDeviceButtonEvent *button = (XDeviceButtonEvent *) &xevent; -+ devinfo=get_lightgun_info_for_deviceid(button->deviceid); -+ devinfo->lightgun.buttons[button->button]=(xevent.type==button_press_type)?0x80:0; -+ } -+ } -+ - if (SDLMAME_EVENTS_IN_WORKER_THREAD)
- {
- osd_lock_acquire(input_lock);
-diff -BNburp mame-org/src/osd/sdl/osdsdl.h mame-wiimote/src/osd/sdl/osdsdl.h ---- mame-org/src/osd/sdl/osdsdl.h 2010-02-12 14:42:32.000000000 +0100 -+++ mame-wiimote/src/osd/sdl/osdsdl.h 2010-05-07 08:53:34.000000000 +0200 -@@ -130,3 +130,4 @@ void sdlaudio_init(running_machine *mach - extern int sdl_num_processors;
-
- #endif
-+#define SDLOPTION_LIGHTGUNINDEX "lightgun_index" -diff -BNburp mame-org/src/osd/sdl/sdlmain.c mame-wiimote/src/osd/sdl/sdlmain.c ---- mame-org/src/osd/sdl/sdlmain.c 2010-02-13 12:19:16.000000000 +0100 -+++ mame-wiimote/src/osd/sdl/sdlmain.c 2010-05-07 08:54:03.000000000 +0200 -@@ -190,6 +190,17 @@ static const options_entry mame_sdl_opti - { SDLOPTION_JOYINDEX "8", SDLOPTVAL_AUTO, 0, "name of joystick mapped to joystick #8" },
- { SDLOPTION_SIXAXIS, "0", OPTION_BOOLEAN, "Use special handling for PS3 Sixaxis controllers" },
-
-+ { NULL, NULL, OPTION_HEADER, "SDL LIGHTGUN MAPPING" }, -+ { SDLOPTION_LIGHTGUNINDEX "1", SDLOPTVAL_AUTO, 0, "name of lightgun mapped to lightgun #1" }, -+ { SDLOPTION_LIGHTGUNINDEX "2", SDLOPTVAL_AUTO, 0, "name of lightgun mapped to lightgun #2" }, -+ { SDLOPTION_LIGHTGUNINDEX "3", SDLOPTVAL_AUTO, 0, "name of lightgun mapped to lightgun #3" }, -+ { SDLOPTION_LIGHTGUNINDEX "4", SDLOPTVAL_AUTO, 0, "name of lightgun mapped to lightgun #4" }, -+ { SDLOPTION_LIGHTGUNINDEX "5", SDLOPTVAL_AUTO, 0, "name of lightgun mapped to lightgun #5" }, -+ { SDLOPTION_LIGHTGUNINDEX "6", SDLOPTVAL_AUTO, 0, "name of lightgun mapped to lightgun #6" }, -+ { SDLOPTION_LIGHTGUNINDEX "7", SDLOPTVAL_AUTO, 0, "name of lightgun mapped to lightgun #7" }, -+ { SDLOPTION_LIGHTGUNINDEX "8", SDLOPTVAL_AUTO, 0, "name of lightgun mapped to lightgun #8" }, -+ -+ - #if (SDL_VERSION_ATLEAST(1,3,0))
- { NULL, NULL, OPTION_HEADER, "SDL MOUSE MAPPING" },
- { SDLOPTION_MOUSEINDEX "1", SDLOPTVAL_AUTO, 0, "name of mouse mapped to mouse #1" },
-diff -BNburp mame-org/src/osd/sdl/window.c mame-wiimote/src/osd/sdl/window.c ---- mame-org/src/osd/sdl/window.c 2010-02-12 07:40:12.000000000 +0100 -+++ mame-wiimote/src/osd/sdl/window.c 2010-05-07 08:54:54.000000000 +0200 -@@ -659,8 +659,17 @@ static void sdlwindow_update_cursor_stat - }
-
- #else
-+ //Hack for wii-lightguns: they stop working with a grabbed mouse; even a ShowCursor(SDL_DISABLE) already -+ //does this. To make the cursor disappear, we'll just set an empty cursor image. -+ unsigned char data[]={0,0,0,0,0,0,0,0}; -+ SDL_Cursor *c; -+ c=SDL_CreateCursor(data, data, 8, 8, 0, 0); -+ SDL_SetCursor(c); -+ -+ - // do not do mouse capture if the debugger's enabled to avoid
- // the possibility of losing control
-+/* - if (!(machine->debug_flags & DEBUG_FLAG_OSD_ENABLED))
- {
- if ( window->fullscreen || sdlinput_should_hide_mouse(machine) )
-@@ -680,6 +689,7 @@ static void sdlwindow_update_cursor_stat - }
- }
- }
-+*/ - #endif
- }
-
diff --git a/abs/extra/sdlmame/sdlmame.install b/abs/extra/sdlmame/sdlmame.install index 6103018..0d3fab8 100644 --- a/abs/extra/sdlmame/sdlmame.install +++ b/abs/extra/sdlmame/sdlmame.install @@ -1,29 +1,8 @@ -# Message displayed for a fresh install. post_install() -{ - echo "" - echo "***************************************************************" +{ echo " SDLMAME and the additional MAME utilities have been installed" - echo " in /usr/share/sdlmame However, SDLMAME can be run by" + echo " in /usr/share/sdlmame However, SDLMAME can be run by" echo " typing sdlmame and it's options. Try running SDLMAME with" echo " these options:" echo " sdlmame <rom> -nowindow -noswitchres" - echo "***************************************************************" - echo "" -} - -# Message for an update. -post_upgrade() -{ - echo "" - echo "***************************************************************" - echo " SDLMAME has been updated. If you are upgrading directly from" - echo " 0.117 or earlier, you must delete all .cfg files and" - echo " re-configure your controllers. You should also run" - echo " 'SDLMAME --newini' to force the script to create a new ini" - echo " file with default settings at ~/.mame/sdlmame.ini" - echo " since there may be new ini options." - echo "***************************************************************" - echo "" } - diff --git a/abs/extra/sdlmame/sdlmame.sh b/abs/extra/sdlmame/sdlmame.sh index 38b4870..336f716 100644 --- a/abs/extra/sdlmame/sdlmame.sh +++ b/abs/extra/sdlmame/sdlmame.sh @@ -4,13 +4,13 @@ home=('$HOME') if [ "$1" != "" ] && [ "$1" = "--newini" ]; then - echo "Rebuilding the ini file at $HOME/.mame/sdlmame.ini" + echo "Rebuilding the ini file at $HOME/.mame/mame.ini" echo "Modify this file for permanent changes to your SDLMAME" echo "options and paths before running SDLMAME again." cd $HOME/.mame - if [ -e sdlmame.ini ]; then - echo "Your old ini file has been renamed to sdlmameini.bak" - mv sdlmame.ini sdlmameini.bak + if [ -e mame.ini ]; then + echo "Your old ini file has been renamed to mameini.bak" + mv mame.ini mameini.bak fi /usr/share/sdlmame/sdlmame \ -artpath "$home/.mame/artwork;artwork" \ @@ -30,7 +30,7 @@ if [ "$1" != "" ] && [ "$1" = "--newini" ]; then -createconfig elif [ ! -e $HOME/.mame ]; then echo "Running SDLMAME for the first time..." - echo "Creating an ini file for SDLMAME at $HOME/.mame/sdlmame.ini" + echo "Creating an ini file for SDLMAME at $HOME/.mame/mame.ini" echo "Modify this file for permanent changes to your SDLMAME" echo "options and paths before running SDLMAME again." mkdir $HOME/.mame diff --git a/abs/extra/shared-color-profiles/PKGBUILD b/abs/extra/shared-color-profiles/PKGBUILD new file mode 100644 index 0000000..be2aebe --- /dev/null +++ b/abs/extra/shared-color-profiles/PKGBUILD @@ -0,0 +1,27 @@ +# $Id: PKGBUILD 144380 2011-12-05 12:55:18Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=shared-color-profiles +pkgver=0.1.5 +pkgrel=1 +pkgdesc="Shared color profiles are used in color management aware applications" +arch=('any') +url="http://github.com/hughsie/shared-color-profiles" +license=('GPL2') +source=(http://people.freedesktop.org/~hughsient/releases/$pkgname-$pkgver.tar.gz) +options=('!libtool') +sha1sums=('621a5bfe7466ab54a6b3e135fdd0580610f61163') + + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/shepherd/PKGBUILD b/abs/extra/shepherd/PKGBUILD deleted file mode 100644 index 735fef5..0000000 --- a/abs/extra/shepherd/PKGBUILD +++ /dev/null @@ -1,17 +0,0 @@ -# $Id: PKGBUILD 23123 2009-01-03 02:43:02Z kevin $ -# Maintainer: Greg Frost <gregfrost1@bigpond.com> -pkgname=shepherd -pkgver=1.5.1 -pkgrel=1 -pkgdesc="Australian EPG Grabber." -license=('unknown') -arch=('i686') -depends=('perl-pathtools' 'perl-digest-sha1' 'perl-algorithm-diff' - 'perl-javascript' 'perl-list-compare') -source=(http://www.whuffy.com/shepherd/shepherd) - -build() { - mkdir -p ${pkgdir}/usr/bin/ - install -m 0755 shepherd ${pkgdir}/usr/bin/ -} -md5sums=('ca37aff5606acfebc341525eac825449') diff --git a/abs/extra/sip/PKGBUILD b/abs/extra/sip/PKGBUILD index f50d054..866d89d 100644 --- a/abs/extra/sip/PKGBUILD +++ b/abs/extra/sip/PKGBUILD @@ -1,27 +1,26 @@ -# $Id$ -# Maintainer: -# Contributor: Andrea Scarpino <andrea@archlinux.org> +# $Id: PKGBUILD 162739 2012-06-29 11:34:13Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> # Contributor: riai <riai@bigfoot.com>, Ben <ben@benmazer.net> pkgbase=sip pkgname=('sip' 'python2-sip') -pkgver=4.13 -pkgrel=1 +pkgver=4.13.3 +pkgrel=2 arch=('i686' 'x86_64') url="http://www.riverbankcomputing.com/software/sip/" license=('custom:"sip"') -makedepends=('python' 'python2') +makedepends=( 'python2') source=("http://www.riverbankcomputing.com/static/Downloads/sip4/${pkgbase}-${pkgver}.tar.gz") -md5sums=('21b4e2cad56e4156df2220143264b8ff') +md5sums=('76192829cc42ec558db46e4f9e1d8ba9') build() { cd "${srcdir}" cp -r ${pkgbase}-${pkgver} python2-${pkgbase}-${pkgver} - cd "${srcdir}/${pkgbase}-${pkgver}" - python configure.py CFLAGS="${CFLAGS}" LFLAGS="${LDFLAGS}" - make + #cd "${srcdir}/${pkgbase}-${pkgver}" + #python configure.py CFLAGS="${CFLAGS}" LFLAGS="${LDFLAGS}" + #make ### Python2 version ### cd "${srcdir}/python2-${pkgbase}-${pkgver}" @@ -31,25 +30,36 @@ build() { package_sip() { pkgdesc="A tool that makes it easy to create Python bindings for C and C++ libraries" - depends=('python') - replaces=('python-sip') - provides=('python-sip') + depends=('glibc') - cd "${srcdir}/${pkgbase}-${pkgver}" - make DESTDIR="${pkgdir}" install + cd "${srcdir}/python2-${pkgbase}-${pkgver}" + make DESTDIR="${pkgdir}" install -C sipgen install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } +package_python-sip1() { + pkgdesc="Python 3.x SIP bindings for C and C++ libraries" + depends=('sip' 'python') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make DESTDIR="${pkgdir}" install -C siplib + + install -Dm644 sipconfig.py "${pkgdir}"/usr/lib/python3.2/site-packages/sipconfig.py + install -Dm644 sipdistutils.py "${pkgdir}"/usr/lib/python3.2/site-packages/sipdistutils.py + + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + package_python2-sip() { - pkgdesc="A tool that makes it easy to create Python2 bindings for C and C++ libraries" + pkgdesc="Python 2.x SIP bindings for C and C++ libraries" depends=('sip' 'python2') cd "${srcdir}/python2-${pkgbase}-${pkgver}" - make DESTDIR="${pkgdir}" install - + make DESTDIR="${pkgdir}" install -C siplib + + install -Dm644 sipconfig.py "${pkgdir}"/usr/lib/python2.7/site-packages/sipconfig.py + install -Dm644 sipdistutils.py "${pkgdir}"/usr/lib/python2.7/site-packages/sipdistutils.py + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - - # Provided by sip - rm "${pkgdir}/usr/bin/sip" } diff --git a/abs/extra/sip/__changelog b/abs/extra/sip/__changelog new file mode 100644 index 0000000..9731eb3 --- /dev/null +++ b/abs/extra/sip/__changelog @@ -0,0 +1 @@ +removed python3 diff --git a/abs/extra/slang/ChangeLog b/abs/extra/slang/ChangeLog deleted file mode 100644 index 61b535d..0000000 --- a/abs/extra/slang/ChangeLog +++ /dev/null @@ -1,13 +0,0 @@ -2009-11-06 Eric Belanger <eric@archlinux.org> - - * slang 2.2.1-1 - * Upstream update - * Added zlib depends - -2008-12-19 Eric Belanger <eric@archlinux.org> - - * slang 2.1.4-1 - * Upstream update - * Added pcre depends - * Added backup array - * Added ChangeLog diff --git a/abs/extra/slang/PKGBUILD b/abs/extra/slang/PKGBUILD index 6905293..2043a8d 100644 --- a/abs/extra/slang/PKGBUILD +++ b/abs/extra/slang/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 120537 2011-04-25 07:37:13Z remy $ +# $Id: PKGBUILD 149970 2012-02-11 23:31:28Z allan $ # Maintainer: Eric Belanger <eric@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=slang pkgver=2.2.4 -pkgrel=1 +pkgrel=2 pkgdesc="S-Lang is a powerful interpreted language" arch=('i686' 'x86_64') url="http://www.jedsoft.org/slang/" @@ -12,8 +12,9 @@ license=('GPL') depends=('glibc' 'pcre' 'zlib') backup=('etc/slsh.rc') options=('!makeflags') -source=(ftp://ftp.fu-berlin.de/pub/unix/misc/slang/v${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('7fcfd447e378f07dd0c0bae671fe6487') +source=(ftp://ftp.fu-berlin.de/pub/unix/misc/slang/v${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2{,.asc}) +md5sums=('7fcfd447e378f07dd0c0bae671fe6487' + '0e37091fe52b4ef609c3cee8eda0e101') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/abs/extra/smpeg/PKGBUILD b/abs/extra/smpeg/PKGBUILD index 1b52434..fe2acfe 100644 --- a/abs/extra/smpeg/PKGBUILD +++ b/abs/extra/smpeg/PKGBUILD @@ -1,28 +1,35 @@ -# $Id: PKGBUILD 19615 2008-11-28 13:17:01Z allan $ +# $Id: PKGBUILD 168611 2012-10-13 11:49:26Z andyrtr $ # Maintainer: Eric Belanger <eric@archlinux.org> # Contributor: Jan de Groot <jgc@archlinux.org> pkgname=smpeg pkgver=0.4.4 -pkgrel=4 +pkgrel=7 pkgdesc="SDL MPEG Player Library" arch=('i686' 'x86_64') url="http://icculus.org/smpeg/" license=('LGPL') depends=('sdl') -makedepends=('gtk' 'mesa') +#makedepends=('gtk' 'mesa' 'glu') +makedepends=('gtk' 'mesa' ) +optdepends=('gtk: to use gtv ' 'glu: to use glmovie') options=('!libtool' '!makeflags') -source=(http://mirrors.dotsrc.org/lokigames/open-source/smpeg/$pkgname-$pkgver.tar.gz smpeg-0.4.4-gcc41.patch) -md5sums=('59c76ac704088ef5539210190c4e1fe3' '8b979a58307d7196655758bd3d2466c4') -sha1sums=('6d7f4449472e6270ab435b2224f3fad951c35259' '7d9a2ad7f6b702dfe3adcb87601d9b55022bbd1e') +source=(http://mirrors.dotsrc.org/lokigames/open-source/smpeg/${pkgname}-${pkgver}.tar.gz + smpeg-0.4.4-gcc41.patch) +sha1sums=('6d7f4449472e6270ab435b2224f3fad951c35259' + '7d9a2ad7f6b702dfe3adcb87601d9b55022bbd1e') build() { - cd $startdir/src/$pkgname-$pkgver - patch -p1 < ../smpeg-0.4.4-gcc41.patch - ./configure --prefix=/usr - make LDFLAGS+=-lstdc++ || return 1 - make DESTDIR=$startdir/pkg install + cd ${srcdir}/${pkgname}-${pkgver} + patch -p1 -i $srcdir/smpeg-0.4.4-gcc41.patch + ./configure --prefix=/usr --mandir=/usr/share/man --disable-static + make LDFLAGS+=-lstdc++ +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install - #fix aclocal warnings + # fix aclocal warnings sed -i "s#(AM_PATH_SMPEG#([AM_PATH_SMPEG]#" ${pkgdir}/usr/share/aclocal/smpeg.m4 } diff --git a/abs/extra/snes9x/PKGBUILD b/abs/extra/snes9x/PKGBUILD index 1b10fe0..68b8032 100644 --- a/abs/extra/snes9x/PKGBUILD +++ b/abs/extra/snes9x/PKGBUILD @@ -1,49 +1,56 @@ -# $Id: PKGBUILD,v 1.13 2007/06/19 02:12:51 Snowman Exp $ -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: Alexander Baldeck <alexander@archlinux.org> -# Contributor: Marcel Wysocki <maci@satgnu.net> +# $Id: PKGBUILD 78959 2012-10-28 04:11:03Z ebelanger $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> pkgbase=snes9x pkgname=('snes9x' 'snes9x-gtk') -pkgver=1.52 -pkgrel=2 +pkgver=1.53 +pkgrel=5 arch=('i686' 'x86_64') -url="http://www.snes9x.com" +url="https://code.google.com/p/snes9x-gtk/" license=('custom') -depends=('zlib' 'libpng' 'sdl' 'alsa-lib' 'libglade' 'libxv') -makedepends=('intltool' 'nasm' 'mesa') -source=(http://snes9x-gtk.googlecode.com/files/${pkgbase}-${pkgver}-src.tar.bz2) -md5sums=('813bd3a0f99732ee0238a2c8ab417725') -sha1sums=('fb3957b68fcede882518516094a73ec5bbed76cf') +makedepends=('intltool' 'nasm' 'mesa' 'libpng' 'sdl' 'gtk2' 'libxv' \ + 'desktop-file-utils' ) +source=(http://snes9x-gtk.googlecode.com/files/${pkgbase}-${pkgver}-src.tar.bz2 + snes9x-gtk2.24.diff.gz) +sha1sums=('57be6480369f66b9aaaeb722789ce114f58ed1e2' + '680dbe0a70f1821bc7931539e72f5a1a95e3938c') build() { - cd "${srcdir}/${pkgbase}-${pkgver}-src/unix" - ./configure --prefix=/usr --with-sdd1-decomp --enable-netplay || return 1 - make || return 1 + cd "${srcdir}/${pkgbase}-${pkgver}-src" + patch -p1 -i "${srcdir}/snes9x-gtk2.24.diff" + cd unix + ./configure --prefix=/usr --with-sdd1-decomp --enable-netplay + make cd "${srcdir}/${pkgbase}-${pkgver}-src/gtk" - ./configure --prefix=/usr --with-sdd1-decomp --with-netplay --with-opengl || return 1 - make || return 1 + ./configure --prefix=/usr --with-sdd1-decomp --with-netplay --with-opengl + make } package_snes9x() { - pkgdesc="A portable Emulator for the Super Nintento Entertainment System" - depends=('zlib' 'gcc-libs' 'libpng' 'libxext' 'libsm') + pkgdesc="A portable Emulator for the Super Nintendo Entertainment System" + depends=('gcc-libs' 'libpng' 'libxext' 'libsm') cd "${srcdir}/${pkgbase}-${pkgver}-src/unix" - install -D -m755 snes9x "${pkgdir}/usr/bin/snes9x" || return 1 + install -D -m755 snes9x "${pkgdir}/usr/bin/snes9x" + install -d "${pkgdir}/usr/share/doc/${pkgname}" + install -D -m644 ../docs/{snes9x.conf.default,{control-inputs,controls,snapshots}.txt} \ + "${pkgdir}/usr/share/doc/${pkgname}/" install -D -m644 "${srcdir}/${pkgbase}-${pkgver}-src/docs/snes9x-license.txt" \ - "${pkgdir}/usr/share/licenses/snes9x/LICENSE" + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } package_snes9x-gtk() { - pkgdesc="A portable Emulator for the Super Nintento Entertainment System - GTK version" + pkgdesc="A portable Emulator for the Super Nintendo Entertainment System - GTK version" license=('custom' 'LGPL') - depends=('sdl' 'libgl' 'alsa-lib' 'libglade' 'libxv') + depends=('sdl' 'libgl' 'libpulse' 'gtk2' 'libxv' 'desktop-file-utils' 'gnome-icon-theme') install=snes9x-gtk.install cd "${srcdir}/${pkgbase}-${pkgver}-src/gtk" - make DESTDIR="${pkgdir}" install || return 1 + make DESTDIR="${pkgdir}" install + install -d "${pkgdir}/usr/share/doc/${pkgname}" + install -D -m644 ../docs/{snes9x.conf.default,{control-inputs,controls,snapshots}.txt} \ + "${pkgdir}/usr/share/doc/${pkgname}/" install -D -m644 "${srcdir}/${pkgbase}-${pkgver}-src/docs/snes9x-license.txt" \ - "${pkgdir}/usr/share/licenses/snes9x-gtk/LICENSE" + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/abs/extra/snes9x/__changelog b/abs/extra/snes9x/__changelog new file mode 100644 index 0000000..7d30ed4 --- /dev/null +++ b/abs/extra/snes9x/__changelog @@ -0,0 +1,2 @@ +removed libpulse +remove gnome-icon-theme diff --git a/abs/extra/snes9x/snes9x-gtk2.24.diff.gz b/abs/extra/snes9x/snes9x-gtk2.24.diff.gz Binary files differnew file mode 100644 index 0000000..f8e86d7 --- /dev/null +++ b/abs/extra/snes9x/snes9x-gtk2.24.diff.gz diff --git a/abs/extra/speex/PKGBUILD b/abs/extra/speex/PKGBUILD index aac6749..7bf7e7b 100644 --- a/abs/extra/speex/PKGBUILD +++ b/abs/extra/speex/PKGBUILD @@ -1,25 +1,28 @@ -# $Id: PKGBUILD 7445 2008-08-02 03:05:20Z eduardo $ +# $Id: PKGBUILD 137583 2011-09-09 22:58:20Z allan $ +# Maintainer: # Contributer: Jason Chu <jason@archlinux.org> -# Maintainer: Jason Chu <jason@archlinux.org> pkgname=speex pkgver=1.2rc1 -pkgrel=1 +pkgrel=2 pkgdesc="A free codec for free speech" arch=('i686' 'x86_64') +url="http://www.speex.org/" license=('BSD') depends=('libogg') +options=('!libtool') source=(http://downloads.us.xiph.org/releases/$pkgname/$pkgname-$pkgver.tar.gz) md5sums=('c4438b22c08e5811ff10e2b06ee9b9ae') -url="http://www.speex.org/" build() { - cd $startdir/src/speex-$pkgver - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var - make || return 1 - make DESTDIR=$startdir/pkg install - #to fix kde detection - cp $startdir/pkg/usr/include/speex/* $startdir/pkg/usr/include/ - #libtoolslay - find $startdir/pkg -name '*.la' -exec rm {} \; + cd $srcdir/speex-$pkgver + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var + make +} + +package() { + cd $srcdir/speex-$pkgver + make DESTDIR=$startdir/pkg install + + install -D -m644 COPYING $startdir/pkg/usr/share/licenses/$pkgname/LICENSE } diff --git a/abs/extra/sqlite/PKGBUILD b/abs/extra/sqlite/PKGBUILD new file mode 100644 index 0000000..062789e --- /dev/null +++ b/abs/extra/sqlite/PKGBUILD @@ -0,0 +1,93 @@ +# $Id: PKGBUILD 161621 2012-06-12 15:12:59Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> + +pkgbase="sqlite" +pkgname=('sqlite' 'sqlite-tcl' 'sqlite-doc') +_amalgamationver=3071300 +_amalgamationver2=${_amalgamationver/00/} +_docver=${_amalgamationver} #3070700 +#pkgver=${_amalgamationver2//0/.} +pkgver=3.7.13 +pkgrel=1 +pkgdesc="A C library that implements an SQL database engine" +arch=('i686' 'x86_64') +license=('custom') +url="http://www.sqlite.org/" +makedepends=('tcl' 'readline') +source=( # tarball containing the amalgamation for SQLite >= 3.7.5 together with a configure script and makefile for building it; includes now also the Tcl Extension Architecture (TEA) + http://www.sqlite.org/sqlite-autoconf-$_amalgamationver.tar.gz + #http://www.sqlite.org/sqlite-doc-${_amalgamationver}.zip + http://www.sqlite.org/sqlite-doc-${_docver}.zip + license.txt) +options=('!libtool' '!emptydirs') +md5sums=('c97df403e8a3d5b67bb408fcd6aabd8e' + '16a003d5a619a6c725e3d81cf5aaba2a' + 'c1cdbc5544034d9012e421e75a5e4890') + +build() { + export CFLAGS="$CFLAGS -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_SECURE_DELETE" + + # build sqlite + cd "$srcdir"/sqlite-autoconf-$_amalgamationver + ./configure --prefix=/usr \ + --disable-static + make + + # build the tcl extension + cd "$srcdir"/sqlite-autoconf-$_amalgamationver/tea + ./configure --prefix=/usr \ + --with-system-sqlite + make + +} + +package_sqlite() { + + pkgdesc="A C library that implements an SQL database engine" + depends=('readline') + provides=("sqlite3=$pkgver") + replaces=("sqlite3") + + cd ${srcdir}/sqlite-autoconf-$_amalgamationver + make DESTDIR=${pkgdir} install + + # license + install -D -m644 ${srcdir}/license.txt ${pkgdir}/usr/share/licenses/${pkgname}/license.txt +} + +package_sqlite-tcl() { + + pkgdesc="sqlite Tcl Extension Architecture (TEA)" + depends=('sqlite') + provides=("sqlite3-tcl=$pkgver") + replaces=("sqlite3-tcl") + + cd ${srcdir}/sqlite-autoconf-$_amalgamationver/tea + make DESTDIR=${pkgdir} install +} + +package_sqlite-doc() { + + pkgdesc="most of the static HTML files that comprise this website, including all of the SQL Syntax and the C/C++ interface specs and other miscellaneous documentation" + #arch=('any') - not yet supported + provides=("sqlite3-doc=$pkgver") + replaces=("sqlite3-doc") + + #cd ${srcdir}/sqlite-doc-${_amalgamationver} + cd ${srcdir}/sqlite-doc-${_docver} + mkdir -p ${pkgdir}/usr/share/doc/${pkgbase} + cp -R * ${pkgdir}/usr/share/doc/${pkgbase}/ + + # fix permissions and remove obsolete files; https://bugs.archlinux.org/task/24605 + find ${pkgdir} -type f -perm 755 -exec ls -lha {} \; + find ${pkgdir} -type f -perm 755 -exec chmod 644 {} \; + + find ${pkgdir} -type f -name '*~' -exec ls -lha {} \; + find ${pkgdir} -type d -name '*~' -exec ls -lha {} \; + find ${pkgdir} -name '*~' -exec rm -f {} \; + + find ${pkgdir} -type f -name '.~*' -exec ls -lha {} \; # /build/pkg/sqlite-doc/usr/share/doc/sqlite/images/fileformat/.~lock.indexpage.odg# + find ${pkgdir} -type d -name '.~*' -exec ls -lha {} \; + find ${pkgdir} -name '.~*' -exec rm -f {} \; +} diff --git a/abs/extra/sqlite/license.txt b/abs/extra/sqlite/license.txt new file mode 100644 index 0000000..118c5d5 --- /dev/null +++ b/abs/extra/sqlite/license.txt @@ -0,0 +1,33 @@ +SQLite Copyright +SQLite is in the +Public Domain + + +All of the deliverable code in SQLite has been dedicated to the public domain by the authors. All code authors, and representatives of the companies they work for, have signed affidavits dedicating their contributions to the public domain and originals of those signed affidavits are stored in a firesafe at the main offices of Hwaci. Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original SQLite code, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. + +The previous paragraph applies to the deliverable code in SQLite - those parts of the SQLite library that you actually bundle and ship with a larger application. Portions of the documentation and some code used as part of the build process might fall under other licenses. The details here are unclear. We do not worry about the licensing of the documentation and build code so much because none of these things are part of the core deliverable SQLite library. + +All of the deliverable code in SQLite has been written from scratch. No code has been taken from other projects or from the open internet. Every line of code can be traced back to its original author, and all of those authors have public domain dedications on file. So the SQLite code base is clean and is uncontaminated with licensed code from other projects. +Obtaining An Explicit License To Use SQLite + +Even though SQLite is in the public domain and does not require a license, some users want to obtain a license anyway. Some reasons for obtaining a license include: +You are using SQLite in a jurisdiction that does not recognize the public domain. +You are using SQLite in a jurisdiction that does not recognize the right of an author to dedicate their work to the public domain. +You want to hold a tangible legal document as evidence that you have the legal right to use and distribute SQLite. +Your legal department tells you that you have to purchase a license. + +If you feel like you really have to purchase a license for SQLite, Hwaci, the company that employs the architect and principal developers of SQLite, will sell you one. +Contributed Code + +In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement: +The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law. + +We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to: +Hwaci +6200 Maple Cove Lane +Charlotte, NC 28269 +USA + +A template copyright release is available in PDF or HTML. You can use this release to make future changes. + +see http://www.sqlite.org/copyright.html
\ No newline at end of file diff --git a/abs/extra/strace/PKGBUILD b/abs/extra/strace/PKGBUILD index 5a33af7..30a93a6 100644 --- a/abs/extra/strace/PKGBUILD +++ b/abs/extra/strace/PKGBUILD @@ -1,27 +1,28 @@ -# $Id$ +# $Id: PKGBUILD 158298 2012-05-03 15:18:30Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=strace -pkgver=4.6 +pkgver=4.7 pkgrel=1 pkgdesc="A useful diagnositic, instructional, and debugging tool" arch=('i686' 'x86_64') url="http://sourceforge.net/projects/strace/" license=('custom') depends=('perl') -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-$pkgver.tar.xz) -md5sums=('e537b2b1afeec70c0e6e27a0d0fd671e') +source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-$pkgver.tar.xz") +md5sums=('6054c3880a00c6703f83b57f15e04642') build() { cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr make } package() { cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}/" install - install -Dm644 COPYRIGHT ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + make DESTDIR="${pkgdir}/" install + install -Dm644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/abs/extra/subversion/PKGBUILD b/abs/extra/subversion/PKGBUILD index 6e7efe0..0086102 100644 --- a/abs/extra/subversion/PKGBUILD +++ b/abs/extra/subversion/PKGBUILD @@ -1,92 +1,81 @@ -# $Id: PKGBUILD 98016 2010-11-03 03:22:18Z paul $ -# Maintainer: Paul Mattal <paul@archlinux.org> +# $Id: PKGBUILD 160577 2012-06-02 10:29:00Z bluewind $ +# Maintainer: StĂ©phane Gaudreault <stephane@archlinux.org> +# Contributor: Paul Mattal <paul@archlinux.org> # Contributor: Jason Chu <jason@archlinux.org> pkgname=subversion -pkgver=1.6.13 -pkgrel=4 -pkgdesc="Replacement for CVS, another versioning system (SVN)" +pkgver=1.7.5 +pkgrel=2 +pkgdesc="A Modern Concurrent Version Control System" arch=('i686' 'x86_64') -license=('apache' 'bsd') -depends=('neon' 'apr-util') -makedepends=('heimdal' 'apache' 'python2' 'perl' 'swig' 'ruby' 'jdk' - 'autoconf' 'sqlite3' 'db' 'e2fsprogs' ) -source=(http://subversion.tigris.org/downloads/$pkgname-$pkgver.tar.bz2 - svnserve svn svnserve.conf svnmerge.py - subversion.rpath.fix.patch - subversion.suppress.deprecation.warnings.patch) +license=('APACHE') +depends=('neon' 'apr-util' 'sqlite' 'file') +#optdepends=('libgnome-keyring' 'kdeutils-kwallet' 'bash-completion: for svn bash completion' \ +optdepends=('bash-completion: for svn bash completion' \ + 'python2: for some hook scripts') +makedepends=('krb5' 'apache' 'python2' 'perl' 'swig' 'autoconf' 'db' 'e2fsprogs') backup=('etc/xinetd.d/svn' 'etc/conf.d/svnserve') + url="http://subversion.apache.org/" provides=('svn') -options=('!makeflags' '!libtool') -optdepends=('libgnome-keyring' 'kdeutils-kwallet' 'bash-completion: for svn bash completion') +options=('!makeflags' '!libtool' '!emptydirs') +source=(http://apache.mirror.rafal.ca/subversion/$pkgname-$pkgver.tar.bz2{,.asc} + svnserve svn svnserve.conf subversion.rpath.fix.patch) +sha1sums=('05c079762690d5ac1ccd2549742e7ef70fa45cf1' + 'b267cba19b4f56360657a5bf5b231950e027a45a' + '64ba3e6ebafc08ac62f59d788f7a825fdce69573' + '73b36c046c09cec2093354911c89e3ba8056af6c' + 'ad117bf3b2a838a9a678a93fd8db1a066ad46c41' + '3d1e28408a9abb42af2e531adc0d01ce21acfad6') build() { - cd ${srcdir}/${pkgname}-${pkgver} - + cd "${srcdir}/${pkgname}-${pkgver}" export PYTHON=/usr/bin/python2 - # apply patches - patch -p0 < $srcdir/subversion.rpath.fix.patch - patch -p1 -i $srcdir/subversion.suppress.deprecation.warnings.patch + patch -p0 -i ../subversion.rpath.fix.patch + sed -i 's|/usr/bin/env python|/usr/bin/env python2|' tools/hook-scripts/{,mailer/{,tests/}}*.py - # configure - autoreconf ./configure --prefix=/usr --with-apr=/usr --with-apr-util=/usr \ - --with-zlib=/usr --with-neon=/usr --with-sqlite=/usr \ - --enable-javahl --without-gnome-keyring --with-apxs \ - --with-sqlite=/usr --with-jdk - - # build - (make external-all && make LT_LDFLAGS="-L$Fdestdir/usr/lib" local-all ) + --with-zlib=/usr --with-neon=/usr --with-apxs \ + --with-sqlite=/usr --with-berkeley-db=:/usr/include/:/usr/lib:db-5.3 +# --enable-javahl --with-gnome-keyring --with-kwallet + + make external-all + make LT_LDFLAGS="-L$Fdestdir/usr/lib" local-all + make swig_pydir=/usr/lib/python2.7/site-packages/libsvn \ + swig_pydir_extra=/usr/lib/python2.7/site-packages/svn swig-py swig-pl #javahl # swig-rb } -package() { - cd ${srcdir}/${pkgname}-${pkgver} - - # install - export LD_LIBRARY_PATH=${pkgdir}/usr/lib:$LD_LIBRARY_PATH - make DESTDIR=${pkgdir} install - - make DESTDIR=${pkgdir} swig-py - make install-swig-py DESTDIR=${pkgdir} - - install -d ${pkgdir}/usr/lib/python2.7 - mv ${pkgdir}/usr/lib/svn-python/ ${pkgdir}/usr/lib/python2.7/site-packages +#check() { +# cd "${srcdir}/${pkgname}-${pkgver}" +# export LANG=C LC_ALL=C +# make check check-swig-pl check-swig-py check-javahl CLEANUP=yes # check-swig-rb +#} - install -d ${pkgdir}/usr/share/subversion - install -d -m 755 tools/hook-scripts ${pkgdir}/usr/share/subversion/ - rm -f ${pkgdir}/usr/share/subversion/hook-scripts/*.in - - make DESTDIR=${pkgdir} swig-pl - make install-swig-pl DESTDIR=${pkgdir} INSTALLDIRS=vendor - rm -f ${pkgdir}/usr/lib/perl5/vendor_perl/auto/SVN/_Core/.packlist - rm -rf ${pkgdir}/usr/lib/perl5/core_perl - - make DESTDIR=${pkgdir} swig-rb - make install-swig-rb DESTDIR=${pkgdir} - - make DESTDIR=${pkgdir} javahl - make DESTDIR=${pkgdir} install-javahl - - install -d ${pkgdir}/etc/{rc.d,xinetd.d,conf.d} - - install -m 755 ${srcdir}/svnserve ${pkgdir}/etc/rc.d - install -m 644 ${srcdir}/svn ${pkgdir}/etc/xinetd.d - install -m 644 ${srcdir}/svnserve.conf ${pkgdir}/etc/conf.d/svnserve - install -m 755 ${srcdir}/svnmerge.py ${pkgdir}/usr/bin/svnmerge - install -D -m 644 ${srcdir}/subversion-$pkgver/COPYING \ - ${pkgdir}/usr/share/licenses/$pkgname/LICENSE - - # bash completion - install -Dm 644 ${srcdir}/${pkgname}-${pkgver}/tools/client-side/bash_completion \ - ${pkgdir}/etc/bash_completion.d/subversion +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + export LD_LIBRARY_PATH="${pkgdir}"/usr/lib:${LD_LIBRARY_PATH} + make DESTDIR="${pkgdir}" INSTALLDIRS=vendor \ + swig_pydir=/usr/lib/python2.7/site-packages/libsvn \ + swig_pydir_extra=/usr/lib/python2.7/site-packages/svn \ + install install-swig-py install-swig-pl #install-javahl # install-swig-rb + + install -d "${pkgdir}"/usr/share/subversion + cp -a tools/hook-scripts "${pkgdir}"/usr/share/subversion/ + rm "${pkgdir}"/usr/share/subversion/hook-scripts/*.in + + rm "${pkgdir}"/usr/lib/perl5/vendor_perl/auto/SVN/_Core/.packlist + rm -r "${pkgdir}"/usr/lib/perl5/core_perl + + install -D -m 755 "${srcdir}"/svnserve "${pkgdir}"/etc/rc.d/svnserve + install -D -m 644 "${srcdir}"/svn "${pkgdir}"/etc/xinetd.d/svn + install -D -m 644 "${srcdir}"/svnserve.conf "${pkgdir}"/etc/conf.d/svnserve + + install -Dm 644 tools/client-side/bash_completion \ + "${pkgdir}"/usr/share/bash-completion/completions/subversion + for i in svn svnadmin svndumpfilter svnlook svnsync svnversion; do + ln -sf subversion "${pkgdir}"/usr/share/bash-completion/completions/${i} + done } -md5sums=('7ae1c827689f21cf975804005be30aeb' - 'a2b029e8385007ffb99b437b30521c90' - 'a0db6dd43af33952739b6ec089852630' - 'c459e299192552f61578f3438abf0664' - 'a6371baeda7e224504629ecdda2749b4' - '6b4340ba9d8845cd8497e013ae01be3f' - '1166f3b7413d7e7450299b3525680bbe') diff --git a/abs/extra/subversion/__changelog b/abs/extra/subversion/__changelog new file mode 100644 index 0000000..24ce429 --- /dev/null +++ b/abs/extra/subversion/__changelog @@ -0,0 +1 @@ +remove java,kdelibs , libgnome diff --git a/abs/extra/subversion/subversion.suppress.deprecation.warnings.patch b/abs/extra/subversion/subversion.suppress.deprecation.warnings.patch deleted file mode 100644 index 94ce89b..0000000 --- a/abs/extra/subversion/subversion.suppress.deprecation.warnings.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -urN subversion-1.6.9/subversion/bindings/swig/python/svn/core.py subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py ---- subversion-1.6.9/subversion/bindings/swig/python/svn/core.py 2009-02-13 11:22:26.000000000 -0500 -+++ subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py 2010-02-08 07:46:29.000000000 -0500 -@@ -19,6 +19,7 @@ - from libsvn.core import * - import libsvn.core as _libsvncore - import atexit as _atexit -+import warnings - - class SubversionException(Exception): - def __init__(self, message=None, apr_err=None, child=None, -@@ -44,7 +45,9 @@ - Exception.__init__(self, *args) - - self.apr_err = apr_err -- self.message = message -+ with warnings.catch_warnings(): -+ warnings.simplefilter("ignore", DeprecationWarning) -+ self.message = message - self.child = child - self.file = file - self.line = line diff --git a/abs/extra/subversion/svnmerge.py b/abs/extra/subversion/svnmerge.py deleted file mode 100644 index d893164..0000000 --- a/abs/extra/subversion/svnmerge.py +++ /dev/null @@ -1,2370 +0,0 @@ -#!/usr/bin/env python2 -# -*- coding: utf-8 -*- -# Copyright (c) 2005, Giovanni Bajo -# Copyright (c) 2004-2005, Awarix, Inc. -# All rights reserved. -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -# -# Author: Archie Cobbs <archie at awarix dot com> -# Rewritten in Python by: Giovanni Bajo <rasky at develer dot com> -# -# Acknowledgments: -# John Belmonte <john at neggie dot net> - metadata and usability -# improvements -# Blair Zajac <blair at orcaware dot com> - random improvements -# Raman Gupta <rocketraman at fastmail dot fm> - bidirectional and transitive -# merging support -# Dustin J. Mitchell <dustin at zmanda dot com> - support for multiple -# location identifier formats -# -# $HeadURL$ -# $LastChangedDate$ -# $LastChangedBy$ -# $LastChangedRevision$ -# -# Requisites: -# svnmerge.py has been tested with all SVN major versions since 1.1 (both -# client and server). It is unknown if it works with previous versions. -# -# Differences from svnmerge.sh: -# - More portable: tested as working in FreeBSD and OS/2. -# - Add double-verbose mode, which shows every svn command executed (-v -v). -# - "svnmerge avail" now only shows commits in source, not also commits in -# other parts of the repository. -# - Add "svnmerge block" to flag some revisions as blocked, so that -# they will not show up anymore in the available list. Added also -# the complementary "svnmerge unblock". -# - "svnmerge avail" has grown two new options: -# -B to display a list of the blocked revisions -# -A to display both the blocked and the available revisions. -# - Improved generated commit message to make it machine parsable even when -# merging commits which are themselves merges. -# - Add --force option to skip working copy check -# - Add --record-only option to "svnmerge merge" to avoid performing -# an actual merge, yet record that a merge happened. -# - Can use a variety of location-identifier formats -# -# TODO: -# - Add "svnmerge avail -R": show logs in reverse order -# -# Information for Hackers: -# -# Identifiers for branches: -# A branch is identified in three ways within this source: -# - as a working copy (variable name usually includes 'dir') -# - as a fully qualified URL -# - as a path identifier (an opaque string indicating a particular path -# in a particular repository; variable name includes 'pathid') -# A "target" is generally user-specified, and may be a working copy or -# a URL. - -import sys, os, getopt, re, types, tempfile, time, locale -from bisect import bisect -from xml.dom import pulldom - -NAME = "svnmerge" -if not hasattr(sys, "version_info") or sys.version_info < (2, 0): - error("requires Python 2.0 or newer") - -# Set up the separator used to separate individual log messages from -# each revision merged into the target location. Also, create a -# regular expression that will find this same separator in already -# committed log messages, so that the separator used for this run of -# svnmerge.py will have one more LOG_SEPARATOR appended to the longest -# separator found in all the commits. -LOG_SEPARATOR = 8 * '.' -LOG_SEPARATOR_RE = re.compile('^((%s)+)' % re.escape(LOG_SEPARATOR), - re.MULTILINE) - -# Each line of the embedded log messages will be prefixed by LOG_LINE_PREFIX. -LOG_LINE_PREFIX = 2 * ' ' - -# Set python to the default locale as per environment settings, same as svn -# TODO we should really parse config and if log-encoding is specified, set -# the locale to match that encoding -locale.setlocale(locale.LC_ALL, '') - -# We want the svn output (such as svn info) to be non-localized -# Using LC_MESSAGES should not affect localized output of svn log, for example -if os.environ.has_key("LC_ALL"): - del os.environ["LC_ALL"] -os.environ["LC_MESSAGES"] = "C" - -############################################################################### -# Support for older Python versions -############################################################################### - -# True/False constants are Python 2.2+ -try: - True, False -except NameError: - True, False = 1, 0 - -def lstrip(s, ch): - """Replacement for str.lstrip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - i = 0 - try: - while s[i] == ch: - i = i+1 - return s[i:] - except IndexError: - return "" - -def rstrip(s, ch): - """Replacement for str.rstrip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - try: - if s[-1] != ch: - return s - i = -2 - while s[i] == ch: - i = i-1 - return s[:i+1] - except IndexError: - return "" - -def strip(s, ch): - """Replacement for str.strip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - return lstrip(rstrip(s, ch), ch) - -def rsplit(s, sep, maxsplits=0): - """Like str.rsplit, which is Python 2.4+ only.""" - L = s.split(sep) - if not 0 < maxsplits <= len(L): - return L - return [sep.join(L[0:-maxsplits])] + L[-maxsplits:] - -############################################################################### - -def kwextract(s): - """Extract info from a svn keyword string.""" - try: - return strip(s, "$").strip().split(": ")[1] - except IndexError: - return "<unknown>" - -__revision__ = kwextract('$Rev$') -__date__ = kwextract('$Date$') - -# Additional options, not (yet?) mapped to command line flags -default_opts = { - "svn": "svn", - "prop": NAME + "-integrated", - "block-prop": NAME + "-blocked", - "commit-verbose": True, - "verbose": 0, -} -logs = {} - -def console_width(): - """Get the width of the console screen (if any).""" - try: - return int(os.environ["COLUMNS"]) - except (KeyError, ValueError): - pass - - try: - # Call the Windows API (requires ctypes library) - from ctypes import windll, create_string_buffer - h = windll.kernel32.GetStdHandle(-11) - csbi = create_string_buffer(22) - res = windll.kernel32.GetConsoleScreenBufferInfo(h, csbi) - if res: - import struct - (bufx, bufy, - curx, cury, wattr, - left, top, right, bottom, - maxx, maxy) = struct.unpack("hhhhHhhhhhh", csbi.raw) - return right - left + 1 - except ImportError: - pass - - # Parse the output of stty -a - if os.isatty(1): - out = os.popen("stty -a").read() - m = re.search(r"columns (\d+);", out) - if m: - return int(m.group(1)) - - # sensible default - return 80 - -def error(s): - """Subroutine to output an error and bail.""" - print >> sys.stderr, "%s: %s" % (NAME, s) - sys.exit(1) - -def report(s): - """Subroutine to output progress message, unless in quiet mode.""" - if opts["verbose"]: - print "%s: %s" % (NAME, s) - -def prefix_lines(prefix, lines): - """Given a string representing one or more lines of text, insert the - specified prefix at the beginning of each line, and return the result. - The input must be terminated by a newline.""" - assert lines[-1] == "\n" - return prefix + lines[:-1].replace("\n", "\n"+prefix) + "\n" - -def recode_stdout_to_file(s): - if locale.getdefaultlocale()[1] is None or not hasattr(sys.stdout, "encoding") \ - or sys.stdout.encoding is None: - return s - u = s.decode(sys.stdout.encoding) - return u.encode(locale.getdefaultlocale()[1]) - -class LaunchError(Exception): - """Signal a failure in execution of an external command. Parameters are the - exit code of the process, the original command line, and the output of the - command.""" - -try: - """Launch a sub-process. Return its output (both stdout and stderr), - optionally split by lines (if split_lines is True). Raise a LaunchError - exception if the exit code of the process is non-zero (failure). - - This function has two implementations, one based on subprocess (preferred), - and one based on popen (for compatibility). - """ - import subprocess - import shlex - - def launch(cmd, split_lines=True): - # Requiring python 2.4 or higher, on some platforms we get - # much faster performance from the subprocess module (where python - # doesn't try to close an exhorbitant number of file descriptors) - stdout = "" - stderr = "" - try: - if os.name == 'nt': - p = subprocess.Popen(cmd, stdout=subprocess.PIPE, \ - close_fds=False, stderr=subprocess.PIPE) - else: - # Use shlex to break up the parameters intelligently, - # respecting quotes. shlex can't handle unicode. - args = shlex.split(cmd.encode('ascii')) - p = subprocess.Popen(args, stdout=subprocess.PIPE, \ - close_fds=False, stderr=subprocess.PIPE) - stdoutAndErr = p.communicate() - stdout = stdoutAndErr[0] - stderr = stdoutAndErr[1] - except OSError, inst: - # Using 1 as failure code; should get actual number somehow? For - # examples see svnmerge_test.py's TestCase_launch.test_failure and - # TestCase_launch.test_failurecode. - raise LaunchError(1, cmd, stdout + " " + stderr + ": " + str(inst)) - - if p.returncode == 0: - if split_lines: - # Setting keepends=True for compatibility with previous logic - # (where file.readlines() preserves newlines) - return stdout.splitlines(True) - else: - return stdout - else: - raise LaunchError(p.returncode, cmd, stdout + stderr) -except ImportError: - # support versions of python before 2.4 (slower on some systems) - def launch(cmd, split_lines=True): - if os.name not in ['nt', 'os2']: - import popen2 - p = popen2.Popen4(cmd) - p.tochild.close() - if split_lines: - out = p.fromchild.readlines() - else: - out = p.fromchild.read() - ret = p.wait() - if ret == 0: - ret = None - else: - ret >>= 8 - else: - i,k = os.popen4(cmd) - i.close() - if split_lines: - out = k.readlines() - else: - out = k.read() - ret = k.close() - - if ret is None: - return out - raise LaunchError(ret, cmd, out) - -def launchsvn(s, show=False, pretend=False, **kwargs): - """Launch SVN and grab its output.""" - username = password = configdir = "" - if opts.get("username", None): - username = "--username=" + opts["username"] - if opts.get("password", None): - password = "--password=" + opts["password"] - if opts.get("config-dir", None): - configdir = "--config-dir=" + opts["config-dir"] - cmd = ' '.join(filter(None, [opts["svn"], "--non-interactive", - username, password, configdir, s])) - if show or opts["verbose"] >= 2: - print cmd - if pretend: - return None - return launch(cmd, **kwargs) - -def svn_command(s): - """Do (or pretend to do) an SVN command.""" - out = launchsvn(s, show=opts["show-changes"] or opts["dry-run"], - pretend=opts["dry-run"], - split_lines=False) - if not opts["dry-run"]: - print out - -def check_dir_clean(dir): - """Check the current status of dir for local mods.""" - if opts["force"]: - report('skipping status check because of --force') - return - report('checking status of "%s"' % dir) - - # Checking with -q does not show unversioned files or external - # directories. Though it displays a debug message for external - # directories, after a blank line. So, practically, the first line - # matters: if it's non-empty there is a modification. - out = launchsvn("status -q %s" % dir) - if out and out[0].strip(): - error('"%s" has local modifications; it must be clean' % dir) - -class PathIdentifier: - """Abstraction for a path identifier, so that we can start talking - about it before we know the form that it takes in the properties (its - external_form). Objects are referenced in the class variable 'locobjs', - keyed by all known forms.""" - - # a map of UUID (or None) to repository root URL. - repo_hints = {} - - # a map from any known string form to the corresponding PathIdentifier - locobjs = {} - - def __init__(self, repo_relative_path, uuid=None, url=None, external_form=None): - self.repo_relative_path = repo_relative_path - self.uuid = uuid - self.url = url - self.external_form = external_form - - def __repr__(self): - return "<PathIdentifier " + ', '.join('%s=%r' % i for i in self.__dict__.items()) + '>' - - def __str__(self): - """Return a printable string representation""" - if self.external_form: - return self.external_form - if self.url: - return self.format('url') - if self.uuid: - return self.format('uuid') - return self.format('path') - - def from_pathid(pathid_str): - """convert pathid_str to a PathIdentifier""" - if not PathIdentifier.locobjs.has_key(pathid_str): - if is_url(pathid_str): - # we can determine every form; PathIdentifier.hint knows how to do that - PathIdentifier.hint(pathid_str) - elif pathid_str[:7] == 'uuid://': - mo = re.match('uuid://([^/]*)(.*)', pathid_str) - if not mo: - error("Invalid path identifier '%s'" % pathid_str) - uuid, repo_relative_path = mo.groups() - pathid = PathIdentifier(repo_relative_path, uuid=uuid) - # we can cache this by uuid:// pathid and by repo-relative path - PathIdentifier.locobjs[pathid_str] = PathIdentifier.locobjs[repo_relative_path] = pathid - elif pathid_str and pathid_str[0] == '/': - # strip any trailing slashes - pathid_str = pathid_str.rstrip('/') - pathid = PathIdentifier(repo_relative_path=pathid_str) - # we can only cache this by repo-relative path - PathIdentifier.locobjs[pathid_str] = pathid - else: - error("Invalid path identifier '%s'" % pathid_str) - return PathIdentifier.locobjs[pathid_str] - from_pathid = staticmethod(from_pathid) - - def from_target(target): - """Convert a target (either a working copy path or an URL) into a - path identifier.""" - # prime the cache first if we don't know about this target yet - if not PathIdentifier.locobjs.has_key(target): - PathIdentifier.hint(target) - - try: - return PathIdentifier.locobjs[target] - except KeyError: - error("Could not recognize path identifier '%s'" % target) - from_target = staticmethod(from_target) - - def hint(target): - """Cache some information about target, as it may be referenced by - repo-relative path in subversion properties; the cache can help to - expand such a relative path to a full path identifier.""" - if PathIdentifier.locobjs.has_key(target): return - if not is_url(target) and not is_wc(target): return - - url = target_to_url(target) - - root = get_repo_root(url) - assert root[-1] != "/" - assert url[:len(root)] == root, "url=%r, root=%r" % (url, root) - repo_relative_path = url[len(root):] - - try: - uuid = get_svninfo(target)['Repository UUID'] - uuid_pathid = 'uuid://%s%s' % (uuid, repo_relative_path) - except KeyError: - uuid = None - uuid_pathid = None - - locobj = PathIdentifier.locobjs.get(url) or \ - (uuid_pathid and PathIdentifier.locobjs.get(uuid_pathid)) - if not locobj: - locobj = PathIdentifier(repo_relative_path, uuid=uuid, url=url) - - PathIdentifier.repo_hints[uuid] = root # (uuid may be None) - - PathIdentifier.locobjs[target] = locobj - PathIdentifier.locobjs[url] = locobj - if uuid_pathid: - PathIdentifier.locobjs[uuid_pathid] = locobj - if not PathIdentifier.locobjs.has_key(repo_relative_path): - PathIdentifier.locobjs[repo_relative_path] = locobj - hint = staticmethod(hint) - - def format(self, fmt): - if fmt == 'path': - return self.repo_relative_path - elif fmt == 'uuid': - return "uuid://%s%s" % (self.uuid, self.repo_relative_path) - elif fmt == 'url': - return self.url - else: - error("Unkonwn path type '%s'" % fmt) - - def match_substring(self, str): - """Test whether str is a substring of any representation of this - PathIdentifier.""" - if self.repo_relative_path.find(str) >= 0: - return True - - if self.uuid: - if ("uuid://%s%s" % (self.uuid, self.repo_relative_path)).find(str) >= 0: - return True - - if self.url: - if (self.url + self.repo_relative_path).find(str) >= 0: - return True - - return False - - def get_url(self): - """Convert a pathid into a URL. If this is not possible, error out.""" - if self.url: - return self.url - # if we have a uuid and happen to know the URL for it, use that - elif self.uuid and PathIdentifier.repo_hints.has_key(self.uuid): - self.url = PathIdentifier.repo_hints[self.uuid] + self.repo_relative_path - PathIdentifier.locobjs[self.url] = self - return self.url - # if we've only seen one rep, use that (a guess, but an educated one) - elif not self.uuid and len(PathIdentifier.repo_hints) == 1: - uuid, root = PathIdentifier.repo_hints.items()[0] - if uuid: - self.uuid = uuid - PathIdentifier.locobjs['uuid://%s%s' % (uuid, self.repo_relative_path)] = self - self.url = root + self.repo_relative_path - PathIdentifier.locobjs[self.url] = self - report("Guessing that '%s' refers to '%s'" % (self, self.url)) - return self.url - else: - error("Cannot determine URL for '%s'; " % self + - "Explicit source argument (-S/--source) required.\n") - -class RevisionLog: - """ - A log of the revisions which affected a given URL between two - revisions. - """ - - def __init__(self, url, begin, end, find_propchanges=False): - """ - Create a new RevisionLog object, which stores, in self.revs, a list - of the revisions which affected the specified URL between begin and - end. If find_propchanges is True, self.propchange_revs will contain a - list of the revisions which changed properties directly on the - specified URL. URL must be the URL for a directory in the repository. - """ - self.url = url - - # Setup the log options (--quiet, so we don't show log messages) - log_opts = '--xml --quiet -r%s:%s "%s"' % (begin, end, url) - if find_propchanges: - # The --verbose flag lets us grab merge tracking information - # by looking at propchanges - log_opts = "--verbose " + log_opts - - # Read the log to look for revision numbers and merge-tracking info - self.revs = [] - self.propchange_revs = [] - repos_pathid = PathIdentifier.from_target(url) - for chg in SvnLogParser(launchsvn("log %s" % log_opts, - split_lines=False)): - self.revs.append(chg.revision()) - for p in chg.paths(): - if p.action() == 'M' and p.pathid() == repos_pathid.repo_relative_path: - self.propchange_revs.append(chg.revision()) - - # Save the range of the log - self.begin = int(begin) - if end == "HEAD": - # If end is not provided, we do not know which is the latest - # revision in the repository. So we set 'end' to the latest - # known revision. - self.end = self.revs[-1] - else: - self.end = int(end) - - self._merges = None - self._blocks = None - - def merge_metadata(self): - """ - Return a VersionedProperty object, with a cached view of the merge - metadata in the range of this log. - """ - - # Load merge metadata if necessary - if not self._merges: - self._merges = VersionedProperty(self.url, opts["prop"]) - self._merges.load(self) - - return self._merges - - def block_metadata(self): - if not self._blocks: - self._blocks = VersionedProperty(self.url, opts["block-prop"]) - self._blocks.load(self) - - return self._blocks - - -class VersionedProperty: - """ - A read-only, cached view of a versioned property. - - self.revs contains a list of the revisions in which the property changes. - self.values stores the new values at each corresponding revision. If the - value of the property is unknown, it is set to None. - - Initially, we set self.revs to [0] and self.values to [None]. This - indicates that, as of revision zero, we know nothing about the value of - the property. - - Later, if you run self.load(log), we cache the value of this property over - the entire range of the log by noting each revision in which the property - was changed. At the end of the range of the log, we invalidate our cache - by adding the value "None" to our cache for any revisions which fall out - of the range of our log. - - Once self.revs and self.values are filled, we can find the value of the - property at any arbitrary revision using a binary search on self.revs. - Once we find the last revision during which the property was changed, - we can lookup the associated value in self.values. (If the associated - value is None, the associated value was not cached and we have to do - a full propget.) - - An example: We know that the 'svnmerge' property was added in r10, and - changed in r21. We gathered log info up until r40. - - revs = [0, 10, 21, 40] - values = [None, "val1", "val2", None] - - What these values say: - - From r0 to r9, we know nothing about the property. - - In r10, the property was set to "val1". This property stayed the same - until r21, when it was changed to "val2". - - We don't know what happened after r40. - """ - - def __init__(self, url, name): - """View the history of a versioned property at URL with name""" - self.url = url - self.name = name - - # We know nothing about the value of the property. Setup revs - # and values to indicate as such. - self.revs = [0] - self.values = [None] - - # We don't have any revisions cached - self._initial_value = None - self._changed_revs = [] - self._changed_values = [] - - def load(self, log): - """ - Load the history of property changes from the specified - RevisionLog object. - """ - - # Get the property value before the range of the log - if log.begin > 1: - self.revs.append(log.begin-1) - try: - self._initial_value = self.raw_get(log.begin-1) - except LaunchError: - # The specified URL might not exist before the - # range of the log. If so, we can safely assume - # that the property was empty at that time. - self._initial_value = { } - self.values.append(self._initial_value) - else: - self._initial_value = { } - self.values[0] = self._initial_value - - # Cache the property values in the log range - old_value = self._initial_value - for rev in log.propchange_revs: - new_value = self.raw_get(rev) - if new_value != old_value: - self._changed_revs.append(rev) - self._changed_values.append(new_value) - self.revs.append(rev) - self.values.append(new_value) - old_value = new_value - - # Indicate that we know nothing about the value of the property - # after the range of the log. - if log.revs: - self.revs.append(log.end+1) - self.values.append(None) - - def raw_get(self, rev=None): - """ - Get the property at revision REV. If rev is not specified, get - the property at revision HEAD. - """ - return get_revlist_prop(self.url, self.name, rev) - - def get(self, rev=None): - """ - Get the property at revision REV. If rev is not specified, get - the property at revision HEAD. - """ - - if rev is not None: - - # Find the index using a binary search - i = bisect(self.revs, rev) - 1 - - # Return the value of the property, if it was cached - if self.values[i] is not None: - return self.values[i] - - # Get the current value of the property - return self.raw_get(rev) - - def changed_revs(self, key=None): - """ - Get a list of the revisions in which the specified dictionary - key was changed in this property. If key is not specified, - return a list of revisions in which any key was changed. - """ - if key is None: - return self._changed_revs - else: - changed_revs = [] - old_val = self._initial_value - for rev, val in zip(self._changed_revs, self._changed_values): - if val.get(key) != old_val.get(key): - changed_revs.append(rev) - old_val = val - return changed_revs - - def initialized_revs(self): - """ - Get a list of the revisions in which keys were added or - removed in this property. - """ - initialized_revs = [] - old_len = len(self._initial_value) - for rev, val in zip(self._changed_revs, self._changed_values): - if len(val) != old_len: - initialized_revs.append(rev) - old_len = len(val) - return initialized_revs - -class RevisionSet: - """ - A set of revisions, held in dictionary form for easy manipulation. If we - were to rewrite this script for Python 2.3+, we would subclass this from - set (or UserSet). As this class does not include branch - information, it's assumed that one instance will be used per - branch. - """ - def __init__(self, parm): - """Constructs a RevisionSet from a string in property form, or from - a dictionary whose keys are the revisions. Raises ValueError if the - input string is invalid.""" - - self._revs = {} - - revision_range_split_re = re.compile('[-:]') - - if isinstance(parm, types.DictType): - self._revs = parm.copy() - elif isinstance(parm, types.ListType): - for R in parm: - self._revs[int(R)] = 1 - else: - parm = parm.strip() - if parm: - for R in parm.split(","): - rev_or_revs = re.split(revision_range_split_re, R) - if len(rev_or_revs) == 1: - self._revs[int(rev_or_revs[0])] = 1 - elif len(rev_or_revs) == 2: - for rev in range(int(rev_or_revs[0]), - int(rev_or_revs[1])+1): - self._revs[rev] = 1 - else: - raise ValueError, 'Ill formatted revision range: ' + R - - def sorted(self): - revnums = self._revs.keys() - revnums.sort() - return revnums - - def normalized(self): - """Returns a normalized version of the revision set, which is an - ordered list of couples (start,end), with the minimum number of - intervals.""" - revnums = self.sorted() - revnums.reverse() - ret = [] - while revnums: - s = e = revnums.pop() - while revnums and revnums[-1] in (e, e+1): - e = revnums.pop() - ret.append((s, e)) - return ret - - def __str__(self): - """Convert the revision set to a string, using its normalized form.""" - L = [] - for s,e in self.normalized(): - if s == e: - L.append(str(s)) - else: - L.append(str(s) + "-" + str(e)) - return ",".join(L) - - def __contains__(self, rev): - return self._revs.has_key(rev) - - def __sub__(self, rs): - """Compute subtraction as in sets.""" - revs = {} - for r in self._revs.keys(): - if r not in rs: - revs[r] = 1 - return RevisionSet(revs) - - def __and__(self, rs): - """Compute intersections as in sets.""" - revs = {} - for r in self._revs.keys(): - if r in rs: - revs[r] = 1 - return RevisionSet(revs) - - def __nonzero__(self): - return len(self._revs) != 0 - - def __len__(self): - """Return the number of revisions in the set.""" - return len(self._revs) - - def __iter__(self): - return iter(self.sorted()) - - def __or__(self, rs): - """Compute set union.""" - revs = self._revs.copy() - revs.update(rs._revs) - return RevisionSet(revs) - -def merge_props_to_revision_set(merge_props, pathid): - """A converter which returns a RevisionSet instance containing the - revisions from PATH as known to BRANCH_PROPS. BRANCH_PROPS is a - dictionary of pathid -> revision set branch integration information - (as returned by get_merge_props()).""" - if not merge_props.has_key(pathid): - error('no integration info available for path "%s"' % pathid) - return RevisionSet(merge_props[pathid]) - -def dict_from_revlist_prop(propvalue): - """Given a property value as a string containing per-source revision - lists, return a dictionary whose key is a source path identifier - and whose value is the revisions for that source.""" - prop = {} - - # Multiple sources are separated by any whitespace. - for L in propvalue.split(): - # We use rsplit to play safe and allow colons in pathids. - pathid_str, revs = rsplit(L.strip(), ":", 1) - - pathid = PathIdentifier.from_pathid(pathid_str) - - # cache the "external" form we saw - pathid.external_form = pathid_str - - prop[pathid] = revs - return prop - -def get_revlist_prop(url_or_dir, propname, rev=None): - """Given a repository URL or working copy path and a property - name, extract the values of the property which store per-source - revision lists and return a dictionary whose key is a source path - identifier, and whose value is the revisions for that source.""" - - # Note that propget does not return an error if the property does - # not exist, it simply does not output anything. So we do not need - # to check for LaunchError here. - args = '--strict "%s" "%s"' % (propname, url_or_dir) - if rev: - args = '-r %s %s' % (rev, args) - out = launchsvn('propget %s' % args, split_lines=False) - - return dict_from_revlist_prop(out) - -def get_merge_props(dir): - """Extract the merged revisions.""" - return get_revlist_prop(dir, opts["prop"]) - -def get_block_props(dir): - """Extract the blocked revisions.""" - return get_revlist_prop(dir, opts["block-prop"]) - -def get_blocked_revs(dir, source_pathid): - p = get_block_props(dir) - if p.has_key(source_pathid): - return RevisionSet(p[source_pathid]) - return RevisionSet("") - -def format_merge_props(props, sep=" "): - """Formats the hash PROPS as a string suitable for use as a - Subversion property value.""" - assert sep in ["\t", "\n", " "] # must be a whitespace - props = props.items() - props.sort() - L = [] - for h, r in props: - L.append("%s:%s" % (h, r)) - return sep.join(L) - -def _run_propset(dir, prop, value): - """Set the property 'prop' of directory 'dir' to value 'value'. We go - through a temporary file to not run into command line length limits.""" - try: - fd, fname = tempfile.mkstemp() - f = os.fdopen(fd, "wb") - except AttributeError: - # Fallback for Python <= 2.3 which does not have mkstemp (mktemp - # suffers from race conditions. Not that we care...) - fname = tempfile.mktemp() - f = open(fname, "wb") - - try: - f.write(value) - f.close() - report("property data written to temp file: %s" % value) - svn_command('propset "%s" -F "%s" "%s"' % (prop, fname, dir)) - finally: - os.remove(fname) - -def set_props(dir, name, props): - props = format_merge_props(props) - if props: - _run_propset(dir, name, props) - else: - # Check if NAME exists on DIR before trying to delete it. - # As of 1.6 propdel no longer supports deleting a - # non-existent property. - out = launchsvn('propget "%s" "%s"' % (name, dir)) - if out: - svn_command('propdel "%s" "%s"' % (name, dir)) - -def set_merge_props(dir, props): - set_props(dir, opts["prop"], props) - -def set_block_props(dir, props): - set_props(dir, opts["block-prop"], props) - -def set_blocked_revs(dir, source_pathid, revs): - props = get_block_props(dir) - if revs: - props[source_pathid] = str(revs) - elif props.has_key(source_pathid): - del props[source_pathid] - set_block_props(dir, props) - -def is_url(url): - """Check if url looks like a valid url.""" - return re.search(r"^[a-zA-Z][-+\.\w]*://[^\s]+$", url) is not None and url[:4] != 'uuid' - -def check_url(url): - """Similar to is_url, but actually invoke get_svninfo to find out""" - return get_svninfo(url) != {} - -def is_pathid(pathid): - return isinstance(pathid, PathIdentifier) - -def is_wc(dir): - """Check if a directory is a working copy.""" - return os.path.isdir(os.path.join(dir, ".svn")) or \ - os.path.isdir(os.path.join(dir, "_svn")) - -_cache_svninfo = {} -def get_svninfo(target): - """Extract the subversion information for a target (through 'svn info'). - This function uses an internal cache to let clients query information - many times.""" - if _cache_svninfo.has_key(target): - return _cache_svninfo[target] - info = {} - for L in launchsvn('info "%s"' % target): - L = L.strip() - if not L: - continue - key, value = L.split(": ", 1) - info[key] = value.strip() - _cache_svninfo[target] = info - return info - -def target_to_url(target): - """Convert working copy path or repos URL to a repos URL.""" - if is_wc(target): - info = get_svninfo(target) - return info["URL"] - return target - -_cache_reporoot = {} -def get_repo_root(target): - """Compute the root repos URL given a working-copy path, or a URL.""" - # Try using "svn info WCDIR". This works only on SVN clients >= 1.3 - if not is_url(target): - try: - info = get_svninfo(target) - root = info["Repository Root"] - _cache_reporoot[root] = None - return root - except KeyError: - pass - url = target_to_url(target) - assert url[-1] != '/' - else: - url = target - - # Go through the cache of the repository roots. This avoids extra - # server round-trips if we are asking the root of different URLs - # in the same repository (the cache in get_svninfo() cannot detect - # that of course and would issue a remote command). - assert is_url(url) - for r in _cache_reporoot: - if url.startswith(r): - return r - - # Try using "svn info URL". This works only on SVN clients >= 1.2 - try: - info = get_svninfo(url) - # info may be {}, in which case we'll see KeyError here - root = info["Repository Root"] - _cache_reporoot[root] = None - return root - except (KeyError, LaunchError): - pass - - # Constrained to older svn clients, we are stuck with this ugly - # trial-and-error implementation. It could be made faster with a - # binary search. - while url: - temp = os.path.dirname(url) - try: - launchsvn('proplist "%s"' % temp) - except LaunchError: - _cache_reporoot[url] = None - return rstrip(url, "/") - url = temp - - error("svn repos root of %s not found" % target) - -class SvnLogParser: - """ - Parse the "svn log", going through the XML output and using pulldom (which - would even allow streaming the command output). - """ - def __init__(self, xml): - self._events = pulldom.parseString(xml) - def __getitem__(self, idx): - for event, node in self._events: - if event == pulldom.START_ELEMENT and node.tagName == "logentry": - self._events.expandNode(node) - return self.SvnLogRevision(node) - raise IndexError, "Could not find 'logentry' tag in xml" - - class SvnLogRevision: - def __init__(self, xmlnode): - self.n = xmlnode - def revision(self): - return int(self.n.getAttribute("revision")) - def author(self): - return self.n.getElementsByTagName("author")[0].firstChild.data - def paths(self): - return [self.SvnLogPath(n) - for n in self.n.getElementsByTagName("path")] - - class SvnLogPath: - def __init__(self, xmlnode): - self.n = xmlnode - def action(self): - return self.n.getAttribute("action") - def pathid(self): - return self.n.firstChild.data - def copyfrom_rev(self): - try: return self.n.getAttribute("copyfrom-rev") - except KeyError: return None - def copyfrom_pathid(self): - try: return self.n.getAttribute("copyfrom-path") - except KeyError: return None - -def get_copyfrom(target): - """Get copyfrom info for a given target (it represents the - repository-relative path from where it was branched). NOTE: - repos root has no copyfrom info. In this case None is returned. - - Returns the: - - source file or directory from which the copy was made - - revision from which that source was copied - - revision in which the copy was committed - """ - repos_path = PathIdentifier.from_target(target).repo_relative_path - for chg in SvnLogParser(launchsvn('log -v --xml --stop-on-copy "%s"' - % target, split_lines=False)): - for p in chg.paths(): - if p.action() == 'A' and p.pathid() == repos_path: - # These values will be None if the corresponding elements are - # not found in the log. - return p.copyfrom_pathid(), p.copyfrom_rev(), chg.revision() - return None,None,None - -def get_latest_rev(url): - """Get the latest revision of the repository of which URL is part.""" - try: - info = get_svninfo(url) - if not info.has_key("Revision"): - error("Not a valid URL: %s" % url) - return info["Revision"] - except LaunchError: - # Alternative method for latest revision checking (for svn < 1.2) - report('checking latest revision of "%s"' % url) - L = launchsvn('proplist --revprop -r HEAD "%s"' % opts["source-url"])[0] - rev = re.search("revision (\d+)", L).group(1) - report('latest revision of "%s" is %s' % (url, rev)) - return rev - -def get_created_rev(url): - """Lookup the revision at which the path identified by the - provided URL was first created.""" - oldest_rev = -1 - report('determining oldest revision for URL "%s"' % url) - ### TODO: Refactor this to use a modified RevisionLog class. - lines = None - cmd = "log -r1:HEAD --stop-on-copy -q " + url - try: - lines = launchsvn(cmd + " --limit=1") - except LaunchError: - # Assume that --limit isn't supported by the installed 'svn'. - lines = launchsvn(cmd) - if lines and len(lines) > 1: - i = lines[1].find(" ") - if i != -1: - oldest_rev = int(lines[1][1:i]) - if oldest_rev == -1: - error('unable to determine oldest revision for URL "%s"' % url) - return oldest_rev - -def get_commit_log(url, revnum): - """Return the log message for a specific integer revision - number.""" - out = launchsvn("log --incremental -r%d %s" % (revnum, url)) - return recode_stdout_to_file("".join(out[1:])) - -def construct_merged_log_message(url, revnums): - """Return a commit log message containing all the commit messages - in the specified revisions at the given URL. The separator used - in this log message is determined by searching for the longest - svnmerge separator existing in the commit log messages and - extending it by one more separator. This results in a new commit - log message that is clearer in describing merges that contain - other merges. Trailing newlines are removed from the embedded - log messages.""" - messages = [''] - longest_sep = '' - for r in revnums.sorted(): - message = get_commit_log(url, r) - if message: - message = re.sub(r'(\r\n|\r|\n)', "\n", message) - message = rstrip(message, "\n") + "\n" - messages.append(prefix_lines(LOG_LINE_PREFIX, message)) - for match in LOG_SEPARATOR_RE.findall(message): - sep = match[1] - if len(sep) > len(longest_sep): - longest_sep = sep - - longest_sep += LOG_SEPARATOR + "\n" - messages.append('') - return longest_sep.join(messages) - -def get_default_source(branch_target, branch_props): - """Return the default source for branch_target (given its branch_props). - Error out if there is ambiguity.""" - if not branch_props: - error("no integration info available") - - props = branch_props.copy() - pathid = PathIdentifier.from_target(branch_target) - - # To make bidirectional merges easier, find the target's - # repository local path so it can be removed from the list of - # possible integration sources. - if props.has_key(pathid): - del props[pathid] - - if len(props) > 1: - err_msg = "multiple sources found. " - err_msg += "Explicit source argument (-S/--source) required.\n" - err_msg += "The merge sources available are:" - for prop in props: - err_msg += "\n " + str(prop) - error(err_msg) - - return props.keys()[0] - -def should_find_reflected(branch_dir): - should_find_reflected = opts["bidirectional"] - - # If the source has integration info for the target, set find_reflected - # even if --bidirectional wasn't specified - if not should_find_reflected: - source_props = get_merge_props(opts["source-url"]) - should_find_reflected = source_props.has_key(PathIdentifier.from_target(branch_dir)) - - return should_find_reflected - -def analyze_revs(target_pathid, url, begin=1, end=None, - find_reflected=False): - """For the source of the merges in the source URL being merged into - target_pathid, analyze the revisions in the interval begin-end (which - defaults to 1-HEAD), to find out which revisions are changes in - the url, which are changes elsewhere (so-called 'phantom' - revisions), optionally which are reflected changes (to avoid - conflicts that can occur when doing bidirectional merging between - branches), and which revisions initialize merge tracking against other - branches. Return a tuple of four RevisionSet's: - (real_revs, phantom_revs, reflected_revs, initialized_revs). - - NOTE: To maximize speed, if "end" is not provided, the function is - not able to find phantom revisions following the last real - revision in the URL. - """ - - begin = str(begin) - if end is None: - end = "HEAD" - else: - end = str(end) - if long(begin) > long(end): - return RevisionSet(""), RevisionSet(""), \ - RevisionSet(""), RevisionSet("") - - logs[url] = RevisionLog(url, begin, end, find_reflected) - revs = RevisionSet(logs[url].revs) - - if end == "HEAD": - # If end is not provided, we do not know which is the latest revision - # in the repository. So return the phantom revision set only up to - # the latest known revision. - end = str(list(revs)[-1]) - - phantom_revs = RevisionSet("%s-%s" % (begin, end)) - revs - - if find_reflected: - reflected_revs = logs[url].merge_metadata().changed_revs(target_pathid) - reflected_revs += logs[url].block_metadata().changed_revs(target_pathid) - else: - reflected_revs = [] - - initialized_revs = RevisionSet(logs[url].merge_metadata().initialized_revs()) - reflected_revs = RevisionSet(reflected_revs) - - return revs, phantom_revs, reflected_revs, initialized_revs - -def analyze_source_revs(branch_target, source_url, **kwargs): - """For the given branch and source, extract the real and phantom - source revisions.""" - branch_url = target_to_url(branch_target) - branch_pathid = PathIdentifier.from_target(branch_target) - - # Extract the latest repository revision from the URL of the branch - # directory (which is already cached at this point). - end_rev = get_latest_rev(source_url) - - # Calculate the base of analysis. If there is a "1-XX" interval in the - # merged_revs, we do not need to check those. - base = 1 - r = opts["merged-revs"].normalized() - if r and r[0][0] == 1: - base = r[0][1] + 1 - - # See if the user filtered the revision set. If so, we are not - # interested in something outside that range. - if opts["revision"]: - revs = RevisionSet(opts["revision"]).sorted() - if base < revs[0]: - base = revs[0] - if end_rev > revs[-1]: - end_rev = revs[-1] - - return analyze_revs(branch_pathid, source_url, base, end_rev, **kwargs) - -def minimal_merge_intervals(revs, phantom_revs): - """Produce the smallest number of intervals suitable for merging. revs - is the RevisionSet which we want to merge, and phantom_revs are phantom - revisions which can be used to concatenate intervals, thus minimizing the - number of operations.""" - revnums = revs.normalized() - ret = [] - - cur = revnums.pop() - while revnums: - next = revnums.pop() - assert next[1] < cur[0] # otherwise it is not ordered - assert cur[0] - next[1] > 1 # otherwise it is not normalized - for i in range(next[1]+1, cur[0]): - if i not in phantom_revs: - ret.append(cur) - cur = next - break - else: - cur = (next[0], cur[1]) - - ret.append(cur) - ret.reverse() - return ret - -def display_revisions(revs, display_style, revisions_msg, source_url): - """Show REVS as dictated by DISPLAY_STYLE, either numerically, in - log format, or as diffs. When displaying revisions numerically, - prefix output with REVISIONS_MSG when in verbose mode. Otherwise, - request logs or diffs using SOURCE_URL.""" - if display_style == "revisions": - if revs: - report(revisions_msg) - print revs - elif display_style == "logs": - for start,end in revs.normalized(): - svn_command('log --incremental -v -r %d:%d %s' % \ - (start, end, source_url)) - elif display_style in ("diffs", "summarize"): - if display_style == 'summarize': - summarize = '--summarize ' - else: - summarize = '' - - for start, end in revs.normalized(): - print - if start == end: - print "%s: changes in revision %d follow" % (NAME, start) - else: - print "%s: changes in revisions %d-%d follow" % (NAME, - start, end) - print - - # Note: the starting revision number to 'svn diff' is - # NOT inclusive so we have to subtract one from ${START}. - svn_command("diff -r %d:%d %s %s" % (start - 1, end, summarize, - source_url)) - else: - assert False, "unhandled display style: %s" % display_style - -def action_init(target_dir, target_props): - """Initialize for merges.""" - # Check that directory is ready for being modified - check_dir_clean(target_dir) - - target_pathid = PathIdentifier.from_target(target_dir) - source_pathid = opts['source-pathid'] - if source_pathid == target_pathid: - error("cannot init integration source path '%s'\nIts path identifier does not " - "differ from the path identifier of the current directory, '%s'." - % (source_pathid, target_pathid)) - - source_url = opts['source-url'] - - # If the user hasn't specified the revisions to use, see if the - # "source" is a copy from the current tree and if so, we can use - # the version data obtained from it. - revision_range = opts["revision"] - if not revision_range: - # If source was originally copied from target, and we are merging - # changes from source to target (the copy target is the merge source, - # and the copy source is the merge target), then we want to mark as - # integrated up to the rev in which the copy was committed which - # created the merge source: - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(source_url) - - cf_pathid = None - if cf_source: - cf_url = get_repo_root(source_url) + cf_source - if is_url(cf_url) and check_url(cf_url): - cf_pathid = PathIdentifier.from_target(cf_url) - - if target_pathid == cf_pathid: - report('the source "%s" was copied from "%s" in rev %s and committed in rev %s' % - (source_url, target_dir, cf_rev, copy_committed_in_rev)) - revision_range = "1-" + str(copy_committed_in_rev) - - if not revision_range: - # If the reverse is true: copy source is the merge source, and - # the copy target is the merge target, then we want to mark as - # integrated up to the specific rev of the merge target from - # which the merge source was copied. (Longer discussion at: - # http://subversion.tigris.org/issues/show_bug.cgi?id=2810 ) - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(target_dir) - - cf_pathid = None - if cf_source: - cf_url = get_repo_root(target_dir) + cf_source - if is_url(cf_url) and check_url(cf_url): - cf_pathid = PathIdentifier.from_target(cf_url) - - source_pathid = PathIdentifier.from_target(source_url) - if source_pathid == cf_pathid: - report('the target "%s" was copied the source "%s" in rev %s and committed in rev %s' % - (target_dir, source_url, cf_rev, copy_committed_in_rev)) - revision_range = "1-" + cf_rev - - # When neither the merge source nor target is a copy of the other, and - # the user did not specify a revision range, then choose a default which is - # the current revision; saying, in effect, "everything has been merged, so - # mark as integrated up to the latest rev on source url). - if not revision_range: - revision_range = "1-" + get_latest_rev(source_url) - - revs = RevisionSet(revision_range) - - report('marking "%s" as already containing revisions "%s" of "%s"' % - (target_dir, revs, source_url)) - - revs = str(revs) - # If the local svnmerge-integrated property already has an entry - # for the source-pathid, simply error out. - if not opts["force"] and target_props.has_key(source_pathid): - error('Repository-relative path %s has already been initialized at %s\n' - 'Use --force to re-initialize' % (source_pathid, target_dir)) - # set the pathid's external_form based on the user's options - source_pathid.external_form = source_pathid.format(opts['location-type']) - - revs = str(revs) - target_props[source_pathid] = revs - - # Set property - set_merge_props(target_dir, target_props) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Initialized merge tracking via "%s" with revisions "%s" from ' \ - % (NAME, revs) - print >>f, '%s' % source_url - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_avail(branch_dir, branch_props): - """Show commits available for merges.""" - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"], - find_reflected= - should_find_reflected(branch_dir)) - report('skipping phantom revisions: %s' % phantom_revs) - if reflected_revs: - report('skipping reflected revisions: %s' % reflected_revs) - report('skipping initialized revisions: %s' % initialized_revs) - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - avail_revs = source_revs - opts["merged-revs"] - blocked_revs - \ - reflected_revs - initialized_revs - - # Compose the set of revisions to show - revs = RevisionSet("") - report_msg = "revisions available to be merged are:" - if "avail" in opts["avail-showwhat"]: - revs |= avail_revs - if "blocked" in opts["avail-showwhat"]: - revs |= blocked_revs - report_msg = "revisions blocked are:" - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs = revs & RevisionSet(opts["revision"]) - - display_revisions(revs, opts["avail-display"], - report_msg, - opts["source-url"]) - -def action_integrated(branch_dir, branch_props): - """Show change sets already merged. This set of revisions is - calculated from taking svnmerge-integrated property from the - branch, and subtracting any revision older than the branch - creation revision.""" - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - revs = merge_props_to_revision_set(branch_props, opts["source-pathid"]) - - # Lookup the oldest revision on the branch path. - oldest_src_rev = get_created_rev(opts["source-url"]) - - # Subtract any revisions which pre-date the branch. - report("subtracting revisions which pre-date the source URL (%d)" % - oldest_src_rev) - revs = revs - RevisionSet(range(1, oldest_src_rev)) - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs = revs & RevisionSet(opts["revision"]) - - display_revisions(revs, opts["integrated-display"], - "revisions already integrated are:", opts["source-url"]) - -def action_merge(branch_dir, branch_props): - """Record merge meta data, and do the actual merge (if not - requested otherwise via --record-only).""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"], - find_reflected= - should_find_reflected(branch_dir)) - - if opts["revision"]: - revs = RevisionSet(opts["revision"]) - else: - revs = source_revs - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - merged_revs = opts["merged-revs"] - - # Show what we're doing - if opts["verbose"]: # just to avoid useless calculations - if merged_revs & revs: - report('"%s" already contains revisions %s' % (branch_dir, - merged_revs & revs)) - if phantom_revs: - report('memorizing phantom revision(s): %s' % phantom_revs) - if reflected_revs: - report('memorizing reflected revision(s): %s' % reflected_revs) - if blocked_revs & revs: - report('skipping blocked revisions(s): %s' % (blocked_revs & revs)) - if initialized_revs: - report('skipping initialized revision(s): %s' % initialized_revs) - - # Compute final merge set. - revs = revs - merged_revs - blocked_revs - reflected_revs - \ - phantom_revs - initialized_revs - if not revs: - report('no revisions to merge, exiting') - return - - # When manually marking revisions as merged, we only update the - # integration meta data, and don't perform an actual merge. - record_only = opts["record-only"] - - if record_only: - report('recording merge of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - else: - report('merging in revision(s) %s from "%s"' % - (revs, opts["source-url"])) - - # Do the merge(s). Note: the starting revision number to 'svn merge' - # is NOT inclusive so we have to subtract one from start. - # We try to keep the number of merge operations as low as possible, - # because it is faster and reduces the number of conflicts. - old_block_props = get_block_props(branch_dir) - merge_metadata = logs[opts["source-url"]].merge_metadata() - block_metadata = logs[opts["source-url"]].block_metadata() - for start,end in minimal_merge_intervals(revs, phantom_revs): - if not record_only: - # Preset merge/blocked properties to the source value at - # the start rev to avoid spurious property conflicts - set_merge_props(branch_dir, merge_metadata.get(start - 1)) - set_block_props(branch_dir, block_metadata.get(start - 1)) - # Do the merge - svn_command("merge --force -r %d:%d %s %s" % \ - (start - 1, end, opts["source-url"], branch_dir)) - # TODO: to support graph merging, add logic to merge the property - # meta-data manually - - # Update the set of merged revisions. - merged_revs = merged_revs | revs | reflected_revs | phantom_revs | initialized_revs - branch_props[opts["source-pathid"]] = str(merged_revs) - set_merge_props(branch_dir, branch_props) - # Reset the blocked revs - set_block_props(branch_dir, old_block_props) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - if record_only: - print >>f, 'Recorded merge of revisions %s via %s from ' % \ - (revs, NAME) - else: - print >>f, 'Merged revisions %s via %s from ' % \ - (revs, NAME) - print >>f, '%s' % opts["source-url"] - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], revs), - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_block(branch_dir, branch_props): - """Block revisions.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"]) - revs_to_block = source_revs - opts["merged-revs"] - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs_to_block = RevisionSet(opts["revision"]) & revs_to_block - - if not revs_to_block: - error('no available revisions to block') - - # Change blocked information - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - blocked_revs = blocked_revs | revs_to_block - set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Blocked revisions %s via %s' % (revs_to_block, NAME) - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], - revs_to_block), - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_unblock(branch_dir, branch_props): - """Unblock revisions.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - revs_to_unblock = blocked_revs - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs_to_unblock = revs_to_unblock & RevisionSet(opts["revision"]) - - if not revs_to_unblock: - error('no available revisions to unblock') - - # Change blocked information - blocked_revs = blocked_revs - revs_to_unblock - set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Unblocked revisions %s via %s' % (revs_to_unblock, NAME) - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], - revs_to_unblock), - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_rollback(branch_dir, branch_props): - """Rollback previously integrated revisions.""" - - # Make sure the revision arguments are present - if not opts["revision"]: - error("The '-r' option is mandatory for rollback") - - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - # Get the list of all revisions already merged into this source-pathid. - merged_revs = merge_props_to_revision_set(branch_props, - opts["source-pathid"]) - - # At which revision was the src created? - oldest_src_rev = get_created_rev(opts["source-url"]) - src_pre_exist_range = RevisionSet("1-%d" % oldest_src_rev) - - # Limit to revisions specified by -r (if any) - revs = merged_revs & RevisionSet(opts["revision"]) - - # make sure there's some revision to rollback - if not revs: - report("Nothing to rollback in revision range r%s" % opts["revision"]) - return - - # If even one specified revision lies outside the lifetime of the - # merge source, error out. - if revs & src_pre_exist_range: - err_str = "Specified revision range falls out of the rollback range.\n" - err_str += "%s was created at r%d" % (opts["source-pathid"], - oldest_src_rev) - error(err_str) - - record_only = opts["record-only"] - - if record_only: - report('recording rollback of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - else: - report('rollback of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - - # Do the reverse merge(s). Note: the starting revision number - # to 'svn merge' is NOT inclusive so we have to subtract one from start. - # We try to keep the number of merge operations as low as possible, - # because it is faster and reduces the number of conflicts. - rollback_intervals = minimal_merge_intervals(revs, []) - # rollback in the reverse order of merge - rollback_intervals.reverse() - for start, end in rollback_intervals: - if not record_only: - # Do the merge - svn_command("merge --force -r %d:%d %s %s" % \ - (end, start - 1, opts["source-url"], branch_dir)) - - # Write out commit message if desired - # calculate the phantom revs first - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - if record_only: - print >>f, 'Recorded rollback of revisions %s via %s from ' % \ - (revs , NAME) - else: - print >>f, 'Rolled back revisions %s via %s from ' % \ - (revs , NAME) - print >>f, '%s' % opts["source-url"] - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - - # Update the set of merged revisions. - merged_revs = merged_revs - revs - branch_props[opts["source-pathid"]] = str(merged_revs) - set_merge_props(branch_dir, branch_props) - -def action_uninit(branch_dir, branch_props): - """Uninit SOURCE URL.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - # If the source-pathid does not have an entry in the svnmerge-integrated - # property, simply error out. - if not branch_props.has_key(opts["source-pathid"]): - error('Repository-relative path "%s" does not contain merge ' - 'tracking information for "%s"' \ - % (opts["source-pathid"], branch_dir)) - - del branch_props[opts["source-pathid"]] - - # Set merge property with the selected source deleted - set_merge_props(branch_dir, branch_props) - - # Set blocked revisions for the selected source to None - set_blocked_revs(branch_dir, opts["source-pathid"], None) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Removed merge tracking for "%s" for ' % NAME - print >>f, '%s' % opts["source-url"] - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -############################################################################### -# Command line parsing -- options and commands management -############################################################################### - -class OptBase: - def __init__(self, *args, **kwargs): - self.help = kwargs["help"] - del kwargs["help"] - self.lflags = [] - self.sflags = [] - for a in args: - if a.startswith("--"): self.lflags.append(a) - elif a.startswith("-"): self.sflags.append(a) - else: - raise TypeError, "invalid flag name: %s" % a - if kwargs.has_key("dest"): - self.dest = kwargs["dest"] - del kwargs["dest"] - else: - if not self.lflags: - raise TypeError, "cannot deduce dest name without long options" - self.dest = self.lflags[0][2:] - if kwargs: - raise TypeError, "invalid keyword arguments: %r" % kwargs.keys() - def repr_flags(self): - f = self.sflags + self.lflags - r = f[0] - for fl in f[1:]: - r += " [%s]" % fl - return r - -class Option(OptBase): - def __init__(self, *args, **kwargs): - self.default = kwargs.setdefault("default", 0) - del kwargs["default"] - self.value = kwargs.setdefault("value", None) - del kwargs["value"] - OptBase.__init__(self, *args, **kwargs) - def apply(self, state, value): - assert value == "" - if self.value is not None: - state[self.dest] = self.value - else: - state[self.dest] += 1 - -class OptionArg(OptBase): - def __init__(self, *args, **kwargs): - self.default = kwargs["default"] - del kwargs["default"] - self.metavar = kwargs.setdefault("metavar", None) - del kwargs["metavar"] - OptBase.__init__(self, *args, **kwargs) - - if self.metavar is None: - if self.dest is not None: - self.metavar = self.dest.upper() - else: - self.metavar = "arg" - if self.default: - self.help += " (default: %s)" % self.default - def apply(self, state, value): - assert value is not None - state[self.dest] = value - def repr_flags(self): - r = OptBase.repr_flags(self) - return r + " " + self.metavar - -class CommandOpts: - class Cmd: - def __init__(self, *args): - self.name, self.func, self.usage, self.help, self.opts = args - def short_help(self): - return self.help.split(".")[0] - def __str__(self): - return self.name - def __call__(self, *args, **kwargs): - return self.func(*args, **kwargs) - - def __init__(self, global_opts, common_opts, command_table, version=None): - self.progname = NAME - self.version = version.replace("%prog", self.progname) - self.cwidth = console_width() - 2 - self.ctable = command_table.copy() - self.gopts = global_opts[:] - self.copts = common_opts[:] - self._add_builtins() - for k in self.ctable.keys(): - cmd = self.Cmd(k, *self.ctable[k]) - opts = [] - for o in cmd.opts: - if isinstance(o, types.StringType) or \ - isinstance(o, types.UnicodeType): - o = self._find_common(o) - opts.append(o) - cmd.opts = opts - self.ctable[k] = cmd - - def _add_builtins(self): - self.gopts.append( - Option("-h", "--help", help="show help for this command and exit")) - if self.version is not None: - self.gopts.append( - Option("-V", "--version", help="show version info and exit")) - self.ctable["help"] = (self._cmd_help, - "help [COMMAND]", - "Display help for a specific command. If COMMAND is omitted, " - "display brief command description.", - []) - - def _cmd_help(self, cmd=None, *args): - if args: - self.error("wrong number of arguments", "help") - if cmd is not None: - cmd = self._command(cmd) - self.print_command_help(cmd) - else: - self.print_command_list() - - def _paragraph(self, text, width=78): - chunks = re.split("\s+", text.strip()) - chunks.reverse() - lines = [] - while chunks: - L = chunks.pop() - while chunks and len(L) + len(chunks[-1]) + 1 <= width: - L += " " + chunks.pop() - lines.append(L) - return lines - - def _paragraphs(self, text, *args, **kwargs): - pars = text.split("\n\n") - lines = self._paragraph(pars[0], *args, **kwargs) - for p in pars[1:]: - lines.append("") - lines.extend(self._paragraph(p, *args, **kwargs)) - return lines - - def _print_wrapped(self, text, indent=0): - text = self._paragraphs(text, self.cwidth - indent) - print text.pop(0) - for t in text: - print " " * indent + t - - def _find_common(self, fl): - for o in self.copts: - if fl in o.lflags+o.sflags: - return o - assert False, fl - - def _compute_flags(self, opts, check_conflicts=True): - back = {} - sfl = "" - lfl = [] - for o in opts: - sapp = lapp = "" - if isinstance(o, OptionArg): - sapp, lapp = ":", "=" - for s in o.sflags: - if check_conflicts and back.has_key(s): - raise RuntimeError, "option conflict: %s" % s - back[s] = o - sfl += s[1:] + sapp - for l in o.lflags: - if check_conflicts and back.has_key(l): - raise RuntimeError, "option conflict: %s" % l - back[l] = o - lfl.append(l[2:] + lapp) - return sfl, lfl, back - - def _extract_command(self, args): - """ - Try to extract the command name from the argument list. This is - non-trivial because we want to allow command-specific options even - before the command itself. - """ - opts = self.gopts[:] - for cmd in self.ctable.values(): - opts.extend(cmd.opts) - sfl, lfl, _ = self._compute_flags(opts, check_conflicts=False) - - lopts,largs = getopt.getopt(args, sfl, lfl) - if not largs: - return None - return self._command(largs[0]) - - def _fancy_getopt(self, args, opts, state=None): - if state is None: - state= {} - for o in opts: - if not state.has_key(o.dest): - state[o.dest] = o.default - - sfl, lfl, back = self._compute_flags(opts) - try: - lopts,args = getopt.gnu_getopt(args, sfl, lfl) - except AttributeError: - # Before Python 2.3, there was no gnu_getopt support. - # So we can't parse intermixed positional arguments - # and options. - lopts,args = getopt.getopt(args, sfl, lfl) - - for o,v in lopts: - back[o].apply(state, v) - return state, args - - def _command(self, cmd): - if not self.ctable.has_key(cmd): - self.error("unknown command: '%s'" % cmd) - return self.ctable[cmd] - - def parse(self, args): - if not args: - self.print_small_help() - sys.exit(0) - - cmd = None - try: - cmd = self._extract_command(args) - opts = self.gopts[:] - if cmd: - opts.extend(cmd.opts) - args.remove(cmd.name) - state, args = self._fancy_getopt(args, opts) - except getopt.GetoptError, e: - self.error(e, cmd) - - # Handle builtins - if self.version is not None and state["version"]: - self.print_version() - sys.exit(0) - if state["help"]: # special case for --help - if cmd: - self.print_command_help(cmd) - sys.exit(0) - cmd = self.ctable["help"] - else: - if cmd is None: - self.error("command argument required") - if str(cmd) == "help": - cmd(*args) - sys.exit(0) - return cmd, args, state - - def error(self, s, cmd=None): - print >>sys.stderr, "%s: %s" % (self.progname, s) - if cmd is not None: - self.print_command_help(cmd) - else: - self.print_small_help() - sys.exit(1) - def print_small_help(self): - print "Type '%s help' for usage" % self.progname - def print_usage_line(self): - print "usage: %s <subcommand> [options...] [args...]\n" % self.progname - def print_command_list(self): - print "Available commands (use '%s help COMMAND' for more details):\n" \ - % self.progname - cmds = self.ctable.keys() - cmds.sort() - indent = max(map(len, cmds)) - for c in cmds: - h = self.ctable[c].short_help() - print " %-*s " % (indent, c), - self._print_wrapped(h, indent+6) - def print_command_help(self, cmd): - cmd = self.ctable[str(cmd)] - print 'usage: %s %s\n' % (self.progname, cmd.usage) - self._print_wrapped(cmd.help) - def print_opts(opts, self=self): - if not opts: return - flags = [o.repr_flags() for o in opts] - indent = max(map(len, flags)) - for f,o in zip(flags, opts): - print " %-*s :" % (indent, f), - self._print_wrapped(o.help, indent+5) - print '\nCommand options:' - print_opts(cmd.opts) - print '\nGlobal options:' - print_opts(self.gopts) - - def print_version(self): - print self.version - -############################################################################### -# Options and Commands description -############################################################################### - -global_opts = [ - Option("-F", "--force", - help="force operation even if the working copy is not clean, or " - "there are pending updates"), - Option("-n", "--dry-run", - help="don't actually change anything, just pretend; " - "implies --show-changes"), - Option("-s", "--show-changes", - help="show subversion commands that make changes"), - Option("-v", "--verbose", - help="verbose mode: output more information about progress"), - OptionArg("-u", "--username", - default=None, - help="invoke subversion commands with the supplied username"), - OptionArg("-p", "--password", - default=None, - help="invoke subversion commands with the supplied password"), - OptionArg("-c", "--config-dir", metavar="DIR", - default=None, - help="cause subversion commands to consult runtime config directory DIR"), -] - -common_opts = [ - Option("-b", "--bidirectional", - value=True, - default=False, - help="remove reflected and initialized revisions from merge candidates. " - "Not required but may be specified to speed things up slightly"), - OptionArg("-f", "--commit-file", metavar="FILE", - default="svnmerge-commit-message.txt", - help="set the name of the file where the suggested log message " - "is written to"), - Option("-M", "--record-only", - value=True, - default=False, - help="do not perform an actual merge of the changes, yet record " - "that a merge happened"), - OptionArg("-r", "--revision", - metavar="REVLIST", - default="", - help="specify a revision list, consisting of revision numbers " - 'and ranges separated by commas, e.g., "534,537-539,540"'), - OptionArg("-S", "--source", "--head", - default=None, - help="specify a merge source for this branch. It can be either " - "a working directory path, a full URL, or an unambiguous " - "substring of one of the locations for which merge tracking was " - "already initialized. Needed only to disambiguate in case of " - "multiple merge sources"), -] - -command_table = { - "init": (action_init, - "init [OPTION...] [SOURCE]", - """Initialize merge tracking from SOURCE on the current working - directory. - - If SOURCE is specified, all the revisions in SOURCE are marked as already - merged; if this is not correct, you can use --revision to specify the - exact list of already-merged revisions. - - If SOURCE is omitted, then it is computed from the "svn cp" history of the - current working directory (searching back for the branch point); in this - case, %s assumes that no revision has been integrated yet since - the branch point (unless you teach it with --revision).""" % NAME, - [ - "-f", "-r", # import common opts - OptionArg("-L", "--location-type", - dest="location-type", - default="path", - help="Use this type of location identifier in the new " + - "Subversion properties; 'uuid', 'url', or 'path' " + - "(default)"), - ]), - - "avail": (action_avail, - "avail [OPTION...] [PATH]", - """Show unmerged revisions available for PATH as a revision list. - If --revision is given, the revisions shown will be limited to those - also specified in the option. - - When svnmerge is used to bidirectionally merge changes between a - branch and its source, it is necessary to not merge the same changes - forth and back: e.g., if you committed a merge of a certain - revision of the branch into the source, you do not want that commit - to appear as available to merged into the branch (as the code - originated in the branch itself!). svnmerge will automatically - exclude these so-called "reflected" revisions.""", - [ - Option("-A", "--all", - dest="avail-showwhat", - value=["blocked", "avail"], - default=["avail"], - help="show both available and blocked revisions (aka ignore " - "blocked revisions)"), - "-b", - Option("-B", "--blocked", - dest="avail-showwhat", - value=["blocked"], - help="show the blocked revision list (see '%s block')" % NAME), - Option("-d", "--diff", - dest="avail-display", - value="diffs", - default="revisions", - help="show corresponding diff instead of revision list"), - Option("--summarize", - dest="avail-display", - value="summarize", - help="show summarized diff instead of revision list"), - Option("-l", "--log", - dest="avail-display", - value="logs", - help="show corresponding log history instead of revision list"), - "-r", - "-S", - ]), - - "integrated": (action_integrated, - "integrated [OPTION...] [PATH]", - """Show merged revisions available for PATH as a revision list. - If --revision is given, the revisions shown will be limited to - those also specified in the option.""", - [ - Option("-d", "--diff", - dest="integrated-display", - value="diffs", - default="revisions", - help="show corresponding diff instead of revision list"), - Option("-l", "--log", - dest="integrated-display", - value="logs", - help="show corresponding log history instead of revision list"), - "-r", - "-S", - ]), - - "rollback": (action_rollback, - "rollback [OPTION...] [PATH]", - """Rollback previously merged in revisions from PATH. The - --revision option is mandatory, and specifies which revisions - will be rolled back. Only the previously integrated merges - will be rolled back. - - When manually rolling back changes, --record-only can be used to - instruct %s that a manual rollback of a certain revision - already happened, so that it can record it and offer that - revision for merge henceforth.""" % (NAME), - [ - "-f", "-r", "-S", "-M", # import common opts - ]), - - "merge": (action_merge, - "merge [OPTION...] [PATH]", - """Merge in revisions into PATH from its source. If --revision is omitted, - all the available revisions will be merged. In any case, already merged-in - revisions will NOT be merged again. - - When svnmerge is used to bidirectionally merge changes between a - branch and its source, it is necessary to not merge the same changes - forth and back: e.g., if you committed a merge of a certain - revision of the branch into the source, you do not want that commit - to appear as available to merged into the branch (as the code - originated in the branch itself!). svnmerge will automatically - exclude these so-called "reflected" revisions. - - When manually merging changes across branches, --record-only can - be used to instruct %s that a manual merge of a certain revision - already happened, so that it can record it and not offer that - revision for merge anymore. Conversely, when there are revisions - which should not be merged, use '%s block'.""" % (NAME, NAME), - [ - "-b", "-f", "-r", "-S", "-M", # import common opts - ]), - - "block": (action_block, - "block [OPTION...] [PATH]", - """Block revisions within PATH so that they disappear from the available - list. This is useful to hide revisions which will not be integrated. - If --revision is omitted, it defaults to all the available revisions. - - Do not use this option to hide revisions that were manually merged - into the branch. Instead, use '%s merge --record-only', which - records that a merge happened (as opposed to a merge which should - not happen).""" % NAME, - [ - "-f", "-r", "-S", # import common opts - ]), - - "unblock": (action_unblock, - "unblock [OPTION...] [PATH]", - """Revert the effect of '%s block'. If --revision is omitted, all the - blocked revisions are unblocked""" % NAME, - [ - "-f", "-r", "-S", # import common opts - ]), - - "uninit": (action_uninit, - "uninit [OPTION...] [PATH]", - """Remove merge tracking information from PATH. It cleans any kind of merge - tracking information (including the list of blocked revisions). If there - are multiple sources, use --source to indicate which source you want to - forget about.""", - [ - "-f", "-S", # import common opts - ]), -} - - -def main(args): - global opts - - # Initialize default options - opts = default_opts.copy() - logs.clear() - - optsparser = CommandOpts(global_opts, common_opts, command_table, - version="%%prog r%s\n modified: %s\n\n" - "Copyright (C) 2004,2005 Awarix Inc.\n" - "Copyright (C) 2005, Giovanni Bajo" - % (__revision__, __date__)) - - cmd, args, state = optsparser.parse(args) - opts.update(state) - - source = opts.get("source", None) - branch_dir = "." - - if str(cmd) == "init": - if len(args) == 1: - source = args[0] - elif len(args) > 1: - optsparser.error("wrong number of parameters", cmd) - elif str(cmd) in command_table.keys(): - if len(args) == 1: - branch_dir = args[0] - elif len(args) > 1: - optsparser.error("wrong number of parameters", cmd) - else: - assert False, "command not handled: %s" % cmd - - # Validate branch_dir - if not is_wc(branch_dir): - if str(cmd) == "avail": - info = None - # it should be noted here that svn info does not error exit - # if an invalid target is specified to it (as is - # intuitive). so the try, except code is not absolutely - # necessary. but, I retain it to indicate the intuitive - # handling. - try: - info = get_svninfo(branch_dir) - except LaunchError: - pass - # test that we definitely targeted a subversion directory, - # mirroring the purpose of the earlier is_wc() call - if info is None or not info.has_key("Node Kind") or info["Node Kind"] != "directory": - error('"%s" is neither a valid URL, nor a working directory' % branch_dir) - else: - error('"%s" is not a subversion working directory' % branch_dir) - - # give out some hints as to potential pathids - PathIdentifier.hint(branch_dir) - if source: PathIdentifier.hint(source) - - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - - # Calculate source_url and source_path - report("calculate source path for the branch") - if not source: - if str(cmd) == "init": - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(branch_dir) - if not cf_source: - error('no copyfrom info available. ' - 'Explicit source argument (-S/--source) required.') - opts["source-url"] = get_repo_root(branch_dir) + cf_source - opts["source-pathid"] = PathIdentifier.from_target(opts["source-url"]) - - if not opts["revision"]: - opts["revision"] = "1-" + cf_rev - else: - opts["source-pathid"] = get_default_source(branch_dir, branch_props) - opts["source-url"] = opts["source-pathid"].get_url() - - assert is_pathid(opts["source-pathid"]) - assert is_url(opts["source-url"]) - else: - # The source was given as a command line argument and is stored in - # SOURCE. Ensure that the specified source does not end in a /, - # otherwise it's easy to have the same source path listed more - # than once in the integrated version properties, with and without - # trailing /'s. - source = rstrip(source, "/") - if not is_wc(source) and not is_url(source): - # Check if it is a substring of a pathid recorded - # within the branch properties. - found = [] - for pathid in branch_props.keys(): - if pathid.match_substring(source): - found.append(pathid) - if len(found) == 1: - # (assumes pathid is a repository-relative-path) - source_pathid = found[0] - source = source_pathid.get_url() - else: - error('"%s" is neither a valid URL, nor an unambiguous ' - 'substring of a repository path, nor a working directory' - % source) - else: - source_pathid = PathIdentifier.from_target(source) - - source_pathid = PathIdentifier.from_target(source) - if str(cmd) == "init" and \ - source_pathid == PathIdentifier.from_target("."): - error("cannot init integration source path '%s'\n" - "Its repository-relative path must differ from the " - "repository-relative path of the current directory." - % source_pathid) - opts["source-pathid"] = source_pathid - opts["source-url"] = target_to_url(source) - - # Sanity check source_url - assert is_url(opts["source-url"]) - # SVN does not support non-normalized URL (and we should not - # have created them) - assert opts["source-url"].find("/..") < 0 - - report('source is "%s"' % opts["source-url"]) - - # Get previously merged revisions (except when command is init) - if str(cmd) != "init": - opts["merged-revs"] = merge_props_to_revision_set(branch_props, - opts["source-pathid"]) - - # Perform the action - cmd(branch_dir, branch_props) - - -if __name__ == "__main__": - try: - main(sys.argv[1:]) - except LaunchError, (ret, cmd, out): - err_msg = "command execution failed (exit code: %d)\n" % ret - err_msg += cmd + "\n" - err_msg += "".join(out) - error(err_msg) - except KeyboardInterrupt: - # Avoid traceback on CTRL+C - print "aborted by user" - sys.exit(1) diff --git a/abs/extra/swh-plugins/PKGBUILD b/abs/extra/swh-plugins/PKGBUILD deleted file mode 100644 index 69157a1..0000000 --- a/abs/extra/swh-plugins/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 8773 2008-08-16 05:51:00Z eric $ -#Maintainer: Damir Perisa <damir.perisa@bluewin.ch> -#Contributor: Robert Emil Berge - -pkgname=swh-plugins -pkgver=0.4.15 -pkgrel=1 -pkgdesc="LADSPA Plugin-Collection from plugin.org.uk" -arch=(i686 x86_64) -url="http://plugin.org.uk/" -depends=('fftw' 'ladspa') -groups=('ladspa-plugins') -source=(http://plugin.org.uk/releases/$pkgver/$pkgname-$pkgver.tar.gz) -md5sums=('2fbdccef2462ea553901acd429fa3573') - -build() { - cd $startdir/src/$pkgname-$pkgver - -#Arch64 fix, -fPIC seems to be the only option -if [ "$CARCH" = "x86_64" ]; then - export CFLAGS="$CFLAGS -fPIC" - export CXXFLAGS="$CFLAGS" -fi - - ./configure --prefix=/usr - make || return 1 - make DESTDIR=$startdir/pkg install -} diff --git a/abs/extra/swig/PKGBUILD b/abs/extra/swig/PKGBUILD index bfe0512..e7f9994 100644 --- a/abs/extra/swig/PKGBUILD +++ b/abs/extra/swig/PKGBUILD @@ -1,29 +1,38 @@ -# $Id: PKGBUILD 94475 2010-10-07 11:10:49Z stephane $ -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> +# $Id: PKGBUILD 163234 2012-07-11 16:22:59Z stephane $ # Maintainer: StĂ©phane Gaudreault <stephane@archlinux.org> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=swig -pkgver=2.0.1 -pkgrel=1 +pkgver=2.0.7 +pkgrel=2 pkgdesc="Generate scripting interfaces to C/C++ code" arch=('i686' 'x86_64') url="http://www.swig.org/" license=('custom') -depends=('gcc-libs' 'zlib') -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz) -sha1sums=('da5a1e396597be683a62d349d71802c33fb0f644') +depends=('zlib' 'pcre') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz + pyint_fromsize_t.diff + upstream_r13128.diff) +sha1sums=('307020fb6437092e32c9c1bd9af8bccb1645b529' + '59ee179b57920d255c58afe45632b896e40b5b7d' + '8f0c5ae6a46c22606cc88c649bfd0a31f061a963') build() { cd "${srcdir}/${pkgname}-${pkgver}" + + # FS#30624 + patch -Np1 -i ../pyint_fromsize_t.diff + + # Fix call to Swig_name_decl + patch -Np1 -i ../upstream_r13128.diff + ./configure --prefix=/usr - make || return 1 + make } package() { cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 - install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - install -D -m644 LICENSE-UNIVERSITIES "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE-UNIVERSITIES" + make DESTDIR="${pkgdir}" install + install -D -m644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE + install -D -m644 LICENSE-UNIVERSITIES "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE-UNIVERSITIES } - -# vim: set noexpandtab tabstop=8 shiftwidth=8 textwidth=132 autoindent diff --git a/abs/extra/swig/pyint_fromsize_t.diff b/abs/extra/swig/pyint_fromsize_t.diff new file mode 100644 index 0000000..1c7727a --- /dev/null +++ b/abs/extra/swig/pyint_fromsize_t.diff @@ -0,0 +1,18 @@ +Description: Py3k: Map PyInt_FromSize_t to PyLong_FromSize_t + The latest SWIG version introduced a usage of PyInt_FromSize_t, but + does not define a compatibility macro for Python 3k as for the other + PyInt_... functions. This patch adds that macro. + +Author: Torsten Landschoff <torsten@debian.org> + + +--- swig2.0-2.0.7.orig/Lib/python/pyhead.swg ++++ swig2.0-2.0.7/Lib/python/pyhead.swg +@@ -5,6 +5,7 @@ + #define PyInt_Check(x) PyLong_Check(x) + #define PyInt_AsLong(x) PyLong_AsLong(x) + #define PyInt_FromLong(x) PyLong_FromLong(x) ++#define PyInt_FromSize_t(x) PyLong_FromSize_t(x) + #define PyString_Check(name) PyBytes_Check(name) + #define PyString_FromString(x) PyUnicode_FromString(x) + #define PyString_Format(fmt, args) PyUnicode_Format(fmt, args) diff --git a/abs/extra/swig/upstream_r13128.diff b/abs/extra/swig/upstream_r13128.diff new file mode 100644 index 0000000..d7d74d7 --- /dev/null +++ b/abs/extra/swig/upstream_r13128.diff @@ -0,0 +1,73 @@ +From: Klaus Kämpf <kkaempf@suse.de> +Subject: Fix call to Swig_name_decl (upstream ID 3530078) + +Origin: upstream, http://swig.svn.sourceforge.net/viewvc/swig?view=revision&revision=13128 +Bug: http://sourceforge.net/tracker/?func=detail&aid=3530078&group_id=1645&atid=101645 +Bug-Debian: http://bugs.debian.org/675196 +--- + Examples/test-suite/errors/expected.log | 26 +++++++++++++------------- + Source/Modules/lang.cxx | 4 ++-- + 2 files changed, 15 insertions(+), 15 deletions(-) + +--- a/Source/Modules/lang.cxx ++++ b/Source/Modules/lang.cxx +@@ -2623,7 +2623,7 @@ int Language::constructorDeclaration(Nod + Delete(expected_name_resolved); + } + if (illegal_name) { +- Swig_warning(WARN_LANG_RETURN_TYPE, input_file, line_number, "Function %s must have a return type. Ignored.\n", Swig_name_decl(name)); ++ Swig_warning(WARN_LANG_RETURN_TYPE, input_file, line_number, "Function %s must have a return type. Ignored.\n", Swig_name_decl(n)); + Swig_restore(n); + return SWIG_NOWRAP; + } +@@ -2760,7 +2760,7 @@ int Language::destructorDeclaration(Node + } + + if (illegal_name) { +- Swig_warning(WARN_LANG_ILLEGAL_DESTRUCTOR, input_file, line_number, "Illegal destructor name %s. Ignored.\n", Swig_name_decl(name)); ++ Swig_warning(WARN_LANG_ILLEGAL_DESTRUCTOR, input_file, line_number, "Illegal destructor name %s. Ignored.\n", Swig_name_decl(n)); + Swig_restore(n); + Delete(expected_name); + return SWIG_NOWRAP; +--- a/Examples/test-suite/errors/expected.log ++++ b/Examples/test-suite/errors/expected.log +@@ -227,17 +227,17 @@ cpp_extend_destructors.i:87: Warning 302 + cpp_extend_destructors.i:85: Warning 302: previous definition of '~JStruct'. + cpp_extend_destructors.i:100: Warning 302: Identifier '~LStruct' redefined (ignored), + cpp_extend_destructors.i:98: Warning 302: previous definition of '~LStruct'. +-cpp_extend_destructors.i:24: Warning 521: Illegal destructor name ~NOT_CStruct. Ignored. +-cpp_extend_destructors.i:30: Warning 521: Illegal destructor name ~NOT_DStruct. Ignored. +-cpp_extend_destructors.i:44: Warning 521: Illegal destructor name ~NOT_EStruct. Ignored. +-cpp_extend_destructors.i:50: Warning 521: Illegal destructor name ~NOT_FStruct. Ignored. +-cpp_extend_destructors.i:65: Warning 521: Illegal destructor name ~NOT_GStruct. Ignored. +-cpp_extend_destructors.i:72: Warning 521: Illegal destructor name ~NOT_HStruct. Ignored. +-cpp_extend_destructors.i:81: Warning 521: Illegal destructor name ~NOT_IStruct. Ignored. +-cpp_extend_destructors.i:86: Warning 521: Illegal destructor name ~NOT_JStruct. Ignored. +-cpp_extend_destructors.i:92: Warning 521: Illegal destructor name ~NOT_KStruct. Ignored. +-cpp_extend_destructors.i:99: Warning 521: Illegal destructor name ~NOT_LStruct< int >. Ignored. +-cpp_extend_destructors.i:99: Warning 521: Illegal destructor name ~NOT_LStruct< short >. Ignored. ++cpp_extend_destructors.i:24: Warning 521: Illegal destructor name CStruct::~NOT_CStruct(). Ignored. ++cpp_extend_destructors.i:30: Warning 521: Illegal destructor name DStruct::~NOT_DStruct(). Ignored. ++cpp_extend_destructors.i:44: Warning 521: Illegal destructor name EStruct::~NOT_EStruct(). Ignored. ++cpp_extend_destructors.i:50: Warning 521: Illegal destructor name FStruct::~NOT_FStruct(). Ignored. ++cpp_extend_destructors.i:65: Warning 521: Illegal destructor name GStruct::~NOT_GStruct(). Ignored. ++cpp_extend_destructors.i:72: Warning 521: Illegal destructor name HStruct::~NOT_HStruct(). Ignored. ++cpp_extend_destructors.i:81: Warning 521: Illegal destructor name IStruct::~NOT_IStruct(). Ignored. ++cpp_extend_destructors.i:86: Warning 521: Illegal destructor name JStruct::~NOT_JStruct(). Ignored. ++cpp_extend_destructors.i:92: Warning 521: Illegal destructor name KStruct::~NOT_KStruct(). Ignored. ++cpp_extend_destructors.i:99: Warning 521: Illegal destructor name LStruct< int >::~NOT_LStruct(). Ignored. ++cpp_extend_destructors.i:99: Warning 521: Illegal destructor name LStruct< short >::~NOT_LStruct(). Ignored. + + :::::::::::::::::::::::::::::::: cpp_extend_redefine.i ::::::::::::::::::::::::::::::::::: + cpp_extend_redefine.i:9: Warning 302: Identifier 'bar' redefined by %extend (ignored), +@@ -312,8 +312,8 @@ cpp_nested.i:12: Warning 325: Nested cla + cpp_no_access.i:3: Warning 319: No access specifier given for base class 'foo' (ignored). + + :::::::::::::::::::::::::::::::: cpp_no_return_type.i ::::::::::::::::::::::::::::::::::: +-cpp_no_return_type.i:6: Warning 504: Function R must have a return type. Ignored. +-cpp_no_return_type.i:10: Warning 504: Function UU must have a return type. Ignored. ++cpp_no_return_type.i:6: Warning 504: Function S::R() must have a return type. Ignored. ++cpp_no_return_type.i:10: Warning 504: Function U::UU() must have a return type. Ignored. + + :::::::::::::::::::::::::::::::: cpp_nobase.i ::::::::::::::::::::::::::::::::::: + cpp_nobase.i:3: Warning 401: Nothing known about base class 'Bar'. Ignored. diff --git a/abs/extra/syslinux/PKGBUILD b/abs/extra/syslinux/PKGBUILD index e2c9eb8..f8bcb92 100644 --- a/abs/extra/syslinux/PKGBUILD +++ b/abs/extra/syslinux/PKGBUILD @@ -1,22 +1,30 @@ -# $Id: PKGBUILD 97504 2010-10-30 20:11:46Z tpowa $ +# $Id: PKGBUILD 155387 2012-04-03 08:18:06Z thomas $ # Maintainer: Thomas Bächler <thomas@archlinux.org> # Maintainer: Tobias Powalowski <tpowa@archlinux.org> pkgname=syslinux -pkgver=4.03 -pkgrel=1 +pkgver=4.05 +pkgrel=4 arch=('i686' 'x86_64') -pkgdesc="Collection of flexible boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE" +pkgdesc="Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE" url="http://syslinux.zytor.com/" license=('GPL2') depends=('perl' 'glibc') optdepends=('perl-passwd-md5: For md5pass' 'perl-digest-sha1: For sha1pass' - 'mtools: For mkdiskimage and syslinux' + 'mtools: For mkdiskimage and syslinux support' ) makedepends=('nasm') +backup=('boot/syslinux/syslinux.cfg') +install=syslinux.install source=(http://www.kernel.org/pub/linux/utils/boot/syslinux/$pkgname-${pkgver}.tar.bz2 - syslinux-dont-build-dos-windows-targets.patch) + syslinux-dont-build-dos-windows-targets.patch + syslinux.cfg + syslinux-install_update) +md5sums=('82299242418385da1274c9479a778cb2' + '1528c376e43f0eaccaa80d8ad1bc13b4' + '832595501944fbcabcdc1207f4724fe7' + '680750f73dc2e587ac567d057d485813') build() { # Do not try to build syslinux with our default LDFLAGS, it will fail @@ -25,13 +33,19 @@ build() { # Do not try to build the Windows or DOS installers patch -p1 -i "$srcdir"/syslinux-dont-build-dos-windows-targets.patch # Fix FHS manpage path - sed 's|/usr/man|/usr/share/man|g' -i MCONFIG + sed 's|/usr/man|/usr/share/man|g' -i mk/syslinux.mk make } package() { cd "$srcdir"/$pkgname-${pkgver} make INSTALLROOT="$pkgdir" AUXDIR=/usr/lib/syslinux install + + # Install the default configuration + install -D -m644 "$srcdir"/syslinux.cfg "$pkgdir"/boot/syslinux/syslinux.cfg + # Install the installation and update script + # This script is maintained at git://gist.github.com/772138.git + install -D -m755 "$srcdir"/syslinux-install_update "$pkgdir"/usr/sbin/syslinux-install_update + # move extlinux binary to /usr/sbin + mv "$pkgdir"/sbin/extlinux "$pkgdir"/usr/sbin/extlinux } -md5sums=('a7ca38a0a5786b6efae8fb01a1ae8070' - '895722a392f3d798a7cc24bc154656f0') diff --git a/abs/extra/syslinux/syslinux-dont-build-dos-windows-targets.patch b/abs/extra/syslinux/syslinux-dont-build-dos-windows-targets.patch index 2bac551..2b86ab8 100644 --- a/abs/extra/syslinux/syslinux-dont-build-dos-windows-targets.patch +++ b/abs/extra/syslinux/syslinux-dont-build-dos-windows-targets.patch @@ -1,11 +1,11 @@ diff -Nur syslinux-4.02.orig//Makefile syslinux-4.02//Makefile --- syslinux-4.02.orig//Makefile 2010-07-21 21:33:13.000000000 +0200 +++ syslinux-4.02//Makefile 2010-07-22 11:14:03.325522937 +0200 -@@ -55,7 +55,7 @@ +@@ -54,7 +54,7 @@ # files that depend only on the B phase, but may have to be regenerated # for "make installer". BSUBDIRS = codepage com32 lzo core memdisk modules mbr memdump gpxe sample \ -- libinstaller dos win32 win64 dosutil +- diag libinstaller dos win32 win64 dosutil + libinstaller ITARGET = IOBJECTS = $(ITARGET) \ diff --git a/abs/extra/syslinux/syslinux-install_update b/abs/extra/syslinux/syslinux-install_update new file mode 100644 index 0000000..cd1baa5 --- /dev/null +++ b/abs/extra/syslinux/syslinux-install_update @@ -0,0 +1,463 @@ +#!/bin/bash +# +# Sylinux Installer / Updater Scripts +# Copyright (C) 2011 Matthew Gyurgyik <pyther@pyther.net> +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +#----------------- +# Exit Codes: +# 1 - get_boot_device or other function failed +# 2 - install/update failed +# 3 - set_active failed +# 4 - install_mbr failed +# +shopt -s nullglob + +libpath="/usr/lib/syslinux" +bootpath="/boot/syslinux" +extlinux="/usr/sbin/extlinux" + +autoupdate_file=/boot/syslinux/SYSLINUX_AUTOUPDATE +com32_files=(menu.c32 vesamenu.c32 chain.c32 hdt.c32 reboot.c32 poweroff.com) +pciids_file=/usr/share/hwdata/pci.ids + +## Helper functions ## +# Taken from libui-sh +# $1 needle +# $2 set (array) haystack +check_is_in() { + local needle="$1" element + shift + for element; do + [[ $element = $needle ]] && return 0 + done + return 1 +} + +# return true when blockdevice is an md raid, otherwise return a unset value +# get all devices that are part of raid device $1 +device_is_raid() { + [[ $1 && -f /proc/mdstat ]] || return 1 + local devmajor=$(stat -c %t "$1") + (( devmajor == 9 )) +} + +mdraid_all_slaves() { + local slave slaves + for slave in /sys/class/block/${1##*/}/slaves/*; do + source "$slave/uevent" + slaves="$slaves/dev/$DEVNAME " + unset DEVNAME + done + echo $slaves +} + +# Check /sys/block to see if device is partitioned +# If we have a partitioned block device (sda1) /sys/block/sda1/dev will not exist +# However, if we have an unpartitioned block device (sda) /sys/block/sda/dev will exist +dev_is_part() { + # $1 - blockdevice + local dev=$1 + + # If block device uevent file should be found + # If a partition is passed in path shouldn't exist + if [[ $dev = *cciss* ]]; then + [[ -f /sys/block/cciss\!${dev##*/}/dev ]] && return 1 + elif [[ $dev = *ida* ]]; then + [[ -f /sys/block/ida\!${dev##*/}/dev ]] && return 1 + else + [[ -f /sys/block/${dev##*/}/dev ]] && return 1 + fi + + return 0 +} + +# If EFI PART is present in the first 8 bytes then it must be a GPT disk +device_is_gpt() { + local partsig=$(dd if="$1" skip=64 bs=8 count=1 2>/dev/null) + [[ $partsig = "EFI PART" ]] +} + +clear_gpt_attr2() { + # $1 - Block Device, no partitions + local disk=$1 + + # Special Exception for cciss controllers + if [[ $disk = *cciss* ]]; then + for part in /dev/cciss/${disk##*/}*p*; do + local partnum="${part##*[[:alpha:]]}" + sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null + done + # Smart 2 Controllers + elif [[ $disk = *ida* ]]; then + for part in /dev/ida/${disk##*/}*p*; do + local partnum="${part##*[[:alpha:]]}" + sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null + done + else + for part in /sys/block/${disk##*/}/${disk##*/}*; do + local partnum="${part##*[[:alpha:]]}" + sgdisk "$disk" --attributes="$partnum":clear:2 &>/dev/null + done + fi + return 0 +} + +usage() { +cat << EOF +usage: $0 options + +This script will install or upgrade Syslinux + +OPTIONS: + -h Show this message + -i Install Syslinux + -u Update Syslinux + -a Set Boot flag on boot partiton + -m Install Syslinux MBR + -s Updates Syslinux if /boot/syslinux/SYSLINUX_AUTOUPDATE exists + + Arguments Required: + -c Chroot install (ex: -c /mnt) + +Example Usage: syslinux-install_update.sh -i -a -m (install, set boot flag, install mbr) + syslinux-install_update.sh -u (update) +EOF +} + +# Trys to find the partition that /boot resides on +# This will either be on /boot or / (root) +getBoot() { + if [[ ! -d "$bootpath" ]]; then + echo "Could not find $bootpath" + echo "Is boot mounted? Is Syslinux installed?" + exit 1 + fi + + syslinux_fs=(ext2 ext3 ext4 btrfs vfat) + + # Use DATA from findmnt see rc.sysint for more info + if [[ -f /proc/self/mountinfo ]]; then + read rootdev rootfs < <(findmnt -run -t noautofs -o SOURCE,FSTYPE "$CHROOT/") + read bootdev bootfs < <(findmnt -run -t noautofs -o SOURCE,FSTYPE "$CHROOT/boot") + else + echo "Could not find /proc/self/mountinfo" + echo "Are you running a kernel greater than 2.6.24?" + exit 1 + fi + + if [[ $bootfs ]]; then + if ! check_is_in "$bootfs" "${syslinux_fs[@]}"; then + echo "/boot file system is not supported by Syslinux" + exit 1 + fi + boot="boot" + bootpart="$bootdev" + elif [[ $rootfs ]]; then + if ! check_is_in "$rootfs" "${syslinux_fs[@]}"; then + echo "/ (root) file system is not supported by Syslinux" + exit 1 + fi + boot="root" + bootpart="$rootdev" + else + echo "Could not find filesystem on / (root) or /boot." + exit 1 + fi +} + +# We store the partition table type either gpt or mbr in var ptb +# In rare cases a user could have one raid disk using mbr and another using gpt +# In such cases we accept that the output may be incomplete + +# Calls get_ptb() for $bootpart or for all device in RAID +declare -A bootdevs +get_boot_devices() { + if device_is_raid "$bootpart"; then + slaves=$(mdraid_all_slaves "$bootpart") + + for slave in ${slaves[@]}; do + local disk="${slave%%[[:digit:]]*}" + device_is_gpt "$disk" && local ptb="GPT" || local ptb="MBR" + bootdevs[$slave]="$ptb" + done + else + local disk="${bootpart%%[[:digit:]]*}" + device_is_gpt "$disk" && local ptb="GPT" || local ptb="MBR" + bootdevs[$bootpart]="$ptb" + fi +} + +# Function Assumes the boot partition should be marked as active +# All other partitions should not have the boot flag set +set_active() { + # If any bootdev is a block device without partitions bail + # we want to set the boot flag on partitioned disk + for dev in "${!bootdevs[@]}"; do + dev_is_part $dev || { echo "$dev - is a block device. Aborting set_active!"; return 1; } + done + + # Clear BIOS Bootable Legacy Attribute for GPT drives + # In rare cases where a RAID device has slaves on the same block device + # Attribute 2 will be cleared for each partition multiple times + for dev in "${!bootdevs[@]}"; do + local ptb="${bootdevs[$dev]}" + if [[ "$ptb" = GPT ]]; then + local disk="${dev%%[[:digit:]]*}" #ex: /dev/sda + clear_gpt_attr2 "$disk" + fi + done + + # Set the boot flag on bootdevs (generated from get_boot_devices) + for part in "${!bootdevs[@]}"; do + local ptb="${bootdevs[$part]}" + local partnum="${part##*[[:alpha:]]}" + case "$part" in + *[[:digit:]]p[[:digit:]]*) + local disk="${part%%p$partnum}" # get everything before p1 + ;; + *) + local disk="${part%%[[:digit:]]*}" + ;; + esac + + if [[ "$ptb" = MBR ]]; then + if sfdisk "$disk" -A "$partnum" &>/dev/null; then + echo "Boot Flag Set - $part" + else + echo "FAILED to Set the boot flag on $part" + exit 3 + fi + elif [[ "$ptb" = GPT ]]; then + if sgdisk "$disk" --attributes="$partnum":set:2 &>/dev/null; then + echo "Attribute Legacy Bios Bootable Set - $part" + else + echo "FAILED to set attribute Legacy BIOS Bootable on $part" + exit 3 + fi + fi + done + return 0 +} + +install_mbr() { + # If any bootdev is a block device without partitions bail + # we want to install the mbr to a partitioned disk + for dev in "${!bootdevs[@]}"; do + dev_is_part "$dev" || { echo "$dev - is a block device. Aborting MBR install"; return 1; } + done + + for part in "${!bootdevs[@]}"; do + local partnum="${part##*[[:alpha:]]}" + case "$part" in + *[[:digit:]]p[[:digit:]]*) + local disk="${part%%p$partnum}" # get everything before p1 + ;; + *) + local disk="${part%%[[:digit:]]*}" + ;; + esac + local ptb="${bootdevs[$part]}" + + # We want to install to the root of the block device + # If the device is a partition - ABORT! + dev_is_part "$disk" && \ + { echo "ABORT! MBR installation to partition ($disk)!"; exit 4;} + + if [[ "$ptb" = MBR ]]; then + mbrfile="$libpath/mbr.bin" + elif [[ "$ptb" = GPT ]]; then + mbrfile="$libpath/gptmbr.bin" + fi + + if dd bs=440 count=1 conv=notrunc if="$mbrfile" of="$disk" &> /dev/null; then + echo "Installed MBR ($mbrfile) to $disk" + else + echo "Error Installing MBR ($mbrfile) to $disk" + exit 4 + fi + done + return 0 +} + +_install() { + # Copy files to /boot + for file in "${com32_files[@]}"; do + # Symlink files even if links exist + if [[ "$boot" = root ]]; then + ln -s "${libpath#$CHROOT}/$file" "$bootpath/$file" &> /dev/null + elif [[ "$boot" = boot ]]; then + cp "$libpath/$file" "$bootpath/$file" + fi + done + + # Copy / Symlink pci.ids if we copy the com32 module and if pci.ids exists in the FS + if check_is_in "hdt.c32" "${com32_files[@]}" && [[ -f $pciids_file ]]; then + if [[ "$boot" = root ]]; then + ln -s "$pciids_file" "$bootpath/pci.ids" &> /dev/null + elif [[ "$boot" = boot ]]; then + cp "$pciids_file" "$bootpath/pci.ids" &> /dev/null + fi + fi + + if device_is_raid "$bootpart"; then + echo "Detected RAID on /boot - installing Syslinux with --raid" + "$extlinux" --install "$bootpath" -r > /dev/null 2>&1 + else + "$extlinux" --install "$bootpath" > /dev/null 2>&1 + fi + + if (( $? )); then + echo "Syslinux install failed" + exit 2 + else + echo "Syslinux install successful" + fi + + touch "$CHROOT/$autoupdate_file" +} + +update() { + # Update any com and c32 files in /boot + if [[ "$boot" = boot ]]; then + for file in "$bootpath"/*.{c32,com}; do + file=$(basename "$file") + cp "$libpath/$file" "$bootpath/$file" &> /dev/null + done + if [[ -f "$bootpath/pci.ids" ]]; then + cp "$pciids_file" "$bootpath/pci.ids" &> /dev/null + fi + fi + + if device_is_raid $bootpart; then + echo "Detected RAID on /boot - installing Syslinux with --raid" + "$extlinux" --update "$bootpath" -r &> /dev/null + else + "$extlinux" --update "$bootpath" &> /dev/null + fi + + if (($?)); then + echo "Syslinux update failed" + exit 2 + else + echo "Syslinux update successful" + fi +} + +if (( $# == 0 )); then + usage + exit 1 +fi + +while getopts "c:uihmas" opt; do + case $opt in + c) + CHROOT=$(readlink -e "$OPTARG") + if [[ -z $CHROOT ]]; then + echo "error: chroot path ``$OPTARG does not exist"; + exit 1 + fi + ;; + h) + USAGE="True" + ;; + i) + INSTALL="True" + ;; + u) + UPDATE="True" + ;; + m) + MBR="True" + ;; + a) + SET_ACTIVE="True" + ;; + s) + # If AUTOUPDATE_FILE does not exist exit the script + if [[ -f $autoupdate_file ]]; then + UPDATE="True" + else + exit 0 + fi + ;; + *) + usage + exit 1 + ;; + esac +done + +if [[ $USAGE ]]; then + usage + exit 0 +fi + +# Make sure only root can run our script +if (( $(id -u) != 0 )); then + echo "This script must be run as root" 1>&2 + exit 1 +fi + +# Display Usage Information if both Install and Update are passed +if [[ $INSTALL && $UPDATE ]]; then + usage + exit 1 +fi + +# If a chroot dir is path set variables to reflect chroot +if [[ "$CHROOT" ]]; then + libpath="$CHROOT$libpath" + bootpath="$CHROOT$bootpath" + extlinux="$CHROOT$extlinux" +fi + +# Exit if no /boot path exists +if ( f=("$bootpath"/*); (( ! ${#f[@]} )) ); then + echo "Error: $bootpath is empty!" + echo "Is /boot mounted?" + exit 1 +fi + +# Get the boot device if any of these options are passed +if [[ $INSTALL || $UPDATE || $SET_ACTIVE || $MBR ]]; then + getBoot +fi + +# Install or Update +if [[ $INSTALL ]]; then + _install || exit +elif [[ $UPDATE ]]; then + update || exit +fi + + +# SET_ACTIVE and MBR +if [[ $SET_ACTIVE ]] || [[ $MBR ]]; then + get_boot_devices + + if [[ $SET_ACTIVE ]]; then + set_active || exit + fi + + if [[ $MBR ]]; then + install_mbr || exit + fi +fi + +exit 0 + +# vim: set et sw=4: diff --git a/abs/extra/syslinux/syslinux.cfg b/abs/extra/syslinux/syslinux.cfg new file mode 100644 index 0000000..5a588f5 --- /dev/null +++ b/abs/extra/syslinux/syslinux.cfg @@ -0,0 +1,79 @@ +# Config file for Syslinux - +# /boot/syslinux/syslinux.cfg +# +# Comboot modules: +# * menu.c32 - provides a text menu +# * vesamenu.c32 - provides a graphical menu +# * chain.c32 - chainload MBRs, partition boot sectors, Windows bootloaders +# * hdt.c32 - hardware detection tool +# * reboot.c32 - reboots the system +# * poweroff.com - shutdown the system +# +# To Use: Copy the respective files from /usr/lib/syslinux to /boot/syslinux. +# If /usr and /boot are on the same file system, symlink the files instead +# of copying them. +# +# If you do not use a menu, a 'boot:' prompt will be shown and the system +# will boot automatically after 5 seconds. +# +# Please review the wiki: https://wiki.archlinux.org/index.php/Syslinux +# The wiki provides further configuration examples + +DEFAULT arch +PROMPT 0 # Set to 1 if you always want to display the boot: prompt +TIMEOUT 50 +# You can create syslinux keymaps with the keytab-lilo tool +#KBDMAP de.ktl + +# Menu Configuration +# Either menu.c32 or vesamenu32.c32 must be copied to /boot/syslinux +UI menu.c32 +#UI vesamenu.c32 + +# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu +MENU TITLE Arch Linux +#MENU BACKGROUND splash.png +MENU COLOR border 30;44 #40ffffff #a0000000 std +MENU COLOR title 1;36;44 #9033ccff #a0000000 std +MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all +MENU COLOR unsel 37;44 #50ffffff #a0000000 std +MENU COLOR help 37;40 #c0ffffff #a0000000 std +MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std +MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std +MENU COLOR msg07 37;40 #90ffffff #a0000000 std +MENU COLOR tabmsg 31;40 #30ffffff #00000000 std + +# boot sections follow +# +# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line. +# +#-* + +LABEL arch + MENU LABEL Arch Linux + LINUX ../vmlinuz-linux + APPEND root=/dev/sda3 ro + INITRD ../initramfs-linux.img + +LABEL archfallback + MENU LABEL Arch Linux Fallback + LINUX ../vmlinuz-linux + APPEND root=/dev/sda3 ro + INITRD ../initramfs-linux-fallback.img + +#LABEL windows +# MENU LABEL Windows +# COM32 chain.c32 +# APPEND hd0 1 + +LABEL hdt + MENU LABEL HDT (Hardware Detection Tool) + COM32 hdt.c32 + +LABEL reboot + MENU LABEL Reboot + COM32 reboot.c32 + +LABEL off + MENU LABEL Power Off + COMBOOT poweroff.com diff --git a/abs/extra/syslinux/syslinux.install b/abs/extra/syslinux/syslinux.install new file mode 100644 index 0000000..0dc0ece --- /dev/null +++ b/abs/extra/syslinux/syslinux.install @@ -0,0 +1,13 @@ +post_install() { + echo "==> If you want to use syslinux as your bootloader" + echo "==> edit /boot/syslinux/syslinux.cfg and run" + echo "==> # /usr/sbin/syslinux-install_update -i -a -m" + echo "==> to install it." +} + +post_upgrade() { + # auto-update syslinux if /boot/syslinux/SYSLINUX_AUTOUPDATE exists + /usr/sbin/syslinux-install_update -s +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/sysstat/PKGBUILD b/abs/extra/sysstat/PKGBUILD index 07c36c2..0c7867a 100644 --- a/abs/extra/sysstat/PKGBUILD +++ b/abs/extra/sysstat/PKGBUILD @@ -1,9 +1,9 @@ -# $Id$ +# $Id: PKGBUILD 77464 2012-10-10 16:04:46Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Martin Devera <devik@cdi.cz> pkgname=sysstat -pkgver=10.0.1 +pkgver=10.1.2 pkgrel=1 pkgdesc="a collection of performance monitoring tools (iostat,isag,mpstat,pidstat,sadf,sar)" arch=('i686' 'x86_64') @@ -13,14 +13,19 @@ depends=('lm_sensors') optdepends=('tk: to use isag' 'gnuplot: to use isag') options=(zipman) +backup=('etc/conf.d/sysstat' + 'etc/conf.d/sysstat.ioconf') source=(http://pagesperso-orange.fr/sebastien.godard/$pkgname-$pkgver.tar.gz - sysstat) -md5sums=('a8b12230452dc0e0b6cae5fd5ec3c579' - 'ad46159609a2c13b4a46b506ff847bf6') + sysstat + sysstat.service) +md5sums=('c40626b96cc2b4cf303cbcf1efc96eba' + '3ce41ebf7330aba01e70b38658afed1f' + '12ba479c606620193e8b7c6e982d5088') build() { cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr \ + conf_dir=/etc/conf.d ./configure --prefix=/usr \ + --enable-yesterday \ --mandir=/usr/share/man \ --enable-install-isag \ --disable-man-group @@ -30,9 +35,9 @@ build() { package() { cd $srcdir/$pkgname-$pkgver make DESTDIR=$pkgdir install - install -D -m 644 sysstat.sysconfig $pkgdir/etc/sysstat/sysstat install -D -m 744 cron/sysstat.cron.hourly $pkgdir/etc/cron.hourly/sysstat install -D -m 744 cron/sysstat.cron.daily $pkgdir/etc/cron.daily/sysstat install -D -m 755 $srcdir/sysstat $pkgdir/etc/rc.d/sysstat chown -R root:root $pkgdir + install -Dm0644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system/$pkgname.service } diff --git a/abs/extra/sysstat/sysstat b/abs/extra/sysstat/sysstat index d8e312a..d0e40aa 100644 --- a/abs/extra/sysstat/sysstat +++ b/abs/extra/sysstat/sysstat @@ -1,21 +1,25 @@ #!/bin/bash -. /etc/rc.conf . /etc/rc.d/functions +. /etc/conf.d/sysstat +. /etc/rc.conf case "$1" in start) stat_busy "Writing SysStat restart record" - /usr/lib/sa/sadc -L -F - + /usr/lib/sa/sadc -L -F ${SADC_OPTIONS} - if [ $? -gt 0 ]; then stat_fail else + add_daemon sysstat stat_done fi ;; stop) + echo "Stopping SysStat is useless" + rm_daemon sysstat ;; *) - echo "usage: $0 {start|stop}" + echo "usage: $0 {start|stop}" esac exit 0 diff --git a/abs/extra/sysstat/sysstat.service b/abs/extra/sysstat/sysstat.service new file mode 100644 index 0000000..2ff2365 --- /dev/null +++ b/abs/extra/sysstat/sysstat.service @@ -0,0 +1,11 @@ +[Unit] +Description= Resets System Activity Logs +After=syslog.target + +[Service] +Type=oneshot +ExecStart=/usr/lib/sa/sa1 --boot +RemainAfterExit=yes + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/tango-icon-theme/PKGBUILD b/abs/extra/tango-icon-theme/PKGBUILD deleted file mode 100644 index 9f1dfba..0000000 --- a/abs/extra/tango-icon-theme/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 77764 2010-04-17 16:52:32Z thayer $ -# Maintainer: Thayer Williams <thayer@archlinux.org> -# Contributor: James Rayner <james@archlinux.org> - -pkgname=tango-icon-theme -pkgver=0.8.90 -pkgrel=2 -pkgdesc="The Tango Desktop Project exists to create a consistent user experience" -arch=('any') -url="http://tango.freedesktop.org" -license=('custom:ccpl-attribution-sharealike-2.5') -depends=('librsvg') -makedepends=('imagemagick' 'icon-naming-utils' 'intltool' 'python2' 'perl-xml-libxml') -source=(http://tango.freedesktop.org/releases/$pkgname-$pkgver.tar.gz) -md5sums=('0795895d2f20eddcbd2bffe94ed431a6') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr \ - --enable-png-creation - make || return 1 -} -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 - - install -D -m644 COPYING "${pkgdir}/usr/share/licenses/$pkgname/LICENSE" || return 1 -} - diff --git a/abs/extra/tatir/PKGBUILD b/abs/extra/tatir/PKGBUILD deleted file mode 100644 index e9d8ab2..0000000 --- a/abs/extra/tatir/PKGBUILD +++ /dev/null @@ -1,21 +0,0 @@ -# $Id: PKGBUILD 5936 2008-07-21 20:24:16Z thomas $ -# Maintainer: Cecil Watson<knoppmyth@gmail.com> - -pkgname=tatir -pkgver=1 -pkgrel=4 -pkgdesc="TatIR, the Linux media remote control." -arch=('i686' 'x86_64') -license=('GPL2') -url="http://tatir.dropthetranny.com/" -depends=('pyusb' 'xautomation') -source=('tatir.tar.bz2') -install=tatir.install -build() { - mkdir -p $pkgdir/usr/bin - mkdir -p $pkgdir/etc/tatir -# mkdir -p $pkgdir/etc/sv/tatir/supervise - cp *.py $pkgdir/usr/bin - cp remote_xte.conf $pkgdir/etc/tatir/ -# cp run $pkgdir/etc/sv/tatir/ -} diff --git a/abs/extra/tatir/__delete b/abs/extra/tatir/__delete deleted file mode 100644 index 61aca57..0000000 --- a/abs/extra/tatir/__delete +++ /dev/null @@ -1 +0,0 @@ -this pkg is marked to be removed diff --git a/abs/extra/tatir/tatir.install b/abs/extra/tatir/tatir.install deleted file mode 100644 index aef470a..0000000 --- a/abs/extra/tatir/tatir.install +++ /dev/null @@ -1,19 +0,0 @@ -# arg 1: the new package version -post_install() { -# add_service.sh tatir - /bin/true -} -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - /bin/true -} - -# arg 1: the old package version -post_remove() { - remove_service.sh tatir -} - -op=$1 -shift -$op $* diff --git a/abs/extra/tatir/tatir.tar.bz2 b/abs/extra/tatir/tatir.tar.bz2 Binary files differdeleted file mode 100644 index 1a16a46..0000000 --- a/abs/extra/tatir/tatir.tar.bz2 +++ /dev/null diff --git a/abs/extra/terminal/PKGBUILD b/abs/extra/terminal/PKGBUILD deleted file mode 100644 index 1acef9d..0000000 --- a/abs/extra/terminal/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# $Id: PKGBUILD 80889 2010-05-22 15:58:57Z andyrtr $ -# Maintainer: AndyRTR <andyrtr@archlinux.org> -# Contributor: tobias <tobias funnychar archlinux.org> -# Contributor: Aurelien Foret <orelien@chez.com> - -pkgname=terminal -pkgver=0.4.5 -pkgrel=1 -pkgdesc="A modern terminal emulator primarly for the Xfce desktop environment" -arch=(i686 x86_64) -license=('GPL2') -url="http://www.xfce.org/projects/terminal/" -groups=('xfce4') -depends=('exo>=0.3.107' "vte>=0.24.1" 'dbus-glib>=0.86' - 'startup-notification>=0.10' 'hicolor-icon-theme') -makedepends=('pkgconfig' 'intltool') -options=('!libtool') -install=terminal.install -source=(http://archive.xfce.org/src/apps/${pkgname}/0.4/Terminal-${pkgver}.tar.bz2) -md5sums=('3c707628e2e97c6d9566cd74d400036a') - -build() { - cd ${srcdir}/Terminal-${pkgver} - ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/xfce4 \ - --localstatedir=/var --disable-static || return 1 - make || return 1 -} - -package() { - cd ${srcdir}/Terminal-${pkgver} - make DESTDIR=${pkgdir} install || return 1 -} diff --git a/abs/extra/terminal/terminal-dont-die-on-dbus-kill.patch b/abs/extra/terminal/terminal-dont-die-on-dbus-kill.patch deleted file mode 100644 index e20e45c..0000000 --- a/abs/extra/terminal/terminal-dont-die-on-dbus-kill.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- terminal/terminal-dbus.c.orig 2007-01-23 22:25:12.000000000 +0000 -+++ terminal/terminal-dbus.c 2007-01-23 22:25:50.000000000 +0000 -@@ -191,6 +191,7 @@ terminal_dbus_register_service (Terminal - - /* register DBus connection with GLib main loop */ - dbus_connection_setup_with_g_main (connection, NULL); -+ dbus_connection_set_exit_on_disconnect (connection, FALSE); - - if (dbus_bus_request_name (connection, TERMINAL_DBUS_SERVICE, 0, &derror) < 0) - { diff --git a/abs/extra/terminal/terminal.install b/abs/extra/terminal/terminal.install deleted file mode 100644 index 21b79d2..0000000 --- a/abs/extra/terminal/terminal.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} diff --git a/abs/extra/terminus-font/PKGBUILD b/abs/extra/terminus-font/PKGBUILD index c3be90c..17201d3 100644 --- a/abs/extra/terminus-font/PKGBUILD +++ b/abs/extra/terminus-font/PKGBUILD @@ -1,20 +1,32 @@ +# $Id: PKGBUILD 68042 2012-03-17 11:38:36Z giovanni $ # Maintainer: Vesa Kaihlavirta <vegai@iki.fi> -# Contributor: Kristoffer Fossgĺrd <kfs1@online.no> +# Contributor: Kristoffer FossgĂĄrd <kfs1@online.no> + pkgname=terminus-font -pkgver=4.30 -pkgrel=1 +pkgver=4.36 +pkgrel=2 pkgdesc="A superb, monospace bitmap font (for X11 and console)" -depends=(xorg-fonts-encodings xorg-fonts-alias xorg-font-utils fontconfig) -replaces=(xserver-terminus-fonts) -arch=(i686 x86_64) -source=(http://www.is-vn.bg/hamster/$pkgname-$pkgver.tar.gz) -url="http://www.is-vn.bg/hamster/jimmy-en.html" +arch=('any') +url="http://sourceforge.net/projects/terminus-font/" +license=('GPL2' 'custom:OFL') +depends=('xorg-fonts-encodings' 'xorg-fonts-alias' 'xorg-font-utils' 'fontconfig') +replaces=('xserver-terminus-fonts') install=terminus-font.install -license=('GPL-2') +source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.gz") +md5sums=('de925a7ee7351581033d4b615dcb1eb1') build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr --x11dir=/usr/share/fonts/local/ --psfdir=/usr/share/kbd/consolefonts/ - make DESTDIR=$startdir/pkg install + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr \ + --x11dir=/usr/share/fonts/local \ + --psfdir=/usr/share/kbd/consolefonts +} +package() +{ + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + install -Dm644 "${srcdir}/${pkgname}-${pkgver}/OFL.TXT" \ + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } -md5sums=('6f8bd95b593851f9f5c210a9d33cbbf1') diff --git a/abs/extra/terminus-font/install.proto b/abs/extra/terminus-font/install.proto deleted file mode 100644 index 37f0b55..0000000 --- a/abs/extra/terminus-font/install.proto +++ /dev/null @@ -1,27 +0,0 @@ -# arg 1: the new package version - post_install() { - echo -n "Updating font cache... " - /usr/bin/fc-cache - cd /usr/share/fonts/local - /usr/bin/mkfontdir - /usr/bin/mkfontscale -# cp ../encodings/encodings.dir ./encodings.dir - echo "done." - echo "Note that local fonts are now (with xorg-7.0) in /usr/share/fonts/local/" - } - -# # arg 1: the new package version -# # arg 2: the old package version - post_upgrade() { - post_install $1 - } -# -# # arg 1: the old package version - post_remove() { - /usr/bin/fc-cache - } - -op=$1 -shift - -$op $* diff --git a/abs/extra/terminus-font/terminus-font.install b/abs/extra/terminus-font/terminus-font.install index e17fb4f..6b194dc 100644 --- a/abs/extra/terminus-font/terminus-font.install +++ b/abs/extra/terminus-font/terminus-font.install @@ -1,4 +1,3 @@ -# arg 1: the new package version post_install() { echo -n "Updating font cache... " fc-cache -f > /dev/null @@ -8,14 +7,10 @@ post_install() { echo "Note: terminus-font is in /usr/share/fonts/local/" } -# # arg 1: the new package version -# # arg 2: the old package version post_upgrade() { - post_install $1 + post_install } -# -# # arg 1: the old package version + post_remove() { - post_install $1 + post_install } - diff --git a/abs/extra/tidyhtml/PKGBUILD b/abs/extra/tidyhtml/PKGBUILD new file mode 100644 index 0000000..aaca300 --- /dev/null +++ b/abs/extra/tidyhtml/PKGBUILD @@ -0,0 +1,42 @@ +# $Id: PKGBUILD 146404 2012-01-10 21:14:26Z andrea $ +# Maintainer: +# Contributor: eric <eric@archlinux.org> +# Contributor: Markus Meissner <markus@meissna.de> + +pkgname=tidyhtml +# obtain pkgver from http://tidy.cvs.sourceforge.net/tidy/tidy/src/version.h?view=markup +pkgver=1.46 +pkgrel=2 +pkgdesc="A tool to tidy down your HTML code to a clean style" +arch=('i686' 'x86_64') +url="http://tidy.sourceforge.net/" +license=('custom') +depends=('glibc') +options=('!libtool') +source=("ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.bz2") +md5sums=('3d970d54be83c5ec985687e9976a2832') + +mksource() { + mkdir ${pkgname}-${pkgver} + cd ${pkgname}-${pkgver} + cvs -d:pserver:anonymous@tidy.cvs.sourceforge.net:/cvsroot/tidy login #hit enter for password + cvs -z3 -d:pserver:anonymous@tidy.cvs.sourceforge.net:/cvsroot/tidy co -P tidy + cd .. + tar -cvjf ${pkgname}-${pkgver}.tar.bz2 ${pkgname}-${pkgver}/* +} + +build(){ + cd $srcdir/${pkgname}-${pkgver}/tidy + source build/gnuauto/setup.sh + + ./configure --prefix=/usr + make +} + +package() { + cd $srcdir/${pkgname}-${pkgver}/tidy + make DESTDIR=$pkgdir install + + install -Dm644 htmldoc/license.html \ + ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE +} diff --git a/abs/extra/tigervnc/PKGBUILD b/abs/extra/tigervnc/PKGBUILD new file mode 100644 index 0000000..21d3013 --- /dev/null +++ b/abs/extra/tigervnc/PKGBUILD @@ -0,0 +1,81 @@ +# $Id: PKGBUILD 73952 2012-07-17 11:36:12Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Uroš Vampl <mobile.leecher at gmail dot com> + +pkgname=tigervnc +pkgver=1.2.0 +pkgrel=7 +_xorgver=1.12.3 +pkgdesc="suite of VNC servers and clients. VNC 4 branch of TightVNC." +arch=('i686' 'x86_64') +url="http://www.tigervnc.org" +license=('GPL') +depends=('pam' 'gnutls' 'libjpeg-turbo' 'libxft' 'libxinerama' 'libxcursor' + 'libxtst' 'libxfont' 'pixman' 'xorg-xauth' 'xorg-xsetroot' + 'xkeyboard-config' 'libgl' 'libgcrypt' 'perl') +makedepends=('cmake' 'nasm' 'xorg-font-util' 'xorg-util-macros' 'bigreqsproto' + 'compositeproto' 'damageproto' 'randrproto' 'resourceproto' + 'scrnsaverproto' 'videoproto' 'xcmiscproto' 'xf86vidmodeproto' + 'xtrans' 'mesa') +options=(!libtool) +install=tiger.install +conflicts=('tightvnc') +source=(http://downloads.sourceforge.net/tigervnc/${pkgname}-${pkgver}.tar.gz + ftp://ftp.freedesktop.org/pub/xorg/individual/xserver/xorg-server-${_xorgver}.tar.bz2 + xorg111.patch + xorg112.patch + gnutls.patch + gethomedir.patch + cmakelists.patch vncsvc.rules) + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + cp -r ${srcdir}/xorg-server-${_xorgver}/* unix/xserver + patch -Np1 -i ${srcdir}/gnutls.patch + patch -Np1 -i ${srcdir}/gethomedir.patch + patch -Np1 -i ${srcdir}/cmakelists.patch + patch -Np1 -i ${srcdir}/xorg111.patch + patch -Np1 -i ${srcdir}/xorg112.patch + + cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr -DUSE_INCLUDED_FLTK=yes + make + + cd unix/xserver + patch -Np1 -i ../xserver110.patch + autoreconf -fiv + ./configure --prefix=/usr \ + --disable-static --disable-xinerama --without-dtrace \ + --disable-xorg --disable-xnest --disable-xvfb --disable-dmx \ + --disable-xwin --disable-xephyr --disable-kdrive --with-pic \ + --disable-config-dbus --disable-config-hal --disable-config-udev \ + --disable-unit-tests --disable-devel-docs --disable-dri \ + --enable-dri2 --enable-glx --enable-glx-tls + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + cd unix/xserver/hw/vnc + make DESTDIR=${pkgdir} install + sed -i 's/iconic/nowin/' ${pkgdir}/usr/bin/vncserver + + cd ${srcdir} + #sudo rules + mkdir -p $startdir/pkg/etc/sudoers.d/ + chmod 750 $startdir/pkg/etc/sudoers.d/ + chown -R root:root $startdir/pkg/etc/sudoers.d + install -o root -g root -m 0750 vncsvc.rules $startdir/pkg/etc/sudoers.d/vncsvc-tigervnc + + + +} +md5sums=('3a5755b4ed600a81c3a17976c6f8420d' + '65a53b11bc01dcc97ee9b201dc620c32' + 'b680b55f7f9f569cd26ac0b330012a8b' + 'f73e055153889ae7b5aac8e697f7a841' + '1a5fe8867ab3e49e20aafc70c415494f' + 'fa059baabe72308bf82622bca73cb3e0' + '6ef923c71cc0e79c4b37eb3b124eea75' + '6f4a594581e63bfb29cd1b7b37d66d10') diff --git a/abs/extra/tigervnc/cmakelists.patch b/abs/extra/tigervnc/cmakelists.patch new file mode 100644 index 0000000..cc62866 --- /dev/null +++ b/abs/extra/tigervnc/cmakelists.patch @@ -0,0 +1,70 @@ +diff -ur tigervnc-1.2.0.orig/cmake/BuildPackages.cmake tigervnc-1.2.0/cmake/BuildPackages.cmake +--- tigervnc-1.2.0.orig/cmake/BuildPackages.cmake 2011-11-08 10:16:36.000000000 +0100 ++++ tigervnc-1.2.0/cmake/BuildPackages.cmake 2012-03-30 15:27:00.808919876 +0200 +@@ -86,5 +86,5 @@ + # Common + # + +-install(FILES ${CMAKE_SOURCE_DIR}/LICENCE.TXT DESTINATION doc) +-install(FILES ${CMAKE_SOURCE_DIR}/README.txt DESTINATION doc) ++install(FILES ${CMAKE_SOURCE_DIR}/LICENCE.TXT DESTINATION share/doc/${CMAKE_PROJECT_NAME}-${VERSION}) ++install(FILES ${CMAKE_SOURCE_DIR}/README.txt DESTINATION share/doc/${CMAKE_PROJECT_NAME}-${VERSION}) +diff -ur tigervnc-1.2.0.orig/CMakeLists.txt tigervnc-1.2.0/CMakeLists.txt +--- tigervnc-1.2.0.orig/CMakeLists.txt 2012-03-09 21:34:29.000000000 +0100 ++++ tigervnc-1.2.0/CMakeLists.txt 2012-03-30 15:28:59.716911575 +0200 +@@ -316,7 +316,8 @@ + if(APPLE) + set(FLTK_LIBRARIES "-framework Carbon -framework Cocoa -framework ApplicationServices") + elseif(NOT WIN32) +- set(FLTK_LIBRARIES "-ldl") ++ find_library(FONTCONFIG_LIB fontconfig) ++ set(FLTK_LIBRARIES "-ldl" ${FONTCONFIG_LIB}) + endif() + message(STATUS "Using included FLTK library") + endif() +diff -ur tigervnc-1.2.0.orig/unix/CMakeLists.txt tigervnc-1.2.0/unix/CMakeLists.txt +--- tigervnc-1.2.0.orig/unix/CMakeLists.txt 2011-11-03 20:01:18.000000000 +0100 ++++ tigervnc-1.2.0/unix/CMakeLists.txt 2012-03-30 15:27:00.808919876 +0200 +@@ -5,4 +5,4 @@ + add_subdirectory(x0vncserver) + + install(PROGRAMS vncserver DESTINATION bin) +-install(FILES vncserver.man DESTINATION man/man1 RENAME vncserver.1) ++install(FILES vncserver.man DESTINATION share/man/man1 RENAME vncserver.1) +diff -ur tigervnc-1.2.0.orig/unix/vncconfig/CMakeLists.txt tigervnc-1.2.0/unix/vncconfig/CMakeLists.txt +--- tigervnc-1.2.0.orig/unix/vncconfig/CMakeLists.txt 2011-06-25 09:32:34.000000000 +0200 ++++ tigervnc-1.2.0/unix/vncconfig/CMakeLists.txt 2012-03-30 15:27:00.808919876 +0200 +@@ -12,4 +12,4 @@ + target_link_libraries(vncconfig tx rfb network rdr ${X11_LIBRARIES}) + + install(TARGETS vncconfig DESTINATION bin) +-install(FILES vncconfig.man DESTINATION man/man1 RENAME vncconfig.1) ++install(FILES vncconfig.man DESTINATION share/man/man1 RENAME vncconfig.1) +diff -ur tigervnc-1.2.0.orig/unix/vncpasswd/CMakeLists.txt tigervnc-1.2.0/unix/vncpasswd/CMakeLists.txt +--- tigervnc-1.2.0.orig/unix/vncpasswd/CMakeLists.txt 2011-06-25 09:32:34.000000000 +0200 ++++ tigervnc-1.2.0/unix/vncpasswd/CMakeLists.txt 2012-03-30 15:27:00.808919876 +0200 +@@ -6,4 +6,4 @@ + target_link_libraries(vncpasswd tx rfb rdr os) + + install(TARGETS vncpasswd DESTINATION bin) +-install(FILES vncpasswd.man DESTINATION man/man1 RENAME vncpasswd.1) ++install(FILES vncpasswd.man DESTINATION share/man/man1 RENAME vncpasswd.1) +diff -ur tigervnc-1.2.0.orig/unix/x0vncserver/CMakeLists.txt tigervnc-1.2.0/unix/x0vncserver/CMakeLists.txt +--- tigervnc-1.2.0.orig/unix/x0vncserver/CMakeLists.txt 2011-08-19 18:41:06.000000000 +0200 ++++ tigervnc-1.2.0/unix/x0vncserver/CMakeLists.txt 2012-03-30 15:27:00.809919874 +0200 +@@ -24,4 +24,4 @@ + endif() + + install(TARGETS x0vncserver DESTINATION bin) +-install(FILES x0vncserver.man DESTINATION man/man1 RENAME x0vncserver.1) ++install(FILES x0vncserver.man DESTINATION share/man/man1 RENAME x0vncserver.1) +diff -ur tigervnc-1.2.0.orig/vncviewer/CMakeLists.txt tigervnc-1.2.0/vncviewer/CMakeLists.txt +--- tigervnc-1.2.0.orig/vncviewer/CMakeLists.txt 2011-10-05 11:32:28.000000000 +0200 ++++ tigervnc-1.2.0/vncviewer/CMakeLists.txt 2012-03-30 15:27:00.809919874 +0200 +@@ -55,5 +55,5 @@ + install(TARGETS vncviewer DESTINATION bin) + endif() + if(UNIX) +- install(FILES vncviewer.man DESTINATION man/man1 RENAME vncviewer.1) ++ install(FILES vncviewer.man DESTINATION share/man/man1 RENAME vncviewer.1) + endif() diff --git a/abs/extra/tigervnc/gethomedir.patch b/abs/extra/tigervnc/gethomedir.patch new file mode 100644 index 0000000..9114eea --- /dev/null +++ b/abs/extra/tigervnc/gethomedir.patch @@ -0,0 +1,16 @@ +--- tigervnc-1.0.90/unix/xserver/hw/vnc/Makefile.am~ 2011-04-20 13:46:16.993047050 +0200 ++++ tigervnc-1.0.90/unix/xserver/hw/vnc/Makefile.am 2011-04-20 14:03:35.942724608 +0200 +@@ -1,11 +1,12 @@ + TIGERVNC_SRCDIR=${top_srcdir}/../.. + LIB_DIR=${top_builddir}/../../common + ++OS_LIB=$(LIB_DIR)/os/libos.a + RFB_LIB=$(LIB_DIR)/rfb/librfb.la + RDR_LIB=$(LIB_DIR)/rdr/librdr.la + NETWORK_LIB=$(LIB_DIR)/network/libnetwork.la + XREGION_LIB=$(LIB_DIR)/Xregion/libXregion.la +-COMMON_LIBS=$(NETWORK_LIB) $(RFB_LIB) $(RDR_LIB) $(XREGION_LIB) ++COMMON_LIBS=$(NETWORK_LIB) $(OS_LIB) $(RFB_LIB) $(RDR_LIB) $(XREGION_LIB) + + noinst_LTLIBRARIES = libvnccommon.la + diff --git a/abs/extra/tigervnc/gnutls.patch b/abs/extra/tigervnc/gnutls.patch new file mode 100644 index 0000000..d0b7ef8 --- /dev/null +++ b/abs/extra/tigervnc/gnutls.patch @@ -0,0 +1,36 @@ +diff -ur tigervnc-1.2.0.orig/CMakeLists.txt tigervnc-1.2.0/CMakeLists.txt +--- tigervnc-1.2.0.orig/CMakeLists.txt 2012-03-09 21:34:29.000000000 +0100 ++++ tigervnc-1.2.0/CMakeLists.txt 2012-03-27 23:14:12.292068145 +0200 +@@ -344,7 +344,7 @@ + # system's version (if available) to perform this test. + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES};-lz) + endif() +- check_function_exists(gnutls_transport_set_global_errno HAVE_OLD_GNUTLS) ++ check_function_exists(gnutls_transport_set_global_errno HAVE_GNUTLS_GLOBAL_ERRNO) + check_function_exists(gnutls_x509_crt_print HAVE_GNUTLS_X509_CRT_PRINT) + check_type_size(gnutls_x509_crt_t GNUTLS_X509_CRT_T) + check_type_size(gnutls_datum_t GNUTLS_DATUM_T) +diff -ur tigervnc-1.2.0.orig/common/rdr/TLSInStream.cxx tigervnc-1.2.0/common/rdr/TLSInStream.cxx +--- tigervnc-1.2.0.orig/common/rdr/TLSInStream.cxx 2010-09-30 08:25:28.000000000 +0200 ++++ tigervnc-1.2.0/common/rdr/TLSInStream.cxx 2012-03-27 23:14:11.166068223 +0200 +@@ -27,7 +27,7 @@ + #include <rdr/TLSInStream.h> + #include <errno.h> + +-#ifdef HAVE_OLD_GNUTLS ++#ifndef HAVE_GNUTLS_GLOBAL_ERRNO + #define gnutls_transport_set_global_errno(A) do { errno = (A); } while(0) + #endif + +diff -ur tigervnc-1.2.0.orig/common/rdr/TLSOutStream.cxx tigervnc-1.2.0/common/rdr/TLSOutStream.cxx +--- tigervnc-1.2.0.orig/common/rdr/TLSOutStream.cxx 2010-09-30 08:25:28.000000000 +0200 ++++ tigervnc-1.2.0/common/rdr/TLSOutStream.cxx 2012-03-27 23:14:09.576068335 +0200 +@@ -27,7 +27,7 @@ + #include <rdr/TLSOutStream.h> + #include <errno.h> + +-#ifdef HAVE_OLD_GNUTLS ++#ifndef HAVE_GNUTLS_GLOBAL_ERRNO + #define gnutls_transport_set_global_errno(A) do { errno = (A); } while(0) + #endif + diff --git a/abs/extra/tigervnc/tiger.install b/abs/extra/tigervnc/tiger.install new file mode 100644 index 0000000..87e7b5e --- /dev/null +++ b/abs/extra/tigervnc/tiger.install @@ -0,0 +1,22 @@ +post_install(){ + groupadd -g 78 vncsvc &>/dev/null + useradd -u 78 -m -g vncsvc -d /home/vncsvc -s /bin/bash vncsvc &>/dev/null + usermod -a -G mythtv vncsvc + chown -R vncsvc:vncsvc /home/vncsvc &>/dev/null +} + +post_upgrade(){ + getent group vncsvc >/dev/null 2>&1 || groupadd -g 78 vncsvc &>/dev/null + getent passwd vncsvc >/dev/null 2>&1 || useradd -u 78 -g vncsvc -m -d /home/vncsvc -s /bin/bash vncsvc &>/dev/null + usermod -a -G mythtv vncsvc +} + +post_remove(){ + if getent passwd vncsvc >/dev/null 2>&1; then + userdel vncsvc + fi + if getent group vncsvc >/dev/null 2>&1; then + groupdel vncsvc + fi +} + diff --git a/abs/extra/tigervnc/vncsvc.rules b/abs/extra/tigervnc/vncsvc.rules new file mode 100644 index 0000000..3c1b992 --- /dev/null +++ b/abs/extra/tigervnc/vncsvc.rules @@ -0,0 +1,4 @@ +vncsvc ALL=(ALL) NOPASSWD: /usr/MythVantage/bin/mythinstall -s * +vncsvc ALL=(ALL) NOPASSWD: /usr/MythVantage/bin/MythVantage -s * +vncsvc ALL=(ALL) NOPASSWD: /usr/MythVantage/bin/systemconfig.py + diff --git a/abs/extra/tigervnc/xorg111.patch b/abs/extra/tigervnc/xorg111.patch new file mode 100644 index 0000000..ee0ddb9 --- /dev/null +++ b/abs/extra/tigervnc/xorg111.patch @@ -0,0 +1,235 @@ +diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc +--- tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc.xorg111 2011-08-09 23:16:36.000000000 +0200 ++++ tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc 2011-11-11 11:59:14.226819903 +0100 +@@ -82,10 +82,11 @@ static KeyCode KeysymToKeycode(KeySymsPt + /* Event queue is shared between all devices. */ + #if XORG == 15 + static xEvent *eventq = NULL; +-#else ++#elif XORG < 111 + static EventList *eventq = NULL; + #endif + ++#if XORG < 111 + static void initEventq(void) + { + /* eventq is never free()-ed because it exists during server life. */ +@@ -100,7 +101,9 @@ static void initEventq(void) + #endif + } + } ++#endif /* XORG < 111 */ + ++#if XORG < 111 + static void enqueueEvents(DeviceIntPtr dev, int n) + { + int i; +@@ -122,6 +125,7 @@ static void enqueueEvents(DeviceIntPtr d + ); + } + } ++#endif /* XORG < 111 */ + + InputDevice::InputDevice(rfb::VNCServerST *_server) + : server(_server), oldButtonMask(0) +@@ -141,12 +145,17 @@ InputDevice::InputDevice(rfb::VNCServerS + keyboardProc, TRUE); + RegisterKeyboardDevice(keyboardDev); + #endif ++#if XORG < 111 + initEventq(); ++#endif + } + + void InputDevice::PointerButtonAction(int buttonMask) + { +- int i, n; ++ int i; ++#if XORG < 111 ++ int n; ++#endif + #if XORG >= 110 + ValuatorMask mask; + #endif +@@ -160,13 +169,17 @@ void InputDevice::PointerButtonAction(in + #if XORG < 110 + n = GetPointerEvents(eventq, pointerDev, action, i + 1, + POINTER_RELATIVE, 0, 0, NULL); +-#else ++ enqueueEvents(pointerDev, n); ++#elif XORG < 111 + valuator_mask_set_range(&mask, 0, 0, NULL); + n = GetPointerEvents(eventq, pointerDev, action, i + 1, + POINTER_RELATIVE, &mask); +-#endif + enqueueEvents(pointerDev, n); +- ++#else ++ valuator_mask_set_range(&mask, 0, 0, NULL); ++ QueuePointerEvents(pointerDev, action, i + 1, ++ POINTER_RELATIVE, &mask); ++#endif + } + } + +@@ -175,7 +188,10 @@ void InputDevice::PointerButtonAction(in + + void InputDevice::PointerMove(const rfb::Point &pos) + { +- int n, valuators[2]; ++ int valuators[2]; ++#if XORG < 111 ++ int n; ++#endif + #if XORG >= 110 + ValuatorMask mask; + #endif +@@ -190,12 +206,16 @@ void InputDevice::PointerMove(const rfb: + #if XORG < 110 + n = GetPointerEvents(eventq, pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, 0, + 2, valuators); +-#else ++ enqueueEvents(pointerDev, n); ++#elif XORG < 111 + valuator_mask_set_range(&mask, 0, 2, valuators); + n = GetPointerEvents(eventq, pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, + &mask); +-#endif + enqueueEvents(pointerDev, n); ++#else ++ valuator_mask_set_range(&mask, 0, 2, valuators); ++ QueuePointerEvents(pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, &mask); ++#endif + + cursorPos = pos; + } +@@ -299,14 +319,20 @@ void InputDevice::initInputDevice(void) + static inline void pressKey(DeviceIntPtr dev, int kc, bool down, const char *msg) + { + int action; ++#if XORG < 111 + unsigned int n; ++#endif + + if (msg != NULL) + vlog.debug("%s %d %s", msg, kc, down ? "down" : "up"); + + action = down ? KeyPress : KeyRelease; +- n = GetKeyboardEvents(eventq, dev, action, kc); ++#if XORG < 111 ++ n = GetKeyboardEvents(eventq, dev, action, kc, NULL); + enqueueEvents(dev, n); ++#else ++ QueueKeyboardEvents(dev, action, kc, NULL); ++#endif + } + + #define IS_PRESSED(keyc, keycode) \ +@@ -341,8 +367,11 @@ public: + int state, maxKeysPerMod, keycode; + #if XORG >= 17 + KeyCode *modmap = NULL; +- ++#if XORG >= 111 ++ state = XkbStateFieldFromRec(&dev->master->key->xkbInfo->state); ++#else /* XORG >= 111 */ + state = XkbStateFieldFromRec(&dev->u.master->key->xkbInfo->state); ++#endif /* XORG >= 111 */ + #else + KeyClassPtr keyc = dev->key; + state = keyc->state; +@@ -380,7 +409,11 @@ public: + #if XORG >= 17 + KeyCode *modmap = NULL; + ++#if XORG >= 111 ++ keyc = dev->master->key; ++#else /* XORG >= 111 */ + keyc = dev->u.master->key; ++#endif /* XORG >= 111 */ + state = XkbStateFieldFromRec(&keyc->xkbInfo->state); + #else + keyc = dev->key; +@@ -596,7 +629,11 @@ void InputDevice::keyEvent(rdr::U32 keys + } + + #if XORG >= 17 ++#if XORG >= 111 ++ keyc = keyboardDev->master->key; ++#else /* XORG >= 111 */ + keyc = keyboardDev->u.master->key; ++#endif /* XORG >= 111 */ + + keymap = XkbGetCoreMap(keyboardDev); + if (!keymap) { +@@ -753,7 +790,11 @@ ModeSwitchFound: + XkbApplyMappingChange(keyboardDev, keymap, minKeyCode, + maxKeyCode - minKeyCode + 1, + NULL, serverClient); ++#if XORG >= 111 ++ XkbCopyDeviceKeymap(keyboardDev->master, keyboardDev); ++#else + XkbCopyDeviceKeymap(keyboardDev->u.master, keyboardDev); ++#endif + #endif /* XORG < 17 */ + break; + } +diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h +--- tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h.xorg111 2011-08-09 23:16:36.000000000 +0200 ++++ tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h 2011-11-11 11:55:32.255835319 +0100 +@@ -36,6 +36,8 @@ + #define XORG 19 + #elif XORG_VERSION_CURRENT < ((1 * 10000000) + (10 * 100000) + (99 * 1000)) + #define XORG 110 ++#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (11 * 100000) + (99 * 1000)) ++#define XORG 111 + #else + #error "X.Org newer than 1.10 is not supported" + #endif +diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc +--- tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc.xorg111 2011-08-09 23:16:36.000000000 +0200 ++++ tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc 2011-11-11 11:55:32.256835319 +0100 +@@ -211,7 +211,11 @@ static void vfbFreeFramebufferMemory(vfb + + extern "C" { + ++#if XORG < 111 + void ddxGiveUp() ++#else ++void ddxGiveUp(enum ExitCode error) ++#endif + { + int i; + +@@ -221,9 +225,17 @@ void ddxGiveUp() + } + + void ++#if XORG < 111 + AbortDDX() ++#else ++AbortDDX(enum ExitCode error) ++#endif + { ++#if XORG < 111 + ddxGiveUp(); ++#else ++ ddxGiveUp(error); ++#endif + } + + #ifdef __DARWIN__ +@@ -668,8 +680,13 @@ vfbUninstallColormap(ColormapPtr pmap) + { + if (pmap->mid != pmap->pScreen->defColormap) + { ++#if XORG < 111 + curpmap = (ColormapPtr) LookupIDByType(pmap->pScreen->defColormap, + RT_COLORMAP); ++#else ++ dixLookupResourceByType((pointer *) &curpmap, pmap->pScreen->defColormap, ++ RT_COLORMAP, serverClient, DixUnknownAccess); ++#endif + (*pmap->pScreen->InstallColormap)(curpmap); + } + } diff --git a/abs/extra/tigervnc/xorg112.patch b/abs/extra/tigervnc/xorg112.patch new file mode 100644 index 0000000..51f259e --- /dev/null +++ b/abs/extra/tigervnc/xorg112.patch @@ -0,0 +1,447 @@ +diff -ur tigervnc-1.2.0.orig/unix/xserver/hw/vnc/Makefile.am tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am +--- tigervnc-1.2.0.orig/unix/xserver/hw/vnc/Makefile.am 2011-10-31 09:14:40.000000000 +0100 ++++ tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am 2012-04-15 12:19:00.995517546 +0200 +@@ -63,7 +63,7 @@ + BUILT_SOURCES = $(nodist_Xvnc_SOURCES) + + fb.h: $(top_srcdir)/fb/fb.h +- cat $(top_srcdir)/fb/fb.h | sed -e 's,and,c_and,' -e 's,xor,c_xor,' > $(srcdir)/fb.h ++ cat $(top_srcdir)/fb/fb.h | sed -e 's,and,c_and,g' -e 's,xor,c_xor,g' > $(srcdir)/fb.h + + pixman.h: + for i in ${XSERVERLIBS_CFLAGS}; do \ +@@ -78,4 +78,4 @@ + fi + + fbrop.h: $(top_srcdir)/fb/fbrop.h +- cat $(top_srcdir)/fb/fbrop.h | sed -e 's,and,c_and,' -e 's,xor,c_xor,' > $(srcdir)/fbrop.h ++ cat $(top_srcdir)/fb/fbrop.h | sed -e 's,and,c_and,g' -e 's,xor,c_xor,g' > $(srcdir)/fbrop.h +diff -ur tigervnc-1.2.0.orig/unix/xserver/hw/vnc/vncExtInit.cc tigervnc-1.2.0/unix/xserver/hw/vnc/vncExtInit.cc +--- tigervnc-1.2.0.orig/unix/xserver/hw/vnc/vncExtInit.cc 2011-11-07 13:51:34.000000000 +0100 ++++ tigervnc-1.2.0/unix/xserver/hw/vnc/vncExtInit.cc 2012-04-15 12:18:57.819557251 +0200 +@@ -59,6 +59,7 @@ + #include "XserverDesktop.h" + #include "vncHooks.h" + #include "vncExtInit.h" ++#include "xorg-version.h" + + extern "C" { + +@@ -449,10 +450,16 @@ + ev.window = cur->window; + ev.time = GetTimeInMillis(); + if (cur->client->swapped) { ++#if XORG < 112 + int n; + swaps(&ev.sequenceNumber, n); + swapl(&ev.window, n); + swapl(&ev.time, n); ++#else ++ swaps(&ev.sequenceNumber); ++ swapl(&ev.window); ++ swapl(&ev.time); ++#endif + } + WriteToClient(cur->client, sizeof(xVncExtClientCutTextNotifyEvent), + (char *)&ev); +@@ -495,9 +502,14 @@ + ev.sequenceNumber = cur->client->sequence; + ev.window = cur->window; + if (cur->client->swapped) { ++#if XORG < 112 + int n; + swaps(&ev.sequenceNumber, n); + swapl(&ev.window, n); ++#else ++ swaps(&ev.sequenceNumber); ++ swapl(&ev.window); ++#endif + } + WriteToClient(cur->client, sizeof(xVncExtQueryConnectNotifyEvent), + (char *)&ev); +@@ -538,10 +550,16 @@ + ev.window = cur->window; + ev.selection = selection; + if (cur->client->swapped) { ++#if XORG < 112 + int n; + swaps(&ev.sequenceNumber, n); + swapl(&ev.window, n); + swapl(&ev.selection, n); ++#else ++ swaps(&ev.sequenceNumber); ++ swapl(&ev.window); ++ swapl(&ev.selection); ++#endif + } + WriteToClient(cur->client, sizeof(xVncExtSelectionChangeNotifyEvent), + (char *)&ev); +@@ -562,7 +580,6 @@ + param.buf[stuff->paramLen] = 0; + + xVncExtSetParamReply rep; +- int n; + rep.type = X_Reply; + rep.length = 0; + rep.success = 0; +@@ -603,8 +620,14 @@ + + deny: + if (client->swapped) { ++#if XORG < 112 ++ int n; + swaps(&rep.sequenceNumber, n); + swapl(&rep.length, n); ++#else ++ swaps(&rep.sequenceNumber); ++ swapl(&rep.length); ++#endif + } + WriteToClient(client, sizeof(xVncExtSetParamReply), (char *)&rep); + return (client->noClientException); +@@ -612,9 +635,13 @@ + + static int SProcVncExtSetParam(ClientPtr client) + { +- register char n; + REQUEST(xVncExtSetParamReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_AT_LEAST_SIZE(xVncExtSetParamReq); + return ProcVncExtSetParam(client); + } +@@ -628,7 +655,6 @@ + param.buf[stuff->paramLen] = 0; + + xVncExtGetParamReply rep; +- int n; + rep.type = X_Reply; + rep.sequenceNumber = client->sequence; + rep.success = 0; +@@ -646,9 +672,16 @@ + rep.length = (len + 3) >> 2; + rep.valueLen = len; + if (client->swapped) { ++#if XORG < 112 ++ int n; + swaps(&rep.sequenceNumber, n); + swapl(&rep.length, n); + swaps(&rep.valueLen, n); ++#else ++ swaps(&rep.sequenceNumber); ++ swapl(&rep.length); ++ swaps(&rep.valueLen); ++#endif + } + WriteToClient(client, sizeof(xVncExtGetParamReply), (char *)&rep); + if (value) +@@ -659,9 +692,13 @@ + + static int SProcVncExtGetParam(ClientPtr client) + { +- register char n; + REQUEST(xVncExtGetParamReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_AT_LEAST_SIZE(xVncExtGetParamReq); + return ProcVncExtGetParam(client); + } +@@ -675,7 +712,6 @@ + param.buf[stuff->paramLen] = 0; + + xVncExtGetParamDescReply rep; +- int n; + rep.type = X_Reply; + rep.sequenceNumber = client->sequence; + rep.success = 0; +@@ -690,9 +726,16 @@ + rep.length = (len + 3) >> 2; + rep.descLen = len; + if (client->swapped) { ++#if XORG < 112 ++ int n; + swaps(&rep.sequenceNumber, n); + swapl(&rep.length, n); + swaps(&rep.descLen, n); ++#else ++ swaps(&rep.sequenceNumber); ++ swapl(&rep.length); ++ swaps(&rep.descLen); ++#endif + } + WriteToClient(client, sizeof(xVncExtGetParamDescReply), (char *)&rep); + if (desc) +@@ -702,9 +745,13 @@ + + static int SProcVncExtGetParamDesc(ClientPtr client) + { +- register char n; + REQUEST(xVncExtGetParamDescReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_AT_LEAST_SIZE(xVncExtGetParamDescReq); + return ProcVncExtGetParamDesc(client); + } +@@ -715,7 +762,6 @@ + REQUEST_SIZE_MATCH(xVncExtListParamsReq); + + xVncExtListParamsReply rep; +- int n; + rep.type = X_Reply; + rep.sequenceNumber = client->sequence; + +@@ -731,9 +777,16 @@ + rep.length = (len + 3) >> 2; + rep.nParams = nParams; + if (client->swapped) { ++#if XORG < 112 ++ int n; + swaps(&rep.sequenceNumber, n); + swapl(&rep.length, n); + swaps(&rep.nParams, n); ++#else ++ swaps(&rep.sequenceNumber); ++ swapl(&rep.length); ++ swaps(&rep.nParams); ++#endif + } + WriteToClient(client, sizeof(xVncExtListParamsReply), (char *)&rep); + rdr::U8* data = new rdr::U8[len]; +@@ -753,9 +806,13 @@ + + static int SProcVncExtListParams(ClientPtr client) + { +- register char n; + REQUEST(xVncExtListParamsReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_SIZE_MATCH(xVncExtListParamsReq); + return ProcVncExtListParams(client); + } +@@ -778,11 +835,19 @@ + + static int SProcVncExtSetServerCutText(ClientPtr client) + { +- register char n; + REQUEST(xVncExtSetServerCutTextReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_AT_LEAST_SIZE(xVncExtSetServerCutTextReq); ++#if XORG < 112 + swapl(&stuff->textLen, n); ++#else ++ swapl(&stuff->textLen); ++#endif + return ProcVncExtSetServerCutText(client); + } + +@@ -792,15 +857,21 @@ + REQUEST_SIZE_MATCH(xVncExtGetClientCutTextReq); + + xVncExtGetClientCutTextReply rep; +- int n; + rep.type = X_Reply; + rep.length = (clientCutTextLen + 3) >> 2; + rep.sequenceNumber = client->sequence; + rep.textLen = clientCutTextLen; + if (client->swapped) { ++#if XORG < 112 ++ int n; + swaps(&rep.sequenceNumber, n); + swapl(&rep.length, n); + swapl(&rep.textLen, n); ++#else ++ swaps(&rep.sequenceNumber); ++ swapl(&rep.length); ++ swapl(&rep.textLen); ++#endif + } + WriteToClient(client, sizeof(xVncExtGetClientCutTextReply), (char *)&rep); + if (clientCutText) +@@ -810,9 +881,13 @@ + + static int SProcVncExtGetClientCutText(ClientPtr client) + { +- register char n; + REQUEST(xVncExtGetClientCutTextReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_SIZE_MATCH(xVncExtGetClientCutTextReq); + return ProcVncExtGetClientCutText(client); + } +@@ -842,12 +917,21 @@ + + static int SProcVncExtSelectInput(ClientPtr client) + { +- register char n; + REQUEST(xVncExtSelectInputReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_SIZE_MATCH(xVncExtSelectInputReq); ++#if XORG < 112 + swapl(&stuff->window, n); + swapl(&stuff->mask, n); ++#else ++ swapl(&stuff->window); ++ swapl(&stuff->mask); ++#endif + return ProcVncExtSelectInput(client); + } + +@@ -893,9 +977,14 @@ + rep.length = 0; + rep.sequenceNumber = client->sequence; + if (client->swapped) { ++#if XORG < 112 + int n; + swaps(&rep.sequenceNumber, n); + swapl(&rep.length, n); ++#else ++ swaps(&rep.sequenceNumber); ++ swapl(&rep.length); ++#endif + } + WriteToClient(client, sizeof(xVncExtConnectReply), (char *)&rep); + return (client->noClientException); +@@ -903,9 +992,13 @@ + + static int SProcVncExtConnect(ClientPtr client) + { +- register char n; + REQUEST(xVncExtConnectReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_AT_LEAST_SIZE(xVncExtConnectReq); + return ProcVncExtConnect(client); + } +@@ -925,7 +1018,6 @@ + qcTimeout = 0; + + xVncExtGetQueryConnectReply rep; +- int n; + rep.type = X_Reply; + rep.sequenceNumber = client->sequence; + rep.timeout = qcTimeout; +@@ -934,11 +1026,20 @@ + rep.opaqueId = (CARD32)(long)queryConnectId; + rep.length = (rep.userLen + rep.addrLen + 3) >> 2; + if (client->swapped) { ++#if XORG < 112 ++ int n; + swaps(&rep.sequenceNumber, n); + swapl(&rep.userLen, n); + swapl(&rep.addrLen, n); + swapl(&rep.timeout, n); + swapl(&rep.opaqueId, n); ++#else ++ swaps(&rep.sequenceNumber); ++ swapl(&rep.userLen); ++ swapl(&rep.addrLen); ++ swapl(&rep.timeout); ++ swapl(&rep.opaqueId); ++#endif + } + WriteToClient(client, sizeof(xVncExtGetQueryConnectReply), (char *)&rep); + if (qcTimeout) +@@ -950,9 +1051,13 @@ + + static int SProcVncExtGetQueryConnect(ClientPtr client) + { +- register char n; + REQUEST(xVncExtGetQueryConnectReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); ++#else ++ swaps(&stuff->length); ++#endif + REQUEST_SIZE_MATCH(xVncExtGetQueryConnectReq); + return ProcVncExtGetQueryConnect(client); + } +@@ -977,10 +1082,15 @@ + + static int SProcVncExtApproveConnect(ClientPtr client) + { +- register char n; + REQUEST(xVncExtApproveConnectReq); ++#if XORG < 112 ++ register char n; + swaps(&stuff->length, n); + swapl(&stuff->opaqueId, n); ++#else ++ swaps(&stuff->length); ++ swapl(&stuff->opaqueId); ++#endif + REQUEST_SIZE_MATCH(xVncExtApproveConnectReq); + return ProcVncExtApproveConnect(client); + } +diff -ur tigervnc-1.2.0.orig/unix/xserver/hw/vnc/xf86vncModule.cc tigervnc-1.2.0/unix/xserver/hw/vnc/xf86vncModule.cc +--- tigervnc-1.2.0.orig/unix/xserver/hw/vnc/xf86vncModule.cc 2010-04-23 15:55:10.000000000 +0200 ++++ tigervnc-1.2.0/unix/xserver/hw/vnc/xf86vncModule.cc 2012-04-15 12:18:57.820557239 +0200 +@@ -26,6 +26,8 @@ + #include <rfb/Logger_stdio.h> + #include <rfb/LogWriter.h> + ++#include "xorg-version.h" ++ + extern "C" { + #define class c_class + #define private c_private +@@ -89,7 +91,12 @@ + ScrnInfoPtr pScrn = xf86Screens[scr]; + + for (ParameterIterator i(Configuration::global()); i.param; i.next()) { +- char* val = xf86FindOptionValue(pScrn->options, i.param->getName()); ++ const char *val; ++#if XORG < 112 ++ val = xf86FindOptionValue(pScrn->options, i.param->getName()); ++#else ++ val = xf86FindOptionValue((XF86OptionPtr)pScrn->options, i.param->getName()); ++#endif + if (val) + i.param->setParam(val); + } +diff -ur tigervnc-1.2.0.orig/unix/xserver/hw/vnc/xorg-version.h tigervnc-1.2.0/unix/xserver/hw/vnc/xorg-version.h +--- tigervnc-1.2.0.orig/unix/xserver/hw/vnc/xorg-version.h 2012-04-15 12:18:21.272014160 +0200 ++++ tigervnc-1.2.0/unix/xserver/hw/vnc/xorg-version.h 2012-04-15 12:18:57.821557227 +0200 +@@ -38,6 +38,8 @@ + #define XORG 110 + #elif XORG_VERSION_CURRENT < ((1 * 10000000) + (11 * 100000) + (99 * 1000)) + #define XORG 111 ++#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (12 * 100000) + (99 * 1000)) ++#define XORG 112 + #else + #error "X.Org newer than 1.10 is not supported" + #endif diff --git a/abs/extra/tightvnc/PKGBUILD b/abs/extra/tightvnc/PKGBUILD deleted file mode 100644 index 29d451b..0000000 --- a/abs/extra/tightvnc/PKGBUILD +++ /dev/null @@ -1,40 +0,0 @@ - -pkgname=tightvnc -pkgver=1.3.10 -pkgrel=2 -pkgdesc="VNC Unix server && viewer" -arch=('i686' 'x86_64') -license=('GPL') -url="http://www.tightvnc.com" -depends=('libjpeg' 'zlib' 'libxaw' 'libxp') -makedepends=('imake') -conflicts=('vnc') -source=(http://easynews.dl.sf.net/sourceforge/vnc-tight/${pkgname}-${pkgver}_unixsrc.tar.bz2 tightvnc-fontpath-xcolors.patch) - - -build() { - export MAKEFLAGS="-j1" - cd ${srcdir}/vnc_unixsrc || return 1 - patch -Np1 -i ../tightvnc-fontpath-xcolors.patch || return 1 - - xmkmf || return 1 - make World || return 1 - cd Xvnc || return 1 - ./configure || return 1 - sed 's|PROTO_DEFINES =|PROTO_DEFINES = -D_XOPEN_SOURCE=500L|' \ - -i programs/Xserver/os/Makefile lib/font/fc/Makefile || return 1 - make || return 1 -} - -package() { - cd ${srcdir}/vnc_unixsrc || return 1 - mkdir -p ${pkgdir}/usr/bin ${pkgdir}/usr/man/man1 || return 1 - ./vncinstall ${pkgdir}/usr/bin ${pkgdir}/usr/man || return 1 - - # install java classes - mkdir -p ${pkgdir}/usr/share/vnc/classes || return 1 - install -D -m644 ${srcdir}/vnc_unixsrc/classes/* \ - ${pkgdir}/usr/share/vnc/classes || return 1 -} -md5sums=('397b35faad32d5246b6d44b142f8304f' - '0bf967f2cdb94b432f9c7e1c121f7fbd') diff --git a/abs/extra/tightvnc/tightvnc-fontpath-xcolors.patch b/abs/extra/tightvnc/tightvnc-fontpath-xcolors.patch deleted file mode 100644 index 76c52a0..0000000 --- a/abs/extra/tightvnc/tightvnc-fontpath-xcolors.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- vnc_unixsrc/vncserver.orig 2010-03-26 22:11:23.000000000 +0000 -+++ vnc_unixsrc/vncserver 2010-03-26 22:14:58.000000000 +0000 -@@ -34,9 +34,9 @@ - $desktopName = "X"; - $vncClasses = "/usr/local/vnc/classes"; - $vncUserDir = "$ENV{HOME}/.vnc"; --$fontPath = "unix/:7100"; -+$fontPath = "/usr/share/fonts/misc/,/usr/share/fonts/75dpi/,/usr/share/fonts/100dpi/,/usr/share/fonts/Type1/"; -+$colorPath = "/usr/share/X11/rgb"; - $authType = "-rfbauth $vncUserDir/passwd"; -- - # Read configuration from the system-wide and user files if present. - - $configFile = "/etc/tightvncserver.conf"; diff --git a/abs/extra/transmission/PKGBUILD b/abs/extra/transmission/PKGBUILD new file mode 100644 index 0000000..77d3403 --- /dev/null +++ b/abs/extra/transmission/PKGBUILD @@ -0,0 +1,78 @@ +# $Id: PKGBUILD 170069 2012-10-31 13:47:37Z ibiru $ +# Maintainer : Ionut Biru <ibiru@archlinux.org> + +pkgbase=transmission +pkgname=('transmission-cli' 'transmission-gtk' 'transmission-qt') +pkgver=2.73 +pkgrel=2 +arch=('i686' 'x86_64') +url="http://www.transmissionbt.com/" +license=('MIT') +makedepends=('gtk3' 'intltool' 'curl' 'qt' 'libevent') +source=(http://mirrors.m0k.org/transmission/files/$pkgbase-$pkgver.tar.xz + transmissiond transmissiond.conf transmission.systemd + transmission.tmpfiles) + +build() { + cd $pkgbase-$pkgver + + ./configure --prefix=/usr + make + pushd qt + qmake qtr.pro + make +} +package_transmission-cli() { + pkgdesc="Fast, easy, and free BitTorrent client (CLI tools, daemon and web client)" + depends=('curl' 'libevent') + backup=('etc/conf.d/transmissiond') + install=transmission-cli.install + + cd $pkgbase-$pkgver + + for dir in daemon cli web utils + do + make -C "$dir" DESTDIR="$pkgdir" install + done + + install -D -m755 "$srcdir/transmissiond" "$pkgdir/etc/rc.d/transmissiond" + install -D -m644 "$srcdir/transmissiond.conf" "$pkgdir/etc/conf.d/transmissiond" + install -D -m644 "$srcdir/transmission.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/transmission.conf" + install -D -m644 "$srcdir/transmission.systemd" "$pkgdir/usr/lib/systemd/system/transmission.service" + ln -s transmission.service "$pkgdir/usr/lib/systemd/system/transmissiond.service" + install -D -m644 COPYING "$pkgdir/usr/share/licenses/transmission-cli/COPYING" +} + +package_transmission-gtk() { + pkgdesc="Fast, easy, and free BitTorrent client (GTK+ GUI)" + depends=('curl' 'libevent' 'gtk3' 'desktop-file-utils' 'hicolor-icon-theme') + optdepends=('notification-daemon: Desktop notification support' + 'transmission-cli: daemon and web support') + install=transmission-gtk.install + + cd $pkgbase-$pkgver + + make -C gtk DESTDIR="$pkgdir" install + make -C po DESTDIR="$pkgdir" install + install -D -m644 COPYING "$pkgdir/usr/share/licenses/transmission-gtk/COPYING" +} + +package_transmission-qt() { + pkgdesc="Fast, easy, and free BitTorrent client (Qt GUI)" + depends=('curl' 'qt' 'libevent') + optdepends=('transmission-cli: daemon and web support') + install=transmission-qt.install + + cd $pkgbase-$pkgver + + make -C qt INSTALL_ROOT="$pkgdir"/usr install + + install -D -m644 COPYING "$pkgdir/usr/share/licenses/transmission-qt/COPYING" + install -D -m644 qt/icons/transmission.png "$pkgdir/usr/share/pixmaps/transmission-qt.png" + install -D -m644 qt/transmission-qt.desktop "$pkgdir/usr/share/applications/transmission-qt.desktop" +} +md5sums=('fae00b13a7b18f9dc16edef020edea85' + '7d6186ee2a852ae3d44980f05063e194' + 'db72b02fee139e8ab416324e6c044d76' + '5c289c8901221a94be74665368ab5c2c' + '23f2320361ad54373c3a4551ef634fe8') diff --git a/abs/extra/transmission/transmission-cli.install b/abs/extra/transmission/transmission-cli.install new file mode 100644 index 0000000..94a829f --- /dev/null +++ b/abs/extra/transmission/transmission-cli.install @@ -0,0 +1,17 @@ +post_install() { + cat << _EOF + + If you want to run the Transmission daemon at boot do: + systemctl enable transmissiond +_EOF + +post_upgrade +passwd -l transmission &>/dev/null +} + +post_upgrade() { + # create user/group that the daemon will run as by default, do not delete this on uninstall, as it will own files + getent group transmission >/dev/null || groupadd -g 169 transmission + getent passwd transmission >/dev/null || useradd -c 'Transmission BitTorrent Client' -u 169 -g transmission -b '/var/lib' -m -s /bin/false transmission + systemd-tmpfiles --create transmission.conf +} diff --git a/abs/extra/transmission/transmission-gtk.install b/abs/extra/transmission/transmission-gtk.install new file mode 100644 index 0000000..c317fba --- /dev/null +++ b/abs/extra/transmission/transmission-gtk.install @@ -0,0 +1,12 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/abs/extra/transmission/transmission-qt.install b/abs/extra/transmission/transmission-qt.install new file mode 100644 index 0000000..e111ef9 --- /dev/null +++ b/abs/extra/transmission/transmission-qt.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/abs/extra/transmission/transmission.systemd b/abs/extra/transmission/transmission.systemd new file mode 100644 index 0000000..56ab8f7 --- /dev/null +++ b/abs/extra/transmission/transmission.systemd @@ -0,0 +1,14 @@ +[Unit] +Description=Transmission Bit Torrent Daemon + +# This assumes that a user 'transmission' exists, with a writeable homedirectory, +# and that /run/transmission exists and is writeable by the transmission user. + +[Service] +User=transmission +Type=forking +PIDFile=/run/transmission/transmission.pid +ExecStart=/usr/bin/transmission-daemon --pid-file /run/transmission/transmission.pid + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/transmission/transmission.tmpfiles b/abs/extra/transmission/transmission.tmpfiles new file mode 100644 index 0000000..b603066 --- /dev/null +++ b/abs/extra/transmission/transmission.tmpfiles @@ -0,0 +1 @@ +d /run/transmission - transmission transmission - diff --git a/abs/extra/transmission/transmissiond b/abs/extra/transmission/transmissiond new file mode 100644 index 0000000..ea3d770 --- /dev/null +++ b/abs/extra/transmission/transmissiond @@ -0,0 +1,46 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/transmissiond + +PID=`pidof -o %PPID /usr/bin/transmission-daemon` +case "$1" in + start) + stat_busy "Starting Transmission Daemon" + [ -z "$PID" ] && su -l -s /bin/sh -c "/usr/bin/transmission-daemon $TRANS_ARGS" "${TRANS_USER:-transmission}" + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon transmissiond + stat_done + fi + ;; + stop) + stat_busy "Stopping Transmission Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon transmissiond + stat_done + fi + ;; + restart) + $0 stop + while [ ! -z "$PID" -a -d "/proc/$PID" ]; do sleep 1; done + $0 start + ;; + reload) + stat_busy "Reloading config" + [ ! -z "$PID" ] && kill -HUP $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + ;; + *) + echo "usage: $0 {start|stop|restart|reload}" +esac +exit 0 diff --git a/abs/extra/transmission/transmissiond.conf b/abs/extra/transmission/transmissiond.conf new file mode 100644 index 0000000..45a9fd5 --- /dev/null +++ b/abs/extra/transmission/transmissiond.conf @@ -0,0 +1,4 @@ +# example configuration file + +# TRANS_USER="transmission" +# TRANS_ARGS="" diff --git a/abs/extra/tree/PKGBUILD b/abs/extra/tree/PKGBUILD index 957d4bf..b718ec3 100644 --- a/abs/extra/tree/PKGBUILD +++ b/abs/extra/tree/PKGBUILD @@ -1,21 +1,26 @@ -# $Id: PKGBUILD 64858 2010-01-22 13:47:03Z giovanni $ +# $Id: PKGBUILD 143988 2011-12-01 15:23:36Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=tree -pkgver=1.5.3 -pkgrel=1 +pkgver=1.6.0 +pkgrel=2 pkgdesc="A directory listing program displaying a depth indented list of files" arch=('i686' 'x86_64') url="http://mama.indstate.edu/users/ice/tree/" license=('GPL') depends=('glibc') -source=(ftp://mama.indstate.edu/linux/tree/${pkgname}-${pkgver}.tgz) -md5sums=('c07ce9065667a23f27aca4de8ecccb10') +source=("http://mama.indstate.edu/users/ice/${pkgname}/src/${pkgname}-${pkgver}.tgz") +md5sums=('04e967a3f4108d50cde3b4b0e89e970a') build() { cd "${srcdir}/${pkgname}-${pkgver}" - make || return 1 - make prefix="${pkgdir}/usr" MANDIR="${pkgdir}/usr/share/man/man1" install || return 1 + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make prefix="${pkgdir}/usr" MANDIR="${pkgdir}/usr/share/man/man1" install } diff --git a/abs/extra/ttf-droid/PKGBUILD b/abs/extra/ttf-droid/PKGBUILD index 2df7e2b..3baa9d6 100644 --- a/abs/extra/ttf-droid/PKGBUILD +++ b/abs/extra/ttf-droid/PKGBUILD @@ -2,21 +2,35 @@ # Contributor: Urs Wolfer <uwolfer @ fwo.ch> pkgname=ttf-droid -pkgver=20110417 -pkgrel=2 -pkgdesc="A font created by Ascender Corporation for use by the Open Handset Alliance platform, Android." +pkgver=20121017 +pkgrel=1 +pkgdesc="General-purpose fonts released by Google as part of Android" arch=('any') license=('apache') url="http://code.google.com/android/" depends=('fontconfig' 'xorg-fonts-encodings' 'xorg-font-utils') install=$pkgname.install -source=('ftp://ftp.archlinux.org/other/community/ttf-droid/ttf-droid.tar.xz') -md5sums=('f0dffb54269504a0fdb2c4fe394322ee') +source=('ftp://ftp.archlinux.org/other/community/ttf-droid/ttf-droid-20121017.tar.xz' 'serif-fontconfig.conf' 'sans-fontconfig.conf' 'sans-mono-fontconfig.conf' 'kufi-fontconfig.conf' ) +md5sums=('0fa20eb63d7d05b23be955777bb52a5d') package() { - cd $srcdir/ttf-droid + # Install fonts + cd $srcdir/google-droid-fonts-$pkgver install -d $pkgdir/usr/share/fonts/TTF/ install -m644 *.ttf $pkgdir/usr/share/fonts/TTF/ + + # Install fontconfig + cd $srcdir + install -d $pkgdir/etc/fonts/conf.avail/ + install -m644 sans-fontconfig.conf $pkgdir/etc/fonts/conf.avail/65-$pkgname-sans-fontconfig.conf + install -m644 sans-mono-fontconfig.conf $pkgdir/etc/fonts/conf.avail/60-$pkgname-sans-mono-fontconfig.conf + install -m644 serif-fontconfig.conf $pkgdir/etc/fonts/conf.avail/65-$pkgname-serif-fontconfig.conf + install -m644 kufi-fontconfig.conf $pkgdir/etc/fonts/conf.avail/65-$pkgname-kufi-fontconfig.conf } +md5sums=('0fa20eb63d7d05b23be955777bb52a5d' + '7db18cf9df70ee41fbab444c80117ec6' + '61f59063f84bd1331a91e21ebf86d43d' + '7d7787d92e7b5089558a6d68c99813e3' + '954a340fc7cb2846826a97d2b752501d') diff --git a/abs/extra/ttf-droid/kufi-fontconfig.conf b/abs/extra/ttf-droid/kufi-fontconfig.conf new file mode 100644 index 0000000..4d368eb --- /dev/null +++ b/abs/extra/ttf-droid/kufi-fontconfig.conf @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> +<fontconfig> + <alias> + <family>fantasy</family> + <prefer> + <family>Droid Arabic Kufi</family> + </prefer> + </alias> + <alias> + <family>Droid Arabic Kufi</family> + <default> + <family>Droid Sans</family> + </default> + </alias> +</fontconfig> diff --git a/abs/extra/ttf-droid/sans-fontconfig.conf b/abs/extra/ttf-droid/sans-fontconfig.conf new file mode 100644 index 0000000..dc9845c --- /dev/null +++ b/abs/extra/ttf-droid/sans-fontconfig.conf @@ -0,0 +1,310 @@ +<?xml version="1.0"?> +<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> +<fontconfig> + <match target="scan"> + <test name="family"> + <string>Droid Sans</string> + </test> + <edit name="fontversion"> + <int>12</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Hebrew</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>11</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Hebrew Bold</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans Bold</string> + </edit> + <edit name="fontversion"> + <int>11</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Armenian</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>10</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Georgian</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>9</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Ethiopic</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>8</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Ethiopic Bold</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans Bold</string> + </edit> + <edit name="fontversion"> + <int>8</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Arabic</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>7</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Devanagari</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>6</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Tamil</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>5</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Tamil Bold</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans Bold</string> + </edit> + <edit name="fontversion"> + <int>5</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Thai</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>4</int> + </edit> + </match> + <match target="scan"> + <test name="lang" compare="not_eq"> + <string>zh-cn</string> + </test> + <test name="lang" compare="not_eq"> + <string>zh-sg</string> + </test> + <test name="lang" compare="not_eq"> + <string>zh-hk</string> + </test> + <test name="lang" compare="not_eq"> + <string>zh-tw</string> + </test> + <test name="lang" compare="not_eq"> + <string>zh</string> + </test> + <test name="fullname"> + <string>Droid Sans Japanese</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>3</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Sans Fallback</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>2</int> + </edit> + </match> + <match target="scan"> + <test name="lang" compare="eq"> + <string>zh-cn</string> + </test> + <test name="lang" compare="eq"> + <string>zh-sg</string> + </test> + <test name="lang" compare="eq"> + <string>zh-hk</string> + </test> + <test name="lang" compare="eq"> + <string>zh-tw</string> + </test> + <test name="lang" compare="eq"> + <string>zh</string> + </test> + <test name="fullname"> + <string>Droid Sans Japanese</string> + </test> + <edit name="family"> + <string>Droid Sans</string> + </edit> + <edit name="fullname"> + <string>Droid Sans</string> + </edit> + <edit name="fontversion"> + <int>1</int> + </edit> + </match> + <alias binding="same"> + <family>Droid Sans Arabic</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Armenian</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Devanagari</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Ethiopic</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Fallback</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Georgian</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Hebrew</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Japanese</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Tamil</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Sans Thai</family> + <accept> + <family>Droid Sans</family> + </accept> + </alias> + <alias> + <family>sans-serif</family> + <prefer> + <family>Droid Sans</family> + </prefer> + </alias> + <alias> + <family>Droid Sans</family> + <default> + <family>sans-serif</family> + </default> + </alias> +</fontconfig> diff --git a/abs/extra/ttf-droid/sans-mono-fontconfig.conf b/abs/extra/ttf-droid/sans-mono-fontconfig.conf new file mode 100644 index 0000000..1cf8bbc --- /dev/null +++ b/abs/extra/ttf-droid/sans-mono-fontconfig.conf @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> +<fontconfig> + <alias> + <family>monospace</family> + <prefer> + <family>Droid Sans Mono</family> + </prefer> + </alias> + <alias> + <family>Droid Sans Mono</family> + <default> + <family>monospace</family> + </default> + </alias> +</fontconfig> diff --git a/abs/extra/ttf-droid/serif-fontconfig.conf b/abs/extra/ttf-droid/serif-fontconfig.conf new file mode 100644 index 0000000..368f361 --- /dev/null +++ b/abs/extra/ttf-droid/serif-fontconfig.conf @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> +<fontconfig> + <match target="scan"> + <test name="family"> + <string>Droid Serif</string> + </test> + <edit name="fontversion"> + <int>2</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Arabic Naskh</string> + </test> + <edit name="family"> + <string>Droid Serif</string> + </edit> + <edit name="fullname"> + <string>Droid Serif</string> + </edit> + <edit name="fontversion"> + <int>1</int> + </edit> + </match> + <match target="scan"> + <test name="fullname"> + <string>Droid Arabic Naskh Bold</string> + </test> + <edit name="family"> + <string>Droid Serif</string> + </edit> + <edit name="fullname"> + <string>Droid Serif Bold</string> + </edit> + <edit name="fontversion"> + <int>1</int> + </edit> + </match> + <alias binding="same"> + <family>Droid Arabic Naskh</family> + <accept> + <family>Droid Serif</family> + </accept> + </alias> + <alias binding="same"> + <family>Droid Naskh Shift Alt</family> + <accept> + <family>Droid Serif</family> + </accept> + </alias> + <alias> + <family>serif</family> + <prefer> + <family>Droid Serif</family> + </prefer> + </alias> + <alias> + <family>Droid Serif</family> + <default> + <family>serif</family> + </default> + </alias> +</fontconfig> diff --git a/abs/extra/ttf-freefont/PKGBUILD b/abs/extra/ttf-freefont/PKGBUILD index cc4a110..1aa4127 100644 --- a/abs/extra/ttf-freefont/PKGBUILD +++ b/abs/extra/ttf-freefont/PKGBUILD @@ -1,22 +1,23 @@ -# $Id$ -# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# $Id: PKGBUILD 158526 2012-05-03 23:42:05Z bisson $ # Contributor: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Giovanni Scafora <giovanni@archlinux.org> +# Maintainer: Gaetan Bisson <bisson@archlinux.org> pkgname=ttf-freefont -pkgver=20100919 +pkgver=20120503 pkgrel=1 -pkgdesc="A set of free high-quality TrueType fonts covering the UCS character set" -arch=('any') -url="http://www.nongnu.org/freefont/" +pkgdesc='Set of free outline fonts covering the Unicode character set' +url='http://www.nongnu.org/freefont/' license=('GPL') +arch=('any') depends=('fontconfig' 'xorg-font-utils') -install=ttf-freefont.install -source=("http://ftp.gnu.org/gnu/freefont/freefont-ttf-$pkgver.tar.gz") -sha1sums=('feb1c3349529bbb769cfe55bc901baa917507407') +source=("http://ftp.gnu.org/gnu/freefont/freefont-ttf-${pkgver}.zip") +sha1sums=('46179a6f3469b386f6569fc61913314ba79aadac') + +install=install build() { - cd "${srcdir}/freefont-${pkgver}" - install -d "$pkgdir/usr/share/fonts/TTF" - install -m644 *.ttf "$pkgdir/usr/share/fonts/TTF/" + cd "${srcdir}/freefont-${pkgver}" + install -d "${pkgdir}"/usr/share/fonts/TTF + install -m644 *.ttf "${pkgdir}"/usr/share/fonts/TTF } - diff --git a/abs/extra/ttf-freefont/install b/abs/extra/ttf-freefont/install new file mode 100644 index 0000000..d512d69 --- /dev/null +++ b/abs/extra/ttf-freefont/install @@ -0,0 +1,14 @@ +post_install() { + fc-cache -f > /dev/null + mkfontscale /usr/share/fonts/TTF + mkfontdir /usr/share/fonts/TTF +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} + diff --git a/abs/extra/ttf-freefont/ttf-freefont.install b/abs/extra/ttf-freefont/ttf-freefont.install deleted file mode 100644 index 0705eb5..0000000 --- a/abs/extra/ttf-freefont/ttf-freefont.install +++ /dev/null @@ -1,17 +0,0 @@ -post_install() { - echo -n "Updating font cache... " - fc-cache -f > /dev/null - mkfontscale /usr/share/fonts/TTF - mkfontdir /usr/share/fonts/TTF - echo "done." -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} - - diff --git a/abs/extra/ttf-liberation/30-0-liberation-mono.conf b/abs/extra/ttf-liberation/30-0-liberation-mono.conf new file mode 100644 index 0000000..91b2f57 --- /dev/null +++ b/abs/extra/ttf-liberation/30-0-liberation-mono.conf @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE fontconfig SYSTEM "../fonts.dtd"> +<fontconfig> + <!-- Microsoft --> + <alias binding="same"> + <family>Courier New</family> + <accept> + <family>Liberation Mono</family> + </accept> + </alias> + <alias binding="same"> + <family>Liberation Mono</family> + <default> + <family>Courier New</family> + </default> + </alias> +</fontconfig> + diff --git a/abs/extra/ttf-liberation/30-0-liberation-sans.conf b/abs/extra/ttf-liberation/30-0-liberation-sans.conf new file mode 100644 index 0000000..ab592b7 --- /dev/null +++ b/abs/extra/ttf-liberation/30-0-liberation-sans.conf @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE fontconfig SYSTEM "../fonts.dtd"> +<fontconfig> + <!-- Microsoft --> + <alias binding="same"> + <family>Arial</family> + <accept> + <family>Liberation Sans</family> + </accept> + </alias> + <alias binding="same"> + <family>Liberation Sans</family> + <default> + <family>Arial</family> + </default> + </alias> +</fontconfig> + diff --git a/abs/extra/ttf-liberation/30-0-liberation-serif.conf b/abs/extra/ttf-liberation/30-0-liberation-serif.conf new file mode 100644 index 0000000..4aafd48 --- /dev/null +++ b/abs/extra/ttf-liberation/30-0-liberation-serif.conf @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE fontconfig SYSTEM "../fonts.dtd"> +<fontconfig> + <!-- Microsoft --> + <alias binding="same"> + <family>Times New Roman</family> + <accept> + <family>Liberation Serif</family> + </accept> + </alias> + <alias binding="same"> + <family>Liberation Serif</family> + <default> + <family>Times New Roman</family> + </default> + </alias> +</fontconfig> + diff --git a/abs/extra/ttf-liberation/PKGBUILD b/abs/extra/ttf-liberation/PKGBUILD index 572ae06..a91379c 100644 --- a/abs/extra/ttf-liberation/PKGBUILD +++ b/abs/extra/ttf-liberation/PKGBUILD @@ -1,4 +1,4 @@ -# $Id$ +# $Id: PKGBUILD 80169 2012-11-17 12:41:05Z lfleischer $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Ronald van Haren <ronald.archlinux.org> # Contributor: Roman Kyrylych <Roman.Kyrylych@gmail.com> @@ -7,17 +7,23 @@ # Contributor: Stefan Husmann < stefan-husmann@t-online.de> pkgname=ttf-liberation -pkgver=1.07.1 +pkgver=2.00.1 pkgrel=2 pkgdesc='Red Hats Liberation fonts.' arch=('any') -license=('custom' 'GPL2') +license=('custom:OFL') url='https://www.redhat.com/promo/fonts/' depends=('fontconfig' 'xorg-fonts-encodings' 'xorg-font-utils') makedepends=('fontforge') install=ttf.install -source=("https://fedorahosted.org/releases/l/i/liberation-fonts/liberation-fonts-ttf-$pkgver.tar.gz") -md5sums=('0be45d54cc5e1c2e3102e32b8c190346') +source=("https://fedorahosted.org/releases/l/i/liberation-fonts/liberation-fonts-ttf-$pkgver.tar.gz" + 30-0-liberation-mono.conf + 30-0-liberation-sans.conf + 30-0-liberation-serif.conf) +md5sums=('5c781723a0d9ed6188960defba8e91cf' + '23ce227d5d72c6df2c69caf367d96341' + '88e91e718053d46cb1215067ffb0024a' + '5bc229f0f7ad387f1ba311148fcbff00') package() { cd "$srcdir/liberation-fonts-ttf-$pkgver" @@ -25,7 +31,13 @@ package() { install -d "$pkgdir/usr/share/fonts/TTF/" install -m644 *.ttf "$pkgdir/usr/share/fonts/TTF/" + # install fontconfig files + install -Dm0644 ../30-0-liberation-mono.conf "$pkgdir/etc/fonts/conf.avail/30-$pkgname-mono.conf" + install -Dm0644 ../30-0-liberation-sans.conf "$pkgdir/etc/fonts/conf.avail/30-$pkgname-sans.conf" + install -Dm0644 ../30-0-liberation-serif.conf \ + "$pkgdir/etc/fonts/conf.avail/30-$pkgname-serif.conf" + # install license - install -Dm644 "${srcdir}/liberation-fonts-ttf-${pkgver}/License.txt" \ - "${pkgdir}/usr/share/licenses/${pkgname}/License.txt" + install -Dm644 "${srcdir}/liberation-fonts-ttf-${pkgver}/LICENSE" \ + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/abs/extra/ttf-ms-fonts/PKGBUILD b/abs/extra/ttf-ms-fonts/PKGBUILD deleted file mode 100644 index 00fd09d..0000000 --- a/abs/extra/ttf-ms-fonts/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: dale <dale@archlinux.org> -pkgname=ttf-ms-fonts -pkgver=2.0 -pkgrel=1 -pkgdesc="Un-extracted TTF Fonts from Microsoft" -arch=(i686 x86_64) -url="http://corefonts.sourceforge.net/" -sfpath="http://heanet.dl.sourceforge.net/sourceforge/corefonts/" -depends=(cabextract xorg-fonts-encodings xorg-font-utils fontconfig) -install=ttf-ms-fonts.install -source=($sfpath/andale32.exe $sfpath/arial32.exe $sfpath/arialb32.exe \ - $sfpath/comic32.exe $sfpath/courie32.exe $sfpath/georgi32.exe \ - $sfpath/impact32.exe $sfpath/times32.exe $sfpath/trebuc32.exe \ - $sfpath/verdan32.exe $sfpath/webdin32.exe $sfpath/wd97vwr32.exe) -md5sums=('cbdc2fdd7d2ed0832795e86a8b9ee19a' '9637df0e91703179f0723ec095a36cb5'\ - 'c9089ae0c3b3d0d8c4b0a95979bb9ff0' '2b30de40bb5e803a0452c7715fc835d1'\ - '4e412c772294403ab62fb2d247d85c60' '4d90016026e2da447593b41a8d8fa8bd'\ - '7907c7dd6684e9bade91cff82683d9d7' 'ed39c8ef91b9fb80f76f702568291bd5'\ - '0d7ea16cac6261f8513a061fbfcdb2b5' '12d2a75f8156e10607be1eaa8e8ef120'\ - '230a1d13a365b22815f502eb24d9149b' 'efa72d3ed0120a07326ce02f051e9b42') - -build() { - mkdir -p $startdir/pkg/tmp/${pkgname} - chmod 1777 $startdir/pkg/tmp - install -m644 $startdir/src/*.exe $startdir/pkg/tmp/$pkgname -} diff --git a/abs/extra/ttf-ms-fonts/ttf-ms-fonts.install b/abs/extra/ttf-ms-fonts/ttf-ms-fonts.install deleted file mode 100644 index 043cd88..0000000 --- a/abs/extra/ttf-ms-fonts/ttf-ms-fonts.install +++ /dev/null @@ -1,55 +0,0 @@ -# arg 1: the new package version -post_install() { - echo -n "extracting fonts... " - for font in tmp/ttf-ms-fonts/*.exe - do - cabextract --lowercase --directory=tmp/ttf-ms-fonts/ $font -F '*.ttf' >/dev/null 2>&1 - done - cabextract --lowercase --directory=tmp/ttf-ms-fonts/ tmp/ttf-ms-fonts/wd97vwr32.exe -F '*.cab' >/dev/null 2>&1 - cabextract --lowercase --directory=tmp/ttf-ms-fonts/ tmp/ttf-ms-fonts/viewer1.cab -F '*.ttf' >/dev/null 2>&1 - mkdir -p usr/share/fonts/TTF - : >usr/share/fonts/TTF/msfonts.txt - for i in `/bin/ls tmp/ttf-ms-fonts/*.ttf`; do - echo `basename $i` >>usr/share/fonts/TTF/msfonts.txt - cp $i usr/share/fonts/TTF - done - echo "done." - echo -n "rebuilding font cache... " - fc-cache -f > /dev/null - mkfontscale /usr/share/fonts/TTF - mkfontdir /usr/share/fonts/TTF - echo "done." - rm -rf tmp/ttf-ms-fonts -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - # remove fonts from their old location - rm -rf usr/X11R6/lib/X11/fonts/ttf-ms-fonts - post_install $1 -} - -# arg 1: the old package version -pre_remove() { - #rm -f usr/X11R6/lib/X11/fonts/TTF/ - [ -f usr/share/fonts/TTF/msfonts.txt ] || return - for i in `cat usr/share/fonts/TTF/msfonts.txt`; do - rm -f usr/share/fonts/TTF/$i - done - rm -f usr/share/fonts/TTF/msfonts.txt -} - -# arg 1: the old package version -post_remove() { - echo -n "rebuilding font cache... " - fc-cache -f > /dev/null - mkfontscale /usr/share/fonts/TTF - mkfontdir /usr/share/fonts/TTF - echo "done." -} - -op=$1 -shift - -$op $* diff --git a/abs/extra/twinhan-remote/PKGBUILD b/abs/extra/twinhan-remote/PKGBUILD deleted file mode 100644 index d7f56b0..0000000 --- a/abs/extra/twinhan-remote/PKGBUILD +++ /dev/null @@ -1,19 +0,0 @@ -pkgname=twinhan-remote -pkgver=1 -pkgrel=1 -pkgdesc="Provides usbkbd.ko for older Twinhan remotes." -replaces=() -arch=('i686' 'x86_64') -url="" -source=('twinhan-remote.conf' 'usbkbd.ko') -install=twinhan-remote.install - -build() { - cd ${srcdir} - mkdir -p ${pkgdir}/etc/modprobe.d - install -D -m644 "twinhan-remote.conf" "${pkgdir}/etc/modprobe.d/" - mkdir -p ${pkgdir}/lib/modules/2.6.39-LinHES/kernel/drivers/hid/usbhid/ - install -D -m644 "usbkbd.ko" "${pkgdir}/lib/modules/2.6.39-LinHES/kernel/drivers/hid/usbhid/" -} -md5sums=('3d7cddd5f3433ffe6d4031d1cf9e859d' - 'feefbe9b5e4861c9f2faf85b75395ac0') diff --git a/abs/extra/twinhan-remote/twinhan-remote.conf b/abs/extra/twinhan-remote/twinhan-remote.conf deleted file mode 100644 index e472f04..0000000 --- a/abs/extra/twinhan-remote/twinhan-remote.conf +++ /dev/null @@ -1,3 +0,0 @@ -# Disable hid_twinhan -# -blacklist hid_twinhan diff --git a/abs/extra/twinhan-remote/twinhan-remote.install b/abs/extra/twinhan-remote/twinhan-remote.install deleted file mode 100644 index 4fa78ad..0000000 --- a/abs/extra/twinhan-remote/twinhan-remote.install +++ /dev/null @@ -1,19 +0,0 @@ -KERNEL_NAME= -KERNEL_VERSION=`/bin/uname -r` - -post_install () { - # updating module dependencies - echo ">>> Updating module dependencies. Please wait ..." - /sbin/depmod $KERNEL_VERSION - # generate init ramdisks - echo ">>> Generating ramdisk, using mkinitcpio. Please wait..." - /sbin/mkinitcpio -p kernel26${KERNEL_NAME} -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/abs/extra/twinhan-remote/usbkbd.ko b/abs/extra/twinhan-remote/usbkbd.ko Binary files differdeleted file mode 100644 index 6f0cd2c..0000000 --- a/abs/extra/twinhan-remote/usbkbd.ko +++ /dev/null diff --git a/abs/extra/unetbootin/PKGBUILD b/abs/extra/unetbootin/PKGBUILD deleted file mode 100644 index 2978b54..0000000 --- a/abs/extra/unetbootin/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# Maintainer: Det <nimetonmaili at gmail a-dot com> -# Contributor: Godane aka Christopher Rogers <slaxemulator@gmail.com> - -pkgname=unetbootin -pkgver=494 -pkgrel=1 -pkgdesc="Allows the creation of bootable Live USB drives for Linux/BSD distributions" -url="http://unetbootin.sourceforge.net/" -license="GPL" -arch=('i686' 'x86_64') -depends=('syslinux' 'p7zip' 'qt' 'mtools') -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-source-${pkgver}.tar.gz) -md5sums=('e3f01fd88f3aa5d918c60ba0be608e86') - -build() { - cd "${srcdir}" - sed -i '/^RESOURCES/d' unetbootin.pro - lupdate unetbootin.pro - lrelease unetbootin.pro - qmake "DEFINES += NOSTATIC" "RESOURCES -= unetbootin.qrc" - make -} - -package() { - cd "${srcdir}" - mkdir -p "${pkgdir}/usr/sbin" - install -m 755 ${pkgname} "${pkgdir}/usr/sbin/${pkgname}" - mkdir -p "${pkgdir}/usr/share/${pkgname}" - install -m 644 unetbootin_*.qm "${pkgdir}/usr/share/${pkgname}" - mkdir -p "${pkgdir}/usr/share/applications/" - install -m 644 ${pkgname}.desktop "${pkgdir}/usr/share/applications/" - sed -i 's|Exec=/usr/bin/unetbootin|Exec=su -c /usr/sbin/unetbootin|g' "${pkgdir}/usr/share/applications/${pkgname}.desktop" - sed -i 's|Terminal=false|Terminal=true|g' "${pkgdir}/usr/share/applications/${pkgname}.desktop" -} - diff --git a/abs/extra/unison/PKGBUILD b/abs/extra/unison/PKGBUILD index 6b3dc00..9be4f21 100644 --- a/abs/extra/unison/PKGBUILD +++ b/abs/extra/unison/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 57697 2009-11-01 15:08:02Z tpowa $ +# $Id: PKGBUILD 161432 2012-06-11 13:29:15Z tpowa $ #Maintainer: Tobias Powalowski <tpowa@archlinux.org> pkgname=unison @@ -9,36 +9,48 @@ arch=(i686 x86_64) license=('GPL2') url="http://www.cis.upenn.edu/~bcpierce/unison" depends=('glibc') -#makedepends=('ocaml' 'lablgtk' 'lablgtk2' 'imagemagick') -#makedepends=('ocaml' 'imagemagick') -makedepends=('ocaml' ) -source=(http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/$pkgname-$pkgver.tar.gz \ - $pkgname.desktop) +makedepends=('ocaml' 'lablgtk2' 'imagemagick') +optdepends=('gtk2: for gtk2 support') +#http://www.cis.upenn.edu/~bcpierce/unison/download/releases/unison-2.32.52/unison-2.32.52.tar.gz +source=(http://www.cis.upenn.edu/~bcpierce/unison/download/releases/$pkgname-$pkgver/$pkgname-$pkgver.tar.gz + $pkgname.desktop unison-ssh-ocaml.patch) options=(!makeflags) -install=unison.install build() { - cd $startdir/src/$pkgname-$pkgver + cd "$srcdir/$pkgname-$pkgver" + patch -p1 < $srcdir/unison-ssh-ocaml.patch CFLAGS="" make clean - make UISTYLE=text DEBUGGING=false THREADS=true || return 1 - mkdir -p $startdir/pkg/usr/bin - install -Dm755 unison $startdir/pkg/usr/bin/unison + make mkProjectInfo + make UISTYLE=text DEBUGGING=false THREADS=true + mv unison unison-text + # clean the builddir and rebuild with gtk support -# make clean -# make UISTYLE=gtk DEBUGGING=false THREADS=true || return 1 -# install -Dm755 unison $startdir/pkg/usr/bin/unison-gtk + # broken at the moment! + # make clean + # make mkProjectInfo + # make UISTYLE=gtk DEBUGGING=false THREADS=true + # install -Dm755 unison "$pkgdir"/usr/bin/unison-gtk # clean the builddir and rebuild with gtk2 support -# make clean -# make UISTYLE=gtk2 DEBUGGING=false THREADS=true || return 1 -# install -Dm755 unison $startdir/pkg/usr/bin/unison-gtk2 + make clean + make mkProjectInfo + make UISTYLE=gtk2 DEBUGGING=false THREADS=true +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + install -Dm755 unison-text "$pkgdir"/usr/bin/unison + install -Dm755 unison "$pkgdir"/usr/bin/unison-gtk2 # install a .desktop file; create a compliant icon from ico file and install the png - # install -Dm644 ../$pkgname.desktop $startdir/pkg/usr/share/applications/$pkgname.desktop - # convert win32rc/U.ico unison.png - # install -Dm644 ${pkgname}-1.png $startdir/pkg/usr/share/pixmaps/$pkgname.png + install -Dm644 ../$pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop + convert win32rc/U.ico unison.png + install -Dm644 ${pkgname}-1.png "$pkgdir"/usr/share/pixmaps/$pkgname.png # make symlink for .desktop file - # cd $startdir/pkg//usr/bin - # ln -s unison-gtk2 unison-x11 + cd "$pkgdir"/usr/bin + ln -s unison-gtk2 unison-x11 + # make versioned symlink #29827 + ln -s unison unison-2.40 } md5sums=('0701f095c1721776a0454b94607eda48' - '2daecba7705455a8e4b769e48b059872') + '2daecba7705455a8e4b769e48b059872' + '81a28349471434c75a4206d07ad21eb1') diff --git a/abs/extra/unison/unison-ssh-ocaml.patch b/abs/extra/unison/unison-ssh-ocaml.patch new file mode 100644 index 0000000..1b9c66c --- /dev/null +++ b/abs/extra/unison/unison-ssh-ocaml.patch @@ -0,0 +1,25 @@ +Index: src/terminal.ml +=================================================================== +--- src/terminal.ml (rĂ©vision 463) ++++ src/terminal.ml (copie de travail) +@@ -191,7 +191,6 @@ + exit 127 + end + | childPid -> +- Unix.close slaveFd; + (Some masterFd, childPid) + end + +Index: src/update.mli +=================================================================== +--- src/update.mli (rĂ©vision 463) ++++ src/update.mli (copie de travail) +@@ -1,7 +1,7 @@ + (* Unison file synchronizer: src/update.mli *) + (* Copyright 1999-2009, Benjamin C. Pierce (see COPYING for details) *) + +-module NameMap : Map.S with type key = Name.t ++module NameMap : MyMap.S with type key = Name.t + + type archive = + ArchiveDir of Props.t * archive NameMap.t diff --git a/abs/extra/unison/unison.install b/abs/extra/unison/unison.install index 70e70b0..a3790ab 100644 --- a/abs/extra/unison/unison.install +++ b/abs/extra/unison/unison.install @@ -26,7 +26,3 @@ pre_remove() { post_remove() { /bin/true } - -op=$1 -shift -$op $* diff --git a/abs/extra/unixodbc/PKGBUILD b/abs/extra/unixodbc/PKGBUILD index 66f4a39..36a06cc 100644 --- a/abs/extra/unixodbc/PKGBUILD +++ b/abs/extra/unixodbc/PKGBUILD @@ -1,29 +1,28 @@ -# $Id: PKGBUILD 78429 2010-04-23 18:51:55Z andyrtr $ +# $Id: PKGBUILD 145345 2011-12-21 20:47:39Z andrea $ # Maintainer: AndyRTR <andyrtr@archlinux.org> - # Contributor: Judd Vinet <jvinet@zeroflux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=unixodbc -pkgver=2.3.0 +pkgver=2.3.1 pkgrel=1 pkgdesc="ODBC is an open specification for providing application developers with a predictable API with which to access Data Sources" arch=('i686' 'x86_64') license=('GPL2' 'LGPL2.1') url="http://www.unixodbc.org/" backup=('etc/odbc.ini' 'etc/odbcinst.ini') -depends=('readline>=6.0' 'libtool') +depends=('readline' 'libltdl') options=('!libtool') -source=(http://www.unixodbc.org/unixODBC-$pkgver.tar.gz) -md5sums=('f2ad22cbdffe836c58987ed2332c2e99') +source=("http://www.unixodbc.org/unixODBC-$pkgver.tar.gz") +md5sums=('86788d4006620fa1f171c13d07fdcaab') build() { cd ${srcdir}/unixODBC-${pkgver} ./configure --prefix=/usr --sysconfdir=/etc - make || return 1 + make } package() { cd ${srcdir}/unixODBC-${pkgver} - make DESTDIR=${pkgdir} install || return 1 + make DESTDIR=${pkgdir} install } diff --git a/abs/extra/unrar/PKGBUILD b/abs/extra/unrar/PKGBUILD new file mode 100644 index 0000000..f4ef1a1 --- /dev/null +++ b/abs/extra/unrar/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 161802 2012-06-14 17:00:58Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: dorphell <dorphell@gmx.net> + +pkgbase=unrar +pkgname=('unrar' 'libunrar') +pkgver=4.2.4 +pkgrel=1 +arch=('i686' 'x86_64') +url="http://www.rarlab.com/rar_add.htm" +license=('custom') +makedepends=('gcc-libs') +source=("http://www.rarlab.com/rar/unrarsrc-${pkgver}.tar.gz" + 'unrar-4.2.1-soname.patch') +md5sums=('8ea9d1b4139474b282d76e627a2de3e4' + 'b9ec767da9a36f5ac38034c974e77758') + +build() { + cd "${srcdir}/${pkgbase}" + + patch -Np0 -i "${srcdir}/unrar-4.2.1-soname.patch" + + cp -a ${srcdir}/unrar ${srcdir}/libunrar + make -C "${srcdir}"/libunrar -f makefile.unix lib libversion=${pkgver} CXXFLAGS="-fPIC ${CXXFLAGS}" + make -f makefile.unix CXXFLAGS="-fPIC ${CXXFLAGS}" STRIP="true" +} + +package_unrar() { + pkgdesc="The RAR uncompression program" + depends=('gcc-libs') + cd "${srcdir}/${pkgbase}" + + install -Dm755 unrar "${pkgdir}/usr/bin/unrar" + # install license + install -Dm644 license.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + +package_libunrar() { + pkgdesc="Library and header file for applications that use libunrar" + depends=('gcc-libs') + cd "${srcdir}/libunrar" + + install -Dm755 libunrar.so.${pkgver} "${pkgdir}/usr/lib/libunrar.so.${pkgver}" + install -Dm644 dll.hpp "${pkgdir}/usr/include/unrar/dll.hpp" + ln -s libunrar.so.${pkgver} "${pkgdir}/usr/lib/libunrar.so.4" + ln -s libunrar.so.${pkgver} "${pkgdir}/usr/lib/libunrar.so" + # install license + install -Dm644 license.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/abs/extra/unrar/unrar-4.2.1-soname.patch b/abs/extra/unrar/unrar-4.2.1-soname.patch new file mode 100644 index 0000000..83ebe96 --- /dev/null +++ b/abs/extra/unrar/unrar-4.2.1-soname.patch @@ -0,0 +1,11 @@ +--- makefile.unix 2012-02-23 10:23:14.000000000 +0100 ++++ makefile.unix 2012-05-05 12:58:13.000000000 +0200 +@@ -131,7 +131,7 @@ + lib: CXXFLAGS+=$(LIBFLAGS) + lib: clean $(OBJECTS) $(LIB_OBJ) + @rm -f libunrar.so +- $(LINK) -shared -o libunrar.so $(LDFLAGS) $(OBJECTS) $(LIB_OBJ) ++ $(LINK) -shared -Wl,-soname,libunrar.so.$(libversion) -o libunrar.so.$(libversion) $(LDFLAGS) $(OBJECTS) $(LIB_OBJ) + + install-unrar: + install -D unrar $(DESTDIR)/bin/unrar diff --git a/abs/extra/upower/0001-Send-resume-signal-when-built-with-systemd-and-using.patch b/abs/extra/upower/0001-Send-resume-signal-when-built-with-systemd-and-using.patch new file mode 100644 index 0000000..2694334 --- /dev/null +++ b/abs/extra/upower/0001-Send-resume-signal-when-built-with-systemd-and-using.patch @@ -0,0 +1,35 @@ +From a5b3dd887dcd60e981626ae2e15c874311fc4fef Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> +Date: Sun, 2 Sep 2012 04:36:13 +0200 +Subject: [PATCH] Send resume signal when built with systemd and using + pm-utils suspend + +This case was apparently overlooked when adding systemd support. + +Signed-off-by: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +--- + src/linux/up-backend.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/src/linux/up-backend.c b/src/linux/up-backend.c +index ddd4472..52b430e 100644 +--- a/src/linux/up-backend.c ++++ b/src/linux/up-backend.c +@@ -603,10 +603,11 @@ gboolean + up_backend_emits_resuming (UpBackend *backend) + { + #ifdef HAVE_SYSTEMD +- return TRUE; +-#else +- return FALSE; ++ if (sd_booted ()) ++ return TRUE; ++ else + #endif ++ return FALSE; + } + + /** +-- +1.7.12 + diff --git a/abs/extra/upower/PKGBUILD b/abs/extra/upower/PKGBUILD index 370f483..d27d378 100644 --- a/abs/extra/upower/PKGBUILD +++ b/abs/extra/upower/PKGBUILD @@ -1,27 +1,38 @@ -# $Id$ +# $Id: PKGBUILD 166524 2012-09-09 15:41:20Z heftig $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=upower -pkgver=0.9.15 +pkgver=0.9.18 pkgrel=2 pkgdesc="Abstraction for enumerating power devices, listening to device events and querying history and statistics" arch=('i686' 'x86_64') url="http://upower.freedesktop.org" license=('GPL') -depends=('udev' 'libusb' 'polkit' 'pm-utils' 'dbus-glib' 'libimobiledevice') -makedepends=('intltool' 'docbook-xsl' 'gobject-introspection') +depends=('systemd-tools' 'libsystemd' 'libusb' 'polkit' 'pm-utils' 'dbus-glib' 'libimobiledevice') +makedepends=('intltool' 'docbook-xsl' 'gobject-introspection' 'systemd') options=('!libtool') -source=($url/releases/$pkgname-$pkgver.tar.xz) -sha256sums=('d5941480f32dcee47401b3f650485c71f70e7eb0d92537bf4b62410248a6238c') +source=($url/releases/$pkgname-$pkgver.tar.xz + 0001-Send-resume-signal-when-built-with-systemd-and-using.patch) build() { - cd "$srcdir/$pkgname-$pkgver" - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ - --libexecdir=/usr/lib/upower --disable-static + cd "$pkgname-$pkgver" + + # put udev files in /usr/lib + sed -i "/slashlibdir=/s#/lib#/usr/lib#" configure + + # https://bugs.freedesktop.org/show_bug.cgi?id=54371 + patch -Np1 -i ../0001-Send-resume-signal-when-built-with-systemd-and-using.patch + + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib/$pkgname \ + --disable-static make } package() { - cd "$srcdir/$pkgname-$pkgver" + cd "$pkgname-$pkgver" make DESTDIR="$pkgdir" install } +md5sums=('bfaaa1e7f8479fca5594406b3c36dff9' + '188afea4919dc324b2efbae35d9d216a') diff --git a/abs/extra/usbmuxd/85-usbmuxd.rules b/abs/extra/usbmuxd/85-usbmuxd.rules new file mode 100644 index 0000000..ec9f725 --- /dev/null +++ b/abs/extra/usbmuxd/85-usbmuxd.rules @@ -0,0 +1,9 @@ +# usbmuxd ("Apple Mobile Device" muxer listening on /var/run/usbmuxd) + +# Forces iDevices to the last USB configuration and runs usbmuxd +TEST=="/sys/fs/cgroup/systemd", ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="05ac", ATTR{idProduct}=="12[9a][0-9a-f]", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}!="$attr{bNumConfigurations}", ATTR{bConfigurationValue}="$attr{bNumConfigurations}", OWNER="usbmux", TAG+="systemd", ENV{SYSTEMD_WANTS}="usbmuxd.service", GOTO="usbmuxd_systemd_end" +ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="05ac", ATTR{idProduct}=="12[9a][0-9a-f]", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}!="$attr{bNumConfigurations}", ATTR{bConfigurationValue}="$attr{bNumConfigurations}", OWNER="usbmux", RUN+="/usr/sbin/usbmuxd -u -U usbmux" +LABEL="usbmuxd_systemd_end" + +# Exit usbmuxd when the last device is removed +ACTION=="remove", SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ENV{INTERFACE}=="255/*", RUN+="/usr/sbin/usbmuxd -x" diff --git a/abs/extra/usbmuxd/PKGBUILD b/abs/extra/usbmuxd/PKGBUILD index 758cb66..885dcae 100644 --- a/abs/extra/usbmuxd/PKGBUILD +++ b/abs/extra/usbmuxd/PKGBUILD @@ -1,25 +1,24 @@ -# $Id$ +# $Id: PKGBUILD 164371 2012-07-31 19:43:35Z eric $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Gabriel Martinez < reitaka at gmail dot com > pkgname=usbmuxd -pkgver=1.0.7 -pkgrel=2 +pkgver=1.0.8 +pkgrel=1 pkgdesc="USB Multiplex Daemon" url="http://marcansoft.com/blog/iphonelinux/usbmuxd/" arch=('i686' 'x86_64') license=('GPL2' 'GPL3' 'LGPL2.1') -depends=('libusb>=1.0.8') +depends=('libusb' 'libplist') makedepends=('cmake') install=usbmuxd.install -source=(http://marcansoft.com/uploads/${pkgname}/${pkgname}-${pkgver}.tar.bz2 - usbmuxd-udevuser.patch - usbmuxd-describe.patch) +source=("http://cgit.sukimashita.com/${pkgname}.git/snapshot/${pkgname}-${pkgver}.tar.bz2" + 'usbmuxd.service' + '85-usbmuxd.rules') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/usbmuxd-udevuser.patch" - patch -Np1 -i "${srcdir}/usbmuxd-describe.patch" + echo "${pkgver}" > version.tag mkdir build cd build cmake ../ -DCMAKE_INSTALL_PREFIX:PATH=/usr -DLIB_SUFFIX="" @@ -29,7 +28,18 @@ build() { package() { cd "${srcdir}/${pkgname}-${pkgver}/build" make DESTDIR="${pkgdir}" install + + # fix udev dir being hardcoded + mv "${pkgdir}/lib/udev" "${pkgdir}/usr/lib/" + rmdir "${pkgdir}/lib" + # install systemd service file + install -D -m644 ${srcdir}/usbmuxd.service ${pkgdir}/usr/lib/systemd/system/usbmuxd.service + # use udev rule that works with systemd + install -m644 ${srcdir}/85-usbmuxd.rules ${pkgdir}/usr/lib/udev/rules.d/ + #fix version + sed -i "s/Version.*$/Version: ${pkgver}/g" $pkgdir/usr/lib/pkgconfig/libusbmuxd.pc + } -md5sums=('6f431541f3177fa06aa6df9ceecb2da0' - '8526f24f4ad16cd6b2a7321c0b59592c' - 'bac157d6e01e1e0d56750f73850b96fb') +md5sums=('87fd27773a84e97ac6e2dc28b08d682e' + 'dae0660f972510a6483992b5b81e1b5a' + 'dc4b2893651149eccbf7b2c8467cd288') diff --git a/abs/extra/usbmuxd/__changelog b/abs/extra/usbmuxd/__changelog index 7b30556..e5a6fbf 100644 --- a/abs/extra/usbmuxd/__changelog +++ b/abs/extra/usbmuxd/__changelog @@ -1 +1,3 @@ -- added usbmuxd-describe.patch so version number is correctly detected +#fix version -jm +sed -i "s/Version.*$/Version: ${pkgver}/g" $pkgdir/usr/lib/pkgconfig/libusbmuxd.pc + diff --git a/abs/extra/usbmuxd/usbmuxd-describe.patch b/abs/extra/usbmuxd/usbmuxd-describe.patch deleted file mode 100644 index 3023235..0000000 --- a/abs/extra/usbmuxd/usbmuxd-describe.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- usbmuxd-1.0.7/Modules/describe.sh.orig 2012-04-07 22:37:03.218203610 +0000 -+++ usbmuxd-1.0.7/Modules/describe.sh 2012-04-07 22:37:22.979010437 +0000 -@@ -1,17 +1,8 @@ - #!/bin/bash - --# Check for git and a git repo. --if head=`git rev-parse --verify HEAD 2>/dev/null`; then -- /bin/echo -n `git describe` -- -- # Are there uncommitted changes? -- git update-index --refresh --unmerged > /dev/null -- git diff-index --quiet HEAD || /bin/echo -n -dirty --else - # Check for version tag - if [ -e version.tag ]; then - /bin/echo -n `cat version.tag` - fi --fi - - echo diff --git a/abs/extra/usbmuxd/usbmuxd-udevuser.patch b/abs/extra/usbmuxd/usbmuxd-udevuser.patch deleted file mode 100644 index 51c8f3d..0000000 --- a/abs/extra/usbmuxd/usbmuxd-udevuser.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur usbmuxd-1.0.7.orig/udev/85-usbmuxd.rules.in usbmuxd-1.0.7/udev/85-usbmuxd.rules.in ---- usbmuxd-1.0.7.orig/udev/85-usbmuxd.rules.in 2011-08-04 15:28:32.751579507 +0000 -+++ usbmuxd-1.0.7/udev/85-usbmuxd.rules.in 2011-08-04 15:36:20.139265124 +0000 -@@ -1,7 +1,7 @@ - # usbmuxd (iPhone "Apple Mobile Device" MUXer listening on /var/run/usbmuxd) - - # Forces iDevices to the last USB configuration and runs usbmuxd --ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="05ac", ATTR{idProduct}=="12[9a][0-9a-f]", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}!="$attr{bNumConfigurations}", ATTR{bConfigurationValue}="$attr{bNumConfigurations}", RUN+="@CMAKE_INSTALL_PREFIX@/sbin/usbmuxd -u -U usbmux" -+ACTION=="add", SUBSYSTEM=="usb", OWNER="usbmux", ATTR{idVendor}=="05ac", ATTR{idProduct}=="12[9a][0-9a-f]", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}!="$attr{bNumConfigurations}", ATTR{bConfigurationValue}="$attr{bNumConfigurations}", RUN+="@CMAKE_INSTALL_PREFIX@/sbin/usbmuxd -u -U usbmux" - - # Exit usbmuxd when the last device is removed - ACTION=="remove", SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ENV{INTERFACE}=="255/*", RUN+="@CMAKE_INSTALL_PREFIX@/sbin/usbmuxd -x" diff --git a/abs/extra/usbmuxd/usbmuxd.service b/abs/extra/usbmuxd/usbmuxd.service new file mode 100644 index 0000000..fbebf65 --- /dev/null +++ b/abs/extra/usbmuxd/usbmuxd.service @@ -0,0 +1,5 @@ +[Unit] +Description=iOS USB Muxer + +[Service] +ExecStart=/usr/sbin/usbmuxd -u -f -U usbmux diff --git a/abs/extra/v8/PKGBUILD b/abs/extra/v8/PKGBUILD new file mode 100644 index 0000000..9dcf911 --- /dev/null +++ b/abs/extra/v8/PKGBUILD @@ -0,0 +1,51 @@ +# $Id: PKGBUILD 78786 2012-10-24 19:28:22Z bpiotrowski $ +# Maintainer: Kaiting Chen <kaitocracy@gmail.com> +# Contributor: tocer <tocer.deng@gmail.com> + +pkgname=v8 +pkgver=3.14.0 +pkgrel=1 +pkgdesc='Fast and modern javascript engine' +arch=('i686' 'x86_64') +url='http://code.google.com/p/v8' +license=('BSD') +depends=('gcc-libs' 'readline') +makedepends=('subversion' 'python2') +source=($pkgname-$pkgver.tar.gz::https://github.com/v8/v8/tarball/$pkgver) +md5sums=('bcfec8d90a1d72d9962f3effa15e56c0') + +[[ "$CARCH" = 'i686' ]] && ARCH=ia32 +[[ "$CARCH" = 'x86_64' ]] && ARCH=x64 + +build() { + cd $srcdir/$pkgname-$pkgname-* + + # Fetch gyp + make dependencies + + # The world isn't ready for python2 + export PYTHON=python2 + find build/ test/ tools/ src/ -type f \ + -exec sed -e 's_^#!/usr/bin/env python$_&2_' \ + -e 's_^\(#!/usr/bin/python2\).[45]$_\1_' \ + -e 's_^#!/usr/bin/python$_&2_' \ + -e "s_'python'_'python2'_" -i {} \; + sed -i 's/python /python2 /' Makefile + + make $ARCH.release library=shared console=readline +} + +package() { + cd $srcdir/$pkgname-$pkgname-* + + install -Dm755 out/$ARCH.release/d8 $pkgdir/usr/bin/d8 + install -Dm755 out/$ARCH.release/lib.target/libv8.so $pkgdir/usr/lib/libv8.so + + install -d $pkgdir/usr/include + install -Dm644 include/*.h $pkgdir/usr/include + + install -d $pkgdir/usr/share/licenses/v8 + install -m644 LICENSE* ${pkgdir}/usr/share/licenses/v8 +} + +# vim:set ts=2 sw=2 et: diff --git a/abs/extra/vala/PKGBUILD b/abs/extra/vala/PKGBUILD index b816dd4..3d0681d 100644 --- a/abs/extra/vala/PKGBUILD +++ b/abs/extra/vala/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 97141 2010-10-26 21:06:27Z ibiru $ +# $Id: PKGBUILD 162223 2012-06-23 20:04:12Z ibiru $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Timm Preetz <timm@preetz.us> pkgname=vala -pkgver=0.10.1 +pkgver=0.16.1 pkgrel=1 pkgdesc="Compiler for the GObject type system" arch=('i686' 'x86_64') @@ -12,13 +12,16 @@ license=('LGPL') depends=('glib2') makedepends=('libxslt') options=('!libtool') -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.10/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('eae1d2f52b651e9d2ed31ae0877ab671b5f796a3013c714f86a926806337805a') +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('8be28ff6347feecb391220ceb4e2209d32b697278e87ed7fc6c9fb1e9345e0d8') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd $pkgname-$pkgver + ./configure --prefix=/usr --enable-vapigen + make +} - ./configure --prefix=/usr --enable-vapigen - make - make DESTDIR="${pkgdir}" install +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install } diff --git a/abs/extra/valgrind/PKGBUILD b/abs/extra/valgrind/PKGBUILD index 0ac6fd4..bf8d65e 100644 --- a/abs/extra/valgrind/PKGBUILD +++ b/abs/extra/valgrind/PKGBUILD @@ -1,35 +1,26 @@ -# $Id$ +# $Id: PKGBUILD 163013 2012-07-05 13:49:57Z allan $ # Maintainer: Dan McGee <dan@archlinux.org> # Maintainer: Allan McRae <allan@archlinux.org> pkgname=valgrind -pkgver=3.6.1 -pkgrel=2 +pkgver=3.7.0 +pkgrel=3 pkgdesc="A tool to help find memory-management problems in programs" arch=('i686' 'x86_64') license=('GPL') url="http://valgrind.org/" -depends=('glibc>=2.14' 'glibc<2.15' 'perl') +depends=('glibc>=2.16' 'glibc<2.17' 'perl') makedepends=('gdb') options=('!emptydirs') source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2 - valgrind-3.6.1-glibc-2.14.patch - glibc-patch-version.patch) -md5sums=('2c3aa122498baecc9d69194057ca88f5' - '560032ce5d27ef0c7c1af32c3fd45833' - 'b657f0ebdde3d9aefc9fd16f9e653702') + valgrind-3.7.0-glibc-2.16.patch) +md5sums=('a855fda56edf05614f099dca316d1775' + '8362c9c10b8d7d08d1be628a717cfba7') build() { cd ${srcdir}/${pkgname}-${pkgver} - - # make sure our CFLAGS are respected - sed -i -e 's:^CFLAGS="-Wno-long-long":CFLAGS="$CFLAGS -Wno-long-long":' configure.in - - # glibc-2.14 compatibility - patch -Np1 -i ${srcdir}/valgrind-3.6.1-glibc-2.14.patch - - # prevent need to rebuild with glibc patch level version bumps - patch -Np1 -i ${srcdir}/glibc-patch-version.patch + + patch -Np1 -i ${srcdir}/valgrind-3.7.0-glibc-2.16.patch if [ "${CARCH}" = "x86_64" ]; then ./configure --prefix=/usr --mandir=/usr/share/man --enable-only64bit diff --git a/abs/extra/valgrind/glibc-patch-version.patch b/abs/extra/valgrind/glibc-patch-version.patch deleted file mode 100644 index 2c6830a..0000000 --- a/abs/extra/valgrind/glibc-patch-version.patch +++ /dev/null @@ -1,52 +0,0 @@ -Saves having to rebuild valgrind on glibc-x.x.* patch level releases - -diff -Naur valgrind-3.5.0-old//glibc-2.X.supp.in valgrind-3.5.0/glibc-2.X.supp.in ---- valgrind-3.5.0-old//glibc-2.X.supp.in 2009-08-19 23:37:48.000000000 +1000 -+++ valgrind-3.5.0/glibc-2.X.supp.in 2010-05-22 19:43:08.088007038 +1000 -@@ -168,9 +168,9 @@ - Memcheck:Param - socketcall.sendto(msg) - fun:__sendto_nocancel -- obj:/*libc-@GLIBC_VERSION@.so -- obj:/*libc-@GLIBC_VERSION@.so -- obj:/*libc-@GLIBC_VERSION@.so -+ obj:/*libc-@GLIBC_VERSION@*.so -+ obj:/*libc-@GLIBC_VERSION@*.so -+ obj:/*libc-@GLIBC_VERSION@*.so - } - { - glibc24-64bit-padding-1c -@@ -180,7 +180,7 @@ - fun:__nscd_get_map_ref - fun:nscd_get*_r - fun:*nscd* -- obj:/*libc-@GLIBC_VERSION@.so -+ obj:/*libc-@GLIBC_VERSION@*.so - } - - -@@ -199,18 +199,18 @@ - Memcheck:Param - socketcall.sendto(msg) - fun:send -- obj:/*libc-@GLIBC_VERSION@.so -- obj:/*libc-@GLIBC_VERSION@.so -- obj:/*libc-@GLIBC_VERSION@.so -+ obj:/*libc-@GLIBC_VERSION@*.so -+ obj:/*libc-@GLIBC_VERSION@*.so -+ obj:/*libc-@GLIBC_VERSION@*.so - } - { - X11-64bit-padding-4b - Memcheck:Param - socketcall.send(msg) - fun:send -- obj:/*libc-@GLIBC_VERSION@.so -- obj:/*libc-@GLIBC_VERSION@.so -- obj:/*libc-@GLIBC_VERSION@.so -+ obj:/*libc-@GLIBC_VERSION@*.so -+ obj:/*libc-@GLIBC_VERSION@*.so -+ obj:/*libc-@GLIBC_VERSION@*.so - } - - ##----------------------------------------------------------------------## diff --git a/abs/extra/valgrind/valgrind-3.6.1-glibc-2.14.patch b/abs/extra/valgrind/valgrind-3.6.1-glibc-2.14.patch deleted file mode 100644 index 7fd2170..0000000 --- a/abs/extra/valgrind/valgrind-3.6.1-glibc-2.14.patch +++ /dev/null @@ -1,67 +0,0 @@ ---- valgrind/configure.in.jj 2010-10-21 03:14:02.000000000 +0200 -+++ valgrind/configure.in 2010-11-05 17:09:18.674455299 +0100 -@@ -749,6 +759,13 @@ case "${GLIBC_VERSION}" in - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" - ;; -+ 2.14) -+ AC_MSG_RESULT(2.14 family) -+ AC_DEFINE([GLIBC_2_14], 1, [Define to 1 if you're using glibc 2.14.x]) -+ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ ;; - aix5) - AC_MSG_RESULT(AIX 5.1 or 5.2 or 5.3) - AC_DEFINE([AIX5_LIBC], 1, [Define to 1 if you're using AIX 5.1 or 5.2 or 5.3]) -@@ -762,7 +779,7 @@ case "${GLIBC_VERSION}" in - - *) - AC_MSG_RESULT([unsupported version ${GLIBC_VERSION}]) -- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.13]) -+ AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.14]) - AC_MSG_ERROR([or AIX 5.1 or 5.2 or 5.3 GLIBC_VERSION]) - AC_MSG_ERROR([or Darwin libc]) - ;; ---- valgrind/config.h.in.jj 2010-10-20 22:20:49.000000000 +0200 -+++ valgrind/config.h.in 2010-11-05 17:08:33.863454886 +0100 -@@ -33,6 +33,9 @@ - /* Define to 1 if you're using glibc 2.13.x */ - #undef GLIBC_2_13 - -+/* Define to 1 if you're using glibc 2.14.x */ -+#undef GLIBC_2_14 -+ - /* Define to 1 if you're using glibc 2.2.x */ - #undef GLIBC_2_2 - ---- valgrind/configure.jj 2010-10-21 03:16:18.000000000 +0200 -+++ valgrind/configure 2010-11-05 17:09:39.163455396 +0100 -@@ -6367,6 +6389,18 @@ $as_echo "#define GLIBC_2_13 1" >>confde - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" - ;; -+ 2.14) -+ echo "$as_me:$LINENO: result: 2.14 family" >&5 -+echo "${ECHO_T}2.14 family" >&6 -+ -+cat >>confdefs.h <<\_ACEOF -+#define GLIBC_2_14 1 -+_ACEOF -+ -+ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -+ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -+ ;; - aix5) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: AIX 5.1 or 5.2 or 5.3" >&5 - $as_echo "AIX 5.1 or 5.2 or 5.3" >&6; } -@@ -6387,7 +6421,7 @@ $as_echo "#define DARWIN_LIBC 1" >>confd - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported version ${GLIBC_VERSION}" >&5 - $as_echo "unsupported version ${GLIBC_VERSION}" >&6; } -- as_fn_error "Valgrind requires glibc version 2.2 - 2.13" "$LINENO" 5 -+ as_fn_error "Valgrind requires glibc version 2.2 - 2.14" "$LINENO" 5 - as_fn_error "or AIX 5.1 or 5.2 or 5.3 GLIBC_VERSION" "$LINENO" 5 - as_fn_error "or Darwin libc" "$LINENO" 5 - ;; diff --git a/abs/extra/valgrind/valgrind-3.7.0-glibc-2.16.patch b/abs/extra/valgrind/valgrind-3.7.0-glibc-2.16.patch new file mode 100644 index 0000000..4d28ff1 --- /dev/null +++ b/abs/extra/valgrind/valgrind-3.7.0-glibc-2.16.patch @@ -0,0 +1,41 @@ +diff -Naur valgrind-3.7.0-orig/configure valgrind-3.7.0/configure +--- valgrind-3.7.0-orig/configure 2011-11-05 21:24:39.000000000 +1000 ++++ valgrind-3.7.0/configure 2011-12-27 15:43:54.832120449 +1000 +@@ -6402,6 +6402,28 @@ + DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" + DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" + ;; ++ 2.15) ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: 2.15 family" >&5 ++$as_echo "2.15 family" >&6; } ++ ++$as_echo "#define GLIBC_2_15 1" >>confdefs.h ++ ++ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ ;; ++ ++ 2.16) ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: 2.16 family" >&5 ++$as_echo "2.16 family" >&6; } ++ ++$as_echo "#define GLIBC_2_16 1" >>confdefs.h ++ ++ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" ++ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" ++ ;; ++ + darwin) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: Darwin" >&5 + $as_echo "Darwin" >&6; } +@@ -6422,7 +6433,7 @@ + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported version ${GLIBC_VERSION}" >&5 + $as_echo "unsupported version ${GLIBC_VERSION}" >&6; } +- as_fn_error "Valgrind requires glibc version 2.2 - 2.14" "$LINENO" 5 ++ as_fn_error "Valgrind requires glibc version 2.2 - 2.16" "$LINENO" 5 + as_fn_error "or Darwin libc" "$LINENO" 5 + ;; + esac diff --git a/abs/extra/vcdimager/PKGBUILD b/abs/extra/vcdimager/PKGBUILD deleted file mode 100644 index 2aa79b1..0000000 --- a/abs/extra/vcdimager/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 59903 2009-11-29 16:30:52Z jgc $ -# Maintainer: damir <damir@archlinux.org> -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> - -pkgname=vcdimager -pkgver=0.7.23 -pkgrel=7 -pkgdesc="GNU VCDImager is a full-featured mastering suite for authoring disassembling and analyzing Video CD's and Super Video CD's" -arch=(i686 x86_64) -license=('GPL') -url="http://www.vcdimager.org/" -depends=('libcdio>=0.82' 'libxml2>=2.7.3' 'popt') -options=('!libtool' '!emptydirs') -install=vcdimager.install -source=(ftp://ftp.gnu.org/gnu/vcdimager/${pkgname}-${pkgver}.tar.gz) -md5sums=('5e7d80fdbf0037ad20e438f2a9573253') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr \ - --mandir=/usr/share/man --infodir=/usr/share/info || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} diff --git a/abs/extra/vcdimager/__changelog b/abs/extra/vcdimager/__changelog deleted file mode 100644 index 701b6bb..0000000 --- a/abs/extra/vcdimager/__changelog +++ /dev/null @@ -1 +0,0 @@ -options=!noemptdir diff --git a/abs/extra/vcdimager/cdio.patch b/abs/extra/vcdimager/cdio.patch deleted file mode 100644 index f7f9e31..0000000 --- a/abs/extra/vcdimager/cdio.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- lib/image.c.org 2004-07-15 17:19:01.000000000 +0200 -+++ lib/image.c 2004-07-15 17:22:06.000000000 +0200 -@@ -76,7 +76,7 @@ - } - - int --vcd_image_sink_write (VcdImageSink *obj, void *buf, uint32_t lsn) -+vcd_image_sink_write (VcdImageSink *obj, void *buf, lsn_t lsn) - { - vcd_assert (obj != NULL); - diff --git a/abs/extra/vcdimager/vcdimager.install b/abs/extra/vcdimager/vcdimager.install deleted file mode 100644 index faa9748..0000000 --- a/abs/extra/vcdimager/vcdimager.install +++ /dev/null @@ -1,19 +0,0 @@ -infodir=/usr/share/info -filelist=(vcd-info.info.gz vcdimager.info.gz vcdxrip.info.gz) - -post_install() { - for file in ${filelist[@]}; do - install-info $infodir/$file $infodir/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - for file in ${filelist[@]}; do - install-info --delete $infodir/$file $infodir/dir 2> /dev/null - done -} - diff --git a/abs/extra/vdpau-video/PKGBUILD b/abs/extra/vdpau-video/PKGBUILD index b426e75..dcb8714 100644 --- a/abs/extra/vdpau-video/PKGBUILD +++ b/abs/extra/vdpau-video/PKGBUILD @@ -10,8 +10,9 @@ license=('GPL') depends=('libva' 'libvdpau') makedepends=('mesa') options=('!libtool') -source=(http://www.splitted-desktop.com/~gbeauchesne/vdpau-video/${pkgname}-${pkgver}.tar.gz) -md5sums=('18870e007ecdc50a528861fa55556364') +#source=(http://www.splitted-desktop.com/~gbeauchesne/vdpau-video/${pkgname}-${pkgver}.tar.gz) +source=(http://www.slackware.com/~alien/slackbuilds/vdpau-video/build/vdpau-video-0.7.3.tar.gz ) + build() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -23,3 +24,4 @@ build() { # vim:set ts=2 sw=2 et: +md5sums=('18870e007ecdc50a528861fa55556364') diff --git a/abs/extra/vdpau-video/__changelog b/abs/extra/vdpau-video/__changelog new file mode 100644 index 0000000..2ee9561 --- /dev/null +++ b/abs/extra/vdpau-video/__changelog @@ -0,0 +1 @@ +corrected url -jm diff --git a/abs/extra/vim/Adding b/abs/extra/vim/Adding deleted file mode 100644 index e69de29..0000000 --- a/abs/extra/vim/Adding +++ /dev/null diff --git a/abs/extra/vim/Computing b/abs/extra/vim/Computing deleted file mode 100644 index e69de29..0000000 --- a/abs/extra/vim/Computing +++ /dev/null diff --git a/abs/extra/vim/Creating b/abs/extra/vim/Creating deleted file mode 100644 index e69de29..0000000 --- a/abs/extra/vim/Creating +++ /dev/null diff --git a/abs/extra/vim/Extracting b/abs/extra/vim/Extracting deleted file mode 100644 index e69de29..0000000 --- a/abs/extra/vim/Extracting +++ /dev/null diff --git a/abs/extra/vim/PKGBUILD b/abs/extra/vim/PKGBUILD index 942f1a7..d0c30fd 100644 --- a/abs/extra/vim/PKGBUILD +++ b/abs/extra/vim/PKGBUILD @@ -1,61 +1,67 @@ -# $Id: PKGBUILD 89882 2010-09-04 16:50:25Z ibiru $ +# $Id: PKGBUILD 163486 2012-07-13 05:33:54Z tdziedzic $ # Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> # Maintainer: tobias [ tobias at archlinux org ] # Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> pkgbase=vim -pkgname=(vim gvim vim-runtime) +pkgname=('vim' 'gvim' 'vim-runtime') _topver=7.3 -_patchlevel=3 +_patchlevel=600 +__hgrev=11d40fc82f11 +_versiondir="vim${_topver//./}" pkgver=${_topver}.${_patchlevel} -__hgrev=073ff46fe3 -pkgrel=3 +pkgrel=1 arch=('i686' 'x86_64') license=('custom:vim') url="http://www.vim.org" -makedepends=('gpm' 'perl' 'python2' 'ruby' 'libxt' 'desktop-file-utils' 'gtk2' - 'gettext' 'pkgconfig' 'mercurial' 'rsync' 'sed') -options=(force) -source=(pythoncomplete.vim::http://www.vim.org/scripts/download_script.php\?src_id=10872 - vimrc archlinux.vim gvim.desktop) -md5sums=('6e7adfbd5d26c1d161030ec203a7f243' - 'e57777374891063b9ca48a1fe392ac05' - '10353a61aadc3f276692d0e17db1478e' - '2be104c0372dd6dae19cb7968c03cd4f') - -__hgroot='http://vim.googlecode.com/hg/' -__hgrepo='vim' -__hgbranch='default' - -_versiondir="vim${_topver//./}" - -##### Build ##### - -build() { - cd ${srcdir} - - msg2 'Checking out source from Mercurial...' - - if [[ -d ${__hgrepo} ]]; then - cd ${__hgrepo} - hg pull -b ${__hgbranch}|| warning 'hg pull failed!' - hg update -r ${__hgrev} - else - hg clone -b ${__hgbranch} -u ${__hgrev} "${__hgroot}${__hgrepo}" ${__hgrepo} - cd ${__hgrepo} - fi - +makedepends=('gpm' 'python2' 'ruby' 'libxt' 'desktop-file-utils' 'gtk2' 'lua') +source=("ftp://ftp.archlinux.org/other/vim/vim-${pkgver}.tar.xz" + "ftp://ftp.archlinux.org/other/vim/vim-${pkgver}.tar.xz.sig" + 'pythoncomplete.vim::http://www.vim.org/scripts/download_script.php?src_id=10872' + 'vimrc' + 'archlinux.vim' + 'gvim.desktop') +sha1sums=('a1c54bde75476ace5d24d4c17f7a81818e80dfda' + '14d62fe89d8292a6d2f7c46e8c61bd59bbd01083' + '4d9dcfb32874aa5467e6f06e418aeb4e675daaf2' + '3494baf53a63581ba69f86a81293640ff681c5c5' + '25dd3c2ce436e73a367c8f73b68f7f6889682437' + '4a579cf66590d711f49c5dfb4a25e5df116ff7ba') + +# source PKGBUILD && mksource +mksource() { + + [[ -x /usr/bin/hg ]] || (echo "hg not found. Install mercurial." && return 1) + + __hgroot='http://vim.googlecode.com/hg/' + __hgrepo='vim' + __hgbranch='default' + + hg clone -b ${__hgbranch} -u ${__hgrev} "${__hgroot}${__hgrepo}" ${__hgrepo} + + pushd ${__hgrepo} if (( $(hg id -n) < $(hg id -nr ${__hgbranch}) )); then - warning 'You are not building the latest revision!' - warning "Consider updating __hgrev to $(hg id -r ${__hgbranch})." - sleep 10 + printf 'You are not building the latest revision!\n' + printf "Consider updating __hgrev to $(hg id -r ${__hgbranch}).\n" fi + popd + + mv vim ${pkgname}-${pkgver} + find ${pkgname}-${pkgver} -depth -type d -name .hg -exec rm -rf {} \; + rm ${pkgname}-${pkgver}/{.hgignore,.hgtags} + tar -cJf ${pkgname}-${pkgver}.tar.xz ${pkgname}-${pkgver}/* + rm -r ${pkgname}-${pkgver} + #gpg --detach-sign --use-agent -u ${GPGKEY} ${pkgname}-${pkgver}.tar.xz +} - cd .. - rm -rf vim-build gvim-build - rsync -a --exclude='.hg/' ${__hgrepo}/ vim-build +build() { + # remove -O2 because there is a crash with python because of it + # fedora br: https://bugzilla.redhat.com/show_bug.cgi?id=817196 + export CFLAGS="${CFLAGS/-O2 /}" - msg2 'Patching...' + cd "${srcdir}" + + cp -a ${pkgname}-${pkgver} vim-build # define the place for the global (g)vimrc file (set to /etc/vimrc) sed -i 's|^.*\(#define SYS_.*VIMRC_FILE.*"\) .*$|\1|' \ @@ -67,48 +73,56 @@ build() { vim-build/src/configure.in (cd vim-build/src && autoconf) - msg2 'Building...' - cp -a vim-build gvim-build - cd ${srcdir}/vim-build + cd "${srcdir}"/vim-build ./configure --prefix=/usr --localstatedir=/var/lib/vim \ - --mandir=/usr/share/man --with-compiledby=ArchLinux \ - --with-features=big --enable-gpm --enable-acl --with-x=no \ + --with-features=big --with-compiledby=ArchLinux \ + --enable-gpm --enable-acl --with-x=no \ --disable-gui --enable-multibyte --enable-cscope \ --disable-netbeans --enable-perlinterp --disable-pythoninterp \ - --disable-rubyinterp + --disable-python3interp --disable-rubyinterp --disable-luainterp make - cd ${srcdir}/gvim-build + cd "${srcdir}"/gvim-build ./configure --prefix=/usr --localstatedir=/var/lib/vim \ - --mandir=/usr/share/man --with-compiledby=ArchLinux \ - --with-features=big --enable-gpm --enable-acl --with-x=yes \ + --with-features=big --with-compiledby=ArchLinux \ + --enable-gpm --enable-acl --with-x=yes \ --enable-gui=gtk2 --enable-multibyte --enable-cscope \ --enable-netbeans --enable-perlinterp --enable-pythoninterp \ - --enable-rubyinterp + --disable-python3interp --enable-rubyinterp --enable-luainterp make } -##### Packaging ##### +check() { + # disable tests because they seem to freeze + + cd "${srcdir}"/vim-build + + #make test + + cd "${srcdir}"/gvim-build + + #make test +} package_vim() { pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor' - depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm' 'perl') + depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm') conflicts=('gvim') - cd ${srcdir}/vim-build - make -j1 VIMRCLOC=/etc DESTDIR=${pkgdir} install + cd "${srcdir}"/vim-build + make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install # provided by (n)vi in core - rm ${pkgdir}/usr/bin/{ex,view} + rm "${pkgdir}"/usr/bin/{ex,view} # delete some manpages - find ${pkgdir}/usr/share/man -type d -name 'man1' 2>/dev/null | \ + find "${pkgdir}"/usr/share/man -type d -name 'man1' 2>/dev/null | \ while read _mandir; do cd ${_mandir} rm -f ex.1 view.1 # provided by (n)vi @@ -116,89 +130,87 @@ package_vim() { done # Runtime provided by runtime package - rm -r ${pkgdir}/usr/share/vim + rm -r "${pkgdir}"/usr/share/vim # license - install -dm755 ${pkgdir}/usr/share/licenses/vim - ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \ - ${pkgdir}/usr/share/licenses/vim/license.txt + install -Dm644 "${srcdir}"/vim-${pkgver}/runtime/doc/uganda.txt \ + "${pkgdir}"/usr/share/licenses/${pkgname}/license.txt } package_gvim() { pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor (with advanced features, such as a GUI)' - depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm' 'perl' 'python2' 'ruby' 'libxt' - 'desktop-file-utils' 'gtk2') + depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm' 'ruby' 'libxt' + 'desktop-file-utils' 'gtk2' 'lua' 'python2') provides=("vim=${pkgver}-${pkgrel}") conflicts=('vim') install=gvim.install - cd ${srcdir}/gvim-build - make -j1 VIMRCLOC=/etc DESTDIR=${pkgdir} install + cd "${srcdir}"/gvim-build + make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install # provided by (n)vi in core - rm ${pkgdir}/usr/bin/{ex,view} + rm "${pkgdir}"/usr/bin/{ex,view} # delete some manpages - find ${pkgdir}/usr/share/man -type d -name 'man1' 2>/dev/null | \ + find "${pkgdir}"/usr/share/man -type d -name 'man1' 2>/dev/null | \ while read _mandir; do cd ${_mandir} rm -f ex.1 view.1 # provided by (n)vi done # Move the runtime for later packaging - mv ${pkgdir}/usr/share/vim ${srcdir}/runtime-install + mv "${pkgdir}"/usr/share/vim "${srcdir}"/runtime-install # freedesktop links - install -Dm644 ${srcdir}/gvim.desktop \ - ${pkgdir}/usr/share/applications/gvim.desktop - install -Dm644 runtime/vim48x48.png ${pkgdir}/usr/share/pixmaps/gvim.png + install -Dm644 "${srcdir}"/gvim.desktop \ + "${pkgdir}"/usr/share/applications/gvim.desktop + install -Dm644 runtime/vim48x48.png "${pkgdir}"/usr/share/pixmaps/gvim.png # license - install -dm755 ${pkgdir}/usr/share/licenses/gvim - ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \ - ${pkgdir}/usr/share/licenses/gvim/license.txt + install -Dm644 "${srcdir}"/vim-${pkgver}/runtime/doc/uganda.txt \ + "${pkgdir}"/usr/share/licenses/${pkgname}/license.txt } package_vim-runtime() { pkgdesc='Runtime for vim and gvim' - backup=(etc/vimrc) + depends=('perl' 'gawk') + backup=('etc/vimrc') # Install the runtime split from gvim - install -dm755 ${pkgdir}/usr/share - mv ${srcdir}/runtime-install ${pkgdir}/usr/share/vim + install -dm755 "${pkgdir}"/usr/share + mv "${srcdir}"/runtime-install "${pkgdir}"/usr/share/vim # Don't forget logtalk.dict - install -Dm644 ${srcdir}/gvim-build/runtime/ftplugin/logtalk.dict \ - ${pkgdir}/usr/share/vim/${_versiondir}/ftplugin/logtalk.dict + install -Dm644 "${srcdir}"/gvim-build/runtime/ftplugin/logtalk.dict \ + "${pkgdir}"/usr/share/vim/${_versiondir}/ftplugin/logtalk.dict # fix FS#17216 sed -i 's|messages,/var|messages,/var/log/messages.log,/var|' \ - ${pkgdir}/usr/share/vim/${_versiondir}/filetype.vim + "${pkgdir}"/usr/share/vim/${_versiondir}/filetype.vim # patch filetype.vim for better handling of pacman related files sed -i "s/rpmsave/pacsave/;s/rpmnew/pacnew/;s/,\*\.ebuild/\0,PKGBUILD*,*.install/" \ - ${pkgdir}/usr/share/vim/${_versiondir}/filetype.vim + "${pkgdir}"/usr/share/vim/${_versiondir}/filetype.vim sed -i "/find the end/,+3{s/changelog_date_entry_search/changelog_date_end_entry_search/}" \ - ${pkgdir}/usr/share/vim/${_versiondir}/ftplugin/changelog.vim + "${pkgdir}"/usr/share/vim/${_versiondir}/ftplugin/changelog.vim # make Aaron happy - install -Dm644 ${srcdir}/pythoncomplete.vim \ - ${pkgdir}/usr/share/vim/${_versiondir}/autoload/pythoncomplete.vim + install -Dm644 "${srcdir}"/pythoncomplete.vim \ + "${pkgdir}"/usr/share/vim/${_versiondir}/autoload/pythoncomplete.vim # rc files - install -Dm644 ${srcdir}/vimrc ${pkgdir}/etc/vimrc - install -Dm644 ${srcdir}/archlinux.vim \ - ${pkgdir}/usr/share/vim/vimfiles/archlinux.vim + install -Dm644 "${srcdir}"/vimrc "${pkgdir}"/etc/vimrc + install -Dm644 "${srcdir}"/archlinux.vim \ + "${pkgdir}"/usr/share/vim/vimfiles/archlinux.vim + + # rgb.txt file + install -Dm644 "${srcdir}"/vim-${pkgver}/runtime/rgb.txt \ + "${pkgdir}"/usr/share/vim/${_versiondir}/rgb.txt # license - install -dm755 ${pkgdir}/usr/share/licenses/vim-runtime + install -dm755 "${pkgdir}"/usr/share/licenses/vim-runtime ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \ - ${pkgdir}/usr/share/licenses/vim-runtime/license.txt + "${pkgdir}"/usr/share/licenses/vim-runtime/license.txt } # vim:set sw=2 sts=2 et: -md5sums=('6e7adfbd5d26c1d161030ec203a7f243' - '4ebb9bafd2e31542daff1ed17e327758' - '10353a61aadc3f276692d0e17db1478e' - '2be104c0372dd6dae19cb7968c03cd4f') - diff --git a/abs/extra/vim/__changelog b/abs/extra/vim/__changelog deleted file mode 100644 index 4cce0eb..0000000 --- a/abs/extra/vim/__changelog +++ /dev/null @@ -1,7 +0,0 @@ -Remove mouse support from /etc/vimrc. This new found ability is truely annoying. -# Changes to remove mouse support VERY IMPORTANT! -############################################################## - sed -i "s/mouse=a/mouse-=a/g" $startdir/pkg/etc/vimrc -################################################################# - - diff --git a/abs/extra/vim/gvim.desktop b/abs/extra/vim/gvim.desktop index 8c99660..675357d 100644 --- a/abs/extra/vim/gvim.desktop +++ b/abs/extra/vim/gvim.desktop @@ -1,42 +1,63 @@ [Desktop Entry] -Encoding=UTF-8 -Version=1.0 -Name=gVim -Name[eo]=VIM-fasado -Name[sv]=gVim -Name[xx]=xx -Comment=GTK2 enhanced vim text editor -Comment[ar]=Ů…Řرر نصŮص -Comment[bg]=ТекŃŃ‚ Редактор -Comment[de]=Texteditor -Comment[el]=ΔιοĎθωτής ΚειμÎνου -Comment[eo]=Tekstredaktilo -Comment[et]=Tekstiredaktor -Comment[eu]=Testu Editorea -Comment[fi]=Tekstieditori -Comment[he]=עורך ××§×ˇ× -Comment[is]=Textaritill -Comment[ja]=ă†ă‚ă‚ąăエă‡ă‚Łă‚ż -Comment[lt]=Teksto redaktorius -Comment[mt]=Editur tat-test -Comment[pt_BR]=Editor de Texto -Comment[ro]=Editor de text -Comment[ru]=редактор -Comment[sk]=TextovĂ˝ editor -Comment[sl]=Urejevalnik besedil -Comment[ta]=¯¨à ¦¾¡ÌôÀ¡Ç÷ -Comment[tr]=Metin DĂĽzenleyici -Comment[uk]=Редактор текŃтів -Comment[vi]=Trình soạn vÄn bản -Comment[xx]=xx -Comment[zh_CN]=文本编辑器 -Comment[zh_TW]=ć–‡ĺ—編輯器 -GenericName=Text Editor -Type=Application -TryExec=gvim -Exec=gvim +Name=Vi IMproved +Name[bg]=Vi Ăåäà êòîð +Name[ca]=Vi Millorat +Name[da]=Vi forbedret +Name[eo]=VIM +Name[et]=Täiustatud Vi (vim) +Name[fr]=Vi Ă©tendu (VIM) +Name[he]=רפושמ Vi +Name[hu]=Vi +Name[is]=Vi IMproved ritillinn +Name[it]=Vi iMproved +Name[no]=Vi IMproved (forbedret VI) +Name[pl]=Poprawiony VI (vim) +Name[ro]=VIM +Name[ru]=ĐŁĐ»ŃчŃенный VI +Name[sk]=Vi IMpreved +Name[sl]=Izboljšani vi (vim) +Name[sv]=Förbättrad Vi +Name[zh_CN.GB2312]=改进的 Vi +Comment=Powerful text editor with scripting functions and macro recorder +Comment[bg]=Ăåäà êòîð ñ ìĂîãî âúçìîæĂîñòè +Comment[ca]=Editor vi potent +Comment[cs]=MocnĂ˝ textovĂ˝ editor vi +Comment[da]=En kraftig vi tekstbehandler +Comment[de]=Ein leistungsfähiger vi-Editor +Comment[el]=ΠανίĎχυĎος διοĎθωτής vi +Comment[eo]=VIM similas al redaktilo "vi", sed havas aldonajn ecojn +Comment[es]=Una versiĂłn mejorada del editor vi +Comment[et]=Võimas tekstiredaktor vi +Comment[fi]=Tehokas vi-tekstieditori +Comment[fr]=Éditeur vi puissant +Comment[gl]=Potente editor vi +Comment[he]=Vi המצועה בר ךרועה +Comment[hr]=Napredni vi ureÄ‘ivaÄŤ +Comment[hu]=Vi szövegszerkesztĹ‘ +Comment[is]=Ă–flug Ăştgáfa vi ritilsins +Comment[it]=Un editor vi potenziato +Comment[ja]=強力ăŞViエă‡ă‚Łă‚ż +Comment[lt]=Galingas vi redaktorius +Comment[mk]=Моќен VI ŃредŃвач +Comment[nl]=Krachtige vi-editor +Comment[no]=En kraftig vi-redigerer +Comment[no_NY]=Kraftig vi-tekstredigeringsprogram +Comment[pl]=Edytor vi +Comment[pt]=Um poderoso editor de texto +Comment[ro]=Un editor de texte VI, puternic +Comment[ru]=Мощный текŃтовый редактор vi +Comment[sk]=SilnĂ˝ textovĂ˝ procesor vi +Comment[sl]=Zmogljivi urejevalnik vi +Comment[sr]=Moćni vi editor +Comment[sv]=En kraftfull texteditor +Comment[ta]=ºì¾¢Å¡öó¾ vi ¦¾¡ÌôÀ¡Ç÷ +Comment[tr]=GüçlĂĽ vi dĂĽzenleyicisi +Comment[uk]=ПотŃжний редактор vi +Comment[zh_CN.GB2312]=功č˝ĺĽşĺ¤§çš„ vi 编辑器 +MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; +Exec=gvim -f %F Icon=gvim +Type=Application Terminal=false -X-MultipleArgs=false -Categories=GTK;Application;Utility;TextEditor; -MimeType=application/mathml+xml;application/xhtml+xml;application/x-perl;application/x-python;application/x-shellscript;audio/x-mpegurl;audio/x-scpls;image/svg+xml;message/news;message/rfc822;text/calendar;text/css;text/english;text/html;text/mrml;text/plain;text/rdf;text/rss;text/rtf;text/sgml;text/vnd.wap.wml;text/x-adasrc;text/x-bibtex;text/x-chdr;text/x-c++hdr;text/x-csrc;text/x-c++src;text/x-c;text/x-objc;text/x-csv;text/x-diff;text/x-java;text/x-katefilelist;text/x-latex;text/x-log;text/x-lyx;text/x-makefile;text/xmcd;text/xml;text/x-moc;text/x-mswinurl;text/x-objcsrc;text/x-pascal;text/x-perl;text/x-php;text/x-php-source;text/x-python;text/x-tcl;text/x-tex;text/x-vcalendar;text/x-vcard;text/x-xslfo;text/x-xslt; +X-XClassHintResName=VIM +Categories=Utility;TextEditor; diff --git a/abs/extra/vim/gvim.install b/abs/extra/vim/gvim.install index 0a8d3b0..2eaa605 100644 --- a/abs/extra/vim/gvim.install +++ b/abs/extra/vim/gvim.install @@ -1,7 +1,5 @@ post_install() { - echo -n "Updating desktop and mime database..." update-desktop-database -q - echo "done." } post_upgrade() { diff --git a/abs/extra/vim/vimrc b/abs/extra/vim/vimrc index 9b4eaac..92d3ff9 100644 --- a/abs/extra/vim/vimrc +++ b/abs/extra/vim/vimrc @@ -9,7 +9,7 @@ " This line should not be removed as it ensures that various options are " properly set to work with the Vim-related packages. runtime! archlinux.vim -set mouse-=a + " If you prefer the old-style vim functionalty, add 'runtime! vimrc_example.vim' " Or better yet, read /usr/share/vim/vim72/vimrc_example.vim or the vim manual " and configure vim to your own liking! diff --git a/abs/extra/vlc-nogui/PKGBUILD b/abs/extra/vlc-nogui/PKGBUILD deleted file mode 100644 index ccbc1ae..0000000 --- a/abs/extra/vlc-nogui/PKGBUILD +++ /dev/null @@ -1,58 +0,0 @@ -# Maintainer: Alexsandr Pavlov <kidoz at mail dot ru> - -pkgname=vlc-nogui -pkgver=1.1.13 -pkgrel=1 -pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player" -arch=('i686' 'x86_64') -url="http://www.videolan.org/vlc/" -license=('GPL') -depends=('a52dec' 'faad2' 'fluidsynth' 'libmtp' 'libdvbpsi' 'lirc-utils' - 'libdca' 'libproxy' 'sdl_image' 'libdvdnav' - 'lua' 'libv4l' 'libcddb' 'smbclient' 'libmatroska' 'zvbi' - 'taglib' 'sysfsutils' 'libmpcdec' 'ffmpeg' 'xcb-util-keysyms' - 'libshout' 'libmad' 'fribidi' 'libmpeg2' 'libmodplug' - 'ttf-freefont' 'libxv' 'libass' 'xdg-utils' 'libxpm' 'libupnp') -makedepends=('alsa-lib' 'avahi' 'jack' 'live-media' 'pkgconfig' 'udev') -optdepends=('avahi: for service discovery using bonjour protocol' - 'libnotify: for notification plugin') -provides=('vlc') -conflicts=('vlc' 'vlc-plugin') -replaces=('vlc' 'vlc-plugin') -options=('!libtool') -source=(http://downloads.videolan.org/pub/videolan/vlc/${pkgver}/vlc-${pkgver}.tar.bz2) - -build() { - cd "${srcdir}/vlc-${pkgver}" - - sed -i -e 's:truetype/freefont:TTF:g' modules/misc/freetype.c - ./configure --prefix=/usr \ - --enable-faad \ - --enable-v4l \ - --enable-theora \ - --enable-flac \ - --enable-snapshot \ - --enable-ogg \ - --enable-shout \ - --enable-lirc \ - --enable-pvr \ - --enable-realrtsp \ - --disable-rpath \ - --disable-qt4 \ - --disable-skins2 \ - --disable-glx \ - --with-live555-tree=/usr/lib/live - make -} - -package() { - cd "${srcdir}/vlc-${pkgver}" - - make DESTDIR=${pkgdir}/ install - - rm -rf ${pkgdir}/usr/share/applications - rm -rf ${pkgdir}/usr/share/kde4 - rm -rf ${pkgdir}/usr/share/icons - rm ${pkgdir}/usr/share/vlc/vlc.ico -} -md5sums=('9678fb7a04808b6e0de63746d35e4bb1') diff --git a/abs/extra/vlc-nogui/__changelog b/abs/extra/vlc-nogui/__changelog deleted file mode 100644 index b20cb01..0000000 --- a/abs/extra/vlc-nogui/__changelog +++ /dev/null @@ -1,2 +0,0 @@ -2012-01-25: add 'libupnp' 'xcb-util-keysyms' to depends - bump to version 1.1.13 diff --git a/abs/extra/vorbis-tools/PKGBUILD b/abs/extra/vorbis-tools/PKGBUILD index ae03d35..7b54e44 100644 --- a/abs/extra/vorbis-tools/PKGBUILD +++ b/abs/extra/vorbis-tools/PKGBUILD @@ -1,10 +1,9 @@ -# $Id: PKGBUILD 77125 2010-04-10 21:21:48Z andrea $ -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: Judd Vinet <jvinet@zeroflux.org> +# $Id: PKGBUILD 149348 2012-02-07 02:25:07Z eric $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> pkgname=vorbis-tools pkgver=1.4.0 -pkgrel=2 +pkgrel=3 pkgdesc="Extra tools for Ogg-Vorbis" arch=('i686' 'x86_64') url='http://www.xiph.org/vorbis/' @@ -17,12 +16,11 @@ build() { cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr \ --without-speex \ - --enable-vcut || return 1 - make || return 1 + --enable-vcut + make } package() { cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 + make DESTDIR="${pkgdir}" install } - diff --git a/abs/extra/vte/PKGBUILD b/abs/extra/vte/PKGBUILD index 6b2f79e..d35c20c 100644 --- a/abs/extra/vte/PKGBUILD +++ b/abs/extra/vte/PKGBUILD @@ -1,24 +1,38 @@ -# $Id: PKGBUILD 99488 2010-11-14 20:01:04Z ibiru $ +# $Id: PKGBUILD 142691 2011-11-12 18:51:31Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=vte -pkgver=0.26.2 -pkgrel=1 -pkgdesc="Virtual Terminal Emulator library" +pkgver=0.28.2 +pkgrel=3 +pkgdesc="Virtual Terminal Emulator widget for use with GTK2" arch=('i686' 'x86_64') license=('LGPL') -depends=('gtk2>=2.22.0') -options=('!libtool') -makedepends=('pygtk>=2.22.0' 'intltool' 'gobject-introspection') +options=('!libtool' '!emptydirs') +depends=('gtk2' 'vte-common') +makedepends=('pygtk' 'intltool' 'gobject-introspection' 'pygobject2-devel') url="http://www.gnome.org" -source=(http://ftp.gnome.org/pub/GNOME/sources/vte/0.26/vte-${pkgver}.tar.bz2) -sha256sums=('f02c350340266c9515a98b8f69c72b4bdc53b352cd053624a63a7cb97ddec9bd') +source=(http://ftp.gnome.org/pub/GNOME/sources/vte/0.28/vte-$pkgver.tar.xz +make_alt_work.patch::http://git.gnome.org/browse/vte/patch/?id=b73782a28894e25ed146271f9d6c6775a6836199) +sha256sums=('86cf0b81aa023fa93ed415653d51c96767f20b2d7334c893caba71e42654b0ae' + '8307623b13bcaf214cc25207ee7afaf65575d334623460311c24437fbbae14d3') + build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ + cd "$srcdir/$pkgname-$pkgver" + #warning: type-punning to incomplete type might break strict-aliasing rules + export CFLAGS="$CFLAGS -fno-strict-aliasing" + + patch -Np1 -R -i "$srcdir/make_alt_work.patch" + + PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib/vte \ --localstatedir=/var --disable-static \ - --enable-introspection + --enable-introspection --with-gtk=2.0 make - make DESTDIR="${pkgdir}" install +} + +package(){ + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + + rm "$pkgdir/usr/lib/vte/gnome-pty-helper" } diff --git a/abs/extra/vte/vte-0.16.0-reaper-python-bindings.patch b/abs/extra/vte/vte-0.16.0-reaper-python-bindings.patch deleted file mode 100644 index 47d6ce6..0000000 --- a/abs/extra/vte/vte-0.16.0-reaper-python-bindings.patch +++ /dev/null @@ -1,62 +0,0 @@ -diff -NarU 3 vte-0.16.0.orig/python/vte.defs vte-0.16.0/python/vte.defs ---- vte-0.16.0.orig/python/vte.defs 2007-02-26 22:05:02.000000000 +0100 -+++ vte-0.16.0/python/vte.defs 2007-03-14 20:44:55.000000000 +0100 -@@ -7,6 +7,14 @@ - (gtype-id "VTE_TYPE_TERMINAL") - ) - -+(define-object Reaper -+ (in-module "Vte") -+ (parent "GObject") -+ (c-name "VteReaper") -+ (gtype-id "VTE_TYPE_REAPER") -+) -+ -+ - ;; Enumerations and flags ... - - (define-enum TerminalEraseBinding -@@ -701,4 +709,14 @@ - (return-type "const-char*") - ) - -+;; From ../src/reaper.h -+(define-function vte_reaper_get_type -+ (c-name "vte_reaper_get_type") -+ (return-type "GtkType") -+) -+ -+(define-function reaper_get -+ (c-name "vte_reaper_get") -+ (return-type "VteReaper*") -+) - -diff -NarU 3 vte-0.16.0.orig/python/vte.override vte-0.16.0/python/vte.override ---- vte-0.16.0.orig/python/vte.override 2007-02-26 22:05:02.000000000 +0100 -+++ vte-0.16.0/python/vte.override 2007-03-14 20:46:12.000000000 +0100 -@@ -7,12 +7,14 @@ - #include <pygobject.h> - #include <gtk/gtk.h> - #include "../src/vte.h" -+#include "../src/reaper.h" - %% - modulename vte - %% - import gtk.gdk.Pixbuf as PyGdkPixbuf_Type - import gtk.MenuShell as PyGtkMenuShell_Type - import gtk.Widget as PyGtkWidget_Type -+import gobject.GObject as PyGObject_Type - %% - override vte_terminal_feed kwargs - static PyObject * -diff -NarU 3 vte-0.16.0.orig/python/vtemodule.c vte-0.16.0/python/vtemodule.c ---- vte-0.16.0.orig/python/vtemodule.c 2007-02-26 22:05:02.000000000 +0100 -+++ vte-0.16.0/python/vtemodule.c 2007-03-14 20:47:12.000000000 +0100 -@@ -25,6 +25,7 @@ - #include <pygobject.h> - #include <pygtk/pygtk.h> - #include "../src/vte.h" -+#include "../src/reaper.h" - - extern void pyvte_register_classes(PyObject * d); - extern PyMethodDef pyvte_functions[]; diff --git a/abs/extra/vte3/PKGBUILD b/abs/extra/vte3/PKGBUILD new file mode 100644 index 0000000..1019be3 --- /dev/null +++ b/abs/extra/vte3/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 160601 2012-06-02 20:33:51Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgbase=vte3 +pkgname=(vte3 vte-common) +pkgver=0.32.2 +pkgrel=1 +pkgdesc="Virtual Terminal Emulator widget for use with GTK3" +arch=('i686' 'x86_64') +license=('LGPL') +options=('!libtool' '!emptydirs') +makedepends=('intltool' 'gobject-introspection' 'gtk3') +url="http://www.gnome.org" +source=(http://ftp.gnome.org/pub/GNOME/sources/vte/${pkgver%.*}/vte-$pkgver.tar.xz) +sha256sums=('d69ec071f7a380d8b8b981b35a9a0b891f37c4b6b17d08407f66ac98d619486a') + +build() { + cd "vte-$pkgver" + ./configure --prefix=/usr --sysconfdir=/etc \ + --libexecdir=/usr/lib/vte \ + --localstatedir=/var --disable-static \ + --enable-introspection + make +} + +package_vte3(){ + depends=('gtk3' 'vte-common') + cd "vte-$pkgver" + make DESTDIR="$pkgdir" install + + rm "$pkgdir"/usr/lib/vte/gnome-pty-helper +} + +package_vte-common() { + pkgdesc="Common files used by vte and vte3" + cd "vte-$pkgver" + + make -C gnome-pty-helper DESTDIR="$pkgdir" install +} diff --git a/abs/extra/wavpack/PKGBUILD b/abs/extra/wavpack/PKGBUILD index 87e19c3..c27e4dc 100644 --- a/abs/extra/wavpack/PKGBUILD +++ b/abs/extra/wavpack/PKGBUILD @@ -1,29 +1,33 @@ -# $Id: PKGBUILD 69146 2010-02-18 00:37:49Z dgriffiths $ -# Maintainer: François Charette <firmicus ατ gmx δοτ net> +# $Id: PKGBUILD 146400 2012-01-10 20:33:06Z andrea $ +# Maintainer: +# Contributor: François Charette <firmicus ατ gmx δοτ net> # Contributor: Shinlun Hsieh <yngwiexx@yahoo.com.tw> # Contributor: Michal Hybner <dta081@gmail.com> + pkgname=wavpack pkgver=4.60.1 -pkgrel=1 +pkgrel=2 pkgdesc="Audio compression format with lossless, lossy, and hybrid compression modes" arch=('i686' 'x86_64') url="http://www.wavpack.com/" license=('custom') depends=('glibc') options=('!libtool') -source=(http://www.wavpack.com/${pkgname}-${pkgver}.tar.bz2) +source=("http://www.wavpack.com/${pkgname}-${pkgver}.tar.bz2") md5sums=('7bb1528f910e4d0003426c02db856063') build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --enable-mmx --disable-static || return 1 - make || return 1 + cd ${srcdir}/${pkgname}-${pkgver} + ./configure --prefix=/usr \ + --enable-mmx \ + --disable-static + make } package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install || return 1 - install -m755 -d ${pkgdir}/usr/share/licenses/${pkgname} - install -m644 license.txt ${pkgdir}/usr/share/licenses/${pkgname}/ || return 1 - rm -f ${pkgdir}/usr/lib/*.a + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + + install -Dm644 license.txt \ + ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE } diff --git a/abs/extra/web-on-linhes/PKGBUILD b/abs/extra/web-on-linhes/PKGBUILD index 2c68542..ec7965c 100644 --- a/abs/extra/web-on-linhes/PKGBUILD +++ b/abs/extra/web-on-linhes/PKGBUILD @@ -3,18 +3,21 @@ pkgname=web-on-linhes pkgver=1.00.0 -pkgrel=4 +pkgrel=5 pkgdesc="Added multiple websites with 10' UIs to Play Online Streams." arch=('i686' 'x86_64') license=('GPL2') url="http://www.linhes.org/" -depends=('chromium' 'flashplugin' 'linhes-scripts>=7-29') +depends=('chromium' 'flashplugin' 'linhes-scripts>=7-29' ) install=web-on-linhes.install -source=('web-on-linhes.sh') +source=('web-on-linhes.sh' 'web-on-linhes_is.conf') build() { cd ${srcdir} install -d ${pkgdir}/usr/LH/bin install -D -m755 *.sh ${pkgdir}/usr/LH/bin + #add in file for gen_is.xml + install -D -m0744 ${srcdir}/web-on-linhes_is.conf ${pkgdir}/etc/gen_is_xml.d/web-on-linhes_is.conf } -md5sums=('bf15498dcbdc3852aca9cccb0aacd913') +md5sums=('bf15498dcbdc3852aca9cccb0aacd913' + 'c342f02c88728b227f02018658d6ee53') diff --git a/abs/extra/web-on-linhes/web-on-linhes.install b/abs/extra/web-on-linhes/web-on-linhes.install index 15a5056..93f64fa 100644 --- a/abs/extra/web-on-linhes/web-on-linhes.install +++ b/abs/extra/web-on-linhes/web-on-linhes.install @@ -1,129 +1,12 @@ # arg 1: the new package version post_install() { - mv /usr/share/mythtv/themes/defaultmenu/is.xml /tmp - grep -v -e /mythmenu /tmp/is.xml > /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Google Spotlight</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.google.com/tv/spotlight-gallery.html</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Blip tv</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://blip.tv/?skin=googletv</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Chow</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.chow.com/tv</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Clicker TV</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://tv.clicker.com/</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Crackle</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.crackle.com/gtv/</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Dailymotion</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://iptv-app.dailymotion.com/dm-front-googletv/dojoroot/app/pages/webkit/index.jsp?&qlang=us</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Flixster</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.flixster.com/tv/google</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Fraboom</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://fraboom.com/google/tv/ </action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>KQED</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://kqed.tv/</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Revision 3</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://tv.revision3.com</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>The Onion</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.theonion.com/video/googletv/</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>TuneIn </text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://tv.tunein.com/</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>Vimeo</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.vimeo.com/couchmode</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo " <button>" >> /tmp/is.xml.tmp - echo " <type>STREAM</type>" >> /tmp/is.xml.tmp - echo " <text>YouTube</text>" >> /tmp/is.xml.tmp - echo " <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.youtube.com/leanback</action>" >> /tmp/is.xml.tmp - echo " </button>" >> /tmp/is.xml.tmp - echo "<!--#WebOnTV-->" >> /tmp/is.xml.tmp - echo "" >> /tmp/is.xml.tmp - echo "</mythmenu>" >> /tmp/is.xml.tmp - mv /tmp/is.xml.tmp /usr/share/mythtv/themes/defaultmenu/is.xml + gen_is_xml.py } post_upgrade() { - post_remove $1 - post_install $1 + gen_is_xml.py } post_remove() { - mv /usr/share/mythtv/themes/defaultmenu/is.xml /tmp/is.xml.tmp - sed -e '/\#WebOn/,/\#WebOn/d' < /tmp/is.xml.tmp > /usr/share/mythtv/themes/defaultmenu/is.xml + gen_is_xml.py } op=$1 diff --git a/abs/extra/web-on-linhes/web-on-linhes_is.conf b/abs/extra/web-on-linhes/web-on-linhes_is.conf new file mode 100755 index 0000000..0e9ff60 --- /dev/null +++ b/abs/extra/web-on-linhes/web-on-linhes_is.conf @@ -0,0 +1,111 @@ + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Google Spotlight</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.google.com/tv/spotlight-gallery.html</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Blip tv</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://blip.tv/?skin=googletv</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Chow</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.chow.com/tv</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Clicker TV</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://tv.clicker.com/</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Crackle</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.crackle.com/gtv/</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Dailymotion</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://iptv-app.dailymotion.com/dm-front-googletv/dojoroot/app/pages/webkit/index.jsp?&qlang=us</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Flixster</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.flixster.com/tv/google</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Fraboom</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://fraboom.com/google/tv/ </action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>KQED</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://kqed.tv/</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Revision 3</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://tv.revision3.com</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>The Onion</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.theonion.com/video/googletv/</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>TuneIn </text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://tv.tunein.com/</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>Vimeo</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.vimeo.com/couchmode</action> + </button> + <!--#WebOnTV--> + + <!--#WebOnTV--> + <button> + <type>STREAM</type> + <text>YouTube</text> + <action>EXEC /usr/LH/bin/web-on-linhes.sh --no-first-run --kiosk http://www.youtube.com/leanback</action> + </button> + <!--#WebOnTV--> diff --git a/abs/extra/community/wiiuse/PKGBUILD b/abs/extra/wiiuse/PKGBUILD index d8b1e2b..d8b1e2b 100644 --- a/abs/extra/community/wiiuse/PKGBUILD +++ b/abs/extra/wiiuse/PKGBUILD diff --git a/abs/extra/community/wiiuse/wiiuse.install b/abs/extra/wiiuse/wiiuse.install index d856696..d856696 100644 --- a/abs/extra/community/wiiuse/wiiuse.install +++ b/abs/extra/wiiuse/wiiuse.install diff --git a/abs/extra/wireless-regdb/PKGBUILD b/abs/extra/wireless-regdb/PKGBUILD index 60628d6..0a5f163 100644 --- a/abs/extra/wireless-regdb/PKGBUILD +++ b/abs/extra/wireless-regdb/PKGBUILD @@ -1,4 +1,4 @@ -# $Id$ +# $Id: PKGBUILD 141966 2011-11-03 18:52:54Z thomas $ # Maintainer: Thomas Bächler <thomas@archlinux.org> pkgname=wireless-regdb diff --git a/abs/extra/wireshark/PKGBUILD b/abs/extra/wireshark/PKGBUILD index 3d6b90e..31fec18 100644 --- a/abs/extra/wireshark/PKGBUILD +++ b/abs/extra/wireshark/PKGBUILD @@ -1,29 +1,38 @@ -# $Id: PKGBUILD 94904 2010-10-12 06:47:49Z guillaume $ -# Maintainer: Guillaume ALAUX <guillaume at alaux dot net> +# $Id: PKGBUILD 168916 2012-10-16 14:27:05Z guillaume $ +# Maintainer: Guillaume ALAUX <guillaume@archlinux.org> # Contributor: Florian Pritz <bluewind at jabber dot ccc dot de> -pkgname=(wireshark-cli wireshark-gtk) +pkgname=('wireshark-cli' 'wireshark-gtk') pkgbase=wireshark -pkgver=1.4.1 -pkgrel=1 +pkgver=1.8.3 +pkgrel=2 arch=('i686' 'x86_64') license=('GPL2') -makedepends=('bison' 'flex' 'gtk2' 'heimdal' 'libpcap' 'bash' 'gnutls' 'libcap') +makedepends=('bison' 'flex' 'gtk2' 'krb5' 'libcap' 'libpcap' 'bash' 'gnutls' + 'libgcrypt' 'lua' 'python2' ) url="http://www.wireshark.org/" options=(!libtool) -source=(http://www.wireshark.org/download/src/${pkgbase}-${pkgver}.tar.bz2) -md5sums=('1719d20a10990e7c2cb261df7021aab6') +source=(http://www.wireshark.org/download/src/${pkgbase}-${pkgver}.tar.bz2 + enable_version.patch) +sha1sums=('3e1322eea5794c71de752b7923af9379bcc95299' + '9a56a9153b6903e508b0375cde4f6e57ffc544e6') build() { cd "${srcdir}/${pkgbase}-${pkgver}" - export CFLAGS="-fno-unit-at-a-time ${CFLAGS}" - ./configure --prefix=/usr --with-ssl + patch -p0 < ${srcdir}/enable_version.patch + + ./autogen.sh + ./configure \ + --prefix=/usr \ + --with-ssl \ + --with-zlib=yes \ + --with-lua make all } package_wireshark-cli() { pkgdesc="A free network protocol analyzer for Unix/Linux and Windows - CLI version" - depends=('heimdal' 'libpcap' 'bash' 'gnutls' 'libcap' 'glib2') + depends=('krb5' 'libcap' 'libpcap' 'bash' 'gnutls' 'libgcrypt' 'glib2' 'lua' ) install=wireshark.install conflicts=(wireshark) @@ -34,21 +43,35 @@ package_wireshark-cli() { #wireshark uid group is 150 chgrp 150 "${pkgdir}/usr/bin/dumpcap" chmod 754 "${pkgdir}/usr/bin/dumpcap" - rm "$pkgdir/usr/bin/wireshark" + rm "${pkgdir}/usr/bin/wireshark" + + # Headers + install -dm755 ${pkgdir}/usr/include/${pkgbase}/{epan/{crypt,dfilter,dissectors,ftypes},wiretap,wsutil} + + install -m644 color.h config.h register.h "${pkgdir}/usr/include/${pkgbase}" + for d in epan epan/crypt epan/dfilter epan/dissectors epan/ftypes wiretap wsutil; do + install -m644 ${d}/*.h ${pkgdir}/usr/include/${pkgbase}/${d} + done } package_wireshark-gtk() { pkgdesc="A free network protocol analyzer for Unix/Linux and Windows - GTK frontend" - depends=('gtk2' 'wireshark-cli') + depends=('gtk2' 'wireshark-cli' 'desktop-file-utils' 'hicolor-icon-theme') install=wireshark-gtk.install replaces=(wireshark) conflicts=(wireshark) cd "${srcdir}/${pkgbase}-${pkgver}" - install -Dm755 .libs/wireshark "$pkgdir/usr/bin/wireshark" + install -Dm755 .libs/wireshark "${pkgdir}/usr/bin/wireshark" for d in 16 32 48; do - install -Dm644 image/hi${d}-app-wireshark.png ${pkgdir}/usr/share/icons/hicolor/${d}x${d}/apps/wireshark.png + install -Dm644 image/hi${d}-app-wireshark.png \ + "${pkgdir}/usr/share/icons/hicolor/${d}x${d}/apps/wireshark.png" + done + + for d in 16 24 32 48 64 128 256 ; do + install -Dm644 image/WiresharkDoc-${d}.png \ + "${pkgdir}/usr/share/icons/hicolor/${d}x${d}/mimetypes/application-vnd.tcpdump.pcap.png" done - install -Dm644 wireshark.desktop ${pkgdir}/usr/share/applications/wireshark.desktop + install -Dm644 wireshark.desktop "${pkgdir}/usr/share/applications/wireshark.desktop" } diff --git a/abs/extra/wireshark/__changelog b/abs/extra/wireshark/__changelog new file mode 100644 index 0000000..50a34f6 --- /dev/null +++ b/abs/extra/wireshark/__changelog @@ -0,0 +1 @@ +removed portaudio diff --git a/abs/extra/wireshark/enable_version.patch b/abs/extra/wireshark/enable_version.patch new file mode 100644 index 0000000..18ad14b --- /dev/null +++ b/abs/extra/wireshark/enable_version.patch @@ -0,0 +1,12 @@ +--- configure.in.init 2012-05-24 20:08:15.040038922 +0000 ++++ configure.in 2012-05-24 20:08:27.869944008 +0000 +@@ -185,7 +185,7 @@ + [use gnutls library @<:@default=yes@:>@]), + with_gnutls="$withval", with_gnutls="yes") + if test "x$with_gnutls" = "xyes"; then +- PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 1.2.0 gnutls < 3], ++ PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 1.2.0], + [ + echo "gnuTLS found, enabling ssl decryption" + AC_DEFINE(HAVE_LIBGNUTLS, 1, [Define to use gnutls library]) + diff --git a/abs/extra/wireshark/wireshark-gtk.install b/abs/extra/wireshark/wireshark-gtk.install index 6b1b64b..771e497 100644 --- a/abs/extra/wireshark/wireshark-gtk.install +++ b/abs/extra/wireshark/wireshark-gtk.install @@ -1,5 +1,6 @@ post_install() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor + update-desktop-database -q } post_upgrade() { diff --git a/abs/extra/wireshark/wireshark.install b/abs/extra/wireshark/wireshark.install index 8936256..69adcc4 100644 --- a/abs/extra/wireshark/wireshark.install +++ b/abs/extra/wireshark/wireshark.install @@ -1,19 +1,18 @@ post_install() { - if getent group wireshark >/dev/null 2>&1; then - groupmod -g 150 wireshark &>/dev/null - else - groupadd -g 150 wireshark &>/dev/null - fi - setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap + /usr/bin/getent group wireshark >/dev/null 2>&1 || usr/sbin/groupadd -g 150 wireshark &>/dev/null + + /usr/sbin/setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap echo "NOTE: To run wireshark as normal user you have to add yourself into wireshark group" } post_upgrade() { - post_install $1 + /usr/bin/getent group wireshark >/dev/null 2>&1 || usr/sbin/groupadd -g 150 wireshark &>/dev/null + + /usr/sbin/setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap } post_remove() { - if getent group wireshark >/dev/null 2>&1; then - groupdel wireshark + if /usr/bin/getent group wireshark >/dev/null 2>&1; then + /usr/sbin/groupdel wireshark fi } diff --git a/abs/extra/wol/PKGBUILD b/abs/extra/wol/PKGBUILD index 87bfc70..1920390 100755..100644 --- a/abs/extra/wol/PKGBUILD +++ b/abs/extra/wol/PKGBUILD @@ -1,27 +1,28 @@ -# $Id: PKGBUILD 17446 2010-05-24 10:42:15Z spupykin $ +# $Id: PKGBUILD 58676 2011-11-17 14:54:30Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Anders Bergh <anders1@gmail.com> # Contributor: Markus Volkmann <mcfock@counterstrike.de> pkgname=wol pkgver=0.7.1 -pkgrel=4 +pkgrel=5 arch=('i686' 'x86_64') -pkgdesc="wol implements Wake On LAN functionality in a small program. It wakes up hardware that is Magic Packet compliant." +pkgdesc="Wake On LAN functionality in a small program. It wakes up hardware that is Magic Packet compliant" license=("GPL") -depends=(sh) +depends=() url="http://ahh.sourceforge.net/wol/" install=wol.install source=(http://downloads.sourceforge.net/ahh/wol-$pkgver.tar.gz) md5sums=('c2fa9d7e771134ac8c89d56b8197d4ca') build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make prefix=$startdir/pkg/usr install || return 1 + cd $srcdir/$pkgname-$pkgver + ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info + make +} - mv $pkgdir/usr/man $pkgdir/usr/share/ && \ - mv $pkgdir/usr/info $pkgdir/usr/share/ && \ +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install rm $pkgdir/usr/share/info/dir } diff --git a/abs/extra/wxgtk/PKGBUILD b/abs/extra/wxgtk/PKGBUILD index 7eb97bb..62dfb90 100644 --- a/abs/extra/wxgtk/PKGBUILD +++ b/abs/extra/wxgtk/PKGBUILD @@ -1,26 +1,26 @@ -# $Id: PKGBUILD 99629 2010-11-15 21:53:38Z eric $ -# Maintainer: Eric Belanger <eric@archlinux.org> +# $Id: PKGBUILD 148966 2012-02-05 11:58:12Z ibiru $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> pkgname=wxgtk -pkgver=2.8.11 -pkgrel=2 +pkgver=2.8.12.1 +pkgrel=3 pkgdesc="GTK+ implementation of wxWidgets API for GUI" arch=('i686' 'x86_64') url="http://wxwidgets.org" license=('custom:wxWindows') -depends=('gtk2' 'gstreamer0.10-base' 'libgl' 'libxxf86vm') +depends=('gtk2' 'gstreamer0.10-base' 'libgl' 'libxxf86vm' 'libsm') makedepends=('gstreamer0.10-base-plugins' 'gconf' 'mesa') -#source=(http://downloads.sourceforge.net/wxpython/wxPython-src-${pkgver}.tar.bz2) -source=(http://downloads.sourceforge.net/wxwindows/wxGTK-${pkgver}.tar.bz2) -md5sums=('6040933d200037f90f6aa1c5169e7ec6') -sha1sums=('e979d9d2b1ee5bd10e90fd00b02f3306327c661a') +#source=(http://downloads.sourceforge.net/wxwindows/wxGTK-${pkgver}.tar.bz2) +source=(http://downloads.sourceforge.net/wxpython/wxPython-src-${pkgver}.tar.bz2) +sha1sums=('05688dc03d61631750f5904273122bb40a2115f5') build() { -# cd "${srcdir}/wxPython-src-${pkgver}" - cd "${srcdir}/wxGTK-${pkgver}" + cd "${srcdir}/wxPython-src-${pkgver}" +# cd "${srcdir}/wxGTK-${pkgver}" ./configure --prefix=/usr --libdir=/usr/lib --with-gtk=2 --with-opengl --enable-unicode \ - --enable-graphics_ctx --disable-optimize --enable-mediactrl \ - --with-libpng=sys --with-libxpm=sys --with-libjpeg=sys --with-libtiff=sys + --enable-graphics_ctx --disable-optimize --enable-mediactrl --with-regex=builtin \ + --with-libpng=sys --with-libxpm=sys --with-libjpeg=sys --with-libtiff=sys \ + --disable-precomp-headers make make -C locale allmo cd contrib/src @@ -28,7 +28,8 @@ build() { } package() { - cd "${srcdir}/wxGTK-${pkgver}" + cd "${srcdir}/wxPython-src-${pkgver}" +# cd "${srcdir}/wxGTK-${pkgver}" make DESTDIR="${pkgdir}" install cd contrib/src make DESTDIR="${pkgdir}" install diff --git a/abs/extra/wxgtk/__changelog b/abs/extra/wxgtk/__changelog deleted file mode 100644 index 3bf8bed..0000000 --- a/abs/extra/wxgtk/__changelog +++ /dev/null @@ -1 +0,0 @@ -remove libgnomeprint diff --git a/abs/extra/wxpython/ChangeLog b/abs/extra/wxpython/ChangeLog deleted file mode 100644 index 02c759e..0000000 --- a/abs/extra/wxpython/ChangeLog +++ /dev/null @@ -1,48 +0,0 @@ -2010-08-21 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.11.0-2 - * Rebuilt for python2 - -2010-06-03 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.11.0-1 - * Upstream update - -2010-05-08 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.10.1-2 - * Rebuilt against wxgtk 2.8.11 - * Added mediactrl support (close FS#18522) - -2009-05-18 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.10.1-1 - * Upstream update - * Added patch for editra - -2009-05-05 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.9.2-2 - * Rebuilt against wxgtk 2.8.10 - -2009-03-06 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.9.2-1 - * Upstream update - -2008-10-28 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.9.1-1 - * Upstream update - * Python 2.6 rebuild - -2008-08-19 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.8.1-1 - * Upstream update - -2008-07-05 Eric Belanger <eric@archlinux.org> - - * wxpython 2.8.8.0-1 - * Upstream update - * Added ChangeLog diff --git a/abs/extra/wxpython/PKGBUILD b/abs/extra/wxpython/PKGBUILD deleted file mode 100644 index b9375cc..0000000 --- a/abs/extra/wxpython/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 88207 2010-08-21 05:14:19Z eric $ -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: Andrew Wright <andreww@photism.org> - -pkgname=wxpython -pkgver=2.8.11.0 -pkgrel=2 -pkgdesc="A wxWidgets GUI toolkit for Python" -arch=('i686' 'x86_64') -license=('custom:wxWindows') -url="http://www.wxpython.org" -depends=('wxgtk' 'python2') -makedepends=('mesa') -changelog=ChangeLog -source=(http://downloads.sourceforge.net/wxpython/wxPython-src-${pkgver}.tar.bz2 editra-aui.diff) -md5sums=('63f73aae49e530852db56a31b57529fa' '06c637c34c1570d8c82b870ce19c0622') -sha1sums=('18982edc236a1d87e4eef018928358c925aa5b17' '077fe341bf8822647934d6b1ea82ce9b0adbf93a') - -build() { - cd "${srcdir}/wxPython-src-${pkgver}" - patch -p1 < ../editra-aui.diff - ./configure --prefix=/usr --libdir=/usr/lib --with-gtk=2 --with-opengl --enable-unicode \ - --enable-graphics_ctx --with-gnomeprint --disable-optimize --enable-mediactrl \ - --with-libpng=sys --with-libxpm=sys --with-libjpeg=sys --with-libtiff=sys - cd "${srcdir}/wxPython-src-${pkgver}/wxPython" - python2 setup.py WXPORT=gtk2 UNICODE=1 build -} - -package() { - cd "${srcdir}/wxPython-src-${pkgver}/wxPython" - python2 setup.py WXPORT=gtk2 UNICODE=1 install --root="${pkgdir}" - install -D -m644 ../docs/licence.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} diff --git a/abs/extra/wxpython/editra-aui.diff b/abs/extra/wxpython/editra-aui.diff deleted file mode 100644 index afdcf9f..0000000 --- a/abs/extra/wxpython/editra-aui.diff +++ /dev/null @@ -1,11 +0,0 @@ -diff -Naur wxPython-src-2.8.11.0-orig/wxPython/setup.py wxPython-src-2.8.11.0/wxPython/setup.py ---- wxPython-src-2.8.11.0-orig/wxPython/setup.py 2010-06-04 04:15:47.000000000 -0400 -+++ wxPython-src-2.8.11.0/wxPython/setup.py 2010-06-04 04:18:36.000000000 -0400 -@@ -893,6 +893,7 @@ - 'wx.tools.Editra.src.eclib', - 'wx.tools.Editra.src.ebmlib', - 'wx.tools.Editra.src.extern', -+ 'wx.tools.Editra.src.extern.aui', - 'wx.tools.Editra.src.syntax', - ] - diff --git a/abs/extra/x11vnc/PKGBUILD b/abs/extra/x11vnc/PKGBUILD index 5672669..323462d 100644 --- a/abs/extra/x11vnc/PKGBUILD +++ b/abs/extra/x11vnc/PKGBUILD @@ -1,30 +1,37 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ -# Maintainer: damir <damir@archlinux.org> +# $Id: PKGBUILD 168731 2012-10-15 02:00:18Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: damir <damir@archlinux.org> pkgname=x11vnc -pkgver=0.9.12 -pkgrel=2 -pkgdesc="a VNC server for real X displays" -arch=("i686" "x86_64") -license=("GPL2") -url="http://www.karlrunge.com/x11vnc/" -source=("http://downloads.sourceforge.net/libvncserver/${pkgname}-${pkgver}.tar.gz") -depends=('openssl' 'libjpeg' 'zlib' 'libx11' 'libxtst' 'libxinerama' - 'libxdamage' 'libxrandr' 'avahi' 'recordproto') -install=x11vnc.install +pkgver=0.9.13 +pkgrel=3 +pkgdesc='VNC server for real X displays' +url='http://www.karlrunge.com/x11vnc/' +arch=('i686' 'x86_64') +license=('GPL2') +depends=('openssl' 'libjpeg' 'libxtst' 'libxinerama' 'libxdamage' 'libxrandr' 'avahi') +optdepends=('tk: for GUI support') +backup=('etc/conf.d/x11vnc') +source=("http://downloads.sourceforge.net/project/libvncserver/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz" + 'service' + 'conf.d' + 'rc.d') +sha1sums=('f011d81488ac94dc8dce2d88739c23bd85a976fa' + '53e1ed7f84518a699a29607a03bee2321f9f9624' + '11011cce06511e9ba61672a1c80bb63a3a187539' + '477892cf0f0020043444b7493c80684762ded506') build() { - - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --mandir=/usr/share/man - make || return 1 - + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --mandir=/usr/share/man + make } package() { - - cd ${srcdir}/${pkgname}-${pkgver} - make prefix=${pkgdir}/usr install || return 1 - + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -Dm755 ../rc.d "${pkgdir}/etc/rc.d/x11vnc" + install -Dm644 ../conf.d "${pkgdir}/etc/conf.d/x11vnc" + install -Dm644 ../service "${pkgdir}/usr/lib/systemd/system/x11vnc.service" + rm -fr "${pkgdir}"/usr/include/rfb # provided by libvncserver } -md5sums=('1498a68d02aa7b6c97bf746c073c8d00') diff --git a/abs/extra/x11vnc/conf.d b/abs/extra/x11vnc/conf.d new file mode 100644 index 0000000..8a81e32 --- /dev/null +++ b/abs/extra/x11vnc/conf.d @@ -0,0 +1,5 @@ +# +# Parameters to be passed to x11vnc +# + +X11VNC_ARGS="" diff --git a/abs/extra/x11vnc/rc.d b/abs/extra/x11vnc/rc.d new file mode 100644 index 0000000..b5f2a64 --- /dev/null +++ b/abs/extra/x11vnc/rc.d @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/x11vnc + +PID=$(pidof -o %PPID /usr/bin/x11vnc) +case "$1" in + start) + stat_busy "Starting x11vnc" + [[ -z "$PID" ]] && /usr/bin/x11vnc $X11VNC_ARGS &> /dev/null & + if [[ $? -gt 0 ]]; then + stat_fail + else + add_daemon x11vnc + stat_done + fi + ;; + stop) + stat_busy "Stopping x11vnc" + [[ ! -z "$PID" ]] && kill $PID &> /dev/null + if [[ $? -gt 0 ]]; then + stat_fail + else + rm_daemon x11vnc + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/extra/x11vnc/service b/abs/extra/x11vnc/service new file mode 100644 index 0000000..0ccc2fe --- /dev/null +++ b/abs/extra/x11vnc/service @@ -0,0 +1,7 @@ +[Unit] +Description=VNC Server for X11 +Requires=graphical.target +After=graphical.target + +[Service] +ExecStart=/usr/bin/x11vnc diff --git a/abs/extra/x11vnc/x11vnc.install b/abs/extra/x11vnc/x11vnc.install deleted file mode 100644 index 63af505..0000000 --- a/abs/extra/x11vnc/x11vnc.install +++ /dev/null @@ -1,26 +0,0 @@ -post_install() { - if [ -f /home/mythtv/.fluxbox/apps ] ; then - if [ -n `/bin/grep x11vnc /home/mythtv/.fluxbox/apps` ] ; then - echo "" - echo "==> Adding x11vnc to user mythtv's ~/.fluxbox/apps" - echo "" - # Add x11vnc to ~/mythtv/.fluxbox/apps before LinHES-run - sed -i '/LinHES-run/ i [startup] {x11vnc -nap -wait 50 -passwd mythtv -display :0 -forever -o ~/.vnc/x11vnc.log -bg}' /home/mythtv/.fluxbox/apps - else - echo "" - echo "==> x11vnc startup line already present in user" - echo "==> mythtv's ~/.fluxbox/apps" - echo "" - fi - fi -} - -pre_remove() { - # kill x11vnc - PID=`pidof -o %PPID /usr/bin/x11vnc` - [ -n "$PID" ] && kill $PID - # Remove line in .fluxbox/apps - if [ -f /home/mythtv/.fluxbox/apps ] ; then - sed -i '/x11vnc/d' /home/mythtv/.fluxbox/apps - fi -} diff --git a/abs/extra/xalan-java/PKGBUILD b/abs/extra/xalan-java/PKGBUILD deleted file mode 100644 index 31157a0..0000000 --- a/abs/extra/xalan-java/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: Hussam Al-Tayeb <ht990332@gmail.com> - -pkgname=xalan-java -pkgver=2.7.1 -pkgrel=3 -pkgdesc="XSLT processor for transforming XML documents into HTML, text, or other XML document types" -arch=('any') -license=('APACHE') -url="http://xml.apache.org/xalan-j" -depends=('xerces2-java') -source=(http://www.apache.org/dist/xml/xalan-j/xalan-j_${pkgver//./_}-bin-2jars.tar.gz) -md5sums=('3ccda39bcd08b780436dfd2f22fb23d5') - -build() { - cd ${srcdir}/xalan-j_${pkgver//./_} - install -m755 -d ${pkgdir}/usr/share/java - install -m644 xalan.jar ${pkgdir}/usr/share/java/ || return 1 - install -m644 xsltc.jar ${pkgdir}/usr/share/java/ || return 1 -} - diff --git a/abs/extra/xautomation/PKGBUILD b/abs/extra/xautomation/PKGBUILD deleted file mode 100644 index 9c223ee..0000000 --- a/abs/extra/xautomation/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# Contributor: raubkopierer <mail[dot]sensenmann[at]gmail[dot]com> - -pkgname=xautomation -pkgver=1.03 -pkgrel=1 -pkgdesc="Controls X from the command line for scripts, and do 'visual scraping' to find things on the screen." -url="http://hoopajoo.net/projects/xautomation.html" -arch=('i686' 'x86_64') -license=('GPL') -source=(http://hoopajoo.net/static/projects/$pkgname-$pkgver.tar.gz) -md5sums=('91030079b0ecf96195dd21bcec635cb6') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr - make || return 1 -} -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=$startdir/pkg install -} - diff --git a/abs/extra/xbmc/PKGBUILD b/abs/extra/xbmc/PKGBUILD index 75a12c1..ecd7fb9 100644 --- a/abs/extra/xbmc/PKGBUILD +++ b/abs/extra/xbmc/PKGBUILD @@ -26,7 +26,7 @@ optdepends=( 'unrar: access compressed files without unpacking them' ) install="${pkgname}.install" -source=("http://mirrors.xbmc.org/releases/source/xbmc-$pkgver.tar.gz" 'xbmc11.patch' 'xbmc.sh') +source=("http://mirrors.xbmc.org/releases/source/xbmc-$pkgver.tar.gz" 'xbmc11.patch' 'xbmc.sh' 'xbmc_lib.conf') build() { cd "${srcdir}/xbmc-$pkgver" @@ -101,8 +101,12 @@ package() { mkdir -p ${pkgdir}/usr/LH/bin install -D -m 0755 ${srcdir}/xbmc.sh ${pkgdir}/usr/LH/bin + #add in xbmc_lib.conf + install -D -m0744 ${srcdir}/xbmc_lib.conf ${pkgdir}/etc/gen_lib_xml.d/xbmc_lib.conf + } # vim:set ts=2 sw=2 et: md5sums=('9e8a26ee25173c7268abea7f1d82d428' '5aa2e21a1f9fea60a2e5bb345e5aefd0' - 'e48a3d87984669ef206e902bc8290ff9') + 'e48a3d87984669ef206e902bc8290ff9' + '6c4ab6c8a5ef748786c7602bb2a9ef99') diff --git a/abs/extra/xbmc/__changelog b/abs/extra/xbmc/__changelog index 07c930f..10c3bd8 100644 --- a/abs/extra/xbmc/__changelog +++ b/abs/extra/xbmc/__changelog @@ -1,2 +1,4 @@ 7/5/11 - chw - Removed libpulse and lsb-release dep. 8/8/11 - mjh - Add patch for Snapstream Firefly remote. Ref #728 +8/23/12 -jm -Added xbmc_lib.conf, this file goes in /etc/gen_lib_xml.d/ + diff --git a/abs/extra/xbmc/xbmc.install b/abs/extra/xbmc/xbmc.install index c1010a4..46ac150 100644 --- a/abs/extra/xbmc/xbmc.install +++ b/abs/extra/xbmc/xbmc.install @@ -1,17 +1,5 @@ post_install() { - mv /usr/share/mythtv/themes/defaultmenu/library.xml /tmp - grep -v -e /mythmenu /tmp/library.xml > /tmp/library.xml.tmp - echo "<!--#XBMC-->" >> /tmp/library.xml.tmp - echo " <button>" >> /tmp/library.xml.tmp - echo " <type>MENU_XBMC</type>" >> /tmp/library.xml.tmp - echo " <text>Launch XBMC</text>" >> /tmp/library.xml.tmp - echo " <action>EXEC /usr/LH/bin/xbmc.sh</action>" >> /tmp/library.xml.tmp - echo " </button>" >> /tmp/library.xml.tmp - echo "<!--#XBMC-->" >> /tmp/library.xml.tmp - echo "" >> /tmp/library.xml.tmp - echo "</mythmenu>" >> /tmp/library.xml.tmp - mv /tmp/library.xml.tmp /usr/share/mythtv/themes/defaultmenu/library.xml - + gen_lib_xml.py echo ">> If XBMC won't start, but just segfaults, double check your X.Org config." echo ">> The display depth has to be at least 24-bit, ie" echo ">> set \"DefaultDepth 24\" under the \"Screen\" section of your xorg.conf file." @@ -29,22 +17,7 @@ post_install() { } post_upgrade() { - mv /usr/share/mythtv/themes/defaultmenu/library.xml /tmp/library.xml.tmp - sed -e '/\#XBMC/,/\#XBMC/d' < /tmp/library.xml.tmp > /usr/share/mythtv/themes/defaultmenu/library.xml - - mv /usr/share/mythtv/themes/defaultmenu/library.xml /tmp - grep -v -e /mythmenu /tmp/library.xml > /tmp/library.xml.tmp - echo "<!--#XBMC-->" >> /tmp/library.xml.tmp - echo " <button>" >> /tmp/library.xml.tmp - echo " <type>MENU_XBMC</type>" >> /tmp/library.xml.tmp - echo " <text>Launch XBMC</text>" >> /tmp/library.xml.tmp - echo " <action>EXEC /usr/LH/bin/xbmc.sh</action>" >> /tmp/library.xml.tmp - echo " </button>" >> /tmp/library.xml.tmp - echo "<!--#XBMC-->" >> /tmp/library.xml.tmp - echo "" >> /tmp/library.xml.tmp - echo "</mythmenu>" >> /tmp/library.xml.tmp - mv /tmp/library.xml.tmp /usr/share/mythtv/themes/defaultmenu/library.xml - + gen_lib_xml.py [[ $(type -p gtk-update-icon-cache) ]] && /usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor [[ $(type -p update-desktop-database) ]] && /usr/bin/update-desktop-database -q usr/share/applications } @@ -52,7 +25,5 @@ post_upgrade() { post_remove() { [[ $(type -p gtk-update-icon-cache) ]] && /usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor [[ $(type -p update-desktop-database) ]] && /usr/bin/update-desktop-database -q usr/share/applications - - mv /usr/share/mythtv/themes/defaultmenu/library.xml /tmp/library.xml.tmp - sed -e '/\#XBMC/,/\#XBMC/d' < /tmp/library.xml.tmp > /usr/share/mythtv/themes/defaultmenu/library.xml + gen_lib_xml.py } diff --git a/abs/extra/xbmc/xbmc_lib.conf b/abs/extra/xbmc/xbmc_lib.conf new file mode 100644 index 0000000..df88abb --- /dev/null +++ b/abs/extra/xbmc/xbmc_lib.conf @@ -0,0 +1,8 @@ +<!--#XBMC--> + <button> + <type>MENU_XBMC</type> + <text>Launch XBMC</text> + <action>EXEC /usr/bin/xbmc</action> + </button> +<!--#XBMC--> + diff --git a/abs/extra/xcb-util-keysyms/LICENSE b/abs/extra/xcb-util-keysyms/LICENSE deleted file mode 100644 index 5e3822c..0000000 --- a/abs/extra/xcb-util-keysyms/LICENSE +++ /dev/null @@ -1,267 +0,0 @@ -/* Copyright (C) 2007 Bart Massey - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or their - * institutions shall not be used in advertising or otherwise to promote the - * sale, use or other dealings in this Software without prior written - * authorization from the authors. - */ - -/* - * Copyright (C) 2008-2009 Julien Danjou <julien@danjou.info> - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, copy, - * modify, merge, publish, distribute, sublicense, and/or sell copies - * of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY - * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or - * their institutions shall not be used in advertising or otherwise to - * promote the sale, use or other dealings in this Software without - * prior written authorization from the authors. - */ - -/* - * Copyright (C) 2008 Arnaud Fontaine <arnau@debian.org> - * Copyright (C) 2007-2008 Vincent Torri <vtorri@univ-evry.fr> - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, copy, - * modify, merge, publish, distribute, sublicense, and/or sell copies - * of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY - * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or - * their institutions shall not be used in advertising or otherwise to - * promote the sale, use or other dealings in this Software without - * prior written authorization from the authors. - -/* - * Copyright © 2008 Bart Massey <bart@cs.pdx.edu> - * Copyright © 2008 Julien Danjou <julien@danjou.info> - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, copy, - * modify, merge, publish, distribute, sublicense, and/or sell copies - * of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY - * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or - * their institutions shall not be used in advertising or otherwise to - * promote the sale, use or other dealings in this Software without - * prior written authorization from the authors. - */ - -/* - * Copyright © 2008 Keith Packard <keithp@keithp.com> - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, copy, - * modify, merge, publish, distribute, sublicense, and/or sell copies - * of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY - * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or - * their institutions shall not be used in advertising or otherwise to - * promote the sale, use or other dealings in this Software without - * prior written authorization from the authors. - */ - -/* - * Copyright © 2008 Bart Massey <bart@cs.pdx.edu> - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, copy, - * modify, merge, publish, distribute, sublicense, and/or sell copies - * of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY - * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or - * their institutions shall not be used in advertising or otherwise to - * promote the sale, use or other dealings in this Software without - * prior written authorization from the authors. - */ - -/* - * Copyright © 2008 Ian Osgood <iano@quirkster.com> - * Copyright © 2008 Jamey Sharp <jamey@minilop.net> - * Copyright © 2008 Josh Triplett <josh@freedesktop.org> - * Copyright © 2008 Ulrich Eckhardt <doomster@knuut.de> - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, copy, - * modify, merge, publish, distribute, sublicense, and/or sell copies - * of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY - * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or - * their institutions shall not be used in advertising or otherwise to - * promote the sale, use or other dealings in this Software without - * prior written authorization from the authors. - */ - -/* Copyright © 2006 Jamey Sharp. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or their - * institutions shall not be used in advertising or otherwise to promote the - * sale, use or other dealings in this Software without prior written - * authorization from the authors. - */ - -/* Copyright © 2006 Ian Osgood - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the names of the authors or their - * institutions shall not be used in advertising or otherwise to promote the - * sale, use or other dealings in this Software without prior written - * authorization from the authors. - */ - -/* Copyright © 2000 Keith Packard - * - * Permission to use, copy, modify, distribute, and sell this software and its - * documentation for any purpose is hereby granted without fee, provided that - * the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of Keith Packard not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Keith Packard makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, - * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ diff --git a/abs/extra/xcb-util-keysyms/PKGBUILD b/abs/extra/xcb-util-keysyms/PKGBUILD deleted file mode 100644 index efec398..0000000 --- a/abs/extra/xcb-util-keysyms/PKGBUILD +++ /dev/null @@ -1,38 +0,0 @@ -# $Id$ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Maintainer: Andreas Radke <andyrtr@archlinux.org> - -pkgname=xcb-util-keysyms -pkgver=0.3.8 -pkgrel=1 -pkgdesc="Utility libraries for XC Binding - Standard X key constants and conversion to/from keycodes" -arch=('i686' 'x86_64') -url="http://xcb.freedesktop.org" -license=('custom') -depends=('libxcb>=1.7') -makedepends=('xorg-util-macros') -options=('!libtool') -source=("http://xcb.freedesktop.org/dist/${pkgname}-${pkgver}.tar.bz2" - 'LICENSE') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --disable-static - make -} - -check() { - cd "${srcdir}/${pkgname}-${pkgver}" - make check -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - - install -D -m644 "${srcdir}/LICENSE" \ - "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} - -md5sums=('c75bb20e709093580a67eaf263251b50' - '2672c2e72dedb40f773e989dd622f298') diff --git a/abs/extra/xchat/PKGBUILD b/abs/extra/xchat/PKGBUILD new file mode 100644 index 0000000..b642e6a --- /dev/null +++ b/abs/extra/xchat/PKGBUILD @@ -0,0 +1,51 @@ +# $Id: PKGBUILD 160583 2012-06-02 10:29:13Z bluewind $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> + +pkgname=xchat +pkgver=2.8.8 +pkgrel=10 +pkgdesc="A GTK+ based IRC client" +arch=('i686' 'x86_64') +url="http://www.xchat.org/" +license=('GPL') +depends=('gtk2' 'openssl' 'dbus-glib' 'libnotify' 'hicolor-icon-theme') +makedepends=('tcl' 'perl' 'python2' 'librsvg') +optdepends=('enchant: for spell checking support' 'tcl: for tcl plugin' + 'python2: for python plugin') +options=('!libtool') +install=xchat.install +source=(http://www.xchat.org/files/source/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz + http://xchat.org/files/icons/xchat-svg.tar.bz2 + xchat-2.8.8-libnotify07.patch + xchat-2.8.8-link-against-libnotify.patch + xchat-2.8.8-glib-2.31.patch) +sha1sums=('e12305da42d1aacc26c2ca25e239f393d4dd3532' + '0d366346cc11e0efb57fc2648fe423c94a3469bd' + 'a053fba4e1911d1ee6a8248fe19e344797920fe3' + '70c3cc29fc55ff35f701ef8ac23078b6e3761ce1' + 'aecaf6176a7cfd62555207b02f2793b360aa39da') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i "${srcdir}/xchat-2.8.8-libnotify07.patch" + patch -p1 -i "${srcdir}/xchat-2.8.8-link-against-libnotify.patch" + patch -p1 -i "${srcdir}/xchat-2.8.8-glib-2.31.patch" + autoconf + autoheader + + LIBS+="-lgmodule-2.0" ./configure --prefix=/usr --sysconfdir=/etc --datadir=/usr/share \ + --enable-openssl --enable-dbus --disable-textfe --enable-ipv6 --enable-shm --enable-spell=static + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + for i in 24 32 48 64 128 256 ; do + install -d "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps" + rsvg-convert -w $i -h $i -o "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/xchat.png" ../xchat-cloned.svg + done + install -D -m644 ../xchat-cloned.svg "${pkgdir}/usr/share/icons/hicolor/scalable/apps/xchat.svg" + install -D -m644 ../xchat-used.svg "${pkgdir}/usr/share/icons/hicolor/scalable/apps/xchat2.svg" +} diff --git a/abs/extra/xchat/xchat-2.8.8-glib-2.31.patch b/abs/extra/xchat/xchat-2.8.8-glib-2.31.patch new file mode 100644 index 0000000..63f562f --- /dev/null +++ b/abs/extra/xchat/xchat-2.8.8-glib-2.31.patch @@ -0,0 +1,62 @@ +Author: Dominique Leuenberger <dimstar@opensuse.org> + +http://sourceforge.net/tracker/?func=detail&aid=3446968&group_id=239&atid=100239 + +glib got stricter in checking includes. Only glib.h (and a few exceptions) +are to be included directly. + +Index: xchat-2.8.8/src/common/servlist.c +=================================================================== +--- xchat-2.8.8.orig/src/common/servlist.c ++++ xchat-2.8.8/src/common/servlist.c +@@ -24,7 +24,7 @@ + #include <unistd.h> + + #include "xchat.h" +-#include <glib/ghash.h> ++#include <glib.h> + + #include "cfgfiles.h" + #include "fe.h" +Index: xchat-2.8.8/src/common/text.c +=================================================================== +--- xchat-2.8.8.orig/src/common/text.c ++++ xchat-2.8.8/src/common/text.c +@@ -28,7 +28,7 @@ + #include <sys/mman.h> + + #include "xchat.h" +-#include <glib/ghash.h> ++#include <glib.h> + #include "cfgfiles.h" + #include "chanopt.h" + #include "plugin.h" +Index: xchat-2.8.8/src/common/util.c +=================================================================== +--- xchat-2.8.8.orig/src/common/util.c ++++ xchat-2.8.8/src/common/util.c +@@ -39,7 +39,7 @@ + #include <errno.h> + #include "xchat.h" + #include "xchatc.h" +-#include <glib/gmarkup.h> ++#include <glib.h> + #include <ctype.h> + #include "util.h" + #include "../../config.h" +Index: xchat-2.8.8/src/common/xchat.h +=================================================================== +--- xchat-2.8.8.orig/src/common/xchat.h ++++ xchat-2.8.8/src/common/xchat.h +@@ -1,10 +1,6 @@ + #include "../../config.h" + +-#include <glib/gslist.h> +-#include <glib/glist.h> +-#include <glib/gutils.h> +-#include <glib/giochannel.h> +-#include <glib/gstrfuncs.h> ++#include <glib.h> + #include <time.h> /* need time_t */ + + #ifndef XCHAT_H diff --git a/abs/extra/xchat/xchat-2.8.8-libnotify07.patch b/abs/extra/xchat/xchat-2.8.8-libnotify07.patch new file mode 100644 index 0000000..2a6dce9 --- /dev/null +++ b/abs/extra/xchat/xchat-2.8.8-libnotify07.patch @@ -0,0 +1,24 @@ +diff -up xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotify07 xchat-2.8.8/src/fe-gtk/plugin-tray.c +--- xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotify07 2010-11-15 17:32:15.708325783 -0500 ++++ xchat-2.8.8/src/fe-gtk/plugin-tray.c 2010-11-15 18:05:17.322141789 -0500 +@@ -125,8 +125,9 @@ static void *nn_mod = NULL; + /* prototypes */ + static gboolean (*nn_init) (char *); + static void (*nn_uninit) (void); +-static void *(*nn_new_with_status_icon) (const gchar *summary, const gchar *message, const gchar *icon, GtkStatusIcon *status_icon); +-static void *(*nn_new) (const gchar *summary, const gchar *message, const gchar *icon, GtkWidget *attach); ++/* recent versions of libnotify don't take the fourth GtkWidget argument, but passing an ++ * extra NULL argument will be fine */ ++static void *(*nn_new) (const gchar *summary, const gchar *message, const gchar *icon, gpointer dummy); + static gboolean (*nn_show) (void *noti, GError **error); + static void (*nn_set_timeout) (void *noti, gint timeout); + +@@ -160,8 +161,6 @@ libnotify_notify_new (const char *title, + goto bad; + if (!g_module_symbol (nn_mod, "notify_uninit", (gpointer)&nn_uninit)) + goto bad; +- if (!g_module_symbol (nn_mod, "notify_notification_new_with_status_icon", (gpointer)&nn_new_with_status_icon)) +- goto bad; + if (!g_module_symbol (nn_mod, "notify_notification_new", (gpointer)&nn_new)) + goto bad; + if (!g_module_symbol (nn_mod, "notify_notification_show", (gpointer)&nn_show)) diff --git a/abs/extra/xchat/xchat-2.8.8-link-against-libnotify.patch b/abs/extra/xchat/xchat-2.8.8-link-against-libnotify.patch new file mode 100644 index 0000000..31e6c08 --- /dev/null +++ b/abs/extra/xchat/xchat-2.8.8-link-against-libnotify.patch @@ -0,0 +1,343 @@ +From: Christopher Aillon <caillon@redhat.com> +Date: Thu, 7 Apr 2011 19:34:14 -0700 +Subject: [PATCH] Link directly against libnotify + +Dynamically loading the library isn't ideal since the soname +can change silently on us. Additionally, notify-send is +shipped as part of libnotify, so we aren't actually bringing +in a new dependency. Since we'd need to patch the source and +rebuild for new sonames anyway, there's little benefit to +dynamically loading libnotify. + +Plus, this has the benefit of cleaning up the code, as well as +ensuring we'll catch any future soname changes sooner. + +https://bugzilla.redhat.com/show_bug.cgi?id=693362 +https://sourceforge.net/tracker/?func=detail&aid=3280223&group_id=239&atid=100239 +--- + configure.in | 23 +++++++ + src/fe-gtk/plugin-tray.c | 144 ++++++++++------------------------------------- + 2 files changed, 55 insertions(+), 112 deletions(-) + +diff -p -U8 xchat-2.8.8/configure.in.libnotifyso4 xchat-2.8.8/configure.in +--- xchat-2.8.8/configure.in.libnotifyso4 2010-05-29 23:01:16.000000000 -0700 ++++ xchat-2.8.8/configure.in 2011-04-07 19:27:00.448137113 -0700 +@@ -34,16 +34,17 @@ AH_VERBATIM([PREFIX],[#undef PREFIX]) + AH_VERBATIM([XCHATLIBDIR],[#undef XCHATLIBDIR]) + AH_VERBATIM([XCHATSHAREDIR],[#undef XCHATSHAREDIR]) + AH_VERBATIM([SOCKS],[#undef SOCKS]) + AH_VERBATIM([USE_MSPROXY],[#undef USE_MSPROXY]) + dnl AH_VERBATIM([USE_GNOME],[#undef USE_GNOME]) + AH_VERBATIM([USE_SHM],[#undef USE_SHM]) + AH_VERBATIM([USE_GTKSPELL],[#undef USE_GTKSPELL]) + AH_VERBATIM([USE_LIBSEXY],[#undef USE_LIBSEXY]) ++AH_VERBATIM([USE_LIBNOTIFY],[#undef USE_LIBNOTIFY]) + AH_VERBATIM([USE_IPV6],[#undef USE_IPV6]) + AH_VERBATIM([USE_MMX],[#undef USE_MMX]) + AH_VERBATIM([USE_OPENSSL],[#undef USE_OPENSSL]) + AH_VERBATIM([USE_PLUGIN],[#undef USE_PLUGIN]) + AH_VERBATIM([USE_XFT],[#undef USE_XFT]) + AH_VERBATIM([USE_XLIB],[#undef USE_XLIB]) + AH_VERBATIM([USE_SIGACTION],[#undef USE_SIGACTION]) + AH_VERBATIM([USING_FREEBSD],[#undef USING_FREEBSD]) +@@ -126,16 +127,20 @@ AC_ARG_ENABLE(tcl, + AC_ARG_ENABLE(plugin, + [ --disable-plugin disable plugin support], + plugin=$enableval, plugin=yes) + + AC_ARG_ENABLE(dbus, + [ --disable-dbus disable DBUS support], + dbus=$enableval, dbus=yes) + ++AC_ARG_ENABLE(libnotify, ++[ --disable-libnotify disable libnotify support], ++ libnotify=$enableval, libnotify=yes) ++ + AC_ARG_ENABLE(mmx, + [ --disable-mmx disable MMX assembly routines], + mmx=$enableval, mmx=yes) + + AC_ARG_ENABLE(shm, + [ --enable-shm enable use of XShm for fast tinting (default: no)], + shm=$enableval, shm=no) + +@@ -482,16 +487,32 @@ if test "x$dbus" = "xyes" ; then + + DBUS_SERVICES_DIR="$DATADIR/dbus-1/services" + AC_SUBST(DBUS_SERVICES_DIR) + AC_DEFINE_UNQUOTED(DBUS_SERVICES_DIR, "$DBUS_SERVICES_DIR", [Where services dir for DBUS is]) + fi + fi + + dnl ********************************************************************* ++dnl ** LIBNOTIFY ******************************************************** ++dnl ********************************************************************* ++ ++if test "x$libnotify" = "xyes" ; then ++ PKG_CHECK_MODULES(LIBNOTIFY, libnotify >= 0.4, [], [ ++ AC_MSG_RESULT(no) ++ libnotify=no ++ ]) ++ if test "$libnotify" != "no" ; then ++ GUI_LIBS="$GUI_LIBS $LIBNOTIFY_LIBS" ++ GUI_CFLAGS="$GUI_CFLAGS $LIBNOTIFY_CFLAGS" ++ AC_DEFINE(USE_LIBNOTIFY) ++ fi ++fi ++ ++dnl ********************************************************************* + dnl ** SPELL ************************************************************ + dnl ********************************************************************* + + if test "$spell" = "gtkspell" ; then + PKG_CHECK_MODULES(GTKSPELL, gtkspell-2.0 >= 2.0.2, [], [ + AC_MSG_RESULT(no) + spell=no + ]) +@@ -519,16 +540,17 @@ if test "$spell" = "static" ; then + fi + + dnl ********************************************************************* + dnl ** CONDITIONALS ***************************************************** + dnl ********************************************************************* + + AM_CONDITIONAL(USE_OPENSSL, test "x$openssl" = "xyes") + AM_CONDITIONAL(USE_LIBSEXY, test "x$spell" = "xstatic") ++AM_CONDITIONAL(USE_LIBNOTIFY, test "x$libnotify" = "xyes") + AM_CONDITIONAL(DO_TEXT, test "x$textfe" = "xyes") + AM_CONDITIONAL(DO_GTK, test "x$gtkfe" = "xyes") + AM_CONDITIONAL(DO_PERL, test "x$perl" = "xyes") + AM_CONDITIONAL(DO_PYTHON, test "x$python" = "xyes") + AM_CONDITIONAL(DO_TCL, test "x$tcl" = "xyes") + AM_CONDITIONAL(DO_PLUGIN, test "x$plugin" = "xyes") + AM_CONDITIONAL(USE_DBUS, test "x$dbus" = "xyes") + AM_CONDITIONAL(DO_GCONF, test "x$GCONFTOOL" != "xno") +@@ -807,16 +829,17 @@ echo mmx tinting ......... : $mmx\ spell + echo XShm tinting ........ : $shm\ plugin interface ...... : $plugin + if test "$xft" = no; then + echo text backend ........ : pango\ nls/gettext ........... : $USE_NLS + else + echo text backend ........ : xft\ nls/gettext ........... : $USE_NLS + fi + echo openssl support ..... : $openssl\ ipv6 support .......... : $ipv6 + echo dbus support ........ : $dbus\ msproxy ntlm \(ISA\) .... : $have_ntlm ++echo libnotify support ... : $libnotify + echo + echo The binary will be installed in $prefix/bin + echo + + if test "$gtkfe" = no; then + echo Warning: The GTK \(GUI\) frontend will not be built. + echo + fi +diff -p -U8 xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotifyso4 xchat-2.8.8/src/fe-gtk/plugin-tray.c +--- xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotifyso4 2011-04-07 17:57:27.524307905 -0700 ++++ xchat-2.8.8/src/fe-gtk/plugin-tray.c 2011-04-07 19:18:33.429475719 -0700 +@@ -10,17 +10,27 @@ + #include "../common/fe.h" + #include "../common/util.h" + #include "fe-gtk.h" + #include "pixmaps.h" + #include "maingui.h" + #include "menu.h" + #include <gtk/gtk.h> + +-#define LIBNOTIFY ++#ifdef USE_LIBNOTIFY ++#include <libnotify/notify.h> ++#ifndef NOTIFY_CHECK_VERSION ++#define NOTIFY_CHECK_VERSION(x,y,z) 0 ++#endif ++#if NOTIFY_CHECK_VERSION(0,7,0) ++#define XC_NOTIFY_NEW(a,b,c,d) notify_notification_new(a,b,c) ++#else ++#define XC_NOTIFY_NEW(a,b,c,d) notify_notification_new(a,b,c,d) ++#endif ++#endif + + typedef enum /* current icon status */ + { + TS_NONE, + TS_MESSAGE, + TS_HIGHLIGHT, + TS_FILEOFFER, + TS_CUSTOM /* plugin */ +@@ -112,90 +122,16 @@ tray_count_networks (void) + + void + fe_tray_set_tooltip (const char *text) + { + if (sticon) + gtk_status_icon_set_tooltip (sticon, text); + } + +-#ifdef LIBNOTIFY +- +-/* dynamic access to libnotify.so */ +- +-static void *nn_mod = NULL; +-/* prototypes */ +-static gboolean (*nn_init) (char *); +-static void (*nn_uninit) (void); +-/* recent versions of libnotify don't take the fourth GtkWidget argument, but passing an +- * extra NULL argument will be fine */ +-static void *(*nn_new) (const gchar *summary, const gchar *message, const gchar *icon, gpointer dummy); +-static gboolean (*nn_show) (void *noti, GError **error); +-static void (*nn_set_timeout) (void *noti, gint timeout); +- +-static void +-libnotify_cleanup (void) +-{ +- if (nn_mod) +- { +- nn_uninit (); +- g_module_close (nn_mod); +- nn_mod = NULL; +- } +-} +- +-static gboolean +-libnotify_notify_new (const char *title, const char *text, GtkStatusIcon *icon) +-{ +- void *noti; +- +- if (!nn_mod) +- { +- nn_mod = g_module_open ("libnotify", G_MODULE_BIND_LAZY); +- if (!nn_mod) +- { +- nn_mod = g_module_open ("libnotify.so.1", G_MODULE_BIND_LAZY); +- if (!nn_mod) +- return FALSE; +- } +- +- if (!g_module_symbol (nn_mod, "notify_init", (gpointer)&nn_init)) +- goto bad; +- if (!g_module_symbol (nn_mod, "notify_uninit", (gpointer)&nn_uninit)) +- goto bad; +- if (!g_module_symbol (nn_mod, "notify_notification_new", (gpointer)&nn_new)) +- goto bad; +- if (!g_module_symbol (nn_mod, "notify_notification_show", (gpointer)&nn_show)) +- goto bad; +- if (!g_module_symbol (nn_mod, "notify_notification_set_timeout", (gpointer)&nn_set_timeout)) +- goto bad; +- if (!nn_init (PACKAGE_NAME)) +- goto bad; +- } +- +- text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP); +- title = strip_color (title, -1, STRIP_ALL); +- noti = nn_new (title, text, XCHATSHAREDIR"/pixmaps/xchat.png", NULL); +- g_free ((char *)title); +- g_free ((char *)text); +- +- nn_set_timeout (noti, prefs.input_balloon_time*1000); +- nn_show (noti, NULL); +- g_object_unref (G_OBJECT (noti)); +- +- return TRUE; +- +-bad: +- g_module_close (nn_mod); +- nn_mod = NULL; +- return FALSE; +-} +- +-#endif +- + void + fe_tray_set_balloon (const char *title, const char *text) + { + #ifndef WIN32 + const char *argv[8]; + const char *path; + char time[16]; + WinStatus ws; +@@ -208,52 +144,36 @@ fe_tray_set_balloon (const char *title, + /* bit 1 of flags means "no balloons unless hidden/iconified" */ + if (ws != WS_HIDDEN && (prefs.gui_tray_flags & 2)) + return; + + /* FIXME: this should close the current balloon */ + if (!text) + return; + +-#ifdef LIBNOTIFY +- /* try it via libnotify.so */ +- if (libnotify_notify_new (title, text, sticon)) +- return; /* success */ +-#endif ++#ifdef USE_LIBNOTIFY ++ NotifyNotification *notification; ++ char *notify_text, *notify_title; + +- /* try it the crude way */ +- path = g_find_program_in_path ("notify-send"); +- if (path) +- { +- sprintf(time, "%d000",prefs.input_balloon_time); +- argv[0] = path; +- argv[1] = "-i"; +- argv[2] = "gtk-dialog-info"; +- if (access (XCHATSHAREDIR"/pixmaps/xchat.png", R_OK) == 0) +- argv[2] = XCHATSHAREDIR"/pixmaps/xchat.png"; +- argv[3] = "-t"; +- argv[4] = time; +- argv[5] = title; +- text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP); +- argv[6] = text; +- argv[7] = NULL; +- xchat_execv (argv); +- g_free ((char *)path); +- g_free ((char *)text); +- } +- else +- { +- /* show this error only once */ +- static unsigned char said_it = FALSE; +- if (!said_it) +- { +- said_it = TRUE; +- fe_message (_("Cannot find 'notify-send' to open balloon alerts.\nPlease install libnotify."), FE_MSG_ERROR); +- } +- } ++ if (!notify_is_initted()) ++ notify_init(PACKAGE_NAME); ++ ++ notify_text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP); ++ notify_title = strip_color (title, -1, STRIP_ALL); ++ ++ notification = XC_NOTIFY_NEW (notify_title, notify_text, XCHATSHAREDIR"/pixmaps/xchat.png", NULL); ++ ++ g_free ((char *)notify_title); ++ g_free ((char *)notify_text); ++ ++ notify_notification_set_timeout (notification, prefs.input_balloon_time*1000); ++ notify_notification_show (notification, NULL); ++ ++ g_object_unref (notification); ++#endif + #endif + } + + static void + tray_set_balloonf (const char *text, const char *format, ...) + { + va_list args; + char *buf; +@@ -840,13 +760,13 @@ tray_plugin_init (xchat_plugin *plugin_h + return 1; /* return 1 for success */ + } + + int + tray_plugin_deinit (xchat_plugin *plugin_handle) + { + #ifdef WIN32 + tray_cleanup (); +-#elif defined(LIBNOTIFY) +- libnotify_cleanup (); ++#elif defined(USE_LIBNOTIFY) ++ notify_uninit (); + #endif + return 1; + } diff --git a/abs/extra/xchat/xchat.install b/abs/extra/xchat/xchat.install new file mode 100644 index 0000000..eab82d1 --- /dev/null +++ b/abs/extra/xchat/xchat.install @@ -0,0 +1,11 @@ +post_install() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/abs/extra/xdg-utils/PKGBUILD b/abs/extra/xdg-utils/PKGBUILD index c707346..94e715e 100644 --- a/abs/extra/xdg-utils/PKGBUILD +++ b/abs/extra/xdg-utils/PKGBUILD @@ -1,19 +1,36 @@ -# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ +# $Id: PKGBUILD 160047 2012-05-28 14:14:28Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=xdg-utils -pkgver=1.0.2 -pkgrel=1 -pkgdesc="Command line tools that assist applications with a variety of desktop integration tasks." -arch=(i686 x86_64) +pkgver=1.1.0 +_gitdate=20120520 +pkgrel=2.${_gitdate} +pkgdesc="Command line tools that assist applications with a variety of desktop integration tasks" +arch=('any') url="http://portland.freedesktop.org/" -license=(MIT) -source=(http://portland.freedesktop.org/download/$pkgname-$pkgver.tgz) -md5sums=('348a5b91dc66426505022c74a64b2940') +license=('MIT') +depends=('sh' 'xorg-xset') # xset needed inside xdg-screensaver +makedepends=('docbook-xsl' 'lynx' 'xmlto') +optdepends=('kdebase-runtime: for KDE support in xdg-open' + 'libgnome: for GNOME support in xdg-open' + 'exo: for Xfce support in xdg-open' + 'xorg-xprop: for Xfce support in xdg-open' + 'pcmanfm: for LXDE support in xdg-open' + 'perl-file-mimeinfo: for generic support in xdg-open') +source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.${_gitdate}.tar.gz # last git commit 2012-03-10 13:55:24 (GMT) allow DESKTOP_SESSION='Xfce Session' to match xfce +) +md5sums=('4e37d65322dbc4763e85b8ba461f919b') build() { - cd $startdir/src/$pkgname-$pkgver - ./configure --prefix=/usr - make || return 1 - make DESTDIR=$startdir/pkg install + cd ${srcdir}/${pkgname}-5be359a49d4d8dc3c5f814ab89b8422ad522d837 + ./configure --prefix=/usr --mandir=/usr/share/man + make scripts-clean -C scripts # needed if it's a git snapshot + make man scripts -C scripts # needed if it's a git snapshot +# make # for release builds +} + +package() { + cd ${srcdir}/${pkgname}-5be359a49d4d8dc3c5f814ab89b8422ad522d837 + make DESTDIR="${pkgdir}" install + install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/abs/extra/xdg-utils/xfce-detection.diff b/abs/extra/xdg-utils/xfce-detection.diff new file mode 100644 index 0000000..43ccd62 --- /dev/null +++ b/abs/extra/xdg-utils/xfce-detection.diff @@ -0,0 +1,49 @@ +--- scripts/xdg-open 2011-01-01 05:03:14.000000000 -0500 ++++ scripts/xdg-open.new 2011-06-19 00:43:13.000000000 -0400 +@@ -303,12 +303,35 @@ + + detectDE() + { ++ # see https://bugs.freedesktop.org/show_bug.cgi?id=34164 ++ unset GREP_OPTIONS ++ + if [ x"$KDE_FULL_SESSION" = x"true" ]; then DE=kde; + elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then DE=gnome; + elif `dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.GetNameOwner string:org.gnome.SessionManager > /dev/null 2>&1` ; then DE=gnome; + elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce; +- elif [ x"$DESKTOP_SESSION" == x"LXDE" ]; then DE=lxde; +- else DE="" ++ elif xprop -root 2> /dev/null | grep -i '^xfce_desktop_window' >/dev/null 2>&1; then DE=xfce ++ fi ++ ++ if [ x"$DE" = x"" ]; then ++ # fallback to checking $DESKTOP_SESSION ++ case "$DESKTOP_SESSION" in ++ gnome) ++ DE=gnome; ++ ;; ++ LXDE) ++ DE=lxde; ++ ;; ++ xfce|xfce4) ++ DE=xfce; ++ ;; ++ esac ++ fi ++ ++ if [ x"$DE" = x"gnome" ]; then ++ # gnome-default-applications-properties is only available in GNOME 2.x ++ # but not in GNOME 3.x ++ which gnome-default-applications-properties > /dev/null 2>&1 || DE="gnome3" + fi + } + +@@ -535,7 +558,7 @@ + open_kde "$url" + ;; + +- gnome) ++ gnome*) + open_gnome "$url" + ;; + diff --git a/abs/extra/xe/PKGBUILD b/abs/extra/xe/PKGBUILD index 1ada156..bbe2393 100644 --- a/abs/extra/xe/PKGBUILD +++ b/abs/extra/xe/PKGBUILD @@ -8,10 +8,19 @@ pkgdesc="A multi system emulator, that emulates many console and handheld video arch=('i686' 'x86_64') depends=('gtk2>=2.10.11') url="http://www.xe-emulator.com" -source=('http://www.xe-emulator.com/files/xe-x86-32-bin.2.16.2.tar.bz2' 'http://www.xe-emulator.com/files/bios.zip') +if [ $CARCH="X86_64" ] +then + xearch="x86-64" + xedir="xe-x64" +else + xearch="x86-32" + xedir="xe-x86" +fi + +source=("http://www.xe-emulator.com/files/xe-$xearch-bin.2.16.2.tar.bz2" 'http://www.xe-emulator.com/files/bios.zip') install=xe.install build() { - cd $startdir/src/xe-x86 + cd $startdir/src/$xedir make mkdir -p $startdir/pkg/usr/bin mkdir -p $startdir/pkg/usr/lib/xe @@ -19,3 +28,5 @@ build() { cp -rf xe modules rc manual.html $startdir/pkg/usr/lib/xe cp -a ../bios/* $startdir/pkg/usr/lib/xe/bios } +md5sums=('adcf3872f41cd0f0ea1ac28ea90abc00' + '8f883e062242a2493e66c2b7f1f7807b') diff --git a/abs/extra/xerces2-java/PKGBUILD b/abs/extra/xerces2-java/PKGBUILD deleted file mode 100644 index bb3b327..0000000 --- a/abs/extra/xerces2-java/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=xerces2-java -pkgver=2.11.0 -pkgrel=1 -pkgdesc="High performance fully compliant Java XML parser" -arch=('any') -url="http://xml.apache.org/xerces2-j" -license=('APACHE') -provides=("java-xerces2=${pkgver}") -conflicts=('java-xerces2') -replaces=('java-xerces2') -source=(http://www.apache.org/dist/xerces/j/Xerces-J-bin.${pkgver}.tar.gz) - -build() { -/bin/true -} - -package() { - cd $startdir/src/xerces-${pkgver//./_} - install -m755 -d ${pkgdir}/usr/share/java - rm -f xercesSamples.jar - install -m644 *.jar ${pkgdir}/usr/share/java/ || return 1 -} -md5sums=('29d731e0ae57eb3f2e09af6594bc2515') diff --git a/abs/extra/xfconf/PKGBUILD b/abs/extra/xfconf/PKGBUILD deleted file mode 100644 index f6b97cf..0000000 --- a/abs/extra/xfconf/PKGBUILD +++ /dev/null @@ -1,37 +0,0 @@ -# $Id: PKGBUILD 87984 2010-08-18 20:44:29Z andyrtr $ -# Maintainer: tobias <tobias funnychar archlinux.org> - -pkgname=xfconf -pkgver=4.6.2 -pkgrel=2 -pkgdesc="a simple client-server configuration storage and query system" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://www.xfce.org/" -groups=('xfce4') -# http://www.xfce.org/documentation/requirements -# keep dbus and gtk2, see also http://bugs.archlinux.org/task/14536 -depends=( "libxfce4util>=4.6.2" "dbus-glib>=0.86" 'dbus>=1.2.24' 'gtk2>=2.20.1') -makedepends=('pkgconfig' 'perl-extutils-depends' 'perl-extutils-pkgconfig' 'glib-perl' 'intltool' 'chrpath') -options=('!libtool' '!emptydirs') -replaces=('libxfce4mcs' 'xfce-mcs-manager' 'xfce-mcs-plugins') -conflicts=('libxfce4mcs' 'xfce-mcs-manager' 'xfce-mcs-plugins') -source=(http://archive.xfce.org/src/xfce/${pkgname}/4.6/${pkgname}-${pkgver}.tar.bz2) -md5sums=('5ff93c15077c6dbbcd38c437bc1ab2ef') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/xfce4 \ - --localstatedir=/var --disable-static --with-perl-options=INSTALLDIRS="vendor" - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${startdir}/pkg install || return 1 - # remove unneeded dynloader bootstrap file - rm ${pkgdir}/usr/lib/perl5/vendor_perl/auto/Xfce4/Xfconf/Xfconf.bs - - # fix insecure rpath, http://bugs.archlinux.org/task/19980 - chrpath -d ${pkgdir}/usr/lib/perl5/vendor_perl/auto/Xfce4/Xfconf/Xfconf.so -} diff --git a/abs/extra/xfsdump/PKGBUILD b/abs/extra/xfsdump/PKGBUILD index 1d40228..33e7415 100644 --- a/abs/extra/xfsdump/PKGBUILD +++ b/abs/extra/xfsdump/PKGBUILD @@ -1,16 +1,15 @@ # $Id: PKGBUILD 26569 2009-02-09 18:40:22Z paul $ # Maintainer: judd <jvinet@zeroflux.org> pkgname=xfsdump -pkgver=3.0.0 +pkgver=3.1.0 pkgrel=1 pkgdesc="Additional XFS filesystem utilities" arch=(i686 x86_64) license=('LGPL') url="http://oss.sgi.com/projects/xfs/" -depends=('xfsprogs>=3.0.0' 'attr>=2.4.39' 'acl>=2.2.45' 'dmapi') +depends=('xfsprogs>=3.1.8' 'attr>=2.4.39' 'acl>=2.2.45' 'dmapi') options=('!makeflags') source=(ftp://oss.sgi.com/projects/xfs/cmd_tars/xfsdump-${pkgver}.tar.gz) -md5sums=('') options=(!emptydirs) build() { @@ -23,3 +22,4 @@ build() { rm -f $startdir/pkg/usr/lib/*.la rm -f $startdir/pkg/usr/bin/{xfsdump,xfsrestore} } +md5sums=('abe035537d0f325c4f2dbacc0d2b6fd6') diff --git a/abs/extra/xine-lib/ChangeLog b/abs/extra/xine-lib/ChangeLog deleted file mode 100644 index 4d92448..0000000 --- a/abs/extra/xine-lib/ChangeLog +++ /dev/null @@ -1,106 +0,0 @@ -2010-09-25 Eric Belanger <eric@archlinux.org> - - * Added XvMC build patch (close FS#20944) - -2010-07-28 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.19-1 - * Upstream update - -2010-07-03 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.18.1-2 - * Rebuilt against imagemagick 6.6.2.10 - * Added gtk2 and mesa optdepends - -2010-03-23 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.18.1-1 - * Upstream update - * Changed jack-audio-connection-kit references to jack - * Added vcdimager optdepends - -2010-02-23 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.18-1 - * Upstream update - -2010-01-21 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.17-3 - * Rebuilt against imagemagick 6.5.9.0 - -2010-01-10 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.17-2 - * Rebuilt against ffmpeg 20100108 - -2009-12-01 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.17-1 - * Upstream update - * Updated url - -2009-04-19 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.16.3-3 - * Updated ffmpeg versioned depends - -2009-04-17 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.16.3-2 - * Rebuilt against libcdio 0.81 - -2009-04-03 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.16.3-1 - * Upstream update - -2009-02-20 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.16.2-2 - * Rebuilt against faad2 2.7 - -2009-02-11 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.16.2-1 - * Upstream update - -2009-02-02 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.16.1-2 - * Rebuilt against imagemagick 6.4.8.10 - -2009-01-11 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.16.1-1 - * Upstream update - -2009-01-10 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.16-1 - * Upstream update - -2008-12-05 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.15-4 - * Rebuilt against heimdal 1.2.1 - * Added xcb support - -2008-11-27 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.15-3 - * Added jack support (close FS#12020) - * Fixed several build issue (close FS#12117) - -2008-08-14 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.15-1 - * Upstream update - -2008-07-28 Eric Belanger <eric@archlinux.org> - - * xine-lib 1.1.14-2 - * Switched to the more recent externel ffmpeg snapshot (close FS#10286) - * Updated win32 codecs directory location (close FS#11011) - * Added ChangeLog diff --git a/abs/extra/xine-lib/PKGBUILD b/abs/extra/xine-lib/PKGBUILD deleted file mode 100644 index d14313e..0000000 --- a/abs/extra/xine-lib/PKGBUILD +++ /dev/null @@ -1,50 +0,0 @@ -# $Id: PKGBUILD 91275 2010-09-25 21:56:25Z eric $ -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: Judd Vinet <jvinet@zeroflux.org> - -pkgname=xine-lib -pkgver=1.1.19 -pkgrel=2 -pkgdesc="A multimedia playback engine" -arch=('i686' 'x86_64') -url="http://www.xine-project.org" -license=('LGPL' 'GPL') -install=xine.install -depends=('libgl' 'libxvmc' 'flac' 'libvorbis' 'sdl' 'libmng' 'libtheora' - 'libxcb' 'wavpack' 'ffmpeg' 'heimdal' 'faad2') -makedepends=('pkg-config' 'libtool' 'imagemagick' 'smbclient' 'mesa' 'alsa-lib' - 'vcdimager' 'gtk2') -optdepends=('imagemagick: for using the imagemagick plugin' 'smbclient: for using the smb plugin' \ - 'gtk2: for using the gdk-pixbuf plugin' 'mesa: for using the opengl plugin') -options=('!libtool') -#changelog=ChangeLog -source=(http://downloads.sourceforge.net/sourceforge/xine/${pkgname}-${pkgver}.tar.bz2 - xine-lib-1.1.1-configure-no-mcpu-march.patch xine-lib-1.1.19-xvmc.patch) -md5sums=('a410a0f0617e1d6309f0cbe907f73f8a' '9776df4eb54d2f1f68d8268adbc3b5c2'\ - '8662fb124870b1dd7effe4ff5e2a2e3d') -sha1sums=('5afcc28c5cf2bdaab99d951960f6587797e1e5a0' '121a8358d7919b2e51067412373f52848290338a'\ - '920bf27e6e3523dfe4cc9c802ff713e9688a3f34') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -p0 < ../xine-lib-1.1.1-configure-no-mcpu-march.patch - patch -p0 < ../xine-lib-1.1.19-xvmc.patch - - libtoolize --force --copy - aclocal -I m4 - autoconf - automake --add-missing - - ./configure --prefix=/usr --with-w32-path=/usr/lib/codecs \ - --with-xv-path=/usr/lib --with-xxmc-path=/usr/lib --with-xvmc-path=/usr/lib \ - --with-libflac --with-wavpack --with-xcb \ - --without-arts --without-jack --without-speex \ - --disable-gnomevfs --without-pulseaudio --disable-aalib \ - --disable-modplug --with-external-ffmpeg - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/abs/extra/xine-lib/__changelog b/abs/extra/xine-lib/__changelog deleted file mode 100644 index 0f4719d..0000000 --- a/abs/extra/xine-lib/__changelog +++ /dev/null @@ -1,3 +0,0 @@ -add xine.install -disable jack -disable esound diff --git a/abs/extra/xine-lib/xine-lib-1.1.1-configure-no-mcpu-march.patch b/abs/extra/xine-lib/xine-lib-1.1.1-configure-no-mcpu-march.patch deleted file mode 100644 index 4b6ba9e..0000000 --- a/abs/extra/xine-lib/xine-lib-1.1.1-configure-no-mcpu-march.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- m4/optimizations.m4.orig 2005-11-27 01:20:08.000000000 +0100 -+++ m4/optimizations.m4 2005-11-27 01:22:56.000000000 +0100 -@@ -161,10 +161,6 @@ - ;; - - esac -- if test x"$archopt_val" != x; then -- CFLAGS="$sarchopt=$archopt_val $CFLAGS" -- DEBUG_CFLAGS="$sarchopt=$archopt_val $DEBUG_CFLAGS" -- fi - fi - else - dnl we have the Intel compiler diff --git a/abs/extra/xine-lib/xine-lib-1.1.19-xvmc.patch b/abs/extra/xine-lib/xine-lib-1.1.19-xvmc.patch deleted file mode 100644 index bef8b0b..0000000 --- a/abs/extra/xine-lib/xine-lib-1.1.19-xvmc.patch +++ /dev/null @@ -1,17 +0,0 @@ -Quoting ChangeLog of X11's videoproto package: -vldXvMC.h: stop uselessly including XvMClib.h - ---- src/video_out/xxmc.h -+++ src/video_out/xxmc.h -@@ -77,10 +77,10 @@ - #include <X11/extensions/XShm.h> - #include <X11/extensions/Xv.h> - #include <X11/extensions/Xvlib.h> -+#include <X11/extensions/XvMClib.h> - #ifdef HAVE_VLDXVMC - #include <X11/extensions/vldXvMC.h> - #else -- #include <X11/extensions/XvMClib.h> - #include <X11/extensions/XvMC.h> - #endif - diff --git a/abs/extra/xine-lib/xine.install b/abs/extra/xine-lib/xine.install deleted file mode 100755 index f9102ee..0000000 --- a/abs/extra/xine-lib/xine.install +++ /dev/null @@ -1,27 +0,0 @@ -# arg 1: the new package version - post_install() { - MYTHOME=` su - mythtv -c "echo ~" ` - if [ ! -f $MYTHOME/.xine/config ] - then - echo "Copying in standard config file for xine" - mkdir -p $MYTHOME/.xine/ - cp -rp $TEMPLATES/xine.config.template $MYTHOME/.xine/config - chown -R mythtv:mythtv $MYTHOME/.xine - fi - } - -# # arg 1: the new package version -# # arg 2: the old package version - post_upgrade() { - post_install $1 - } -# -# # arg 1: the old package version - post_remove() { - /bin/true - } - -op=$1 -shift - -$op $* diff --git a/abs/extra/xine-ui/PKGBUILD b/abs/extra/xine-ui/PKGBUILD deleted file mode 100644 index 59ae0cb..0000000 --- a/abs/extra/xine-ui/PKGBUILD +++ /dev/null @@ -1,43 +0,0 @@ -# $Id$ -# Maintainer: Eric BĂ©langer <eric@archlinux.org> - -pkgname=xine-ui -pkgver=0.99.6 -pkgrel=2 -pkgdesc="A free video player for Unix" -arch=('i686' 'x86_64') -license=('GPL') -url="http://www.xine-project.org" -depends=('xine-lib' 'curl' 'libxtst' 'libxinerama' 'libxv' 'libpng' 'libxft' - 'libxxf86vm' 'readline' 'xdg-utils' 'shared-mime-info' 'hicolor-icon-theme' - 'desktop-file-utils' 'lirc-utils') -makedepends=('libxt') -options=('!emptydirs' '!strip') -install=xine-ui.install -source=(http://downloads.sourceforge.net/xine/${pkgname}-${pkgver}.tar.xz - lirc-check-a89347673097.patch lirc-makefile-a68dd15ff7ae.patch - fix_lirc.diff xine-ui-xdg.diff) -md5sums=('d468b4e7fe39ff19888261e1da9be914' - '4f06f63f5fd55b08a648e5d63f881898' - '9f5acaf14f3945aa2ce428631d09cd47' - '0174bd096756b9c6f47e9b8b5ff6e145' - '5972b4061acf3b553760de9ae2178d38') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 < "${srcdir}/lirc-check-a89347673097.patch" - patch -p1 < "${srcdir}/lirc-makefile-a68dd15ff7ae.patch" - patch -p1 < "${srcdir}/fix_lirc.diff" - patch -p1 < "${srcdir}/xine-ui-xdg.diff" - autoconf - ./configure --prefix=/usr --mandir=/usr/share/man \ - --with-x --enable-lirc --without-aalib --enable-debug - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -d "${pkgdir}/usr/share/applications" - mv "${pkgdir}/usr/share/xine/desktop/xine.desktop" "${pkgdir}/usr/share/applications" -} diff --git a/abs/extra/xine-ui/fix_lirc.diff b/abs/extra/xine-ui/fix_lirc.diff deleted file mode 100644 index 93890cb..0000000 --- a/abs/extra/xine-ui/fix_lirc.diff +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/m4/_xine.m4 b/m4/_xine.m4 ---- a/m4/_xine.m4 -+++ b/m4/_xine.m4 -@@ -46,7 +46,8 @@ AC_DEFUN([AC_CHECK_LIRC], - fi - for llirc in $lirc_libprefix /lib /usr/lib /usr/local/lib; do - AC_CHECK_FILE(["$llirc/liblirc_client.so"], -- [LIRC_LIBS="$llirc/liblirc_client.so"] -+ [LIRC_LIBS="$llirc/liblirc_client.so" -+ found_lirc=yes] - AC_DEFINE([HAVE_LIRC],,[Define this if you have LIRC (liblirc_client) installed]), - AC_CHECK_FILE(["$llirc/liblirc_client.a"], - [LIRC_LIBS="$llirc/liblirc_client.a" diff --git a/abs/extra/xine-ui/lirc-check-a89347673097.patch b/abs/extra/xine-ui/lirc-check-a89347673097.patch deleted file mode 100644 index c1c8d26..0000000 --- a/abs/extra/xine-ui/lirc-check-a89347673097.patch +++ /dev/null @@ -1,64 +0,0 @@ - -# HG changeset patch -# User Darren Salt <linux@youmustbejoking.demon.co.uk> -# Date 1268754560 0 -# Node ID a89347673097053d89675e991ab403cda04d94cd -# Parent ed3079d668ed5291d1daf7096d6b42c90ee06e11 -Resync LIRC check with gxine; no longer fails if liblircclient0.pc is missing. - ---- a/m4/_xine.m4 Sun Mar 14 18:04:46 2010 +0000 -+++ b/m4/_xine.m4 Tue Mar 16 15:49:20 2010 +0000 -@@ -25,14 +25,14 @@ - dnl - AC_DEFUN([AC_CHECK_LIRC], - [AC_ARG_ENABLE(lirc, -- [ --disable-lirc Turn off LIRC support.], -- [], enable_lirc=yes) -+ [AS_HELP_STRING([--disable-lirc], [turn off LIRC support])], -+ [given=Y], [given=N; enable_lirc=yes]) - - found_lirc=no - if test x"$enable_lirc" = xyes; then - have_lirc=yes -- PKG_CHECK_MODULES(LIRC, liblircclient0, [found_lirc=yes], []) -- if test "$LIRC_CFLAGS" != ''; then -+ PKG_CHECK_MODULES(LIRC, liblircclient0, [found_lirc=yes], [:]) -+ if test "$found_lirc" = yes; then - LIRC_INCLUDE="$LIRC_CFLAGS" - else - AC_REQUIRE_CPP -@@ -42,15 +42,20 @@ - - if test x"$LIRC_PREFIX" != "x"; then - lirc_libprefix="$LIRC_PREFIX/lib" -- LIRC_INCLUDE="-I$LIRC_PREFIX/include" -+ LIRC_INCLUDE="-I$LIRC_PREFIX/include" - fi - for llirc in $lirc_libprefix /lib /usr/lib /usr/local/lib; do -- AC_CHECK_FILE(["$llirc/liblirc_client.a"], -- [LIRC_LIBS="$llirc/liblirc_client.a" -- found_lirc=yes],,) -+ AC_CHECK_FILE(["$llirc/liblirc_client.so"], -+ [LIRC_LIBS="$llirc/liblirc_client.so"] -+ AC_DEFINE([HAVE_LIRC],,[Define this if you have LIRC (liblirc_client) installed]), -+ AC_CHECK_FILE(["$llirc/liblirc_client.a"], -+ [LIRC_LIBS="$llirc/liblirc_client.a" -+ found_lirc=yes],,) -+ ) - done - else -- AC_MSG_RESULT([*** LIRC client support not available, LIRC support will be disabled ***]); -+ test $given = Y && AC_MSG_ERROR([LIRC client support requested but not available]) -+ AC_MSG_RESULT([*** LIRC client support not available, LIRC support will be disabled ***]) - fi - fi - fi -@@ -59,7 +64,6 @@ - fi - AC_SUBST(LIRC_LIBS) - AC_SUBST(LIRC_INCLUDE) -- AM_CONDITIONAL([HAVE_LIRC], [test "x$have_lirc" = "xyes"]) - ]) - - dnl AC_C_ATTRIBUTE_ALIGNED - diff --git a/abs/extra/xine-ui/lirc-makefile-a68dd15ff7ae.patch b/abs/extra/xine-ui/lirc-makefile-a68dd15ff7ae.patch deleted file mode 100644 index daad4f0..0000000 --- a/abs/extra/xine-ui/lirc-makefile-a68dd15ff7ae.patch +++ /dev/null @@ -1,19 +0,0 @@ - -# HG changeset patch -# User Darren Salt <linux@youmustbejoking.demon.co.uk> -# Date 1268758696 0 -# Node ID a68dd15ff7ae4be65c2ace25ef66966d7c272514 -# Parent 882c464d4a650d09da37ade366face74452c1897 -Restore definition of HAVE_LIRC for use in makefiles. - ---- a/m4/_xine.m4 Mon Mar 15 12:03:01 2010 -0700 -+++ b/m4/_xine.m4 Tue Mar 16 16:58:16 2010 +0000 -@@ -62,6 +62,7 @@ - if test "$found_lirc" = yes; then - AC_DEFINE([HAVE_LIRC],,[Define this if you have LIRC (liblirc_client) installed]) - fi -+ AM_CONDITIONAL([HAVE_LIRC], [test "$found_lirc" = yes]) - AC_SUBST(LIRC_LIBS) - AC_SUBST(LIRC_INCLUDE) - ]) - diff --git a/abs/extra/xine-ui/xine-ui-xdg.diff b/abs/extra/xine-ui/xine-ui-xdg.diff deleted file mode 100644 index 959d674..0000000 --- a/abs/extra/xine-ui/xine-ui-xdg.diff +++ /dev/null @@ -1,206 +0,0 @@ ---- xine-ui-0.99.6.orig/src/xitk/common.h -+++ xine-ui-0.99.6/src/xitk/common.h -@@ -331,6 +331,5 @@ typedef struct { - int use_root_window; - - int ssaver_enabled; -- int ssaver_timeout; - - int skip_by_chapter; ---- xine-ui-0.99.6.orig/src/xitk/main.c -+++ xine-ui-0.99.6/src/xitk/main.c -@@ -1383,6 +1383,8 @@ int main(int argc, char *argv[]) { - if (sigprocmask (SIG_BLOCK, &vo_mask, NULL)) - fprintf (stderr, "sigprocmask() failed.\n"); - -+ signal(SIGCHLD, SIG_IGN); -+ - gGui = (gGui_t *) calloc(1, sizeof(gGui_t)); - - gGui->stream = NULL; ---- xine-ui-0.99.6.orig/src/xitk/panel.c -+++ xine-ui-0.99.6/src/xitk/panel.c -@@ -356,7 +356,6 @@ void panel_update_runtime_display(void) - * Update slider thread. - */ - static void *slider_loop(void *dummy) { -- int screensaver_timer = 0; - int status, speed; - int pos, secs; - int i = 0; -@@ -441,20 +440,7 @@ static void *slider_loop(void *dummy) { - else - video_window_set_mrl((char *)gGui->mmk.mrl); - -- if(!xitk_is_window_iconified(gGui->video_display, gGui->video_window)) { -- -- if(gGui->ssaver_timeout) { -- -- if(!(i % 2)) -- screensaver_timer++; -- -- if(screensaver_timer >= gGui->ssaver_timeout) { -- screensaver_timer = 0; -- video_window_reset_ssaver(); -- -- } -- } -- } -+ video_window_suspend_ssaver(!xitk_is_window_iconified(gGui->video_display, gGui->video_window)); - - if(gGui->logo_mode == 0) { - -@@ -494,6 +480,8 @@ static void *slider_loop(void *dummy) { - stream_infos_update_infos(); - - } -+ } else { -+ video_window_suspend_ssaver(0); - } - } - ---- xine-ui-0.99.6.orig/src/xitk/videowin.c -+++ xine-ui-0.99.6/src/xitk/videowin.c -@@ -1087,6 +1087,9 @@ static void video_window_adapt_size (voi - - /* The old window should be destroyed now */ - if(old_video_window != None) { -+ /* Screensaver control is tied to our window id */ -+ video_window_suspend_ssaver(0); -+ - XDestroyWindow(gGui->video_display, old_video_window); - - if(gGui->cursor_grabbed) -@@ -2261,69 +2264,34 @@ static void video_window_handle_event (X - - } - --void video_window_reset_ssaver(void) { -+void video_window_suspend_ssaver(int do_suspend) { -+ static int was_suspended; - -- if(gGui->ssaver_enabled && (xitk_get_last_keypressed_time() >= (long int) gGui->ssaver_timeout)) { -+ do_suspend = do_suspend && gGui->ssaver_enabled; - --#ifdef HAVE_XTESTEXTENSION -- if(gVw.have_xtest == True) { -- -- gVw.fake_key_cur++; -- -- if(gVw.fake_key_cur >= 2) -- gVw.fake_key_cur = 0; -- -- XLockDisplay(gGui->video_display); -- XTestFakeKeyEvent(gGui->video_display, gVw.fake_keys[gVw.fake_key_cur], True, CurrentTime); -- XTestFakeKeyEvent(gGui->video_display, gVw.fake_keys[gVw.fake_key_cur], False, CurrentTime); -- XSync(gGui->video_display, False); -- XUnlockDisplay(gGui->video_display); -+ if(was_suspended != do_suspend) { -+ if(fork() == 0) { -+ char window_id[30]; -+ char *args[] = { "xdg-screensaver", NULL, window_id, NULL }; -+ int fd; -+ -+ for(fd = 3; fd < 256; fd++) -+ close(fd); -+ -+ args[1] = do_suspend ? "suspend" : "resume"; -+ sprintf(window_id, "%lu", (unsigned long)gGui->video_window); -+ execvp(args[0], args); -+ _exit(0); - } -- else --#endif -- { -- /* Reset the gnome screensaver. Look up the command in PATH only once to save time, */ -- /* assuming its location and permission will not change during run time of xine-ui. */ -- { -- static char *const gssaver_args[] = { "gnome-screensaver-command", "--poke", NULL }; -- static char *gssaver_path = NULL; -- -- if(!gssaver_path) { -- char *path = getenv("PATH"); -- -- if(!path) -- path = "/usr/local/bin:/usr/bin"; -- do { -- char *p, *pbuf; -- int plen; -- -- for(p = path; *path && *path != ':'; path++) -- ; -- if(p == path) -- plen = 1, p = "."; -- else -- plen = path - p; -- asprintf(&pbuf, "%.*s/%s", plen, p, gssaver_args[0]); -- if ( access(pbuf, X_OK) ) { -- free(pbuf); -- gssaver_path = ""; -- } else -- gssaver_path = pbuf; -- } while(!gssaver_path[0] && *path++); -- } -- if(gssaver_path[0] && (fork() == 0)) { -- execv(gssaver_path, gssaver_args); -- exit(0); -- } -- } - -- XLockDisplay(gGui->video_display); -- XResetScreenSaver(gGui->video_display); -- XUnlockDisplay(gGui->video_display); -- } -+ was_suspended = do_suspend; - } - } - -+void video_window_reset_ssaver(void) { -+ video_window_suspend_ssaver(1); -+} -+ - void video_window_get_frame_size(int *w, int *h) { - if(w) - *w = gVw.frame_width; ---- xine-ui-0.99.6.orig/src/xitk/videowin.h -+++ xine-ui-0.99.6/src/xitk/videowin.h -@@ -81,6 +81,7 @@ void video_window_get_mag (float *xmag, - void video_window_update_logo(void); - void video_window_change_skins(int); - -+void video_window_suspend_ssaver(int do_suspend); - void video_window_reset_ssaver(void); - - void video_window_get_frame_size(int *w, int *h); ---- xine-ui-0.99.6.orig/src/xitk/event.c -+++ xine-ui-0.99.6/src/xitk/event.c -@@ -135,9 +135,6 @@ static void skip_by_chapter_cb(void *dat - gGui->skip_by_chapter = cfg->num_value; - panel_update_nextprev_tips(); - } --static void ssaver_timeout_cb(void *data, xine_cfg_entry_t *cfg) { -- gGui->ssaver_timeout = cfg->num_value; --} - - static void visual_anim_cb(void *data, xine_cfg_entry_t *cfg) { - -@@ -1614,14 +1611,6 @@ void gui_init (int nfiles, char *filenam - snapshot_loc_cb, - CONFIG_NO_DATA); - -- gGui->ssaver_timeout = -- xine_config_register_num (__xineui_global_xine_instance, "gui.screensaver_timeout", 10, -- _("Screensaver reset interval (s)"), -- _("Time, in seconds, between two faked events to keep a screensaver quiet, 0 to disable."), -- CONFIG_LEVEL_ADV, -- ssaver_timeout_cb, -- CONFIG_NO_DATA); -- - gGui->skip_by_chapter = - xine_config_register_bool (__xineui_global_xine_instance, "gui.skip_by_chapter", 1, - _("Chapter hopping"), - - - - - diff --git a/abs/extra/xine-ui/xine-ui.install b/abs/extra/xine-ui/xine-ui.install deleted file mode 100644 index 3b3aff7..0000000 --- a/abs/extra/xine-ui/xine-ui.install +++ /dev/null @@ -1,13 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null - update-mime-database usr/share/mime &> /dev/null - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/abs/extra/xinetd/PKGBUILD b/abs/extra/xinetd/PKGBUILD index af0e362..3ed7dee 100644 --- a/abs/extra/xinetd/PKGBUILD +++ b/abs/extra/xinetd/PKGBUILD @@ -1,32 +1,47 @@ -# $Id: PKGBUILD 31124 2009-03-24 12:46:33Z allan $ -# Maintainer: Judd <jvinet@zeroflux.org> +# $Id: PKGBUILD 162234 2012-06-24 05:44:41Z tpowa $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +# Contributor: Judd <jvinet@zeroflux.org> + pkgname=xinetd -pkgver=2.3.14 -pkgrel=5 -pkgdesc="xinetd is a secure replacement for inetd" +pkgver=2.3.15 +pkgrel=2 +pkgdesc="A secure replacement for inetd" arch=('i686' 'x86_64') url="http://www.xinetd.org/" license=('custom') -depends=('tcp_wrappers') optdepends=('perl: for xconv.pl script') backup=('etc/xinetd.conf' 'etc/xinetd.d/servers' 'etc/xinetd.d/services') -source=(http://www.xinetd.org/xinetd-$pkgver.tar.gz xinetd.conf xinetd \ - servers services) -md5sums=('567382d7972613090215c6c54f9b82d9' 'f109f699a07bc8cfb5791060f5e87f9e'\ - 'ea37a2794f202e6b953d9b6956dad16a' '21f47b4aa20921cfaddddd9f9a407f81'\ - '9fa2061dc7dd738c8424251deb86f81e') +source=(http://www.xinetd.org/xinetd-$pkgver.tar.gz + xinetd.conf + xinetd + servers + services + xinetd.service) +md5sums=('77358478fd58efa6366accae99b8b04c' + 'f109f699a07bc8cfb5791060f5e87f9e' + 'ea37a2794f202e6b953d9b6956dad16a' + '21f47b4aa20921cfaddddd9f9a407f81' + '9fa2061dc7dd738c8424251deb86f81e' + '08466ed714ea8ba42ad81f6fb3aa62e7') build() { cd $srcdir/$pkgname-$pkgver sed -i "s#${prefix}/man#${prefix}/share/man#" configure - ./configure --prefix=/usr --with-libwrap - make || return 1 + ./configure --prefix=/usr --without-libwrap + make +} + +package() { + cd $srcdir/$pkgname-$pkgver make prefix=$pkgdir/usr install - install -D -m755 ../xinetd $pkgdir/etc/rc.d/xinetd - install -D -m644 ../xinetd.conf $pkgdir/etc/xinetd.conf - install -D -m644 ../servers $pkgdir/etc/xinetd.d/servers - install -D -m644 ../services $pkgdir/etc/xinetd.d/services + + install -Dm755 $srcdir/xinetd $pkgdir/etc/rc.d/xinetd + install -Dm644 $srcdir/xinetd.conf $pkgdir/etc/xinetd.conf + install -Dm644 $srcdir/servers $pkgdir/etc/xinetd.d/servers + install -Dm644 $srcdir/services $pkgdir/etc/xinetd.d/services + # install systemd files + install -Dm644 $srcdir/xinetd.service $pkgdir/usr/lib/systemd/system/xinetd.service # install license - install -D -m644 COPYRIGHT $pkgdir/usr/share/licenses/$pkgname/COPYRIGHT + install -Dm644 COPYRIGHT $pkgdir/usr/share/licenses/$pkgname/COPYRIGHT } diff --git a/abs/extra/xinetd/xinetd-2.3.14.tar.gz b/abs/extra/xinetd/xinetd-2.3.14.tar.gz Binary files differdeleted file mode 100644 index d2050e3..0000000 --- a/abs/extra/xinetd/xinetd-2.3.14.tar.gz +++ /dev/null diff --git a/abs/extra/xinetd/xinetd.service b/abs/extra/xinetd/xinetd.service new file mode 100644 index 0000000..c6f6271 --- /dev/null +++ b/abs/extra/xinetd/xinetd.service @@ -0,0 +1,10 @@ +[Unit] +Description=A secure replacement for inetd +After=network.target + +[Service] +ExecStart=/usr/sbin/xinetd -dontfork +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/abs/extra/xmbmon/Makefile.in.patch b/abs/extra/xmbmon/Makefile.in.patch deleted file mode 100644 index be3bf73..0000000 --- a/abs/extra/xmbmon/Makefile.in.patch +++ /dev/null @@ -1,37 +0,0 @@ -diff -ru xmbmon205.orig/Makefile.in xmbmon205/Makefile.in ---- xmbmon205.orig/Makefile.in 2004-08-13 17:04:21.000000000 +1000 -+++ xmbmon205/Makefile.in 2008-06-14 00:59:35.000000000 +1000 -@@ -37,11 +37,11 @@ - RM=rm -f - INSTALL=install - --INST_DIR=/usr/local/bin --INST_MANDIR=/usr/local/man/man1 --INST_XDIR=/usr/X11R6/bin --INST_MANXDIR=/usr/X11R6/man/man1 --INST_XRDIR=/usr/X11R6/lib/X11/app-defaults -+INST_DIR=/usr/bin -+INST_MANDIR=/usr/share/man/man1 -+INST_XDIR=/usr/bin -+INST_MANXDIR=/usr/share/man/man1 -+INST_XRDIR=/usr/lib/X11/app-defaults - - .c.o: - $(CC) -c $(CFLAGS) $*.c -@@ -133,12 +133,12 @@ - $(RM) Makefile config.cache config.log config.h config.status - - install: $(PROGRAM) -- $(INSTALL) -o root -g wheel -m 4555 -c -p mbmon $(INST_DIR) -- $(INSTALL) -o root -g wheel -m 4555 -c -p xmbmon $(INST_XDIR) -+ $(INSTALL) -o root -g wheel -m 4555 -c -p mbmon $(DESTDIR)$(INST_DIR) -+ $(INSTALL) -o root -g wheel -m 4555 -c -p xmbmon $(DESTDIR)$(INST_XDIR) - - install-man: $(MANPAGE) -- $(INSTALL) -o root -g wheel -m 444 -c -p mbmon.1 $(INST_MANDIR) -- $(INSTALL) -o root -g wheel -m 444 -c -p xmbmon.1x $(INST_MANXDIR) -+ $(INSTALL) -o root -g wheel -m 444 -c -p mbmon.1 $(DESTDIR)$(INST_MANDIR) -+ $(INSTALL) -o root -g wheel -m 444 -c -p xmbmon.1x $(DESTDIR)$(INST_MANXDIR) - - lint: - $(LINT) $(INCLUDES) $(DEFS) $(FONTDEFINES) $(SRCS) -lm diff --git a/abs/extra/xmbmon/PKGBUILD b/abs/extra/xmbmon/PKGBUILD deleted file mode 100644 index 348094b..0000000 --- a/abs/extra/xmbmon/PKGBUILD +++ /dev/null @@ -1,20 +0,0 @@ -# Contributor: Jonathan Liu <net147@hotmail.com> -pkgname=xmbmon -pkgver=2.05 -pkgrel=2 -pkgdesc="X Motherboard Monitor" -arch=('i686' 'x86_64') -url="http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/download.html" -license=('GPL') -source=(http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/xmbmon/xmbmon205.tar.gz - Makefile.in.patch) -md5sums=('ab6614c785f5b653fcc69fb9c02058f0' - 'e417a1a04b95bc3505b74a52faa54c4a') - -build() { - cd $startdir/src/xmbmon205 - patch -Np1 -i $startdir/src/Makefile.in.patch - ./configure - mkdir -p $startdir/pkg/usr/{bin,share/man/man1} - make DESTDIR=$startdir/pkg install install-man || return 1 -} diff --git a/abs/extra/xmlto/PKGBUILD b/abs/extra/xmlto/PKGBUILD index e6ed12d..6386c18 100644 --- a/abs/extra/xmlto/PKGBUILD +++ b/abs/extra/xmlto/PKGBUILD @@ -1,30 +1,31 @@ -# $Id$ +# $Id: PKGBUILD 149980 2012-02-11 23:31:41Z allan $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Jan de Groot <jgc@archlinux.org> # Contributor: Sergej Pupykin <sergej@aur.archlinux.org> # Contributor: Robert Stoffers <rob1@ubuntu.com> pkgname=xmlto -pkgver=0.0.23 -pkgrel=1 +pkgver=0.0.25 +pkgrel=2 pkgdesc="Convert xml to many other formats" arch=('i686' 'x86_64') url="http://cyberelk.net/tim/software/xmlto/" license=('GPL') -depends=('libxslt>=1.1.24' 'perl-yaml-syck' 'perl-test-pod') +depends=('libxslt' 'perl-yaml-syck' 'perl-test-pod') makedepends=('docbook-xsl') -source=(https://fedorahosted.org/releases/x/m/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('3001d6bb2bbc2c8f6c2301f05120f074') +source=("https://fedorahosted.org/releases/x/m/${pkgname}/${pkgname}-${pkgver}.tar.bz2") +md5sums=('6b6267b1470f8571fe5f63a128970364') build() { cd "$srcdir/${pkgname}-${pkgver}" ./configure --prefix=/usr \ - --mandir=/usr/share/man || return 1 - make || return 1 + --mandir=/usr/share/man + make } package() { cd "$srcdir/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install || return 1 + + make DESTDIR="${pkgdir}" install } diff --git a/abs/extra/xmms/PKGBUILD b/abs/extra/xmms/PKGBUILD index 533c227..1a4e74b 100644 --- a/abs/extra/xmms/PKGBUILD +++ b/abs/extra/xmms/PKGBUILD @@ -1,50 +1,76 @@ -# $Id: PKGBUILD,v 1.3 2007/12/06 01:18:06 Snowman Exp $ -# Maintainer: Eric Belanger <belanger@astro.umontreal.ca> +# $Id: PKGBUILD 146759 2012-01-17 03:41:24Z eric $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> pkgname=xmms pkgver=1.2.11 -pkgrel=1 -pkgdesc="The X MultiMedia System" +pkgrel=4 +pkgdesc="The X MultiMedia System - a multimedia player" arch=('i686' 'x86_64') -url="http://www.xmms.org" +url="http://legacy.xmms2.org/" license=('GPL') -depends=('libsm' 'libxxf86vm' 'zlib' 'gtk' 'libvorbis' 'esd' 'alsa-lib' 'libgl') -makedepends=('mesa') +depends=('gtk' 'libxxf86vm' 'libsm' 'desktop-file-utils') +makedepends=('mesa' 'libmikmod' 'libvorbis' 'alsa-lib' 'libgl') +optdepends=('libmikmod: for the MikMod input plugin' \ + 'libvorbis: for the Ogg Vorbis input plugin' \ + 'alsa-lib: for the alsa output plugin' \ + 'libgl: for the OpenGL Spectrum analyser visualization plugin') options=('!libtool') -source=(http://www.xmms.org/files/1.2.x/$pkgname-$pkgver.tar.bz2 \ - xmms-menu.patch \ - xmms-1.2.10-crossfade-0.3.9.patch \ - xmms-fix.diff) -md5sums=('f3e6dbaf0b3f571a532ab575656be506' 'b7b6f1811bad8d14e4c4534240e45980'\ - '4eb222111a82a2e1ebe63b5f6109133d' 'd7f9dc3712c486658149c4504f7478a7') +install=xmms.install +source=(http://legacy.xmms2.org/${pkgname}-${pkgver}.tar.bz2 \ + xmms-menu.patch xmms-1.2.10-crossfade-0.3.9.patch xmms-fix.diff \ + xmms-1.2.11-CVE-2007-0653.0654.patch xmms-1.2.11-fix-http-title-mpg123.patch \ + xmms-1.2.11-3dse.patch xmms-1.2.10-recode-id3.patch \ + xmms-1.2.10-fonts.patch xmms.16.png xmms.32.png xmms.48.png) sha1sums=('9d1eae4baab25fd35c9ddfb49321ca60222f672d' '27fb6e21bd6db923a425a8df8bd07a2a93867ddb' 'ff5c172752c8bee708d9a9ecd53864cc95a4bcc5' - 'c227284955f2cc16f027dade670155c0f0fbc4ff') + 'c227284955f2cc16f027dade670155c0f0fbc4ff' + '4ef47c34b27b6c868d4301b7a078b257c8604471' + '0c060385561ea2a4b1c7ad3bd35d3646ae9554f5' + '6f6db13c780ba4cbddb8613f0abd2db2823f3021' + '2a3b1bf17054b6bd8b1e5937de5c0ad49af8dc92' + '31abd37c9c57bd13b2088eb11a1e54e5aa312bf3' + '0089d11aa3bce67f3496592d68ee65837406e220' + 'f24071ae484d9b55e61dba076801fa8e7976ff2f' + '485c67cb8c8d4678bb3b0b280d2e233b14153b22') build() { - cd $startdir/src/$pkgname-$pkgver + cd "${srcdir}/${pkgname}-${pkgver}" -# Add id3v2 editing feature (doesn't apply atm, needs to be redone) -# patch -Np1 -i ../id3v2.patch || return 1 # Fix xmms.desktop - patch -Np0 -i ../xmms-menu.patch || return 1 + patch -p0 < ../xmms-menu.patch # Patch for hang with xmms-crossfade - patch -Np1 -i ../xmms-1.2.10-crossfade-0.3.9.patch || return 1 + patch -p1 < ../xmms-1.2.10-crossfade-0.3.9.patch # fix xmms not able to be shown double size,at least needed for x86_64 - patch -Np1 -i ../xmms-fix.diff || return 1 + patch -p1 < ../xmms-fix.diff +# Several patches from Mandriva + patch -p1 < ../xmms-1.2.11-fix-http-title-mpg123.patch + patch -p0 < ../xmms-1.2.10-recode-id3.patch + patch -p1 < ../xmms-1.2.11-3dse.patch + patch -p1 < ../xmms-1.2.10-fonts.patch + patch -p1 < ../xmms-1.2.11-CVE-2007-0653.0654.patch - if [ "$CARCH" == "x86_64" ]; then - ./configure --prefix=/usr --disable-mikmod --disable-simd # for x86_64 - else - ./configure --prefix=/usr --disable-mikmod --enable-simd # for i686 + if [ "$CARCH" == "i686" ]; then + SIMDOPT="--enable-simd" + else + SIMDOPT="--disable-simd" fi - make || return 1 - make DESTDIR=$startdir/pkg install - mkdir -p ${startdir}/pkg/usr/share/{applications,pixmaps} - install -m 644 xmms/xmms.desktop ${startdir}/pkg/usr/share/applications - install -m 644 xmms/xmms_mini.xpm ${startdir}/pkg/usr/share/pixmaps/xmms.xpm + ./configure --prefix=/usr --mandir=/usr/share/man $SIMDOPT + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + install -D -m644 xmms/xmms.desktop "${pkgdir}/usr/share/applications/xmms.desktop" + install -D -m644 xmms/xmms_mini.xpm "${pkgdir}/usr/share/pixmaps/xmms_mini.xpm" + install -D -m644 ../xmms.16.png "${pkgdir}/usr/share/pixmaps/xmms16.png" + install -D -m644 ../xmms.32.png "${pkgdir}/usr/share/pixmaps/xmms32.png" + install -D -m644 ../xmms.48.png "${pkgdir}/usr/share/pixmaps/xmms48.png" + ln -s /usr/share/pixmaps/xmms48.png "${pkgdir}/usr/share/pixmaps/xmms.png" + # don't want wmxmms - rm -rf $startdir/pkg/usr/bin/wmxmms $startdir/pkg/usr/share/xmms - rm -f $startdir/pkg/usr/man/man1/{gnomexmms.1,wmxmms.1} + rm -rf "${pkgdir}/usr/bin/wmxmms" "${pkgdir}/usr/share/xmms" + rm -f "${pkgdir}"/usr/share/man/man1/{gnomexmms.1,wmxmms.1} } diff --git a/abs/extra/xmms/id3v2.patch b/abs/extra/xmms/id3v2.patch deleted file mode 100644 index c8f8ba2..0000000 --- a/abs/extra/xmms/id3v2.patch +++ /dev/null @@ -1,3379 +0,0 @@ -diff -Naur xmms-1.2.9-orig/Input/mpg123/charset.h xmms-1.2.9/Input/mpg123/charset.h ---- xmms-1.2.9-orig/Input/mpg123/charset.h Wed Dec 31 19:00:00 1969 -+++ xmms-1.2.9/Input/mpg123/charset.h Thu Jan 29 05:20:31 2004 -@@ -0,0 +1,420 @@ -+/* charset.h - 2001/12/04 */ -+/* -+ * EasyTAG - Tag editor for MP3 and OGG files -+ * Copyright (C) 2000-2002 Jerome Couderc <j.couderc@ifrance.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ */ -+ -+#ifndef FALSE -+#define FALSE 0 -+#endif -+#ifndef TRUE -+#define TRUE 1 -+#endif -+ -+/* -+ * Standard gettext macros. -+ */ -+#ifdef ENABLE_NLS -+# include <libintl.h> -+# define _(String) gettext (String) -+# ifdef gettext_noop -+# define N_(String) gettext_noop (String) -+# else -+# define N_(String) (String) -+# endif -+#else -+# define textdomain(String) (String) -+# define gettext(String) (String) -+# define dgettext(Domain,Message) (Message) -+# define dcgettext(Domain,Message,Type) (Message) -+# define bindtextdomain(Domain,Directory) (Domain) -+# define _(String) (String) -+# define N_(String) (String) -+#endif -+ -+#ifndef DLL_H -+#define DLL_H -+typedef struct DLL_s -+{ -+ void *prev; -+ void *data; -+ void *next; -+} DLL; -+#endif -+ -+#ifndef __CHARSET_H__ -+#define __CHARSET_H__ -+ -+ -+/*************** -+ * Declaration * -+ ***************/ -+ -+typedef struct { -+ char *charset_title; -+ char *charset_name; -+} CharsetInfo; -+ -+ -+/************** -+ * Prototypes * -+ **************/ -+ -+//static gchar* get_current_charset (void); -+ -+/* Used for ogg tags */ -+char* convert_to_utf8 (const char *string); -+char* convert_from_utf8 (const char *string); -+ -+char* convert_from_file_to_user (const char *string); -+char* convert_from_user_to_file (const char *string); -+ -+DLL *Charset_Create_List (void); -+char *Charset_Get_Name_From_Title (char *charset_title); -+char *Charset_Get_Title_From_Name (char *charset_name); -+ -+short int test_conversion_charset (char *from, char *to); -+ -+ -+#endif /* __CHARSET_H__ */ -+ -+/* -+ * Main part of code, written by: -+ * -+ * Copyright (C) 1999-2001 Hĺvard Kvĺlen <havardk@xmms.org> -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License -+ * as published by the Free Software Foundation; either version 2 -+ * of the License, or (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -+ * 02111-1307, USA. -+ * -+ */ -+ -+#include <stdlib.h> -+#include <string.h> -+#include <errno.h> -+ -+#ifdef HAVE_ICONV_OPEN -+#include <iconv.h> -+#endif -+ -+#ifdef HAVE_LANGINFO_CODESET -+#include <langinfo.h> -+#endif -+ -+/**************** -+ * Declarations * -+ ****************/ -+ -+#define CHARSET_TRANS_ARRAY_LEN ( sizeof(charset_trans_array) / sizeof((charset_trans_array)[0]) ) -+const CharsetInfo charset_trans_array[] = { -+ {N_("Arabic (IBM-864)"), "IBM864" }, -+ {N_("Arabic (ISO-8859-6)"), "ISO-8859-6" }, -+ {N_("Arabic (Windows-1256)"), "windows-1256" }, -+ {N_("Baltic (ISO-8859-13)"), "ISO-8859-13" }, -+ {N_("Baltic (ISO-8859-4)"), "ISO-8859-4" }, -+ {N_("Baltic (Windows-1257)"), "windows-1257" }, -+ {N_("Celtic (ISO-8859-14)"), "ISO-8859-14" }, -+ {N_("Central European (IBM-852)"), "IBM852" }, -+ {N_("Central European (ISO-8859-2)"), "ISO-8859-2" }, -+ {N_("Central European (Windows-1250)"), "windows-1250" }, -+ {N_("Chinese Simplified (GB18030)"), "gb18030" }, -+ {N_("Chinese Simplified (GB2312)"), "GB2312" }, -+ {N_("Chinese Traditional (Big5)"), "Big5" }, -+ {N_("Chinese Traditional (Big5-HKSCS)"), "Big5-HKSCS" }, -+ {N_("Cyrillic (IBM-855)"), "IBM855" }, -+ {N_("Cyrillic (ISO-8859-5)"), "ISO-8859-5" }, -+ {N_("Cyrillic (ISO-IR-111)"), "ISO-IR-111" }, -+ {N_("Cyrillic (KOI8-R)"), "KOI8-R" }, -+ {N_("Cyrillic (Windows-1251)"), "windows-1251" }, -+ {N_("Cyrillic/Russian (CP-866)"), "IBM866" }, -+ {N_("Cyrillic/Ukrainian (KOI8-U)"), "KOI8-U" }, -+ {N_("English (US-ASCII)"), "us-ascii" }, -+ {N_("Greek (ISO-8859-7)"), "ISO-8859-7" }, -+ {N_("Greek (Windows-1253)"), "windows-1253" }, -+ {N_("Hebrew (IBM-862)"), "IBM862" }, -+ {N_("Hebrew (Windows-1255)"), "windows-1255" }, -+ {N_("Japanese (EUC-JP)"), "EUC-JP" }, -+ {N_("Japanese (ISO-2022-JP)"), "ISO-2022-JP" }, -+ {N_("Japanese (Shift_JIS)"), "Shift_JIS" }, -+ {N_("Korean (EUC-KR)"), "EUC-KR" }, -+ {N_("Nordic (ISO-8859-10)"), "ISO-8859-10" }, -+ {N_("South European (ISO-8859-3)"), "ISO-8859-3" }, -+ {N_("Thai (TIS-620)"), "TIS-620" }, -+ {N_("Turkish (IBM-857)"), "IBM857" }, -+ {N_("Turkish (ISO-8859-9)"), "ISO-8859-9" }, -+ {N_("Turkish (Windows-1254)"), "windows-1254" }, -+ {N_("Unicode (UTF-7)"), "UTF-7" }, -+ {N_("Unicode (UTF-8)"), "UTF-8" }, -+ {N_("Unicode (UTF-16BE)"), "UTF-16BE" }, -+ {N_("Unicode (UTF-16LE)"), "UTF-16LE" }, -+ {N_("Unicode (UTF-32BE)"), "UTF-32BE" }, -+ {N_("Unicode (UTF-32LE)"), "UTF-32LE" }, -+ {N_("Vietnamese (VISCII)"), "VISCII" }, -+ {N_("Vietnamese (Windows-1258)"), "windows-1258" }, -+ {N_("Visual Hebrew (ISO-8859-8)"), "ISO-8859-8" }, -+ {N_("Western (IBM-850)"), "IBM850" }, -+ {N_("Western (ISO-8859-1)"), "ISO-8859-1" }, -+ {N_("Western (ISO-8859-15)"), "ISO-8859-15" }, -+ {N_("Western (Windows-1252)"), "windows-1252" } -+ -+ /* -+ * From this point, character sets aren't supported by iconv -+ */ -+/* {N_("Arabic (IBM-864-I)"), "IBM864i" }, -+ {N_("Arabic (ISO-8859-6-E)"), "ISO-8859-6-E" }, -+ {N_("Arabic (ISO-8859-6-I)"), "ISO-8859-6-I" }, -+ {N_("Arabic (MacArabic)"), "x-mac-arabic" }, -+ {N_("Armenian (ARMSCII-8)"), "armscii-8" }, -+ {N_("Central European (MacCE)"), "x-mac-ce" }, -+ {N_("Chinese Simplified (GBK)"), "x-gbk" }, -+ {N_("Chinese Simplified (HZ)"), "HZ-GB-2312" }, -+ {N_("Chinese Traditional (EUC-TW)"), "x-euc-tw" }, -+ {N_("Croatian (MacCroatian)"), "x-mac-croatian" }, -+ {N_("Cyrillic (MacCyrillic)"), "x-mac-cyrillic" }, -+ {N_("Cyrillic/Ukrainian (MacUkrainian)"), "x-mac-ukrainian" }, -+ {N_("Farsi (MacFarsi)"), "x-mac-farsi"}, -+ {N_("Greek (MacGreek)"), "x-mac-greek" }, -+ {N_("Gujarati (MacGujarati)"), "x-mac-gujarati" }, -+ {N_("Gurmukhi (MacGurmukhi)"), "x-mac-gurmukhi" }, -+ {N_("Hebrew (ISO-8859-8-E)"), "ISO-8859-8-E" }, -+ {N_("Hebrew (ISO-8859-8-I)"), "ISO-8859-8-I" }, -+ {N_("Hebrew (MacHebrew)"), "x-mac-hebrew" }, -+ {N_("Hindi (MacDevanagari)"), "x-mac-devanagari" }, -+ {N_("Icelandic (MacIcelandic)"), "x-mac-icelandic" }, -+ {N_("Korean (JOHAB)"), "x-johab" }, -+ {N_("Korean (UHC)"), "x-windows-949" }, -+ {N_("Romanian (MacRomanian)"), "x-mac-romanian" }, -+ {N_("Turkish (MacTurkish)"), "x-mac-turkish" }, -+ {N_("User Defined"), "x-user-defined" }, -+ {N_("Vietnamese (TCVN)"), "x-viet-tcvn5712" }, -+ {N_("Vietnamese (VPS)"), "x-viet-vps" }, -+ {N_("Western (MacRoman)"), "x-mac-roman" }, -+ // charsets whithout posibly translatable names -+ {"T61.8bit", "T61.8bit" }, -+ {"x-imap4-modified-utf7", "x-imap4-modified-utf7"}, -+ {"x-u-escaped", "x-u-escaped" }, -+ {"windows-936", "windows-936" } -+*/ -+}; -+ -+ -+ -+ -+/************* -+ * Functions * -+ *************/ -+// Return the last item of an doubly linked list -+static DLL * -+dll_last_c (DLL *list) -+{ -+ DLL *item = list; -+ -+ while ( item->next ) -+ item = item->next; -+ -+ return item; -+} -+ -+// Append an item to the doubly linked list -+static DLL * -+dll_append_c (DLL *list, void *data) -+{ -+ DLL *item = malloc (sizeof(DLL)); -+ -+ item->data = data; -+ item->prev = dll_last_c(list); -+ item->next = NULL; -+ -+ return item; -+} -+ -+static char* get_current_charset (void) -+{ -+ char *charset = getenv("CHARSET"); -+ -+#ifdef HAVE_LANGINFO_CODESET -+ if (!charset) -+ charset = nl_langinfo(CODESET); -+#endif -+ if (!charset) -+ charset = "ISO-8859-1"; -+ -+ return charset; -+} -+ -+ -+#ifdef HAVE_ICONV_OPEN -+static char* convert_string (const char *string, char *from, char *to) -+{ -+ size_t outleft, outsize, length; -+ iconv_t cd; -+ char *out, *outptr; -+ const char *input = string; -+ -+ if (!string) -+ return NULL; -+ -+ length = strlen(string); -+ -+ /* g_message("converting %s from %s to %s", string, from, to); */ -+ if ((cd = iconv_open(to, from)) == (iconv_t)-1) -+ { -+ fprintf (stderr, "convert_string(): Conversion not supported. Charsets: %s -> %s", from, to); -+ return strdup(string); -+ } -+ -+ /* Due to a GLIBC bug, round outbuf_size up to a multiple of 4 */ -+ /* + 1 for nul in case len == 1 */ -+ outsize = ((length + 3) & ~3) + 1; -+ out = g_malloc(outsize); -+ outleft = outsize - 1; -+ outptr = out; -+ -+ retry: -+ if (iconv(cd, (char **)&input, &length, &outptr, &outleft) == -1) -+ { -+ int used; -+ switch (errno) -+ { -+ case E2BIG: -+ used = outptr - out; -+ outsize = (outsize - 1) * 2 + 1; -+ out = g_realloc(out, outsize); -+ outptr = out + used; -+ outleft = outsize - 1 - used; -+ goto retry; -+ case EINVAL: -+ break; -+ case EILSEQ: -+ /* Invalid sequence, try to get the -+ rest of the string */ -+ input++; -+ length = strlen(input); -+ goto retry; -+ default: -+ fprintf (stderr, "convert_string(): Conversion failed. Inputstring: %s; Error: %s", string, strerror(errno)); -+ break; -+ } -+ } -+ *outptr = '\0'; -+ -+ iconv_close(cd); -+ return out; -+} -+#else -+static char* convert_string (const char *string, char *from, char *to) -+{ -+ if (!string) -+ return NULL; -+ return strdup(string); -+} -+#endif -+ -+ -+/* -+ * Conversion with UTF-8 for ogg tags -+ */ -+char* convert_to_utf8 (const char *string) -+{ -+ char *charset = get_current_charset(); -+ -+ return convert_string(string, charset, "UTF-8"); -+} -+ -+char* convert_from_utf8 (const char *string) -+{ -+ char *charset = get_current_charset(); -+ -+ return convert_string(string, "UTF-8", charset); -+} -+ -+ -+DLL *Charset_Create_List (void) -+{ -+ DLL *list = NULL; -+ int i; -+ -+ for (i=0; i<CHARSET_TRANS_ARRAY_LEN; i++) -+ list = dll_append_c (list,_(charset_trans_array[i].charset_title)); -+ return list; -+} -+ -+ -+/* -+ * Return charset_name from charset_title -+ */ -+char *Charset_Get_Name_From_Title (char *charset_title) -+{ -+ int i; -+ -+ if (charset_title) -+ for (i=0; i<CHARSET_TRANS_ARRAY_LEN; i++) -+ if ( strcasecmp(_(charset_title),_(charset_trans_array[i].charset_title)) == 0 ) -+ return charset_trans_array[i].charset_name; -+ return ""; -+} -+ -+ -+/* -+ * Return charset_title from charset_name -+ */ -+char *Charset_Get_Title_From_Name (char *charset_name) -+{ -+ int i; -+ -+ if (charset_name) -+ for (i=0; i<CHARSET_TRANS_ARRAY_LEN; i++) -+ if ( strcasecmp(charset_name,charset_trans_array[i].charset_name) == 0 ) -+ return _(charset_trans_array[i].charset_title); -+ return ""; -+} -+ -+ -+ -+/* -+ * Test if the conversion is supported between two character sets ('from' and 'to) -+ */ -+#ifdef HAVE_ICONV_OPEN -+short int test_conversion_charset (char *from, char *to) -+{ -+ iconv_t cd; -+ -+ if ((cd=iconv_open(to,from)) == (iconv_t)-1) -+ { -+ /* Conversion not supported */ -+ return FALSE; -+ } -+ iconv_close(cd); -+ return TRUE; -+} -+#else -+short int test_conversion_charset (char *from, char *to) -+{ -+ return TRUE; -+} -+#endif -diff -Naur xmms-1.2.9-orig/Input/mpg123/fileinfo.c xmms-1.2.9/Input/mpg123/fileinfo.c ---- xmms-1.2.9-orig/Input/mpg123/fileinfo.c Thu Jan 29 06:43:24 2004 -+++ xmms-1.2.9/Input/mpg123/fileinfo.c Thu Jan 29 06:39:47 2004 -@@ -25,28 +25,36 @@ - #include <errno.h> - #include <libxmms/xentry.h> - #include "mpg123.h" -+#include "lib_id3v2.h" -+ -+#define MAX_STR_LEN 100 -+#define MAX_ENTRY_LEN2 1023 - - static GtkWidget *window = NULL; --static GtkWidget *filename_entry, *id3_frame; --static GtkWidget *title_entry, *artist_entry, *album_entry, *year_entry; --static GtkWidget *tracknum_entry, *comment_entry, *genre_combo; -+static GtkWidget *notebook = NULL; -+static GtkWidget *filename_entry, *id3v1_frame, *id3v2_frame; -+static GtkWidget *v1_checkbox, *v2_checkbox; -+static GtkWidget *v1_title_entry, *v1_artist_entry, *v1_album_entry, *v1_year_entry, *v1_tracknum_entry, *v1_comment_entry; -+static GtkWidget *v2_title_entry, *v2_artist_entry, *v2_album_entry, *v2_year_entry, *v2_tracknum_entry, *v2_comment_entry, -+ *v2_composer_entry, *v2_orig_artist_entry, *v2_url_entry, *v2_encoded_by_entry; -+static GtkWidget *v1_genre_combo, *v2_genre_combo; - static GtkWidget *mpeg_level, *mpeg_bitrate, *mpeg_samplerate, *mpeg_flags; - static GtkWidget *mpeg_fileinfo; - -+static GPtrArray *v1_labels_list = NULL, *v2_labels_list = NULL; // TODO: Where will these be freed? - static GList *genre_list; - struct genre_item { - const char *name; - int id; - }; --static int current_genre; -+static int v1_current_genre; -+static int v2_current_genre; - static char *current_filename; - - extern char *mpg123_filename; - extern int mpg123_bitrate, mpg123_frequency, mpg123_layer, mpg123_lsf, mpg123_mode; - extern gboolean mpg123_stereo, mpg123_mpeg25; - --#define MAX_STR_LEN 100 -- - static void label_set_text(GtkWidget * label, char *str, ...) - G_GNUC_PRINTF(2, 3); - -@@ -66,6 +74,12 @@ - strncpy(tag, gtk_entry_get_text(entry), length); - } - -+void copy_entry_tag(GtkEntry * src, GtkEntry * dest, int length) -+{ -+ set_entry_tag(dest, gtk_entry_get_text(src), length); -+ return; -+} -+ - static int genre_find_index(GList *genre_list, int id) - { - int idx = 0; -@@ -80,15 +94,29 @@ - return idx; - } - -+static int genre_find_index_str(GList *genre_list, const char* str) -+{ -+ int idx = 0; -+ while (genre_list) -+ { -+ struct genre_item *item = genre_list->data; -+ if (strcmp(item->name, str) == 0) -+ break; -+ idx++; -+ genre_list = genre_list->next; -+ } -+ return idx; -+} -+ - static int genre_comp_func(gconstpointer a, gconstpointer b) - { - const struct genre_item *ga = a, *gb = b; - return strcasecmp(ga->name, gb->name); - } - --static void save_cb(GtkWidget * w, gpointer data) -+static void remove_id3v1(void) - { -- int fd; -+ int fd, len; - struct id3v1tag_t tag; - char *msg = NULL; - -@@ -97,71 +125,36 @@ - - if ((fd = open(current_filename, O_RDWR)) != -1) - { -- int tracknum; -- -- lseek(fd, -128, SEEK_END); -+ len = lseek(fd, -128, SEEK_END); - read(fd, &tag, sizeof (struct id3v1tag_t)); - - if (!strncmp(tag.tag, "TAG", 3)) -- lseek(fd, -128, SEEK_END); -- else -- lseek(fd, 0, SEEK_END); -- tag.tag[0] = 'T'; -- tag.tag[1] = 'A'; -- tag.tag[2] = 'G'; -- get_entry_tag(GTK_ENTRY(title_entry), tag.title, 30); -- get_entry_tag(GTK_ENTRY(artist_entry), tag.artist, 30); -- get_entry_tag(GTK_ENTRY(album_entry), tag.album, 30); -- get_entry_tag(GTK_ENTRY(year_entry), tag.year, 4); -- tracknum = atoi(gtk_entry_get_text(GTK_ENTRY(tracknum_entry))); -- if (tracknum > 0) - { -- get_entry_tag(GTK_ENTRY(comment_entry), -- tag.u.v1_1.comment, 28); -- tag.u.v1_1.__zero = 0; -- tag.u.v1_1.track_number = MIN(tracknum, 255); -+ if (ftruncate(fd, len)) -+ msg = g_strdup_printf(_("%s\n" -+ "Unable to truncate file: %s"), -+ _("Couldn't remove tag!"), -+ strerror(errno)); - } -- else -- get_entry_tag(GTK_ENTRY(comment_entry), -- tag.u.v1_0.comment, 30); -- tag.genre = current_genre; -- if (write(fd, &tag, sizeof (tag)) != sizeof (tag)) -- msg = g_strdup_printf(_("%s\nUnable to write to file: %s"), -- _("Couldn't write tag!"), -- strerror(errno)); - close(fd); - } - else - msg = g_strdup_printf(_("%s\nUnable to open file: %s"), -- _("Couldn't write tag!"), -+ _("Couldn't remove tag!"), - strerror(errno)); - if (msg) - { -- GtkWidget *mwin = xmms_show_message(_("File Info"), msg, -- _("Ok"), FALSE, NULL, NULL); -+ GtkWidget *mwin = xmms_show_message(_("File Info"), msg, _("Ok"), -+ FALSE, NULL, NULL); - gtk_window_set_transient_for(GTK_WINDOW(mwin), - GTK_WINDOW(window)); - g_free(msg); - } -- else -- gtk_widget_destroy(window); --} -- --static void label_set_text(GtkWidget * label, char *str, ...) --{ -- va_list args; -- char tempstr[MAX_STR_LEN]; -- -- va_start(args, str); -- g_vsnprintf(tempstr, MAX_STR_LEN, str, args); -- va_end(args); -- -- gtk_label_set_text(GTK_LABEL(label), tempstr); - } - --static void remove_id3_cb(GtkWidget * w, gpointer data) -+static void save_cb(GtkWidget * w, gpointer data) - { -- int fd, len; -+ int fd; - struct id3v1tag_t tag; - char *msg = NULL; - -@@ -170,36 +163,95 @@ - - if ((fd = open(current_filename, O_RDWR)) != -1) - { -- len = lseek(fd, -128, SEEK_END); -- read(fd, &tag, sizeof (struct id3v1tag_t)); -+ if (!GTK_TOGGLE_BUTTON(v1_checkbox)->active) { -+ // Try to save id3v1 tag -+ int tracknum; - -- if (!strncmp(tag.tag, "TAG", 3)) -- { -- if (ftruncate(fd, len)) -- msg = g_strdup_printf( -- _("%s\n" -- "Unable to truncate file: %s"), -- _("Couldn't remove tag!"), -- strerror(errno)); -+ lseek(fd, -128, SEEK_END); -+ read(fd, &tag, sizeof (struct id3v1tag_t)); -+ -+ if (!strncmp(tag.tag, "TAG", 3)) -+ lseek(fd, -128, SEEK_END); -+ else -+ lseek(fd, 0, SEEK_END); -+ tag.tag[0] = 'T'; -+ tag.tag[1] = 'A'; -+ tag.tag[2] = 'G'; -+ get_entry_tag(GTK_ENTRY(v1_title_entry), tag.title, 30); -+ get_entry_tag(GTK_ENTRY(v1_artist_entry), tag.artist, 30); -+ get_entry_tag(GTK_ENTRY(v1_album_entry), tag.album, 30); -+ get_entry_tag(GTK_ENTRY(v1_year_entry), tag.year, 4); -+ tracknum = atoi(gtk_entry_get_text(GTK_ENTRY(v1_tracknum_entry))); -+ if (tracknum > 0) -+ { -+ get_entry_tag(GTK_ENTRY(v1_comment_entry), -+ tag.u.v1_1.comment, 28); -+ tag.u.v1_1.__zero = 0; -+ tag.u.v1_1.track_number = MIN(tracknum, 255); -+ } -+ else -+ get_entry_tag(GTK_ENTRY(v1_comment_entry), -+ tag.u.v1_0.comment, 30); -+ tag.genre = v1_current_genre; -+ if (write(fd, &tag, sizeof (tag)) != sizeof (tag)) -+ msg = g_strdup_printf(_("%s\nUnable to write to file: %s"), -+ _("Couldn't write tag!"), -+ strerror(errno)); -+ } else { -+ // Remove the id3v1 tag from the file -+ remove_id3v1(); - } -- else -- msg = strdup(_("No tag to remove!")); -- close(fd); -+ -+ if (!GTK_TOGGLE_BUTTON(v2_checkbox)->active) { -+ -+ id3Tag v2_tag; -+ strncpy(v2_tag.title, gtk_entry_get_text(GTK_ENTRY(v2_title_entry)), MAX_ENTRY_LEN2); -+ strncpy(v2_tag.artist, gtk_entry_get_text(GTK_ENTRY(v2_artist_entry)), MAX_ENTRY_LEN2); -+ strncpy(v2_tag.album, gtk_entry_get_text(GTK_ENTRY(v2_album_entry)), MAX_ENTRY_LEN2); -+ strncpy(v2_tag.year, gtk_entry_get_text(GTK_ENTRY(v2_year_entry)), 4); -+ strncpy(v2_tag.comment, gtk_entry_get_text(GTK_ENTRY(v2_comment_entry)), MAX_ENTRY_LEN2); -+ strncpy(v2_tag.track, gtk_entry_get_text(GTK_ENTRY(v2_tracknum_entry)), 3); -+ snprintf(v2_tag.genre, 6, "(%d)", v2_current_genre); -+ -+ strncpy(v2_tag.composer, gtk_entry_get_text(GTK_ENTRY(v2_composer_entry)), MAX_ENTRY_LEN2); -+ strncpy(v2_tag.url, gtk_entry_get_text(GTK_ENTRY(v2_url_entry)), MAX_ENTRY_LEN2); -+ strncpy(v2_tag.orig_artist, gtk_entry_get_text(GTK_ENTRY(v2_orig_artist_entry)), MAX_ENTRY_LEN2); -+ strncpy(v2_tag.enc_by, gtk_entry_get_text(GTK_ENTRY(v2_encoded_by_entry)), MAX_ENTRY_LEN2); -+ -+ set_id3v2_tag(&v2_tag, current_filename); -+ -+ } else { -+ // remove the id3v2 tag from the file -+ del_id3v2_tag(current_filename); -+ } -+ -+ if (fd) -+ close(fd); - } - else - msg = g_strdup_printf(_("%s\nUnable to open file: %s"), -- _("Couldn't remove tag!"), -+ _("Couldn't write tag!"), - strerror(errno)); - if (msg) - { -- GtkWidget *mwin = xmms_show_message(_("File Info"), msg, -- _("Ok"), FALSE, NULL, NULL); -+ GtkWidget *mwin = xmms_show_message(_("File Info"), msg, _("Ok"), -+ FALSE, NULL, NULL); - gtk_window_set_transient_for(GTK_WINDOW(mwin), - GTK_WINDOW(window)); - g_free(msg); - } -- else -- gtk_widget_destroy(window); -+} -+ -+static void label_set_text(GtkWidget * label, char *str, ...) -+{ -+ va_list args; -+ char tempstr[MAX_STR_LEN]; -+ -+ va_start(args, str); -+ g_vsnprintf(tempstr, MAX_STR_LEN, str, args); -+ va_end(args); -+ -+ gtk_label_set_text(GTK_LABEL(label), tempstr); - } - - static void set_mpeg_level_label(gboolean mpeg25, int lsf, int layer) -@@ -222,28 +274,144 @@ - - static void file_info_http(char *filename) - { -- gtk_widget_set_sensitive(id3_frame, FALSE); -+ gtk_widget_set_sensitive(id3v1_frame, FALSE); -+ gtk_widget_set_sensitive(id3v2_frame, FALSE); - if (mpg123_filename && !strcmp(filename, mpg123_filename) && - mpg123_bitrate != 0) - { -- set_mpeg_level_label(mpg123_mpeg25, mpg123_lsf, mpg123_layer); -+ set_mpeg_level_label(mpg123_mpeg25, mpg123_lsf, -+ mpg123_layer); - label_set_text(mpeg_bitrate, _("Bitrate: %d kb/s"), -- mpg123_bitrate); -+ mpg123_bitrate); - label_set_text(mpeg_samplerate, _("Samplerate: %d Hz"), -- mpg123_frequency); -+ mpg123_frequency); - label_set_text(mpeg_flags, "%s", -- channel_mode_name(mpg123_mode)); -+ channel_mode_name(mpg123_mode)); - } - } - --static void genre_selected(GtkList *list, GtkWidget *w, gpointer data) -+void copy_v2_to_v1_cb(GtkButton *button, gpointer user_data) -+{ -+ copy_entry_tag(GTK_ENTRY(v2_title_entry), GTK_ENTRY(v1_title_entry), 30); -+ copy_entry_tag(GTK_ENTRY(v2_artist_entry), GTK_ENTRY(v1_artist_entry), 30); -+ copy_entry_tag(GTK_ENTRY(v2_album_entry), GTK_ENTRY(v1_album_entry), 30); -+ copy_entry_tag(GTK_ENTRY(v2_year_entry), GTK_ENTRY(v1_year_entry), 4); -+ copy_entry_tag(GTK_ENTRY(v2_comment_entry), GTK_ENTRY(v1_comment_entry), 30); -+ copy_entry_tag(GTK_ENTRY(v2_tracknum_entry), GTK_ENTRY(v1_tracknum_entry), 3); -+ -+ gtk_list_select_item(GTK_LIST(GTK_COMBO(v1_genre_combo)->list), genre_find_index(genre_list, v2_current_genre)); -+ return; -+} -+ -+void copy_v1_to_v2_cb(GtkButton *button, gpointer user_data) -+{ -+ copy_entry_tag(GTK_ENTRY(v1_title_entry), GTK_ENTRY(v2_title_entry), MAX_ENTRY_LEN2); -+ copy_entry_tag(GTK_ENTRY(v1_artist_entry), GTK_ENTRY(v2_artist_entry), MAX_ENTRY_LEN2); -+ copy_entry_tag(GTK_ENTRY(v1_album_entry), GTK_ENTRY(v2_album_entry), MAX_ENTRY_LEN2); -+ copy_entry_tag(GTK_ENTRY(v1_year_entry), GTK_ENTRY(v2_year_entry), 4); -+ copy_entry_tag(GTK_ENTRY(v1_comment_entry), GTK_ENTRY(v2_comment_entry), MAX_ENTRY_LEN2); -+ copy_entry_tag(GTK_ENTRY(v1_tracknum_entry), GTK_ENTRY(v2_tracknum_entry), 3); -+ -+ gtk_list_select_item(GTK_LIST(GTK_COMBO(v2_genre_combo)->list), genre_find_index(genre_list, v1_current_genre)); -+ //int genreID = find_genre_id(gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(v1_genre_combo)->entry))); -+ //gtk_list_select_item(GTK_LIST(GTK_COMBO(v2_genre_combo)->list), -+ // g_list_index(genre_list, (char *) mpg123_id3_genres[genreID])); -+ return; -+} -+ -+void v1_toggle_cb (GtkWidget *widget, gpointer data) -+{ -+ int i = 0; -+ if (GTK_TOGGLE_BUTTON (widget)->active) -+ { -+ // If control reaches here, the toggle button is down -+ // Gray out labels -+ for (i = 0; i < v1_labels_list->len; i++) { -+ gtk_widget_set_sensitive(GTK_WIDGET( g_ptr_array_index(v1_labels_list, i) ), FALSE); -+ } -+ gtk_widget_set_sensitive(v1_title_entry, FALSE); -+ gtk_widget_set_sensitive(v1_artist_entry, FALSE); -+ gtk_widget_set_sensitive(v1_album_entry, FALSE); -+ gtk_widget_set_sensitive(v1_year_entry, FALSE); -+ gtk_widget_set_sensitive(v1_tracknum_entry, FALSE); -+ gtk_widget_set_sensitive(v1_comment_entry, FALSE); -+ gtk_widget_set_sensitive(v1_genre_combo, FALSE); -+ } else { -+ -+ // If control reaches here, the toggle button is up -+ // Enable labels -+ for (i = 0; i < v1_labels_list->len; i++) { -+ gtk_widget_set_sensitive(GTK_WIDGET( g_ptr_array_index(v1_labels_list, i) ), TRUE); -+ } -+ gtk_widget_set_sensitive(v1_title_entry, TRUE); -+ gtk_widget_set_sensitive(v1_artist_entry, TRUE); -+ gtk_widget_set_sensitive(v1_album_entry, TRUE); -+ gtk_widget_set_sensitive(v1_year_entry, TRUE); -+ gtk_widget_set_sensitive(v1_tracknum_entry, TRUE); -+ gtk_widget_set_sensitive(v1_comment_entry, TRUE); -+ gtk_widget_set_sensitive(v1_genre_combo, TRUE); -+ } -+} -+ -+void v2_toggle_cb (GtkWidget *widget, gpointer data) -+{ -+ int i = 0; -+ if (GTK_TOGGLE_BUTTON (widget)->active) -+ { -+ // If control reaches here, the toggle button is down -+ // Gray out labels -+ for (i = 0; i < v2_labels_list->len; i++) { -+ gtk_widget_set_sensitive(GTK_WIDGET( g_ptr_array_index(v2_labels_list, i) ), FALSE); -+ } -+ gtk_widget_set_sensitive(v2_title_entry, FALSE); -+ gtk_widget_set_sensitive(v2_artist_entry, FALSE); -+ gtk_widget_set_sensitive(v2_album_entry, FALSE); -+ gtk_widget_set_sensitive(v2_year_entry, FALSE); -+ gtk_widget_set_sensitive(v2_tracknum_entry, FALSE); -+ gtk_widget_set_sensitive(v2_comment_entry, FALSE); -+ gtk_widget_set_sensitive(v2_composer_entry, FALSE); -+ gtk_widget_set_sensitive(v2_orig_artist_entry, FALSE); -+ gtk_widget_set_sensitive(v2_url_entry, FALSE); -+ gtk_widget_set_sensitive(v2_encoded_by_entry, FALSE); -+ gtk_widget_set_sensitive(v2_genre_combo, FALSE); -+ } else { -+ -+ // If control reaches here, the toggle button is up -+ // Enable labels -+ for (i = 0; i < v2_labels_list->len; i++) { -+ gtk_widget_set_sensitive(GTK_WIDGET( g_ptr_array_index(v2_labels_list, i) ), TRUE); -+ } -+ gtk_widget_set_sensitive(v2_title_entry, TRUE); -+ gtk_widget_set_sensitive(v2_artist_entry, TRUE); -+ gtk_widget_set_sensitive(v2_album_entry, TRUE); -+ gtk_widget_set_sensitive(v2_year_entry, TRUE); -+ gtk_widget_set_sensitive(v2_tracknum_entry, TRUE); -+ gtk_widget_set_sensitive(v2_comment_entry, TRUE); -+ gtk_widget_set_sensitive(v2_composer_entry, TRUE); -+ gtk_widget_set_sensitive(v2_orig_artist_entry, TRUE); -+ gtk_widget_set_sensitive(v2_url_entry, TRUE); -+ gtk_widget_set_sensitive(v2_encoded_by_entry, TRUE); -+ gtk_widget_set_sensitive(v2_genre_combo, TRUE); -+ } -+} -+static void v1_genre_selected(GtkList *list, GtkWidget *w, gpointer data) -+{ -+ void * p; -+ p = gtk_object_get_data(GTK_OBJECT(w), "genre_id"); -+ if (p != NULL) -+ v1_current_genre = GPOINTER_TO_INT(p); -+ else -+ v1_current_genre = 0; -+} -+ -+static void v2_genre_selected(GtkList *list, GtkWidget *w, gpointer data) - { - void * p; - p = gtk_object_get_data(GTK_OBJECT(w), "genre_id"); - if (p != NULL) -- current_genre = GPOINTER_TO_INT(p); -+ v2_current_genre = GPOINTER_TO_INT(p); - else -- current_genre = 0; -+ v2_current_genre = 0; - } - - static void genre_set_popdown(GtkWidget *combo, GList *genres) -@@ -266,11 +434,12 @@ - void mpg123_file_info_box(char *filename) - { - int i; -- struct id3v1tag_t tag; -+ struct id3v1tag_t id3v1tag; - FILE *fh; - char *tmp, *title; - const char *emphasis[4]; - const char *bool_label[2]; -+ struct id3tag_t id3v2tag; - - emphasis[0] = _("None"); - emphasis[1] = _("50/15 ms"); -@@ -281,116 +450,123 @@ - - if (!window) - { -- GtkWidget *vbox, *hbox, *left_vbox, *table; -- GtkWidget *mpeg_frame, *mpeg_box; -- GtkWidget *label, *filename_hbox; -- GtkWidget *bbox, *save, *remove_id3, *cancel; -- -- window = gtk_window_new(GTK_WINDOW_DIALOG); -- gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, FALSE); -- gtk_signal_connect(GTK_OBJECT(window), "destroy", -- gtk_widget_destroyed, &window); -- gtk_container_set_border_width(GTK_CONTAINER(window), 10); -- -- vbox = gtk_vbox_new(FALSE, 10); -- gtk_container_add(GTK_CONTAINER(window), vbox); -+ GtkWidget *window_vbox, -+ *id3v1_vbox, *id3v2_vbox, *id3v1_frame_vbox, *id3v2_frame_vbox, -+ *mpeg_lvbox, *mpeg_rvbox, *mpeg_hbox, *mpeg_box, *mpeg_frame, -+ *bbox, *save, *close, *copy_to, *copy_from, -+ *table, *label, *filename_hbox; -+ -+ v1_labels_list = g_ptr_array_new(); -+ v2_labels_list = g_ptr_array_new(); -+ -+ window = gtk_window_new(GTK_WINDOW_DIALOG); -+ //gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, FALSE); -+ gtk_signal_connect(GTK_OBJECT(window), "destroy", GTK_SIGNAL_FUNC(gtk_widget_destroyed), &window); -+ gtk_container_set_border_width(GTK_CONTAINER(window), 10); - -+ window_vbox = gtk_vbox_new(FALSE,10); - filename_hbox = gtk_hbox_new(FALSE, 5); -- gtk_box_pack_start(GTK_BOX(vbox), filename_hbox, -- FALSE, TRUE, 0); -+ gtk_box_pack_start(GTK_BOX(window_vbox), filename_hbox, FALSE, TRUE, 0); - - label = gtk_label_new(_("Filename:")); -- gtk_box_pack_start(GTK_BOX(filename_hbox), label, -- FALSE, TRUE, 0); -+ gtk_box_pack_start(GTK_BOX(filename_hbox), label, FALSE, TRUE, 0); - filename_entry = xmms_entry_new(); - gtk_editable_set_editable(GTK_EDITABLE(filename_entry), FALSE); -- gtk_box_pack_start(GTK_BOX(filename_hbox), -- filename_entry, TRUE, TRUE, 0); -- -- hbox = gtk_hbox_new(FALSE, 10); -- gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, TRUE, 0); -- -- left_vbox = gtk_vbox_new(FALSE, 10); -- gtk_box_pack_start(GTK_BOX(hbox), left_vbox, FALSE, FALSE, 0); -- -- id3_frame = gtk_frame_new(_("ID3 Tag:")); -- gtk_box_pack_start(GTK_BOX(left_vbox), id3_frame, -- FALSE, FALSE, 0); -- -- table = gtk_table_new(5, 5, FALSE); -- gtk_container_set_border_width(GTK_CONTAINER(table), 5); -- gtk_container_add(GTK_CONTAINER(id3_frame), table); -- -- label = gtk_label_new(_("Title:")); -- gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0, 1, -- GTK_FILL, GTK_FILL, 5, 5); -- -- title_entry = gtk_entry_new_with_max_length(30); -- gtk_table_attach(GTK_TABLE(table), title_entry, 1, 4, 0, 1, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 5); -- -- label = gtk_label_new(_("Artist:")); -- gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1, 2, -- GTK_FILL, GTK_FILL, 5, 5); -- -- artist_entry = gtk_entry_new_with_max_length(30); -- gtk_table_attach(GTK_TABLE(table), artist_entry, 1, 4, 1, 2, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 5); -- -- label = gtk_label_new(_("Album:")); -- gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 2, 3, -- GTK_FILL, GTK_FILL, 5, 5); -- -- album_entry = gtk_entry_new_with_max_length(30); -- gtk_table_attach(GTK_TABLE(table), album_entry, 1, 4, 2, 3, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 5); -- -- label = gtk_label_new(_("Comment:")); -- gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 3, 4, -- GTK_FILL, GTK_FILL, 5, 5); -- -- comment_entry = gtk_entry_new_with_max_length(30); -- gtk_table_attach(GTK_TABLE(table), comment_entry, 1, 4, 3, 4, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 5); -- -- label = gtk_label_new(_("Year:")); -- gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 4, 5, -- GTK_FILL, GTK_FILL, 5, 5); -- -- year_entry = gtk_entry_new_with_max_length(4); -- gtk_widget_set_usize(year_entry, 40, -1); -- gtk_table_attach(GTK_TABLE(table), year_entry, 1, 2, 4, 5, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 5); -- -- label = gtk_label_new(_("Track number:")); -- gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -- gtk_table_attach(GTK_TABLE(table), label, 2, 3, 4, 5, -- GTK_FILL, GTK_FILL, 5, 5); -- -- tracknum_entry = gtk_entry_new_with_max_length(3); -- gtk_widget_set_usize(tracknum_entry, 40, -1); -- gtk_table_attach(GTK_TABLE(table), tracknum_entry, 3, 4, 4, 5, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 5); -- -- label = gtk_label_new(_("Genre:")); -- gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -- gtk_table_attach(GTK_TABLE(table), label, 0, 1, 5, 6, -- GTK_FILL, GTK_FILL, 5, 5); -- -- genre_combo = gtk_combo_new(); -- gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(genre_combo)->entry), -- FALSE); -+ gtk_box_pack_start(GTK_BOX(filename_hbox), filename_entry, TRUE, TRUE, 0); -+ -+ id3v1_vbox = gtk_vbox_new(FALSE, 10); -+ id3v1_frame = gtk_frame_new("ID3v1 Information"); -+ gtk_box_pack_start(GTK_BOX(id3v1_vbox), id3v1_frame, TRUE, TRUE, 0); -+ -+ id3v1_frame_vbox = gtk_vbox_new(FALSE,10); -+ gtk_container_add(GTK_CONTAINER(id3v1_frame), id3v1_frame_vbox); -+ -+ table = gtk_table_new(6, 6, FALSE); -+ gtk_container_set_border_width(GTK_CONTAINER(table), 5); -+ //gtk_widget_set_usize(GTK_WIDGET(table), 325, -1); -+ //gtk_container_add(GTK_CONTAINER(id3v1_frame), table); -+ gtk_box_pack_start(GTK_BOX(id3v1_frame_vbox), table, FALSE, FALSE, 0); -+ -+ v1_checkbox = gtk_check_button_new_with_label ("Disable ID3v1 Tag"); -+ gtk_signal_connect(GTK_OBJECT(v1_checkbox), "toggled", GTK_SIGNAL_FUNC(v1_toggle_cb), NULL); -+ gtk_table_attach(GTK_TABLE(table), v1_checkbox, 1, 3, 0, 1, -+ GTK_FILL, GTK_FILL, 0, 2); -+ -+ label = gtk_label_new("Track number:"); -+ g_ptr_array_add(v1_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 3, 4, 0, 1, -+ GTK_FILL, GTK_FILL, 5,5); -+ -+ v1_tracknum_entry = gtk_entry_new_with_max_length(3); -+ gtk_widget_set_usize(v1_tracknum_entry, 20, -1); -+ gtk_table_attach(GTK_TABLE(table), v1_tracknum_entry, 4, 5, 0, 1, -+ GTK_FILL, GTK_FILL, 0, 2); -+ -+ label = gtk_label_new("Title:"); -+ g_ptr_array_add(v1_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1, 2, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v1_title_entry = gtk_entry_new_with_max_length(30); -+ gtk_table_attach(GTK_TABLE(table), v1_title_entry, 1, 5, 1, 2, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Artist:"); -+ g_ptr_array_add(v1_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 2, 3, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v1_artist_entry = gtk_entry_new_with_max_length(30); -+ gtk_table_attach(GTK_TABLE(table), v1_artist_entry, 1, 5, 2, 3, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Album:"); -+ g_ptr_array_add(v1_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 3, 4, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v1_album_entry = gtk_entry_new_with_max_length(30); -+ gtk_table_attach(GTK_TABLE(table), v1_album_entry, 1, 5, 3, 4, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Comment:"); -+ g_ptr_array_add(v1_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 4, 5, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v1_comment_entry = gtk_entry_new_with_max_length(30); -+ gtk_table_attach(GTK_TABLE(table), v1_comment_entry, 1, 5, 4, 5, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Year:"); -+ g_ptr_array_add(v1_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 5, 6, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v1_year_entry = gtk_entry_new_with_max_length(4); -+ gtk_widget_set_usize(v1_year_entry, 45, -1); -+ gtk_table_attach(GTK_TABLE(table), v1_year_entry, 1, 2, 5, 6, -+ GTK_FILL, GTK_FILL, 0, 2); -+ -+ label = gtk_label_new("Genre:"); -+ g_ptr_array_add(v1_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 2, 3, 5, 6, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v1_genre_combo = gtk_combo_new(); -+ gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(v1_genre_combo)->entry), -+ FALSE); - if (!genre_list) - { - struct genre_item *item; -@@ -408,77 +584,278 @@ - genre_list = g_list_prepend(genre_list, item); - genre_list = g_list_sort(genre_list, genre_comp_func); - } -- genre_set_popdown(genre_combo, genre_list); -- gtk_signal_connect(GTK_OBJECT(GTK_COMBO(genre_combo)->list), -- "select-child", genre_selected, NULL); -- -- gtk_table_attach(GTK_TABLE(table), genre_combo, 1, 4, 5, 6, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, -- GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 5); -- -- bbox = gtk_hbutton_box_new(); -- gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), -- GTK_BUTTONBOX_END); -- gtk_button_box_set_spacing(GTK_BUTTON_BOX(bbox), 5); -- gtk_box_pack_start(GTK_BOX(left_vbox), bbox, FALSE, FALSE, 0); -- -- save = gtk_button_new_with_label(_("Save")); -- gtk_signal_connect(GTK_OBJECT(save), "clicked", save_cb, NULL); -- GTK_WIDGET_SET_FLAGS(save, GTK_CAN_DEFAULT); -- gtk_box_pack_start(GTK_BOX(bbox), save, TRUE, TRUE, 0); -- gtk_widget_grab_default(save); -- -- remove_id3 = gtk_button_new_with_label(_("Remove ID3")); -- gtk_signal_connect(GTK_OBJECT(remove_id3), "clicked", -- remove_id3_cb, NULL); -- GTK_WIDGET_SET_FLAGS(remove_id3, GTK_CAN_DEFAULT); -- gtk_box_pack_start(GTK_BOX(bbox), remove_id3, TRUE, TRUE, 0); -- -- cancel = gtk_button_new_with_label(_("Cancel")); -- gtk_signal_connect_object(GTK_OBJECT(cancel), "clicked", -- gtk_widget_destroy, GTK_OBJECT(window)); -- GTK_WIDGET_SET_FLAGS(cancel, GTK_CAN_DEFAULT); -- gtk_box_pack_start(GTK_BOX(bbox), cancel, TRUE, TRUE, 0); -- -- mpeg_frame = gtk_frame_new(_("MPEG Info:")); -- gtk_box_pack_start(GTK_BOX(hbox), mpeg_frame, FALSE, FALSE, 0); -- -- mpeg_box = gtk_vbox_new(FALSE, 5); -- gtk_container_add(GTK_CONTAINER(mpeg_frame), mpeg_box); -- gtk_container_set_border_width(GTK_CONTAINER(mpeg_box), 10); -- gtk_box_set_spacing(GTK_BOX(mpeg_box), 0); -- -- mpeg_level = gtk_label_new(""); -- gtk_widget_set_usize(mpeg_level, 120, -2); -- gtk_misc_set_alignment(GTK_MISC(mpeg_level), 0, 0); -- gtk_box_pack_start(GTK_BOX(mpeg_box), mpeg_level, FALSE, FALSE, 0); -- -- mpeg_bitrate = gtk_label_new(""); -- gtk_misc_set_alignment(GTK_MISC(mpeg_bitrate), 0, 0); -- gtk_label_set_justify(GTK_LABEL(mpeg_bitrate), -- GTK_JUSTIFY_LEFT); -- gtk_box_pack_start(GTK_BOX(mpeg_box), -- mpeg_bitrate, FALSE, FALSE, 0); -- -- mpeg_samplerate = gtk_label_new(""); -- gtk_misc_set_alignment(GTK_MISC(mpeg_samplerate), 0, 0); -- gtk_box_pack_start(GTK_BOX(mpeg_box), mpeg_samplerate, -- FALSE, FALSE, 0); -- -- mpeg_flags = gtk_label_new(""); -- gtk_misc_set_alignment(GTK_MISC(mpeg_flags), 0, 0); -- gtk_label_set_justify(GTK_LABEL(mpeg_flags), GTK_JUSTIFY_LEFT); -- gtk_box_pack_start(GTK_BOX(mpeg_box), mpeg_flags, -- FALSE, FALSE, 0); -- -- mpeg_fileinfo = gtk_label_new(""); -- gtk_misc_set_alignment(GTK_MISC(mpeg_fileinfo), 0, 0); -- gtk_label_set_justify(GTK_LABEL(mpeg_fileinfo), -- GTK_JUSTIFY_LEFT); -- gtk_box_pack_start(GTK_BOX(mpeg_box), mpeg_fileinfo, -- FALSE, FALSE, 0); -+ genre_set_popdown(v1_genre_combo, genre_list); -+ gtk_signal_connect(GTK_OBJECT(GTK_COMBO(v1_genre_combo)->list), -+ "select-child", v1_genre_selected, NULL); -+ -+ gtk_table_attach(GTK_TABLE(table), v1_genre_combo, 3, 5, 5, 6, -+ GTK_FILL | GTK_SHRINK, GTK_FILL | -+ GTK_SHRINK, 0, 2); -+ -+ bbox = gtk_hbutton_box_new(); -+ gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_START); -+ gtk_button_box_set_spacing (GTK_BUTTON_BOX (bbox), 0); -+ gtk_container_set_border_width(GTK_CONTAINER(bbox), 5); -+ gtk_box_pack_start(GTK_BOX(id3v1_frame_vbox), bbox, FALSE, FALSE, 0); -+ -+ copy_from = gtk_button_new_with_label("ID3v1 to ID3v2"); -+ gtk_signal_connect(GTK_OBJECT(copy_from), "clicked", GTK_SIGNAL_FUNC(copy_v1_to_v2_cb), NULL); -+ // remove the next line to thicken the button width -+ GTK_WIDGET_SET_FLAGS(copy_from, GTK_CAN_DEFAULT); -+ gtk_box_pack_start(GTK_BOX(bbox), copy_from, FALSE, TRUE, 0); -+ -+ -+ notebook = gtk_notebook_new (); -+ gtk_notebook_set_tab_pos (GTK_NOTEBOOK (notebook), GTK_POS_TOP); -+ -+ label = gtk_label_new ("ID3v1"); -+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook), id3v1_vbox, label); -+ -+ -+ //////////////////////////////////////////////////////////////////////////////////////////////////// -+ //////////////////////////////////////////////////////////////////////////////////////////////////// -+ -+ id3v2_vbox = gtk_vbox_new(FALSE, 0); -+ -+ id3v2_frame = gtk_frame_new("ID3v2 Information"); -+ gtk_box_pack_start(GTK_BOX(id3v2_vbox), id3v2_frame, FALSE, FALSE, 0); -+ -+ id3v2_frame_vbox = gtk_vbox_new(FALSE, 0); -+ gtk_container_add(GTK_CONTAINER(id3v2_frame), id3v2_frame_vbox); -+ -+ table = gtk_table_new(6, 6, FALSE); -+ gtk_container_set_border_width(GTK_CONTAINER(table), 5); -+ gtk_widget_set_usize(GTK_WIDGET(table), 400, -1); -+ //gtk_container_add(GTK_CONTAINER(id3v2_frame), table); -+ gtk_box_pack_start(GTK_BOX(id3v2_frame_vbox), table, FALSE, FALSE, 0); -+ -+ v2_checkbox = gtk_check_button_new_with_label ("Disable ID3v2 Tag"); -+ gtk_signal_connect(GTK_OBJECT(v2_checkbox), "toggled", GTK_SIGNAL_FUNC(v2_toggle_cb), NULL); -+ gtk_table_attach(GTK_TABLE(table), v2_checkbox, 1, 3, 0, 1, -+ GTK_FILL, GTK_FILL, 0, 2); -+ -+ label = gtk_label_new("Track number:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 3, 4, 0, 1, -+ GTK_FILL, GTK_FILL, 5,5); -+ -+ v2_tracknum_entry = gtk_entry_new_with_max_length(3); -+ gtk_widget_set_usize(v2_tracknum_entry, 20, -1); -+ gtk_table_attach(GTK_TABLE(table), v2_tracknum_entry, 4, 5, 0, 1, -+ GTK_FILL, GTK_FILL, 0, 2); -+ -+ label = gtk_label_new("Title:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1, 2, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_title_entry = gtk_entry_new_with_max_length(MAX_ENTRY_LEN2); -+ gtk_table_attach(GTK_TABLE(table), v2_title_entry, 1, 5, 1, 2, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Artist:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 2, 3, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_artist_entry = gtk_entry_new_with_max_length(MAX_ENTRY_LEN2); -+ gtk_table_attach(GTK_TABLE(table), v2_artist_entry, 1, 5, 2, 3, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Album:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 3, 4, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_album_entry = gtk_entry_new_with_max_length(MAX_ENTRY_LEN2); -+ gtk_table_attach(GTK_TABLE(table), v2_album_entry, 1, 5, 3, 4, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Comment:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 4, 5, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_comment_entry = gtk_entry_new_with_max_length(MAX_ENTRY_LEN2); -+ gtk_table_attach(GTK_TABLE(table), v2_comment_entry, 1, 5, 4, 5, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Year:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 5, 6, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_year_entry = gtk_entry_new_with_max_length(4); -+ gtk_widget_set_usize(v2_year_entry, 45, -1); -+ gtk_table_attach(GTK_TABLE(table), v2_year_entry, 1, 2, 5, 6, -+ GTK_FILL, GTK_FILL, 0, 2); -+ -+ label = gtk_label_new("Genre:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 2, 3, 5, 6, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_genre_combo = gtk_combo_new(); -+ gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(v2_genre_combo)->entry), FALSE); -+ genre_set_popdown(v2_genre_combo, genre_list); -+ gtk_signal_connect(GTK_OBJECT(GTK_COMBO(v2_genre_combo)->list), -+ "select-child", v2_genre_selected, NULL); -+ -+ gtk_table_attach(GTK_TABLE(table), v2_genre_combo, 3, 5, 5, 6, -+ GTK_FILL | GTK_SHRINK, GTK_FILL | -+ GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Composer:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 6, 7, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_composer_entry = gtk_entry_new_with_max_length(MAX_ENTRY_LEN2); -+ gtk_table_attach(GTK_TABLE(table), v2_composer_entry, 1, 5, 6, 7, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("Orig. Artist:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 7, 8, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_orig_artist_entry = gtk_entry_new_with_max_length(MAX_ENTRY_LEN2); -+ gtk_table_attach(GTK_TABLE(table), v2_orig_artist_entry, 1, 5, 7, 8, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ label = gtk_label_new("URL:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 8, 9, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_url_entry = gtk_entry_new_with_max_length(MAX_ENTRY_LEN2); -+ gtk_table_attach(GTK_TABLE(table), v2_url_entry, 1, 5, 8, 9, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ label = gtk_label_new("Encoded By:"); -+ g_ptr_array_add(v2_labels_list, (gpointer)label); -+ gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); -+ gtk_table_attach(GTK_TABLE(table), label, 0, 1, 9, 10, -+ GTK_FILL, GTK_FILL, 5, 5); -+ -+ v2_encoded_by_entry = gtk_entry_new_with_max_length(MAX_ENTRY_LEN2); -+ gtk_table_attach(GTK_TABLE(table), v2_encoded_by_entry, 1, 5, 9, 10, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, -+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 2); -+ -+ bbox = gtk_hbutton_box_new(); -+ gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_START); -+ gtk_button_box_set_spacing (GTK_BUTTON_BOX (bbox), 0); -+ gtk_container_set_border_width(GTK_CONTAINER(bbox), 5); -+ gtk_box_pack_start(GTK_BOX(id3v2_frame_vbox), bbox, FALSE, FALSE, 0); -+ -+ copy_to = gtk_button_new_with_label("ID3v2 to ID3v1"); -+ gtk_signal_connect(GTK_OBJECT(copy_to), "clicked", GTK_SIGNAL_FUNC(copy_v2_to_v1_cb), NULL); -+ // remove the next line to thicken the button width -+ GTK_WIDGET_SET_FLAGS(copy_to, GTK_CAN_DEFAULT); -+ gtk_box_pack_start(GTK_BOX(bbox), copy_to, FALSE, TRUE, 0); -+ -+ label = gtk_label_new ("ID3v2"); -+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook), id3v2_vbox, label); -+ -+ -+ //////////////////////////////////////////////////////////////////////////////////////////////////// -+ //////////////////////////////////////////////////////////////////////////////////////////////////// -+ -+ mpeg_frame = gtk_frame_new("MPEG Information"); -+ mpeg_hbox = gtk_hbox_new(FALSE,50); -+ gtk_container_add(GTK_CONTAINER(mpeg_frame), mpeg_hbox); -+ -+ mpeg_lvbox = gtk_vbox_new(FALSE, 5); -+ gtk_container_set_border_width(GTK_CONTAINER(mpeg_lvbox), 10); -+ gtk_box_pack_start(GTK_BOX(mpeg_hbox), mpeg_lvbox, FALSE, FALSE, 0); -+ -+ //gtk_container_set_border_width(GTK_CONTAINER(table), 5); -+ //gtk_widget_set_usize(GTK_WIDGET(table), 325, -1); -+ //gtk_container_add(GTK_CONTAINER(mpeg_frame), table); -+ -+ mpeg_box = gtk_vbox_new(FALSE, 5); -+ gtk_box_pack_start(GTK_BOX(mpeg_hbox), mpeg_box, FALSE, FALSE, 0); -+ gtk_container_set_border_width(GTK_CONTAINER(mpeg_box), 10); -+ gtk_box_set_spacing(GTK_BOX(mpeg_box), 0); -+ -+ mpeg_level = gtk_label_new(""); -+ //gtk_widget_set_usize(mpeg_level, 120, -2); -+ gtk_label_set_justify (GTK_LABEL(mpeg_level), GTK_JUSTIFY_LEFT); -+ gtk_misc_set_alignment(GTK_MISC(mpeg_level), 0, 0.5); -+ gtk_box_pack_start(GTK_BOX(mpeg_lvbox), mpeg_level, FALSE, FALSE, 0); -+ -+ mpeg_samplerate = gtk_label_new(""); -+ gtk_label_set_justify (GTK_LABEL(mpeg_samplerate), GTK_JUSTIFY_LEFT); -+ gtk_misc_set_alignment(GTK_MISC(mpeg_samplerate), 0, 0.5); -+ gtk_box_pack_start(GTK_BOX(mpeg_lvbox), mpeg_samplerate, FALSE, FALSE, 0); -+ -+ mpeg_fileinfo = gtk_label_new(""); -+ gtk_label_set_justify (GTK_LABEL(mpeg_fileinfo), GTK_JUSTIFY_LEFT); -+ gtk_misc_set_alignment(GTK_MISC(mpeg_fileinfo), 0, 0.5); -+ gtk_box_pack_start(GTK_BOX(mpeg_lvbox), mpeg_fileinfo, FALSE, FALSE, 0); -+ -+ mpeg_rvbox = gtk_vbox_new(FALSE, 5); -+ gtk_box_pack_start(GTK_BOX(mpeg_hbox), mpeg_rvbox, FALSE, FALSE, 0); -+ gtk_container_set_border_width(GTK_CONTAINER(mpeg_rvbox), 10); -+ -+ mpeg_bitrate = gtk_label_new(""); -+ gtk_label_set_justify (GTK_LABEL(mpeg_bitrate), GTK_JUSTIFY_LEFT); -+ gtk_misc_set_alignment(GTK_MISC(mpeg_bitrate), 0, 0.5); -+ gtk_box_pack_start(GTK_BOX(mpeg_rvbox), mpeg_bitrate, FALSE, FALSE, 0); -+ -+ mpeg_flags = gtk_label_new(""); -+ gtk_label_set_justify (GTK_LABEL(mpeg_flags), GTK_JUSTIFY_LEFT); -+ gtk_misc_set_alignment(GTK_MISC(mpeg_flags), 0, 0.5); -+ gtk_box_pack_start(GTK_BOX(mpeg_rvbox), mpeg_flags, FALSE, FALSE, 0); -+ -+ label = gtk_label_new ("MPEG"); -+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook), mpeg_frame, label); -+ -+ ////////////////////////////////////////////////////////////////// -+ ////////////////////////////////////////////////////////////////// -+ -+ // add notebook to window vbox -+ gtk_box_pack_start(GTK_BOX(window_vbox), notebook, FALSE, FALSE, 0); -+ -+ // add button box to window vbox -+ bbox = gtk_hbutton_box_new(); -+ gtk_box_pack_start(GTK_BOX(window_vbox), bbox, FALSE, FALSE, 0); -+ -+ gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_END); -+ gtk_button_box_set_spacing (GTK_BUTTON_BOX (bbox), 5); -+ //gtk_button_box_set_child_size (GTK_BUTTON_BOX (bbox), child_w, child_h); -+ -+ save = gtk_button_new_with_label("Save"); -+ gtk_signal_connect(GTK_OBJECT(save), "clicked", GTK_SIGNAL_FUNC(save_cb), NULL); -+ //GTK_WIDGET_SET_FLAGS(save, GTK_CAN_DEFAULT); -+ gtk_box_pack_start(GTK_BOX(bbox), save, TRUE, TRUE, 5); -+ //gtk_widget_grab_default(save); -+ -+ close = gtk_button_new_with_label("Close"); -+ gtk_signal_connect_object(GTK_OBJECT(close), "clicked", -+ GTK_SIGNAL_FUNC(gtk_widget_destroy), GTK_OBJECT(window)); -+ //GTK_WIDGET_SET_FLAGS(close, GTK_CAN_DEFAULT); -+ gtk_box_pack_start(GTK_BOX(bbox), close, TRUE, TRUE, 5); - -- gtk_widget_show_all(window); -+ gtk_container_add(GTK_CONTAINER(window), window_vbox); -+ gtk_widget_show_all(window); - } - - if (current_filename) -@@ -495,29 +872,43 @@ - title = g_strdup(g_basename(filename)); - if ((tmp = strrchr(title, '.')) != NULL) - *tmp = '\0'; -- gtk_entry_set_text(GTK_ENTRY(title_entry), title); -+ gtk_entry_set_text(GTK_ENTRY(v1_title_entry), title); -+ gtk_entry_set_text(GTK_ENTRY(v2_title_entry), title); - g_free(title); - -- gtk_entry_set_text(GTK_ENTRY(artist_entry), ""); -- gtk_entry_set_text(GTK_ENTRY(album_entry), ""); -- gtk_entry_set_text(GTK_ENTRY(year_entry), ""); -- gtk_entry_set_text(GTK_ENTRY(tracknum_entry), ""); -- gtk_entry_set_text(GTK_ENTRY(comment_entry), ""); -- gtk_list_select_item(GTK_LIST(GTK_COMBO(genre_combo)->list), -+ gtk_entry_set_text(GTK_ENTRY(v1_artist_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v1_album_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v1_year_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v1_tracknum_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v1_comment_entry), ""); -+ gtk_list_select_item(GTK_LIST(GTK_COMBO(v1_genre_combo)->list), -+ genre_find_index(genre_list, 0xff)); -+ -+ gtk_entry_set_text(GTK_ENTRY(v2_artist_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v2_album_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v2_year_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v2_tracknum_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v2_comment_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v2_composer_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v2_orig_artist_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v2_url_entry), ""); -+ gtk_entry_set_text(GTK_ENTRY(v2_encoded_by_entry), ""); -+ gtk_list_select_item(GTK_LIST(GTK_COMBO(v2_genre_combo)->list), - genre_find_index(genre_list, 0xff)); -+ - gtk_label_set_text(GTK_LABEL(mpeg_level), "MPEG ?, layer ?"); - gtk_label_set_text(GTK_LABEL(mpeg_bitrate), ""); - gtk_label_set_text(GTK_LABEL(mpeg_samplerate), ""); - gtk_label_set_text(GTK_LABEL(mpeg_flags), ""); - gtk_label_set_text(GTK_LABEL(mpeg_fileinfo), ""); -- - if (!strncasecmp(filename, "http://", 7)) - { - file_info_http(filename); - return; - } - -- gtk_widget_set_sensitive(id3_frame, TRUE); -+ gtk_widget_set_sensitive(id3v1_frame, TRUE); -+ gtk_widget_set_sensitive(id3v2_frame, TRUE); - - if ((fh = fopen(current_filename, "rb")) != NULL) - { -@@ -525,40 +916,95 @@ - unsigned char tmp[4]; - struct frame frm; - gboolean id3_found = FALSE; -+ char *temp = NULL; -+ struct id3_tag *id3 = NULL; - -- fseek(fh, -sizeof (tag), SEEK_END); -- if (fread(&tag, 1, sizeof (tag), fh) == sizeof (tag)) -+ /* -+ * Try reading ID3v2 tag. -+ */ -+ if (!mpg123_cfg.disable_id3v2) - { -- if (!strncmp(tag.tag, "TAG", 3)) -+ fseek(fh, 0, SEEK_SET); -+ id3 = id3_open_fp(fh, 0); -+ if (id3) - { -- id3_found = TRUE; -- set_entry_tag(GTK_ENTRY(title_entry), -- tag.title, 30); -- set_entry_tag(GTK_ENTRY(artist_entry), -- tag.artist, 30); -- set_entry_tag(GTK_ENTRY(album_entry), -- tag.album, 30); -- set_entry_tag(GTK_ENTRY(year_entry), -- tag.year, 4); -- /* Check for v1.1 tags */ -- if (tag.u.v1_1.__zero == 0) -- { -- char *temp = g_strdup_printf("%d", tag.u.v1_1.track_number); -- set_entry_tag(GTK_ENTRY(comment_entry), -- tag.u.v1_1.comment, 28); -- gtk_entry_set_text(GTK_ENTRY(tracknum_entry), temp); -- g_free(temp); -- } -- else -- { -- set_entry_tag(GTK_ENTRY(comment_entry), -- tag.u.v1_0.comment, 30); -- gtk_entry_set_text(GTK_ENTRY(tracknum_entry), ""); -- } -+ mpg123_get_id3v2(id3, &id3v2tag); -+ set_entry_tag(GTK_ENTRY(v2_title_entry), -+ id3v2tag.title, 128); -+ set_entry_tag(GTK_ENTRY(v2_artist_entry), -+ id3v2tag.artist, 128); -+ set_entry_tag(GTK_ENTRY(v2_album_entry), -+ id3v2tag.album, 128); -+ set_entry_tag(GTK_ENTRY(v2_comment_entry), -+ id3v2tag.comment, 256); -+ set_entry_tag(GTK_ENTRY(v2_composer_entry), -+ id3v2tag.composer, MAX_ENTRY_LEN2); -+ set_entry_tag(GTK_ENTRY(v2_orig_artist_entry), -+ id3v2tag.orig_artist, MAX_ENTRY_LEN2); -+ set_entry_tag(GTK_ENTRY(v2_url_entry), -+ id3v2tag.url, MAX_ENTRY_LEN2); -+ set_entry_tag(GTK_ENTRY(v2_encoded_by_entry), -+ id3v2tag.encoded_by, MAX_ENTRY_LEN2); - -- gtk_list_select_item(GTK_LIST(GTK_COMBO(genre_combo)->list), genre_find_index(genre_list, tag.genre)); -+ temp = g_strdup_printf("%d", id3v2tag.track_number); -+ gtk_entry_set_text(GTK_ENTRY(v2_tracknum_entry), temp); -+ g_free(temp); -+ -+ temp = g_strdup_printf("%d", id3v2tag.year); -+ gtk_entry_set_text(GTK_ENTRY(v2_year_entry), temp); -+ g_free(temp); -+ -+ printf("Loading genre: %s", id3v2tag.genre); -+ gtk_list_select_item(GTK_LIST(GTK_COMBO(v2_genre_combo)->list), genre_find_index_str(genre_list, id3v2tag.genre)); -+ id3_close(id3); - } -+ else -+ { -+ // Grey out the id3v2 tab -+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(v2_checkbox), TRUE); -+ } -+ } -+ -+ /* -+ * Try reading ID3v1 tag. -+ */ -+ fseek(fh, -sizeof (id3v1tag), SEEK_END); -+ if ( (fread(&id3v1tag, 1, sizeof (id3v1tag), fh) == sizeof (id3v1tag)) && -+ !strncmp(id3v1tag.tag, "TAG", 3)) -+ { -+ id3_found = TRUE; -+ set_entry_tag(GTK_ENTRY(v1_title_entry), -+ id3v1tag.title, 30); -+ set_entry_tag(GTK_ENTRY(v1_artist_entry), -+ id3v1tag.artist, 30); -+ set_entry_tag(GTK_ENTRY(v1_album_entry), -+ id3v1tag.album, 30); -+ set_entry_tag(GTK_ENTRY(v1_year_entry), -+ id3v1tag.year, 4); -+ /* Check for v1.1 tags */ -+ if (id3v1tag.u.v1_1.__zero == 0) -+ { -+ char *temp = g_strdup_printf("%d", id3v1tag.u.v1_1.track_number); -+ set_entry_tag(GTK_ENTRY(v1_comment_entry), -+ id3v1tag.u.v1_1.comment, 28); -+ gtk_entry_set_text(GTK_ENTRY(v1_tracknum_entry), temp); -+ g_free(temp); -+ } -+ else -+ { -+ set_entry_tag(GTK_ENTRY(v1_comment_entry), -+ id3v1tag.u.v1_0.comment, 30); -+ gtk_entry_set_text(GTK_ENTRY(v1_tracknum_entry), ""); -+ } -+ -+ gtk_list_select_item(GTK_LIST(GTK_COMBO(v1_genre_combo)->list), genre_find_index(genre_list, id3v1tag.genre)); - } -+ else -+ { -+ // Grey out id3v1 tab -+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(v1_checkbox), TRUE); -+ } -+ - rewind(fh); - if (fread(tmp, 1, 4, fh) != 4) - { -diff -Naur xmms-1.2.9-orig/Input/mpg123/id3.h xmms-1.2.9/Input/mpg123/id3.h ---- xmms-1.2.9-orig/Input/mpg123/id3.h Thu Jan 29 06:43:24 2004 -+++ xmms-1.2.9/Input/mpg123/id3.h Thu Jan 29 05:20:31 2004 -@@ -351,6 +351,7 @@ - int id3_set_text(struct id3_frame *, char *); - int id3_set_text_number(struct id3_frame *, int); - gboolean id3_frame_is_text(struct id3_frame *frame); -+char* id3_get_comm(struct id3_frame *frame); - - /* From id3_frame_content.c */ - char *id3_get_content(struct id3_frame *); -diff -Naur xmms-1.2.9-orig/Input/mpg123/id3_frame_text.c xmms-1.2.9/Input/mpg123/id3_frame_text.c ---- xmms-1.2.9-orig/Input/mpg123/id3_frame_text.c Thu Jan 29 06:43:24 2004 -+++ xmms-1.2.9/Input/mpg123/id3_frame_text.c Thu Jan 29 05:18:54 2004 -@@ -38,15 +38,15 @@ - - char *id3_utf16_to_ascii(void *utf16) - { -- char ascii[256]; -- char *uc = (char *) utf16 + 2; -- int i; -- -- for (i = 0; *uc != 0 && i < sizeof(ascii); i++, uc += 2) -- ascii[i] = *uc; -- -- ascii[i] = 0; -- return g_strdup(ascii); -+ char ascii[256]; -+ char *uc = (char *) utf16 + 2; -+ int i; -+ -+ for (i = 0; *uc != 0 && i < sizeof(ascii); i++, uc += 2) -+ ascii[i] = *uc; -+ -+ ascii[i] = 0; -+ return g_strdup(ascii); - } - - -@@ -59,25 +59,25 @@ - */ - gint8 id3_get_encoding(struct id3_frame *frame) - { -- /* Type check */ -- if (!id3_frame_is_text(frame) && -- frame->fr_desc->fd_id != ID3_WXXX && -- frame->fr_desc->fd_id != ID3_IPLS && -- frame->fr_desc->fd_id != ID3_USLT && -- frame->fr_desc->fd_id != ID3_SYLT && -- frame->fr_desc->fd_id != ID3_COMM && -- frame->fr_desc->fd_id != ID3_APIC && -- frame->fr_desc->fd_id != ID3_GEOB && -- frame->fr_desc->fd_id != ID3_USER && -- frame->fr_desc->fd_id != ID3_OWNE && -- frame->fr_desc->fd_id != ID3_COMR) -- return -1; -- -- /* Check if frame is compressed */ -- if (id3_decompress_frame(frame) == -1) -- return -1; -+ /* Type check */ -+ if (!id3_frame_is_text(frame) && -+ frame->fr_desc->fd_id != ID3_WXXX && -+ frame->fr_desc->fd_id != ID3_IPLS && -+ frame->fr_desc->fd_id != ID3_USLT && -+ frame->fr_desc->fd_id != ID3_SYLT && -+ frame->fr_desc->fd_id != ID3_COMM && -+ frame->fr_desc->fd_id != ID3_APIC && -+ frame->fr_desc->fd_id != ID3_GEOB && -+ frame->fr_desc->fd_id != ID3_USER && -+ frame->fr_desc->fd_id != ID3_OWNE && -+ frame->fr_desc->fd_id != ID3_COMR) -+ return -1; -+ -+ /* Check if frame is compressed */ -+ if (id3_decompress_frame(frame) == -1) -+ return -1; - -- return *(gint8 *) frame->fr_data; -+ return *(gint8 *) frame->fr_data; - } - - -@@ -92,25 +92,25 @@ - { - /* Type check */ - if ( frame->fr_desc->fd_idstr[0] != 'T' && -- frame->fr_desc->fd_id != ID3_WXXX && -- frame->fr_desc->fd_id != ID3_IPLS && -- frame->fr_desc->fd_id != ID3_USLT && -- frame->fr_desc->fd_id != ID3_SYLT && -- frame->fr_desc->fd_id != ID3_COMM && -- frame->fr_desc->fd_id != ID3_APIC && -- frame->fr_desc->fd_id != ID3_GEOB && -- frame->fr_desc->fd_id != ID3_USER && -- frame->fr_desc->fd_id != ID3_OWNE && -- frame->fr_desc->fd_id != ID3_COMR ) -- return -1; -+ frame->fr_desc->fd_id != ID3_WXXX && -+ frame->fr_desc->fd_id != ID3_IPLS && -+ frame->fr_desc->fd_id != ID3_USLT && -+ frame->fr_desc->fd_id != ID3_SYLT && -+ frame->fr_desc->fd_id != ID3_COMM && -+ frame->fr_desc->fd_id != ID3_APIC && -+ frame->fr_desc->fd_id != ID3_GEOB && -+ frame->fr_desc->fd_id != ID3_USER && -+ frame->fr_desc->fd_id != ID3_OWNE && -+ frame->fr_desc->fd_id != ID3_COMR ) -+ return -1; - - /* Check if frame is compressed */ - if (id3_decompress_frame(frame) == -1) -- return -1; -+ return -1; - - /* Changing the encoding of frames is not supported yet */ - if ( *(gint8 *) frame->fr_data != encoding ) -- return -1; -+ return -1; - - /* Set encoding */ - *(gint8 *) frame->fr_data = encoding; -@@ -128,44 +128,44 @@ - { - /* Type check */ - if ( frame->fr_desc->fd_idstr[0] != 'T' ) -- return NULL; -+ return NULL; - - /* Check if frame is compressed */ - if (id3_decompress_frame(frame) == -1) -- return NULL; -+ return NULL; - - if ( frame->fr_desc->fd_id == ID3_TXXX ) { -- /* -- * This is a user defined text frame. Skip the description. -- */ -- switch ( *(guint8 *) frame->fr_data ) { -- case ID3_ENCODING_ISO_8859_1: -- { -- char *text = (char *) frame->fr_data + 1; -- -- while ( *text != 0 ) -- text++; -- -- return g_strdup(++text); -- } -- case ID3_ENCODING_UTF16: -- { -- char *text16 = (char *) frame->fr_data + 1; -- -- while (*text16 != 0 || *(text16 + 1) != 0) -- text16 += 2; -- -- return id3_utf16_to_ascii(text16 + 2); -- } -- default: -- return NULL; -- } -+ /* -+ * This is a user defined text frame. Skip the description. -+ */ -+ switch ( *(guint8 *) frame->fr_data ) { -+ case ID3_ENCODING_ISO_8859_1: -+ { -+ char *text = (char *) frame->fr_data + 1; -+ -+ while ( *text != 0 ) -+ text++; -+ -+ return g_strdup(++text); -+ } -+ case ID3_ENCODING_UTF16: -+ { -+ char *text16 = (char *) frame->fr_data + 1; -+ -+ while (*text16 != 0 || *(text16 + 1) != 0) -+ text16 += 2; -+ -+ return id3_utf16_to_ascii(text16 + 2); -+ } -+ default: -+ return NULL; -+ } - } - - if (*(guint8 *) frame->fr_data == ID3_ENCODING_ISO_8859_1) -- return g_strdup((char *) frame->fr_data + 1); -+ return g_strdup((char *) frame->fr_data + 1); - else -- return id3_utf16_to_ascii(((char *) frame->fr_data + 1)); -+ return id3_utf16_to_ascii(((char *) frame->fr_data + 1)); - } - - -@@ -179,20 +179,20 @@ - { - /* Type check */ - if ( frame->fr_desc->fd_idstr[0] != 'T' ) -- return NULL; -+ return NULL; - - /* If predefined text frame, return description. */ - if ( frame->fr_desc->fd_id != ID3_TXXX ) -- return frame->fr_desc->fd_description; -+ return frame->fr_desc->fd_description; - - /* Check if frame is compressed */ - if (id3_decompress_frame(frame) == -1) -- return NULL; -+ return NULL; - - if (*(guint8 *) frame->fr_data == ID3_ENCODING_ISO_8859_1) -- return g_strdup((char *) frame->fr_data + 1); -+ return g_strdup((char *) frame->fr_data + 1); - else -- return id3_utf16_to_ascii((char *) frame->fr_data + 1); -+ return id3_utf16_to_ascii((char *) frame->fr_data + 1); - } - - -@@ -209,42 +209,42 @@ - - /* Check if frame is compressed */ - if (id3_decompress_frame(frame) == -1) -- return -1; -+ return -1; - - /* - * Generate integer according to encoding. - */ - switch ( *(guint8 *) frame->fr_data ) { -- case ID3_ENCODING_ISO_8859_1: -- { -- char *text = ((char *) frame->fr_data) + 1; -- -- while ( *text >= '0' && *text <= '9' ) { -- number *= 10; -- number += *text - '0'; -- text++; -- } -+ case ID3_ENCODING_ISO_8859_1: -+ { -+ char *text = ((char *) frame->fr_data) + 1; -+ -+ while ( *text >= '0' && *text <= '9' ) { -+ number *= 10; -+ number += *text - '0'; -+ text++; -+ } -+ -+ return number; -+ } -+ case ID3_ENCODING_UTF16: -+ { -+ char *text = ((char *) frame->fr_data) + 3; -+ -+/* if (*(gint16 *) frame->fr_data == 0xfeff) */ -+/* text++; */ -+ -+ while ( *text >= '0' && *text <= '9' ) { -+ number *= 10; -+ number += *text - '0'; -+ text++; -+ } - -- return number; -- } -- case ID3_ENCODING_UTF16: -- { -- char *text = ((char *) frame->fr_data) + 3; -- --/* if (*(gint16 *) frame->fr_data == 0xfeff) */ --/* text++; */ -- -- while ( *text >= '0' && *text <= '9' ) { -- number *= 10; -- number += *text - '0'; -- text++; -- } -+ return number; -+ } - -- return number; -- } -- -- default: -- return -1; -+ default: -+ return -1; - } - } - -@@ -260,7 +260,7 @@ - { - /* Type check */ - if ( frame->fr_desc->fd_idstr[0] != 'T' ) -- return -1; -+ return -1; - - /* - * Release memory occupied by previous data. -@@ -289,6 +289,58 @@ - } - - -+ -+ -+char* id3_get_comm(struct id3_frame *frame) -+{ -+ -+ /* Type check */ -+ if ( frame->fr_desc->fd_id != ID3_COMM ) -+ return NULL; -+ -+ /* Check if frame is compressed */ -+ if (id3_decompress_frame(frame) == -1) -+ return NULL; -+ -+ /* -+ * <Header for 'Comment', ID: "COMM"> -+ * Text encoding $xx -+ * Language $xx xx xx -+ * Short content descrip. <text string according to encoding> $00 (00) -+ * The actual text <full text string according to encoding> -+ * -+ * Skip language and short description. -+ */ -+ switch ( *(guint8 *) frame->fr_data ) { -+ case ID3_ENCODING_ISO_8859_1: -+ { -+ char *text = (char *) frame->fr_data + 4; -+ -+ while ( *text != 0 ) -+ text++; -+ -+ return g_strdup(++text); -+ } -+ case ID3_ENCODING_UTF16: -+ { -+ char *text16 = (char *) frame->fr_data + 4; -+ -+ while (*text16 != 0 || *(text16 + 1) != 0) -+ text16 += 2; -+ -+ return id3_utf16_to_ascii(text16 + 2); -+ } -+ default: -+ return NULL; -+ } -+ -+ if (*(guint8 *) frame->fr_data == ID3_ENCODING_ISO_8859_1) -+ return g_strdup((char *) frame->fr_data + 1); -+ else -+ return id3_utf16_to_ascii(((char *) frame->fr_data + 1)); -+} -+ -+ - /* - * Function id3_set_text_number (frame, number) - * -@@ -304,25 +356,25 @@ - - /* Type check */ - if ( frame->fr_desc->fd_idstr[0] != 'T' ) -- return -1; -+ return -1; - - /* - * Release memory occupied by previous data. - */ - id3_frame_clear_data(frame); -- -+ - /* - * Create a string with a reversed number. - */ - pos = 0; - while ( number > 0 && pos < 64 ) { -- buf[pos++] = (number % 10) + '0'; -- number /= 10; -+ buf[pos++] = (number % 10) + '0'; -+ number /= 10; - } - if ( pos == 64 ) -- return -1; -+ return -1; - if ( pos == 0 ) -- buf[pos++] = '0'; -+ buf[pos++] = '0'; - - /* - * Allocate memory for new data. -@@ -336,7 +388,7 @@ - *(gint8 *) frame->fr_raw_data = ID3_ENCODING_ISO_8859_1; - text = (char *) frame->fr_raw_data + 1; - while ( --pos >= 0 ) -- *text++ = buf[pos]; -+ *text++ = buf[pos]; - *text = '\0'; - - frame->fr_altered = 1; -@@ -350,9 +402,9 @@ - - gboolean id3_frame_is_text(struct id3_frame *frame) - { -- if (frame && frame->fr_desc && -- (frame->fr_desc->fd_idstr[0] == 'T' || -- frame->fr_desc->fd_idstr[0] == 'W' )) -- return TRUE; -- return FALSE; -+ if (frame && frame->fr_desc && -+ (frame->fr_desc->fd_idstr[0] == 'T' || -+ frame->fr_desc->fd_idstr[0] == 'W' )) -+ return TRUE; -+ return FALSE; - } -diff -Naur xmms-1.2.9-orig/Input/mpg123/lib_id3v2.h xmms-1.2.9/Input/mpg123/lib_id3v2.h ---- xmms-1.2.9-orig/Input/mpg123/lib_id3v2.h Wed Dec 31 19:00:00 1969 -+++ xmms-1.2.9/Input/mpg123/lib_id3v2.h Thu Jan 29 05:20:31 2004 -@@ -0,0 +1,1280 @@ -+/* the id3v2.3 library. -+ * (c)2002 by Samuel Abels (sam@manicsadness.com) -+ * This project's homepage is: http://software.manicsadness.com/cantus -+ * -+ * This library is designed for easyest possible access to id3 V2 tags. -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -+ */ -+ -+#ifndef DLL_H -+#define DLL_H -+typedef struct DLL_s -+{ -+ void *prev; -+ void *data; -+ void *next; -+} DLL; -+#endif -+ -+#ifndef FALSE -+#define FALSE 0 -+#endif -+#ifndef TRUE -+#define TRUE 1 -+#endif -+ -+#ifndef id3Tag_def -+#define id3Tag_def -+ -+typedef struct id3Tag_s -+{ -+ char title[1024]; -+ char artist[1024]; -+ char album[1024]; -+ char year[5]; -+ char comment[1024]; -+ char track[3]; -+ char genre[512]; -+ char composer[1024]; -+ char url[1024]; -+ char orig_artist[1024]; -+ char enc_by[1024]; -+ unsigned int size; -+ short int has_footer; -+} id3Tag; -+ -+typedef struct id3v2Tag_s -+{ -+// header -+ int tag_size; -+ short int unsync; -+ short int has_extheader; -+ short int is_experimental; -+//extheader -+ int extheader_size; -+ int padding_size; -+ short int crc_data_present; -+ char crc_data[4]; -+// frames -+ DLL *frames; -+} id3v2Tag; -+ -+typedef struct id3v2Frame_s -+{ -+ unsigned char id[4]; -+ int datasize; -+ short int tagalter; -+ short int filealter; -+ short int readonly; -+ short int compression; -+ short int encryption; -+ short int grouping; -+ char *data; -+} id3v2Frame; -+ -+#endif -+ -+/* the id3v2.3 library. -+ * (c)2002 by Samuel Abels (sam@manicsadness.com) -+ * This project's homepage is: http://software.manicsadness.com/cantus -+ * -+ * This library is designed for easyest possible access to id3 V2 tags. -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -+ */ -+ -+#include <stdio.h> -+#include <string.h> -+#include <stdlib.h> -+#include <ctype.h> -+#include "charset.h" -+ -+ -+ -+/*************************************************************************************** -+ * BELOW FOLLOW THE STATICS -+ ***************************************************************************************/ -+// Return the last item of an doubly linked list -+static DLL * -+dll_last (DLL *list) -+{ -+ if( list == NULL ) -+ return (NULL); -+ -+ while ( list->next != NULL ) -+ list = list->next; -+ -+ return (list); -+} -+ -+// Append an item to the doubly linked list -+static DLL * -+dll_append (DLL *list, void *data) -+{ -+ DLL *item = malloc (sizeof(DLL)); -+ DLL *lastitem = dll_last(list); -+ -+ item->data = data; -+ item->next = NULL; -+ -+ if ( lastitem == NULL ) -+ { -+ item->prev = NULL; -+ return (item); -+ } -+ else -+ { -+ item->prev = lastitem; -+ lastitem->next = item; -+ } -+ -+ return list; -+} -+ -+static DLL * -+dll_remove (DLL *list, void *data) -+{ -+ DLL *item = list; -+ -+ while ( item ) -+ { -+ if ( item->data == data ) -+ { -+ if ( item->prev == NULL -+ && item->next == NULL ) -+ { -+// No other items there? Then return a zero pointer. -+ free (item); -+ return (NULL); -+ } -+ if ( item->prev == NULL ) -+ { -+// remove the first item of the list here... -+ list = item->next; -+ list->prev = NULL; -+ free (item); -+ -+ break; -+ } -+ if ( item->next == NULL ) -+ { -+// ...remove the last item of the list here... -+ ((DLL*)(item->prev))->next = NULL; -+ free (item); -+ -+ break; -+ } -+// ...or other items here -+ ((DLL*)(item->prev))->next = item->next; -+ ((DLL*)(item->next))->prev = item->prev; -+ free (item); -+ -+ break; -+ } -+ item = item->next; -+ } -+ -+ return list; -+} -+ -+// Free a doubly linked list -+static DLL * -+dll_free (DLL *list) -+{ -+ DLL *item = list; -+ DLL *current = NULL; -+ -+ while (item) -+ { -+ current = item; -+ item = item->next; -+ -+ free (current); -+ } -+ -+ return NULL; -+} -+ -+/* -+ * Converts all occurences of a CR/LF to LF -+ */ -+static void -+crlf2cr (char *source) -+{ -+ char *psource = source; -+ char destination[2048]; -+ -+ if(source != NULL) -+ { -+ memset (destination, 0, 2048); -+ for (psource = source; *psource != '\0'; psource++) -+ { -+ if(*psource == 13 -+ && *(psource+1) == 10 ) -+ { -+ psource++; -+ } -+ destination[strlen(destination)] = *psource; -+ } -+ } -+ -+ strncpy (source, destination, strlen(destination)+1); -+} -+ -+ -+/* -+ * Converts all occurences of a LF to CR/LF -+ */ -+static void -+cr2crlf (char *source) -+{ -+ char *psource = source; -+ char destination[2048]; -+ -+ if( source != NULL ) -+ { -+ memset (destination, 0, 2048); -+ for (psource = source; *psource != '\0'; psource++) -+ { -+ if (*psource == 10) -+ destination[strlen(destination)] = 13; -+ destination[strlen(destination)] = *psource; -+ } -+ } -+ -+ strncpy (source, destination, strlen(destination)+1); -+} -+ -+ -+ -+ -+/* -+ * Reads the first ten bytes of an file and checks, if it's a valid ID3 V2.3 file -+ * If it is, the header flags are stored in the tag struct. -+ * Returns TRUE on a valid header, otherwise FALSE. -+ */ -+static short int -+check_header (FILE *mp3file, id3v2Tag *v2) -+{ -+ unsigned char buf[10]; -+ -+// get header (=first ten bytes of the file) -+ fseek (mp3file, 0, SEEK_SET); -+ if ( fread (buf, 1, 10, mp3file) < 10 ) -+ return (FALSE); -+ -+// a valid tag must begin with "ID3" followed by the version (checked below) -+// followed by a flag byte, where the last five bytes are unused and must be FALSE -+ if ( memcmp(buf, "ID3", 3) != 0 -+ || (buf[5] & 31) != 0 ) -+ return (FALSE); -+ -+// check if version is supported -+ if ( buf[3] != 3 -+ || buf[4] != 0 ) -+ return (FALSE); -+ -+// The next thing to come is the tag size. These are 4 bytes, the MSB should always be set to zero. check! -+ if ( (buf[6] & 128) != 0 -+ || (buf[7] & 128) != 0 -+ || (buf[8] & 128) != 0 -+ || (buf[9] & 128) != 0 ) -+ return (FALSE); -+ -+// The tag size is encoded to be syncsave, so I got to decode it. -+// The tag size is the size of the complete tag EXCLUDING the 10-byte header. -+ v2->tag_size = buf[9] + (buf[8] << 7) + (buf[7] << 14) + (buf[6] << 21); -+ -+// ok, so were save. put the flags in the nicer struct. -+ v2->unsync = (buf[5] & 128) >> 7; -+ v2->has_extheader = (buf[5] & 64) >> 6; -+ v2->is_experimental = (buf[5] & 32) >> 5; -+ -+ return (TRUE); -+} -+ -+ -+ -+ -+ -+/* -+ * Reads the extheader of a valid ID3V2.3 file and checks, if it's a valid. -+ * If it is, the extheader flags are stored in the tag struct. -+ * Returns TRUE on a valid extheader, otherwise FALSE. -+ */ -+static short int -+check_extheader (FILE *mp3file, id3v2Tag *v2) -+{ -+ unsigned char buf[10]; -+ -+// Read id3 extheader intro (5 bytes) -+ fseek (mp3file, 10, SEEK_SET); -+ if ( fread(buf, 1, 5, mp3file) < 5 ) -+ return (FALSE); -+ -+// First comes the extheader size. These are 4 bytes, the MSB should always be set to zero. check! -+ if( (buf[0] & 128) != 0 -+ || (buf[1] & 128) != 0 -+ || (buf[2] & 128) != 0 -+ || (buf[3] & 128) != 0 ) -+ return (FALSE); -+ -+// OK. In ID3V2.3 only six byte or ten byte extheaders are allowed. -+ if( v2->extheader_size != 6 -+ && v2->extheader_size != 10 ) -+ return (FALSE); -+ -+// The first four bytes specify the extheader size. -+ v2->extheader_size = buf[3] + (buf[2] << 7) + (buf[1] << 14) + (buf[0] << 21); -+ -+// The fifth byte specifies extendened flags. (in fact, only one flag is used for ID3V2.3 -+// The MSB of the byte 5 specifies, if there is CRC data to come, appended to the extheader. -+ if( (buf[4] & 127) != 0 -+ || buf[5] != 0 ) -+ return (FALSE); -+ -+ v2->crc_data_present = (buf[4] & 128) >> 7; -+ -+// if crc data is present, the extheader size must be ten bytes, otherwise 6. -+ if ( (v2->extheader_size == 6 && v2->crc_data_present == TRUE) -+ || (v2->extheader_size == 10 && v2->crc_data_present == FALSE) ) -+ return (FALSE); -+ -+// now come four bytes specifying the padding size -+ if ( (buf[6] & 128) != 0 -+ || (buf[7] & 128) != 0 -+ || (buf[8] & 128) != 0 -+ || (buf[9] & 128) != 0 ) -+ return (FALSE); -+ -+ v2->padding_size = buf[9] + (buf[8] << 7) + (buf[7] << 14) + (buf[6] << 21); -+ -+// Now to the optional crc data. -+ if( v2->crc_data_present ) -+ { -+ if( fread (buf, 1, 4, mp3file) < 4 ) -+ return (FALSE); -+ -+ memcpy (v2->crc_data, buf, 4); -+ } -+ -+ return (TRUE); -+} -+ -+ -+ -+ -+ -+/* -+ * Reads the complete frames of a valid ID3V2.3 file and checks, if they are valid. -+ * If they are, the flags are stored in a DLL and appended to the tag struct. -+ * Returns TRUE on success, otherwise FALSE. -+ */ -+static short int -+read_frames (FILE *mp3file, id3v2Tag *v2) -+{ -+ unsigned char buf[10]; -+ int numframes = 0; -+ unsigned int totalframesize = 0; -+ id3v2Frame *frame = NULL; -+ -+// set the position to the first frame header (header = 10 bytes + extheadersize + 4 bytes "extheaderheader") -+ if (v2->has_extheader) -+ fseek (mp3file, 10 + v2->extheader_size + 4, SEEK_SET); -+ else -+ fseek (mp3file, 10, SEEK_SET); -+ -+// If the tag size is too small for frames, return with an error. -+ if ( ((v2->tag_size + 10) - v2->padding_size) <= ftell(mp3file) ) -+ return FALSE; -+ -+// now read all the frames -+ numframes = 0; -+ v2->frames = NULL; -+ while ( ftell (mp3file) < ((v2->tag_size + 10) - v2->padding_size) ) -+ { -+ frame = calloc (1, sizeof(id3v2Frame)); -+ -+// the frame header is ten bytes long -+ if ( fread (buf, 1, 10, mp3file) < 10 ) -+ goto error; -+ -+// if we are already in the padding, we must no longer look for frames... -+ if ( buf[0] == 0 && buf[1] == 0 && buf[2] == 0 && buf[3] == 0 ) -+ { -+ if (numframes == 0) -+ goto error; -+ -+ free (frame); -+ break; -+ } -+ -+// first come four characters identifying the frame. It must be alphanumeric. -+ if ( !isalnum(buf[0]) || !isalnum(buf[1]) || !isalnum(buf[2]) || !isalnum(buf[3]) ) -+ goto error; -+ -+ *(frame->id) = buf[0]; -+ *(frame->id + 1) = buf[1]; -+ *(frame->id + 2) = buf[2]; -+ *(frame->id + 3) = buf[3]; -+ -+// then, the frame size is to come. Again, the four MSBs must be zero. -+ if ( (buf[4] & 128) != 0 -+ || (buf[5] & 128) != 0 -+ || (buf[6] & 128) != 0 -+ || (buf[7] & 128) != 0 ) -+ goto error; -+ -+ frame->datasize = buf[7] + (buf[6] << 7) + (buf[5] << 14) + (buf[4] << 21); -+ -+// A minimum size must be present! -+ if ( frame->datasize <= 0 ) -+ goto error; -+ -+// The two following frame header flags have the 5 LSBs not set. -+ if ( (buf[8] & 31) != 0 -+ || (buf[9] & 31) != 0 ) -+ goto error; -+ -+// now, put the flags in the struct. -+ frame->tagalter = (buf[8] & 128) >> 7; -+ frame->filealter = (buf[8] & 64) >> 6; -+ frame->readonly = (buf[8] & 32) >> 5; -+ -+ frame->compression = (buf[9] & 128) >> 7; -+ frame->encryption = (buf[8] & 64) >> 6; -+ frame->grouping = (buf[8] & 32) >> 5; -+ -+// ok, we are done with the frame header, so now we read the frame data. -+ frame->data = calloc (1, frame->datasize + 1); -+ if( fread (frame->data, 1, frame->datasize, mp3file) < frame->datasize ) -+ goto error; -+ -+ numframes++; -+ totalframesize += 10 + frame->datasize; -+ -+// we append it to a glist, which is appended to the v2 struct. -+ v2->frames = dll_append (v2->frames, frame); -+ } -+ -+// if we have no extheader, that means, we don't know how much padding we have! -+// thus, i calculate it here. -+ if ( !v2->has_extheader ) -+ v2->padding_size = v2->tag_size - totalframesize; -+ -+// A minimum of one frame is mandatory. -+ if( numframes > 0 ) -+ return (TRUE); -+ -+error: -+// cleanups in case of an error. -+ if( frame && frame->data ) -+ free (frame->data); -+ if( frame ) -+ free (frame); -+ return (FALSE); -+} -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+/* -+ * Reads all tag information of a valid ID3V2.3 file. -+ * When successful, the info is stored in the tag struct. -+ * Returns: -+ * 0 = success -+ * 1 = Cannot open file. -+ * 2 = No header or wrong version. -+ * 3 = broken extheader. -+ * 4 = broken frames. -+ */ -+static int -+get_id3v2tag_raw (id3v2Tag *v2, char *filename) -+{ -+ FILE *mp3file = NULL; -+ int error = 0; -+ -+// open file -+ error = 1; -+ mp3file = fopen (filename, "rb"); -+ if (!mp3file) -+ goto done; -+ -+// check/get header -+ error = 2; -+ if( !check_header (mp3file, v2) ) -+ goto done; -+ -+// check/get extheader -+ error = 3; -+ if( v2->has_extheader -+ && !check_extheader (mp3file, v2) ) -+ goto done; -+ -+// get the content frames -+ error = 4; -+ if( !read_frames (mp3file, v2) ) -+ goto done; -+ -+ error = 0; -+done: -+ fclose (mp3file); -+ return (error); -+} -+ -+ -+ -+ -+ -+/* -+ * Find one frames data and give back its data in the correct format. -+ * Returns TRUE on success, otherwise FALSE; -+ */ -+static short int -+frame_find (id3v2Tag *v2, char *name, char *value) -+{ -+ DLL *curframe = NULL; -+ id3v2Frame *frame = NULL; -+ -+ // we parse through the whole list of frames, giving back the correct frame value. -+ curframe = v2->frames; -+ while ( curframe ) -+ { -+ frame = (id3v2Frame *)curframe->data; -+ -+ // Just to be sure... -+ if( frame->datasize <= 0 ) -+ goto nextframe; -+ -+ // Matches the users request? Otherwise try the next frame. -+ if( memcmp (frame->id, name, 4) != 0 ) -+ goto nextframe; -+ -+ // These types don't need much change, just give the whole data back to the user according to the encoding. -+ // The first byte is the encoding. -+ // TPE1: Artist -+ // TIT2: Song Title -+ // TALB: Album Title -+ // TYER: Year -+ // TRCK: Track -+ // TCON: Genre -+ // COMM: Comment -+ // TCOM: Composer -+ // TOPE: TOPE Original artist(s)/performer(s) -+ // TENC: Encoded by -+ if ( memcmp (frame->id, "TPE1", 4) == 0 -+ || memcmp (frame->id, "TIT2", 4) == 0 -+ || memcmp (frame->id, "TALB", 4) == 0 -+ || memcmp (frame->id, "TYER", 4) == 0 -+ || memcmp (frame->id, "TRCK", 4) == 0 -+ || memcmp (frame->id, "TCON", 4) == 0 -+ || memcmp (frame->id, "TCOM", 4) == 0 -+ || memcmp (frame->id, "TOPE", 4) == 0 -+ || memcmp (frame->id, "TENC", 4) == 0) -+ //|| memcmp (frame->id, "WXXX", 4) == 0) -+ { -+ if ( *frame->data == 0 ) -+ memcpy(value, frame->data + 1, frame->datasize - 1); -+ if ( *frame->data == 1 ) -+ { -+ char nulltermvalue[frame->datasize]; -+ char *isovalue = NULL; -+ -+ // the tag is not null terminated, so i have to create a null terminated string first. -+ memset (nulltermvalue, 0, frame->datasize); -+ memcpy (nulltermvalue, frame->data + 1, frame->datasize - 1); -+ -+ // Convert from UTF to ISO and copy to the users variable. -+ isovalue = convert_from_utf8 (nulltermvalue); -+ strncpy (value, isovalue, sizeof(value) - 1); -+ free (isovalue); -+ } -+ -+ // change linefeeds to a single "return" key. -+ crlf2cr (value); -+ return (TRUE); -+ } -+ if ( memcmp (frame->id, "WCOM", 4) == 0 -+ || memcmp (frame->id, "WCOP", 4) == 0 -+ || memcmp (frame->id, "WOAF", 4) == 0 -+ || memcmp (frame->id, "WOAR", 4) == 0 -+ || memcmp (frame->id, "WOAS", 4) == 0 -+ || memcmp (frame->id, "WPAY", 4) == 0 -+ || memcmp (frame->id, "WPUB", 4) == 0) -+ { -+ memcpy(value, frame->data, frame->datasize - 1); -+ -+ // change linefeeds to a single "return" key. -+ crlf2cr (value); -+ return (TRUE); -+ } -+ -+ // The comment requires special handling. -+ // Its data has: One byte "encoding" (0 = ISO-8859-1, 1 = UNICODE) -+ // followed by the language (three bytes, e.g. "eng"), -+ // followed by a short description, -+ // then a NULL, -+ // and the full description -+ // For now, i simply drop the short description -+ if( memcmp(frame->id, "COMM", 4) == 0 ) -+ { -+ // check for the right format. (minsize 5, must contain a "\0" after the language) -+ if ( frame->datasize < 5 ) -+ goto nextframe; -+ if ( !memchr (frame->data + 4, '\0', frame->datasize - 4) ) -+ goto nextframe; -+ -+ // now, give the data back to the user, according to the encoding. -+ if ( *frame->data == 0 ) -+ memcpy (value, frame->data + 5, frame->datasize - 5); -+ if ( *frame->data == 1 ) -+ { -+ char nulltermvalue[frame->datasize]; -+ char *isovalue = NULL; -+ -+ // the tag is not null terminated, so i have to create a null terminated string first. -+ memset (nulltermvalue, 0, frame->datasize); -+ memcpy (nulltermvalue, frame->data + 5, frame->datasize - 5); -+ -+ // Convert from UTF to ISO and copy to the users variable. -+ isovalue = convert_from_utf8 (nulltermvalue); -+ strncpy (value, isovalue, sizeof(value) - 1); -+ free (isovalue); -+ } -+ -+ // change linefeeds to a single "return" key. -+ crlf2cr (value); -+ return TRUE; -+ } -+ -+nextframe: -+ curframe = curframe->next; -+ } -+ -+ return FALSE; -+} -+ -+ -+ -+ -+/* -+ * Remove one frame out of the id3v2Tag struct -+ * Returns TRUE on success, otherwise FALSE; -+ */ -+static short int -+frame_remove (id3v2Tag *v2, char *name) -+{ -+ id3v2Frame *frame = NULL; -+ DLL *curframe = NULL; -+ DLL *tempframe = NULL; -+ -+// Parse through the list of frames. -+ curframe = v2->frames; -+ while ( curframe ) -+ { -+ frame = (id3v2Frame *)curframe->data; -+ tempframe = curframe; -+ curframe = curframe->next; -+ -+ if ( memcmp (frame->id, name, 4) == 0 ) -+ { -+// we have found the item! removing will NOT shrink the tag, but increase the padding. -+ v2->padding_size += (frame->datasize + 10); -+// and free memory. -+ v2->frames = dll_remove (v2->frames, tempframe->data); -+ free (frame->data); -+ free (frame); -+ -+ return TRUE; -+ } -+ } -+ -+ return FALSE; -+} -+ -+ -+ -+/* -+ * Add a frame to the framelist. If the frame name is already in the list, it will be replaced. -+ * Returns: -+ * TRUE: The tag size HAS BEEN increased. -+ * FALSE: The tag size has NOT been increased. -+ */ -+static short int -+frame_set (id3v2Tag *v2, char *name, char *value) -+{ -+ id3v2Frame *frame = NULL; -+ short int sizechange = FALSE; -+ -+// prevent the user to send CR/LF, which is forbidden. -+ cr2crlf (value); -+// eventually remove an existing item! -+ frame_remove (v2, name); -+ -+// alloc space for the new frame. -+ frame = malloc (sizeof(id3v2Frame)); -+ -+ memcpy (frame->id, name, 4); -+ frame->datasize = strlen (value); -+ frame->tagalter = 0; -+ frame->filealter = 0; -+ frame->readonly = 0; -+ frame->compression = 0; -+ frame->encryption = 0; -+ frame->grouping = 0; -+ -+// The comment requires special handling. If you need to know why, look at the documentation -+// of the "frame_find" function above. -+ if( memcmp (frame->id, "COMM", 4) == 0 ) -+ { -+ char fullvalue[frame->datasize + 6]; -+ -+ sprintf(fullvalue, "%ceng%c%s", 0, 0, value); -+ -+ frame->datasize += 5; -+ frame->data = malloc (frame->datasize); -+ memcpy (frame->data, fullvalue, frame->datasize); -+ } -+ else if ((memcmp(frame->id, "WCOM", 4) == 0) -+ || memcmp (frame->id, "WCOP", 4) == 0 -+ || memcmp (frame->id, "WOAF", 4) == 0 -+ || memcmp (frame->id, "WOAR", 4) == 0 -+ || memcmp (frame->id, "WOAS", 4) == 0 -+ || memcmp (frame->id, "WPAY", 4) == 0 -+ || memcmp (frame->id, "WPUB", 4) == 0) -+ { -+ frame->data = malloc (frame->datasize); -+ memcpy (frame->data, value, frame->datasize); -+ } -+ else -+ { -+ char fullvalue[frame->datasize + 2]; -+ -+ // Put encoding type just before the value -+ sprintf (fullvalue, "%c%s", 0, value); -+ -+ frame->datasize += 1; -+ frame->data = malloc (frame->datasize); -+ memcpy (frame->data, fullvalue, frame->datasize); -+ } -+ -+// Ok. This decreases the available padding. If we have no padding left, we must increase the padding (and thus, the tag). -+ if( v2->padding_size - (frame->datasize + 10) <= 0 ) -+ { -+// add: framesize + frameheadersize + padding. -+ v2->padding_size += frame->datasize + 10 + 1024; -+ v2->tag_size += frame->datasize + 10 + 1024; -+ -+ sizechange = TRUE; -+ } -+ -+// In every case, we must subtract the new allocated space from the padding. -+ v2->padding_size -= frame->datasize + 10; -+ -+ v2->frames = dll_append (v2->frames, frame); -+ -+ return sizechange; -+} -+ -+ -+ -+/* -+ * Create raw header. -+ * Returns: -+ * TRUE: successful. -+ * FALSE: unsuccessful. -+ */ -+static int -+create_header_raw (char *raw, id3v2Tag *v2) -+{ -+// now we are going to write the tags raw data into the raw string -+ memset (raw, 0, v2->tag_size + 10); -+// ID3 identifier bytes -+ memcpy (raw, "ID3", 3); -+ raw += 3; -+// major version byte -+ *raw++ = 3; -+// minor version byte -+ *raw++ = 0; -+// Flags byte -+ *raw++ = ((v2->unsync & 1) << 7) -+ | ((v2->has_extheader & 1) << 6) -+ | ((v2->is_experimental & 1) << 5); -+// Tag size. It must be syncsafe! -+ *raw++ = ((v2->tag_size & 0x800000) >> 23) | (((v2->tag_size & 0x7f000000) >> 24) << 1); -+ *raw++ = ((v2->tag_size & 0x8000) >> 15) | (((v2->tag_size & 0x7f0000) >> 16) << 1); -+ *raw++ = ((v2->tag_size & 0x80) >> 7) | (((v2->tag_size & 0x7f00) >> 8) << 1); -+ *raw++ = (v2->tag_size & 0x7f); -+ -+ return TRUE; -+} -+ -+ -+ -+ -+/* -+ * Generates the frames. btw.: ID3 sucks! -+ * Returns: TRUE if succesful, otherwise FALSE. -+ */ -+static short int -+create_frames_raw (char *raw, id3v2Tag *v2) -+{ -+ id3v2Frame *frame = NULL; -+ DLL *curframe = NULL; -+ -+// if we have no frames, just quit. -+ if ( v2->frames == NULL ) -+ return FALSE; -+ -+// the header and extheader have already been written. -+ raw += 10; -+ if ( v2->has_extheader ) -+ raw += 4 + v2->extheader_size; -+ -+ curframe = v2->frames; -+ while ( curframe ) -+ { -+ frame = (id3v2Frame *)curframe->data; -+ -+// secure is secure -+ if ( frame->datasize <= 0 ) -+ goto nextframe; -+ -+// add the frame id -+ memcpy(raw, frame->id, 4); -+ raw += 4; -+// add the frame size (syncsafe) -+ *raw++ = ((frame->datasize & 0x800000) >> 23) | (((frame->datasize & 0x7f000000) >> 24) << 1); -+ *raw++ = ((frame->datasize & 0x8000) >> 15) | (((frame->datasize & 0x7f0000) >> 16) << 1); -+ *raw++ = ((frame->datasize & 0x80) >> 7) | (((frame->datasize & 0x7f00) >> 8) << 1); -+ *raw++ = (frame->datasize & 0x7f); -+ -+// The two flagbytes -+ *raw++ = ((frame->tagalter & 1) << 7) -+ | ((frame->filealter & 1) << 6) -+ | ((frame->readonly & 1) << 5); -+ -+ *raw++ = ((frame->compression & 1) << 7) -+ | ((frame->encryption & 1) << 6) -+ | ((frame->grouping & 1) << 5); -+ -+// now the frame data. -+ memcpy(raw, frame->data, frame->datasize); -+ raw += frame->datasize; -+ -+nextframe: -+ curframe = curframe->next; -+ } -+ -+ return TRUE; -+} -+ -+/*************************************************************************************** -+ * END OF STATICS -+ ***************************************************************************************/ -+ -+ -+ -+ -+ -+ -+ -+/* -+ * Purpose: Reads the ID3 tag from a file. -+ * Parameters: tag - The structure to store the tag in, filename - The name of the file to operate on. -+ * Returns: -+ * 0 if successful, -+ * 1 if an error occured when opening the file -+ * 2 if error while reading tag. -+ * 3 if no TAG found. -+ */ -+int -+get_id3v2_tag (id3Tag *tag, char *filename) -+{ -+ id3v2Tag *v2 = calloc (1, sizeof(id3v2Tag)); -+ DLL *curframe = NULL; -+ int error = 0; -+ -+// Read the tag. -+ error = get_id3v2tag_raw (v2, filename); -+ -+// Init the users tag -+ memset (tag, 0, sizeof (id3Tag)); -+ -+ if( error == 0 ) -+ { -+// if we have a valid tag we copy the raw data to the users struct -+ tag->size = v2->tag_size; -+ -+ frame_find (v2, "TPE1", tag->artist); -+ frame_find (v2, "TIT2", tag->title); -+ frame_find (v2, "TALB", tag->album); -+ frame_find (v2, "TYER", tag->year); -+ frame_find (v2, "COMM", tag->comment); -+ frame_find (v2, "TRCK", tag->track); -+ frame_find (v2, "TCON", tag->genre); -+ frame_find (v2, "TCOM", tag->composer); // Composer -+ frame_find (v2, "TOPE", tag->orig_artist); // Original artist(s)/performer(s) -+ frame_find (v2, "WCOM", tag->url); // URL -+ frame_find (v2, "TENC", tag->enc_by); // Encoded by -+ } -+ -+// Free all the stuff -+ if (v2->frames) -+ { -+ id3v2Frame *frame = NULL; -+ -+ curframe = v2->frames; -+ while ( curframe ) -+ { -+ frame = (id3v2Frame *)curframe->data; -+ -+ free (frame->data); -+ free (frame); -+ -+ curframe = curframe->next; -+ } -+ v2->frames = dll_free (v2->frames); -+ } -+ -+ free (v2); -+ return (error); -+} -+ -+ -+ -+ -+ -+ -+ -+ -+ -+/* -+ * Purpose: Clear the ID3 tag of a file. -+ * Parameters: a filename. -+ * Returns: -+ * 0 if successful, -+ * 1 if an error occured when opening the file -+ * 2 if an error while reading/writing the tag. -+ */ -+int -+del_id3v2_tag (char *filename) -+{ -+ id3v2Tag *v2 = calloc (1, sizeof(id3v2Tag)); -+ long file_len; -+ FILE *file; -+ void *ptr; -+ -+// check if an valid old id3v2 tag is present -+// In these two error-cases we don't know how big the tag is. -+ if( get_id3v2tag_raw (v2, filename) == 1 -+ || get_id3v2tag_raw (v2, filename) == 2 ) -+ return(0); -+ -+ ptr = malloc (4096); -+ -+// open file read/write -+ file = fopen (filename, "r+b"); -+ if (!file) -+ return (1); -+ -+ fseek (file, 0, SEEK_END); -+ file_len = ftell (file); -+ if ( file_len < 11 -+ || v2->tag_size < 11 ) -+ return (2); -+ -+// set anything but the header in tag to zero. I'll not really remove the tag, -+// because this would be much slower and if we write a new tag, this would mean we´d have to -+// rewrite the complete tag. -+/* -+ fseek (file, 10, SEEK_SET); -+ for (read = 0; read < v2->tag_size - 10; read++) -+ fputc (0, file); -+ -+*/ -+ { -+ FILE *file = NULL; -+ FILE *tempfile = NULL; -+ char *tempfilename = NULL; -+ int read = 0; -+ char buf[4096]; -+ int error = 0; -+ -+ // Open a tempfile -+ error = 2; -+ tempfilename = malloc (strlen (filename) + 11); -+ sprintf (tempfilename, "%s%s", filename, ".tempXXXXX"); -+ if( !(tempfile = fopen(tempfilename, "wb")) ) -+ { -+ remove (tempfilename); -+ free (tempfilename); -+ goto done; -+ } -+ -+ // Write the tag to the tempfile. -+ -+ // Open the mp3file. -+ error = 4; -+ if( !(file = fopen(filename, "r+b")) ) -+ { -+ fclose (file); -+ remove (tempfilename); -+ free (tempfilename); -+ goto done; -+ } -+ // skip the old tag (if one existed) -+ fseek (file, v2->tag_size + 10, SEEK_SET); -+ -+ // copy the rest of the file to the tempfile. -+ while ( !feof(file) ) -+ { -+ error = 5; -+ read = fread (buf, 1, 4096, file); -+ if( fwrite (buf, 1, read, tempfile) != read -+ && !feof (file) ) -+ { -+ remove (tempfilename); -+ free (tempfilename); -+ fflush (tempfile); -+ fclose (tempfile); -+ fflush (file); -+ fclose (file); -+ goto done; -+ } -+ } -+ -+ fflush (file); -+ fclose (file); -+ fflush (tempfile); -+ fclose (tempfile); -+ -+ // rename the tempfile, so it is the mp3file. -+ rename (tempfilename, filename); -+ free (tempfilename); -+ } -+ -+done: -+ if (v2) free (v2); -+ if (ptr) free (ptr); -+ -+ return(0); -+} -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+int -+set_id3v2_tag (id3Tag *tag, char *filename) -+{ -+ id3v2Tag *v2 = malloc (sizeof(id3v2Tag)); -+ id3v2Frame *frame = NULL; -+ unsigned char *rawdata = NULL; -+ DLL *curframe = NULL; -+ int oldsize = 0; -+ char track[3]; -+ int error = 0; -+ -+// Try to get the content of an old tag -+ error = 1; -+ memset (v2, 0, sizeof(id3v2Tag)); -+ get_id3v2tag_raw (v2, filename); -+ -+ oldsize = v2->tag_size; -+ -+// If the old tag had an extheader, I'll add its size to my tag, because i don't plan to add it again. -+ if ( v2->has_extheader ) -+ { -+ v2->padding_size += v2->extheader_size; -+ v2->has_extheader = FALSE; -+ v2->extheader_size = 0; -+ } -+ -+// first of all I'll generate a valid id3v2 tag struct out of the tag struct we got by the user. -+// Set the flags... -+ v2->unsync = FALSE; -+ v2->is_experimental = FALSE; -+ v2->crc_data_present = FALSE; -+ -+// Set the contentframes -+ frame_set (v2, "TIT2", tag->title); -+ frame_set (v2, "TPE1", tag->artist); -+ frame_set (v2, "TALB", tag->album); -+ frame_set (v2, "TYER", tag->year); -+ frame_set (v2, "COMM", tag->comment); -+ frame_set (v2, "TCON", tag->genre); -+ frame_set (v2, "TCOM", tag->composer); // Composer -+ frame_set (v2, "TOPE", tag->orig_artist); // TOPE Original artist(s)/performer(s) -+ frame_set (v2, "WCOM", tag->url); // URL -+ frame_set (v2, "TENC", tag->enc_by); // Encoded by -+ if ( atoi (tag->track) < 10 ) -+ snprintf (track, 3, "0%i", atoi(tag->track)); -+ else -+ snprintf (track, 3, "%i", atoi(tag->track)); -+ frame_set (v2, "TRCK", track); -+ -+// Create a header in the raw data string -+ rawdata = calloc (1, v2->tag_size + 10); -+ create_header_raw (rawdata, v2); -+ -+// Create frames raw data. -+ create_frames_raw (rawdata, v2); -+ -+// is the new tag bigger than the old one? Then we'll have to completely rewrite the file... -+ if ( v2->tag_size > oldsize ) -+ { -+ FILE *file = NULL; -+ FILE *tempfile = NULL; -+ char *tempfilename = NULL; -+ int read = 0; -+ char buf[4096]; -+ -+// Open a tempfile -+ error = 2; -+ tempfilename = malloc (strlen (filename) + 11); -+ sprintf (tempfilename, "%s%s", filename, ".tempXXXXX"); -+ if( !(tempfile = fopen(tempfilename, "wb")) ) -+ { -+ remove (tempfilename); -+ free (tempfilename); -+ goto done; -+ } -+ -+// Write the tag to the tempfile. -+ error = 3; -+ fseek (tempfile, 0, SEEK_SET); -+ if( fwrite (rawdata, 1, v2->tag_size + 10, tempfile) < v2->tag_size ) -+ { -+ fclose (tempfile); -+ remove (tempfilename); -+ free (tempfilename); -+ goto done; -+ } -+ -+// Open the mp3file. -+ error = 4; -+ if( !(file = fopen(filename, "r+b")) ) -+ { -+ fclose (file); -+ remove (tempfilename); -+ free (tempfilename); -+ goto done; -+ } -+// skip the old tag (if one existed) -+ fseek (file, oldsize? oldsize + 10 : oldsize, SEEK_SET); -+ -+// copy the rest of the file to the tempfile. -+ while ( !feof(file) ) -+ { -+ error = 5; -+ read = fread (buf, 1, 4096, file); -+ if( fwrite (buf, 1, read, tempfile) != read -+ && !feof (file) ) -+ { -+ remove (tempfilename); -+ free (tempfilename); -+ fflush (tempfile); -+ fclose (tempfile); -+ fflush (file); -+ fclose (file); -+ goto done; -+ } -+ } -+ -+ fflush (file); -+ fclose (file); -+ fflush (tempfile); -+ fclose (tempfile); -+ -+// rename the tempfile, so it is the mp3file. -+ rename (tempfilename, filename); -+ free (tempfilename); -+ } -+ else -+ { -+ FILE *file = NULL; -+ -+// If the old tag was bigger than the new one, we can simply overwrite it! -+// open. -+ error = 10; -+ if( !(file = fopen(filename, "r+b")) ) -+ goto done; -+ -+// write. -+ error = 11; -+ fseek (file, 0, SEEK_SET); -+ if( fwrite (rawdata, 1, v2->tag_size + 10, file) < v2->tag_size ) -+ { -+ fflush (file); -+ fclose (file); -+ goto done; -+ } -+ -+ fflush (file); -+ fclose (file); -+ } -+ -+ error = 0; -+ -+done: -+// Free all the stuff -+ curframe = v2->frames; -+ while ( curframe ) -+ { -+ frame = (id3v2Frame *)curframe->data; -+ -+ free (frame->data); -+ free (frame); -+ -+ curframe = curframe->next; -+ } -+ dll_free (v2->frames); -+ -+ if ( rawdata != NULL ) -+ free (rawdata); -+ free (v2); -+ return (error); -+} -diff -Naur xmms-1.2.9-orig/Input/mpg123/mpg123.c xmms-1.2.9/Input/mpg123/mpg123.c ---- xmms-1.2.9-orig/Input/mpg123/mpg123.c Thu Jan 29 06:43:24 2004 -+++ xmms-1.2.9/Input/mpg123/mpg123.c Thu Jan 29 05:18:54 2004 -@@ -607,8 +607,13 @@ - { \ - id3frm = id3_get_frame( id3d, _tid, 1 ); \ - if (id3frm) { \ -- txt = _tid == ID3_TCON ? id3_get_content(id3frm) \ -- : id3_get_text(id3frm); \ -+ if (_tid == ID3_COMM) \ -+ txt = id3_get_comm(id3frm); \ -+ else if (id3frm->fr_desc->fd_idstr[0] == 'W') \ -+ txt = id3_get_url(id3frm); \ -+ else \ -+ txt = _tid == ID3_TCON ? id3_get_content(id3frm) \ -+ : id3_get_text(id3frm); \ - if(txt) \ - { \ - tlen = strlen(txt); \ -@@ -644,6 +649,10 @@ - ID3_SET_NUM (ID3_TRCK, track_number); - ID3_SET (ID3_COMM, comment); - ID3_SET (ID3_TCON, genre); -+ ID3_SET (ID3_TCOM, composer); -+ ID3_SET (ID3_TOPE, orig_artist); -+ ID3_SET (ID3_WCOM, url); -+ ID3_SET (ID3_TENC, encoded_by); - } - - /* -diff -Naur xmms-1.2.9-orig/Input/mpg123/mpg123.h xmms-1.2.9/Input/mpg123/mpg123.h ---- xmms-1.2.9-orig/Input/mpg123/mpg123.h Thu Jan 29 06:43:24 2004 -+++ xmms-1.2.9/Input/mpg123/mpg123.h Thu Jan 29 05:20:31 2004 -@@ -78,6 +78,10 @@ - char genre[256]; - int year; - int track_number; -+ char composer[1024]; -+ char orig_artist[1024]; -+ char url[1024]; -+ char encoded_by[1024]; - }; - - typedef struct diff --git a/abs/extra/xmms/xmms-1.2.10-fonts.patch b/abs/extra/xmms/xmms-1.2.10-fonts.patch new file mode 100644 index 0000000..87cd9a8 --- /dev/null +++ b/abs/extra/xmms/xmms-1.2.10-fonts.patch @@ -0,0 +1,24 @@ +--- xmms-1.2.10/xmms/main.c.fonts 2004-08-10 22:16:06.000000000 +0200 ++++ xmms-1.2.10/xmms/main.c 2004-08-12 11:49:17.905598843 +0200 +@@ -351,7 +351,8 @@ + cfg.no_playlist_advance = FALSE; + cfg.smooth_title_scroll = TRUE; + cfg.random_skin_on_play = FALSE; +- cfg.mainwin_use_xfont = FALSE; ++ cfg.mainwin_use_xfont = TRUE; ++ cfg.use_fontsets = TRUE; + cfg.use_pl_metadata = TRUE; + + cfg.playlist_x = 295; +@@ -499,9 +500,9 @@ + cfg.mainwin_font = NULL; + } + if (cfg.playlist_font == NULL) +- cfg.playlist_font = g_strdup("-adobe-helvetica-bold-r-*-*-10-*"); ++ cfg.playlist_font = g_strdup("-*-helvetica-bold-r-*-*-10-*,*"); + if (cfg.mainwin_font == NULL) +- cfg.mainwin_font = g_strdup("-adobe-helvetica-medium-r-*-*-8-*"); ++ cfg.mainwin_font = g_strdup("-*-helvetica-medium-r-*-*-8-*,*"); + if (cfg.gentitle_format == NULL) + cfg.gentitle_format = g_strdup("%p - %t"); + if (cfg.outputplugin == NULL) diff --git a/abs/extra/xmms/xmms-1.2.10-recode-id3.patch b/abs/extra/xmms/xmms-1.2.10-recode-id3.patch new file mode 100644 index 0000000..6bd4ecf --- /dev/null +++ b/abs/extra/xmms/xmms-1.2.10-recode-id3.patch @@ -0,0 +1,11 @@ +--- xmms/playlist.c.orig 2005-03-05 17:26:11.685992552 +0200 ++++ xmms/playlist.c 2005-03-05 17:28:01.524294592 +0200 +@@ -1341,7 +1341,7 @@ + + filename = g_strdup(entry->filename); + +- if (entry->title == NULL && entry->length == -1) ++ if (entry->title == NULL) + { + if (playlist_get_info_entry(entry)&&(entry->title)) { + title = xmms_charset_recode_id3(entry->title,0,NULL); diff --git a/abs/extra/xmms/xmms-1.2.11-3dse.patch b/abs/extra/xmms/xmms-1.2.11-3dse.patch new file mode 100644 index 0000000..099bf23 --- /dev/null +++ b/abs/extra/xmms/xmms-1.2.11-3dse.patch @@ -0,0 +1,503 @@ +--- xmms-1.2.11/Output/OSS/OSS.h.3dse 2003-06-11 20:44:17.000000000 +0200 ++++ xmms-1.2.11/Output/OSS/OSS.h 2007-11-18 20:51:57.000000000 +0100 +@@ -48,6 +48,11 @@ + # define IS_BIG_ENDIAN FALSE + #endif + ++#define AWE_3DSE 0x90 ++#define MIXER_BASE_DEFAULT 0x220 ++#define MIXER_REG_OFFSET 4 ++#define MIXER_DATA_OFFSET 5 ++ + extern OutputPlugin op; + + typedef struct +@@ -59,6 +64,8 @@ typedef struct + gboolean use_master; + gboolean use_alt_audio_device, use_alt_mixer_device; + gchar *alt_audio_device, *alt_mixer_device; ++ gint stereo; ++ gboolean hardware_access; + } + OSSConfig; + +@@ -82,6 +89,12 @@ int oss_get_output_time(void); + int oss_get_written_time(void); + void oss_set_audio_params(void); + ++int oss_set_3dse(int stat); ++int oss_get_3dse(void); ++void oss_hw_set_3dse(int stat); ++int oss_hw_get_3dse(void); ++int initHardwareAccess (); ++ + void oss_free_convert_buffer(void); + int (*oss_get_convert_func(int output, int input))(void **, int); + int (*oss_get_stereo_convert_func(int output, int input))(void **, int, int); +--- xmms-1.2.11/Output/OSS/configure.c.3dse 2005-05-15 02:01:20.000000000 +0200 ++++ xmms-1.2.11/Output/OSS/configure.c 2007-11-18 20:51:57.000000000 +0100 +@@ -24,6 +24,10 @@ static GtkWidget *mixer_usemaster_check, + static GtkWidget *adevice_use_alt_check, *audio_alt_device_entry; + static GtkWidget *mdevice_use_alt_check, *mixer_alt_device_entry; + static gint audio_device, mixer_device; ++static GtkWidget *stereo_check_button, *stereo_frame, *stereo_box; ++static GtkWidget *stereo_label, *stereo_align_button, *stereo_align_label; ++static GtkWidget *save3dse_check_button, *stereo_table, *hw_check_button; ++ + + static void configure_win_ok_cb(GtkWidget * w, gpointer data) + { +@@ -69,6 +73,8 @@ static void configure_win_ok_cb(GtkWidge + xmms_cfg_write_string(cfgfile, "OSS", "alt_audio_device", oss_cfg.alt_audio_device); + xmms_cfg_write_boolean(cfgfile, "OSS", "use_alt_mixer_device", oss_cfg.use_alt_mixer_device); + xmms_cfg_write_string(cfgfile, "OSS", "alt_mixer_device", oss_cfg.alt_mixer_device); ++ xmms_cfg_write_int(cfgfile, "OSS", "stereo", oss_cfg.stereo); ++ xmms_cfg_write_boolean(cfgfile, "OSS", "hardware", oss_cfg.hardware_access); + xmms_cfg_write_default_file(cfgfile); + xmms_cfg_free(cfgfile); + +@@ -85,6 +91,98 @@ static void configure_win_mixer_dev_cb(G + mixer_device = device; + } + ++static void stereo_check_button_cb(GtkWidget * widget, gpointer data) ++{ ++ if (GTK_TOGGLE_BUTTON(widget)->active) ++ { ++ if (oss_cfg.stereo != -1) ++ oss_cfg.stereo = 1; ++ if (oss_cfg.hardware_access) ++ oss_hw_set_3dse(1); ++ else ++ oss_set_3dse(1); ++ } ++ else ++ { ++ if (oss_cfg.stereo != -1) ++ oss_cfg.stereo = 0; ++ if (oss_cfg.hardware_access) ++ oss_hw_set_3dse(0); ++ else ++ oss_set_3dse(0); ++ } ++} ++ ++static void save3dse_check_button_cb(GtkWidget * widget, gpointer data) ++{ ++ if (GTK_TOGGLE_BUTTON(widget)->active) ++ { ++ if (GTK_TOGGLE_BUTTON(data)->active) ++ oss_cfg.stereo = 1; ++ else ++ oss_cfg.stereo = 0; ++ } ++ else ++ { ++ oss_cfg.stereo = -1; ++ } ++} ++ ++void warning_dialog(void) ++{ ++ GtkWidget *dialog_window, *button, *label; ++ dialog_window = gtk_dialog_new(); ++ gtk_window_set_title(GTK_WINDOW(dialog_window), ++ "WARNING: DIRECT ACCESS"); ++ gtk_window_set_policy(GTK_WINDOW(dialog_window), FALSE, FALSE, TRUE); ++ gtk_window_set_position(GTK_WINDOW(dialog_window), GTK_WIN_POS_MOUSE); ++ button = gtk_button_new_with_label("Dismiss"); ++ gtk_signal_connect_object(GTK_OBJECT(button), "clicked", ++ GTK_SIGNAL_FUNC(gtk_widget_destroy), (gpointer)dialog_window); ++ gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog_window)->action_area), ++ button, TRUE, FALSE, 0); ++ gtk_widget_show(button); ++ label = gtk_label_new( ++ "Direct hardware access can cause damage to your sound card.\n" ++ "Only use this option when you are using OSS drivers that\n" ++ "doesn't support the SND_MIXER_3DSE ioctl.\n" ++ "USE THIS OPTION AT YOUR OWN RISK !!!\n" ++ "You can use the environment variable \"BLASTER\" to manual\n" ++ "set the port of the mixer of your sound card. Only use this\n" ++ "option when you really know the mixer address. The default\n" ++ "value is 0x220. Example:\n" ++ " BLASTER=M230 ; export BLASTER\n" ++ "SETTING THE WRONG BLASTER ENVIRONMENT CAN\n" ++ "CAUSE YOUR SYSTEM TO CRASH AND CAN CAUSE\n" ++ "PERMANENT DAMAGE !!!"); ++ gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT); ++ gtk_misc_set_padding(GTK_MISC(label), 10, 10); ++ gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog_window)->vbox), ++ label, TRUE, TRUE, 0); ++ gtk_widget_show(label); ++ gtk_grab_add(dialog_window); ++ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); ++ gtk_widget_grab_default(button); ++ gtk_widget_show(dialog_window); ++} ++ ++static void hw_check_button_cb(GtkWidget * widget, gpointer data) ++{ ++ if (GTK_TOGGLE_BUTTON(widget)->active) ++ { ++ if (oss_cfg.hardware_access == 0) ++ warning_dialog(); ++ oss_cfg.hardware_access = 1; ++ initHardwareAccess (); ++ gtk_widget_set_sensitive(stereo_check_button, TRUE); ++ gtk_widget_set_sensitive(save3dse_check_button, TRUE); ++ } ++ else ++ { ++ oss_cfg.hardware_access = 0; ++ } ++} ++ + static void audio_device_toggled(GtkToggleButton * widget, gpointer data) + { + gboolean use_alt_audio_device = gtk_toggle_button_get_active(widget); +@@ -148,10 +246,38 @@ static void scan_devices(gchar * type, G + } + else + { +- item = gtk_menu_item_new_with_label(_("Default")); +- gtk_signal_connect(GTK_OBJECT(item), "activate", sigfunc, (gpointer) 0); +- gtk_widget_show(item); +- gtk_menu_append(GTK_MENU(menu), item); ++#ifdef SOUND_MIXER_INFO ++ int i, fd; ++ gchar *dev_name; ++ mixer_info info; ++ for (i = 0; i < 10; i++) { ++ if (i) ++ dev_name = g_strdup_printf ("/dev/mixer%d", i); ++ else ++ dev_name = g_strdup_printf ("/dev/mixer"); ++ if ((fd = open (dev_name, O_RDONLY)) != -1) { ++ if (ioctl (fd, SOUND_MIXER_INFO, &info) != -1) { ++ if (!index) ++ temp = g_strdup_printf ("Default (%s)", info.name); ++ else ++ temp = g_strdup_printf ("%s", info.name); ++ item = gtk_menu_item_new_with_label (temp); ++ g_free (temp); ++ gtk_signal_connect(GTK_OBJECT(item), "activate", sigfunc, (gpointer) index++); ++ gtk_widget_show(item); ++ gtk_menu_append(GTK_MENU(menu), item); ++ } ++ close(fd); ++ } ++ g_free(dev_name); ++ } ++#endif ++ if (!index) { ++ item = gtk_menu_item_new_with_label(_("Default")); ++ gtk_signal_connect(GTK_OBJECT(item), "activate", sigfunc, (gpointer) 0); ++ gtk_widget_show(item); ++ gtk_menu_append(GTK_MENU(menu), item); ++ } + } + gtk_option_menu_set_menu(GTK_OPTION_MENU(option_menu), menu); + } +@@ -300,6 +426,69 @@ void oss_configure(void) + gtk_table_attach_defaults(GTK_TABLE(mixer_table), mixer_usemaster_check, 0, 1, 0, 1); + gtk_notebook_append_page(GTK_NOTEBOOK(notebook), mixer_frame, gtk_label_new(_("Mixer"))); + ++ stereo_frame = gtk_frame_new("3D Stereo Enhancement:"); ++ gtk_container_set_border_width(GTK_CONTAINER(stereo_frame), 5); ++ gtk_widget_show(stereo_frame); ++ stereo_box = gtk_vbox_new(FALSE, 0); ++ gtk_widget_show(stereo_box); ++ stereo_table = gtk_table_new(3, 1, FALSE); ++ gtk_widget_show(stereo_table); ++ stereo_check_button = gtk_check_button_new_with_label("3D Stereo Enhancement"); ++ gtk_signal_connect(GTK_OBJECT(stereo_check_button), "toggled", ++ GTK_SIGNAL_FUNC(stereo_check_button_cb), NULL); ++ save3dse_check_button = gtk_check_button_new_with_label("Save 3DSE setting"); ++ gtk_signal_connect(GTK_OBJECT(save3dse_check_button), "toggled", ++ GTK_SIGNAL_FUNC(save3dse_check_button_cb), stereo_check_button); ++ hw_check_button = gtk_check_button_new_with_label("Direct hardware access"); ++ gtk_signal_connect(GTK_OBJECT(hw_check_button), "toggled", ++ GTK_SIGNAL_FUNC(hw_check_button_cb), hw_check_button); ++ if (oss_cfg.stereo != -1) ++ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(save3dse_check_button), TRUE); ++ if (oss_cfg.hardware_access) ++ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(hw_check_button), TRUE); ++ if (getuid () != 0 || geteuid () != 0) ++ gtk_widget_set_sensitive(hw_check_button, FALSE); ++ switch(oss_get_3dse()) ++ { ++ case 1: ++ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(stereo_check_button), TRUE); ++ case 0: ++ gtk_widget_set_sensitive(hw_check_button, FALSE); ++ oss_cfg.hardware_access = FALSE; ++ break; ++ case -1: ++ if (!oss_cfg.hardware_access) ++ { ++ gtk_widget_set_sensitive(stereo_check_button, FALSE); ++ gtk_widget_set_sensitive(save3dse_check_button, FALSE); ++ } ++ else ++ if(oss_hw_get_3dse()) ++ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(stereo_check_button), TRUE); ++ break; ++ } ++ gtk_table_attach_defaults(GTK_TABLE(stereo_table), stereo_check_button, 0, 1, 0, 1); ++ gtk_widget_show(stereo_check_button); ++ gtk_table_attach_defaults(GTK_TABLE(stereo_table), save3dse_check_button, 0, 1, 1, 2); ++ gtk_widget_show(save3dse_check_button); ++ gtk_table_attach_defaults(GTK_TABLE(stereo_table), hw_check_button, 0, 1, 2, 3); ++ gtk_widget_show(hw_check_button); ++ stereo_align_button = gtk_alignment_new(0.2, 0.5, 0, 0); ++ gtk_container_add(GTK_CONTAINER(stereo_align_button), stereo_table); ++ gtk_widget_show(stereo_align_button); ++ stereo_label = gtk_label_new("Please note that not all sound cards support this feature.\n" ++ "Supported: SoundBlaster 16, ViBRA, AWE32/64."); ++ gtk_label_set_justify(GTK_LABEL(stereo_label), GTK_JUSTIFY_LEFT); ++ gtk_misc_set_padding(GTK_MISC(stereo_label), 5, 5); ++ gtk_widget_show(stereo_label); ++ stereo_align_label = gtk_alignment_new(0, 0, 0, 0); ++ gtk_container_add(GTK_CONTAINER(stereo_align_label), stereo_label); ++ gtk_widget_show(stereo_align_label); ++ gtk_box_pack_end(GTK_BOX(stereo_box), stereo_align_label, FALSE, FALSE, 0); ++ gtk_box_pack_end(GTK_BOX(stereo_box), stereo_align_button, TRUE, FALSE, 0); ++ gtk_container_add(GTK_CONTAINER(stereo_frame), stereo_box); ++ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), stereo_frame, gtk_label_new("3DSE")); ++ + bbox = gtk_hbutton_box_new(); + gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END); + gtk_button_box_set_spacing(GTK_BUTTON_BOX(bbox), 5); +@@ -317,4 +506,5 @@ void oss_configure(void) + gtk_box_pack_start(GTK_BOX(bbox), cancel, TRUE, TRUE, 0); + + gtk_widget_show_all(configure_win); ++ gtk_notebook_set_page(GTK_NOTEBOOK(notebook), 0); + } +--- xmms-1.2.11/Output/OSS/init.c.3dse 2001-03-08 06:49:47.000000000 +0100 ++++ xmms-1.2.11/Output/OSS/init.c 2007-11-18 20:51:57.000000000 +0100 +@@ -33,6 +33,8 @@ void oss_init(void) + oss_cfg.use_alt_audio_device = FALSE; + oss_cfg.alt_audio_device = NULL; + oss_cfg.use_master=0; ++ oss_cfg.stereo = -1; /* = 3dse setting not saved */ ++ oss_cfg.hardware_access = FALSE; + + if ((cfgfile = xmms_cfg_open_default_file())) + { +@@ -45,6 +47,32 @@ void oss_init(void) + xmms_cfg_read_string(cfgfile, "OSS", "alt_audio_device", &oss_cfg.alt_audio_device); + xmms_cfg_read_boolean(cfgfile, "OSS", "use_alt_mixer_device", &oss_cfg.use_alt_mixer_device); + xmms_cfg_read_string(cfgfile, "OSS", "alt_mixer_device", &oss_cfg.alt_mixer_device); ++ xmms_cfg_read_int(cfgfile, "OSS", "stereo", &oss_cfg.stereo); ++ xmms_cfg_read_boolean(cfgfile, "OSS", "hardware", &oss_cfg.hardware_access); + xmms_cfg_free(cfgfile); + } ++ if (oss_cfg.hardware_access) ++ if (initHardwareAccess() == -1) ++ oss_cfg.hardware_access = FALSE; ++ ++ if (oss_cfg.hardware_access) ++ switch(oss_cfg.stereo) ++ { ++ case 0: ++ oss_hw_set_3dse(0); ++ break; ++ case 1: ++ oss_hw_set_3dse(1); ++ break; ++ } ++ else ++ switch(oss_cfg.stereo) ++ { ++ case 0: ++ oss_set_3dse(0); ++ break; ++ case 1: ++ oss_set_3dse(1); ++ break; ++ } + } +--- xmms-1.2.11/Output/OSS/mixer.c.3dse 2001-06-16 15:30:35.000000000 +0200 ++++ xmms-1.2.11/Output/OSS/mixer.c 2007-11-18 20:51:57.000000000 +0100 +@@ -32,6 +32,10 @@ static char* get_mixer_device(void) + return name; + } + ++#include <sys/io.h> ++ ++static int mixer_reg = 0, mixer_data = 0; ++ + void oss_get_volume(int *l, int *r) + { + int fd, v, cmd, devs; +@@ -64,6 +68,156 @@ void oss_get_volume(int *l, int *r) + } + } + ++int oss_set_3dse(int stat) ++{ ++ int fd; ++ gchar *devname; ++ ++ if ((stat != 0) && (stat != 1)) ++ return -1; ++ ++ if (oss_cfg.mixer_device > 0) ++ devname = g_strdup_printf("/dev/mixer%d", oss_cfg.mixer_device); ++ else ++ devname = g_strdup("/dev/mixer"); ++ fd = open(devname, O_RDONLY); ++ g_free(devname); ++ ++ if (fd != -1) ++ { ++ if (ioctl(fd, SOUND_MIXER_3DSE, &stat) < 0) ++ { ++ close(fd); ++ return -1; ++ } ++ else ++ { ++ close(fd); ++ return stat; ++ } ++ } ++ return -1; ++} ++ ++int oss_get_3dse(void) ++{ ++ int fd, test_stat; ++ gchar *devname; ++ ++ if (oss_cfg.mixer_device > 0) ++ devname = g_strdup_printf("/dev/mixer%d", oss_cfg.mixer_device); ++ else ++ devname = g_strdup("/dev/mixer"); ++ fd = open(devname, O_RDONLY); ++ g_free(devname); ++ ++ if (fd != -1) ++ { ++ test_stat = 2; /* code 2 will request status */ ++ if (ioctl(fd, SOUND_MIXER_3DSE, &test_stat) < 0) ++ { ++ close(fd); ++ return -1; ++ } ++ else ++ { ++ close(fd); ++ return test_stat; ++ } ++ } ++ return -1; ++} ++ ++static void check_legal_mixer () ++{ ++ if (!mixer_reg || !mixer_data) ++ { ++ fprintf(stderr, "Illegal mixer settings...\n"); ++ exit(1); ++ } ++} ++ ++void oss_hw_set_3dse(int stat) ++{ ++ unsigned char b; ++ check_legal_mixer (); ++ switch(stat) ++ { ++ case 1: ++ outb(AWE_3DSE, mixer_reg); ++ b = inb(mixer_data); ++ b |= 1; ++ outb(b, mixer_data); ++ break; ++ case 0: ++ outb(AWE_3DSE, mixer_reg); ++ b = inb(mixer_data); ++ b &= 0xff - 1; ++ outb(b, mixer_data); ++ break; ++ } ++} ++ ++int oss_hw_get_3dse(void) ++{ ++ unsigned char b; ++ check_legal_mixer (); ++ outb(AWE_3DSE, mixer_reg); ++ b = inb(mixer_data); ++ return (b & 1); ++} ++ ++int initHardwareAccess () ++{ ++ char *blasterEnv, *Aptr, *Mptr; ++ int tmp, mixer_base = 0; ++ ++ if ((blasterEnv = getenv ("BLASTER"))) ++ { ++ Aptr = blasterEnv; ++ while ((Aptr = strchr(Aptr, 'A'))) ++ if ((tmp = strtol(++Aptr, &Aptr, 16))) ++ mixer_base = tmp; ++ Mptr = blasterEnv; ++ while ((Mptr = strchr(Mptr, 'M'))) ++ if ((tmp = strtol(++Mptr, &Mptr, 16))) ++ mixer_base = tmp; ++ } ++ if (!mixer_base) ++ { ++ mixer_base = MIXER_BASE_DEFAULT; ++ } ++ else ++ { ++ switch (mixer_base) ++ { ++ case 0x210: ++ case 0x220: ++ case 0x230: ++ case 0x240: ++ case 0x250: ++ case 0x260: ++ case 0x280: ++ break; ++ default: ++ fprintf (stderr, "Illegal mixer base.\n"); ++ exit (1); ++ } ++ } ++ mixer_reg = mixer_base + MIXER_REG_OFFSET; ++ mixer_data = mixer_base + MIXER_DATA_OFFSET; ++ if (getuid () == 0 && geteuid () == 0) ++ { ++ ioperm (mixer_reg, 1, 1); ++ ioperm (mixer_data, 1, 1); ++ return 0; ++ } ++ else ++ { ++ return -1; ++ } ++} ++ + void oss_set_volume(int l, int r) + { + int fd, v, cmd, devs; +--- xmms-1.2.11/Output/OSS/soundcard.h.3dse 2003-06-11 23:01:12.000000000 +0200 ++++ xmms-1.2.11/Output/OSS/soundcard.h 2007-11-18 20:51:57.000000000 +0100 +@@ -1151,8 +1151,8 @@ typedef unsigned char mixer_record[128]; + /* + * Two ioctls for special souncard function (OSS/Free only) + */ +-#define SOUND_MIXER_AGC _SIOWR('M', 103, int) +-#define SOUND_MIXER_3DSE _SIOWR('M', 104, int) ++#define SOUND_MIXER_AGC __SIOWR('M', 103, int) ++#define SOUND_MIXER_3DSE __SIOWR('M', 104, int) + /* + * The SOUND_MIXER_PRIVATE# commands can be redefined by low level drivers. + * These features can be used when accessing device specific features. diff --git a/abs/extra/xmms/xmms-1.2.11-CVE-2007-0653.0654.patch b/abs/extra/xmms/xmms-1.2.11-CVE-2007-0653.0654.patch new file mode 100644 index 0000000..5fa9772 --- /dev/null +++ b/abs/extra/xmms/xmms-1.2.11-CVE-2007-0653.0654.patch @@ -0,0 +1,43 @@ +--- xmms-1.2.11/xmms/bmp.c.CVE-2007-0653.0654 2006-07-16 15:40:04.000000000 +0200 ++++ xmms-1.2.11/xmms/bmp.c 2007-11-18 21:23:11.000000000 +0100 +@@ -19,6 +19,12 @@ + */ + #include "xmms.h" + ++#if HAVE_STDINT_H ++#include <stdint.h> ++#elif !defined(UINT32_MAX) ++#define UINT32_MAX 0xffffffffU ++#endif ++ + struct rgb_quad + { + guchar rgbBlue; +@@ -183,7 +189,7 @@ GdkPixmap *read_bmp(gchar * filename) + } + else if (bitcount != 24 && bitcount != 16 && bitcount != 32) + { +- gint ncols, i; ++ guint32 ncols, i; + + ncols = offset - headSize - 14; + if (headSize == 12) +@@ -201,9 +207,17 @@ GdkPixmap *read_bmp(gchar * filename) + } + } + fseek(file, offset, SEEK_SET); ++ /* verify buffer size */ ++ if (!h || !w || ++ w > (((UINT32_MAX - 3) / 3) / h) || ++ h > (((UINT32_MAX - 3) / 3) / w)) { ++ g_warning("read_bmp(): width(%u)*height(%u) too large", w, h); ++ fclose(file); ++ return NULL; ++ } ++ data = g_malloc0((w * 3 * h) + 3); /* +3 is just for safety */ + buffer = g_malloc(imgsize); + fread(buffer, imgsize, 1, file); +- data = g_malloc0((w * 3 * h) + 3); /* +3 is just for safety */ + + if (bitcount == 1) + read_1b_rgb(buffer, imgsize, data, w, h, rgb_quads); diff --git a/abs/extra/xmms/xmms-1.2.11-fix-http-title-mpg123.patch b/abs/extra/xmms/xmms-1.2.11-fix-http-title-mpg123.patch new file mode 100644 index 0000000..55c06a7 --- /dev/null +++ b/abs/extra/xmms/xmms-1.2.11-fix-http-title-mpg123.patch @@ -0,0 +1,10 @@ +--- xmms-1.2.11/Input/mpg123/common.c~ 2007-11-18 20:37:41.000000000 +0100 ++++ xmms-1.2.11/Input/mpg123/common.c 2007-11-18 20:40:10.000000000 +0100 +@@ -274,6 +274,7 @@ static gboolean read_id3v2_tag(unsigned + char *songname = mpg123_title; + mpg123_title = + mpg123_format_song_title(tag, mpg123_filename); ++ if (filept) + mpg123_ip.set_info(mpg123_title, mpg123_length, + mpg123_bitrate * 1000, + mpg123_frequency, mpg123_stereo); diff --git a/abs/extra/xmms/xmms.16.png b/abs/extra/xmms/xmms.16.png Binary files differnew file mode 100644 index 0000000..c7f1a76 --- /dev/null +++ b/abs/extra/xmms/xmms.16.png diff --git a/abs/extra/xmms/xmms.32.png b/abs/extra/xmms/xmms.32.png Binary files differnew file mode 100644 index 0000000..1800ea5 --- /dev/null +++ b/abs/extra/xmms/xmms.32.png diff --git a/abs/extra/xmms/xmms.48.png b/abs/extra/xmms/xmms.48.png Binary files differnew file mode 100644 index 0000000..999cb83 --- /dev/null +++ b/abs/extra/xmms/xmms.48.png diff --git a/abs/extra/xmms/xmms.install b/abs/extra/xmms/xmms.install new file mode 100644 index 0000000..e111ef9 --- /dev/null +++ b/abs/extra/xmms/xmms.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/abs/extra/xscreensaver/PKGBUILD b/abs/extra/xscreensaver/PKGBUILD index d36806d..9393774 100644 --- a/abs/extra/xscreensaver/PKGBUILD +++ b/abs/extra/xscreensaver/PKGBUILD @@ -1,30 +1,35 @@ -# $Id: PKGBUILD 91276 2010-09-26 05:59:32Z eric $ -# Maintainer: Eric Belanger <eric@archlinux.org> +# $Id: PKGBUILD 163563 2012-07-16 01:29:27Z eric $ +# Maintainer: Eric BĂ©langer <eric@archlinux.org> pkgname=xscreensaver -pkgver=5.12 -pkgrel=1 +pkgver=5.18 +pkgrel=3 pkgdesc="Screen saver and locker for the X Window System" arch=('i686' 'x86_64') url="http://www.jwz.org/xscreensaver/" license=('BSD') -depends=('libxxf86vm' 'libglade' 'mesa' 'pam' 'xorg-res-utils') -makedepends=('bc') +depends=('libxxf86vm' 'libglade' 'mesa' 'pam' 'xorg-appres' 'libxmu' \ + 'perl-libwww' 'perl-http-message') +makedepends=('bc' 'libxpm' ) +optdepends=('gdm: for login manager support') backup=('etc/pam.d/xscreensaver') source=(http://www.jwz.org/xscreensaver/${pkgname}-${pkgver}.tar.gz \ - add-electricsheep.diff xscreensaver.pam LICENSE) -md5sums=('0345c1acb9280729de05c5ca44b401e3' 'f82524626ed8a6832cd279e0548a9b46'\ - '367a3538f54db71f108b34cfa31088ac' '5e7f3f2a63d20a484742f5b4cb5d572c') -sha1sums=('7252540b1b1853459a56453714c0974de26fa4c5' '65c2933380267475f2c4560bc22f4350393b00ce'\ - '106635aa1aae51d6f0668b1853f6c49a4fe9d3d8' '4209ea586b204fd1d81c382a0522c654f9fd9134') + add-electricsheep.diff xscreensaver.pam LICENSE + xscreensaver-5.18-sonar-compile.patch) +sha1sums=('a9f66d3f5094d2c1ef46c1209730e7cb653f33a7' + '677496218b81a42d90bee400026e94dd87fb8ffb' + '106635aa1aae51d6f0668b1853f6c49a4fe9d3d8' + '4209ea586b204fd1d81c382a0522c654f9fd9134' + '95e1d74e0e5ff1a6600c8a9cd0a12d392b24a7b1') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np0 -i "${srcdir}/add-electricsheep.diff" + patch -p0 -i "${srcdir}/add-electricsheep.diff" + patch -p1 -i "${srcdir}/xscreensaver-5.18-sonar-compile.patch" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --libexecdir=/usr/lib --with-x-app-defaults=/usr/share/X11/app-defaults \ - --with-pam --without-motif --with-gtk --with-gl \ - --without-gle --with-xpm --with-pixbuf --with-jpeg + --with-pam --with-login-manager --with-gtk --with-gl \ + --without-gle --with-pixbuf --with-jpeg make } diff --git a/abs/extra/xscreensaver/add-electricsheep.diff b/abs/extra/xscreensaver/add-electricsheep.diff index 964de64..18b4dea 100644 --- a/abs/extra/xscreensaver/add-electricsheep.diff +++ b/abs/extra/xscreensaver/add-electricsheep.diff @@ -1,11 +1,11 @@ --- driver/XScreenSaver.ad.in-orig 2009-10-17 02:19:06.000000000 -0400 +++ driver/XScreenSaver.ad.in 2009-10-17 02:21:16.000000000 -0400 @@ -347,7 +347,8 @@ - - lcdscrub -root \n\ - @GL_KLUDGE@ GL: photopile -root \n\ - @GL_KLUDGE@ GL: skytentacles -root \n\ --@GL_KLUDGE@ GL: rubikblocks -root \n -+@GL_KLUDGE@ GL: rubikblocks -root \n\ + @GL_KLUDGE@ GL: rubikblocks -root \n\ + @GL_KLUDGE@ GL: companioncube -root \n\ + @GL_KLUDGE@ GL: hilbert -root \n\ +-@GL_KLUDGE@ GL: tronbit -root \n ++@GL_KLUDGE@ GL: tronbit -root \n\ + electricsheep --root 1 \n diff --git a/abs/extra/xscreensaver/xscreensaver-5.18-sonar-compile.patch b/abs/extra/xscreensaver/xscreensaver-5.18-sonar-compile.patch new file mode 100644 index 0000000..e0adde0 --- /dev/null +++ b/abs/extra/xscreensaver/xscreensaver-5.18-sonar-compile.patch @@ -0,0 +1,12 @@ +--- xscreensaver-5.18/hacks/glx/sonar-icmp.c.compile 2012-07-03 04:18:53.000000000 +0900 ++++ xscreensaver-5.18/hacks/glx/sonar-icmp.c 2012-07-04 09:17:12.580996448 +0900 +@@ -591,7 +591,9 @@ + fprintf (stderr, "%s: if: %4s: %s\n", progname, + ifa->ifa_name, + (ifa->ifa_addr->sa_family == AF_UNIX ? "local" : ++#ifdef AF_LINK + ifa->ifa_addr->sa_family == AF_LINK ? "link" : ++#endif + ifa->ifa_addr->sa_family == AF_INET6 ? "ipv6" : + "other")); + continue; diff --git a/abs/extra/xscreensaver/xscreensavers b/abs/extra/xscreensaver/xscreensavers index af7a6ea..b3d17e0 100644 --- a/abs/extra/xscreensaver/xscreensavers +++ b/abs/extra/xscreensaver/xscreensavers @@ -29,6 +29,7 @@ ccurve celtic circuit cloudlife +companioncube compass coral crackberg @@ -85,6 +86,7 @@ greynetic halftone halo helix +hilbert hopalong hypertorus hypnowheel @@ -177,6 +179,7 @@ thornbird timetunnel topblock triangle +tronbit truchet twang vermiculate diff --git a/abs/extra/xulrunner/PKGBUILD b/abs/extra/xulrunner/PKGBUILD deleted file mode 100644 index 36ed257..0000000 --- a/abs/extra/xulrunner/PKGBUILD +++ /dev/null @@ -1,69 +0,0 @@ -# $Id: PKGBUILD 97209 2010-10-27 20:57:31Z ibiru $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: Alexander Baldeck <alexander@archlinux.org> -pkgname=xulrunner -pkgver=1.9.2.12 -_ffoxver=3.6.12 -pkgrel=1 -pkgdesc="Mozilla Runtime Environment" -arch=('i686' 'x86_64') -license=('MPL' 'GPL' 'LGPL') -depends=('gtk2>=2.22.0' 'gcc-libs' 'libidl2>=0.8.13' 'mozilla-common' 'nss>=3.12.8' 'libxt' 'hunspell>=1.2.8' 'startup-notification>=0.10' 'mime-types' 'dbus-glib>=0.86' 'alsa-lib>=1.0.23' 'libevent') -makedepends=('zip' 'pkg-config' 'diffutils' 'libgnomeui' 'python2' 'wireless_tools' 'autoconf2.13') -optdepends=('libgnomeui: GNOME integration and MIME handling' - 'wireless_tools: Location aware browsing') -url="http://wiki.mozilla.org/XUL:Xul_Runner" -source=(http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${_ffoxver}/source/firefox-${_ffoxver}.source.tar.bz2 - mozconfig - mozilla-pkgconfig.patch - fix-mozilla-launcher.patch - xulrunner-version.patch - xulrunner-png14.patch - enable-x86_64-tracemonkey.patch - python2.7.patch) -md5sums=('80f4d83f23a7c45fc3f1904964ea2a5a' - 'e195cdcd51a8fb6fc77f0f653ff1e582' - '2d2d7143a4e0bfe71149a51f8dbbab2f' - '63eee2d1da3b43c9d604f2253f242f40' - '371303c5bdc4fa0d955d14521b93b69d' - '3bd0566180ad2daa32743b3ce58b2095' - 'cbd938cd1fb8210cd8a2c41833489af9' - 'ab3dc9aecae7f08b9492fb3c00a5fd28') - -build() { - cd "${srcdir}/mozilla-1.9.2" - cp "${srcdir}/mozconfig" .mozconfig - - #fix libdir/sdkdir - fedora - patch -Np1 -i "${srcdir}/mozilla-pkgconfig.patch" - - #Fix stub launcher - archlinux - patch -Np0 -i "${srcdir}/fix-mozilla-launcher.patch" - - #Force installation to the same path for every version - patch -Np1 -i "${srcdir}/xulrunner-version.patch" - - #Fix compile with libpng 1.4 - patch -Np0 -i "${srcdir}/xulrunner-png14.patch" - - #Tracemonkey for x86_64 - patch -Np0 -i "${srcdir}/enable-x86_64-tracemonkey.patch" - - #python2.7 - patch -Np0 -i "${srcdir}/python2.7.patch" - - unset CFLAGS - unset CXXFLAGS - - make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS" - make -j1 DESTDIR="${pkgdir}" install - - #Remove included dictionaries, add symlink to system myspell path. - #Note: this will cause file conflicts when users have installed dictionaries in the old location - rm -rf "${pkgdir}/usr/lib/xulrunner-1.9.2/dictionaries" - ln -sf /usr/share/myspell "${pkgdir}/usr/lib/xulrunner-1.9.2/dictionaries" - - # add xulrunner library path to ld.so.conf - install -d ${pkgdir}/etc/ld.so.conf.d - echo "/usr/lib/xulrunner-1.9.2" > ${pkgdir}/etc/ld.so.conf.d/xulrunner.conf -} diff --git a/abs/extra/xulrunner/enable-x86_64-tracemonkey.patch b/abs/extra/xulrunner/enable-x86_64-tracemonkey.patch deleted file mode 100644 index b72ad76..0000000 --- a/abs/extra/xulrunner/enable-x86_64-tracemonkey.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- js/src/configure.in.old 2009-11-08 19:50:54.299642792 -0500 -+++ js/src/configure.in 2009-11-08 19:57:49.235621814 -0500 -@@ -2465,6 +2465,10 @@ - ENABLE_JIT=1 - NANOJIT_ARCH=i386 - ;; -+x86_64*-*) -+ ENABLE_JIT=1 -+ NANOJIT_ARCH=X64 -+ ;; - arm*-*) - ENABLE_JIT=1 - NANOJIT_ARCH=ARM -@@ -2488,7 +2492,10 @@ - i?86-*) - AC_DEFINE(AVMPLUS_IA32) - ;; -- -+x86_64*-*) -+ AC_DEFINE(AVMPLUS_AMD64) -+ AC_DEFINE(AVMPLUS_64BIT) -+ ;; - arm*-*) - AC_DEFINE(AVMPLUS_ARM) - ;; diff --git a/abs/extra/xulrunner/fix-mozilla-launcher.patch b/abs/extra/xulrunner/fix-mozilla-launcher.patch deleted file mode 100644 index de64e4c..0000000 --- a/abs/extra/xulrunner/fix-mozilla-launcher.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- xulrunner/stub/nsXULStub.cpp 2008-07-17 21:43:11.000000000 +0200 -+++ xulrunner/stub/nsXULStub.cpp 2008-07-17 21:47:04.000000000 +0200 -@@ -208,8 +208,10 @@ - // 3) give up - - struct stat fileStat; -+ char *testp; - -- if (!realpath(argv[0], iniPath) || stat(iniPath, &fileStat)) { -+ testp = realpath(argv[0], iniPath); -+ if (!(testp != NULL && stat(iniPath, &fileStat) == 0 && S_ISREG(fileStat.st_mode) && fileStat.st_mode & S_IXUSR) || (testp != NULL && stat(iniPath, &fileStat))) { - const char *path = getenv("PATH"); - if (!path) - return 1; -@@ -222,7 +224,7 @@ - char *token = strtok(pathdup, ":"); - while (token) { - sprintf(tmpPath, "%s/%s", token, argv[0]); -- if (realpath(tmpPath, iniPath) && stat(iniPath, &fileStat) == 0) { -+ if (realpath(tmpPath, iniPath) && stat(iniPath, &fileStat) == 0 && S_ISREG(fileStat.st_mode) && fileStat.st_mode & S_IXUSR) { - found = PR_TRUE; - break; - } diff --git a/abs/extra/xulrunner/mozconfig b/abs/extra/xulrunner/mozconfig deleted file mode 100644 index 2b23fc7..0000000 --- a/abs/extra/xulrunner/mozconfig +++ /dev/null @@ -1,36 +0,0 @@ -. $topsrcdir/xulrunner/config/mozconfig -ac_add_options --prefix=/usr -ac_add_options --libdir=/usr/lib -ac_add_options --with-system-nspr -ac_add_options --with-system-nss -ac_add_options --with-system-jpeg -ac_add_options --with-system-zlib -ac_add_options --with-system-bz2 -ac_add_options --with-system-png -ac_add_options --with-system-libevent -ac_add_options --enable-system-hunspell -#disabled: mozilla is broken with recent versions of sqlite -#ac_add_options --enable-system-sqlite -#disabled: mozilla is broken with cairo 1.10 -#ac_add_options --enable-system-cairo -ac_add_options --with-pthreads -ac_add_options --enable-strip -ac_add_options --disable-tests -ac_add_options --disable-mochitest -ac_add_options --disable-installer -ac_add_options --disable-debug -ac_add_options --enable-optimize -ac_add_options --enable-default-toolkit=cairo-gtk2 -ac_add_options --enable-pango -ac_add_options --enable-svg -ac_add_options --enable-canvas -ac_add_options --disable-javaxpcom -ac_add_options --disable-crashreporter -ac_add_options --enable-safe-browsing -ac_add_options --enable-startup-notification -ac_add_options --enable-extensions=default - -export BUILD_OFFICIAL=1 -export MOZILLA_OFFICIAL=1 -mk_add_options BUILD_OFFICIAL=1 -mk_add_options MOZILLA_OFFICIAL=1 diff --git a/abs/extra/xulrunner/mozilla-pkgconfig.patch b/abs/extra/xulrunner/mozilla-pkgconfig.patch deleted file mode 100644 index a42d2a3..0000000 --- a/abs/extra/xulrunner/mozilla-pkgconfig.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff -Nur mozilla-1.9.2.orig/xulrunner/installer/libxul-embedding.pc.in mozilla-1.9.2/xulrunner/installer/libxul-embedding.pc.in ---- mozilla-1.9.2.orig/xulrunner/installer/libxul-embedding.pc.in 2010-01-21 05:31:27.000000000 +0200 -+++ mozilla-1.9.2/xulrunner/installer/libxul-embedding.pc.in 2010-01-21 22:27:17.000000000 +0200 -@@ -6,5 +6,6 @@ - Name: libxul-embedding - Description: Static library for version-independent embedding of the Mozilla runtime - Version: %MOZILLA_VERSION% -+Requires: %NSPR_NAME% >= %NSPR_VERSION% - Libs: -L${sdkdir}/lib -lxpcomglue - Cflags: -DXPCOM_GLUE -I${includedir} %WCHAR_CFLAGS% -diff -Nur mozilla-1.9.2.orig/xulrunner/installer/libxul.pc.in mozilla-1.9.2/xulrunner/installer/libxul.pc.in ---- mozilla-1.9.2.orig/xulrunner/installer/libxul.pc.in 2010-01-21 05:31:27.000000000 +0200 -+++ mozilla-1.9.2/xulrunner/installer/libxul.pc.in 2010-01-21 22:27:56.000000000 +0200 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - idldir=%idldir% - -diff -Nur mozilla-1.9.2.orig/xulrunner/installer/Makefile.in mozilla-1.9.2/xulrunner/installer/Makefile.in ---- mozilla-1.9.2.orig/xulrunner/installer/Makefile.in 2010-01-21 05:31:27.000000000 +0200 -+++ mozilla-1.9.2/xulrunner/installer/Makefile.in 2010-01-21 22:25:04.000000000 +0200 -@@ -121,6 +121,7 @@ - -e "s|%includedir%|$(includedir)|" \ - -e "s|%idldir%|$(idldir)|" \ - -e "s|%sdkdir%|$(sdkdir)|" \ -+ -e "s|%libdir%|$(installdir)|" \ - -e "s|%MOZ_APP_NAME%|$(MOZ_APP_NAME)|" \ - -e "s|%MOZILLA_VERSION%|$(MOZ_APP_VERSION)|" \ - -e "s|%WCHAR_CFLAGS%|$(WCHAR_CFLAGS)|" \ -diff -Nur mozilla-1.9.2.orig/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in mozilla-1.9.2/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in ---- mozilla-1.9.2.orig/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2010-01-21 05:31:27.000000000 +0200 -+++ mozilla-1.9.2/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2010-01-21 22:28:15.000000000 +0200 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - - Name: mozilla-gtkembedmoz -diff -Nur mozilla-1.9.2.orig/xulrunner/installer/mozilla-gtkmozembed.pc.in mozilla-1.9.2/xulrunner/installer/mozilla-gtkmozembed.pc.in ---- mozilla-1.9.2.orig/xulrunner/installer/mozilla-gtkmozembed.pc.in 2010-01-21 05:31:27.000000000 +0200 -+++ mozilla-1.9.2/xulrunner/installer/mozilla-gtkmozembed.pc.in 2010-01-21 22:28:27.000000000 +0200 -@@ -1,5 +1,6 @@ - prefix=%prefix% - sdkdir=%sdkdir% -+libdir=%libdir% - includedir=%includedir% - - Name: mozilla-gtkembedmoz -diff -Nur mozilla-1.9.2.orig/xulrunner/installer/mozilla-js.pc.in mozilla-1.9.2/xulrunner/installer/mozilla-js.pc.in ---- mozilla-1.9.2.orig/xulrunner/installer/mozilla-js.pc.in 2010-01-21 05:31:27.000000000 +0200 -+++ mozilla-1.9.2/xulrunner/installer/mozilla-js.pc.in 2010-01-21 22:29:30.000000000 +0200 -@@ -7,4 +7,4 @@ - Version: %MOZILLA_VERSION% - Requires: %NSPR_NAME% >= %NSPR_VERSION% - Libs: -L${sdkdir}/lib -lmozjs --Cflags: -I${includedir} -DXP_UNIX -DJS_THREADSAFE -+Cflags: -I${includedir} -I${includedir}/js -DXP_UNIX -DJS_THREADSAFE -diff -Nur mozilla-1.9.2.orig/xulrunner/installer/mozilla-plugin.pc.in mozilla-1.9.2/xulrunner/installer/mozilla-plugin.pc.in ---- mozilla-1.9.2.orig/xulrunner/installer/mozilla-plugin.pc.in 2010-01-21 05:31:27.000000000 +0200 -+++ mozilla-1.9.2/xulrunner/installer/mozilla-plugin.pc.in 2010-01-21 22:29:58.000000000 +0200 -@@ -5,5 +5,5 @@ - Name: Mozilla Plug-In API - Description: Mozilla Plug-In API - Version: %MOZILLA_VERSION% --Cflags: -I${includedir}/stable -DXP_UNIX %ojidef% -+Cflags: -I${includedir} -DXP_UNIX %ojidef% - diff --git a/abs/extra/xulrunner/python2.7.patch b/abs/extra/xulrunner/python2.7.patch deleted file mode 100644 index 05a3e91..0000000 --- a/abs/extra/xulrunner/python2.7.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- configure.in 2010-10-12 10:44:37.000000000 -0700 -+++ configure.in~ 2010-10-19 09:51:49.660019364 -0700 -@@ -811,7 +811,7 @@ - AC_MSG_RESULT([yes]) - fi - --MOZ_PATH_PROGS(PYTHON, $PYTHON python2.5 python2.4 python) -+MOZ_PATH_PROGS(PYTHON, $PYTHON python2.7 python2.5 python2.4 python) - if test -z "$PYTHON"; then - AC_MSG_ERROR([python was not found in \$PATH]) - fi diff --git a/abs/extra/xulrunner/xulrunner-png14.patch b/abs/extra/xulrunner/xulrunner-png14.patch deleted file mode 100644 index f512416..0000000 --- a/abs/extra/xulrunner/xulrunner-png14.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- modules/libpr0n/encoders/png/nsPNGEncoder.cpp.orig 2010-01-17 00:15:53.979744638 +0100 -+++ modules/libpr0n/encoders/png/nsPNGEncoder.cpp 2010-01-17 00:16:07.855993411 +0100 -@@ -135,7 +135,7 @@ - - // initialize - mPNG = png_create_write_struct(PNG_LIBPNG_VER_STRING, -- png_voidp_NULL, -+ NULL, - ErrorCallback, - ErrorCallback); - if (! mPNG) diff --git a/abs/extra/xulrunner/xulrunner-version.patch b/abs/extra/xulrunner/xulrunner-version.patch deleted file mode 100644 index 418b7c7..0000000 --- a/abs/extra/xulrunner/xulrunner-version.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up mozilla/toolkit/mozapps/update/src/updater/module.ver mozilla/toolkit/mozapps/update/src/updater/module -diff -up mozilla/xulrunner/installer/Makefile.in.ver mozilla/xulrunner/installer/Makefile.in ---- mozilla/xulrunner/installer/Makefile.in.ver 2007-12-14 09:51:34.000000000 +0100 -+++ mozilla/xulrunner/installer/Makefile.in 2007-12-14 09:52:03.000000000 +0100 -@@ -44,6 +44,8 @@ VPATH = @srcdir@ - - include $(DEPTH)/config/autoconf.mk - -+MOZ_APP_VERSION="1.9.2" -+ - NO_PKG_FILES = \ - xulrunner-config \ - regchrome* \ diff --git a/abs/extra/zip/ChangeLog b/abs/extra/zip/ChangeLog deleted file mode 100644 index 29ec4d1..0000000 --- a/abs/extra/zip/ChangeLog +++ /dev/null @@ -1,5 +0,0 @@ - -2008-07-27 Douglas Soares de Andrade <douglas@archlinux.org> - - * Updating for i686: 3.0 - diff --git a/abs/extra/zip/PKGBUILD b/abs/extra/zip/PKGBUILD index 30cec8b..dca1103 100644 --- a/abs/extra/zip/PKGBUILD +++ b/abs/extra/zip/PKGBUILD @@ -1,32 +1,28 @@ -# $Id: PKGBUILD 6705 2008-07-27 14:04:19Z douglas $ -# Maintainer: dorphell <dorphell@archlinux.org> +# $Id: PKGBUILD 149604 2012-02-08 19:38:19Z pierre $ +# Maintainer: +# Contributor: dorphell <dorphell@archlinux.org> pkgname=zip pkgver=3.0 -pkgrel=1 +_pkgver=30 +pkgrel=3 pkgdesc="Creates PKZIP-compatible .zip files" -arch=(i686 x86_64) -url="http://www.info-zip.org/pub/infozip/Zip.html" -depends=('glibc') -makedepends=('unzip') -source=(ftp://ftp.info-zip.org/pub/infozip/src/zip30.zip - ftp://ftp.info-zip.org/pub/infozip/src/zcrypt.zip - zip-3.0-build.patch zip-3.0-no-crypt.patch - zip-3.0-exec-stack.patch zip-3.0-pic.patch - ) - - -md5sums=('e88492c8abd68fa9cfba72bc08757dba' - '0c969ba1661183b041a142945ed2710e') +arch=('i686' 'x86_64') +url="http://www.info-zip.org/Zip.html" +license=('BSD') +depends=('bzip2') +options=('!makeflags') +source=("ftp://ftp.info-zip.org/pub/infozip/src/${pkgname}${_pkgver}.zip") +md5sums=('e88492c8abd68fa9cfba72bc08757dba') build() { - cd $startdir/src/${pkgname}30 -# echo "A"| unzip ../zcrypt.zip - patch -p1 < $startdir/src/zip-3.0-build.patch - patch -p0 < $startdir/src/zip-3.0-no-crypt.patch || return 1 - patch -p1 < $startdir/src/zip-3.0-exec-stack.patch - patch -p0 < $startdir/src/zip-3.0-pic.patch + cd "${srcdir}/${pkgname}${_pkgver}" + make -f unix/Makefile LOCAL_ZIP="$CFLAGS" prefix=/usr generic_gcc +} - make -f unix/Makefile LOCAL_ZIP="$CFLAGS" prefix=/usr generic_gcc || return 1 - make -f unix/Makefile INSTALL=`which install` prefix=$startdir/pkg/usr install +package() { + cd "${srcdir}/${pkgname}${_pkgver}" + make -f unix/Makefile INSTALL=/bin/install prefix=${pkgdir}/usr \ + MANDIR=${pkgdir}/usr/share/man/man1 install + install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/$pkgname/LICENSE } diff --git a/abs/extra/zip/zip-3.0-build.patch b/abs/extra/zip/zip-3.0-build.patch deleted file mode 100644 index 880b49e..0000000 --- a/abs/extra/zip/zip-3.0-build.patch +++ /dev/null @@ -1,34 +0,0 @@ ---- zip/unix/configure -+++ zip/unix/configure -@@ -18,7 +18,7 @@ - - CC=${1-cc} - CFLAGS=${2-"-I. -DUNIX"} --LFLAGS1='' -+LFLAGS1="${LDFLAGS}" - LFLAGS2='' - LN="ln -s" - -@@ -118,7 +118,7 @@ _EOF_ - fi - - # optimization flags --if test -n "${CFLAGS_OPT}"; then -+if false; then - CFLAGS="${CFLAGS} ${CFLAGS_OPT}" - CFLAGS_BZ="${CFLAGS_BZ} ${CFLAGS_OPT}" - fi -@@ -220,13 +220,6 @@ fi - echo Check for the C preprocessor - # on SVR4, cc -E does not produce correct assembler files. Need /lib/cpp. - CPP="${CC} -E" --# solaris as(1) needs -P, maybe others as well ? --[ -f /usr/ccs/lib/cpp ] && CPP="/usr/ccs/lib/cpp -P" --[ -f /usr/lib/cpp ] && CPP=/usr/lib/cpp --[ -f /lib/cpp ] && CPP=/lib/cpp --[ -f /usr/bin/cpp ] && CPP=/usr/bin/cpp --[ -f /xenix ] && CPP="${CC} -E" --[ -f /lynx.os ] && CPP="${CC} -E" - - echo "#include <stdio.h>" > conftest.c - $CPP conftest.c >/dev/null 2>/dev/null || CPP="${CC} -E" diff --git a/abs/extra/zip/zip-3.0-exec-stack.patch b/abs/extra/zip/zip-3.0-exec-stack.patch deleted file mode 100644 index 2eb1acf..0000000 --- a/abs/extra/zip/zip-3.0-exec-stack.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- zip-2.31/crc_i386.S -+++ zip-2.31/crc_i386.S -@@ -238,3 +238,7 @@ - #endif /* i386 || _i386 || _I386 || __i386 */ - - #endif /* !USE_ZLIB && !CRC_TABLE_ONLY */ -+ -+#if defined __ELF__ && defined __linux__ -+.section .note.GNU-stack,"",@progbits -+#endif ---- zip-2.31/match.S -+++ zip-2.31/match.S -@@ -405,3 +405,7 @@ - #endif /* i386 || _I386 || _i386 || __i386 */ - - #endif /* !USE_ZLIB */ -+ -+#if defined __ELF__ && defined __linux__ -+.section .note.GNU-stack,"",@progbits -+#endif diff --git a/abs/extra/zip/zip-3.0-no-crypt.patch b/abs/extra/zip/zip-3.0-no-crypt.patch deleted file mode 100644 index 301c289..0000000 --- a/abs/extra/zip/zip-3.0-no-crypt.patch +++ /dev/null @@ -1,51 +0,0 @@ ---- zip.c -+++ zip.c -@@ -3452,6 +3452,9 @@ char **argv; /* command line tokens */ - - /* Key not yet specified. If needed, get/verify it now. */ - if (key_needed) { -+#if !CRYPT -+ ZIPERR(ZE_PARMS, "encryption not supported"); -+#else /* CRYPT */ - if ((key = malloc(IZ_PWLEN+1)) == NULL) { - ZIPERR(ZE_MEM, "was getting encryption password"); - } -@@ -3478,6 +3481,7 @@ char **argv; /* command line tokens */ - if (r) { - ZIPERR(ZE_PARMS, "password verification failed"); - } -+#endif - } - if (key) { - /* if -P "" could get here */ ---- zipcloak.c -+++ zipcloak.c -@@ -744,6 +744,28 @@ struct option_struct far options[] = { - - int main OF((void)); - -+void zipmessage_nl(a, nl) -+ZCONST char *a; -+int nl; -+{ -+} -+ -+void zipmessage(a, b) -+ZCONST char *a, *b; -+{ -+} -+ -+int set_filetype(out_path) -+ char *out_path; -+{ -+} -+ -+int rename_split(temp_name, out_path) -+ char *temp_name; -+ char *out_path; -+{ -+} -+ - void zipwarn(msg1, msg2) - ZCONST char *msg1, *msg2; - { diff --git a/abs/extra/zip/zip-3.0-pic.patch b/abs/extra/zip/zip-3.0-pic.patch deleted file mode 100644 index d37e5ed..0000000 --- a/abs/extra/zip/zip-3.0-pic.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- unix/configure -+++ unix/configure -@@ -29,6 +29,9 @@ - echo Check if we can use asm code - OBJA="" - OCRCU8="" -+piclib="$(echo | $CPP -dM $CFLAGS - | grep -i __pic__)" -+echo "Checking if compiler wants to create pic code" -+[ "$piclib" == "" ] && \ - if eval "$CPP match.S > _match.s 2>/dev/null"; then - if test ! -s _match.s || grep error < _match.s > /dev/null; then - : |