File ladybird.spec of Package ladybird
#
# spec file for package ladybird
#
Name: ladybird
Version: 1690976986.5cf6d5175
Release: 0
Summary: Web Browser from Serenity OS
URL: https://github.com/SerenityOS/serenity/Ladybird
License: BSD-2-Clause
Source0: serenity-%{version}.tar.gz
Source1: caches.tar.gz
Source2: ladybird.desktop
Source3: ladybird.png
Source4: ladybird-rpmlintrc
BuildRequires: qt6-widgets-devel qt6-tools qt6-tools-devel qt6-multimedia-devel libglvnd-devel qt6-svg-devel libQt6Widgets6 gmp-devel mpc-devel qt6-wayland-devel gcc12 gcc12-PIE gcc12-c++ ninja cmake tzdb fdupes
#TODO:
# - try gcc13 when https://github.com/SerenityOS/serenity/issues/18252 is resolved
%description
Ladybird is a web browser built on the LibWeb and LibJS engines from SerenityOS with a cross-platform GUI in Qt.
%prep
%autosetup -p1 -n serenity-%{version}
# Various resources the build needs regarding unicode,timezones,certificates etc.
mkdir -p %{_builddir}/serenity-%{version}/Build
tar xfvz %{SOURCE1} -C %{_builddir}/serenity-%{version}/Build/
%build
%define _lto_cflags %{nil}
%define __builder ninja
%define __sourcedir Ladybird
%define __builddir Build/ladybird
%cmake \
-DCMAKE_CXX_COMPILER=g++-12 \
-DCMAKE_C_COMPILER=gcc-12 \
-DSERENITY_CACHE_DIR=%{_builddir}/serenity-%{version}/Build/caches \
%cmake_build
%install
%fdupes %{buildroot}
%cmake_install
mkdir %{buildroot}%{_datadir}/applications
install -m 0644 %{SOURCE2} %{buildroot}%{_datadir}/applications/
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/32x32/apps
install -m 0644 %{SOURCE3} %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/
rm -rf %{buildroot}%{_datadir}/res/html
rm -rf %{buildroot}%{_datadir}/res/color-palettes
rm -rf %{buildroot}%{_datadir}/res/cursor-themes
rm -f %{buildroot}%{_datadir}/res/icons/SystemMenu.ini
rm -f %{buildroot}%{_datadir}/res/icons/*.png
rm -rf %{buildroot}%{_datadir}/res/icons/browser
rm -rf %{buildroot}%{_datadir}/res/icons/calculator
rm -rf %{buildroot}%{_datadir}/res/icons/cards
rm -rf %{buildroot}%{_datadir}/res/icons/catdog
rm -rf %{buildroot}%{_datadir}/res/icons/chess
rm -rf %{buildroot}%{_datadir}/res/icons/colorlines
rm -rf %{buildroot}%{_datadir}/res/icons/flappybug
rm -rf %{buildroot}%{_datadir}/res/icons/hackstudio
rm -rf %{buildroot}%{_datadir}/res/icons/minesweeper
rm -rf %{buildroot}%{_datadir}/res/icons/pixelpaint
rm -rf %{buildroot}%{_datadir}/res/icons/serenity
rm -rf %{buildroot}%{_datadir}/res/icons/themes
rm %{buildroot}%{_libdir}/*.so
rm %{buildroot}%{_datadir}/ladybird/*.cmake
rm -f /usr/lib/debug/usr/bin/RequestServer.debug
export NO_BRP_CHECK_RPATH=true
%ldconfig_scriptlets
%files
%{_bindir}/ladybird
%{_bindir}/SQLServer
%{_bindir}/WebContent
%{_bindir}/WebDriver
%{_bindir}/RequestServer
%{_bindir}/headless-browser
%{_libdir}/liblagom*.so.*
%{_datadir}/res/fonts/*
%{_datadir}/res/ladybird/*
%{_datadir}/res/themes/*
%{_datadir}/res/icons/16x16/*
%{_datadir}/res/icons/32x32/*
%{_datadir}/icons/hicolor/32x32/apps/ladybird.png
%{_datadir}/applications/ladybird.desktop
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/32x32
%dir %{_datadir}/icons/hicolor/32x32/apps
%dir %{_datadir}/res
%dir %{_datadir}/res/fonts
%dir %{_datadir}/res/icons
%dir %{_datadir}/res/icons/16x16
%dir %{_datadir}/res/icons/32x32
%dir %{_datadir}/res/ladybird
%dir %{_datadir}/res/themes
%changelog