From de025383f75f33177d17780e6e8498c01d6735f4 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Sat, 11 Sep 2021 13:52:16 +0200 Subject: [PATCH 01/17] Add vdr-plugin-live-noCopyTimer.patch to avoid copying vdr timer objects --- vdr-live.spec | 10 +- vdr-plugin-live-noCopyTimer.patch | 378 ++++++++++++++++++++++++++++++ 2 files changed, 385 insertions(+), 3 deletions(-) create mode 100644 vdr-plugin-live-noCopyTimer.patch diff --git a/vdr-live.spec b/vdr-live.spec index b86017a..90d620d 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -6,7 +6,7 @@ Name: vdr-live Version: 3.0.10 #Release: 0.2.%%{gitdate}git%%{shortcommit0}%%{?dist} -Release: 2%{?dist} +Release: 3%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT @@ -15,6 +15,7 @@ URL: https://github.com/MarkusEh/vdr-plugin-live #Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/%%{commit0}/%%{name}-%%{version}-%%{shortcommit0}.tar.gz Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: %{name}.conf +Patch0: vdr-plugin-live-noCopyTimer.patch BuildRequires: make BuildRequires: gcc-c++ @@ -77,8 +78,11 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog -* Fri Jul 23 2021 Fedora Release Engineering - 3.0.10-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild +* Sat Sep 11 2021 Martin Gansser - 3.0.10-3 +- Add vdr-plugin-live-noCopyTimer.patch to avoid copying vdr timer objects + +* Fri Aug 06 2021 Martin Gansser - 3.0.10-2 +- Rebuilt fixes unresolved symbol * Sun Jul 18 2021 Martin Gansser - 3.0.10-1 - Update to 3.0.10 diff --git a/vdr-plugin-live-noCopyTimer.patch b/vdr-plugin-live-noCopyTimer.patch new file mode 100644 index 0000000..50603ca --- /dev/null +++ b/vdr-plugin-live-noCopyTimer.patch @@ -0,0 +1,378 @@ +diff -Naur vdr-plugin-live-3.0.10/pages/searchresults.ecpp vdr-plugin-live-master/pages/searchresults.ecpp +--- vdr-plugin-live-3.0.10/pages/searchresults.ecpp 2021-07-18 14:51:47.000000000 +0200 ++++ vdr-plugin-live-master/pages/searchresults.ecpp 2021-09-10 14:11:46.000000000 +0200 +@@ -62,53 +62,60 @@ + <%cpp> + std::string current_day = ""; + +-#if VDRVERSNUM >= 20301 +- LOCK_CHANNELS_READ; +-#endif + for (SearchResults::iterator result = results.begin(); result != results.end(); ++result) { + #if VDRVERSNUM >= 20301 +- cChannel* channel = (cChannel *)Channels->GetByChannelID(result->Channel()); ++ cStateKey StateKey; ++ if (const cChannels *Channels = cChannels::GetChannelsRead(StateKey)) { ++ #ifdef DEBUG_LOCK ++ dsyslog("live: pages/searchresults.ecpp LOCK_CHANNELS_READ"); ++ #endif ++ cChannel* channel = (cChannel *)Channels->GetByChannelID(result->Channel()); + #else + cChannel* channel = Channels.GetByChannelID(result->Channel()); + #endif +- if (!channel) continue; +- std::string channelname = channel->Name(); +- int channelnr = channel->Number(); +- std::string start(result->StartTime() ? FormatDateTime(tr("%I:%M %p"), result->StartTime()) : ""); +- std::string end(result->StopTime() ? FormatDateTime(tr("%I:%M %p"), result->StopTime()) : ""); +- std::string day(result->StartTime() ? FormatDateTime(tr("%A, %b %d %Y"), result->StartTime()) : ""); +- std::string description = result->Description(); +- std::string epgid = EpgEvents::EncodeDomId(result->Channel(), result->EventId()); ++ if (!channel) { ++ StateKey.Remove(); ++ continue; ++ } ++ std::string channelname = channel->Name(); ++ int channelnr = channel->Number(); ++ std::string start(result->StartTime() ? FormatDateTime(tr("%I:%M %p"), result->StartTime()) : ""); ++ std::string end(result->StopTime() ? FormatDateTime(tr("%I:%M %p"), result->StopTime()) : ""); ++ std::string day(result->StartTime() ? FormatDateTime(tr("%A, %b %d %Y"), result->StartTime()) : ""); ++ std::string description = result->Description(); ++ std::string epgid = EpgEvents::EncodeDomId(result->Channel(), result->EventId()); + +- bool truncated = false; ++ bool truncated = false; + +- bool bottom = false; +- SearchResults::iterator nextResult = result; ++nextResult; +- if (nextResult == results.end()) +- bottom = true; +- else { +- std::string nextDay(nextResult->StartTime() ? FormatDateTime(tr("%A, %b %d %Y"), nextResult->StartTime()) : ""); +- bottom = (day != nextDay); +- } ++ bool bottom = false; ++ SearchResults::iterator nextResult = result; ++nextResult; ++ if (nextResult == results.end()) ++ bottom = true; ++ else { ++ std::string nextDay(nextResult->StartTime() ? FormatDateTime(tr("%A, %b %d %Y"), nextResult->StartTime()) : ""); ++ bottom = (day != nextDay); ++ } + +- if (current_day != day) { +- if (current_day != "") { ++ if (current_day != day) { ++ if (current_day != "") { + +- +- +- ++ ++ ++ ++% } ++ ++
<$ day $>
++ ++% current_day = day; + % } +- +-
<$ day $>
+- +-% current_day = day; ++% StateKey.Remove(); // release channels read lock before calling event_timer which make a timers read lock ++ ++ "><& pageelems.event_timer epgid=(epgid) &> ++ "> ++ ">
<$ start $> - <$ end $>
++ "> ++ + % } +- +- "><& pageelems.event_timer epgid=(epgid) &> +- "> +- ">
<$ start $> - <$ end $>
+- "> +- + % } + + +diff -Naur vdr-plugin-live-3.0.10/pages/timers.ecpp vdr-plugin-live-master/pages/timers.ecpp +--- vdr-plugin-live-3.0.10/pages/timers.ecpp 2021-07-18 14:51:47.000000000 +0200 ++++ vdr-plugin-live-master/pages/timers.ecpp 2021-09-10 14:11:46.000000000 +0200 +@@ -37,7 +37,7 @@ + timer = 0; + if ( !timerid.empty() ) { + std::string tId = SortedTimers::DecodeDomId(timerid); +- // dsyslog("live: DEBUG: TIMER: tId = %s", tId.c_str()); ++// dsyslog("live: DEBUG: TIMER: tId = %s", tId.c_str()); + timer = timers.GetByTimerId(tId); + if ( timer == 0 ) + throw HtmlError( tr("Couldn't find timer. Maybe you mistyped your request?") ); +@@ -70,25 +70,26 @@ + <& pageelems.logo &> + <& menu active=("timers") component=("timers.timer_actions")> +
+-% if (timers.size() == 0) { ++<%cpp> ++ #ifdef DEBUG_LOCK ++ dsyslog("live: pages/timers.ecpp LOCK_TIMERS_READ"); ++ #endif ++ LOCK_TIMERS_READ; ++ cSortedTimers sortedTimers(Timers); ++ if (sortedTimers.Size() == 0) { ++ + <$ tr("No timer defined") $> + % } else { + + <%cpp> + // output of the timer list: +- for (SortedTimers::iterator timer = timers.begin(); timer != timers.end(); ++timer) { +- EpgInfoPtr epgEvent; ++ for (int i = 0; i < sortedTimers.Size(); i++) { ++ const cTimer *timer = sortedTimers[i]; ++ EpgInfoPtr epgEvent; + std::string longDescription; + std::string searchTimName; + std::string searchTimId; +-#if VDRVERSNUM >= 20301 +- if (!timer->Event()) { +- LOCK_SCHEDULES_READ; +- timer->SetEventFromSchedule(Schedules); +- } +-#else +- if (!timer->Event()) timer->SetEventFromSchedule(); +-#endif ++ + if (timer->Event()) + { + epgEvent = EpgEvents::CreateEpgInfo(timer->Channel(), timer->Event()); +@@ -98,13 +99,13 @@ + searchTimName = SortedTimers::SearchTimerInfo(*timer, "searchtimer"); + searchTimId = SortedTimers::SearchTimerInfo(*timer, "s-id"); + } +- std::string currentDay = SortedTimers::GetTimerDays(*timer); +- SortedTimers::iterator nextTimer = timer; ++nextTimer; ++ std::string currentDay = SortedTimers::GetTimerDays(timer); ++ const cTimer *nextTimer = NULL; ++ if (i < (sortedTimers.Size() - 1)) nextTimer = sortedTimers[i + 1]; + bool bottom = false; +- if (nextTimer == timers.end()) +- bottom = true; ++ if (i == sortedTimers.Size() - 1) bottom = true; + else { +- std::string nextDay = SortedTimers::GetTimerDays(*nextTimer); ++ std::string nextDay = SortedTimers::GetTimerDays(nextTimer); + bottom = (currentDay != nextDay); + } + if (previousDay != currentDay) { +diff -Naur vdr-plugin-live-3.0.10/timers.cpp vdr-plugin-live-master/timers.cpp +--- vdr-plugin-live-3.0.10/timers.cpp 2021-07-18 14:51:47.000000000 +0200 ++++ vdr-plugin-live-master/timers.cpp 2021-09-10 14:11:46.000000000 +0200 +@@ -11,11 +11,6 @@ + #include + #include + +-static bool operator<( cTimer const& left, cTimer const& right ) +-{ +- return left.Compare( right ) < 0; +-} +- + namespace vdrlive { + + static char const* const TIMER_DELETE = "DELETE"; +@@ -26,7 +21,6 @@ + : m_state( 0 ) + #endif + { +- ReloadTimers(); + } + + std::string SortedTimers::GetTimerId( cTimer const& timer ) +@@ -46,6 +40,11 @@ + } + + #if VDRVERSNUM >= 20301 ++ #ifdef DEBUG_LOCK ++ dsyslog("live: timers.cpp SortedTimers::GetByTimerId() LOCK_TIMERS_READ"); ++ dsyslog("live: timers.cpp SortedTimers::GetByTimerId() LOCK_CHANNELS_READ"); ++ #endif ++ LOCK_TIMERS_READ + LOCK_CHANNELS_READ; + cChannel* channel = (cChannel *)Channels->GetByChannelID( tChannelID::FromString( parts[0].c_str() ) ); + #else +@@ -64,7 +63,7 @@ + + cMutexLock MutexLock(&m_mutex); + +- for ( SortedTimers::iterator timer = begin(); timer != end(); ++timer ) { ++ for (cTimer* timer = (cTimer *)Timers->First(); timer; timer = (cTimer *)Timers->Next(timer)) { + if ( timer->Channel() == channel && + ( ( weekdays != 0 && timer->WeekDays() == weekdays ) || ( weekdays == 0 && timer->Day() == day ) ) && + timer->Start() == start && timer->Stop() == stop ) +@@ -94,33 +93,12 @@ + } + + +- void SortedTimers::ReloadTimers() +- { +-// dsyslog("live: SortedTimers::ReloadTimers() reloading timers"); +- +- cMutexLock MutexLock(&m_mutex); +- +- clear(); +-#if VDRVERSNUM >= 20301 +- { +- LOCK_TIMERS_READ; +- for ( cTimer* timer = (cTimer *)Timers->First(); timer; timer = (cTimer *)Timers->Next( timer ) ) { +- push_back( *timer ); +- } +- } +-#else +- for ( cTimer* timer = Timers.First(); timer; timer = Timers.Next( timer ) ) { +- push_back( *timer ); +- } +-#endif +- sort(); +- } +- +- std::string SortedTimers::GetTimerDays(cTimer const& timer) ++ std::string SortedTimers::GetTimerDays(cTimer const *timer) + { +- std::string currentDay = timer.WeekDays() > 0 ? +- *cTimer::PrintDay(0, timer.WeekDays(), true) : +- FormatDateTime(tr("%A, %x"), timer.Day()); ++ if (!timer) return ""; ++ std::string currentDay = timer->WeekDays() > 0 ? ++ *cTimer::PrintDay(0, timer->WeekDays(), true) : ++ FormatDateTime(tr("%A, %x"), timer->Day()); + return currentDay; + } + +@@ -269,7 +247,6 @@ + if ( m_updateTimers.size() > 0 ) { + DoUpdateTimers(); + } +- DoReloadTimers(); + // dsyslog("live: SV: signalling waiters"); + m_updateWait.Broadcast(); + } +@@ -332,6 +309,9 @@ + } + #if VDRVERSNUM >= 20301 + dsyslog("live: DoInsertTimer() add local timer"); ++ #ifdef DEBUG_LOCK ++ dsyslog("live: timers.cpp TimerManager::DoInsertTimer() LOCK_TIMERS_WRITE"); ++ #endif + LOCK_TIMERS_WRITE; + Timers->SetExplicitModify(); + const cTimer *checkTimer = Timers->GetTimer( newTimer.get() ); +@@ -418,6 +398,9 @@ + else { // old and new are local + dsyslog("live: DoUpdateTimer() old and new timer are local"); + #if VDRVERSNUM >= 20301 ++ #ifdef DEBUG_LOCK ++ dsyslog("live: timers.cpp TimerManager::DoUpdateTimer() LOCK_TIMERS_WRITE"); ++ #endif + LOCK_TIMERS_WRITE; + Timers->SetExplicitModify(); + cTimer* oldTimer = Timers->GetById( timerData.id, timerData.oldRemote ); +@@ -494,6 +477,9 @@ + #endif + + #if VDRVERSNUM >= 20301 ++ #ifdef DEBUG_LOCK ++ dsyslog("live: timers.cpp TimerManager::DoDeleteTimer() LOCK_TIMERS_WRITE"); ++ #endif + LOCK_TIMERS_WRITE; + Timers->SetExplicitModify(); + cTimer* oldTimer = Timers->GetById( timerData.id, timerData.remote ); +@@ -527,6 +513,9 @@ + void TimerManager::DoToggleTimer( timerStruct& timerData ) + { + if ( timerData.remote ) { // toggle remote timer via svdrpsend ++ #ifdef DEBUG_LOCK ++ dsyslog("live: timers.cpp TimerManager::DoToggleTimer() LOCK_TIMERS_READ"); ++ #endif + LOCK_TIMERS_READ; + const cTimer* toggleTimer = Timers->GetById( timerData.id, timerData.remote ); + std::string command = "MODT "; +@@ -571,6 +560,9 @@ + #endif + + #if VDRVERSNUM >= 20301 ++ #ifdef DEBUG_LOCK ++ dsyslog("live: timers.cpp TimerManager::DoToggleTimer() LOCK_TIMERS_WRITE"); ++ #endif + LOCK_TIMERS_WRITE; + Timers->SetExplicitModify(); + cTimer* toggleTimer = Timers->GetById( timerData.id, timerData.remote ); +@@ -616,20 +608,18 @@ + const cTimer* TimerManager::GetTimer(tEventID eventid, tChannelID channelid) + { + cMutexLock timersLock( &LiveTimerManager() ); +- SortedTimers& timers = LiveTimerManager().GetTimers(); + +- for ( SortedTimers::iterator timer = timers.begin(); timer != timers.end(); ++timer ) ++ #ifdef DEBUG_LOCK ++ dsyslog("live: timers.cpp TimerManager::GetTimer() LOCK_TIMERS_READ"); ++ #endif ++ LOCK_TIMERS_READ; ++ for (cTimer* timer = (cTimer *)Timers->First(); timer; timer = (cTimer *)Timers->Next(timer)) { + if (timer->Channel() && timer->Channel()->GetChannelID() == channelid) + { +-#if VDRVERSNUM >= 20301 +- LOCK_SCHEDULES_READ; +- if (!timer->Event()) timer->SetEventFromSchedule(Schedules); +-#else +- if (!timer->Event()) timer->SetEventFromSchedule(); +-#endif + if (timer->Event() && timer->Event()->EventID() == eventid) + return &*timer; + } ++ } + return NULL; + } + +diff -Naur vdr-plugin-live-3.0.10/timers.h vdr-plugin-live-master/timers.h +--- vdr-plugin-live-3.0.10/timers.h 2021-07-18 14:51:47.000000000 +0200 ++++ vdr-plugin-live-master/timers.h 2021-09-10 14:11:46.000000000 +0200 +@@ -31,7 +31,7 @@ + bool Modified() { return Timers.Modified(m_state); } + #endif + +- static std::string GetTimerDays(cTimer const& timer); ++ static std::string GetTimerDays(cTimer const *timer); + static std::string GetTimerInfo(cTimer const& timer); + static std::string SearchTimerInfo(cTimer const& timer, std::string const& value); + +@@ -47,7 +47,6 @@ + int m_state; + #endif + +- void ReloadTimers(); + }; + + class TimerManager: public cMutex +@@ -64,7 +63,6 @@ + void ToggleTimerActive( int timerId, const char* remote); + // may only be called from Plugin::MainThreadHook + void DoPendingWork(); +- void DoReloadTimers() { m_timers.ReloadTimers(); m_reloadTimers = false; } + const cTimer* GetTimer(tEventID eventid, tChannelID channelid); + void SetReloadTimers() { m_reloadTimers = true; } + +diff -Naur vdr-plugin-live-3.0.10/tools.h vdr-plugin-live-master/tools.h +--- vdr-plugin-live-3.0.10/tools.h 2021-07-18 14:51:47.000000000 +0200 ++++ vdr-plugin-live-master/tools.h 2021-09-10 14:11:46.000000000 +0200 +@@ -1,6 +1,9 @@ + #ifndef VDR_LIVE_TOOLS_H + #define VDR_LIVE_TOOLS_H + ++// uncomment to debug lock sequence ++// #define DEBUG_LOCK ++ + // STL headers need to be before VDR tools.h (included by ) + #include + #include From d0307d64f69e6662729fbc570d166b0a6cac09ca Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Thu, 28 Oct 2021 11:09:41 +0200 Subject: [PATCH 02/17] Update to 3.1.0 --- sources | 2 +- vdr-live.spec | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 8cec65c..71eb72f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vdr-live-3.0.12.tar.gz) = 21c32645caefb3177c9a984de98febcbea6926c744ad2c8cfe3053da6cbd644868ca783c4c9d587c0fd66a26f6051443cb3d22bc7637bebddf70fd8b1559d637 +SHA512 (vdr-live-3.1.0.tar.gz) = 2c753816ced623963ce805f17311255534f33b31607d80ce29847d14fc98e2f46dfc8f51d74c0e9292f7b3d14619b98b7add0a261a4b30410c9949c6b3c07934 diff --git a/vdr-live.spec b/vdr-live.spec index 333cef1..4b285a6 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -4,7 +4,7 @@ %global gitdate 20210307 Name: vdr-live -Version: 3.0.12 +Version: 3.1.0 #Release: 0.2.%%{gitdate}git%%{shortcommit0}%%{?dist} Release: 1%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR @@ -77,6 +77,9 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Thu Oct 28 2021 Martin Gansser - 3.1.0-1 +- Update to 3.1.0 + * Fri Oct 15 2021 Martin Gansser - 3.0.12-1 - Update to 3.0.12 From b794b05abe1b7ec512f4a28e36c1b73208f31a5a Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Mon, 1 Nov 2021 08:16:56 +0100 Subject: [PATCH 03/17] Update to 3.1.1 --- sources | 2 +- vdr-live.spec | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 71eb72f..f1cd35f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vdr-live-3.1.0.tar.gz) = 2c753816ced623963ce805f17311255534f33b31607d80ce29847d14fc98e2f46dfc8f51d74c0e9292f7b3d14619b98b7add0a261a4b30410c9949c6b3c07934 +SHA512 (vdr-live-3.1.1.tar.gz) = 4e9614f9004d908f8143dd2620fd837892f112172cf7fd1b263d97d9aea583c74af80331676706f64e5af7f039cc5d1d62c08512facf70a5420d510a1cec1150 diff --git a/vdr-live.spec b/vdr-live.spec index 4b285a6..4cfce66 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -4,7 +4,7 @@ %global gitdate 20210307 Name: vdr-live -Version: 3.1.0 +Version: 3.1.1 #Release: 0.2.%%{gitdate}git%%{shortcommit0}%%{?dist} Release: 1%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR @@ -77,6 +77,9 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Mon Nov 01 2021 Martin Gansser - 3.1.1-1 +- Update to 3.1.1 + * Thu Oct 28 2021 Martin Gansser - 3.1.0-1 - Update to 3.1.0 From 1782c276ec938343353bdc2155df5494f80a56f4 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Sat, 6 Nov 2021 09:56:00 +0100 Subject: [PATCH 04/17] Build compatibility to g++11 --- vdr-live.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/vdr-live.spec b/vdr-live.spec index 4cfce66..fc0e0c6 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -6,7 +6,7 @@ Name: vdr-live Version: 3.1.1 #Release: 0.2.%%{gitdate}git%%{shortcommit0}%%{?dist} -Release: 1%{?dist} +Release: 2%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT @@ -56,7 +56,7 @@ rm -rf httpd iconv -f iso-8859-1 -t utf-8 README > README.utf8 ; mv README.utf8 README %build -%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" +%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++11 -fPIC" %install %make_install @@ -77,6 +77,9 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Fri Nov 5 2021 Dirk Nehring - 3.1.1-2 +- Build compatibility to g++11 + * Mon Nov 01 2021 Martin Gansser - 3.1.1-1 - Update to 3.1.1 From b73f27c1759fbc71dc6370ebaabedb59f1678ad6 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Mon, 15 Nov 2021 08:22:28 +0100 Subject: [PATCH 05/17] Update to 3.1.3 --- sources | 2 +- vdr-live.spec | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sources b/sources index f1cd35f..5b89b5e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vdr-live-3.1.1.tar.gz) = 4e9614f9004d908f8143dd2620fd837892f112172cf7fd1b263d97d9aea583c74af80331676706f64e5af7f039cc5d1d62c08512facf70a5420d510a1cec1150 +SHA512 (vdr-live-3.1.3.tar.gz) = 5f0a6358fae5a351872baddac5522725d4b6ad7a9c45bf02945c9e3f2db77ed3dc8065be93ac1ebe41fd74f61605b6d0ff2486f46b111c60594aab6bc2649897 diff --git a/vdr-live.spec b/vdr-live.spec index fc0e0c6..ccad61e 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -4,9 +4,9 @@ %global gitdate 20210307 Name: vdr-live -Version: 3.1.1 +Version: 3.1.3 #Release: 0.2.%%{gitdate}git%%{shortcommit0}%%{?dist} -Release: 2%{?dist} +Release: 1%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT @@ -77,6 +77,9 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Mon Nov 15 2021 Martin Gansser - 3.1.3-1 +- Update to 3.1.3 + * Fri Nov 5 2021 Dirk Nehring - 3.1.1-2 - Build compatibility to g++11 From ff97a6646e025a2132549c81ca96e8a401281b22 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Tue, 28 Dec 2021 11:40:40 +0100 Subject: [PATCH 06/17] Update to 3.1.3 --- vdr-live.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vdr-live.spec b/vdr-live.spec index ccad61e..6d4b0ad 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -56,7 +56,7 @@ rm -rf httpd iconv -f iso-8859-1 -t utf-8 README > README.utf8 ; mv README.utf8 README %build -%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++11 -fPIC" +%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" %install %make_install From 722d755e985522c200ed151a4a7e8f946a585d26 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Tue, 28 Dec 2021 12:06:27 +0100 Subject: [PATCH 07/17] Replace obsolete pcre by pcre2 Update to 3.1.4-0.1.20211228git0fbd9b3 --- sources | 2 +- vdr-live.spec | 26 +++++++++++++++----------- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/sources b/sources index 5b89b5e..40e15e3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vdr-live-3.1.3.tar.gz) = 5f0a6358fae5a351872baddac5522725d4b6ad7a9c45bf02945c9e3f2db77ed3dc8065be93ac1ebe41fd74f61605b6d0ff2486f46b111c60594aab6bc2649897 +SHA512 (vdr-live-3.1.4-0fbd9b3.tar.gz) = 9f6712ba8d4fec3bd2ac29f3dbeb3ec95825d44f4ee32dd7c962d5072a3e075c3a6281824da1fafc7dd6b8ec804696a7bff6ad0a0c7a40a4b6c976e73d882aa4 diff --git a/vdr-live.spec b/vdr-live.spec index 6d4b0ad..e7ad50e 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -1,25 +1,25 @@ -# https://github.com/MarkusEh/vdr-plugin-live/commit/075080afb4f2a9ec1d3a488ba62095867479aee2 -%global commit0 075080afb4f2a9ec1d3a488ba62095867479aee2 +# https://github.com/MarkusEh/vdr-plugin-live/commit/0fbd9b32fc6afcdbe8722daa0e772260cd058f41 +%global commit0 0fbd9b32fc6afcdbe8722daa0e772260cd058f41 %global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) -%global gitdate 20210307 +%global gitdate 20211228 Name: vdr-live -Version: 3.1.3 -#Release: 0.2.%%{gitdate}git%%{shortcommit0}%%{?dist} -Release: 1%{?dist} +Version: 3.1.4 +Release: 0.1.%{gitdate}git%{shortcommit0}%{?dist} +#Release: 2%%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT License: GPLv2+ and MIT URL: https://github.com/MarkusEh/vdr-plugin-live -#Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/%%{commit0}/%%{name}-%%{version}-%%{shortcommit0}.tar.gz -Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/%{commit0}/%{name}-%{version}-%{shortcommit0}.tar.gz +#Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/v%%{version}.tar.gz#/%%{name}-%%{version}.tar.gz Source1: %{name}.conf BuildRequires: make BuildRequires: gcc-c++ BuildRequires: vdr-devel >= 2.2.0 -BuildRequires: pcre-devel +BuildRequires: pcre2-devel BuildRequires: tntnet-devel BuildRequires: cxxtools-devel Requires: vdr(abi)%{?_isa} = %{vdr_apiversion} @@ -44,8 +44,8 @@ Requires: %{name} = %{version}-%{release} This package contains images, themes and JavaScript. %prep -#%%autosetup -p1 -n vdr-plugin-live-%%{commit0} -%autosetup -p1 -n vdr-plugin-live-%{version} +%autosetup -p1 -n vdr-plugin-live-%{commit0} +#%%autosetup -p1 -n vdr-plugin-live-%%{version} # delete unused directories and files find -name .git -type d -or -name gitignore -type d | xargs rm -rfv @@ -77,6 +77,10 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Tue Dec 28 2021 Martin Gansser - 3.1.4-0.1.20211228git0fbd9b3 +- Replace obsolete pcre by pcre2 +- Update to 3.1.4-0.1.20211228git0fbd9b3 + * Mon Nov 15 2021 Martin Gansser - 3.1.3-1 - Update to 3.1.3 From 42310d750ebc44db5a5abe6d64d7168fa20bdaf3 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Thu, 30 Dec 2021 16:16:06 +0100 Subject: [PATCH 08/17] Build compatibility to g++11 --- vdr-live.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/vdr-live.spec b/vdr-live.spec index e7ad50e..9967ac3 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -5,7 +5,7 @@ Name: vdr-live Version: 3.1.4 -Release: 0.1.%{gitdate}git%{shortcommit0}%{?dist} +Release: 0.2.%{gitdate}git%{shortcommit0}%{?dist} #Release: 2%%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR @@ -56,7 +56,7 @@ rm -rf httpd iconv -f iso-8859-1 -t utf-8 README > README.utf8 ; mv README.utf8 README %build -%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" +%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++11 -fPIC" %install %make_install @@ -77,6 +77,9 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Thu Dec 30 2021 Martin Gansser - 3.1.4-0.2.20211228git0fbd9b3 +- Build compatibility to g++11 + * Tue Dec 28 2021 Martin Gansser - 3.1.4-0.1.20211228git0fbd9b3 - Replace obsolete pcre by pcre2 - Update to 3.1.4-0.1.20211228git0fbd9b3 From 4dcf71dd24ffa702378fce125a3ad8adf5880581 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Thu, 3 Feb 2022 18:24:35 +0100 Subject: [PATCH 09/17] Update to 3.1.5 --- vdr-live.spec | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/vdr-live.spec b/vdr-live.spec index 9967ac3..aa62e6d 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -4,16 +4,16 @@ %global gitdate 20211228 Name: vdr-live -Version: 3.1.4 -Release: 0.2.%{gitdate}git%{shortcommit0}%{?dist} -#Release: 2%%{?dist} +Version: 3.1.5 +#Release: 0.4.%%{gitdate}git%%{shortcommit0}%%{?dist} +Release: 1%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT License: GPLv2+ and MIT URL: https://github.com/MarkusEh/vdr-plugin-live -Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/%{commit0}/%{name}-%{version}-%{shortcommit0}.tar.gz -#Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/v%%{version}.tar.gz#/%%{name}-%%{version}.tar.gz +#Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/%%{commit0}/%%{name}-%%{version}-%%{shortcommit0}.tar.gz +Source0: https://github.com/MarkusEh/vdr-plugin-live/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: %{name}.conf BuildRequires: make @@ -44,8 +44,8 @@ Requires: %{name} = %{version}-%{release} This package contains images, themes and JavaScript. %prep -%autosetup -p1 -n vdr-plugin-live-%{commit0} -#%%autosetup -p1 -n vdr-plugin-live-%%{version} +#%%autosetup -p1 -n vdr-plugin-live-%%{commit0} +%autosetup -p1 -n vdr-plugin-live-%{version} # delete unused directories and files find -name .git -type d -or -name gitignore -type d | xargs rm -rfv @@ -56,7 +56,11 @@ rm -rf httpd iconv -f iso-8859-1 -t utf-8 README > README.utf8 ; mv README.utf8 README %build +%if 0%{?fedora} > 35 +%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" +%else %make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++11 -fPIC" +%endif %install %make_install @@ -77,6 +81,16 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Thu Feb 03 2022 Martin Gansser - 3.1.5-1 +- Update to 3.1.5 + +* Sat Jan 29 2022 Martin Gansser - 3.1.4-0.4.20211228git0fbd9b3 +- Add %%undefine _package_note_flags to vdr main package +- rebuild for rawhide + +* Sat Jan 22 2022 Fedora Release Engineering - 3.1.4-0.3.20211228git0fbd9b3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Thu Dec 30 2021 Martin Gansser - 3.1.4-0.2.20211228git0fbd9b3 - Build compatibility to g++11 From a5a2ecb465f70d6bd013da9f98e9e922e52a5395 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Thu, 3 Feb 2022 18:30:34 +0100 Subject: [PATCH 10/17] Update to 3.1.5 --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index 40e15e3..dded6d5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vdr-live-3.1.4-0fbd9b3.tar.gz) = 9f6712ba8d4fec3bd2ac29f3dbeb3ec95825d44f4ee32dd7c962d5072a3e075c3a6281824da1fafc7dd6b8ec804696a7bff6ad0a0c7a40a4b6c976e73d882aa4 +SHA512 (vdr-live-3.1.5.tar.gz) = 9a55505a1bcb5b4c5876d6bdf4694435bd35809d38b75da2c3e5d17a09569b5f5b095dc5a8785faac256dfdd1c43bc3435f7f6ea3d8bec04208bcf9ef3b17112 From 599f1638ee73ba318c0d3f6cb52eabb880a1f118 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Sat, 12 Feb 2022 19:02:26 +0100 Subject: [PATCH 11/17] Rebuilt --- vdr-live.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/vdr-live.spec b/vdr-live.spec index aa62e6d..170560a 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -6,7 +6,7 @@ Name: vdr-live Version: 3.1.5 #Release: 0.4.%%{gitdate}git%%{shortcommit0}%%{?dist} -Release: 1%{?dist} +Release: 2%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT @@ -81,6 +81,9 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Sat Feb 12 2022 Martin Gansser - 3.1.5-2 +- Rebuilt + * Thu Feb 03 2022 Martin Gansser - 3.1.5-1 - Update to 3.1.5 From be7b336a41b18d5184d9d1c4a4391f84509c0f52 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Sun, 19 Jun 2022 21:14:41 +0200 Subject: [PATCH 12/17] Updatae to 3.1.6 --- sources | 2 +- vdr-live.spec | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sources b/sources index dded6d5..e969d90 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vdr-live-3.1.5.tar.gz) = 9a55505a1bcb5b4c5876d6bdf4694435bd35809d38b75da2c3e5d17a09569b5f5b095dc5a8785faac256dfdd1c43bc3435f7f6ea3d8bec04208bcf9ef3b17112 +SHA512 (vdr-live-3.1.6.tar.gz) = a785e2378f63fc751651d99d4041699c699240eb372cbd154fb974e5b3d9a0dc6f6a920e5fccdddea54677885556310ea375ee91cf77dfa760d2e1488b40b571 diff --git a/vdr-live.spec b/vdr-live.spec index 170560a..928f47f 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -4,9 +4,9 @@ %global gitdate 20211228 Name: vdr-live -Version: 3.1.5 +Version: 3.1.6 #Release: 0.4.%%{gitdate}git%%{shortcommit0}%%{?dist} -Release: 2%{?dist} +Release: 1%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT @@ -81,6 +81,9 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Sun Jun 19 2022 Martin Gansser - 3.1.6-1 +- Updatae to 3.1.6 + * Sat Feb 12 2022 Martin Gansser - 3.1.5-2 - Rebuilt From 4606672c068d07228684fb7d9f20b0ed25a0f64d Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Mon, 20 Jun 2022 13:06:41 +0200 Subject: [PATCH 13/17] Built against correct vdr-devel version --- vdr-live.spec | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/vdr-live.spec b/vdr-live.spec index 928f47f..8aa1bbd 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -2,11 +2,19 @@ %global commit0 0fbd9b32fc6afcdbe8722daa0e772260cd058f41 %global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) %global gitdate 20211228 +# version we want build against +%global vdr_version 2.4.0 +%if 0%{?fedora} >= 36 +%global vdr_version 2.6.1 +%endif +%if 0%{?fedora} == 35 +%global vdr_version 2.4.7 +%endif Name: vdr-live Version: 3.1.6 #Release: 0.4.%%{gitdate}git%%{shortcommit0}%%{?dist} -Release: 1%{?dist} +Release: 2%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT @@ -18,7 +26,7 @@ Source1: %{name}.conf BuildRequires: make BuildRequires: gcc-c++ -BuildRequires: vdr-devel >= 2.2.0 +BuildRequires: vdr-devel >= %{vdr_version} BuildRequires: pcre2-devel BuildRequires: tntnet-devel BuildRequires: cxxtools-devel @@ -81,6 +89,9 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Mon Jun 20 2022 Martin Gansser - 3.1.6-2 +- Built against correct vdr-devel version + * Sun Jun 19 2022 Martin Gansser - 3.1.6-1 - Updatae to 3.1.6 From 141766cbe63be54787d8ce7c426ca7b698f8cde3 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Thu, 28 Jul 2022 16:19:13 +0200 Subject: [PATCH 14/17] Updatae to 3.1.7 --- sources | 2 +- vdr-live.spec | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/sources b/sources index e969d90..c947990 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vdr-live-3.1.6.tar.gz) = a785e2378f63fc751651d99d4041699c699240eb372cbd154fb974e5b3d9a0dc6f6a920e5fccdddea54677885556310ea375ee91cf77dfa760d2e1488b40b571 +SHA512 (vdr-live-3.1.7.tar.gz) = d9d39f7a8560eeca6df8b4a7eb6de4ddf80c1802de3d839278fc2091727764ea8037f0111c59d6e51b8f3a39e56f7c025629f138e3d4e24c41a0ba1939103f4b diff --git a/vdr-live.spec b/vdr-live.spec index 8aa1bbd..efe06b7 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -12,9 +12,9 @@ %endif Name: vdr-live -Version: 3.1.6 +Version: 3.1.7 #Release: 0.4.%%{gitdate}git%%{shortcommit0}%%{?dist} -Release: 2%{?dist} +Release: 1%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR # The entire source code is GPLv2+ except live/js/mootools/ which is MIT @@ -89,6 +89,12 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Thu Jul 28 2022 Martin Gansser - 3.1.7-1 +- Updatae to 3.1.7 + +* Sat Jul 23 2022 Fedora Release Engineering - 3.1.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Mon Jun 20 2022 Martin Gansser - 3.1.6-2 - Built against correct vdr-devel version From 95cb4d1866fa1b2d224a03c178bbd8e0384a76b4 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Fri, 29 Jul 2022 08:24:24 +0200 Subject: [PATCH 15/17] Updatae to 3.1.7 Force C++14 as this code is not C++17 ready, needed for gcc11 on Fedora 35 --- vdr-live.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vdr-live.spec b/vdr-live.spec index efe06b7..8466ce7 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -67,7 +67,7 @@ iconv -f iso-8859-1 -t utf-8 README > README.utf8 ; mv README.utf8 README %if 0%{?fedora} > 35 %make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" %else -%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++11 -fPIC" +%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++14 -fPIC" %endif %install @@ -91,6 +91,7 @@ install -Dpm 644 %{SOURCE1} \ %changelog * Thu Jul 28 2022 Martin Gansser - 3.1.7-1 - Updatae to 3.1.7 +- Force C++14 as this code is not C++17 ready, needed for gcc11 on Fedora 35 * Sat Jul 23 2022 Fedora Release Engineering - 3.1.6-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From ff9c5ca3054a39fdae8818663f80f6deb608a560 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Mon, 10 Oct 2022 13:57:57 +0200 Subject: [PATCH 16/17] Updatae to 3.1.8 --- sources | 2 +- vdr-live.spec | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/sources b/sources index c947990..79ed972 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vdr-live-3.1.7.tar.gz) = d9d39f7a8560eeca6df8b4a7eb6de4ddf80c1802de3d839278fc2091727764ea8037f0111c59d6e51b8f3a39e56f7c025629f138e3d4e24c41a0ba1939103f4b +SHA512 (vdr-live-3.1.8.tar.gz) = 1f89e1b782ea258726e3cf6cf236a029937ba5df10ce04b6142084afd0912d5513efe601e9a82bd69a5fd5355d23036b90d0399bac616aed666ac00c062d5c9d diff --git a/vdr-live.spec b/vdr-live.spec index 8466ce7..528ec0a 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -12,7 +12,7 @@ %endif Name: vdr-live -Version: 3.1.7 +Version: 3.1.8 #Release: 0.4.%%{gitdate}git%%{shortcommit0}%%{?dist} Release: 1%{?dist} Summary: An interactive web interface with HTML5 live stream support for VDR @@ -67,7 +67,7 @@ iconv -f iso-8859-1 -t utf-8 README > README.utf8 ; mv README.utf8 README %if 0%{?fedora} > 35 %make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" %else -%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++14 -fPIC" +%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++11 -fPIC" %endif %install @@ -89,9 +89,11 @@ install -Dpm 644 %{SOURCE1} \ %{vdr_resdir}/plugins/live/ %changelog +* Mon Oct 10 2022 Martin Gansser - 3.1.8-1 +- Updatae to 3.1.8 + * Thu Jul 28 2022 Martin Gansser - 3.1.7-1 - Updatae to 3.1.7 -- Force C++14 as this code is not C++17 ready, needed for gcc11 on Fedora 35 * Sat Jul 23 2022 Fedora Release Engineering - 3.1.6-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 4fa62efc1288495e95b83aab3f3bc5e1d50ed6c8 Mon Sep 17 00:00:00 2001 From: Martin Gansser Date: Mon, 10 Oct 2022 14:01:21 +0200 Subject: [PATCH 17/17] Updatae to 3.1.8 --- vdr-live.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vdr-live.spec b/vdr-live.spec index 528ec0a..08bd2a9 100644 --- a/vdr-live.spec +++ b/vdr-live.spec @@ -67,7 +67,7 @@ iconv -f iso-8859-1 -t utf-8 README > README.utf8 ; mv README.utf8 README %if 0%{?fedora} > 35 %make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -fPIC" %else -%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++11 -fPIC" +%make_build CFLAGS="%{optflags} -fPIC" CXXFLAGS="%{optflags} -std=gnu++14 -fPIC" %endif %install