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
openSUSE Build Service is sponsored by