File ladybird.spec of Package ladybird

#
# spec file for package ladybird
#
Name:           ladybird
Version:        1701945421.4966c083d
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 Mesa-libGL-devel mpc-devel qt6-wayland-devel gcc13 gcc13-PIE gcc13-c++ ninja tzdb fdupes
BuildRequires: cmake >= 3.26

#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++-13 \
 -DCMAKE_C_COMPILER=gcc-13 \
 -DENABLE_COMMONMARK_SPEC_DOWNLOAD=OFF \
 -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 -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 -rf  %{buildroot}%{_libdir}/debug
rm -rf %{buildroot}%{_includedir}/Ladybird
export NO_BRP_CHECK_RPATH=true
%ldconfig_scriptlets

%files
%{_bindir}/Ladybird
%{_bindir}/SQLServer
%{_bindir}/WebContent
%{_bindir}/WebDriver
%{_bindir}/RequestServer
%{_bindir}/WebSocket
%{_bindir}/WebWorker
%{_bindir}/ImageDecoder
%{_bindir}/headless-browser
%{_libdir}/liblagom*.so.*
%{_datadir}/res/fonts/*
%{_datadir}/res/color-palettes/*
%{_datadir}/res/cursor-themes/*
%{_datadir}/res/html/*
%{_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/color-palettes
%dir  %{_datadir}/res/cursor-themes
%dir  %{_datadir}/res/html
%dir  %{_datadir}/res/ladybird
%dir  %{_datadir}/res/themes


%changelog
openSUSE Build Service is sponsored by