void-packages/srcpkgs/x265/template

61 lines
1.6 KiB
Bash

# Template file for 'x265'
pkgname=x265
version=3.4
revision=1
wrksrc="x265_${version}"
build_wrksrc=source
build_style=cmake
configure_args="-DENABLE_PIC=1"
short_desc="Open Source H.265/HEVC video encoder"
maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-2.0-or-later"
homepage="http://x265.org/"
distfiles="https://bitbucket.org/multicoreware/x265/downloads/x265_${version}.tar.gz"
checksum=c2047f23a6b729e5c70280d23223cb61b57bfe4ad4e8f1471eeee2a61d148672
build_options="altivec assembly"
desc_option_altivec="Enable AltiVec support on ppc64 (POWER8 and higher only)"
desc_option_assembly="Enable assembly support on x86/ARM"
case "$XBPS_TARGET_MACHINE" in
ppc64le*) build_options_default="altivec" ;;
# on ARM, enabling it currently fails with undefined reference to
# x265::setupAssemblyPrimitives(x265::EncoderPrimitives&, int)
x86_64*|i686*) build_options_default="assembly" ;;
*) ;;
esac
if [ "$build_option_assembly" ]; then
case "$XBPS_TARGET_MACHINE" in
x86_64*|i686*) hostmakedepends+=" nasm" ;;
*) ;;
esac
fi
case "$XBPS_TARGET_MACHINE" in
ppc64*)
# altivec does not build without power8 being enabled
configure_args+=" -DENABLE_ALTIVEC=$(vopt_if altivec ON OFF)
-DCPU_POWER8=$(vopt_if altivec ON OFF)"
;;
*) configure_args+=" -DENABLE_ASSEMBLY=$(vopt_if assembly ON OFF)" ;;
esac
pre_configure() {
if [ "$CROSS_BUILD" ]; then
vsed -i CMakeLists.txt -e "s; -mcpu=native;;"
fi
}
x265-devel_package() {
depends="${sourcepkg}>=${version}_${revision}"
short_desc+=" - development files"
pkg_install() {
vmove usr/include
vmove usr/lib/pkgconfig
vmove "usr/lib/*.so"
vmove "usr/lib/*.a"
}
}