From 6ed3a4406958842383ac710331fdf9d9b0d73f7e Mon Sep 17 00:00:00 2001 From: Giovanni Mariani Date: Sun, 16 Aug 2020 16:36:41 +0200 Subject: [PATCH] Updated to release 1.3.3, renumbered patches, added P0 to fix build, rediffed P1 and updated file list --- .abf.yml | 4 +- ROSA-force-system-libs.patch | 55 ----------- ...ake-1.3.3-ROSA-force-system-libs-use.patch | 26 ++++++ ...brake-1.3.3-fix-x265-linking-failure.patch | 12 +++ handbrake.spec | 91 +++++++++++-------- 5 files changed, 94 insertions(+), 94 deletions(-) delete mode 100644 ROSA-force-system-libs.patch create mode 100644 handbrake-1.3.3-ROSA-force-system-libs-use.patch create mode 100644 handbrake-1.3.3-fix-x265-linking-failure.patch diff --git a/.abf.yml b/.abf.yml index 7b46a4b..51ed899 100644 --- a/.abf.yml +++ b/.abf.yml @@ -1,4 +1,4 @@ sources: - HandBrake-1.2.0-source.tar.bz2: 1abdb80bbefab23bdad78d7081cc24e71926fb35 - handbrake-1.2.0_ru.tar.gz: 6bd50d9c34ae4cd978b9dd5f151420310eb703e3 + HandBrake-1.3.3-source.tar.bz2: efde8bb8cbb455e92f8bafd0f092db81c4b5827b download.tar.gz: fd9681c93e997bfb16cc2965398c8b6d17350008 + handbrake-1.2.0_ru.tar.gz: 6bd50d9c34ae4cd978b9dd5f151420310eb703e3 diff --git a/ROSA-force-system-libs.patch b/ROSA-force-system-libs.patch deleted file mode 100644 index da02682..0000000 --- a/ROSA-force-system-libs.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 3bc273ebe0520c988c4c41886c8f4cab6e2dc958 Mon Sep 17 00:00:00 2001 -From: Mikhail Novosyolov -Date: Sun, 6 Jan 2019 11:43:25 +0300 -Subject: [PATCH] Force using system libraries - Based on Debian's patch - https://salsa.debian.org/multimedia-team/handbrake/blob/master/debian/patches/0001-Remove-embedded-downloaded-copies-of-various-librari.patch - ---- - make/include/main.defs | 16 +--------------- - test/module.defs | 2 +- - 2 files changed, 2 insertions(+), 16 deletions(-) - -diff --git a/make/include/main.defs b/make/include/main.defs -index d56b752d4..a445f1e4d 100644 ---- a/make/include/main.defs -+++ b/make/include/main.defs -@@ -37,21 +37,7 @@ ifeq (1,$(FEATURE.flatpak)) - MODULES += contrib/x264 - endif - --ifeq (1,$(FEATURE.fdk_aac)) -- MODULES += contrib/fdk-aac --endif -- --ifeq (1,$(FEATURE.x265)) -- MODULES += contrib/x265 -- MODULES += contrib/x265_8bit -- MODULES += contrib/x265_10bit -- MODULES += contrib/x265_12bit --endif -- --MODULES += contrib/ffmpeg --MODULES += contrib/libvpx --MODULES += contrib/libdvdread --MODULES += contrib/libdvdnav -+# remove this when libbluray is >= 1.0 - MODULES += contrib/libbluray - - ifneq (,$(filter $(BUILD.system),mingw)) -diff --git a/test/module.defs b/test/module.defs -index 92ae40c45..c77b6f2f7 100644 ---- a/test/module.defs -+++ b/test/module.defs -@@ -39,7 +39,7 @@ ifeq (1,$(FEATURE.nvenc)) - endif - - ifeq (1,$(FEATURE.x265)) -- TEST.GCC.D += USE_X265 -+ TEST.GCC.l += x265 - endif - - ifeq (1,$(FEATURE.flatpak)) --- -2.17.1 - diff --git a/handbrake-1.3.3-ROSA-force-system-libs-use.patch b/handbrake-1.3.3-ROSA-force-system-libs-use.patch new file mode 100644 index 0000000..e580c77 --- /dev/null +++ b/handbrake-1.3.3-ROSA-force-system-libs-use.patch @@ -0,0 +1,26 @@ +diff -rupN HandBrake-1.3.3.old/make/include/main.defs HandBrake-1.3.3/make/include/main.defs +--- HandBrake-1.3.3.old/make/include/main.defs 2020-06-13 16:05:35.000000000 +0200 ++++ HandBrake-1.3.3/make/include/main.defs 2020-08-15 14:25:05.783897668 +0200 +@@ -35,21 +35,7 @@ ifeq (1,$(FEATURE.flatpak)) + MODULES += contrib/x264 + endif + +-ifeq (1,$(FEATURE.fdk_aac)) +- MODULES += contrib/fdk-aac +-endif +- +-ifeq (1,$(FEATURE.x265)) +- MODULES += contrib/x265 +- MODULES += contrib/x265_8bit +- MODULES += contrib/x265_10bit +- MODULES += contrib/x265_12bit +-endif +- +-MODULES += contrib/libdav1d +-MODULES += contrib/ffmpeg +-MODULES += contrib/libdvdread +-MODULES += contrib/libdvdnav ++# remove this when libbluray is >= 1.0 + MODULES += contrib/libbluray + + ifeq (1,$(FEATURE.qsv)) diff --git a/handbrake-1.3.3-fix-x265-linking-failure.patch b/handbrake-1.3.3-fix-x265-linking-failure.patch new file mode 100644 index 0000000..27a471e --- /dev/null +++ b/handbrake-1.3.3-fix-x265-linking-failure.patch @@ -0,0 +1,12 @@ +diff -rupN HandBrake-1.3.3.old/test/module.defs HandBrake-1.3.3/test/module.defs +--- HandBrake-1.3.3.old/test/module.defs 2020-06-13 16:05:35.000000000 +0200 ++++ HandBrake-1.3.3/test/module.defs 2020-08-15 14:22:44.208133677 +0200 +@@ -16,7 +16,7 @@ TEST.libs = $(LIBHB.a) + TEST.GCC.l = \ + ass avformat avfilter avcodec avutil swresample postproc mp3lame dvdnav \ + dvdread fribidi \ +- swscale vpx theoraenc theoradec vorbis vorbisenc ogg x264 \ ++ swscale vpx theoraenc theoradec vorbis vorbisenc ogg x264 x265 \ + bluray freetype xml2 bz2 z jansson harfbuzz opus speex lzma dav1d + + ifeq (,$(filter $(HOST.system),darwin cygwin mingw)) diff --git a/handbrake.spec b/handbrake.spec index f0bf1b3..7ab56aa 100644 --- a/handbrake.spec +++ b/handbrake.spec @@ -8,58 +8,70 @@ Summary: MPEG-AVC(H.264)/MPEG-4 converter Name: handbrake -Version: 1.2.0 -Release: 4 +Version: 1.3.3 +Release: 1 License: GPLv2+ Group: Video Url: http://handbrake.fr/ -Source0: %{oname}-%{version}-source.tar.bz2 +Source0: https://github.com/HandBrake/HandBrake/releases/download/%{version}/%{oname}-%{version}-source.tar.bz2 +# TODO: Update to the latest release... Source1: handbrake-1.2.0_ru.tar.gz -# force using system libraries, some from Source2 will not bee needed -Patch0: ROSA-force-system-libs.patch -# additional libraries +# Additional libraries Source2: download.tar.gz -BuildRequires: cmake +Patch0: handbrake-1.3.3-fix-x265-linking-failure.patch +# Force using system libraries, some from Source2 will not bee needed +Patch1: handbrake-1.3.3-ROSA-force-system-libs-use.patch +BuildRequires: cmake >= 2.8.12 +BuildRequires: gettext BuildRequires: intltool BuildRequires: iso-codes BuildRequires: libtool -BuildRequires: nasm +BuildRequires: meson >= 0.47.0 +BuildRequires: nasm >= 2.13.0 +BuildRequires: python3 BuildRequires: svn BuildRequires: valgrind BuildRequires: yasm +BuildRequires: ffnvcodec-headers BuildRequires: bzip2-devel BuildRequires: ffmpeg-devel -BuildRequires: jansson-devel -BuildRequires: liblame-devel +BuildRequires: lame-devel +BuildRequires: pkgconfig(dav1d) +BuildRequires: pkgconfig(dvdread) +BuildRequires: pkgconfig(dvdnav) +BuildRequires: pkgconfig(fdk-aac) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(fribidi) BuildRequires: pkgconfig(gstreamer-%{gstapi}) BuildRequires: pkgconfig(gstreamer-plugins-base-%{gstapi}) BuildRequires: pkgconfig(gthread-2.0) -BuildRequires: pkgconfig(gtk+-3.0) +BuildRequires: pkgconfig(gtk+-3.0) >= 3.16 BuildRequires: pkgconfig(gudev-1.0) +BuildRequires: pkgconfig(harfbuzz) +BuildRequires: pkgconfig(jansson) BuildRequires: pkgconfig(libass) +# We should switch to system libbluray in rosa2019.1 +# and update ROSA-force-system-libs.patch +%if %{mdvver} >= 201900 +BuildRequires: pkgconfig(libbluray) >= 1.0 +%endif BuildRequires: pkgconfig(libgtkhtml-3.14) +BuildRequires: pkgconfig(liblzma) BuildRequires: pkgconfig(libnotify) +BuildRequires: pkgconfig(libva) +BuildRequires: pkgconfig(libva-drm) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(opus) BuildRequires: pkgconfig(samplerate) +BuildRequires: pkgconfig(speex) BuildRequires: pkgconfig(theora) BuildRequires: pkgconfig(vorbis) +BuildRequires: pkgconfig(vpx) BuildRequires: pkgconfig(webkit-1.0) BuildRequires: pkgconfig(webkitgtk-3.0) BuildRequires: pkgconfig(x264) BuildRequires: pkgconfig(x265) -BuildRequires: pkgconfig(vpx) -BuildRequires: pkgconfig(dvdread) -BuildRequires: pkgconfig(dvdnav) -# we should switch to system libbluray in rosa2019.1 -# and update ROSA-force-system-libs.patch -%if %{mdvver} >= 201800 -BuildRequires: pkgconfig(libbluray) >= 1.0 -%endif -BuildRequires: pkgconfig(fdk-aac) -BuildRequires: pkgconfig(libva) -BuildRequires: pkgconfig(libva-drm) BuildRequires: pkgconfig(zlib) -BuildRequires: liblzma-devel -BuildRequires: ffnvcodec-headers Suggests: typelib(AppIndicator3) Suggests: gstreamer%{gstapi}-libav Suggests: gstreamer%{gstapi}-plugins-base @@ -80,53 +92,58 @@ devices. %{_bindir}/* %{_datadir}/applications/* %{_datadir}/icons/hicolor/scalable/apps/hb-icon.svg -%{_datadir}/icons/hicolor/scalable/apps/fr.handbrake.ghb.svg -%{_datadir}/metainfo/fr.handbrake.ghb.appdata.xml -#{_datadir}/locale/*/LC_MESSAGES/ghb.mo +%{_datadir}/icons/hicolor/scalable/apps/fr.%{name}.ghb.svg +%{_datadir}/metainfo/fr.%{name}.ghb.metainfo.xml #---------------------------------------------------------------------------- %prep %setup -qn %{oname}-%{version} -# we should switch to system libbluray in rosa2019.1 -%if %{mdvver} >= 201800 -if grep -q '^-MODULES += contrib/libbluray' %{PATCH0} ; then %patch0 -p1 -else echo "Switch to system libbluray!" ; exit 1 +# We should switch to system libbluray in rosa2019.1 +%if %{mdvver} >= 201900 +if grep -q '^-MODULES += contrib/libbluray' %{PATCH1} ; then + %patch1 -p1 + else echo "Switch to system libbluray!" ; exit 1 fi %else -%patch0 -p1 + %patch1 -p1 %endif +# Install optional libraries tar -xvzf %{SOURCE2} +# Install Russian translation files pushd gtk/po -tar -xvzf %{SOURCE1} + tar -xvzf %{SOURCE1} popd + %build bash ./configure \ --prefix=%{_prefix} \ --launch --launch-jobs=0 \ --enable-x265 \ --enable-fdk-aac \ - --enable-qsv + --disable-qsv pushd gtk -intltoolize -f -autoreconf -fi + autoreconf -vfi popd cd build && make + %install %makeinstall_std -C build +# Install command line program install -m 0755 build/HandBrakeCLI %{buildroot}%{_bindir}/HandBrakeCLI pushd %{buildroot}%{_bindir} -ln -s ./HandBrakeCLI ./handbrake + ln -s ./HandBrakeCLI ./%{name} popd +# Fix .desktop file desktop-file-install --vendor="" \ --remove-category="Application" \ --add-category="X-MandrivaLinux-Multimedia-Video" \