PKGBUILDs/extra/x265/PKGBUILD

109 lines
2.3 KiB
Bash
Raw Normal View History

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 18:25:02 +00:00
# - disable all ARM assembly - version 2.8 broke ARM support completely
2018-10-08 16:07:35 +00:00
# - patch from upstream bug https://bitbucket.org/multicoreware/x265/issues/442
2014-03-30 04:59:56 +00:00
pkgname=x265
2020-04-05 19:54:09 +00:00
pkgver=3.3
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'
2019-07-16 19:15:29 +00:00
arch=(x86_64)
url=https://bitbucket.org/multicoreware/x265
license=(GPL)
2019-10-30 17:57:56 +00:00
depends=(gcc-libs)
2019-07-16 19:15:29 +00:00
makedepends=(
cmake
mercurial
nasm
)
provides=(libx265.so)
2020-04-05 19:54:09 +00:00
source=(hg+https://bitbucket.org/multicoreware/x265#tag=057215961bc4b51b6260a584ff3d506e6d65cfd6
2019-02-05 13:55:14 +00:00
arm.patch)
2018-10-08 16:07:35 +00:00
sha256sums=('SKIP'
2019-07-16 19:15:29 +00:00
'd292976588ea1cb12f6371a2379fe7e22b93c18a16ea0a5acd1fbebab48988f2')
2014-03-30 04:59:56 +00:00
2019-10-30 17:57:56 +00:00
pkgver() {
cd x265
hg id --tags
}
2014-03-30 04:59:56 +00:00
prepare() {
2018-10-08 16:07:35 +00:00
cd x265
2015-10-11 14:21:16 +00:00
2014-03-30 04:59:56 +00:00
patch -p1 -i ../arm.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
2018-10-08 16:07:35 +00:00
cd x265/build-12
2018-03-09 19:09:33 +00:00
cmake ../source \
2019-07-16 19:15:29 +00:00
-DCMAKE_INSTALL_PREFIX=/usr \
-DHIGH_BIT_DEPTH=TRUE \
-DMAIN12=TRUE \
-DEXPORT_C_API=FALSE \
-DENABLE_CLI=FALSE \
-DENABLE_SHARED=FALSE
2018-03-09 19:09:33 +00:00
make
cd ../build-10
cmake ../source \
2019-07-16 19:15:29 +00:00
-DCMAKE_INSTALL_PREFIX=/usr \
-DHIGH_BIT_DEPTH=TRUE \
-DEXPORT_C_API=FALSE \
-DENABLE_CLI=FALSE \
-DENABLE_SHARED=FALSE
2018-03-09 19:09:33 +00:00
make
cd ../build-8
ln -s ../build-10/libx265.a libx265_main10.a
ln -s ../build-12/libx265.a libx265_main12.a
cmake ../source \
2019-07-16 19:15:29 +00:00
-DCMAKE_INSTALL_PREFIX=/usr \
-DENABLE_SHARED=TRUE \
-DENABLE_HDR10_PLUS=TRUE \
2018-03-09 19:09:33 +00:00
-DEXTRA_LIB='x265_main10.a;x265_main12.a' \
-DEXTRA_LINK_FLAGS='-L .' \
2019-07-16 19:15:29 +00:00
-DLINKED_10BIT=TRUE \
-DLINKED_12BIT=TRUE
2018-03-09 19:09:33 +00:00
make
else
2018-10-08 16:07:35 +00:00
cd x265/build-8
2018-03-09 19:09:33 +00:00
cmake ../source \
2019-07-16 19:15:29 +00:00
-DCMAKE_INSTALL_PREFIX=/usr \
-DENABLE_SHARED=TRUE \
2018-03-09 19:09:33 +00:00
$CONFIG
fi
2014-03-30 04:59:56 +00:00
}
package() {
2018-10-08 16:07:35 +00:00
cd x265/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: