control: tag -1 + pending

Dear maintainer,

On 2020-07-13 23:44, Aurelien Jarno wrote:
> control: severity -1 serious
> 
> On 2020-07-03 22:27, Aurelien Jarno wrote:
> > Source: linuxtv-dvb-apps
> > Version: 1.1.1+rev1500-1.2
> > Severity: important
> > Tags: patch upstream
> > 
> > linuxtv-dvb-apps fails to build from source with glibc 2.31:
> > 
> > | CC dvbdate
> > | 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
> > | /usr/bin/ld: /tmp/cchQDddv.o: in function `set_time':
> > | ./util/dvbdate/dvbdate.c:312: undefined reference to `stime'
> > | /usr/bin/ld: ./util/dvbdate/dvbdate.c:312: undefined reference to `stime'
> > | collect2: error: ld returned 1 exit status
> > | make[3]: *** [../../Make.rules:82: dvbdate] Error 1
> > | make[3]: Leaving directory '/<<PKGBUILDDIR>>/util/dvbdate'
> > | make[2]: *** [Makefile:10: all] Error 2
> > | make[2]: Leaving directory '/<<PKGBUILDDIR>>/util'
> > | make[1]: *** [Makefile:14: all] Error 2
> > | make[1]: Leaving directory '/<<PKGBUILDDIR>>'
> > | dh_auto_build: error: make -j1 returned exit code 2
> > | make: *** [debian/rules:4: build] Error 25
> > | dpkg-buildpackage: error: debian/rules build subprocess returned exit 
> > status 2
> > 
> > The full build log is available there:
> > http://qa-logs.debian.net/2020/06/24/linuxtv-dvb-apps_1.1.1+rev1500-1.2_unstable_glibc-exp.log
> > 
> > The stime function has been marked as obsolete for some time, and since
> > glibc 2.31 it is no longer available to newly linked binaries. The
> > clock_settime function should be used instead.
> > 
> > You will find attached a patch fixing that. It would be nice if it can
> > be fixed relatively soon so that we can start the transition.
> > 
> 
> Note that glibc 2.31 is now in unstable. I am therefore increasing the
> severity to serious.

I have prepared an NMU for linuxtv-dvb-apps (versioned as
1.1.1+rev1500-1.3), fixing the build issue with glibc 2.31. You will
find the diff attached. I have uploaded it to DELAYED/7. Please feel
free to tell me if I should delay it longer or cancel it altogether.

Regards,
Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurel...@aurel32.net                 http://www.aurel32.net
diff -Nru linuxtv-dvb-apps-1.1.1+rev1500/debian/changelog linuxtv-dvb-apps-1.1.1+rev1500/debian/changelog
--- linuxtv-dvb-apps-1.1.1+rev1500/debian/changelog	2018-01-23 17:52:14.000000000 +0000
+++ linuxtv-dvb-apps-1.1.1+rev1500/debian/changelog	2020-07-19 17:11:31.000000000 +0000
@@ -1,3 +1,11 @@
+linuxtv-dvb-apps (1.1.1+rev1500-1.3) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Add a patch to replace the obsolete stime function (removed in glibc 2.31)
+    by clock_settime. (Closes: #964223)
+
+ -- Aurelien Jarno <aure...@debian.org>  Sun, 19 Jul 2020 19:11:31 +0200
+
 linuxtv-dvb-apps (1.1.1+rev1500-1.2) unstable; urgency=low
 
   * Non-maintainer upload.
diff -Nru linuxtv-dvb-apps-1.1.1+rev1500/debian/patches/glibc-stime.patch linuxtv-dvb-apps-1.1.1+rev1500/debian/patches/glibc-stime.patch
--- linuxtv-dvb-apps-1.1.1+rev1500/debian/patches/glibc-stime.patch	1970-01-01 00:00:00.000000000 +0000
+++ linuxtv-dvb-apps-1.1.1+rev1500/debian/patches/glibc-stime.patch	2020-07-19 17:11:31.000000000 +0000
@@ -0,0 +1,16 @@
+The obsolete stime function is no longer available to newly linked binaries
+since glibc 2.31. Replace it by clock_settime.
+
+--- a/util/dvbdate/dvbdate.c
++++ b/util/dvbdate/dvbdate.c
+@@ -309,7 +309,9 @@ int atsc_scan_date(time_t *rx_time, unsi
+  */
+ int set_time(time_t * new_time)
+ {
+-	if (stime(new_time)) {
++	struct timespec ts = { .tv_sec = new_time };
++
++	if (clock_settime(CLOCK_REALTIME, &ts)) {
+ 		perror("Unable to set time");
+ 		return -1;
+ 	}
diff -Nru linuxtv-dvb-apps-1.1.1+rev1500/debian/patches/series linuxtv-dvb-apps-1.1.1+rev1500/debian/patches/series
--- linuxtv-dvb-apps-1.1.1+rev1500/debian/patches/series	2018-01-23 17:50:35.000000000 +0000
+++ linuxtv-dvb-apps-1.1.1+rev1500/debian/patches/series	2020-07-19 17:11:31.000000000 +0000
@@ -9,3 +9,4 @@
 use-ldflags.patch
 fix-build-libpng16.patch
 dst_test-no-set-id.patch
+glibc-stime.patch

Reply via email to