summaryrefslogtreecommitdiff
path: root/extra/libdc1394
diff options
context:
space:
mode:
Diffstat (limited to 'extra/libdc1394')
-rw-r--r--extra/libdc1394/PKGBUILD26
-rw-r--r--extra/libdc1394/rename-usb_init.patch53
-rw-r--r--extra/libdc1394/videodev-compile-fix.patch41
3 files changed, 111 insertions, 9 deletions
diff --git a/extra/libdc1394/PKGBUILD b/extra/libdc1394/PKGBUILD
index ffda48ac9..674c62bc5 100644
--- a/extra/libdc1394/PKGBUILD
+++ b/extra/libdc1394/PKGBUILD
@@ -1,24 +1,32 @@
-# $Id: PKGBUILD 119241 2011-04-11 13:01:37Z jgc $
+# $Id: PKGBUILD 137888 2011-09-12 08:33:12Z andrea $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libdc1394
pkgver=2.1.3
pkgrel=2
pkgdesc="High level programming interface to control IEEE 1394 based cameras"
-arch=(i686 x86_64 'mips64el')
+arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
url="http://sourceforge.net/projects/libdc1394/"
-depends=('libraw1394>=2.0.5' 'libusb')
-options=(!libtool !emptydirs)
-source=(http://downloads.sourceforge.net/sourceforge/libdc1394/${pkgname}-${pkgver}.tar.gz
- fix-videodev.h.patch)
+depends=('libraw1394>=2.0.7' 'libusb')
+options=('!libtool' '!emptydirs')
+source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz"
+ 'rename-usb_init.patch'
+ 'videodev-compile-fix.patch')
md5sums=('d8b2cbfae1b329fdeaa638da80427334'
- '8bbf233bf11295649cfd61a9ac3eba1b')
+ 'bc7a4146b4d2d688305d0d42c4111941'
+ '9dd11c96241b14073c3a7dd7e270fb7a')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np2 -i $srcdir/fix-videodev.h.patch
- autoreconf -s -i
+
+ # FS#25652
+ patch -p2 -i "${srcdir}"/rename-usb_init.patch
+ # Fix build when linux/video.h exists
+ patch -p2 -i "${srcdir}"/videodev-compile-fix.patch
+
+
+ autoreconf -i
./configure --prefix=/usr
make
}
diff --git a/extra/libdc1394/rename-usb_init.patch b/extra/libdc1394/rename-usb_init.patch
new file mode 100644
index 000000000..44e1a5de3
--- /dev/null
+++ b/extra/libdc1394/rename-usb_init.patch
@@ -0,0 +1,53 @@
+From 13b85d2d23548682b617ddc1196f5560a27998bd Mon Sep 17 00:00:00 2001
+From: Damien Douxchamps <ddsf@douxchamps.net>
+Date: Sun, 21 Aug 2011 16:03:22 +0900
+Subject: [PATCH] fix usb_init function name conflict
+
+---
+ libdc1394/dc1394/control.c | 2 +-
+ libdc1394/dc1394/internal.h | 2 +-
+ libdc1394/dc1394/usb/control.c | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/libdc1394/dc1394/control.c b/libdc1394/dc1394/control.c
+index c62e0e2..f250f6a 100644
+--- a/libdc1394/dc1394/control.c
++++ b/libdc1394/dc1394/control.c
+@@ -1955,7 +1955,7 @@ dc1394_new (void)
+ windows_init (d);
+ #endif
+ #ifdef HAVE_LIBUSB
+- usb_init (d);
++ dc1394_usb_init (d);
+ #endif
+
+ int i;
+diff --git a/libdc1394/dc1394/internal.h b/libdc1394/dc1394/internal.h
+index b4d295a..c59e5d3 100644
+--- a/libdc1394/dc1394/internal.h
++++ b/libdc1394/dc1394/internal.h
+@@ -74,7 +74,7 @@ void juju_init(dc1394_t *d);
+ void linux_init(dc1394_t *d);
+ void macosx_init(dc1394_t *d);
+ void windows_init(dc1394_t *d);
+-void usb_init(dc1394_t *d);
++void dc1394_usb_init(dc1394_t *d);
+
+ void register_platform (dc1394_t * d, const platform_dispatch_t * dispatch,
+ const char * name);
+diff --git a/libdc1394/dc1394/usb/control.c b/libdc1394/dc1394/usb/control.c
+index 6509452..19a21a6 100644
+--- a/libdc1394/dc1394/usb/control.c
++++ b/libdc1394/dc1394/usb/control.c
+@@ -378,7 +378,7 @@ usb_dispatch = {
+ };
+
+ void
+-usb_init(dc1394_t * d)
++dc1394_usb_init(dc1394_t * d)
+ {
+ register_platform (d, &usb_dispatch, "usb");
+ }
+--
+1.7.4.1
+
diff --git a/extra/libdc1394/videodev-compile-fix.patch b/extra/libdc1394/videodev-compile-fix.patch
new file mode 100644
index 000000000..8f234b152
--- /dev/null
+++ b/extra/libdc1394/videodev-compile-fix.patch
@@ -0,0 +1,41 @@
+From 2ee7e7f98dd6225b40d5cd570c240504be7bc86a Mon Sep 17 00:00:00 2001
+From: David Moore <david.moore@gmail.com>
+Date: Sun, 27 Mar 2011 22:48:15 -0700
+Subject: [PATCH] Conditionally compile dc1394_vloopback only when linux/videodev.h exists
+
+---
+ libdc1394/configure.in | 3 +++
+ libdc1394/examples/Makefile.am | 2 ++
+ 2 files changed, 7 insertions(+), 0 deletions(-)
+
+diff --git a/libdc1394/configure.in b/libdc1394/configure.in
+index 69babab..bdddc9b 100644
+--- a/libdc1394/configure.in
++++ b/libdc1394/configure.in
+@@ -75,6 +75,9 @@ AM_CONDITIONAL(HAVE_WINDOWS, test x$have_windows = xtrue)
+ AM_CONDITIONAL(HAVE_LIBRAW1394, test x$libraw1394 = xtrue)
+ AM_CONDITIONAL(HAVE_LIBUSB, test "x$LIBUSB_LIBS" != "x")
+
++AC_CHECK_HEADER([linux/videodev.h], [have_videodev=true])
++AM_CONDITIONAL(HAVE_VIDEODEV, test x$have_videodev = xtrue)
++
+ AC_ARG_ENABLE([examples], [AS_HELP_STRING([--disable-examples], [don't build example programs])], [build_examples=$enableval], [build_examples=true])
+
+ AM_CONDITIONAL(MAKE_EXAMPLES, test x$build_examples = xtrue)
+diff --git a/libdc1394/examples/Makefile.am b/libdc1394/examples/Makefile.am
+index fcebf18..035612e 100644
+--- a/libdc1394/examples/Makefile.am
++++ b/libdc1394/examples/Makefile.am
+@@ -8,7 +8,9 @@ A = grab_gray_image grab_partial_image grab_color_image \
+ B = dc1394_reset_bus
+
+ if HAVE_LINUX
++if HAVE_VIDEODEV
+ B += dc1394_vloopback
++endif
+ if HAVE_XV
+ A += dc1394_multiview
+ endif
+--
+1.7.4.1
+