opt/qtwebengine/Pkgfile

60 lines
2.0 KiB
Plaintext

# Description: Provides support for web applications using the Chromium browser project.
# URL: https://www.qt.io/
# Maintainer: Danny Rawlins, crux at romster dot me
# Depends on: ffmpeg libvpx libwebp nodejs nss python qt5 xorg-libxscrnsaver xorg-libxtst
name=qtwebengine
version=5.15.6
release=2
source=(https://anduin.linuxfromscratch.org/BLFS/qtwebengine/$name-$version.tar.xz
https://www.linuxfromscratch.org/patches/blfs/svn/qtwebengine-5.15.6-5.15.7-1.patch
https://www.linuxfromscratch.org/patches/blfs/svn/qtwebengine-5.15.7-build_fixes-1.patch)
build() {
cd qtwebengine-$version
# https://www.linuxfromscratch.org/blfs/view/svn/x/qtwebengine.html
patch -p1 -i $SRC/qtwebengine-5.15.6-5.15.7-1.patch
patch -p1 -i $SRC/qtwebengine-5.15.7-build_fixes-1.patch
mkdir -pv .git src/3rdparty/chromium/.git
sed -e '/^MODULE_VERSION/s/5.*/5.15.2/' -i .qmake.conf
find -type f -name "*.pr[io]" | \
xargs sed -i -e 's|INCLUDEPATH += |&$$QTWEBENGINE_ROOT/include |'
prt-get isinst pulseaudio && sed -e '/link_pulseaudio/s/false/true/' \
-i src/3rdparty/chromium/media/media_options.gni
# Ninja, by default, sets the number of jobs to the number of availalble threads
test -n "$JOBS" && export NINJAFLAGS+=" -j $JOBS"
sed -i 's/NINJAJOBS/NINJA_JOBS/' src/core/gn_run.pro
prt-get isinst ccache && export \
QMAKE_CC='ccache gcc' \
QMAKE_LINK_C='ccache gcc' \
QMAKE_LINK_C_SHLIB='ccache gcc' \
QMAKE_CXX='ccache g++' \
QMAKE_LINK='ccache g++' \
QMAKE_LINK_SHLIB='ccache g++' \
PATH="$(echo ${PATH} | awk -v RS=: -v ORS=: '/ccache/ {next} {print}' | sed 's/:*$//')"
install -d build
cd build
ulimit -n 2048
prt-get isinst pulseaudio && PKGMK_QTWEBENGINE+=' -pulseaudio' || PKGMK_QTWEBENGINE+=' -no-pulseaudio'
prt-get isinst icu && PKGMK_QTWEBENGINE+=' -webengine-icu' || PKGMK_QTWEBENGINE+=' -no-webengine-icu'
qmake-qt5 .. -- \
$PKGMK_QTWEBENGINE \
-proprietary-codecs \
-system-ffmpeg
make
make INSTALL_ROOT=$PKG install
find "$PKG/usr/lib" -type f -name '*.prl' \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
}