diff mbox series

[v2] package/dvb-apps: fix build failure with glibc 2.31

Message ID 20200926170920.716-1-daggs@gmx.com
State Accepted
Headers show
Series [v2] package/dvb-apps: fix build failure with glibc 2.31 | expand

Commit Message

Dagg Stompler Sept. 26, 2020, 5:09 p.m. UTC
dvb-apps fails to build with glibc 2.31 with the following error:
| dvbdate.c: In function set_time:
| dvbdate.c:312:6: warning: implicit declaration of function stime; did you mean ctime? [-Wimplicit-function-declaration]
| 312 | if (stime(new_time)) {
| | ^~~~~
| | ctime

Fixes:

http://autobuild.buildroot.net/results/95f30c5e6af2274418bb44a20da7caac69f1dd68/

references:
1. https://gitweb.gentoo.org/repo/gentoo.git/commit/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-glibc-2.31.patch?id=eb705f892eae45b93306c1de1407c1c22ac23956
2. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=964223

Signed-off-by: Dagg Stompler <daggs@gmx.com>
---
Changes v1 -> v2:
 1. fix coomit header (Thomas Petazzoni)
 2. add reference to autobuilder failure (Thomas Petazzoni)
 3. rework patch (Thomas Petazzoni)
 4. added maintainer to CC

 package/dvb-apps/0006-fix-glibc-2.31.patch | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
 create mode 100644 package/dvb-apps/0006-fix-glibc-2.31.patch

--
2.28.0

Comments

Thomas Petazzoni Oct. 15, 2020, 9:12 p.m. UTC | #1
On Sat, 26 Sep 2020 20:09:20 +0300
Dagg Stompler <daggs@gmx.com> wrote:

> dvb-apps fails to build with glibc 2.31 with the following error:
> | dvbdate.c: In function set_time:
> | dvbdate.c:312:6: warning: implicit declaration of function stime; did you mean ctime? [-Wimplicit-function-declaration]
> | 312 | if (stime(new_time)) {
> | | ^~~~~
> | | ctime
> 
> Fixes:
> 
> http://autobuild.buildroot.net/results/95f30c5e6af2274418bb44a20da7caac69f1dd68/
> 
> references:
> 1. https://gitweb.gentoo.org/repo/gentoo.git/commit/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-glibc-2.31.patch?id=eb705f892eae45b93306c1de1407c1c22ac23956
> 2. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=964223
> 
> Signed-off-by: Dagg Stompler <daggs@gmx.com>
> ---
> Changes v1 -> v2:
>  1. fix coomit header (Thomas Petazzoni)
>  2. add reference to autobuilder failure (Thomas Petazzoni)
>  3. rework patch (Thomas Petazzoni)
>  4. added maintainer to CC

Applied to master, thanks. I'm wondering: is dvb-apps still useful? It
doesn't seem to really be maintained anywhere...

Thanks,

Thomas
Yann E. MORIN Oct. 16, 2020, 8:59 p.m. UTC | #2
Thomas, All,

On 2020-10-15 23:12 +0200, Thomas Petazzoni spake thusly:
> On Sat, 26 Sep 2020 20:09:20 +0300
> > dvb-apps fails to build with glibc 2.31 with the following error:
> > Fixes:
> > http://autobuild.buildroot.net/results/95f30c5e6af2274418bb44a20da7caac69f1dd68/
> Applied to master, thanks. I'm wondering: is dvb-apps still useful? It
> doesn't seem to really be maintained anywhere...

Last commit was on 2014-03-21, more than 6 years ago now. The project is
in the "Old projects not maintained anymore at LinuxTV.org" section of
linuxtv.org.

The homepage https://www.linuxtv.org/wiki/index.php/LinuxTV_dvb-apps has
not been updated since 2013-02-16.

It seems they have been replaced by a set of utilties in the v4l-utils
tree: https://git.linuxtv.org/v4l-utils.git/tree/utils at least
regarding the scanning utilities, and by a repository dedicated to
hosting the scnan tables: https://git.linuxtv.org/dtv-scan-tables.git/

dvb-apps still has a few utilities that are not avilable elsewhere, like
dvbdate, to set the clock from the DTV signal, for example.

TBH, I lost most interest in these DTV-related packages since the time I
added them, 6 to 8 years ago now, and I no longer use them anymore, so I
am not really sure how they relate to each other now...

Regards,
Yann E. MORIN.
diff mbox series

Patch

diff --git a/package/dvb-apps/0006-fix-glibc-2.31.patch b/package/dvb-apps/0006-fix-glibc-2.31.patch
new file mode 100644
index 0000000000..079a24f149
--- /dev/null
+++ b/package/dvb-apps/0006-fix-glibc-2.31.patch
@@ -0,0 +1,21 @@ 
+dvbdate: fix compilation error with glibc 2.31
+
+as stime func doesn't exists anymore in newer versions of glibc >= 2.31 due
+to obseletion, a replacment with clock_settime is inorder to fix the issue.
+
+Signed-off-by: Dagg Stompler <daggs@gmx.com>
+
+--- a/util/dvbdate/dvbdate.c
++++ b/util/dvbdate/dvbdate.c
+@@ -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;
+ 	}