PKGBUILDs/extra/x265/PKGBUILD

103 lines
2.5 KiB
Bash
Raw Normal View History

2014-03-30 04:59:56 +00:00
# $Id$
2015-10-11 14:21:16 +00:00
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
2016-10-02 14:45:31 +00:00
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
2015-10-11 14:21:16 +00:00
# Contributor: kfgz <kfgz@interia.pl>
2014-03-30 04:59:56 +00:00
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - patch to attempt fixing ARM hackery by bandwagoning developers
2017-12-19 22:26:20 +00:00
# - retain 10/12 bit separation for AArch64
2018-05-29 13:11:16 +00:00
# - upstream patch to fix ARM FTBFS
2018-05-29 18:25:02 +00:00
# - disable all ARM assembly - version 2.8 broke ARM support completely
2014-03-30 04:59:56 +00:00
pkgname=x265
2018-05-29 13:03:23 +00:00
pkgver=2.8
2016-12-28 13:39:08 +00:00
pkgrel=1
2014-03-30 04:59:56 +00:00
pkgdesc='Open Source H265/HEVC video encoder'
2017-12-19 22:26:20 +00:00
arch=('x86_64')
2015-04-10 15:02:36 +00:00
url='https://bitbucket.org/multicoreware/x265'
2014-03-30 04:59:56 +00:00
license=('GPL')
depends=('gcc-libs')
2018-03-09 19:09:33 +00:00
makedepends=('cmake' 'nasm')
2015-04-10 15:02:36 +00:00
provides=('libx265.so')
2015-10-11 14:21:16 +00:00
source=("https://bitbucket.org/multicoreware/x265/downloads/x265_${pkgver}.tar.gz"
2018-05-29 13:11:16 +00:00
arm.patch
https://github.com/videolan/x265/commit/8911cbae1f7f868b213c5c0aa41cf827cdf367bb.patch)
2018-05-29 13:03:23 +00:00
sha256sums=('6e59f9afc0c2b87a46f98e33b5159d56ffb3558a49d8e3d79cb7fdc6b7aaa863'
2018-05-29 18:25:02 +00:00
'fdd9113a015679652224f2d62c4bbbffe9a15bfef8c6a928aaf2fc57d1cd8fd8'
2018-05-29 13:11:16 +00:00
'edd298ac1be919d325e618a20231a0f84c783fbdcba30e0e2372f69f471bd1cd')
2014-03-30 04:59:56 +00:00
prepare() {
2018-03-09 19:09:33 +00:00
cd x265_${pkgver}
2015-10-11 14:21:16 +00:00
2014-03-30 04:59:56 +00:00
patch -p1 -i ../arm.patch
2018-05-29 13:11:16 +00:00
patch -p1 -i ../8911cbae1f7f868b213c5c0aa41cf827cdf367bb.patch
2016-07-23 15:53:32 +00:00
[[ $CARCH == "aarch64" ]] && CFLAGS+=" -fPIC" && CXXFLAGS+=" -fPIC"
2018-05-29 18:25:02 +00:00
[[ $CARCH != "aarch64" ]] && CONFIG="-DENABLE_ASSEMBLY=OFF"
2015-10-11 14:21:16 +00:00
2017-12-19 22:26:20 +00:00
for d in 8 $([[ $CARCH == 'aarch64' ]] && echo "10 12"); do
2015-10-11 14:21:16 +00:00
if [[ -d build-$d ]]; then
rm -rf build-$d
fi
mkdir build-$d
done
2014-03-30 04:59:56 +00:00
}
build() {
2018-03-09 19:09:33 +00:00
if [[ $CARCH == aarch64 ]]; then
cd x265_${pkgver}/build-12
cmake ../source \
-DCMAKE_INSTALL_PREFIX='/usr' \
-DHIGH_BIT_DEPTH='TRUE' \
-DMAIN12='TRUE' \
-DEXPORT_C_API='FALSE' \
-DENABLE_CLI='FALSE' \
-DENABLE_SHARED='FALSE'
make
cd ../build-10
cmake ../source \
-DCMAKE_INSTALL_PREFIX='/usr' \
-DHIGH_BIT_DEPTH='TRUE' \
-DEXPORT_C_API='FALSE' \
-DENABLE_CLI='FALSE' \
-DENABLE_SHARED='FALSE'
make
cd ../build-8
ln -s ../build-10/libx265.a libx265_main10.a
ln -s ../build-12/libx265.a libx265_main12.a
cmake ../source \
-DCMAKE_INSTALL_PREFIX='/usr' \
-DENABLE_SHARED='TRUE' \
-DENABLE_HDR10_PLUS='TRUE' \
-DEXTRA_LIB='x265_main10.a;x265_main12.a' \
-DEXTRA_LINK_FLAGS='-L .' \
-DLINKED_10BIT='TRUE' \
-DLINKED_12BIT='TRUE'
make
else
cd x265_${pkgver}/build-8
cmake ../source \
-DCMAKE_INSTALL_PREFIX='/usr' \
-DENABLE_SHARED='TRUE' \
$CONFIG
fi
2014-03-30 04:59:56 +00:00
}
package() {
2018-03-09 19:09:33 +00:00
cd x265_${pkgver}/build-8
2015-10-11 14:21:16 +00:00
make DESTDIR="${pkgdir}" install
2014-03-30 04:59:56 +00:00
}
2018-03-09 19:09:33 +00:00
# vim: ts=2 sw=2 et: