mirror of
https://github.com/dslm4515/BMLFS.git
synced 2025-08-01 19:42:55 +00:00
87 lines
3.6 KiB
Bash
87 lines
3.6 KiB
Bash
#! /bin/bash
|
|
|
|
# WebKit2 GTK+
|
|
# Source: https://webkitgtk.org/releases/webkitgtk-2.30.4.tar.xz
|
|
#
|
|
# $BUILD = Directory to temporarily install
|
|
# $PKGS = Directory to store built packages
|
|
#
|
|
# DEPS
|
|
# Required: llvm, Cairo, CMake, gst-plugins-base, gst-plugins-bad, GTK+3
|
|
# Required: ICU, libgudev, libsecret, libsoup, libwebp, Mesa, OpenJPEG
|
|
# Required: Ruby, SQLite, Which
|
|
# Recommended: enchant, GeoClue, goobject-introspection, hicolor-icon-theme, libnotify
|
|
# Optional: bubblewrap, GTK-Doc, harfuzz, Wayland, WOFF2, ccache, Hyphen, MathML,
|
|
# Optional: WPEBackend-fdo, and xdg-dbus-proxy, libseccomp, xdg-dbus-proxy
|
|
|
|
patch -Np0 -i ../patches/webkit2gtk-void/be-typedarray.patch
|
|
patch -Np0 -i ../patches/webkit2gtk-void/bwrap-libdir32.patch
|
|
patch -Np0 -i ../patches/webkit2gtk-void/fix-eglmesaext_h.patch
|
|
patch -Np0 -i ../patches/webkit2gtk-void/fix-musl-javascriptcore.patch
|
|
patch -Np0 -i ../patches/webkit2gtk-void/fix_armv6l.patch
|
|
patch -Np0 -i ../patches/webkit2gtk-void/le-check.patch
|
|
patch -Np0 -i ../patches/webkit2gtk-void/ppc-llint.patch
|
|
patch -Np1 -i ../patches/webkit2gtk-alpine/fix-fast-memory-disabled.patch
|
|
|
|
export CFLAGS=" -D__WORDSIZE=32 -g1 -march=native -O2"
|
|
export CXXFLAGS=" -D__WORDSIZE=32 -g1 -march=native -O2"
|
|
export LDFLAGS+=" -Wl,--no-keep-memory -fuse-ld=lld -rtlib=compiler-rt "
|
|
# Build with Clang(llvm) instead of GCC
|
|
export CC=clang CXX=clang++
|
|
|
|
mkdir build && cd build &&
|
|
cmake -DPORT=GTK \
|
|
-DUSE_LD_GOLD=OFF \
|
|
-DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG \
|
|
-DCMAKE_CXX_FLAGS_DEBUG=-DNDEBUG \
|
|
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO=-DNDEBUG \
|
|
-DCMAKE_C_FLAGS_RELEASE=-DNDEBUG \
|
|
-DCMAKE_C_FLAGS_DEBUG=-DNDEBUG \
|
|
-DCMAKE_C_FLAGS_RELWITHDEBINFO=-DNDEBUG \
|
|
-DUSE_SYSTEMD=OFF \
|
|
-DENABLE_GTKDOC=OFF -DUSE_GSTREAMER_GL=ON -DUSE_WPE_RENDERER=ON \
|
|
-DENABLE_MINIBROWSER=ON \
|
|
-DENABLE_JIT=OFF \
|
|
-DENABLE_C_LOOP=OFF \
|
|
-DENABLE_INTROSPECTION=ON \
|
|
-DENABLE_WAYLAND_TARGET=ON \
|
|
-DENABLE_X11_TARGET=OFF \
|
|
-DENABLE_SAMPLING_PROFILER=OFF \
|
|
-DENABLE_BUBBLEWRAP_SANDBOX=ON \
|
|
-GNinja -DCMAKE_BUILD_TYPE=MinSizeRel -DUSE_WOFF2=ON \
|
|
-DCMAKE_SKIP_RPATH=ON -DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DENABLE_GLES2=ON -DUSE_LIBHYPHEN=OFF -DENABLE_GAMEPAD=OFF ..
|
|
|
|
ninja JavaScriptCore-4-gir -j2 &&
|
|
ninja -j2 &&
|
|
unset CXXFLAGS LDFLAGS CFLAGS
|
|
|
|
sudo -S DESTDIR=$BUILD ninja install &&
|
|
#unset CXXFLAGS ECONFIG CXXFLAGS
|
|
|
|
cd $BUILD && sudo -S mkdir -v ${BUILD}/install &&
|
|
cat > /tmp/slack-desc << "EOF"
|
|
# HOW TO EDIT THIS FILE:
|
|
# The "handy ruler" below makes it easier to edit a package description. Line
|
|
# up the first '|' above the ':' following the base package name, and the '|'
|
|
# on the right side marks the last column you can put a character in. You must
|
|
# make exactly 11 lines for the formatting to be correct. It's also
|
|
# customary to leave one space after the ':' except on otherwise blank lines.
|
|
|
|
|-----handy-ruler------------------------------------------------------|
|
|
webkit2gtk: webkit2gtk (Web content rendering)
|
|
webkit2gtk:
|
|
webkit2gtk: WebKitGTK+ is a full-featured port of the WebKit rendering engine,
|
|
webkit2gtk: suitable for projects requiring any kind of web integration, from
|
|
webkit2gtk: hybrid HTML/CSS applications to full-fledged web browsers.
|
|
webkit2gtk: It offers WebKit's full functionality and is useful in a wide range
|
|
webkit2gtk: of systems from desktop computers to embedded systems like phones,
|
|
webkit2gtk: tablets, and televisions.
|
|
webkit2gtk:
|
|
webkit2gtk: https://www.webkitgtk.org/
|
|
webkit2gtk:
|
|
EOF
|
|
sudo -S mv -v /tmp/slack-desc install/ &&
|
|
sudo -S makepkg -l y -c n $PKGS/webkit2gtk-2.30.4-$(uname -m)-mlfs.txz &&
|
|
sudo -S rm -rf ${BUILD}/*
|