diff --git a/baselibs.conf b/baselibs.conf index d0ae73f..ff7c244 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,7 +1,7 @@ libraw1394 -libraw1394-8 +libraw1394-11 obsoletes "libraw1394- <= " provides "libraw1394- = " libraw1394-devel requires -libraw1394- - requires "libraw1394-8- = " + requires "libraw1394-11- = " diff --git a/libraw1394-1.3.0.tar.bz2 b/libraw1394-1.3.0.tar.bz2 deleted file mode 100644 index 7251be5..0000000 --- a/libraw1394-1.3.0.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:81b94fe0f74da0076a8ff84bd0d159f423feb347c84e8ea3ad0e90c6b796f7e5 -size 266519 diff --git a/libraw1394-2.0.5.tar.bz2 b/libraw1394-2.0.5.tar.bz2 new file mode 100644 index 0000000..8f99559 --- /dev/null +++ b/libraw1394-2.0.5.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d108796775cac9e943d89754c3818c4b91089ff1d7156551d282601b13f5e3f +size 320413 diff --git a/libraw1394.changes b/libraw1394.changes index 613388e..fa73d83 100644 --- a/libraw1394.changes +++ b/libraw1394.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Thu Sep 30 10:42:46 UTC 2010 - davejplater@gmail.com + +- Update to version 2.0.5 +- See https://ieee1394.wiki.kernel.org/index.php/Release_Notes_-_Libraries + for changes since 1.3.0 +- Upstream urls changed as http://www.linux1394.org/ is up for sale + and no longer in use. +- Removed patch libraw1394.eventloop-return.patch, already integrated. +- Removed mpg1394grab.patch and mpg1394grab-beautify.patch as the upstream + maintainer says that streaming video support is now integrated. + ------------------------------------------------------------------- Sat Apr 24 09:09:20 UTC 2010 - coolo@novell.com @@ -37,7 +49,7 @@ Tue Mar 18 20:58:03 CET 2008 - crrodriguez@suse.de - update to version 1.3.0 * added raw1394_read_cycle_timer() as used by FFADO project. * added support for environment variable RAW1394DEV to override default device node /dev/raw1394. - * added --with-valgrind to configure script. other optimizations and bugfixes - see ChangeLog. + * added --with-valgrind to configure script. other optimizations and bugfixes - see ChangeLog. ------------------------------------------------------------------- Sat Aug 4 17:22:06 CEST 2007 - olh@suse.de @@ -101,7 +113,7 @@ Sun Jan 12 21:55:44 CET 2003 - aj@suse.de ------------------------------------------------------------------- Thu Jun 20 00:39:42 CEST 2002 - ro@suse.de -- run autoreconf +- run autoreconf ------------------------------------------------------------------- Thu Jun 6 22:10:51 CEST 2002 - bk@suse.de diff --git a/libraw1394.eventloop-return.patch b/libraw1394.eventloop-return.patch deleted file mode 100644 index 93d6e9b..0000000 --- a/libraw1394.eventloop-return.patch +++ /dev/null @@ -1,33 +0,0 @@ -r177 | ddennedy | 2008-03-27 21:25:23 +0100 (Thu, 27 Mar 2008) | 4 lines -Changed paths: - M /trunk/src/eventloop.c - -eventloop.c: apply patch from Jonas Bonn to retry read when failed with EINTR. -This can occur when libraw1394 caller receives a signal while in this read and -the caller is not using a signal handler set with signal(). - ---- - src/eventloop.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - ---- a/src/eventloop.c -+++ b/src/eventloop.c -@@ -21,6 +21,7 @@ - #include - #include - #include -+#include - - #include "raw1394.h" - #include "kernel-raw1394.h" -@@ -32,8 +33,8 @@ int raw1394_loop_iterate(struct raw1394_ - struct raw1394_request req; - int retval = 0, channel; - -- if (read(handle->fd, &req, sizeof(req)) < 0) { -- return -1; -+ while (read(handle->fd, &req, sizeof(req)) < 0) { -+ if (errno != EINTR) return -1; - } - - switch (req.type) { diff --git a/libraw1394.mpg1394grab-beautify.patch b/libraw1394.mpg1394grab-beautify.patch deleted file mode 100644 index 793bc71..0000000 --- a/libraw1394.mpg1394grab-beautify.patch +++ /dev/null @@ -1,81 +0,0 @@ ---- - tools/mpg1394grab.c | 21 +++++++++++---------- - 1 file changed, 11 insertions(+), 10 deletions(-) - -Index: libraw1394-1.2.1/tools/mpg1394grab.c -=================================================================== ---- libraw1394-1.2.1.orig/tools/mpg1394grab.c -+++ libraw1394-1.2.1/tools/mpg1394grab.c -@@ -29,10 +29,11 @@ - #include - #include - #include -+#include - #include - - /* linux1394 includes */ --#include -+#include "../src/raw1394.h" - - /* constant for the iso receive channel */ - #define RX_CHANNEL 63 -@@ -40,10 +41,10 @@ - #define RAW_BUF_SIZE 4096 - - /* global vars */ --unsigned char g_rx_packet[RAW_BUF_SIZE]; /* the received packet data */ --int g_rx_length; /* the size of a received packet */ --int g_alldone = 0; /* flag to indicate when to quit */ --int g_rx_channel = RX_CHANNEL; -+static unsigned char g_rx_packet[RAW_BUF_SIZE]; /* the received packet data */ -+static int g_rx_length; /* the size of a received packet */ -+static int g_alldone; /* flag to indicate when to quit */ -+static int g_rx_channel = RX_CHANNEL; - - - /*************************************************************************/ -@@ -53,7 +54,7 @@ int g_rx_channel = RX_CHANNEL; - /* a callback function executed by libraw1394 when a packet is received. */ - /* iso packet header is included */ - /* libraw1394 has its own handle type */ --int raw_iso_handler(raw1394handle_t handle, int channel, size_t length, -+static int raw_iso_handler(raw1394handle_t handle, int channel, size_t length, - quadlet_t *data) - { - /* is this a packet for me? */ -@@ -67,7 +68,7 @@ int raw_iso_handler(raw1394handle_t hand - - /* libraw1394 executes this when there is a bus reset. We'll just keep it - simple and quit */ --int reset_handler(raw1394handle_t handle, unsigned int generation) -+static int reset_handler(raw1394handle_t handle, unsigned int generation) - { - raw1394_update_generation(handle, generation); - g_alldone = 1; -@@ -75,7 +76,7 @@ int reset_handler(raw1394handle_t handle - } - - --raw1394handle_t open_raw1394(void) -+static raw1394handle_t open_raw1394(void) - { - int numcards; - struct raw1394_portinfo pinf[16]; -@@ -121,7 +122,7 @@ raw1394handle_t open_raw1394(void) - } - - --void close_raw1394(raw1394handle_t handle) -+static void close_raw1394(raw1394handle_t handle) - { - raw1394_stop_iso_rcv(handle, g_rx_channel); - raw1394_destroy_handle(handle); -@@ -130,7 +131,7 @@ void close_raw1394(raw1394handle_t handl - - /* this is a common unix function that gets called when a process - receives a signal (e.g. ctrl-c) */ --void signal_handler(int sig) -+static void signal_handler(int sig) - { - /* replace this signal handler with the default (which aborts) */ - signal(SIGINT, SIG_DFL); diff --git a/libraw1394.mpg1394grab.patch b/libraw1394.mpg1394grab.patch deleted file mode 100644 index ced3dd5..0000000 --- a/libraw1394.mpg1394grab.patch +++ /dev/null @@ -1,215 +0,0 @@ -http://www.kinodv.org/filemanager/download/5/mpg1394grab.c ---- - tools/Makefile.am | 2 - tools/mpg1394grab.c | 193 ++++++++++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 194 insertions(+), 1 deletion(-) - -Index: libraw1394-1.2.1/tools/mpg1394grab.c -=================================================================== ---- /dev/null -+++ libraw1394-1.2.1/tools/mpg1394grab.c -@@ -0,0 +1,193 @@ -+/* mpg1394grab.c v0.1.0 -- a program to capture IEC 61883-4 streams -+ * -+ * Copyright (C) 2003 Dan Dennedy -+ * -+ * Build: -+ * % gcc -lraw1394 -o mpg1394grab mpg1394grab.c -D_FILE_OFFSET_BITS=64 -+ * -+ * -+ * 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 Library 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. -+ */ -+ -+ -+/* standard system includes */ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+/* linux1394 includes */ -+#include -+ -+/* constant for the iso receive channel */ -+#define RX_CHANNEL 63 -+/* constant for the iso receive packet buffer size */ -+#define RAW_BUF_SIZE 4096 -+ -+/* global vars */ -+unsigned char g_rx_packet[RAW_BUF_SIZE]; /* the received packet data */ -+int g_rx_length; /* the size of a received packet */ -+int g_alldone = 0; /* flag to indicate when to quit */ -+int g_rx_channel = RX_CHANNEL; -+ -+ -+/*************************************************************************/ -+/* raw1394 section - reception */ -+/*************************************************************************/ -+ -+/* a callback function executed by libraw1394 when a packet is received. */ -+/* iso packet header is included */ -+/* libraw1394 has its own handle type */ -+int raw_iso_handler(raw1394handle_t handle, int channel, size_t length, -+ quadlet_t *data) -+{ -+ /* is this a packet for me? */ -+ if (length < RAW_BUF_SIZE && channel == g_rx_channel) { -+ //fprintf(stderr, "received a packet with length %03d (%08x) (%08x)\n", length-4, *(unsigned long*)(data+3),*(unsigned long*)(data+4)); -+ g_rx_length = length; -+ memcpy(g_rx_packet, data, length); -+ } -+ return 0; -+} -+ -+/* libraw1394 executes this when there is a bus reset. We'll just keep it -+ simple and quit */ -+int reset_handler(raw1394handle_t handle, unsigned int generation) -+{ -+ raw1394_update_generation(handle, generation); -+ g_alldone = 1; -+ return 0; -+} -+ -+ -+raw1394handle_t open_raw1394(void) -+{ -+ int numcards; -+ struct raw1394_portinfo pinf[16]; -+ raw1394handle_t handle; -+ struct pollfd raw1394_poll; -+ -+ if (!(handle = raw1394_new_handle())) { -+ perror("raw1394 - couldn't get handle"); -+ fprintf(stderr, "This error usually means that the ieee1394 driver is not loaded or that /dev/raw1394 does not exist.\n"); -+ exit( -1); -+ } -+ -+ if ((numcards = raw1394_get_port_info(handle, pinf, 16)) < 0) { -+ perror("raw1394 - couldn't get card info"); -+ exit( -1); -+ } -+ -+ /* port 0 is the first host adapter card */ -+ if (raw1394_set_port(handle, 0) < 0) { -+ perror("raw1394 - couldn't set port"); -+ exit( -1); -+ } -+ -+ /* tell libraw1394 the names of our callback functions */ -+ raw1394_set_iso_handler(handle, g_rx_channel, raw_iso_handler); -+ raw1394_set_bus_reset_handler(handle, reset_handler); -+ -+ /* poll for leftover events */ -+ raw1394_poll.fd = raw1394_get_fd(handle); -+ raw1394_poll.events = POLLIN; -+ while(1) { -+ if ( poll( &raw1394_poll, 1, 10) < 1 ) -+ break; -+ raw1394_loop_iterate(handle); -+ } -+ -+ /* Starting iso receive */ -+ if (raw1394_start_iso_rcv(handle, g_rx_channel) < 0) { -+ perror("raw1394 - couldn't start iso receive"); -+ exit( -1); -+ } -+ return handle; -+} -+ -+ -+void close_raw1394(raw1394handle_t handle) -+{ -+ raw1394_stop_iso_rcv(handle, g_rx_channel); -+ raw1394_destroy_handle(handle); -+} -+ -+ -+/* this is a common unix function that gets called when a process -+ receives a signal (e.g. ctrl-c) */ -+void signal_handler(int sig) -+{ -+ /* replace this signal handler with the default (which aborts) */ -+ signal(SIGINT, SIG_DFL); -+ -+ /* setting these variables will let us fall out of the main loop */ -+ g_alldone = 1; -+} -+ -+ -+int main(int argc, const char** argv) -+{ -+ raw1394handle_t handle; -+ unsigned short dbs_fn_qpc_sph; -+ unsigned char fmt; -+ struct pollfd raw1394_poll; -+ -+ signal(SIGINT, signal_handler); -+ -+ handle = open_raw1394(); -+ -+ /* initialize the poll control structure */ -+ raw1394_poll.fd = raw1394_get_fd(handle); -+ raw1394_poll.events = POLLIN; -+ -+ /* the main loop */ -+ while (g_alldone == 0) { -+ -+ /* check for pending events before using raw1394 */ -+ if ( poll( &raw1394_poll, 1, 10) > 0 ) { -+ if (raw1394_poll.revents & POLLIN) { -+ -+ /* wait for a packet to arrive */ -+ /* printf("waiting to receive...\n"); */ -+ raw1394_loop_iterate(handle); -+ -+ /* check various fields of CIP header for valid packet */ -+ dbs_fn_qpc_sph = (htonl(*(unsigned long*)(g_rx_packet+4)) >> 10) & 0x3fff; -+ fmt = (htonl(*(unsigned long*)(g_rx_packet+8)) >> 24) & 0x3f; -+ if (g_rx_length > 188 && fmt == 0x20 && dbs_fn_qpc_sph == 0x01b1) { -+ -+ unsigned char *data = g_rx_packet + 16; /* skip over iso header, CIP header, and SPH */ -+ size_t len = g_rx_length; -+ -+ /* write each TSP in the iso packet minus SPH */ -+ for ( ; len > 188; len -= 192, data += 192 ) -+ if ( fwrite( data, 188, 1, stdout ) != 1 ) { -+ g_alldone = 1; -+ break; -+ } -+ } -+ } -+ } -+ } -+ -+ close_raw1394(handle); -+ fprintf(stderr, "quitting\n"); -+ return EXIT_SUCCESS; -+} -+ -+ -Index: libraw1394-1.2.1/tools/Makefile.am -=================================================================== ---- libraw1394-1.2.1.orig/tools/Makefile.am -+++ libraw1394-1.2.1/tools/Makefile.am -@@ -1,5 +1,5 @@ - MAINTAINERCLEANFILES = Makefile.in - - # testlibraw --bin_PROGRAMS = testlibraw sendiso dumpiso -+bin_PROGRAMS = testlibraw sendiso dumpiso mpg1394grab - LDADD = ../src/libraw1394.la diff --git a/libraw1394.spec b/libraw1394.spec index 4ccda1a..6584d33 100644 --- a/libraw1394.spec +++ b/libraw1394.spec @@ -1,5 +1,5 @@ # -# spec file for package libraw1394 (Version 1.3.0) +# spec file for package libraw1394 (Version 2.0.5) # # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -19,31 +19,54 @@ Name: libraw1394 -Version: 1.3.0 -Release: 44 +Version: 2.0.5 +Release: 1 License: LGPLv2.1+ Summary: A Firewire Interface -Url: http://www.linux1394.org/ +Url: http://www.dennedy.org/libraw1394/ Group: System/Kernel # bug437293 %ifarch ppc64 Obsoletes: libraw1394-64bit %endif # -BuildRequires: pkg-config +BuildRequires: openjade-devel pkg-config BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source0: http://www.linux1394.org/files/libraw1394/%{name}-%{version}.tar.bz2 +Source0: http://www.kernel.org/pub/linux/libs/ieee1394/%{name}-%{version}.tar.bz2 Source1: baselibs.conf Patch: libraw1394.no-isodump.patch -Patch1: libraw1394.eventloop-return.patch -Patch10: libraw1394.mpg1394grab.patch -Patch11: libraw1394.mpg1394grab-beautify.patch %description -A library for the Linux IEEE-1394 subsystem, which provides direct -access to the connected 1394 (Firewire) bus. +The Linux kernel's IEEE 1394 subsystem provides access to the raw 1394 +bus through the raw1394 module. This includes the standard 1394 +transactions (read, write, lock) on the active side, isochronous +stream receiving and sending and dumps of data written to the +FCP_COMMAND and FCP_RESPONSE registers. raw1394 uses a character +device to communicate to user programs using a special protocol. -%package 8 +libraw1394 was created with the intent to hide that protocol from +applications so that + +- the protocol has to be implemented correctly only once. + +- all work can be done using easy to understand functions instead of + handling a complicated command structure. + +- only libraw1394 has to be changed when raw1394's interface changes. + +Maintainer: Dan Dennedy + +Original author: Andreas Bombe + or + +Contributors: +Manfred Weihs +Christian Toegel +Dan Maas +Ben Collins +Pieter Palmers + +%package 11 License: LGPLv2.1+ Summary: A Firewire Interface Group: System/Kernel @@ -53,7 +76,7 @@ Obsoletes: libraw1394-64bit %endif # -%description 8 +%description 11 A library for the Linux IEEE-1394 subsystem, which provides direct access to the connected 1394 (Firewire) bus. @@ -62,7 +85,7 @@ License: LGPLv2.1+ Summary: Development and Include Files for libraw1394 Summary(pt_BR): Arquivos de desenvolvimento e cabeçalhos para o libraw1394 Group: Development/Libraries/C and C++ -Requires: %{name}-8 == %{version} glibc-devel +Requires: %{name}-11 == %{version} glibc-devel # bug437293 %ifarch ppc64 Obsoletes: libraw1394-devel-64bit @@ -81,12 +104,9 @@ This archive contains the header files for libraw1394 development. %prep %setup -q %patch -p1 -%patch1 -p1 -%patch10 -p1 -%patch11 -p1 %build -autoreconf --force --install +#autoreconf --force --install export CFLAGS="%optflags" %configure --disable-static --with-pic %{__make} %{?jobs:-j%jobs} all @@ -99,9 +119,9 @@ rm -f %{buildroot}%{_libdir}/libraw1394.la %clean rm -rf $RPM_BUILD_ROOT -%post 8 -p /sbin/ldconfig +%post 11 -p /sbin/ldconfig -%postun 8 -p /sbin/ldconfig +%postun 11 -p /sbin/ldconfig %files %defattr(-,root,root) @@ -109,12 +129,11 @@ rm -rf $RPM_BUILD_ROOT %{_bindir}/testlibraw %{_bindir}/dumpiso %{_bindir}/sendiso -%{_bindir}/mpg1394grab %{_mandir}/man*/* -%files 8 +%files 11 %defattr(-,root,root) -%{_libdir}/libraw1394.so.8* +%{_libdir}/libraw1394.so.11* %files devel %defattr(-,root,root)