summaryrefslogtreecommitdiffstats
path: root/handbrake
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2022-01-10 20:29:45 +0000
committer Eric Hameleers <alien@slackware.com>2022-01-10 20:29:45 +0000
commit6f40f9e2f542addabcc0050d5fe14ebcaf539f3d (patch)
treeae2119a8ee1694e8984d539ed57df6b207e3addb /handbrake
parentbeab42c78f89bd08931e5b9ad962424cb07a4fb0 (diff)
downloadasb-6f40f9e2f542addabcc0050d5fe14ebcaf539f3d.tar.gz
asb-6f40f9e2f542addabcc0050d5fe14ebcaf539f3d.tar.xz
handbrake: update to 1.5.0
Diffstat (limited to 'handbrake')
-rwxr-xr-xhandbrake/build/handbrake.SlackBuild115
1 files changed, 81 insertions, 34 deletions
diff --git a/handbrake/build/handbrake.SlackBuild b/handbrake/build/handbrake.SlackBuild
index 90e03637..1782d6b4 100755
--- a/handbrake/build/handbrake.SlackBuild
+++ b/handbrake/build/handbrake.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
# $Id$
-# Copyright 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Eric Hameleers, Eindhoven, NL
+# Copyright 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Eric Hameleers, Eindhoven, NL
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -84,6 +84,8 @@
# * Update.
# 1.4.1-1: 18/aug/2021 by Eric Hameleers <alien@slackware.com>
# * Update.
+# 1.5.0-1: 10/jan/2022 by Eric Hameleers <alien@slackware.com>
+# * Update.
#
# Run 'sh handbrake.SlackBuild' to build a Slackware package.
# The package (.txz) and .txt file as well as build logs are created in /tmp .
@@ -93,9 +95,10 @@
PRGNAM=handbrake
-VERSION=${VERSION:-1.4.1}
-# Find the revision for a release tag (does not currently work!):
-RELREV=${RELREV:-""}
+SRCNAM=HandBrake
+VERSION=${VERSION:-1.5.0}
+# If defined, we will check the tag from git instead of using a release tarball:
+RELREV=${RELREV:-"1.5.0"}
BUILD=${BUILD:-1}
TAG=${TAG:-alien}
@@ -119,37 +122,40 @@ USE_PATENTS=$(echo $USE_PATENTS | tr 'a-z' 'A-Z')
# is not new enough.
WITH_GUI=${WITH_GUI:-"YES"}
-DOCS="AUTHORS* COPYING* LICENSE* NEWS* README* THANKS*"
+DOCS="AUTHORS* CODE_OF_CONDUCT* CONTRIBUTING* COPYING* \
+ LICENSE* NEWS* README* THANKS* TRANSLATION*"
CONTRIBURL="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs"
# Versions of the contribs most of which are compiled-in;
# A rough guideline as to how to determine the versions and download URLs is
-# $ grep FETCH.url $(find HandBrake-1.4.0/contrib -type f -name module.defs)
-ASS=0.15.1
+# $ grep FETCH.url $(find HandBrake-1.5.0/contrib -type f -name module.defs)
+AMF=1.4.18
+ASS=0.15.2
BLURAY=1.3.0
-DAV1D=0.9.0
+DAV1D=0.9.2
DVDNAV=6.1.1
DVDREAD=6.1.1
FDKAAC=2.0.1
-FFMPEG=4.4
-FREETYPE=2.10.4
-FRIBIDI=1.0.10
-HARFBUZZ=2.8.1
-JANSSON=2.13.1
+FFMPEG=4.4.1
+FREETYPE=2.11.1
+FRIBIDI=1.0.11
+HARFBUZZ=3.1.2
+JANSSON=2.14
LAME=3.100
MFX=1.35
NVENC=11.0.10.1
-OGG=1.3.4
+OGG=1.3.5
OPUS=1.3.1
SPEEX=1.2.0
THEORA=1.1.1
VORBIS=1.3.7
-VPX=1.10.0
-X264=snapshot-20210606-3059
+ONEVPL=2021.6.0
+VPX=1.11.0
+X264=snapshot-20210613-3065
X265=3.5
XML2=2.9.9
-ZIMG=3.0.1
+ZIMG=3.0.3
# Where do we look for sources?
SRCDIR=$(cd $(dirname $0); pwd)
@@ -163,14 +169,14 @@ OUTPUT=${OUTPUT:-/tmp}
DLI=0
# Download locations of sources:
-SOURCE[$DLI]="$SRCDIR/sources/HandBrake-${VERSION}-source.tar.bz2"
+SOURCE[$DLI]="$SRCDIR/sources/${SRCNAM}-${VERSION}.tar.bz2"
if [ -n "$RELREV" ]; then
# Download release tag from GIT so that we can create a "release" build,
# which shows the actual version in the about box instead of a GIT revision
# ... how twisted can you get.
SRCURL[$DLI]=""
else
- SRCURL[$DLI]="https://github.com/HandBrake/HandBrake/releases/download/${VERSION}/HandBrake-${VERSION}-source.tar.bz2"
+ SRCURL[$DLI]="https://github.com/HandBrake/HandBrake/releases/download/${VERSION}/${SRCNAM}-${VERSION}-source.tar.bz2"
fi
DLI=$(($DLI+1))
@@ -245,6 +251,14 @@ SOURCE[$DLI]="$SRCDIR/sources/libxml2-$XML2.tar.gz"
SRCURL[$DLI]="$CONTRIBURL/libxml2-$XML2.tar.gz"
DLI=$(($DLI+1))
+SOURCE[$DLI]="$SRCDIR/sources/AMF-$AMF.tar.gz"
+SRCURL[$DLI]="$CONTRIBURL/AMF-$AMF.tar.gz"
+
+DLI=$(($DLI+1))
+SOURCE[$DLI]="$SRCDIR/sources/oneVPL-$ONEVPL.tar.gz"
+SRCURL[$DLI]="$CONTRIBURL/oneVPL-$ONEVPL.tar.gz"
+
+DLI=$(($DLI+1))
SOURCE[$DLI]="$SRCDIR/sources/mfx_dispatch-$MFX.tar.gz"
SRCURL[$DLI]="$CONTRIBURL/mfx_dispatch-$MFX.tar.gz"
@@ -339,25 +353,44 @@ src_checkout() {
"tar.bz2") TARCOMP="j" ;;
*) echo "Archive can only have extension 'tar.xz', '.tar.gz' '.tar.bz2' or '.tgz'" ; exit 1 ;;
esac
+ # Determine the directory name to create for the archive root:
+ PBASE=$(basename ${2} .${PEXT})
+ # Determine the directory where we create our checkout:
+ CODIR=$(dirname ${2})
case ${1} in
0) # HandBrake-${VERSION}
- if [ "$(echo ${VERSION}|cut -c1)" == 'r' ]; then # revision instead of date
- REV=$(echo ${VERSION} | cut -c2-)
- SVNURI="svn://svn.handbrake.fr/HandBrake/trunk"
+ GITURI="https://github.com/HandBrake/HandBrake.git"
+ BRANCH=master
+ RETDIR=$(pwd)
+ mkdir -p $CODIR/${PRGNAM}_temp_checkout_$$ \
+ && cd $CODIR/${PRGNAM}_temp_checkout_$$
+ mkdir ${PBASE} \
+ && cd ${PBASE} \
+ && \
+ if [ "$VERSION" = "HEAD" -o "$VERSION" = "master" ]; then
+ # Checkout without downloading version history (fast!):
+ echo "Checking out HEAD from '$GITURI':"
+ # If VERSION was "HEAD" we still want a date to appear in the pkgname:
+ VERSION=$(date +%Y%m%d)
+ git clone --depth=1 ${GITURI} .
elif [ -z "$RELREV" ]; then
- REV="{${VERSION}}"
- SVNURI="svn://svn.handbrake.fr/HandBrake/trunk"
+ # Checkout at the specified tag, and set VERSION to that tagname.
+ VERSION="{${RELREV}"
+ git clone ${GITURI} . \
+ && git checkout tags/$RELREV -b $BRANCH
else
- REV="${RELREV}"
- SVNURI="svn://svn.handbrake.fr/HandBrake/tags/$VERSION"
- fi
- mkdir HandBrake-${VERSION} \
- && cd HandBrake-${VERSION} \
- && svn co --revision $REV $SVNURI . \
+ # Checkout code from a certain branch and/or date; this will take a
+ # long time because we have to clone the complete git-repository first:
+ echo "Checking out $BRANCH at date $VERSION from '$GITURI':"
+ git clone ${GITURI} . \
+ && git checkout $BRANCH \
+ && git checkout $(git rev-list -n 1 --before="$(date -d $VERSION)" $BRANCH)
+ fi \
&& chown -R root:root . \
&& cd .. \
- && tar -${TARCOMP}cf ${2} HandBrake-${VERSION}
- rm -rf HandBrake-${VERSION}
+ && tar -${TARCOMP}cf ${2} ${PBASE}
+ cd $RETDIR
+ rm -rf $CODIR/${PRGNAM}_temp_checkout_$$ || true
;;
*) # Do nothing
;;
@@ -462,6 +495,12 @@ if [ "${ARCH}" != "x86_64" ]; then
contrib/x265_12bit/module.defs
fi
+# Let's just install everything in a 'lib' directory:
+sed -e 's/^HARFBUZZ.CONFIGURE.extra *=.*/& -DCMAKE_INSTALL_LIBDIR=lib/' \
+ -i contrib/harfbuzz/module.defs
+sed -e 's/^LIBVPL.CONFIGURE.extra *=.*/& -DCMAKE_INSTALL_LIBDIR=lib/' \
+ -i contrib/libvpl/module.defs
+
# Add '--build' to configure to prevent 'alignas: requested alignment
# is not a power of 2' compilation error on 32bit:
if [ $(cat /etc/slackware-version |cut -d' ' -f2- |cut -d. -f1) -lt 15 ]; then
@@ -488,6 +527,13 @@ else
USE_NUMA="--disable-numa"
fi
+if [ "${ARCH}" = "x86_64" ]; then
+ # Libvpl only supports x86_64:
+ USE_QSV="--enable-qsv"
+else
+ USE_QSV="--disable-qsv"
+fi
+
mkdir download
for FF in $(seq 1 $(( ${#SOURCE[@]} -1 ))); do
cp ${SOURCE[$FF]} download/
@@ -521,10 +567,11 @@ export LD_RUN_PATH="$HBDEPSDIR/lib"
./configure \
--prefix=/usr \
--launch --launch-jobs=0 \
- --enable-qsv \
+ --enable-vce \
--enable-x265 \
- ${USE_NUMA} \
${USE_NONFREE} \
+ ${USE_NUMA} \
+ ${USE_QSV} \
${GUI_OPTS} \
2>&1 | tee $OUTPUT/configure-${PRGNAM}.log