opt/qt6-webengine/Pkgfile
2022-03-23 08:45:12 +11:00

38 lines
1.8 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: ffmpeg4 icu libva libvpx libwebp minizip nodejs nss pciutils python qt6-location qt6-tools qt6-webchannel re2 snappy xorg-libxcomposite xorg-libxcursor xorg-libxkbfile
# Optional: dav1d fdk-aac gnutls graphite2 keyutils krb5 lame lcms2 libpcre2 libvdpau numactl pipewire x264 x265
name=qt6-webengine
version=6.2.4
release=1
source=(https://download.qt.io/official_releases/qt/${version%.*}/$version/submodules/qtwebengine-everywhere-src-$version.tar.xz)
build() {
prt-get isinst ninja && PKGMK_QT6+=' -G Ninja'
prt-get isinst krb5 && PKGMK_QT6+=' -D QT_FEATURE_webengine_kerberos=ON'
prt-get isinst pipewire && PKGMK_QT6+=' -D QT_FEATURE_webengine_webrtc_pipewire=ON'
# use ccache if found on system and in PATH, else use sccache if found on system
prt-get isinst ccache && echo "${PATH}" | grep '/usr/lib/ccache' && \
PKGMK_QT6+=' -D QT_USE_CCACHE=ON' && PATH="$(echo ${PATH} | awk -v RS=: -v ORS=: '/ccache/ {next} {print}' | sed 's/:*$//')"
prt-get isinst sccache && echo "${PATH}" | grep --invert-match '/usr/lib/ccache' && \
PKGMK_QT6+=' -D CMAKE_C_COMPILER_LAUNCHER=sccache -D CMAKE_CXX_COMPILER_LAUNCHER=sccache'
export PKG_CONFIG_PATH='/usr/lib/ffmpeg4/pkgconfig'
export CXXFLAGS+=" $(pkg-config libavcodec --libs-only-L)"
cmake -S qtwebengine-everywhere-src-$version -B build $PKGMK_QT6 \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-D CMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-D CMAKE_TOOLCHAIN_FILE=/usr/lib/cmake/Qt6/qt.toolchain.cmake \
-D QT_FEATURE_webengine_system_ffmpeg=ON \
-D QT_FEATURE_webengine_system_icu=ON \
-D QT_FEATURE_webengine_proprietary_codecs=ON \
-Wno-dev
cmake --build build
DESTDIR=$PKG cmake --install build
}