2
1
Эх сурвалжийг харах

package/dvb-apps: fix build with gcc >= 14

Workaround for glibc 2.31 added by commit
bbe170dbcf4ddb63e76299214e2c18b16e5cf016 back in 2020 is incorrect as it
writes new_time (a pointer on time_t) into timespec.tv_sec (i.e. time_t).
This mistake raises the following build failure with gcc >= 14:

dvbdate.c: In function 'set_time':
dvbdate.c:313:18: error: assignment to '__time_t' {aka 'long int'} from 'time_t *' {aka 'long int *'} makes integer from pointer without a cast [-Wint-conversion]
  313 |         s.tv_sec = new_time;
      |                  ^

It shall be noted that gentoo also spotted this mistake:
https://gitweb.gentoo.org/repo/gentoo.git/commit/media-tv/linuxtv-dvb-apps/files?id=81e99f1c753d1cb564be29b22dcd8927830c4b9a

Fixes: bbe170dbcf4ddb63e76299214e2c18b16e5cf016
 - http://autobuild.buildroot.org/results/e99b9ebf602d307fbc32f2a367e95177f53a68f9

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Fabrice Fontaine 1 жил өмнө
parent
commit
fcfc399b1d

+ 3 - 1
package/dvb-apps/0006-fix-glibc-2.31.patch

@@ -4,6 +4,8 @@ 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>
+[Fabrice: fix for gcc >= 14]
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
 
 --- a/util/dvbdate/dvbdate.c
 +++ b/util/dvbdate/dvbdate.c
@@ -13,7 +15,7 @@ Signed-off-by: Dagg Stompler <daggs@gmx.com>
  {
 -	if (stime(new_time)) {
 +	struct timespec s = {0};
-+	s.tv_sec = new_time;
++	s.tv_sec = *new_time;
 +
 +	if (clock_settime(CLOCK_REALTIME, &s)) {
  		perror("Unable to set time");