[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