summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO28
-rw-r--r--PKGBUILD47
-rw-r--r--atsc_epg-64-bit-and-fault-tolerance.patch61
3 files changed, 136 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 00000000000..5d1f55cc32f
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,28 @@
+pkgbase = dvb-apps
+ pkgdesc = Linux DVB API applications and utilities
+ pkgver = 1.1.1
+ pkgrel = 1
+ url = https://www.linuxtv.org
+ arch = x86_64
+ arch = i686
+ arch = arm
+ arch = armv6h
+ arch = armv7h
+ arch = aarch64
+ license = GPL
+ makedepends = gcc
+ depends = glibc
+ conflicts = linuxtv-dvb-apps
+ source = https://linuxtv.org/hg/dvb-apps/archive/tip.tar.gz
+ source = https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-1.1.1.20100223-perl526.patch
+ source = https://git.busybox.net/buildroot/plain/package/dvb-apps/0003-handle-static-shared-only-build.patch
+ source = https://git.busybox.net/buildroot/plain/package/dvb-apps/0005-utils-fix-build-with-kernel-headers-4.14.patch
+ source = atsc_epg-64-bit-and-fault-tolerance.patch
+ sha256sums = 6ff30437bf514739e9981e1002a0853be10accf827511a7aa6a66f041d95f45a
+ sha256sums = 4460c9c8f4474fcc776b8d02d1c527584a81dbc84b69db9ed9a8b43ca24d49c5
+ sha256sums = ea5915194b00b7275eaac6902f9a4aa07a61c17e14010b9ea453c0e53c57612a
+ sha256sums = f9793b4e490f43e1cefbb94f44db3d8799c5a6ca51168cb7e79a518e3efbb7ad
+ sha256sums = 849e6ea61281ad5d678aa6c92107d33564b5e04aca7eb2c122475f70efe9ad00
+
+pkgname = dvb-apps
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 00000000000..0c2bbf383a0
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Troy Will <com[dot]gmail[at]troydwill>
+# Contributor: Tomasz Maciej Nowak <com[dot]gmail[at]tmn505>
+# Contributor: Jonathan Conder <jonno.conder@gmail.com>
+# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
+# Contributor: Camille Moncelier <pix@devlife.org>
+
+pkgname=dvb-apps
+pkgver=1.1.1
+pkgrel=1
+builddir=dvb-apps-3d43b280298c
+pkgdesc='Linux DVB API applications and utilities'
+arch=('x86_64' 'i686' 'arm' 'armv6h' 'armv7h' 'aarch64')
+url='https://www.linuxtv.org'
+license=('GPL')
+conflicts=('linuxtv-dvb-apps')
+depends=('glibc')
+makedepends=('gcc')
+source=('https://linuxtv.org/hg/dvb-apps/archive/tip.tar.gz'
+ 'https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-1.1.1.20100223-perl526.patch'
+ 'https://git.busybox.net/buildroot/plain/package/dvb-apps/0003-handle-static-shared-only-build.patch'
+ 'https://git.busybox.net/buildroot/plain/package/dvb-apps/0005-utils-fix-build-with-kernel-headers-4.14.patch'
+ 'atsc_epg-64-bit-and-fault-tolerance.patch' )
+sha256sums=('6ff30437bf514739e9981e1002a0853be10accf827511a7aa6a66f041d95f45a'
+ '4460c9c8f4474fcc776b8d02d1c527584a81dbc84b69db9ed9a8b43ca24d49c5'
+ 'ea5915194b00b7275eaac6902f9a4aa07a61c17e14010b9ea453c0e53c57612a'
+ 'f9793b4e490f43e1cefbb94f44db3d8799c5a6ca51168cb7e79a518e3efbb7ad'
+ '849e6ea61281ad5d678aa6c92107d33564b5e04aca7eb2c122475f70efe9ad00' )
+
+prepare() {
+ cd "$srcdir/$builddir"
+ patch -p1 -i ${srcdir}/0003-handle-static-shared-only-build.patch
+ patch -p1 -i ${srcdir}/0005-utils-fix-build-with-kernel-headers-4.14.patch
+ patch -p1 -i ${srcdir}/linuxtv-dvb-apps-1.1.1.20100223-perl526.patch
+ patch -p1 -i ${srcdir}/atsc_epg-64-bit-and-fault-tolerance.patch
+}
+
+build() {
+ cd "$srcdir/$builddir"
+ make
+}
+
+package() {
+ cd "$srcdir/$builddir"
+ make DESTDIR="${pkgdir}" install
+ # Remove conflict with xbase (FS#37862) by renaming zap to zap-dvb
+ mv -v ${pkgdir}/usr/bin/{zap,zap-dvb}
+}
diff --git a/atsc_epg-64-bit-and-fault-tolerance.patch b/atsc_epg-64-bit-and-fault-tolerance.patch
new file mode 100644
index 00000000000..8d738a9d956
--- /dev/null
+++ b/atsc_epg-64-bit-and-fault-tolerance.patch
@@ -0,0 +1,61 @@
+--- a/util/atsc_epg/atsc_epg.c 2018-10-11 02:56:17.354684264 -0700
++++ b/util/atsc_epg/atsc_epg.c 2018-10-11 13:52:25.086915547 -0700
+@@ -60,8 +60,8 @@
+ void (*old_handler)(int);
+
+ struct atsc_string_buffer {
+- int buf_len;
+- int buf_pos;
++ size_t buf_len;
++ size_t buf_pos;
+ char *string;
+ };
+
+@@ -69,10 +69,10 @@
+ uint16_t id;
+ struct tm start;
+ struct tm end;
+- int title_pos;
+- int title_len;
+- int msg_pos;
+- int msg_len;
++ size_t title_pos;
++ size_t title_len;
++ size_t msg_pos;
++ size_t msg_len;
+ };
+
+ struct atsc_eit_section_info {
+@@ -507,8 +507,8 @@
+ event->msg_pos = channel->msg_buf.buf_pos;
+ if(0 > atsc_text_segment_decode(seg,
+ (uint8_t **)&channel->msg_buf.string,
+- (size_t *)&channel->msg_buf.buf_len,
+- (size_t *)&channel->msg_buf.buf_pos)) {
++ &channel->msg_buf.buf_len,
++ &channel->msg_buf.buf_pos)) {
+ fprintf(stderr, "%s(): error calling "
+ "atsc_text_segment_decode()\n",
+ __FUNCTION__);
+@@ -653,15 +653,16 @@
+ e_info->title_pos = curr_info->title_buf.buf_pos;
+ if(0 > atsc_text_segment_decode(seg,
+ (uint8_t **)&curr_info->title_buf.string,
+- (size_t *)&curr_info->title_buf.buf_len,
+- (size_t *)&curr_info->title_buf.buf_pos)) {
++ &curr_info->title_buf.buf_len,
++ &curr_info->title_buf.buf_pos)) {
+ fprintf(stderr, "%s(): error calling "
+ "atsc_text_segment_decode()\n",
+ __FUNCTION__);
+- return -1;
++ e_info->title_len = 0;
++ } else {
++ e_info->title_len = curr_info->title_buf.buf_pos -
++ e_info->title_pos + 1;
+ }
+- e_info->title_len = curr_info->title_buf.buf_pos -
+- e_info->title_pos + 1;
+ }
+ }
+ }