From 35c30674b2b901077a809a6f1d8e5a0115098c8b Mon Sep 17 00:00:00 2001 From: root Date: Thu, 14 Jun 2012 00:01:48 +0000 Subject: Thu Jun 14 00:01:48 UTC 2012 --- staging/sane/PKGBUILD | 72 ++++++++++++ staging/sane/libv4l-0.8.3.patch | 64 ++++++++++ staging/sane/sane.install | 7 ++ staging/sane/sane.xinetd | 11 ++ staging/sane/saned.service | 8 ++ staging/sane/saned.socket | 9 ++ staging/sane/xerox_mfp_fix_usb_devices.patch | 67 +++++++++++ staging/sox/PKGBUILD | 45 +++++++ staging/sox/sox-ffmpeg0.11.patch | 130 +++++++++++++++++++++ .../sox/sox_default_audio_driver_fallback.patch | 51 ++++++++ staging/xf86-video-ati/PKGBUILD | 32 +++++ 11 files changed, 496 insertions(+) create mode 100644 staging/sane/PKGBUILD create mode 100644 staging/sane/libv4l-0.8.3.patch create mode 100644 staging/sane/sane.install create mode 100644 staging/sane/sane.xinetd create mode 100644 staging/sane/saned.service create mode 100644 staging/sane/saned.socket create mode 100644 staging/sane/xerox_mfp_fix_usb_devices.patch create mode 100644 staging/sox/PKGBUILD create mode 100644 staging/sox/sox-ffmpeg0.11.patch create mode 100644 staging/sox/sox_default_audio_driver_fallback.patch create mode 100644 staging/xf86-video-ati/PKGBUILD (limited to 'staging') diff --git a/staging/sane/PKGBUILD b/staging/sane/PKGBUILD new file mode 100644 index 000000000..f9f2742be --- /dev/null +++ b/staging/sane/PKGBUILD @@ -0,0 +1,72 @@ +# $Id: PKGBUILD 161619 2012-06-12 14:13:06Z tpowa $ +# Maintainer: Tobias Powalowski +# Contributor: Sarah Hay +# Contributor: Simo L. +# Contributor: eric + +pkgname=sane +pkgver=1.0.22 +pkgrel=9 +pkgdesc="Scanner Access Now Easy" +url="http://www.sane-project.org/" +arch=('i686' 'x86_64') +license=('GPL') +depends=('libtiff>=4.0.0' 'libgphoto2>=2.4.7-2' 'libjpeg>=8' 'libusb-compat' 'libieee1284' 'v4l-utils' 'avahi' 'bash' 'net-snmp') +makedepends=('texlive-latexextra') +install=$pkgname.install +backup=(etc/sane.d/{abaton.conf,agfafocus.conf,apple.conf,artec.conf,artec_eplus48u.conf,avision.conf,bh.conf,canon.conf,canon630u.conf,canon_dr.conf,canon_pp.conf,cardscan.conf,coolscan2.conf,coolscan3.conf,coolscan.conf,dc25.conf,dc210.conf,dc240.conf,dell1600n_net.conf,dll.conf,dmc.conf,epjitsu.conf,epson.conf,epson2.conf,fujitsu.conf,genesys.conf,gphoto2.conf,gt68xx.conf,hp.conf,hp3900.conf,hp4200.conf,hp5400.conf,hpsj5s.conf,hs2p.conf,ibm.conf,kodak.conf,leo.conf,lexmark.conf,ma1509.conf,magicolor.conf,matsushita.conf,microtek.conf,microtek2.conf,mustek.conf,mustek_pp.conf,mustek_usb.conf,mustek_usb2.conf,nec.conf,net.conf,p5.conf,pie.conf,pixma.conf,plustek.conf,plustek_pp.conf,qcam.conf,ricoh.conf,rts8891.conf,s9036.conf,saned.conf,sceptre.conf,sharp.conf,sm3840.conf,snapscan.conf,sp15c.conf,st400.conf,stv680.conf,tamarack.conf,teco1.conf,teco2.conf,teco3.conf,test.conf,u12.conf,umax.conf,umax1220u.conf,umax_pp.conf,xerox_mfp.conf,v4l.conf} etc/xinetd.d/sane) +source=(ftp://ftp2.sane-project.org/pub/sane/$pkgname-backends-$pkgver/$pkgname-backends-$pkgver.tar.gz + 'sane.xinetd' + 'libv4l-0.8.3.patch' + 'xerox_mfp_fix_usb_devices.patch' + 'saned.socket' + 'saned.service') +options=(!libtool) +md5sums=('fadf56a60f4776bfb24491f66b617cf5' + 'da946cc36fb83612162cf9505986d4b2' + 'e645a8921cff9f18ffbdabb2ed885060' + 'cfef73e7db7c28308914d3db6767d852' + 'e57e9e15528f47f5f1b3f1411135ed5d' + 'e44bd4c994a52d6f472463d1eb0a03be') + +build() { + cd "${srcdir}/${pkgname}-backends-${pkgver}" + + patch -p1 -i "${srcdir}"/libv4l-0.8.3.patch + # fix https://bugs.archlinux.org/task/26114 + patch -Np1 -i "${srcdir}"/xerox_mfp_fix_usb_devices.patch + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --with-docdir=/usr/share/doc/sane \ + --enable-avahi \ + --enable-pthread \ + --disable-rpath \ + --disable-locking + make +} + +package () { + cd "${srcdir}/${pkgname}-backends-${pkgver}" + make DESTDIR="${pkgdir}" install + # fix hp officejets + echo "#hpaio" >> "${pkgdir}/etc/sane.d/dll.conf" + # install udev files + install -D -m0644 tools/udev/libsane.rules \ + "${pkgdir}/usr/lib/udev/rules.d/53-sane.rules" + # fix udev rules + sed -i 's|NAME="%k", ||g' "${pkgdir}/usr/lib/udev/rules.d/53-sane.rules" + + # install xinetd file + install -D -m644 "${srcdir}/sane.xinetd" "${pkgdir}/etc/xinetd.d/sane" + + # Install the pkg-config file + install -D -m644 tools/sane-backends.pc \ + "${pkgdir}/usr/lib/pkgconfig/sane-backends.pc" + # install systemd files + install -D -m644 ${srcdir}/saned.socket \ + "${pkgdir}/usr/lib/systemd/system/saned.socket" + install -D -m644 ${srcdir}/saned.service \ + "${pkgdir}/usr/lib/systemd/system/saned@.service" +} diff --git a/staging/sane/libv4l-0.8.3.patch b/staging/sane/libv4l-0.8.3.patch new file mode 100644 index 000000000..4e240e0cf --- /dev/null +++ b/staging/sane/libv4l-0.8.3.patch @@ -0,0 +1,64 @@ +From 26c69b228b29f612faf4b0cc85db969ee7cc4ea6 Mon Sep 17 00:00:00 2001 +From: Nils Philippsen +Date: Mon, 14 Mar 2011 13:35:05 +0100 +Subject: [PATCH] patch: v4l + +Squashed commit of the following: + +commit 23381932c76846191b42a48e505b37cd74711265 +Author: Julien BLACHE +Date: Wed Feb 16 19:37:43 2011 +0100 + + Fix v4l build with libv4l 0.8.3+ + + (cherry picked from commit c5ca46c2d1be78c651afb843cc834cf2b5b24953) + + Conflicts: + + ChangeLog + + Signed-off-by: Nils Philippsen +--- + backend/v4l.c | 3 +-- + backend/v4l.h | 3 ++- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/backend/v4l.c b/backend/v4l.c +index 6510ef0..38595ed 100644 +--- a/backend/v4l.c ++++ b/backend/v4l.c +@@ -84,9 +84,8 @@ + #include "../include/sane/sanei_config.h" + #define V4L_CONFIG_FILE "v4l.conf" + +-#include "v4l.h" +- + #include ++#include "v4l.h" + + static const SANE_Device **devlist = NULL; + static int num_devices; +diff --git a/backend/v4l.h b/backend/v4l.h +index 588b96e..6aee586 100644 +--- a/backend/v4l.h ++++ b/backend/v4l.h +@@ -29,6 +29,7 @@ + #ifndef v4l_h + #define v4l_h + ++#ifndef __LINUX_VIDEODEV_H + /* Kernel interface */ + /* Only the stuff we need. For more features, more defines are needed */ + +@@ -165,7 +166,7 @@ struct video_channel + + + /* end of kernel interface */ +- ++#endif /* !__LINUX_VIDEODEV_H */ + + #include <../include/sane/sane.h> + +-- +1.7.4 + diff --git a/staging/sane/sane.install b/staging/sane/sane.install new file mode 100644 index 000000000..5ec361eea --- /dev/null +++ b/staging/sane/sane.install @@ -0,0 +1,7 @@ +post_install() { + /bin/cat < +Date: Tue Mar 8 17:57:19 2011 +0300 + + keep usb device by default (correct for bug introduced by tcp sub-backend + +diff --git a/backend/xerox_mfp.c b/backend/xerox_mfp.c +index e08b50f..d4672a7 100644 +--- a/backend/xerox_mfp.c ++++ b/backend/xerox_mfp.c +@@ -37,10 +37,10 @@ + static const SANE_Device **devlist = NULL; /* sane_get_devices array */ + static struct device *devices_head = NULL; /* sane_get_devices list */ + +-transport available_transports[] = { ++enum { TRANSPORT_USB, TRANSPORT_TCP, TRANSPORTS_MAX }; ++transport available_transports[TRANSPORTS_MAX] = { + { "usb", usb_dev_request, usb_dev_open, usb_dev_close, usb_configure_device }, + { "tcp", tcp_dev_request, tcp_dev_open, tcp_dev_close, tcp_configure_device }, +- { 0 } + }; + + static int resolv_state(int state) +@@ -824,7 +824,13 @@ free_devices (void) + devices_head = NULL; + } + +-/* SANE API ignores return code of this callback */ ++static transport *tr_from_devname(SANE_String_Const devname) ++{ ++ if (strncmp("tcp", devname, 3) == 0) ++ return &available_transports[TRANSPORT_TCP]; ++ return &available_transports[TRANSPORT_USB]; ++} ++ + static SANE_Status + list_one_device (SANE_String_Const devname) + { +@@ -839,12 +845,7 @@ list_one_device (SANE_String_Const devname) + return SANE_STATUS_GOOD; + } + +- for (tr = available_transports; tr->ttype; tr++) { +- if (!strncmp (devname, tr->ttype, strlen(tr->ttype))) +- break; +- } +- if (!tr->ttype) +- return SANE_STATUS_INVAL; ++ tr = tr_from_devname(devname); + + dev = calloc (1, sizeof (struct device)); + if (dev == NULL) +@@ -878,13 +879,7 @@ list_one_device (SANE_String_Const devname) + static SANE_Status + list_conf_devices (UNUSED (SANEI_Config * config), const char *devname) + { +- transport *tr; +- +- for (tr = available_transports; tr->ttype; tr++) { +- if (!strncmp (devname, tr->ttype, strlen(tr->ttype))) +- return tr->configure_device(devname, list_one_device); +- } +- return SANE_STATUS_INVAL; ++ return tr_from_devname(devname)->configure_device(devname, list_one_device); + } + + SANE_Status diff --git a/staging/sox/PKGBUILD b/staging/sox/PKGBUILD new file mode 100644 index 000000000..0b370fe65 --- /dev/null +++ b/staging/sox/PKGBUILD @@ -0,0 +1,45 @@ +# $Id: PKGBUILD 161504 2012-06-12 05:34:19Z eric $ +# Maintainer: Eric BĂ©langer + +pkgname=sox +pkgver=14.4.0 +pkgrel=3 +pkgdesc="The Swiss Army knife of sound processing tools" +arch=('i686' 'x86_64') +url="http://sox.sourceforge.net/" +license=('GPL' 'LGPL') +depends=('libltdl' 'file' 'libsndfile' 'libpng' 'lame' 'opencore-amr' 'gsm') +makedepends=('ffmpeg' 'libao' 'libmad' 'libid3tag' 'wavpack' 'libpulse') +checkdepends=('time') +optdepends=('libao: for ao plugin' + 'ffmpeg: for ffmpeg plugin' + 'libmad: for mp3 plugin' + 'libid3tag: for mp3 plugin' + 'wavpack: for wavpack plugin' + 'libpulse: for pulse plugin') +options=('!libtool') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2 + sox_default_audio_driver_fallback.patch sox-ffmpeg0.11.patch) +sha1sums=('12dfc57e503ed4e18cedcac292cdae7982281978' + 'ab304f1fc17269262dbc4977aa9b7e97ec805ae4' + '2f92bcaebcaf300782396f106cdd27c72048a851') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p0 -i "${srcdir}/sox_default_audio_driver_fallback.patch" + patch -p1 -i "${srcdir}/sox-ffmpeg0.11.patch" + sed -i 's|man1/sox.1 soxeffect.7|man1/sox.1.gz soxeffect.7.gz|' Makefile.in + ./configure --prefix=/usr --sysconfdir=/etc \ + --with-dyn-default --with-distro="Arch Linux" + make +} + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + make bindir=. installcheck +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/staging/sox/sox-ffmpeg0.11.patch b/staging/sox/sox-ffmpeg0.11.patch new file mode 100644 index 000000000..901c81582 --- /dev/null +++ b/staging/sox/sox-ffmpeg0.11.patch @@ -0,0 +1,130 @@ +diff -Naur sox-14.4.0-orig/configure sox-14.4.0/configure +--- sox-14.4.0-orig/configure 2012-06-12 00:35:53.462360803 -0400 ++++ sox-14.4.0/configure 2012-06-12 00:36:08.572361294 -0400 +@@ -15781,9 +15781,9 @@ + cat >>confdefs.h <<_ACEOF + #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 + _ACEOF +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for av_open_input_file in -lavformat" >&5 +-$as_echo_n "checking for av_open_input_file in -lavformat... " >&6; } +-if ${ac_cv_lib_avformat_av_open_input_file+:} false; then : ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for avformat_open_input in -lavformat" >&5 ++$as_echo_n "checking for avformat_open_input in -lavformat... " >&6; } ++if ${ac_cv_lib_avformat_avformat_open_input+:} false; then : + $as_echo_n "(cached) " >&6 + else + ac_check_lib_save_LIBS=$LIBS +@@ -15797,27 +15797,27 @@ + #ifdef __cplusplus + extern "C" + #endif +-char av_open_input_file (); ++char avformat_open_input (); + int + main () + { +-return av_open_input_file (); ++return avformat_open_input (); + ; + return 0; + } + _ACEOF + if ac_fn_c_try_link "$LINENO"; then : +- ac_cv_lib_avformat_av_open_input_file=yes ++ ac_cv_lib_avformat_avformat_open_input=yes + else +- ac_cv_lib_avformat_av_open_input_file=no ++ ac_cv_lib_avformat_avformat_open_input=no + fi + rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS=$ac_check_lib_save_LIBS + fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_avformat_av_open_input_file" >&5 +-$as_echo "$ac_cv_lib_avformat_av_open_input_file" >&6; } +-if test "x$ac_cv_lib_avformat_av_open_input_file" = xyes; then : ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_avformat_avformat_open_input" >&5 ++$as_echo "$ac_cv_lib_avformat_avformat_open_input" >&6; } ++if test "x$ac_cv_lib_avformat_avformat_open_input" = xyes; then : + for ac_header in libavcodec/avcodec.h ffmpeg/avcodec.h + do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +diff -Naur sox-14.4.0-orig/src/ffmpeg.c sox-14.4.0/src/ffmpeg.c +--- sox-14.4.0-orig/src/ffmpeg.c 2012-06-12 00:35:53.459027469 -0400 ++++ sox-14.4.0/src/ffmpeg.c 2012-06-12 00:36:26.539028545 -0400 +@@ -93,7 +93,7 @@ + #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0) + enc->error_resilience = 1; + #else +- enc->error_recognition = 1; ++ enc->err_recognition = 1; + #endif + + if (!codec || avcodec_open(enc, codec) < 0) +@@ -157,7 +157,7 @@ + static int startread(sox_format_t * ft) + { + priv_t * ffmpeg = (priv_t *)ft->priv; +- AVFormatParameters params; ++ AVDictionary *params; + int ret; + int i; + +@@ -172,7 +172,7 @@ + + /* Open file and get format */ + memset(¶ms, 0, sizeof(params)); +- if ((ret = av_open_input_file(&ffmpeg->ctxt, ft->filename, NULL, 0, ¶ms)) < 0) { ++ if ((ret = avformat_open_input(&ffmpeg->ctxt, ft->filename, NULL, ¶ms)) < 0) { + lsx_fail("ffmpeg cannot open file for reading: %s (code %d)", ft->filename, ret); + return SOX_EOF; + } +@@ -231,7 +231,7 @@ + /* If input buffer empty, read more data */ + if (ffmpeg->audio_buf_index * 2 >= ffmpeg->audio_buf_size) { + if ((ret = av_read_frame(ffmpeg->ctxt, pkt)) < 0 && +- (ret == AVERROR_EOF || url_ferror(ffmpeg->ctxt->pb))) ++ (ret == AVERROR_EOF || ffmpeg->ctxt->pb->error)) + break; + ffmpeg->audio_buf_size = audio_decode_frame(ffmpeg, ffmpeg->audio_buf_aligned, AVCODEC_MAX_AUDIO_FRAME_SIZE); + ffmpeg->audio_buf_index = 0; +@@ -373,13 +373,6 @@ + return SOX_EOF; + } + +- /* set the output parameters (must be done even if no +- parameters). */ +- if (av_set_parameters(ffmpeg->ctxt, NULL) < 0) { +- lsx_fail("ffmpeg invalid output format parameters"); +- return SOX_EOF; +- } +- + /* Next line for debugging */ + /* dump_format(ffmpeg->ctxt, 0, ft->filename, 1); */ + +@@ -391,14 +384,14 @@ + + /* open the output file, if needed */ + if (!(ffmpeg->fmt->flags & AVFMT_NOFILE)) { +- if (url_fopen(&ffmpeg->ctxt->pb, ft->filename, URL_WRONLY) < 0) { ++ if (avio_open(&ffmpeg->ctxt->pb, ft->filename, AVIO_FLAG_WRITE) < 0) { + lsx_fail("ffmpeg could not open `%s'", ft->filename); + return SOX_EOF; + } + } + + /* write the stream header, if any */ +- av_write_header(ffmpeg->ctxt); ++ avformat_write_header(ffmpeg->ctxt, NULL); + + return SOX_SUCCESS; + } +@@ -478,7 +471,7 @@ + #if (LIBAVFORMAT_VERSION_INT < 0x340000) + url_fclose(&ffmpeg->ctxt->pb); + #else +- url_fclose(ffmpeg->ctxt->pb); ++ avio_close(ffmpeg->ctxt->pb); + #endif + } + diff --git a/staging/sox/sox_default_audio_driver_fallback.patch b/staging/sox/sox_default_audio_driver_fallback.patch new file mode 100644 index 000000000..9f9060e17 --- /dev/null +++ b/staging/sox/sox_default_audio_driver_fallback.patch @@ -0,0 +1,51 @@ +--- src/sox.c.old 2012-05-06 22:45:45.380564154 -0400 ++++ src/sox.c 2012-05-06 22:47:11.948248987 -0400 +@@ -2538,20 +2538,38 @@ + return name? from_env? from_env : name : NULL; + } + ++static char const * try_device(char const * name) ++{ ++ sox_format_handler_t const * handler = sox_find_format(name, sox_false); ++ if (handler) { ++ sox_format_t format, * ft = &format; ++ memset(ft, 0, sizeof(*ft)); ++ ft->filename = (char *)device_name(name); ++ ft->priv = lsx_calloc(1, handler->priv_size); ++ if (handler->startwrite(ft) == SOX_SUCCESS) { ++ handler->stopwrite(ft); ++ free(ft->priv); ++ return name; ++ } ++ free(ft->priv); ++ } ++ return NULL; ++} ++ + static char const * set_default_device(file_t * f) + { + /* Default audio driver type in order of preference: */ + if (!f->filetype) f->filetype = getenv("AUDIODRIVER"); +- if (!f->filetype && sox_find_format("coreaudio", sox_false)) f->filetype = "coreaudio"; +- if (!f->filetype && sox_find_format("pulseaudio" , sox_false)) f->filetype = "pulseaudio"; +- if (!f->filetype && sox_find_format("alsa", sox_false)) f->filetype = "alsa"; +- if (!f->filetype && sox_find_format("waveaudio" , sox_false)) f->filetype = "waveaudio"; +- if (!f->filetype && sox_find_format("sndio", sox_false)) f->filetype = "sndio"; +- if (!f->filetype && sox_find_format("oss" , sox_false)) f->filetype = "oss"; +- if (!f->filetype && sox_find_format("sunau",sox_false)) f->filetype = "sunau"; +- if (!f->filetype && sox_find_format("ao" , sox_false) && file_count) /*!rec*/ +- f->filetype = "ao"; +- ++ if (!f->filetype) f->filetype = try_device("coreaudio"); ++ if (!f->filetype) f->filetype = try_device("pulseaudio"); ++ if (!f->filetype) f->filetype = try_device("alsa"); ++ if (!f->filetype) f->filetype = try_device("waveaudio"); ++ if (!f->filetype) f->filetype = try_device("sndio"); ++ if (!f->filetype) f->filetype = try_device("oss"); ++ if (!f->filetype) f->filetype = try_device("sunau"); ++ if (!f->filetype && file_count) /*!rec*/ ++ f->filetype = try_device("ao"); ++ + if (!f->filetype) { + lsx_fail("Sorry, there is no default audio device configured"); + exit(1); diff --git a/staging/xf86-video-ati/PKGBUILD b/staging/xf86-video-ati/PKGBUILD new file mode 100644 index 000000000..4cafa5c9d --- /dev/null +++ b/staging/xf86-video-ati/PKGBUILD @@ -0,0 +1,32 @@ +# $Id: PKGBUILD 161625 2012-06-12 15:45:26Z andyrtr $ +# Maintainer: Jan de Groot +# Contributor: Alexander Baldeck + +pkgname=xf86-video-ati +pkgver=6.14.5 +epoch=1 +pkgrel=1 +pkgdesc="X.org ati video driver" +arch=('i686' 'x86_64') +url="http://xorg.freedesktop.org/" +license=('custom') +depends=('libdrm>=2.4.35' 'systemd-tools' 'ati-dri') +makedepends=('xorg-server-devel>=1.11.99.902' 'xf86driproto' 'mesa') +conflicts=('xorg-server<1.11.99.902') +groups=('xorg-drivers' 'xorg') +options=('!libtool') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2) +sha256sums=('ef879d2845de50cec1aa98e37185271e1d535c0009efd6713ec88206b7197d53') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + ./configure --prefix=/usr #--enable-dri --help + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make "DESTDIR=${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} -- cgit v1.2.3-54-g00ecf