summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2019-12-03 22:16:15 -0600
committerEric Bavier <bavier@member.fsf.org>2019-12-03 22:20:22 -0600
commitdc3e62a4949ab40cd81c40bb8d2d8df527a4c696 (patch)
tree5c672977772862c5eecd88b28427ed19e0d19d60 /gnu
parent32c06affca63f12bb1de78e7c1ae52be5b61bb30 (diff)
gnu: handbrake: Upgrade to 1.3.0.
* gnu/packages/patches/handbrake-opt-in-nvenc.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. * gnu/packages/video.scm (handbrake)[source]: Upgrade to 1.3.0. Remove patch. [native-inputs]: Remove cmake and curl. [inputs]: Add dav1d and numactl. [arguments]: Add "--disable-nvenc" to configure flags in place of patch. Adjust "bootstrap" phase in response to upstream changes. Add "patch-SHELL" and "relax-reqs" phases.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/handbrake-opt-in-nvenc.patch14
-rw-r--r--gnu/packages/video.scm40
3 files changed, 28 insertions, 27 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index e2d922373e..b5d302f7a3 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -962,7 +962,6 @@ dist_patch_DATA = \
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \
%D%/packages/patches/gzdoom-search-in-installed-share.patch \
- %D%/packages/patches/handbrake-opt-in-nvenc.patch \
%D%/packages/patches/haskell-mode-unused-variables.patch \
%D%/packages/patches/haskell-mode-make-check.patch \
%D%/packages/patches/hdf4-architectures.patch \
diff --git a/gnu/packages/patches/handbrake-opt-in-nvenc.patch b/gnu/packages/patches/handbrake-opt-in-nvenc.patch
deleted file mode 100644
index 2b34aaa427..0000000000
--- a/gnu/packages/patches/handbrake-opt-in-nvenc.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Require opt-in for NVEnc support. Otherwise the default is true with no way
-to disable it.
-
---- HandBrake-1.2.0/make/configure.py.orig 1969-12-31 18:00:00.000000000 -0600
-+++ HandBrake-1.2.0/make/configure.py 2019-01-22 23:22:46.186959060 -0600
-@@ -1320,7 +1320,7 @@
- grp.add_option( '--disable-ffmpeg-aac', dest="enable_ffmpeg_aac", action='store_false' )
-
- h = IfHost( 'enable Nvidia NVEnc video encoder', '*-*-*', none=optparse.SUPPRESS_HELP ).value
-- grp.add_option( '--enable-nvenc', dest="enable_nvenc", default=not (host.match( '*-*-darwin*' ) or host.match( '*-*-freebsd*' )), action='store_true', help=h )
-+ grp.add_option( '--enable-nvenc', dest="enable_nvenc", default=False, action='store_true', help=h )
-
-
- cli.add_option_group( grp )
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index cd367c2d68..030280c624 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -2636,39 +2636,36 @@ supported players in addition to this package.")
(define-public handbrake
(package
(name "handbrake")
- (version "1.2.2")
+ (version "1.3.0")
(source (origin
(method url-fetch)
(uri (string-append "https://download.handbrake.fr/releases/"
version "/HandBrake-" version "-source.tar.bz2"))
(sha256
(base32
- "0k2yaqy7zi06k8mkp9az2mn9dlgj3a1339vacakfh2nn2zsics6z"))
+ "15hxncswmaj62hb40fxixsa6d519zb712z9xbdq979q4rasjxa59"))
(modules '((guix build utils)))
(snippet
;; Remove "contrib" and source not necessary for
;; building/running under a GNU environment.
'(begin
(for-each delete-file-recursively
- '("contrib" "macosx" "win"))
+ '("contrib" "macosx" "win")) ; 540KiB, 11MiB, 5.9MiB resp.
(substitute* "make/include/main.defs"
;; Disable unconditional inclusion of "contrib" libraries
;; (ffmpeg, libvpx, libdvdread, libdvdnav, and libbluray),
;; which would lead to fetching and building of these
;; libraries. Use our own instead.
(("MODULES \\+= contrib") "# MODULES += contrib"))
- #t))
- (patches (search-patches "handbrake-opt-in-nvenc.patch"))))
+ #t))))
(build-system glib-or-gtk-build-system)
(native-inputs
- `(("automake" ,automake) ;gui subpackage must be bootstrapped
+ `(("automake" ,automake) ; GUI subpackage must be bootstrapped
("autoconf" ,autoconf)
- ("cmake" ,cmake-minimal) ;TODO: could probably strip check from make/configure.py
- ("curl" ,curl) ;not actually used, but tested for
("intltool" ,intltool)
("libtool" ,libtool)
("pkg-config" ,pkg-config)
- ("python" ,python-2))) ;for configuration
+ ("python" ,python-2))) ; For configuration
(inputs
`(("bzip2" ,bzip2)
("dbus-glib" ,dbus-glib)
@@ -2683,11 +2680,13 @@ supported players in addition to this package.")
("lame" ,lame)
("libass" ,libass)
("libbluray" ,libbluray)
+ ("libdav1d" ,dav1d)
("libdvdnav" ,libdvdnav)
("libdvdread" ,libdvdread)
("libgudev" ,libgudev)
("libmpeg2" ,libmpeg2)
("libnotify" ,libnotify)
+ ("libnuma" ,numactl)
("libogg" ,libogg)
("libopus" ,opus)
("libsamplerate" ,libsamplerate)
@@ -2703,6 +2702,7 @@ supported players in addition to this package.")
`(#:tests? #f ;tests require Ruby and claim to be unsupported
#:configure-flags
(list "--disable-gtk-update-checks"
+ "--disable-nvenc"
(string-append "CPPFLAGS=-I"
(assoc-ref %build-inputs "libxml2")
"/include/libxml2")
@@ -2713,11 +2713,27 @@ supported players in addition to this package.")
;; Run bootstrap ahead of time so that shebangs get patched.
(lambda _
(setenv "CONFIG_SHELL" (which "sh"))
- (setenv "NOCONFIGURE" "1")
;; Patch the Makefile so that it doesn't bootstrap again.
(substitute* "gtk/module.rules"
- ((".*autogen\\.sh.*") ""))
- (invoke "sh" "./gtk/autogen.sh")))
+ ((".*autoreconf.*") ""))
+ (with-directory-excursion "gtk"
+ (invoke "autoreconf" "-fiv"))))
+ (add-before 'configure 'patch-SHELL
+ (lambda _
+ (substitute* "gtk/po/Makefile.in.in"
+ (("SHELL = /bin/sh") "SHELL = @SHELL@"))
+ #t))
+ (add-before 'configure 'relax-reqs
+ (lambda _
+ (substitute* "make/configure.py"
+ ;; cmake is checked for so that it can be used to build
+ ;; contrib/harfbuzz and contrib/x265, but we get these as
+ ;; inputs, so don't abort if it's not found. Similarly, meson
+ ;; and ninja are only needed for contrib/libdav1d, and nasm
+ ;; only for libvpx
+ (("((cmake|meson|ninja|nasm) *=.*abort=)True" _ &)
+ (string-append & "False")))
+ #t))
(replace 'configure
(lambda* (#:key outputs configure-flags #:allow-other-keys)
;; 'configure' is not an autoconf-generated script, and