summaryrefslogtreecommitdiff
path: root/libre/handbrake/PKGBUILD
blob: bf6d640069022d34d5c9c6a046b1b07eb5b0f38b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# Maintainer (Arch): Evangelos Foutras <evangelos@foutrelis.com>
# Contributor (Arch): Giovanni Scafora <giovanni@archlinux.org>
# Contributor (Arch): Sebastien Piccand <sebcactus gmail com>
# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
# Contributor: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>

pkgname=('handbrake' 'handbrake-cli')
pkgver=1.3.0
pkgrel=2
pkgrel+=.par3
arch=('x86_64')
arch+=('i686' 'armv7h')
url="https://handbrake.fr/"
license=('GPL')
makedepends=('intltool' 'python2' 'nasm' 'wget' 'cmake' 'bzip2' 'gcc-libs' 'xz'
             'zlib' 'libnotify' 'gst-plugins-base' 'gtk3' 'dbus-glib' 'libass'
             'lame' 'libxml2' 'opus' 'libvorbis' 'libtheora' 'libsamplerate'
             'speex' 'x264' 'jansson' 'librsvg' 'libgudev')
makedepends+=('dav1d' 'libbluray' 'numactl' 'meson' 'x265')
makedepends+=('ffmpeg' 'libdvdnav')
source=(https://download.handbrake.fr/releases/$pkgver/HandBrake-$pkgver-source.tar.bz2
        https://github.com/HandBrake/HandBrake/releases/download/$pkgver/HandBrake-$pkgver-source.tar.bz2.sig
        0001-Fix-linking-issue-when-disabling-internal-libbluray.patch
        0002-Fix-linking-issue-when-disabling-internal-x265.patch)
sha256sums=('a9a82eb5ca04a793705b3d7d11cefa29946694eeb13b40161446aaca35b31d96'
            'SKIP'
            '8a2818c31815764227d52ea99f7291acacec16c62487f5ae7ea64fedd52546fd'
            'a1181cba4d83a20ead3e1d92649f8f25add000ebc3293829b9604cfc6ed79326')
validpgpkeys+=('1629C061B3DDE7EB4AE34B81021DB8B44E4A8645') # HandBrake Team <developers@handbrake.fr>

prepare() {
  cd "$srcdir/HandBrake-$pkgver"

  # Prevent fetching and use system libraries instead
  _libs="\
    ffmpeg \
    libbluray \
    libdav1d \
    libdvdnav \
    libdvdread \
    libvpx \
    nvenc \
    x264 \
    x265 \
    x265_8bit \
    x265_10bit \
    x265_12bit \
  "

  patch -Np1 -i ../0001-Fix-linking-issue-when-disabling-internal-libbluray.patch
  patch -Np1 -i ../0002-Fix-linking-issue-when-disabling-internal-x265.patch

  for _lib in $_libs ; do
    sed -i "/MODULES += contrib\/$_lib/d" make/include/main.defs
    rm -rf contrib/$_lib
  done
}

build() {
  cd "$srcdir/HandBrake-$pkgver"

  ./configure --prefix=/usr \
    --disable-df-fetch \
    --disable-gtk-update-checks \
    --disable-nvenc \

  make -C build
}

package_handbrake() {
  pkgdesc="Multithreaded video transcoder"
  depends=('bzip2' 'gcc-libs' 'zlib' 'gst-plugins-base' 'libnotify' 'dbus-glib'
           'gtk3' 'xz' 'libass' 'lame' 'libxml2' 'opus' 'libvorbis' 'libtheora'
           'libsamplerate' 'speex' 'x264' 'jansson' 'librsvg' 'libgudev'
           'desktop-file-utils' 'hicolor-icon-theme')
  depends+=('ffmpeg' 'libdvdnav')
  optdepends=('gst-plugins-good: for video previews'
              'gst-libav: for video previews'
              'libdvdcss: for decoding encrypted DVDs')

  cd "$srcdir/HandBrake-$pkgver/build"

  make DESTDIR="$pkgdir" install
  rm "$pkgdir/usr/bin/HandBrakeCLI"
}

package_handbrake-cli() {
  pkgdesc="Multithreaded video transcoder (CLI)"
  depends=('bzip2' 'gcc-libs' 'zlib' 'xz' 'libass' 'lame' 'libxml2' 'opus'
           'libvorbis' 'libtheora' 'libsamplerate' 'speex' 'x264' 'jansson')
  depends+=('ffmpeg' 'libdvdnav')
  optdepends=('libdvdcss: for decoding encrypted DVDs')

  cd "$srcdir/HandBrake-$pkgver/build"
  install -D HandBrakeCLI "$pkgdir/usr/bin/HandBrakeCLI"
}

# vim:set ts=2 sw=2 et: