rpms/moc/devel moc.spec,1.13,1.14
by Antonio
Author: sagitter
Update of /cvs/free/rpms/moc/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv8747/devel
Modified Files:
moc.spec
Log Message:
- Hardened builds
Index: moc.spec
===================================================================
RCS file: /cvs/free/rpms/moc/devel/moc.spec,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- moc.spec 29 Sep 2015 11:15:00 -0000 1.13
+++ moc.spec 5 Nov 2015 16:17:45 -0000 1.14
@@ -1,10 +1,14 @@
+%if 0%{?fedora} <= 22
+%global _hardened_build 1
+%endif
+
# Set up a new macro to define MOC's 'mocp' executable
%global exec mocp
Name: moc
Summary: Music on Console - Console audio player for Linux/UNIX
Version: 2.6
-Release: 0.5.alpha1%{?dist}
+Release: 0.6.alpha1%{?dist}
License: GPLv2+ and GPLv3+
URL: http://www.moc.daper.net
@@ -59,12 +63,14 @@
autoupdate -v
mv configure.in configure.ac
autoreconf -ivf
-%configure --disable-static --disable-silent-rules \
- --disable-rpath --with-rcc \
- --with-oss --with-alsa --with-jack --with-aac --with-mp3 \
- --with-musepack --with-vorbis --with-flac --with-wavpack \
- --with-sndfile --with-modplug --with-ffmpeg --with-speex \
- --with-samplerate --with-curl --disable-debug --without-magic
+export CFLAGS="$RPM_OPT_FLAGS -Wl,-z,relro -Wl,-z,now"
+export CXXFLAGS="$RPM_OPT_FLAGS -Wl,-z,relro -Wl,-z,now"
+export LDFLAGS="$RPM_LD_FLAGS -Wl,-z,now"
+%configure --disable-static --disable-silent-rules --disable-rpath --with-rcc \
+ --with-oss --with-alsa --with-jack --with-aac --with-mp3 \
+ --with-musepack --with-vorbis --with-flac --with-wavpack \
+ --with-sndfile --with-modplug --with-ffmpeg --with-speex \
+ --with-samplerate --with-curl --disable-debug --without-magic
make %{?_smp_mflags}
%install
@@ -85,6 +91,9 @@
%{_libdir}/%{name}/
%changelog
+* Sun Nov 01 2015 Antonio Trande <sagitter(a)fedoraproject.org> - 2.6-0.6.alpha1
+- Hardened builds on <F23
+
* Tue Sep 29 2015 Antonio Trande <sagitter(a)fedoraproject.org> - 2.6-0.5.alpha1
- Update to svn commit #2776
- Used %%license macro
9 years
rpms/avidemux/devel avidemux-2.6.10-qt5_lrelease.patch, NONE, 1.1 avidemux-2.6.10-libass.patch, 1.1, NONE
by Richard Shaw
Author: hobbes1069
Update of /cvs/free/rpms/avidemux/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv22151
Added Files:
avidemux-2.6.10-qt5_lrelease.patch
Removed Files:
avidemux-2.6.10-libass.patch
Log Message:
Commit correct patch.
avidemux-2.6.10-qt5_lrelease.patch:
Ts.cmake | 29 +++++++++++------------------
1 file changed, 11 insertions(+), 18 deletions(-)
--- NEW FILE avidemux-2.6.10-qt5_lrelease.patch ---
diff -Naur avidemux_2.6.10.orig/cmake/Ts.cmake avidemux_2.6.10/cmake/Ts.cmake
--- avidemux_2.6.10.orig/cmake/Ts.cmake 2015-06-10 00:42:47.000000000 -0500
+++ avidemux_2.6.10/cmake/Ts.cmake 2015-11-04 15:22:23.336615398 -0600
@@ -15,24 +15,17 @@
MACRO(FIND_LRELEASE)
IF(NOT LRELEASE_EXECUTABLE AND NOT LRELEASE_NOT_FOUND)
- FIND_PROGRAM(LRELEASE_EXECUTABLE lrelease PATHS
- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin"
- $ENV{QTDIR}/bin)
-
- IF (NOT LRELEASE_EXECUTABLE) # search again under the name lrelease-qt4
- FIND_PROGRAM(LRELEASE_EXECUTABLE lrelease-qt4 PATHS
- $ENV{QTDIR}/bin)
- IF (NOT LRELEASE_EXECUTABLE) # search again under the name lrelease-qt4
- MESSAGE(FATAL_ERROR "${LRELEASE_EXECUTABLE} not found - ts files can't be processed")
- SET(LRELEASE_NOT_FOUND "1") # to avoid double checking in one cmake run
- ENDIF (NOT LRELEASE_EXECUTABLE) # search again under the name lrelease-qt4
- ENDIF (NOT LRELEASE_EXECUTABLE)
- IF (LRELEASE_EXECUTABLE)
- MESSAGE(STATUS "lrelease found as ${LRELEASE_EXECUTABLE}")
- ENDIF (LRELEASE_EXECUTABLE)
-
- ENDIF(NOT LRELEASE_EXECUTABLE AND NOT LRELEASE_NOT_FOUND)
+ FIND_PROGRAM(LRELEASE_EXECUTABLE NAMES lrelease lrelease-qt4 lrelease-qt5
+ PATHS
+ "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
+ "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin"
+ $ENV{QTDIR}/bin)
+ IF (LRELEASE_EXECUTABLE)
+ MESSAGE(STATUS "lrelease found as ${LRELEASE_EXECUTABLE}")
+ ELSE (LRELEASE_EXECUTABLE)
+ MESSAGE(FATAL_ERROR "lrelease not found - ts files can't be processed")
+ ENDIF (LRELEASE_EXECUTABLE)
+ ENDIF(NOT LRELEASE_EXECUTABLE AND NOT LRELEASE_NOT_FOUND)
ENDMACRO(FIND_LRELEASE)
#
#
--- avidemux-2.6.10-libass.patch DELETED ---
9 years
rpms/avidemux/devel avidemux-2.6.10-libass.patch, NONE, 1.1 avidemux-qt.desktop, 1.5, 1.6 avidemux.spec, 1.96, 1.97 avidemux-gtk.desktop, 1.5, NONE
by Richard Shaw
Author: hobbes1069
Update of /cvs/free/rpms/avidemux/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv21057
Modified Files:
avidemux-qt.desktop avidemux.spec
Added Files:
avidemux-2.6.10-libass.patch
Removed Files:
avidemux-gtk.desktop
Log Message:
Add patch to find qt5 version of lrelease. Fix desktop files.
avidemux-2.6.10-libass.patch:
CMakeLists.txt | 1 -
ass/CMakeLists.txt | 11 +++++++++--
2 files changed, 9 insertions(+), 3 deletions(-)
--- NEW FILE avidemux-2.6.10-libass.patch ---
diff -Naur avidemux_2.6.10.orig/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt
--- avidemux_2.6.10.orig/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt 2015-06-10 00:42:47.000000000 -0500
+++ avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt 2015-07-21 17:24:11.939838828 -0500
@@ -4,7 +4,6 @@
checkFridibi("0.19")
IF (USE_FREETYPE AND USE_FRIDIBI)
- ADD_SUBDIRECTORY(ADM_libass)
INCLUDE(vf_plugin)
SET(ADM_vf_ssa_SRCS ADM_vidASS.cpp)
@@ -12,7 +11,15 @@
ADD_VIDEO_FILTER(ADM_vf_ssa ${ADM_vf_ssa_SRCS})
IF(DO_COMMON)
- TARGET_LINK_LIBRARIES(ADM_vf_ssa ADM_libass ${FREETYPE2_LDFLAGS} ${FRIDIBI_LDFLAGS} ADM_coreSubtitle)
+# TARGET_LINK_LIBRARIES(ADM_vf_ssa ADM_libass ${FREETYPE2_LDFLAGS} ${FRIDIBI_LDFLAGS} ADM_coreSubtitle)
+ IF(USE_EXTERNAL_LIBASS)
+ TARGET_LINK_LIBRARIES(ADM_vf_ssa ${LIBASS_LIBRARIES}
+ ${FREETYPE2_LDFLAGS} ADM_coreSubtitle)
+ ELSE(USE_EXTERNAL_LIBASS)
+ ADD_SUBDIRECTORY(ADM_libass)
+ TARGET_LINK_LIBRARIES(ADM_vf_ssa ADM_libass
+ ${FREETYPE2_LDFLAGS} ADM_coreSubtitle)
+ ENDIF(USE_EXTERNAL_LIBASS)
# We force the use of fontconfig
ADD_DEFINITIONS("-DUSE_FONTCONFIG")
TARGET_LINK_LIBRARIES(ADM_vf_ssa ${FONTCONFIG_LDFLAGS})
diff -Naur avidemux_2.6.10.orig/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt
--- avidemux_2.6.10.orig/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt 2015-06-10 00:42:47.000000000 -0500
+++ avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt 2015-07-21 17:25:05.380500847 -0500
@@ -1,6 +1,5 @@
ADD_SUBDIRECTORY(addBorder)
ADD_SUBDIRECTORY(asharp)
-ADD_SUBDIRECTORY(ass)
ADD_SUBDIRECTORY(avsfilter)
ADD_SUBDIRECTORY(blackenBorder)
ADD_SUBDIRECTORY(changeFps)
Index: avidemux-qt.desktop
===================================================================
RCS file: /cvs/free/rpms/avidemux/devel/avidemux-qt.desktop,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- avidemux-qt.desktop 29 Oct 2012 21:16:11 -0000 1.5
+++ avidemux-qt.desktop 4 Nov 2015 21:43:43 -0000 1.6
@@ -2,7 +2,7 @@
Name=Avidemux Video Editor (Qt)
Comment=Graphical video editing tool - Qt interface
Icon=avidemux
-Exec=avidemux3_qt4
+Exec=avidemux3_qt5
MimeType=video/mpeg;video/quicktime;video/x-msvideo;video/x-anim;audio/x-mp3;audio/x-mp2;
Terminal=false
Type=Application
Index: avidemux.spec
===================================================================
RCS file: /cvs/free/rpms/avidemux/devel/avidemux.spec,v
retrieving revision 1.96
retrieving revision 1.97
diff -u -r1.96 -r1.97
--- avidemux.spec 4 Nov 2015 20:13:23 -0000 1.96
+++ avidemux.spec 4 Nov 2015 21:43:43 -0000 1.97
@@ -9,9 +9,10 @@
URL: http://www.avidemux.org
Source0: http://downloads.sourceforge.net/%{name}/%{name}_%{version}.tar.gz
Source1: avidemux-qt.desktop
-Source2: avidemux-gtk.desktop
+#Source2: avidemux-gtk.desktop
-Patch1: avidemux-2.6.10-bundled_libs.patch
+Patch0: avidemux-2.6.10-bundled_libs.patch
+Patch1: avidemux-2.6.10-qt5_lrelease.patch
# Don't try to build on arm
ExcludeArch: %{arm}
@@ -105,7 +106,8 @@
%package qt
Summary: Qt interface for %{name}
#BuildRequires: qt4-devel >= 4.5.0-9
-BuildRequires: qt5-qtbase-devel qt5-qttools-devel libxslt
+BuildRequires: qt5-qtbase-devel qt5-qttools-devel qt5-qtscript-devel
+BuildRequires: libxslt
Provides: %{name}-gui = %{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-gtk < 2.6.10
@@ -135,6 +137,7 @@
%prep
%setup -q -n %{name}_%{version}
+%patch0 -p1
%patch1 -p1 -b .bund_libs
# Remove sources of bundled libraries.
--- avidemux-gtk.desktop DELETED ---
9 years
rpms/avidemux/devel avidemux-2.6.10-bundled_libs.patch, NONE, 1.1 .cvsignore, 1.16, 1.17 avidemux.spec, 1.95, 1.96 sources, 1.16, 1.17 avidemux-2.5.6-ffmpeg_parallel_build.patch, 1.3, NONE avidemux-2.6-bundled_libs.patch, 1.1, NONE avidemux3-bundled_libs.patch, 1.1, NONE avidemux3-libass.patch, 1.3, NONE
by Richard Shaw
Author: hobbes1069
Update of /cvs/free/rpms/avidemux/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv14862
Modified Files:
.cvsignore avidemux.spec sources
Added Files:
avidemux-2.6.10-bundled_libs.patch
Removed Files:
avidemux-2.5.6-ffmpeg_parallel_build.patch
avidemux-2.6-bundled_libs.patch avidemux3-bundled_libs.patch
avidemux3-libass.patch
Log Message:
* Tue Jun 16 2015 Richard Shaw <hobbes1069(a)gmail.com> - 2.6.10-1
- Update to latest upstream release.
- Disable GTK interface as it is unmaintained and does not build.
avidemux-2.6.10-bundled_libs.patch:
avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/ADM_ad_a52.cpp | 4 -
avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/CMakeLists.txt | 11 ++-
avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/ADM_ad_mad.cpp | 2
avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/CMakeLists.txt | 11 ++-
avidemux_2.6.0/avidemux_plugins/ADM_videoFilters6/ass/ADM_vidASS.cpp | 2
avidemux_2.6.0/avidemux_plugins/CMakeLists.txt | 34 ++++++++++
avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt | 1
avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt | 11 ++-
8 files changed, 65 insertions(+), 11 deletions(-)
--- NEW FILE avidemux-2.6.10-bundled_libs.patch ---
diff -Naur avidemux_2.6.0.orig/avidemux_plugins/CMakeLists.txt avidemux_2.6.0/avidemux_plugins/CMakeLists.txt
--- avidemux_2.6.0.orig/avidemux_plugins/CMakeLists.txt 2012-07-13 02:50:08.000000000 -0500
+++ avidemux_2.6.0/avidemux_plugins/CMakeLists.txt 2012-09-14 14:57:05.767002527 -0500
@@ -37,6 +37,40 @@
LINK_DIRECTORIES("${AVIDEMUX_SEARCH_LIB_DIR}")
INCLUDE_DIRECTORIES("${AVIDEMUX_SEARCH_INCLUDE_DIR}/avidemux/2.6")
+#########################################
+# Unbundle some libraries here
+#########################################
+OPTION(USE_EXTERNAL_LIBASS "Use system installed libass library." OFF)
+OPTION(USE_EXTERNAL_LIBMAD "Use system installed libmad library." OFF)
+OPTION(USE_EXTERNAL_LIBA52 "Use system installed liba52 library." OFF)
+OPTION(USE_EXTERNAL_LIBTWOLAME "Use system installed libtwolame library." OFF)
+
+INCLUDE(FindPkgConfig)
+
+# libass
+IF(USE_EXTERNAL_LIBASS)
+ PKG_CHECK_MODULES(LIBASS REQUIRED libass)
+ INCLUDE_DIRECTORIES(SYSTEM ${LIBASS_INCLUDE_DIRS})
+ENDIF()
+
+# libmad
+IF(USE_EXTERNAL_LIBMAD)
+ PKG_CHECK_MODULES(LIBMAD REQUIRED mad)
+ INCLUDE_DIRECTORIES(SYSTEM ${LIBMAD_INCLUDE_DIRS})
+ENDIF()
+
+# liba52
+IF(USE_EXTERNAL_LIBA52)
+ FIND_PATH(LIBA52_INCLUDE_DIR a52dec/a52.h)
+ FIND_LIBRARY(LIBA52_LIBRARIES a52)
+ INCLUDE_DIRECTORIES(SYSTEM ${LIBA52_INCLUDE_DIR})
+ENDIF()
+
+# twolame
+IF(USE_EXTERNAL_TWOLAME)
+ PKG_CHECK_MODULES(LIBTWOLAME REQUIRED twolame)
+ INCLUDE_DIRECTORIES(SYSTEM ${LIBTWOLAME_INCLUDE_DIRS})
+ENDIF()
IF (FRESH_BUILD)
MESSAGE("")
diff -Naur avidemux_2.6.10.orig/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt
--- avidemux_2.6.10.orig/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt 2015-06-10 00:42:47.000000000 -0500
+++ avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/ass/CMakeLists.txt 2015-07-21 17:24:11.939838828 -0500
@@ -4,7 +4,6 @@
checkFridibi("0.19")
IF (USE_FREETYPE AND USE_FRIDIBI)
- ADD_SUBDIRECTORY(ADM_libass)
INCLUDE(vf_plugin)
SET(ADM_vf_ssa_SRCS ADM_vidASS.cpp)
@@ -12,7 +11,15 @@
ADD_VIDEO_FILTER(ADM_vf_ssa ${ADM_vf_ssa_SRCS})
IF(DO_COMMON)
- TARGET_LINK_LIBRARIES(ADM_vf_ssa ADM_libass ${FREETYPE2_LDFLAGS} ${FRIDIBI_LDFLAGS} ADM_coreSubtitle)
+# TARGET_LINK_LIBRARIES(ADM_vf_ssa ADM_libass ${FREETYPE2_LDFLAGS} ${FRIDIBI_LDFLAGS} ADM_coreSubtitle)
+ IF(USE_EXTERNAL_LIBASS)
+ TARGET_LINK_LIBRARIES(ADM_vf_ssa ${LIBASS_LIBRARIES}
+ ${FREETYPE2_LDFLAGS} ADM_coreSubtitle)
+ ELSE(USE_EXTERNAL_LIBASS)
+ ADD_SUBDIRECTORY(ADM_libass)
+ TARGET_LINK_LIBRARIES(ADM_vf_ssa ADM_libass
+ ${FREETYPE2_LDFLAGS} ADM_coreSubtitle)
+ ENDIF(USE_EXTERNAL_LIBASS)
# We force the use of fontconfig
ADD_DEFINITIONS("-DUSE_FONTCONFIG")
TARGET_LINK_LIBRARIES(ADM_vf_ssa ${FONTCONFIG_LDFLAGS})
diff -Naur avidemux_2.6.10.orig/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt
--- avidemux_2.6.10.orig/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt 2015-06-10 00:42:47.000000000 -0500
+++ avidemux_2.6.10/avidemux_plugins/ADM_videoFilters6/CMakeLists.txt 2015-07-21 17:25:05.380500847 -0500
@@ -1,6 +1,5 @@
ADD_SUBDIRECTORY(addBorder)
ADD_SUBDIRECTORY(asharp)
-ADD_SUBDIRECTORY(ass)
ADD_SUBDIRECTORY(avsfilter)
ADD_SUBDIRECTORY(blackenBorder)
ADD_SUBDIRECTORY(changeFps)
diff -Naur avidemux_2.6.0.orig/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/CMakeLists.txt avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/CMakeLists.txt
--- avidemux_2.6.0.orig/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/CMakeLists.txt 2011-02-17 13:04:55.000000000 -0600
+++ avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/CMakeLists.txt 2012-09-15 15:03:06.009414605 -0500
@@ -1,11 +1,18 @@
INCLUDE(ad_plugin)
-ADD_SUBDIRECTORY(ADM_liba52)
+IF(NOT USE_EXTERNAL_LIBA52)
+ ADD_SUBDIRECTORY(ADM_liba52)
+ENDIF()
SET(ADM_ad_a52_SRCS ADM_ad_a52.cpp)
ADD_AUDIO_DECODER( ADM_ad_a52 ${ADM_ad_a52_SRCS})
-TARGET_LINK_LIBRARIES(ADM_ad_a52 ADM_liba52)
+
+IF(USE_EXTERNAL_LIBA52)
+ TARGET_LINK_LIBRARIES(ADM_ad_a52 ${LIBA52_LIBRARIES})
+ELSE()
+ TARGET_LINK_LIBRARIES(ADM_ad_a52 ADM_liba52)
+ENDIF()
INIT_AUDIO_PLUGIN(ADM_ad_a52)
INSTALL_AUDIODECODER(ADM_ad_a52)
diff -Naur avidemux_2.6.0.orig/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/CMakeLists.txt avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/CMakeLists.txt
--- avidemux_2.6.0.orig/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/CMakeLists.txt 2011-02-17 13:04:55.000000000 -0600
+++ avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/CMakeLists.txt 2012-09-15 15:04:31.914550564 -0500
@@ -8,13 +8,20 @@
ADD_DEFINITIONS("-DFPM_PPC")
ENDIF (ADM_CPU_X86_32)
-ADD_SUBDIRECTORY(ADM_libMad)
+IF(NOT USE_EXTERNAL_LIBMAD)
+ ADD_SUBDIRECTORY(ADM_libMad)
+ENDIF()
ADD_DEFINITIONS("-DHAVE_ASSERT_H")
SET(ADM_ad_Mad_SRCS ADM_ad_mad.cpp)
ADD_AUDIO_DECODER( ADM_ad_Mad ${ADM_ad_Mad_SRCS})
-TARGET_LINK_LIBRARIES(ADM_ad_Mad ADM_libMad)
+
+IF(USE_EXTERNAL_LIBMAD)
+ TARGET_LINK_LIBRARIES(ADM_ad_Mad ${LIBMAD_LIBRARIES})
+ELSE()
+ TARGET_LINK_LIBRARIES(ADM_ad_Mad ADM_libMad)
+ENDIF()
INIT_AUDIO_PLUGIN(ADM_ad_Mad)
INSTALL_AUDIODECODER(ADM_ad_Mad)
diff -Naur avidemux_2.6.0.orig/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/ADM_ad_a52.cpp avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/ADM_ad_a52.cpp
--- avidemux_2.6.0.orig/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/ADM_ad_a52.cpp 2012-08-05 00:50:48.000000000 -0500
+++ avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/ADM_ad_a52.cpp 2012-09-15 15:15:44.275205965 -0500
@@ -18,8 +18,8 @@
#include "ADM_ad_plugin.h"
extern "C" {
-#include "ADM_liba52/a52.h"
-#include "ADM_liba52/mm_accel.h"
+#include "a52dec/a52.h"
+#include "a52dec/mm_accel.h"
};
#define AC3_HANDLE ((a52_state_t *)ac3_handle)
diff -Naur avidemux_2.6.0.orig/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/ADM_ad_mad.cpp avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/ADM_ad_mad.cpp
--- avidemux_2.6.0.orig/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/ADM_ad_mad.cpp 2012-06-06 00:51:28.000000000 -0500
+++ avidemux_2.6.0/avidemux_plugins/ADM_audioDecoders/ADM_ad_mad/ADM_ad_mad.cpp 2012-09-15 15:16:02.560599956 -0500
@@ -16,7 +16,7 @@
***************************************************************************/
#include "ADM_default.h"
#include "ADM_ad_plugin.h"
-#include "ADM_libMad/mad.h"
+#include "mad.h"
#define Stream ((mad_stream *)_stream)
#define Frame ((mad_frame *)_frame)
diff -Naur avidemux_2.6.0.orig/avidemux_plugins/ADM_videoFilters6/ass/ADM_vidASS.cpp avidemux_2.6.0/avidemux_plugins/ADM_videoFilters6/ass/ADM_vidASS.cpp
--- avidemux_2.6.0.orig/avidemux_plugins/ADM_videoFilters6/ass/ADM_vidASS.cpp 2012-08-24 06:52:00.000000000 -0500
+++ avidemux_2.6.0/avidemux_plugins/ADM_videoFilters6/ass/ADM_vidASS.cpp 2012-09-15 16:16:33.076596468 -0500
@@ -23,7 +23,7 @@
extern "C"
{
-#include "ADM_libass/ass.h"
+#include "ass/ass.h"
}
/**
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/avidemux/devel/.cvsignore,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- .cvsignore 11 May 2014 14:52:31 -0000 1.16
+++ .cvsignore 4 Nov 2015 20:13:23 -0000 1.17
@@ -1 +1 @@
-avidemux_2.6.8.tar.gz
+avidemux_2.6.10.tar.gz
Index: avidemux.spec
===================================================================
RCS file: /cvs/free/rpms/avidemux/devel/avidemux.spec,v
retrieving revision 1.95
retrieving revision 1.96
diff -u -r1.95 -r1.96
--- avidemux.spec 22 Jan 2015 01:33:00 -0000 1.95
+++ avidemux.spec 4 Nov 2015 20:13:23 -0000 1.96
@@ -1,8 +1,8 @@
%global _pkgbuilddir %{_builddir}/%{name}_%{version}
Name: avidemux
-Version: 2.6.8
-Release: 3%{?dist}
+Version: 2.6.10
+Release: 1%{?dist}
Summary: Graphical video editing and transcoding tool
License: GPLv2+
@@ -11,10 +11,7 @@
Source1: avidemux-qt.desktop
Source2: avidemux-gtk.desktop
-#Patch0: avidemux-2.5.6-ffmpeg_parallel_build.patch
-Patch1: avidemux-2.6-bundled_libs.patch
-Patch2: avidemux3-libass.patch
-Patch3: avidemux3-bundled_libs.patch
+Patch1: avidemux-2.6.10-bundled_libs.patch
# Don't try to build on arm
ExcludeArch: %{arm}
@@ -64,6 +61,7 @@
# Video Codecs
BuildRequires: xvidcore-devel >= 1.0.2
BuildRequires: x264-devel
+BuildRequires: x265-devel
BuildRequires: ffmpeg-devel
# Main package is a metapackage, bring in something useful.
@@ -77,12 +75,12 @@
MPEG files, MP4 and ASF, using a variety of codecs. Tasks can be automated
using projects, job queue and powerful scripting capabilities.
-This is a meta package that brings in all interfaces: GTK, QT, and CLI.
+This is a meta package that brings in all interfaces: QT and CLI.
+#This is a meta package that brings in all interfaces: GTK, QT, and CLI.
%package cli
Summary: CLI for %{name}
-Group: Applications/Multimedia
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%description cli
@@ -90,32 +88,27 @@
%package libs
Summary: Libraries for %{name}
-Group: System Environment/Libraries
-#Requires: %{name}%{?_isa} = %{version}-%{release}
-Obsoletes: avidemux-devel < 2.6.4-9
%description libs
This package contains the runtime libraries for %{name}.
-%package gtk
-Summary: GTK interface for %{name}
-Group: Applications/Multimedia
-BuildRequires: gtk3-devel
-BuildRequires: cairo-devel
-Provides: %{name}-gui = %{version}-%{release}
-Requires: %{name}-libs%{?_isa} = %{version}-%{release}
+#%package gtk
+#Summary: GTK interface for %{name}
+#BuildRequires: gtk3-devel
+#BuildRequires: cairo-devel
+#Provides: %{name}-gui = %{version}-%{release}
+#Requires: %{name}-libs%{?_isa} = %{version}-%{release}
-%description gtk
-This package provides the GTK graphical interface for %{name}.
+#%description gtk
+#This package provides the GTK graphical interface for %{name}.
%package qt
Summary: Qt interface for %{name}
-Group: Applications/Multimedia
-# 4.5.0-9 fixes a failure when there are duplicate translated strings
-# https://bugzilla.redhat.com/show_bug.cgi?id=491514
-BuildRequires: qt4-devel >= 4.5.0-9
+#BuildRequires: qt4-devel >= 4.5.0-9
+BuildRequires: qt5-qtbase-devel qt5-qttools-devel libxslt
Provides: %{name}-gui = %{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
+Obsoletes: %{name}-gtk < 2.6.10
%description qt
This package contains the Qt graphical interface for %{name}.
@@ -142,10 +135,7 @@
%prep
%setup -q -n %{name}_%{version}
-#patch0 -p1 -b .ffmpeg_build
%patch1 -p1 -b .bund_libs
-%patch2 -p1 -b .libass
-%patch3 -p1 -b .bund_libs2
# Remove sources of bundled libraries.
rm -rf avidemux_plugins/ADM_audioDecoders/ADM_ad_ac3/ADM_liba52 \
@@ -156,12 +146,11 @@
%build
# Build avidemux_core
-LDFLAGS="-lc -Wl,--as-needed";export LDFLAGS
+export LDFLAGS="-lc -Wl,--as-needed"
rm -rf build_core && mkdir build_core && pushd build_core
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
../avidemux_core
make
-#%{?_smp_mflags}
# We have to do a fake install so header files are avaialble for the other
# packages.
@@ -181,25 +170,27 @@
rm -rf build_qt4 && mkdir build_qt4 && pushd build_qt4
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DFAKEROOT=%{_pkgbuilddir}/fakeRoot \
+ -DENABLE_QT5=TRUE \
../avidemux/qt4
make %{?_smp_mflags}
make install DESTDIR=%{_pkgbuilddir}/fakeRoot
popd
# Build GTK gui
-rm -rf build_gtk && mkdir build_gtk && pushd build_gtk
-%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
- -DFAKEROOT=%{_pkgbuilddir}/fakeRoot \
- ../avidemux/gtk
-make %{?_smp_mflags}
-make install DESTDIR=%{_pkgbuilddir}/fakeRoot
-popd
+#rm -rf build_gtk && mkdir build_gtk && pushd build_gtk
+#cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+# -DFAKEROOT=%{_pkgbuilddir}/fakeRoot \
+# ../avidemux/gtk
+#make %{?_smp_mflags}
+#make install DESTDIR=%{_pkgbuilddir}/fakeRoot
+#popd
# Build avidemux_plugins_common
rm -rf build_plugins_common && mkdir build_plugins_common && pushd build_plugins_common
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DFAKEROOT=%{_pkgbuilddir}/fakeRoot \
-DAVIDEMUX_SOURCE_DIR=%{_builddir}/%{name}_%{version} \
+ -DENABLE_QT5=TRUE \
-DPLUGIN_UI=COMMON \
-DUSE_EXTERNAL_LIBASS=TRUE \
-DUSE_EXTERNAL_LIBMAD=TRUE \
@@ -215,6 +206,7 @@
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DFAKEROOT=%{_pkgbuilddir}/fakeRoot \
-DAVIDEMUX_SOURCE_DIR=%{_builddir}/%{name}_%{version} \
+ -DENABLE_QT5=TRUE \
-DPLUGIN_UI=CLI \
-DUSE_EXTERNAL_LIBASS=TRUE \
-DUSE_EXTERNAL_LIBMAD=TRUE \
@@ -230,6 +222,7 @@
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DFAKEROOT=%{_pkgbuilddir}/fakeRoot \
-DAVIDEMUX_SOURCE_DIR=%{_builddir}/%{name}_%{version} \
+ -DENABLE_QT5=TRUE \
-DPLUGIN_UI=QT4 \
-DUSE_EXTERNAL_LIBASS=TRUE \
-DUSE_EXTERNAL_LIBMAD=TRUE \
@@ -241,30 +234,30 @@
popd
# Build avidemux_plugins_gtk
-rm -rf build_plugins_gtk && mkdir build_plugins_gtk && pushd build_plugins_gtk
-%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
- -DFAKEROOT=%{_pkgbuilddir}/fakeRoot \
- -DAVIDEMUX_SOURCE_DIR=%{_builddir}/%{name}_%{version} \
- -DPLUGIN_UI=GTK \
- -DUSE_EXTERNAL_LIBASS=TRUE \
- -DUSE_EXTERNAL_LIBMAD=TRUE \
- -DUSE_EXTERNAL_LIBA52=TRUE \
- -DUSE_EXTERNAL_TWOLAME=TRUE \
- ../avidemux_plugins
-make %{?_smp_mflags}
-make install DESTDIR=%{_pkgbuilddir}/fakeRoot
-popd
+#rm -rf build_plugins_gtk && mkdir build_plugins_gtk && pushd build_plugins_gtk
+#cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+# -DFAKEROOT=%{_pkgbuilddir}/fakeRoot \
+# -DAVIDEMUX_SOURCE_DIR=%{_builddir}/%{name}_%{version} \
+# -DPLUGIN_UI=GTK \
+# -DUSE_EXTERNAL_LIBASS=TRUE \
+# -DUSE_EXTERNAL_LIBMAD=TRUE \
+# -DUSE_EXTERNAL_LIBA52=TRUE \
+# -DUSE_EXTERNAL_TWOLAME=TRUE \
+# ../avidemux_plugins
+#make %{?_smp_mflags}
+#make install DESTDIR=%{_pkgbuilddir}/fakeRoot
+#popd
%install
make -C build_core install DESTDIR=%{buildroot}
make -C build_cli install DESTDIR=%{buildroot}
make -C build_qt4 install DESTDIR=%{buildroot}
-make -C build_gtk install DESTDIR=%{buildroot}
+#make -C build_gtk install DESTDIR=%{buildroot}
make -C build_plugins_common install DESTDIR=%{buildroot}
make -C build_plugins_cli install DESTDIR=%{buildroot}
make -C build_plugins_qt4 install DESTDIR=%{buildroot}
-make -C build_plugins_gtk install DESTDIR=%{buildroot}
+#make -C build_plugins_gtk install DESTDIR=%{buildroot}
# Remove useless devel files
rm -rf %{buildroot}%{_includedir}/%{name}
@@ -277,9 +270,9 @@
--dir %{buildroot}%{_datadir}/applications \
%{SOURCE1}
-desktop-file-install --vendor rpmfusion \
- --dir %{buildroot}%{_datadir}/applications \
- %{SOURCE2}
+#desktop-file-install --vendor rpmfusion \
+# --dir %{buildroot}%{_datadir}/applications \
+# %{SOURCE2}
# Install icons
install -pDm 0644 avidemux/gtk/ADM_userInterfaces/glade/main/avidemux_icon_small.png \
@@ -292,20 +285,20 @@
%postun libs -p /sbin/ldconfig
-%post gtk
-/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
-/usr/bin/update-desktop-database &> /dev/null || :
+#%post gtk
+#/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
+#/usr/bin/update-desktop-database &> /dev/null || :
%post qt
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
/usr/bin/update-desktop-database &> /dev/null || :
-%postun gtk
-if [ $1 -eq 0 ] ; then
- /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
- /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
-fi
-/usr/bin/update-desktop-database &> /dev/null || :
+#%postun gtk
+#if [ $1 -eq 0 ] ; then
+# /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+# /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+#fi
+#/usr/bin/update-desktop-database &> /dev/null || :
%postun qt
if [ $1 -eq 0 ] ; then
@@ -314,8 +307,8 @@
fi
/usr/bin/update-desktop-database &> /dev/null || :
-%posttrans gtk
-/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+#%posttrans gtk
+#/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%posttrans qt
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
@@ -342,28 +335,32 @@
%{_libdir}/libADM_UI_Cli*.so
%{_libdir}/libADM_render6_cli.so
-%files gtk -f build_plugins_gtk/install_manifest.txt
-%{_bindir}/avidemux3_gtk
-%{_libdir}/libADM_UIGtk*.so
-%{_libdir}/libADM_render6_gtk.so
-%{_libdir}/ADM_glade/
-%{_datadir}/applications/rpmfusion-avidemux-gtk.desktop
+#%files gtk -f build_plugins_gtk/install_manifest.txt
+#%{_bindir}/avidemux3_gtk
+#%{_libdir}/libADM_UIGtk*.so
+#%{_libdir}/libADM_render6_gtk.so
+#%{_libdir}/ADM_glade/
+#%{_datadir}/applications/rpmfusion-avidemux-gtk.desktop
%files qt -f build_plugins_qt4/install_manifest.txt
-%{_bindir}/avidemux3_qt4
-%{_bindir}/avidemux3_jobs
+%{_bindir}/avidemux3_qt5
+%{_bindir}/avidemux3_jobs_qt5
%{_libdir}/libADM_UIQT*.so
-%{_libdir}/libADM_render6_qt4.so
+#%{_libdir}/libADM_render6_qt4.so
%{_datadir}/applications/rpmfusion-avidemux-qt.desktop
%files help
%{_datadir}/avidemux6/help/
%files i18n
-%{_datadir}/avidemux6/i18n/
+%{_datadir}/avidemux6/qt5/i18n/
%changelog
+* Tue Jun 16 2015 Richard Shaw <hobbes1069(a)gmail.com> - 2.6.10-1
+- Update to latest upstream release.
+- Disable GTK interface as it is unmaintained and does not build.
+
* Wed Jan 21 2015 Richard Shaw <hobbes1069(a)gmail.com> - 2.6.8-3
- Fix directory ownership.
Index: sources
===================================================================
RCS file: /cvs/free/rpms/avidemux/devel/sources,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- sources 11 May 2014 14:52:31 -0000 1.16
+++ sources 4 Nov 2015 20:13:24 -0000 1.17
@@ -1 +1 @@
-33d0cd47cb84a4e9f4e1b3160405c85c avidemux_2.6.8.tar.gz
+61addac2a03720c070aa0b6932cfc2db avidemux_2.6.10.tar.gz
--- avidemux-2.5.6-ffmpeg_parallel_build.patch DELETED ---
--- avidemux-2.6-bundled_libs.patch DELETED ---
--- avidemux3-bundled_libs.patch DELETED ---
--- avidemux3-libass.patch DELETED ---
9 years
rpms/mythtv/devel ChangeLog, 1.23, 1.24 mythtv-0.27-fixes.patch, 1.12, 1.13 mythtv.spec, 1.152, 1.153
by Richard Shaw
Author: hobbes1069
Update of /cvs/free/rpms/mythtv/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv25576
Modified Files:
ChangeLog mythtv-0.27-fixes.patch mythtv.spec
Log Message:
* Mon Jul 6 2015 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.5-1
- Update to latest upstream release.
- Move udisks requirement to the libs package where it's actually used.
- Add systemd mythtv database optimization service and timer.
Index: ChangeLog
===================================================================
RCS file: /cvs/free/rpms/mythtv/devel/ChangeLog,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- ChangeLog 21 Jul 2015 19:38:41 -0000 1.23
+++ ChangeLog 2 Nov 2015 16:14:54 -0000 1.24
@@ -1,3 +1,198 @@
+commit 3682a9a14783e81685af1f838ba7f3c9916e1746
+Merge: e5e095b 9ac80fb
+Author: Karl Dietz <dekarl(a)mythtv.org>
+Date: Fri Oct 9 11:16:34 2015 +0200
+
+ Merge branch 'devel/027candidates' into fixes/0.27
+
+commit e5e095bcb6d03f1edd107c04a8cd14c90145c079
+Author: Karl Dietz <dekarl(a)mythtv.org>
+Date: Sat Oct 3 12:48:34 2015 +0200
+
+ Fiddle with the theme template regular expression for #12003
+
+ It appears that \w worked for a long time. But does not match #
+ so it was changed to \S which matches everything but white space.
+
+ Now try with \w and explicit #.
+
+ The regexp is tested with online tools.
+ (I couldn't get QRegExp-Editor to build and refactoring to suit unit
+ tests didn't look easy)
+
+ Fixes #12003
+
+ (cherry picked from commit bb6fe50f70e47b836bcc9752af32996fd114a15e)
+
+commit 2ad315894af9a7770b29dbec5d0ca56a84534f49
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Fri May 1 18:09:57 2015 +0100
+
+ Re-Enable screensaver-x11 after the dbus screensaver support was added.
+
+ This now utilizes the dbus screensaver first, and then the previously
+ existing screensaver methods. This should resolve the issues seen by
+ those using only DPMS or xscreensaver.
+
+ (cherry picked from commit 8ea5911f066fe406deeddb8ba92b629be4f47cd1)
+
+ Backport to fixes/0.27. Fixes #12511
+
+commit 156c30034f6d0c2c22c3b61f59da075f50938269
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Fri May 1 18:09:30 2015 +0100
+
+ Move failure to connect to the different dbus services to LOG_WARNING level #2
+
+ (cherry picked from commit e731ebc0d31d20afa29a95a3934be0149c2e0383)
+
+ Backport to fixes/0.27. Refs #12511
+
+commit 05016ef186d113a0058babe4002a429ffc2f035e
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Fri May 1 16:03:36 2015 +0100
+
+ Move failure to connect to the different dbus services to LOG_WARNING level
+
+ (cherry picked from commit 348ed663810ffa6860f380733a677e0aa6d729d1)
+
+ Backport to fixes/0.27. Refs #12511
+
+commit 43312ef43893b0a720b9c49c6b1d1112c34c79e9
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Fri May 1 11:44:04 2015 +0100
+
+ Separate the ScreenSaver base class from the ScreenSaverController.
+
+ This is a preliminary step to allow multiple screen saver control
+ methods to be utilized at the same time.
+
+ (cherry picked from commit b1c3c35a99fbd3498a01dc06888801b553604927)
+
+ Backport to fixes/0.27. Refs #12511
+
+commit 1b02deb1b9fd89ed27d2f98bb00137ff48d60bf7
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Wed Apr 29 22:28:00 2015 +0100
+
+ Fix lirc being ignored after dbus screen saver changes.
+
+ If the Screensaver is Asleep() we ignore all keypresses
+ generated via the remote. This is clearly so that a button
+ pressed on the remote while the screen is asleep only wakes
+ up the screen, rather than triggering an action.
+
+ This swaps the logic around in the dbus screensaver so that
+ it satisfies the Asleep() check.
+
+ We may need to revist this in the future if we find that
+ when using the dbus screensaver we are not ignoring the
+ remote keypress which is used to bring us out of screensave.
+
+ (cherry picked from commit 70ae25deab026238250cbe0ca108fb6ceb41e188)
+
+ Backport to fixes/0.27. Refs #12511
+
+commit 42939f201a653b8e66876ba88b2bcbc4b57511a2
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Tue Apr 21 09:04:10 2015 +0100
+
+ Refs #12414. Removes some old commented out code
+
+ (cherry picked from commit 7c18c182e693302915bfcdd483f95192c95c04f1)
+
+ Backport to fixes/0.27. Refs #12511
+
+commit 31bd913580153c7b7ab4ce32850d8bc0c4298634
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Tue Apr 21 00:11:12 2015 +0100
+
+ lost a void along the way
+
+ (cherry picked from commit b316010a65a70561852f34ae2891825c8189d76b)
+
+ Backport to fixes/0.27. Refs #12511
+
+commit 7c7c4e5dd0ea7795414e44da5170662d283c81a5
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Mon Apr 20 23:41:14 2015 +0100
+
+ Attempt to use 4 different known screensaver dbus services
+
+ (cherry picked from commit eb68676d8ea4dae3cc2d823d2ba10183b00a4680)
+
+ Backport to fixes/0.27. Refs #12511
+
+commit ac595a7e69cb8cb13d9d43cab0cb2fef36ec8dbf
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Thu Mar 19 21:07:47 2015 +0000
+
+ Initial version of dbus based screensaver
+
+ (cherry picked from commit 35564d70e71ee0fe3ccea7dfa53a1ffa21117057)
+
+ Backport to fixes/0.27. Refs #12511
+
+commit fbd5ef3122abff438d4d706b4ccc046213f47f22
+Author: Karl Dietz <dekarl(a)mythtv.org>
+Date: Tue Sep 15 12:00:00 2015 +0200
+
+ handle RTP packets with header extensions and/or less then 7 TS packets
+
+ 1328 is a magic number of 12 (minimum RTP header size) plus
+ 7 times 188 (length of a plain TS packet)
+
+ Fix handling of padding length calculation while here.
+ from RFC 1889, page 11:
+ The last octet of the padding contains a count of how many padding
+ octets should be ignored.
+
+ Refs #11852
+
+ (cherry picked from commit 90b98524e04e5a37112e038bd9c5da6958fbf4f1)
+
+commit ec7116540f7bca2007f3d74cbd30321d5123993d
+Author: Karl Dietz <dekarl(a)mythtv.org>
+Date: Sat Sep 19 23:07:15 2015 +0200
+
+ Make the comparison of magic card type strings case insensitive
+
+ Fixes #12481
+
+ (cherry picked from commit 7126654f1ae8cdec1708cb20088362d6c9c87b27)
+
+commit e9b577d3e9865fd51ffb385c3317448ac3771124
+Author: Michael Niedermayer <michaelni(a)gmx.at>
+Date: Wed Sep 9 18:10:51 2015 +0100
+
+ avcodec/aacdec: Fix storing state before PCE decode
+
+ Signed-off-by: Paul Harrison <pharrison(a)mythtv.org>
+ (cherry picked from commit fdbe56014caac49e617736b18bf0ffc27bad7386)
+
+commit 32fd3968acea905d71d9769996487eff280233ea
+Author: David Engel <dengel(a)mythtv.org>
+Date: Fri Sep 4 09:58:37 2015 -0500
+
+ Only use visible channels to mark first/last showings.
+
+ If a first or last showing is only on an invisible channel, it will
+ cause a recording rule using that feature to miss a showing on another
+ visible channel.
+
+ Cherry picked from commit 97aface5.
+
+commit e2a11c915058c6876a25d8188f02bc1d99fdad02
+Author: Hika van den Hoven <hikavdh(a)gmail.com>
+Date: Sun Aug 2 12:32:37 2015 +0200
+
+ Internet Content: Only use the YouTube region preference if it is nonempty
+
+ Fixes #12475
+
+ Signed-off-by: Jonatan Lindblad <jlindblad(a)mythtv.org>
+ (cherry picked from commit a8dcf35fe25dfd9f0501b8f0bd4d08e770f415e0)
+
commit 9498257571e8158926b60a0eefc74568c4436823
Author: Mario Limonciello <superm1(a)ubuntu.com>
Date: Wed Oct 9 07:21:38 2013 -0500
@@ -42,3 +237,86 @@
This bumps the ABI version.
(cherry picked from commit 9527d3d0c9b71bb088b3869319a11f5c1ea9bb57)
+
+commit 9ac80fbb52a5c8022d5cb4374cf6b455785a3990
+Author: Jonatan Lindblad <jlindblad(a)mythtv.org>
+Date: Sun Apr 19 23:41:00 2015 +0200
+
+ Video output: Fix OpenGL 1 output after b9971146
+
+ (cherry picked from commit 2b01ed3894be8374b6c143449fa563fbd945da5a)
+
+ Refs #12421
+
+commit cd9762c6acaa1fa26f4c5e29f2bc83d4e7e2353e
+Author: Jonatan Lindblad <jlindblad(a)mythtv.org>
+Date: Mon Mar 23 23:46:13 2015 +0100
+
+ Video output: Add default fragment shader for OpenGL 2
+
+ When there were no color conversions with the YUV->RGB shader, there was no
+ other fragment shader active and because of that the video was black.
+
+ (cherry picked from commit b997114683759562dbaf6b80a651070d099195ac)
+
+ Refs #12421
+
+commit fbe2c3c1215a4fa0e9aa4df815e86d7d7a42ef4b
+Merge: fd0f283 7962008
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Mon May 4 21:52:03 2015 +0100
+
+ Merge remote-tracking branch 'origin/fixes/0.27' into devel/027candidates
+
+commit fd0f2831f936b55512d9ff68f70aa3032f20d451
+Merge: c4bbf71 628183a
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Fri Apr 10 11:36:41 2015 +0100
+
+ Merge branch 'fixes/0.27' into devel/027candidates
+
+ Pull in various fixes that have been pushed to 0.27,
+ but aren't in devel/027candidates
+
+commit c4bbf713ac4c4b51fd9125d1c57a4aa0e70b0c44
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Wed Feb 11 16:58:49 2015 +0000
+
+ Enable pic by default on linux systems.
+ Should fix building on 32bit based systems with Qt5
+
+ (cherry picked from commit 0e5961e41dd6867772b74c051a96dc219181c6a5)
+
+commit 920097d8a8ad8a7fdcfc8357ee0a9744a29976e4
+Author: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+Date: Fri Jan 2 11:52:58 2015 +0000
+
+ Add missing QObject include. Should resolve Qt5 build error
+
+ (cherry picked from commit f063b19facd153c2b2844e9643d570b9466b4b6f)
+
+commit f88acbe3648495f211ad22e9dbf90ecc3ae99a69
+Merge: 2fb2643 b97ea66
+Author: Jean-Yves Avenard <jyavenard(a)mythtv.org>
+Date: Tue Oct 14 19:28:45 2014 +1100
+
+ Merge branch 'fixes/0.27' into devel/027candidates
+
+commit 2fb26439867aea9bbd2f2b4808f780c6fd477e41
+Author: John Poet <jpoet(a)mythtv.org>
+Date: Tue Sep 23 12:58:15 2014 -0600
+
+ MythMainWindow::Norm: With very small values of x, scaling down can cause
+ the 'normalized' value to go to zero. Rounding the result fixes this, and
+ is probably more desireable anyway.
+
+ (cherry picked from commit 42bae47be8794eac2dadff3b4fd1a7fa3c547b82)
+
+commit 4c29a5e2d79f180a0684c91f4867793ed561e9ed
+Author: John Poet <jpoet(a)mythtv.org>
+Date: Fri Sep 19 16:15:09 2014 -0600
+
+ MythUIScrollBar: Initialize maximum to zero until it is actually known,
+ otherwise the scrollbar is drawn prematurely.
+
+ (cherry picked from commit 899f3d3185c994715c86cd42bf56e011266e4c9c)
mythtv-0.27-fixes.patch:
mythplugins/mythnetvision/mythnetvision/netcommon.cpp | 4
mythplugins/mythnetvision/mythnetvision/netcommon.h | 2
mythplugins/mythnetvision/mythnetvision/netsearch.cpp | 23
mythplugins/mythnetvision/mythnetvision/netsearch.h | 3
mythtv/external/FFmpeg/libavcodec/aacdec.c | 2
mythtv/libs/libmyth/netgrabbermanager.cpp | 26
mythtv/libs/libmyth/netgrabbermanager.h | 7
mythtv/libs/libmythbase/mythversion.h | 2
mythtv/libs/libmythtv/profilegroup.cpp | 3
mythtv/libs/libmythtv/recorders/rtp/rtpdatapacket.h | 8
mythtv/libs/libmythtv/recorders/rtp/rtptsdatapacket.h | 2
mythtv/libs/libmythui/libmythui.pro | 7
mythtv/libs/libmythui/mythuibuttonlist.cpp | 2
mythtv/libs/libmythui/mythuihelper.cpp | 2
mythtv/libs/libmythui/mythuitext.cpp | 4
mythtv/libs/libmythui/screensaver-dbus.cpp | 171 ++
mythtv/libs/libmythui/screensaver-dbus.h | 25
mythtv/libs/libmythui/screensaver-null.h | 2
mythtv/libs/libmythui/screensaver-osx.h | 2
mythtv/libs/libmythui/screensaver-x11.h | 2
mythtv/libs/libmythui/screensaver.cpp | 68
mythtv/libs/libmythui/screensaver.h | 27
mythtv/programs/mythbackend/internetContent.cpp | 10
mythtv/programs/mythfilldatabase/main.cpp | 44
mythtv/programs/scripts/internetcontent/nv_python_libs/common/common_api.py | 9
mythtv/programs/scripts/internetcontent/nv_python_libs/configs/XML/defaultUserPrefs/youtube.xml | 10
mythtv/programs/scripts/internetcontent/nv_python_libs/mainProcess.py | 17
mythtv/programs/scripts/internetcontent/nv_python_libs/vimeo/vimeo_data.py | 21
mythtv/programs/scripts/internetcontent/nv_python_libs/youtube/youtube_api.py | 734 +++-------
mythtv/programs/scripts/internetcontent/nv_python_libs/youtube/youtube_data.py | 20
mythtv/programs/scripts/internetcontent/youtube.py | 31
31 files changed, 666 insertions(+), 624 deletions(-)
Index: mythtv-0.27-fixes.patch
===================================================================
RCS file: /cvs/free/rpms/mythtv/devel/mythtv-0.27-fixes.patch,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- mythtv-0.27-fixes.patch 21 Jul 2015 19:38:41 -0000 1.12
+++ mythtv-0.27-fixes.patch 2 Nov 2015 16:14:54 -0000 1.13
@@ -2,10 +2,26 @@
.../mythnetvision/mythnetvision/netcommon.h | 2 +-
.../mythnetvision/mythnetvision/netsearch.cpp | 23 +-
.../mythnetvision/mythnetvision/netsearch.h | 3 +
+ mythtv/external/FFmpeg/libavcodec/aacdec.c | 2 +-
mythtv/libs/libmyth/netgrabbermanager.cpp | 26 +-
mythtv/libs/libmyth/netgrabbermanager.h | 7 +-
mythtv/libs/libmythbase/mythversion.h | 2 +-
+ mythtv/libs/libmythtv/profilegroup.cpp | 3 +-
+ .../libs/libmythtv/recorders/rtp/rtpdatapacket.h | 8 +-
+ .../libs/libmythtv/recorders/rtp/rtptsdatapacket.h | 2 +-
+ mythtv/libs/libmythui/libmythui.pro | 7 +
+ mythtv/libs/libmythui/mythuibuttonlist.cpp | 2 +-
+ mythtv/libs/libmythui/mythuihelper.cpp | 2 +-
+ mythtv/libs/libmythui/mythuitext.cpp | 4 +-
+ mythtv/libs/libmythui/screensaver-dbus.cpp | 171 +++++
+ mythtv/libs/libmythui/screensaver-dbus.h | 25 +
+ mythtv/libs/libmythui/screensaver-null.h | 2 +-
+ mythtv/libs/libmythui/screensaver-osx.h | 2 +-
+ mythtv/libs/libmythui/screensaver-x11.h | 2 +-
+ mythtv/libs/libmythui/screensaver.cpp | 68 +-
+ mythtv/libs/libmythui/screensaver.h | 27 +-
mythtv/programs/mythbackend/internetContent.cpp | 10 +-
+ mythtv/programs/mythfilldatabase/main.cpp | 44 +-
.../nv_python_libs/common/common_api.py | 9 +-
.../configs/XML/defaultUserPrefs/youtube.xml | 10 +
.../internetcontent/nv_python_libs/mainProcess.py | 17 +-
@@ -13,7 +29,7 @@
.../nv_python_libs/youtube/youtube_api.py | 734 +++++++--------------
.../nv_python_libs/youtube/youtube_data.py | 20 +
mythtv/programs/scripts/internetcontent/youtube.py | 31 +-
- 16 files changed, 349 insertions(+), 570 deletions(-)
+ 32 files changed, 666 insertions(+), 624 deletions(-)
diff --git a/mythplugins/mythnetvision/mythnetvision/netcommon.cpp b/mythplugins/mythnetvision/mythnetvision/netcommon.cpp
index 1397347..296d923 100644
@@ -114,6 +130,19 @@
private slots:
void streamWebVideo(void);
void showWebVideo(void);
+diff --git a/mythtv/external/FFmpeg/libavcodec/aacdec.c b/mythtv/external/FFmpeg/libavcodec/aacdec.c
+index c9eb798..66c7b3b 100644
+--- a/mythtv/external/FFmpeg/libavcodec/aacdec.c
++++ b/mythtv/external/FFmpeg/libavcodec/aacdec.c
+@@ -399,7 +399,7 @@ static uint64_t sniff_channel_order(uint8_t (*layout_map)[3], int tags)
+ * Save current output configuration if and only if it has been locked.
+ */
+ static void push_output_configuration(AACContext *ac) {
+- if (ac->oc[1].status == OC_LOCKED) {
++ if (ac->oc[1].status == OC_LOCKED || ac->oc[0].status == OC_NONE) {
+ ac->oc[0] = ac->oc[1];
+ }
+ ac->oc[1].status = OC_NONE;
diff --git a/mythtv/libs/libmyth/netgrabbermanager.cpp b/mythtv/libs/libmyth/netgrabbermanager.cpp
index 15d876a..6b1b38d 100644
--- a/mythtv/libs/libmyth/netgrabbermanager.cpp
@@ -218,6 +247,513 @@
/** \brief Increment this whenever the MythTV network protocol changes.
*
+diff --git a/mythtv/libs/libmythtv/profilegroup.cpp b/mythtv/libs/libmythtv/profilegroup.cpp
+index 72e8d33..f6b0f06 100644
+--- a/mythtv/libs/libmythtv/profilegroup.cpp
++++ b/mythtv/libs/libmythtv/profilegroup.cpp
+@@ -86,7 +86,8 @@ void ProfileGroup::fillSelections(SelectSetting* setting)
+ QString cardtype = result.value(4).toString();
+
+ // Only show default profiles that match installed cards
+- bool have_cardtype = cardtypes.contains(cardtype);
++ // Workaround for #12481 in fixes/0.27
++ bool have_cardtype = cardtypes.contains(cardtype, Qt::CaseInsensitive);
+ if (is_default && (cardtype == "TRANSCODE") && !have_cardtype)
+ {
+ tid = id;
+diff --git a/mythtv/libs/libmythtv/recorders/rtp/rtpdatapacket.h b/mythtv/libs/libmythtv/recorders/rtp/rtpdatapacket.h
+index 6586cc0..e8b8d94 100644
+--- a/mythtv/libs/libmythtv/recorders/rtp/rtpdatapacket.h
++++ b/mythtv/libs/libmythtv/recorders/rtp/rtpdatapacket.h
+@@ -43,12 +43,6 @@ class RTPDataPacket : public UDPPacket
+ .arg(GetVersion()));
+ return false;
+ }
+- if (HasPadding() && (m_data.size() < 1328))
+- {
+- LOG(VB_GENERAL, LOG_INFO, QString("HasPadding && %1 < 1328")
+- .arg(m_data.size()));
+- return false;
+- }
+
+ int off = 12 + 4 * GetCSRCCount();
+ if (off > m_data.size())
+@@ -120,7 +114,7 @@ class RTPDataPacket : public UDPPacket
+ {
+ if (!HasPadding())
+ return 0;
+- return m_data[1328];
++ return m_data[m_data.size()-1];
+ }
+
+ protected:
+diff --git a/mythtv/libs/libmythtv/recorders/rtp/rtptsdatapacket.h b/mythtv/libs/libmythtv/recorders/rtp/rtptsdatapacket.h
+index 95cf684..ead472d 100644
+--- a/mythtv/libs/libmythtv/recorders/rtp/rtptsdatapacket.h
++++ b/mythtv/libs/libmythtv/recorders/rtp/rtptsdatapacket.h
+@@ -29,7 +29,7 @@ class RTPTSDataPacket : public RTPDataPacket
+
+ unsigned int GetTSDataSize(void) const
+ {
+- return max(1328 - (int)GetTSOffset() - (int)GetPaddingSize(), 0);
++ return max(m_data.size() - (int)GetTSOffset() - (int)GetPaddingSize(), 0);
+ }
+
+ private:
+diff --git a/mythtv/libs/libmythui/libmythui.pro b/mythtv/libs/libmythui/libmythui.pro
+index 589639c..8143126 100644
+--- a/mythtv/libs/libmythui/libmythui.pro
++++ b/mythtv/libs/libmythui/libmythui.pro
+@@ -112,6 +112,13 @@ using_x11 {
+ POST_TARGETDEPS += ../libmythnvctrl/libmythnvctrl-$${MYTH_LIB_EXT}
+ }
+
++using_qtdbus {
++ QT += dbus
++ DEFINES += USING_DBUS
++ HEADERS += screensaver-dbus.h
++ SOURCES += screensaver-dbus.cpp
++}
++
+ macx {
+ HEADERS += screensaver-osx.h DisplayResOSX.h util-osx.h
+ SOURCES += screensaver-osx.cpp DisplayResOSX.cpp util-osx.cpp
+diff --git a/mythtv/libs/libmythui/mythuibuttonlist.cpp b/mythtv/libs/libmythui/mythuibuttonlist.cpp
+index ea0d634..8b13eef 100644
+--- a/mythtv/libs/libmythui/mythuibuttonlist.cpp
++++ b/mythtv/libs/libmythui/mythuibuttonlist.cpp
+@@ -3518,7 +3518,7 @@ void MythUIButtonListItem::SetToRealButton(MythUIStateType *button, bool selecte
+
+ QString newText = text->GetTemplateText();
+
+- QRegExp regexp("%(([^\\|%]+)?\\||\\|(.))?(\\S+)(\\|(.+))?%");
++ QRegExp regexp("%(([^\\|%]+)?\\||\\|(.))?([\\w#]+)(\\|(.+))?%");
+ regexp.setMinimal(true);
+
+ if (!newText.isEmpty() && newText.contains(regexp))
+diff --git a/mythtv/libs/libmythui/mythuihelper.cpp b/mythtv/libs/libmythui/mythuihelper.cpp
+index 19fcde4..0520be5 100644
+--- a/mythtv/libs/libmythui/mythuihelper.cpp
++++ b/mythtv/libs/libmythui/mythuihelper.cpp
+@@ -197,7 +197,7 @@ MythUIHelperPrivate::~MythUIHelperPrivate()
+
+ void MythUIHelperPrivate::Init(void)
+ {
+- screensaver = ScreenSaverControl::get();
++ screensaver = new ScreenSaverControl();
+ GetScreenBounds();
+ StoreGUIsettings();
+ screenSetup = true;
+diff --git a/mythtv/libs/libmythui/mythuitext.cpp b/mythtv/libs/libmythui/mythuitext.cpp
+index 60fa71f..b6fcfcb 100644
+--- a/mythtv/libs/libmythui/mythuitext.cpp
++++ b/mythtv/libs/libmythui/mythuitext.cpp
+@@ -132,7 +132,7 @@ void MythUIText::ResetMap(const InfoMap &map)
+ if (newText.isEmpty())
+ newText = GetDefaultText();
+
+- QRegExp regexp("%(([^\\|%]+)?\\||\\|(.))?(\\w+)(\\|(.+))?%");
++ QRegExp regexp("%(([^\\|%]+)?\\||\\|(.))?([\\w#]+)(\\|(.+))?%");
+ regexp.setMinimal(true);
+
+ bool replaced = map.contains(objectName());
+@@ -196,7 +196,7 @@ void MythUIText::SetTextFromMap(const InfoMap &map)
+ if (newText.isEmpty())
+ newText = GetDefaultText();
+
+- QRegExp regexp("%(([^\\|%]+)?\\||\\|(.))?(\\S+)(\\|(.+))?%");
++ QRegExp regexp("%(([^\\|%]+)?\\||\\|(.))?([\\w#]+)(\\|(.+))?%");
+ regexp.setMinimal(true);
+
+ if (!newText.isEmpty() && newText.contains(regexp))
+diff --git a/mythtv/libs/libmythui/screensaver-dbus.cpp b/mythtv/libs/libmythui/screensaver-dbus.cpp
+new file mode 100644
+index 0000000..b099c46
+--- /dev/null
++++ b/mythtv/libs/libmythui/screensaver-dbus.cpp
+@@ -0,0 +1,171 @@
++#include <stdint.h>
++#include "screensaver-dbus.h"
++#include <QDBusConnection>
++#include <QDBusInterface>
++#include <QDBusReply>
++#include <QString>
++
++#include "mythlogging.h"
++
++#define LOC QString("ScreenSaverDBus: ")
++
++const char m_app[] = "MythTV";
++const char m_reason[] = "Watching TV";
++const char m_dbusInhibit[] = "Inhibit";
++
++#define NUM_DBUS_METHODS 4
++// Thanks to vlc for the set of dbus services to use.
++const char m_dbusService[][40] = {
++ "org.freedesktop.ScreenSaver", /**< KDE >= 4 and GNOME >= 3.10 */
++ "org.freedesktop.PowerManagement.Inhibit", /**< KDE and GNOME <= 2.26 */
++ "org.mate.SessionManager", /**< >= 1.0 */
++ "org.gnome.SessionManager", /**< GNOME 2.26..3.4 */
++};
++
++const char m_dbusPath[][33] = {
++ "/ScreenSaver",
++ "/org/freedesktop/PowerManagement",
++ "/org/mate/SessionManager",
++ "/org/gnome/SessionManager",
++};
++
++// Service name is also the interface name in all cases
++
++const char m_dbusUnInhibit[][10] = {
++ "UnInhibit",
++ "UnInhibit",
++ "Uninhibit",
++ "Uninhibit",
++};
++
++class ScreenSaverDBusPrivate
++{
++ friend class ScreenSaverDBus;
++
++ public:
++ ScreenSaverDBusPrivate(QString dbusService, QString dbusPath, QString dbusInterface, QDBusConnection *bus) :
++ m_inhibited(false),
++ m_cookie(0),
++ m_bus(bus),
++ m_interface(new QDBusInterface(dbusService, dbusPath , dbusInterface, *m_bus)),
++ m_unInhibit(""),
++ m_serviceUsed(dbusService)
++ {
++ if (!m_interface->isValid())
++ {
++ LOG(VB_GENERAL, LOG_WARNING, LOC + "Could not connect to dbus: " +
++ m_interface->lastError().message());
++ }
++ else
++ {
++ LOG(VB_GENERAL, LOG_INFO, LOC + "Created for DBus service: " + dbusService);
++ }
++ }
++ ~ScreenSaverDBusPrivate()
++ {
++ delete m_interface;
++ }
++ void Inhibit(void)
++ {
++ if (m_interface->isValid())
++ {
++ // method uint org.freedesktop.ScreenSaver.Inhibit(QString application_name, QString reason_for_inhibit)
++ QDBusMessage msg = m_interface->call(QDBus::Block, m_dbusInhibit , m_app, m_reason);
++ if (msg.type() == QDBusMessage::ReplyMessage)
++ {
++ QList<QVariant> replylist = msg.arguments();
++ QVariant reply = replylist.first();
++ m_cookie = reply.toUInt();
++ m_inhibited = true;
++ LOG(VB_GENERAL, LOG_INFO, LOC +
++ QString("Successfully inhibited screensaver via %1. cookie %2. nom nom")
++ .arg(m_serviceUsed).arg(m_cookie));
++ }
++ else // msg.type() == QDBusMessage::ErrorMessage
++ {
++ LOG(VB_GENERAL, LOG_WARNING, LOC + "Failed to disable screensaver: " +
++ msg.errorMessage());
++ }
++ }
++ }
++ void UnInhibit(void)
++ {
++ if (m_interface->isValid())
++ {
++ // Don't block waiting for the reply, there isn't one
++ // method void org.freedesktop.ScreenSaver.UnInhibit(uint cookie) (or equivalent)
++ if (m_cookie != 0) {
++ m_interface->call(QDBus::NoBlock, m_unInhibit , m_cookie);
++ m_cookie = 0;
++ m_inhibited = false;
++ LOG(VB_GENERAL, LOG_INFO, LOC + QString("Screensaver uninhibited via %1")
++ .arg(m_serviceUsed));
++ }
++ }
++ }
++ void SetUnInhibit(QString method) { m_unInhibit = method; }
++
++ protected:
++ bool m_inhibited;
++ uint32_t m_cookie;
++ QDBusConnection *m_bus;
++ QDBusInterface *m_interface;
++ private:
++ QString m_unInhibit;
++ QString m_serviceUsed;
++};
++
++ScreenSaverDBus::ScreenSaverDBus() :
++ m_bus(QDBusConnection::sessionBus()),
++ d(NULL),
++ m_dbusPrivateInterfaces(QList<ScreenSaverDBusPrivate *>())
++{
++ // service, path, interface, bus - note that interface = service, hence it is used twice
++ for (uint i=0; i < NUM_DBUS_METHODS; i++) {
++ ScreenSaverDBusPrivate *ssdbp =
++ new ScreenSaverDBusPrivate(m_dbusService[i], m_dbusPath[i], m_dbusService[i], &m_bus);
++ ssdbp->SetUnInhibit(m_dbusUnInhibit[i]);
++ m_dbusPrivateInterfaces.push_back(ssdbp);
++ }
++}
++
++ScreenSaverDBus::~ScreenSaverDBus()
++{
++ ScreenSaverDBus::Restore();
++ while (!m_dbusPrivateInterfaces.isEmpty()) {
++ ScreenSaverDBusPrivate *ssdbp = m_dbusPrivateInterfaces.takeLast();
++ delete ssdbp;
++ }
++}
++
++void ScreenSaverDBus::Disable(void)
++{
++ QList<ScreenSaverDBusPrivate *>::iterator i;
++ for (i = m_dbusPrivateInterfaces.begin(); i != m_dbusPrivateInterfaces.end(); ++i) {
++ (*i)->Inhibit();
++ }
++}
++
++void ScreenSaverDBus::Restore(void)
++{
++ QList<ScreenSaverDBusPrivate *>::iterator i;
++ for (i = m_dbusPrivateInterfaces.begin(); i != m_dbusPrivateInterfaces.end(); ++i) {
++ (*i)->UnInhibit();
++ }
++}
++
++void ScreenSaverDBus::Reset(void)
++{
++ Restore();
++}
++
++bool ScreenSaverDBus::Asleep(void)
++{
++ QList<ScreenSaverDBusPrivate *>::iterator i;
++ for (i = m_dbusPrivateInterfaces.begin(); i != m_dbusPrivateInterfaces.end(); ++i) {
++ if((*i)->m_inhibited) {
++ return true;
++ }
++ }
++ return false;
++}
+diff --git a/mythtv/libs/libmythui/screensaver-dbus.h b/mythtv/libs/libmythui/screensaver-dbus.h
+new file mode 100644
+index 0000000..f22252b
+--- /dev/null
++++ b/mythtv/libs/libmythui/screensaver-dbus.h
+@@ -0,0 +1,25 @@
++#ifndef MYTH_SCREENSAVER_DBUS_H
++#define MYTH_SCREENSAVER_DBUS_H
++
++#include "screensaver.h"
++#include "QDBusConnection"
++
++class ScreenSaverDBus : public ScreenSaver
++{
++ public:
++ ScreenSaverDBus();
++ ~ScreenSaverDBus();
++
++ void Disable(void);
++ void Restore(void);
++ void Reset(void);
++
++ bool Asleep(void);
++ protected:
++ QDBusConnection m_bus;
++ class ScreenSaverDBusPrivate *d;
++ QList<ScreenSaverDBusPrivate *> m_dbusPrivateInterfaces;
++};
++
++#endif // MYTH_SCREENSAVER_DBUS_H
++
+diff --git a/mythtv/libs/libmythui/screensaver-null.h b/mythtv/libs/libmythui/screensaver-null.h
+index 60119dd..1267324 100644
+--- a/mythtv/libs/libmythui/screensaver-null.h
++++ b/mythtv/libs/libmythui/screensaver-null.h
+@@ -3,7 +3,7 @@
+
+ #include "screensaver.h"
+
+-class ScreenSaverNull : public ScreenSaverControl
++class ScreenSaverNull : public ScreenSaver
+ {
+ public:
+ ScreenSaverNull();
+diff --git a/mythtv/libs/libmythui/screensaver-osx.h b/mythtv/libs/libmythui/screensaver-osx.h
+index dae5622..69413a7 100644
+--- a/mythtv/libs/libmythui/screensaver-osx.h
++++ b/mythtv/libs/libmythui/screensaver-osx.h
+@@ -3,7 +3,7 @@
+
+ #include "screensaver.h"
+
+-class ScreenSaverOSX : public ScreenSaverControl
++class ScreenSaverOSX : public ScreenSaver
+ {
+ public:
+ ScreenSaverOSX();
+diff --git a/mythtv/libs/libmythui/screensaver-x11.h b/mythtv/libs/libmythui/screensaver-x11.h
+index 0fa7956..5945f9e 100644
+--- a/mythtv/libs/libmythui/screensaver-x11.h
++++ b/mythtv/libs/libmythui/screensaver-x11.h
+@@ -5,7 +5,7 @@
+
+ #include "screensaver.h"
+
+-class ScreenSaverX11 : public QObject, public ScreenSaverControl
++class ScreenSaverX11 : public QObject, public ScreenSaver
+ {
+ Q_OBJECT
+
+diff --git a/mythtv/libs/libmythui/screensaver.cpp b/mythtv/libs/libmythui/screensaver.cpp
+index a9e480a..de4d148 100644
+--- a/mythtv/libs/libmythui/screensaver.cpp
++++ b/mythtv/libs/libmythui/screensaver.cpp
+@@ -2,6 +2,10 @@
+ #include "screensaver.h"
+ #include "screensaver-null.h"
+
++#ifdef USING_DBUS
++#include "screensaver-dbus.h"
++#endif // USING_DBUS
++
+ #ifdef USING_X11
+ #include "screensaver-x11.h"
+ #endif // USING_X11
+@@ -13,21 +17,61 @@
+ QEvent::Type ScreenSaverEvent::kEventType =
+ (QEvent::Type) QEvent::registerEventType();
+
+-ScreenSaverControl* ScreenSaverSingleton = NULL;
+-
+-ScreenSaverControl* ScreenSaverControl::get(void)
++ScreenSaverControl::ScreenSaverControl() :
++ m_screenSavers(QList<ScreenSaver *>())
+ {
+- if (!ScreenSaverSingleton)
+- {
+-
++ ScreenSaver * tmp;
++#if defined(USING_DBUS)
++ tmp = new ScreenSaverDBus();
++ m_screenSavers.push_back(tmp);
++#endif
+ #if defined(USING_X11)
+- ScreenSaverSingleton = new ScreenSaverX11();
++ tmp = new ScreenSaverX11();
++ m_screenSavers.push_back(tmp);
+ #elif CONFIG_DARWIN
+- ScreenSaverSingleton = new ScreenSaverOSX();
+-#else
+- ScreenSaverSingleton = new ScreenSaverNull();
++ tmp = new ScreenSaverOSX();
++ m_screenSavers.push_back(tmp);
+ #endif
++#if not (defined(USING_DBUS) || defined(USING_X11) || CONFIG_DARWIN)
++ tmp = new ScreenSaverNull();
++ m_screenSavers.push_back(tmp);
++#endif
++}
++
++ScreenSaverControl::~ScreenSaverControl() {
++ while (!m_screenSavers.isEmpty()) {
++ ScreenSaver *tmp = m_screenSavers.takeLast();
++ delete tmp;
++ }
++}
++
++void ScreenSaverControl::Disable(void) {
++ QList<ScreenSaver *>::iterator i;
++ for (i = m_screenSavers.begin(); i != m_screenSavers.end(); ++i) {
++ (*i)->Disable();
++ }
++}
++
++void ScreenSaverControl::Restore(void) {
++ QList<ScreenSaver *>::iterator i;
++ for (i = m_screenSavers.begin(); i != m_screenSavers.end(); ++i) {
++ (*i)->Restore();
++ }
++}
++
++void ScreenSaverControl::Reset(void) {
++ QList<ScreenSaver *>::iterator i;
++ for (i = m_screenSavers.begin(); i != m_screenSavers.end(); ++i) {
++ (*i)->Reset();
++ }
++}
++
++bool ScreenSaverControl::Asleep(void) {
++ QList<ScreenSaver *>::iterator i;
++ for (i = m_screenSavers.begin(); i != m_screenSavers.end(); ++i) {
++ if((*i)->Asleep()) {
++ return true;
++ }
+ }
+-
+- return ScreenSaverSingleton;
++ return false;
+ }
+diff --git a/mythtv/libs/libmythui/screensaver.h b/mythtv/libs/libmythui/screensaver.h
+index 018ff06..0c45e16 100644
+--- a/mythtv/libs/libmythui/screensaver.h
++++ b/mythtv/libs/libmythui/screensaver.h
+@@ -2,6 +2,7 @@
+ #define MYTH_SCREENSAVER_H
+
+ #include <QEvent>
++#include <QList>
+
+ class ScreenSaverEvent : public QEvent
+ {
+@@ -24,20 +25,32 @@ protected:
+ ScreenSaverEventKind sset;
+ };
+
+-class ScreenSaverControl
++/// Base Class for screensavers
++class ScreenSaver
+ {
+ public:
+- // creates one of the concrete subsclasses
+- static ScreenSaverControl* get(void);
+-
+- ScreenSaverControl() { };
+- virtual ~ScreenSaverControl() { };
++ ScreenSaver() { };
++ virtual ~ScreenSaver() { };
+
+ virtual void Disable(void) = 0;
+ virtual void Restore(void) = 0;
+ virtual void Reset(void) = 0;
+-
+ virtual bool Asleep(void) = 0;
+ };
+
++/// Controls all instances of the screensaver
++class ScreenSaverControl
++{
++ public:
++ ScreenSaverControl();
++ ~ScreenSaverControl();
++
++ void Disable(void);
++ void Restore(void);
++ void Reset(void);
++ bool Asleep(void);
++ private:
++ QList<ScreenSaver *> m_screenSavers;
++};
++
+ #endif // MYTH_SCREENSAVER_H
diff --git a/mythtv/programs/mythbackend/internetContent.cpp b/mythtv/programs/mythbackend/internetContent.cpp
index 0701cc8..cbfa278 100644
--- a/mythtv/programs/mythbackend/internetContent.cpp
@@ -255,6 +791,82 @@
loop.exec();
search->process();
+diff --git a/mythtv/programs/mythfilldatabase/main.cpp b/mythtv/programs/mythfilldatabase/main.cpp
+index d936e9b..e5f9874 100644
+--- a/mythtv/programs/mythfilldatabase/main.cpp
++++ b/mythtv/programs/mythfilldatabase/main.cpp
+@@ -607,10 +607,12 @@ int main(int argc, char *argv[])
+
+ LOG(VB_GENERAL, LOG_INFO, "Marking episode first showings.");
+ updt.prepare("UPDATE program "
+- "JOIN (SELECT MIN(starttime) AS starttime, programid "
+- " FROM program "
+- " WHERE programid <> '' "
+- " GROUP BY programid "
++ "JOIN (SELECT MIN(p.starttime) AS starttime, p.programid "
++ " FROM program p, channel c "
++ " WHERE p.programid <> '' "
++ " AND p.chanid = c.chanid "
++ " AND c.visible = 1 "
++ " GROUP BY p.programid "
+ " ) AS firsts "
+ "ON program.programid = firsts.programid "
+ " AND program.starttime = firsts.starttime "
+@@ -620,11 +622,13 @@ int main(int argc, char *argv[])
+ found = updt.numRowsAffected();
+
+ updt.prepare("UPDATE program "
+- "JOIN (SELECT MIN(starttime) AS starttime, title, subtitle,"
+- " LEFT(description, 1024) AS partdesc "
+- " FROM program "
+- " WHERE programid = '' "
+- " GROUP BY title, subtitle, partdesc "
++ "JOIN (SELECT MIN(p.starttime) AS starttime, p.title, p.subtitle, "
++ " LEFT(p.description, 1024) AS partdesc "
++ " FROM program p, channel c "
++ " WHERE p.programid = '' "
++ " AND p.chanid = c.chanid "
++ " AND c.visible = 1 "
++ " GROUP BY p.title, p.subtitle, partdesc "
+ " ) AS firsts "
+ "ON program.starttime = firsts.starttime "
+ " AND program.title = firsts.title "
+@@ -639,10 +643,12 @@ int main(int argc, char *argv[])
+
+ LOG(VB_GENERAL, LOG_INFO, "Marking episode last showings.");
+ updt.prepare("UPDATE program "
+- "JOIN (SELECT MAX(starttime) AS starttime, programid "
+- " FROM program "
+- " WHERE programid <> '' "
+- " GROUP BY programid "
++ "JOIN (SELECT MAX(p.starttime) AS starttime, p.programid "
++ " FROM program p, channel c "
++ " WHERE p.programid <> '' "
++ " AND p.chanid = c.chanid "
++ " AND c.visible = 1 "
++ " GROUP BY p.programid "
+ " ) AS lasts "
+ "ON program.programid = lasts.programid "
+ " AND program.starttime = lasts.starttime "
+@@ -652,11 +658,13 @@ int main(int argc, char *argv[])
+ found = updt.numRowsAffected();
+
+ updt.prepare("UPDATE program "
+- "JOIN (SELECT MAX(starttime) AS starttime, title, subtitle,"
+- " LEFT(description, 1024) AS partdesc "
+- " FROM program "
+- " WHERE programid = '' "
+- " GROUP BY title, subtitle, partdesc "
++ "JOIN (SELECT MAX(p.starttime) AS starttime, p.title, p.subtitle, "
++ " LEFT(p.description, 1024) AS partdesc "
++ " FROM program p, channel c "
++ " WHERE p.programid = '' "
++ " AND p.chanid = c.chanid "
++ " AND c.visible = 1 "
++ " GROUP BY p.title, p.subtitle, partdesc "
+ " ) AS lasts "
+ "ON program.starttime = lasts.starttime "
+ " AND program.title = lasts.title "
diff --git a/mythtv/programs/scripts/internetcontent/nv_python_libs/common/common_api.py b/mythtv/programs/scripts/internetcontent/nv_python_libs/common/common_api.py
index 643fcb1..0334124 100644
--- a/mythtv/programs/scripts/internetcontent/nv_python_libs/common/common_api.py
@@ -370,7 +982,7 @@
+ total.append(char)
+ return "".join(total)
diff --git a/mythtv/programs/scripts/internetcontent/nv_python_libs/youtube/youtube_api.py b/mythtv/programs/scripts/internetcontent/nv_python_libs/youtube/youtube_api.py
-index f6f967f..f8b3121 100644
+index f6f967f..62fde93 100644
--- a/mythtv/programs/scripts/internetcontent/nv_python_libs/youtube/youtube_api.py
+++ b/mythtv/programs/scripts/internetcontent/nv_python_libs/youtube/youtube_api.py
@@ -19,7 +19,7 @@ meta data, video and image URLs from youtube. These routines are based on the ap
@@ -600,7 +1212,7 @@
- }
+ # Read region code from user preferences, used by tree view
+ region = self.userPrefs.find("region")
-+ if region != None:
++ if region != None and region.text:
+ self.config['region'] = region.text
+ else:
+ self.config['region'] = u'us'
Index: mythtv.spec
===================================================================
RCS file: /cvs/free/rpms/mythtv/devel/mythtv.spec,v
retrieving revision 1.152
retrieving revision 1.153
diff -u -r1.152 -r1.153
--- mythtv.spec 21 Jul 2015 19:38:42 -0000 1.152
+++ mythtv.spec 2 Nov 2015 16:14:55 -0000 1.153
@@ -61,7 +61,7 @@
%define desktop_vendor RPMFusion
# MythTV Version string -- preferably the output from git describe
-%define vers_string v0.27.5-3-g9498257
+%define vers_string v0.27.5-28-g3682a9a
%define branch fixes/0.27
# Git revision and branch ID
@@ -82,7 +82,7 @@
%if "%{branch}" == "master"
Release: 0.1.git.%{_gitrev}%{?dist}
%else
-Release: 1%{?dist}
+Release: 2%{?dist}
%endif
# The primary license is GPLv2+, but bits are borrowed from a number of
@@ -131,7 +131,7 @@
################################################################################
# https://github.com/MythTV/mythtv/tarball/v0.26
-Source0: %{name}-%{version}.tar.gz
+Source0: https://github.com/MythTV/%{name}/archive/v%{version}.tar.gz#/%{name}-%{v...
# From the mythtv git repository with the appropriate branch checked out:
# git diff -p --stat v0.26.0 > mythtv-0.26-fixes.patch
@@ -795,7 +795,7 @@
%prep
%setup -q -n %{name}-%{version}
-# Replace static lib paths with %{_lib} so we build properly on x86_64
+# Replace static lib paths with %%{_lib} so we build properly on x86_64
# systems, where the libs are actually in lib64.
if [ "%{_lib}" != "lib" ]; then
find \( -name 'configure' -o -name '*pro' -o -name 'Makefile' \) -exec sed -r -i -e 's,/lib\b,/%{_lib},g' {} \+
@@ -820,7 +820,7 @@
BRANCH=%{branch}
EOF
-# Drop execute permissions on contrib bits, since they'll be %doc
+# Drop execute permissions on contrib bits, since they'll be %%doc
find contrib/ -type f -exec chmod -x "{}" \;
# And drop execute bit on theme html files
chmod -x themes/default/htmls/*.html
@@ -877,10 +877,10 @@
--enable-vdpau \
%endif
%if %{with_vaapi}
- --enable-vaapi \
+ --enable-vaapi \
%endif
%if !%{with_crystalhd}
- --disable-crystalhd \
+ --disable-crystalhd \
%endif
%if !%{with_perl}
--without-bindings=perl \
@@ -1022,9 +1022,6 @@
mkdir -p %{buildroot}%{_sysconfdir}/mythtv
-# Fix permissions on executable python bindings
-# chmod +x %{buildroot}%{python_sitelib}/MythTV/Myth*.py
-
# config/init files
echo "# to be filled in by mythtv-setup" > %{buildroot}%{_sysconfdir}/mythtv/config.xml
@@ -1093,7 +1090,6 @@
%if %{with_mythgame}
mkdir -p %{buildroot}%{_datadir}/mythtv/games/nes/{roms,screens}
mkdir -p %{buildroot}%{_datadir}/mythtv/games/snes/{roms,screens}
-# mkdir -p %{buildroot}%{_datadir}/mythtv/games/mame/{roms,screens,flyers,cabs}
mkdir -p %{buildroot}%{_datadir}/mythtv/games/PC/screens
mkdir -p %{buildroot}%{_datadir}/mame
ln -s ../../mame %{buildroot}%{_datadir}/mythtv/games/xmame
@@ -1193,8 +1189,8 @@
%doc mythtv/FAQ
%doc mythtv/database mythtv/keys.txt
# Do we really need the API documentation?
-#%doc mythtv/docs/*.html mythtv/docs/*.png
-#%doc mythtv/docs/*.txt
+#%%doc mythtv/docs/*.html mythtv/docs/*.png
+#%%doc mythtv/docs/*.txt
%doc mythtv/contrib
%files common
@@ -1220,7 +1216,7 @@
%{_bindir}/mythmediaserver
%{_bindir}/mythreplex
%{_bindir}/mythhdhomerun_config
-%{_bindir}/mythdb_optimize
+%{_bindir}/optimize_mythdb
%{_datadir}/mythtv/MXML_scpd.xml
%{_datadir}/mythtv/backend-config/
%attr(-,mythtv,mythtv) %dir %{_localstatedir}/lib/mythtv
@@ -1297,8 +1293,6 @@
%{perl_vendorlib}/MythTV.pm
%dir %{perl_vendorlib}/MythTV
%{perl_vendorlib}/MythTV/*.pm
-#%dir %{perl_vendorlib}/IO/Socket
-#%dir %{perl_vendorlib}/IO/Socket/INET
%{perl_vendorlib}/IO/Socket/INET/MythTV.pm
%exclude %{perl_vendorarch}/auto/MythTV/.packlist
%endif
9 years