%global glib2_version 2.65.0 %global pango_version 1.47.0 %global cairo_version 1.14.0 %global gdk_pixbuf_version 2.30.0 %global wayland_protocols_version 1.20 %global wayland_version 1.14.91 %global epoxy_version 1.4 %global bin_version 4.0.0 # Filter provides for private modules %global __provides_exclude_from ^%{_libdir}/gtk-4.0 Name: gtk4 Version: 4.2.0 Release: 1 Summary: GTK graphical user interface library License: LGPLv2+ URL: https://www.gtk.org Source0: https://download.gnome.org/sources/gtk/4.2/gtk-%{version}.tar.xz BuildRequires: cups-devel desktop-file-utils docbook-style-xsl gcc BuildRequires: sassc libxslt gcc-c++ gettext meson BuildRequires: pkgconfig(avahi-gobject) BuildRequires: pkgconfig(cairo) >= %{cairo_version} BuildRequires: pkgconfig(cairo-gobject) >= %{cairo_version} BuildRequires: pkgconfig(colord) BuildRequires: pkgconfig(egl) BuildRequires: pkgconfig(epoxy) BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= %{gdk_pixbuf_version} BuildRequires: pkgconfig(glib-2.0) >= %{glib2_version} BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(graphene-gobject-1.0) BuildRequires: pkgconfig(gstreamer-player-1.0) BuildRequires: pkgconfig(json-glib-1.0) BuildRequires: pkgconfig(pango) >= %{pango_version} BuildRequires: pkgconfig(rest-0.7) BuildRequires: pkgconfig(vulkan) BuildRequires: pkgconfig(wayland-client) >= %{wayland_version} BuildRequires: pkgconfig(wayland-cursor) >= %{wayland_version} BuildRequires: pkgconfig(wayland-egl) >= %{wayland_version} BuildRequires: pkgconfig(wayland-protocols) >= %{wayland_protocols_version} BuildRequires: pkgconfig(xcomposite) BuildRequires: pkgconfig(xcursor) BuildRequires: pkgconfig(xdamage) BuildRequires: pkgconfig(xfixes) BuildRequires: pkgconfig(xi) BuildRequires: pkgconfig(xinerama) BuildRequires: pkgconfig(xkbcommon) BuildRequires: pkgconfig(xrandr) BuildRequires: pkgconfig(xrender) BuildRequires: pkgconfig(xrender) Requires: adwaita-icon-theme Requires: hicolor-icon-theme Requires: gtk3 Requires: cairo%{?_isa} >= %{cairo_version} Requires: glib2%{?_isa} >= %{glib2_version} Requires: libepoxy%{?_isa} >= %{epoxy_version} Requires: wayland%{?_isa} >= %{wayland_version} Requires: pango%{?_isa} >= %{pango_version} Requires: gdk-pixbuf2%{?_isa} Requires: dconf%{?_isa} Obsoletes: gtk4-immodules < 3.94.0 Obsoletes: gtk4-immodule-xim < 3.94.0 Obsoletes: gtk4-tests < 3.96.0 Obsoletes: gtk4-devel-docs < 3.98.3 %description GTK is a multi-platform toolkit for creating graphical user interfaces. Offering a complete set of widgets, GTK is suitable for projects ranging from small one-off tools to complete application suites. This package contains version 4 of GTK. %package devel Summary: Development files for GTK Requires: gtk4%{?_isa} = %{version}-%{release} %description devel This package contains the libraries and header files that are needed for writing applications with version 4 of the GTK widget toolkit. %prep %autosetup -p1 -n gtk-%{version} %build export CFLAGS='-fno-strict-aliasing %optflags' %meson \ -Dx11-backend=true \ -Dwayland-backend=true \ -Dbroadway-backend=true \ -Dxinerama=enabled \ -Dcolord=enabled \ -Dgtk_doc=false \ -Dman-pages=true \ -Dinstall-tests=false \ -Dmedia-ffmpeg=disabled %meson_build %install %meson_install %find_lang gtk40 %find_lang gtk40-properties mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gtk-4.0 mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/modules mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/%{bin_version}/theming-engines %check desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %ldconfig_scriptlets %files -f gtk40.lang %license COPYING %doc AUTHORS NEWS README.md %{_bindir}/gtk4-launch %{_bindir}/gtk4-update-icon-cache %{_libdir}/libgtk-4.so.* %dir %{_libdir}/gtk-4.0 %dir %{_libdir}/gtk-4.0/%{bin_version} %{_libdir}/gtk-4.0/%{bin_version}/media/ %{_libdir}/gtk-4.0/%{bin_version}/printbackends/ %{_libdir}/gtk-4.0/%{bin_version}/theming-engines/ %{_libdir}/gtk-4.0/modules %{_libdir}/girepository-1.0 %{_mandir}/man1/gtk4-launch.1* %{_mandir}/man1/gtk4-update-icon-cache.1* %{_datadir}/glib-2.0/schemas/org.gtk.gtk4.Settings.ColorChooser.gschema.xml %{_datadir}/glib-2.0/schemas/org.gtk.gtk4.Settings.Debug.gschema.xml %{_datadir}/glib-2.0/schemas/org.gtk.gtk4.Settings.EmojiChooser.gschema.xml %{_datadir}/glib-2.0/schemas/org.gtk.gtk4.Settings.FileChooser.gschema.xml %dir %{_datadir}/gtk-4.0 %{_datadir}/gtk-4.0/emoji/ %{_bindir}/gtk4-broadwayd %{_mandir}/man1/gtk4-broadwayd.1* %files devel -f gtk40-properties.lang %{_libdir}/lib*.so %{_includedir}/* %{_libdir}/pkgconfig/* %{_bindir}/gtk4-builder-tool %{_bindir}/gtk4-demo %{_bindir}/gtk4-encode-symbolic-svg %{_bindir}/gtk4-icon-browser %{_bindir}/gtk4-query-settings %{_datadir}/applications/org.gtk.Demo4.desktop %{_datadir}/applications/org.gtk.IconBrowser4.desktop %{_datadir}/applications/org.gtk.PrintEditor4.desktop %{_datadir}/applications/org.gtk.WidgetFactory4.desktop %{_datadir}/icons/hicolor/*/apps/org.gtk.Demo4*.svg %{_datadir}/icons/hicolor/*/apps/org.gtk.IconBrowser4*.svg %{_datadir}/icons/hicolor/*/apps/org.gtk.PrintEditor4*.svg %{_datadir}/icons/hicolor/*/apps/org.gtk.WidgetFactory4*.svg %{_bindir}/gtk4-demo-application %{_bindir}/gtk4-print-editor %{_bindir}/gtk4-widget-factory %{_datadir}/gettext/ %{_datadir}/gir-1.0 %{_datadir}/glib-2.0/schemas/org.gtk.Demo4.gschema.xml %{_datadir}/gtk-4.0/gtk4builder.rng %{_datadir}/gtk-4.0/valgrind/ %{_datadir}/metainfo/org.gtk.Demo4.appdata.xml %{_datadir}/metainfo/org.gtk.IconBrowser4.appdata.xml %{_datadir}/metainfo/org.gtk.PrintEditor4.appdata.xml %{_datadir}/metainfo/org.gtk.WidgetFactory4.appdata.xml %{_mandir}/man1/gtk4-builder-tool.1* %{_mandir}/man1/gtk4-demo.1* %{_mandir}/man1/gtk4-demo-application.1* %{_mandir}/man1/gtk4-encode-symbolic-svg.1* %{_mandir}/man1/gtk4-icon-browser.1* %{_mandir}/man1/gtk4-query-settings.1* %{_mandir}/man1/gtk4-widget-factory.1* %changelog * Mon May 31 2021 weijin deng - 4.2.0-1 - Package gtk4 init with version 4.2.0