# Maintainer: Jan Alexander Steffens (heftig) # ALARM: Kevin Mihelich # - build v7 with vfpv3, neon is broken pkgbase=wpewebkit pkgname=( wpewebkit wpewebkit-docs ) pkgver=2.42.3 pkgrel=1 pkgdesc="Embeddable web content engine" url="https://wpewebkit.org" arch=(x86_64) license=(custom) depends=( at-spi2-core atk bubblewrap cairo fontconfig freetype2 glib2 gst-plugins-bad-libs gst-plugins-base-libs gstreamer harfbuzz harfbuzz-icu icu libavif libdrm libepoxy libgcrypt libjpeg libjxl libpng libseccomp libsoup3 libsystemd libtasn1 libwebp libwpe libxkbcommon libxml2 libxslt mesa openjpeg2 sqlite wayland woff2 wpebackend-fdo xdg-dbus-proxy zlib ) makedepends=( clang cmake gi-docgen gobject-introspection gperf gst-plugins-bad lld ninja python ruby systemd unifdef wayland-protocols ) source=( $url/releases/wpewebkit-$pkgver.tar.xz{,.asc} ) sha256sums=('499969acf25a56b4abd3f3e68324069f579ccb34e441259a5e04031b1f564daa' 'SKIP') b2sums=('26231ef3451f8a9566e3333577bcedcef8d49d620d5c6eadcf63848630c4156d2ea24a33974490c5310c10fbd4a07a5024a9a401a19231d6b50afabce8a61a54' 'SKIP') validpgpkeys=( 'D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3' # Carlos Garcia Campos '5AA3BC334FD7E3369E7C77B291C559DBE4C9123B' # Adrián Pérez de Castro ) prepare() { cd wpewebkit-$pkgver } build() { local cmake_options=( -DPORT=WPE -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_LIBEXECDIR=lib -DCMAKE_SKIP_RPATH=ON -DUSE_AVIF=ON -DENABLE_WPE_1_1_API=ON -DENABLE_DOCUMENTATION=ON -DENABLE_MINIBROWSER=ON ) # GCC with LTO fails to link jsc # /usr/bin/ld: /tmp/ccXxyWZV.ltrans0.ltrans.o: in function `ipint_table_size_validate': # :(.text+0x49f0f): undefined reference to `ipint_extern_table_size' # /usr/bin/ld: /tmp/ccXxyWZV.ltrans0.ltrans.o: in function `ipint_table_fill_validate': # :(.text+0x4a019): undefined reference to `ipint_extern_table_fill' # collect2: error: ld returned 1 exit status #export CC=clang CXX=clang++ #LDFLAGS+=" -fuse-ld=lld" # Produce minimal debug info: 4.3 GB of debug data makes the # build too slow and is too much to package for debuginfod CFLAGS+=' -g1' CXXFLAGS+=' -g1' [[ $CARCH == "armv7h" ]] && CFLAGS=`echo $CFLAGS | sed -e 's/neon/vfpv3/'` && CXXFLAGS="$CFLAGS" cmake -S wpewebkit-$pkgver -B build -G Ninja "${cmake_options[@]}" cmake --build build } package_wpewebkit() { depends+=( libWPEBackend-fdo-1.0.so libwpe-1.0.so ) provides+=( libWPEWebKit-1.1.so ) optdepends=( 'geoclue: Geolocation support' 'gst-libav: nonfree media decoding' 'gst-plugins-bad: media decoding' 'gst-plugins-good: media decoding' ) DESTDIR="$pkgdir" cmake --install build mkdir -p doc/usr/share mv {"$pkgdir",doc}/usr/share/gtk-doc cd wpewebkit-$pkgver find Source -name 'COPYING*' -or -name 'LICENSE*' -print0 | sort -z | while IFS= read -d $'\0' -r _f; do echo "### $_f ###" cat "$_f" echo done | install -Dm644 /dev/stdin "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } package_wpewebkit-docs() { pkgdesc+=" (documentation)" depends=() mv doc/* "$pkgdir" } # vim:set sw=2 sts=-1 et: