From: Arne Fitzenreiter Date: Sun, 22 Mar 2020 19:04:14 +0000 (+0000) Subject: vdr: fix build with glibc 2.31 X-Git-Url: http://git.ipfire.org/?p=people%2Fms%2Fipfire-2.x.git;a=commitdiff_plain;h=b6632b766a713d99c890add0339943ba951ada3b vdr: fix build with glibc 2.31 Signed-off-by: Arne Fitzenreiter --- diff --git a/lfs/vdr b/lfs/vdr index d444ae9356..d3958fda99 100644 --- a/lfs/vdr +++ b/lfs/vdr @@ -37,7 +37,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = vdr -PAK_VER = 10 +PAK_VER = 11 DEPS = "vdr_streamdev" @@ -98,6 +98,8 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + # stime was removed from glibc with version 2.31 + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/vdr/vdr-2.4.1_replace_stime.patch # Compile main package. cd $(DIR_APP) && make $(MAKE_OPTIONS) $(MAKETUNING) vdr include-dir diff --git a/src/patches/vdr/vdr-2.4.1_replace_stime.patch b/src/patches/vdr/vdr-2.4.1_replace_stime.patch new file mode 100644 index 0000000000..e0d1c1def4 --- /dev/null +++ b/src/patches/vdr/vdr-2.4.1_replace_stime.patch @@ -0,0 +1,47 @@ +From dcfa8ba29f4c95edbdceb0f1bbae0e62fa40c4e2 Mon Sep 17 00:00:00 2001 +From: Manuel Reimer +Date: Sat, 14 Dec 2019 12:01:13 +0100 +Subject: [PATCH 1/2] Replace obsolete stime() function with clock_settime() + +--- + eit.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/eit.c b/eit.c +index 50d8229..82294dc 100644 +--- a/eit.c ++++ b/eit.c +@@ -391,7 +391,9 @@ cTDT::cTDT(const u_char *Data) + if (abs(diff) > MAX_TIME_DIFF) { + mutex.Lock(); + if (abs(diff) > MAX_ADJ_DIFF) { +- if (stime(&dvbtim) == 0) ++ timespec ts = {0}; ++ ts.tv_sec = dvbtim; ++ if (clock_settime(CLOCK_REALTIME, &ts) == 0) + isyslog("system time changed from %s (%ld) to %s (%ld)", *TimeToString(loctim), loctim, *TimeToString(dvbtim), dvbtim); + else + esyslog("ERROR while setting system time: %m"); + +From 3395a81a07416f54b0aa94ba709b902d72dacce7 Mon Sep 17 00:00:00 2001 +From: Manuel Reimer +Date: Sun, 15 Dec 2019 11:26:42 +0100 +Subject: [PATCH 2/2] Fix "struct timespec has more than one member" warning + +--- + eit.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/eit.c b/eit.c +index 82294dc..098e627 100644 +--- a/eit.c ++++ b/eit.c +@@ -391,7 +391,7 @@ cTDT::cTDT(const u_char *Data) + if (abs(diff) > MAX_TIME_DIFF) { + mutex.Lock(); + if (abs(diff) > MAX_ADJ_DIFF) { +- timespec ts = {0}; ++ timespec ts = {}; + ts.tv_sec = dvbtim; + if (clock_settime(CLOCK_REALTIME, &ts) == 0) + isyslog("system time changed from %s (%ld) to %s (%ld)", *TimeToString(loctim), loctim, *TimeToString(dvbtim), dvbtim);