[packages/linuxtv-dvb-apps] - rel 3, bunch of build fixes
baggins
baggins at pld-linux.org
Mon Aug 10 03:04:57 CEST 2026
commit a02b0358b06ee3fe97e987b14b98cfcd54ad6252
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Mon Aug 10 03:04:39 2026 +0200
- rel 3, bunch of build fixes
gcc15.patch | 140 ++++++++++++++++++++++++++++++++++++++++++++++++++
glibc-2.31.patch | 14 +++++
linuxtv-dvb-apps.spec | 10 +++-
no-CA_SET_PID.patch | 56 ++++++++++++++++++++
perl-5.26.patch | 11 ++++
5 files changed, 230 insertions(+), 1 deletion(-)
---
diff --git a/linuxtv-dvb-apps.spec b/linuxtv-dvb-apps.spec
index f7eb0e2..44645b9 100644
--- a/linuxtv-dvb-apps.spec
+++ b/linuxtv-dvb-apps.spec
@@ -3,12 +3,16 @@ Summary: DVB apps
Summary(pl.UTF-8): Aplikacje dla DVB
Name: linuxtv-dvb-apps
Version: 1.1.1.20120210
-Release: 2
+Release: 3
License: GPL v2+
Group: Applications/System
Source0: http://linuxtv.org/hg/dvb-apps/archive/tip.tar.gz
# Source0-md5: abe1e41a0bad0292e8af1740fa2c3195
Patch0: %{name}-zlib.patch
+Patch1: no-CA_SET_PID.patch
+Patch2: glibc-2.31.patch
+Patch3: perl-5.26.patch
+Patch4: gcc15.patch
URL: http://linuxtv.org/
BuildRequires: libpng-devel
BuildRequires: libusb-compat-devel
@@ -70,6 +74,10 @@ Statyczne biblioteki DVB z projektu linuxtv.
%prep
%setup -q -n dvb-apps-69fc03702a64
%patch -P0 -p1
+%patch -P1 -p1
+%patch -P2 -p1
+%patch -P3 -p1
+%patch -P4 -p1
# prepare %doc
%{__mv} lib/libesg/TODO TODO.libesg
diff --git a/gcc15.patch b/gcc15.patch
new file mode 100644
index 0000000..1f145e7
--- /dev/null
+++ b/gcc15.patch
@@ -0,0 +1,140 @@
+--- dvb-apps-69fc03702a64/util/scan/scan.c~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/scan/scan.c 2026-08-10 02:45:08.258519894 +0200
+@@ -1934,7 +1934,7 @@
+ return -1;
+ }
+
+-static set_delivery_system(int fd, unsigned type)
++static int set_delivery_system(int fd, unsigned type)
+ {
+ struct dtv_properties props;
+ struct dtv_property dvb_prop[1];
+--- dvb-apps-69fc03702a64/util/alevt/cache.c~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/alevt/cache.c 2026-08-10 02:47:11.138524987 +0200
+@@ -137,7 +137,7 @@
+
+
+ static struct vt_page * cache_foreach_pg(struct cache *ca, int pgno, int subno,
+- int dir, int (*func)(), void *data)
++ int dir, int (*func)(void*, struct vt_page*), void *data)
+ {
+ struct vt_page *vtp, *s_vtp = 0;
+
+--- dvb-apps-69fc03702a64/util/alevt/cache.h~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/alevt/cache.h 2026-08-10 02:50:19.455195784 +0200
+@@ -32,7 +32,7 @@
+ struct vt_page *(*put)(struct cache *ca, struct vt_page *vtp);
+ void (*reset)(struct cache *ca);
+ struct vt_page *(*foreach_pg)(struct cache *ca, int pgno, int subno, int dir,
+- int (*func)(), void *data);
++ int (*func)(void*, struct vt_page*), void *data);
+ int (*mode)(struct cache *ca, int mode, int arg);
+ };
+
+--- dvb-apps-69fc03702a64/util/alevt/ui.c.orig 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/alevt/ui.c 2026-08-10 02:58:55.141847606 +0200
+@@ -106,13 +106,13 @@
+ query_page(w, pgno, subno);
+ }
+
+-static int _next_pgno(int *arg, struct vt_page *vtp)
++static int _next_pgno(void *arg, struct vt_page *vtp)
+ {
+ int pgno = vtp->pgno;
+
+- if (arg[0] == pgno) // want different page
++ if (((int*)arg)[0] == pgno) // want different page
+ return 0;
+- if (arg[1]) // and not a hex page
++ if (((int*)arg)[1]) // and not a hex page
+ for (; pgno; pgno >>=4)
+ if ((pgno & 15) > 9)
+ return 0;
+@@ -120,9 +120,9 @@
+ }
+
+
+-static int _next_subno(int *arg, struct vt_page *vtp)
++static int _next_subno(void *arg, struct vt_page *vtp)
+ {
+- return vtp->pgno == arg[0]; // only subpages of this page
++ return vtp->pgno == ((int*)arg)[0]; // only subpages of this page
+ }
+
+
+--- dvb-apps-69fc03702a64/util/alevt/search.c~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/alevt/search.c 2026-08-10 03:00:35.611846979 +0200
+@@ -54,11 +54,12 @@
+ }
+
+
+-static int search_pg(struct search *s, struct vt_page *vtp)
++static int search_pg(void *data, struct vt_page *vtp)
+ {
+ regmatch_t m[1];
+ u8 buf[H *(W+1) + 1];
+ int line[H];
++ struct search *s = (struct search *)data;
+
+ convert(PTR vtp->data, buf, line);
+ if (regexec(s->pattern, buf, 1, m, 0) == 0)
+--- dvb-apps-69fc03702a64/util/alevt/lang.c~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/alevt/lang.c 2026-08-10 03:02:35.101846834 +0200
+@@ -142,6 +142,23 @@
+ }
+
+
++/* check for Greek chars - needs locale iso8859-7 set */
++int is_greek(int c)
++{
++ if( isalpha(c | 0x80)) return 1;
++ return 0;
++}
++
++
++/* check for russian chars - needs locale KOI8-R set */
++int is_koi(int c)
++{
++ if( isalpha(c | 0x80)) return 1;
++ if( c=='&' ) return 1;
++ return 0;
++}
++
++
+ void conv2latin(u8 *p, int n, int lang)
+ {
+ int c, gfx = 0, lat=0;
+@@ -195,23 +212,6 @@
+ }
+
+
+-/* check for Greek chars - needs locale iso8859-7 set */
+-int is_greek(int c)
+-{
+- if( isalpha(c | 0x80)) return 1;
+- return 0;
+-}
+-
+-
+-/* check for russian chars - needs locale KOI8-R set */
+-int is_koi(int c)
+-{
+- if( isalpha(c | 0x80)) return 1;
+- if( c=='&' ) return 1;
+- return 0;
+-}
+-
+-
+ /* teletext to koi8-r conversion */
+ void conv2koi8(u8 *p)
+ {
+--- dvb-apps-69fc03702a64/util/alevt/vbi.c~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/alevt/vbi.c 2026-08-10 03:03:09.581846891 +0200
+@@ -35,7 +35,6 @@
+
+ static u8 *rawbuf; // one common buffer for raw vbi data
+ static int rawbuf_size; // its current size
+-u_int16_t sid;
+ static char *vbi_names[]
+ = { "/dev/vbi", "/dev/vbi0", "/dev/video0", "/dev/dvb/adapter0/demux0",
+ NULL }; // default device names if none was given at the command line
diff --git a/glibc-2.31.patch b/glibc-2.31.patch
new file mode 100644
index 0000000..423a24e
--- /dev/null
+++ b/glibc-2.31.patch
@@ -0,0 +1,14 @@
+--- dvb-apps-69fc03702a64/util/dvbdate/dvbdate.c~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/dvbdate/dvbdate.c 2026-08-10 02:39:40.088503581 +0200
+@@ -309,7 +309,10 @@
+ */
+ int set_time(time_t * new_time)
+ {
+- if (stime(new_time)) {
++ struct timespec s = {0};
++ s.tv_sec = *new_time;
++
++ if (clock_settime(CLOCK_REALTIME, &s)) {
+ perror("Unable to set time");
+ return -1;
+ }
diff --git a/no-CA_SET_PID.patch b/no-CA_SET_PID.patch
new file mode 100644
index 0000000..87984b3
--- /dev/null
+++ b/no-CA_SET_PID.patch
@@ -0,0 +1,56 @@
+--- dvb-apps-69fc03702a64/include/ca.h~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/include/ca.h 2026-08-10 02:38:08.288498028 +0200
+@@ -85,6 +85,5 @@
+ #define CA_GET_MSG _IOR('o', 132, ca_msg_t)
+ #define CA_SEND_MSG _IOW('o', 133, ca_msg_t)
+ #define CA_SET_DESCR _IOW('o', 134, ca_descr_t)
+-#define CA_SET_PID _IOW('o', 135, ca_pid_t)
+
+ #endif
+--- dvb-apps-69fc03702a64/util/dst-utils/dst_test.c~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/dst-utils/dst_test.c 2026-08-10 02:35:19.005152773 +0200
+@@ -111,16 +111,6 @@
+ return 0;
+ }
+
+-static int dst_set_pid(int cafd)
+-{
+- if ((ioctl(cafd, CA_SET_PID)) < 0) {
+- printf("%s: ioctl failed ..\n", __FUNCTION__);
+- return -1;
+- }
+-
+- return 0;
+-}
+-
+ static int dst_get_descr(int cafd)
+ {
+ if ((ioctl(cafd, CA_GET_DESCR_INFO)) < 0) {
+@@ -191,7 +181,6 @@
+ "\t -c capabilities\n"
+ "\t -i info\n"
+ "\t -r reset\n"
+- "\t -p pid\n"
+ "\t -g get descr\n"
+ "\t -s set_descr\n"
+ "\t -a app_info\n"
+@@ -216,7 +205,7 @@
+ return -1;
+ }
+
+- switch (getopt(argc, argv, "cirpgsat")) {
++ switch (getopt(argc, argv, "cirgsat")) {
+ case 'c':
+ printf("%s: Capabilities\n", __FUNCTION__);
+ dst_get_caps(cafd, caps);
+@@ -229,10 +218,6 @@
+ printf("%s: Reset\n", __FUNCTION__);
+ dst_reset(cafd);
+ break;
+- case 'p':
+- printf("%s: PID\n", __FUNCTION__);
+- dst_set_pid(cafd);
+- break;
+ case 'g':
+ printf("%s: Get Desc\n", __FUNCTION__);
+ dst_get_descr(cafd);
diff --git a/perl-5.26.patch b/perl-5.26.patch
new file mode 100644
index 0000000..df5448e
--- /dev/null
+++ b/perl-5.26.patch
@@ -0,0 +1,11 @@
+--- dvb-apps-69fc03702a64/util/scan/section_generate.pl~ 2012-01-24 13:29:08.000000000 +0100
++++ dvb-apps-69fc03702a64/util/scan/section_generate.pl 2026-08-10 02:42:36.615179599 +0200
+@@ -4,7 +4,7 @@
+
+ die "no section perl file given" unless @ARGV;
+
+-my $h = require($ARGV[0]);
++my $h = require("./".$ARGV[0]);
+
+ our $basename;
+ our $debug = $ARGV[1];
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/linuxtv-dvb-apps.git/commitdiff/a02b0358b06ee3fe97e987b14b98cfcd54ad6252
More information about the pld-cvs-commit
mailing list