2017-08-17 15:42:15 +00:00
|
|
|
%if 0%{?fedora}
|
|
|
|
%global with_broadway 1
|
|
|
|
%endif
|
|
|
|
|
2023-07-03 21:37:37 +00:00
|
|
|
%global glib2_version 2.76.0
|
2021-12-17 15:41:59 +00:00
|
|
|
%global pango_version 1.50.0
|
2017-08-17 15:42:15 +00:00
|
|
|
%global cairo_version 1.14.0
|
|
|
|
%global gdk_pixbuf_version 2.30.0
|
2023-04-10 12:06:53 +00:00
|
|
|
%global wayland_protocols_version 1.31
|
2022-09-07 17:37:42 +00:00
|
|
|
%global wayland_version 1.21.0
|
2018-10-01 14:40:02 +00:00
|
|
|
%global epoxy_version 1.4
|
2017-08-17 15:42:15 +00:00
|
|
|
|
|
|
|
%global bin_version 4.0.0
|
|
|
|
|
|
|
|
# Filter provides for private modules
|
|
|
|
%global __provides_exclude_from ^%{_libdir}/gtk-4.0
|
|
|
|
|
|
|
|
Name: gtk4
|
2023-08-05 14:13:50 +00:00
|
|
|
Version: 4.12.0
|
2023-02-09 14:16:25 +00:00
|
|
|
Release: %autorelease
|
2019-05-07 04:01:18 +00:00
|
|
|
Summary: GTK graphical user interface library
|
2017-08-17 15:42:15 +00:00
|
|
|
|
2023-03-14 18:41:54 +00:00
|
|
|
License: LGPL-2.0-or-later
|
2020-02-11 08:49:12 +00:00
|
|
|
URL: https://www.gtk.org
|
2023-08-05 14:13:50 +00:00
|
|
|
Source0: https://download.gnome.org/sources/gtk/4.12/gtk-%{version}.tar.xz
|
2022-07-25 14:26:23 +00:00
|
|
|
# Temporarily revert this until we figure out how to best restore
|
|
|
|
# private requires that are needed for rpm automatic dep extraction.
|
|
|
|
# https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
|
|
|
|
Patch0: 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
|
2023-08-07 17:46:17 +00:00
|
|
|
# Backported upstream MR
|
|
|
|
# https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/6250
|
|
|
|
Patch1: 6250.patch
|
2021-01-19 10:55:10 +00:00
|
|
|
|
2017-08-17 15:42:15 +00:00
|
|
|
BuildRequires: cups-devel
|
|
|
|
BuildRequires: desktop-file-utils
|
2020-04-21 07:41:10 +00:00
|
|
|
BuildRequires: docbook-style-xsl
|
2018-10-01 14:40:02 +00:00
|
|
|
BuildRequires: gcc
|
|
|
|
BuildRequires: gcc-c++
|
2020-04-21 07:41:10 +00:00
|
|
|
BuildRequires: gettext
|
2021-08-23 13:55:47 +00:00
|
|
|
BuildRequires: gi-docgen
|
2018-10-01 14:40:02 +00:00
|
|
|
BuildRequires: meson
|
2021-12-31 13:33:14 +00:00
|
|
|
BuildRequires: python3-gobject
|
2017-08-17 15:42:15 +00:00
|
|
|
BuildRequires: pkgconfig(avahi-gobject)
|
|
|
|
BuildRequires: pkgconfig(cairo) >= %{cairo_version}
|
|
|
|
BuildRequires: pkgconfig(cairo-gobject) >= %{cairo_version}
|
|
|
|
BuildRequires: pkgconfig(colord)
|
2020-09-03 21:25:58 +00:00
|
|
|
BuildRequires: pkgconfig(egl)
|
2017-08-17 15:42:15 +00:00
|
|
|
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)
|
2018-10-01 14:40:02 +00:00
|
|
|
BuildRequires: pkgconfig(gstreamer-player-1.0)
|
2017-08-17 15:42:15 +00:00
|
|
|
BuildRequires: pkgconfig(json-glib-1.0)
|
2021-11-01 12:21:01 +00:00
|
|
|
BuildRequires: pkgconfig(libjpeg)
|
|
|
|
BuildRequires: pkgconfig(libpng)
|
|
|
|
BuildRequires: pkgconfig(libtiff-4)
|
2017-08-17 15:42:15 +00:00
|
|
|
BuildRequires: pkgconfig(pango) >= %{pango_version}
|
2021-03-16 18:55:41 +00:00
|
|
|
BuildRequires: pkgconfig(sysprof-4)
|
2021-02-24 05:22:49 +00:00
|
|
|
BuildRequires: pkgconfig(sysprof-capture-4)
|
2021-09-27 21:44:53 +00:00
|
|
|
BuildRequires: pkgconfig(tracker-sparql-3.0)
|
2020-09-03 21:25:58 +00:00
|
|
|
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}
|
2017-08-17 15:42:15 +00:00
|
|
|
BuildRequires: pkgconfig(xcomposite)
|
|
|
|
BuildRequires: pkgconfig(xcursor)
|
|
|
|
BuildRequires: pkgconfig(xdamage)
|
|
|
|
BuildRequires: pkgconfig(xfixes)
|
|
|
|
BuildRequires: pkgconfig(xi)
|
|
|
|
BuildRequires: pkgconfig(xinerama)
|
2020-09-03 21:25:58 +00:00
|
|
|
BuildRequires: pkgconfig(xkbcommon)
|
2017-08-17 15:42:15 +00:00
|
|
|
BuildRequires: pkgconfig(xrandr)
|
|
|
|
BuildRequires: pkgconfig(xrender)
|
2021-11-01 12:21:01 +00:00
|
|
|
BuildRequires: /usr/bin/rst2man
|
2017-08-17 15:42:15 +00:00
|
|
|
|
|
|
|
# standard icons
|
|
|
|
Requires: adwaita-icon-theme
|
|
|
|
# required for icon theme apis to work
|
|
|
|
Requires: hicolor-icon-theme
|
|
|
|
# split out in a subpackage
|
|
|
|
Requires: gtk-update-icon-cache
|
|
|
|
|
|
|
|
Requires: cairo%{?_isa} >= %{cairo_version}
|
|
|
|
Requires: cairo-gobject%{?_isa} >= %{cairo_version}
|
|
|
|
Requires: glib2%{?_isa} >= %{glib2_version}
|
|
|
|
Requires: libepoxy%{?_isa} >= %{epoxy_version}
|
|
|
|
Requires: libwayland-client%{?_isa} >= %{wayland_version}
|
|
|
|
Requires: libwayland-cursor%{?_isa} >= %{wayland_version}
|
2020-09-03 21:25:58 +00:00
|
|
|
Requires: pango%{?_isa} >= %{pango_version}
|
2017-08-17 15:42:15 +00:00
|
|
|
|
|
|
|
# required to support all the different image formats
|
|
|
|
Requires: gdk-pixbuf2-modules%{?_isa}
|
|
|
|
|
|
|
|
# make sure we have a reasonable gsettings backend
|
|
|
|
Recommends: dconf%{?_isa}
|
|
|
|
|
|
|
|
%description
|
2019-05-07 04:01:18 +00:00
|
|
|
GTK is a multi-platform toolkit for creating graphical user
|
|
|
|
interfaces. Offering a complete set of widgets, GTK is suitable for
|
2017-08-17 15:42:15 +00:00
|
|
|
projects ranging from small one-off tools to complete application
|
|
|
|
suites.
|
|
|
|
|
2019-05-07 04:01:18 +00:00
|
|
|
This package contains version 4 of GTK.
|
2017-08-17 15:42:15 +00:00
|
|
|
|
|
|
|
%package devel
|
2019-05-07 04:01:18 +00:00
|
|
|
Summary: Development files for GTK
|
2017-08-17 15:42:15 +00:00
|
|
|
Requires: gtk4%{?_isa} = %{version}-%{release}
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
This package contains the libraries and header files that are needed
|
2021-03-15 11:14:47 +00:00
|
|
|
for writing applications with version 4 of the GTK widget toolkit.
|
2017-08-17 15:42:15 +00:00
|
|
|
|
2021-05-03 15:26:28 +00:00
|
|
|
%package devel-docs
|
|
|
|
Summary: Developer documentation for GTK
|
2021-11-01 15:33:26 +00:00
|
|
|
BuildArch: noarch
|
|
|
|
Requires: gtk4 = %{version}-%{release}
|
2022-12-14 18:36:18 +00:00
|
|
|
# Because web fonts from upstream are not bundled in the gi-docgen package,
|
|
|
|
# packages containing documentation generated with gi-docgen should depend on
|
|
|
|
# this metapackage to ensure the proper system fonts are present.
|
|
|
|
Recommends: gi-docgen-fonts
|
2021-05-03 15:26:28 +00:00
|
|
|
|
|
|
|
%description devel-docs
|
|
|
|
This package contains developer documentation for version 4 of the GTK
|
|
|
|
widget toolkit.
|
|
|
|
|
2021-09-01 19:24:26 +00:00
|
|
|
%package devel-tools
|
|
|
|
Summary: Developer tools for GTK
|
|
|
|
Requires: gtk4%{?_isa} = %{version}-%{release}
|
|
|
|
|
|
|
|
%description devel-tools
|
|
|
|
This package contains helpful applications for developers using GTK.
|
|
|
|
|
2017-08-17 15:42:15 +00:00
|
|
|
%prep
|
2020-03-12 08:29:48 +00:00
|
|
|
%autosetup -p1 -n gtk-%{version}
|
2017-08-17 15:42:15 +00:00
|
|
|
|
|
|
|
%build
|
2021-02-01 19:25:48 +00:00
|
|
|
export CFLAGS='-fno-strict-aliasing -DG_DISABLE_CAST_CHECKS -DG_DISABLE_ASSERT %optflags'
|
2017-11-02 14:24:38 +00:00
|
|
|
%meson \
|
2017-08-17 15:42:15 +00:00
|
|
|
%if 0%{?with_broadway}
|
2018-10-01 14:40:02 +00:00
|
|
|
-Dbroadway-backend=true \
|
2017-08-17 15:42:15 +00:00
|
|
|
%endif
|
2021-02-24 05:22:49 +00:00
|
|
|
-Dsysprof=enabled \
|
2021-09-27 21:44:53 +00:00
|
|
|
-Dtracker=enabled \
|
2020-09-03 21:22:00 +00:00
|
|
|
-Dcolord=enabled \
|
2021-05-03 15:26:28 +00:00
|
|
|
-Dgtk_doc=true \
|
2023-01-01 11:24:55 +00:00
|
|
|
-Dman-pages=true
|
2017-08-17 15:42:15 +00:00
|
|
|
|
2017-11-02 14:24:38 +00:00
|
|
|
%meson_build
|
2017-08-17 15:42:15 +00:00
|
|
|
|
|
|
|
%install
|
2017-11-02 14:24:38 +00:00
|
|
|
%meson_install
|
2017-08-17 15:42:15 +00:00
|
|
|
|
|
|
|
%find_lang gtk40
|
|
|
|
|
|
|
|
%if !0%{?with_broadway}
|
|
|
|
rm $RPM_BUILD_ROOT%{_mandir}/man1/gtk4-broadwayd.1*
|
|
|
|
%endif
|
|
|
|
|
|
|
|
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gtk-4.0
|
|
|
|
mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-4.0/modules
|
|
|
|
|
|
|
|
%check
|
|
|
|
desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
|
|
|
|
|
|
|
|
%files -f gtk40.lang
|
|
|
|
%license COPYING
|
2017-11-02 14:24:38 +00:00
|
|
|
%doc AUTHORS NEWS README.md
|
2017-08-17 15:42:15 +00:00
|
|
|
%{_bindir}/gtk4-launch
|
|
|
|
%{_bindir}/gtk4-update-icon-cache
|
2020-12-16 18:41:24 +00:00
|
|
|
%{_libdir}/libgtk-4.so.1*
|
2017-08-17 15:42:15 +00:00
|
|
|
%dir %{_libdir}/gtk-4.0
|
|
|
|
%dir %{_libdir}/gtk-4.0/%{bin_version}
|
2018-10-01 14:40:02 +00:00
|
|
|
%{_libdir}/gtk-4.0/%{bin_version}/media/
|
|
|
|
%{_libdir}/gtk-4.0/%{bin_version}/printbackends/
|
2017-08-17 15:42:15 +00:00
|
|
|
%{_libdir}/gtk-4.0/modules
|
|
|
|
%{_libdir}/girepository-1.0
|
|
|
|
%{_mandir}/man1/gtk4-launch.1*
|
|
|
|
%{_mandir}/man1/gtk4-update-icon-cache.1*
|
2019-05-07 03:59:45 +00:00
|
|
|
%{_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
|
2020-10-16 06:40:11 +00:00
|
|
|
%dir %{_datadir}/gtk-4.0
|
|
|
|
%{_datadir}/gtk-4.0/emoji/
|
2017-08-17 15:42:15 +00:00
|
|
|
%if 0%{?with_broadway}
|
|
|
|
%{_bindir}/gtk4-broadwayd
|
|
|
|
%{_mandir}/man1/gtk4-broadwayd.1*
|
|
|
|
%endif
|
|
|
|
|
2022-07-15 07:57:15 +00:00
|
|
|
%files devel
|
2020-12-16 18:41:24 +00:00
|
|
|
%{_libdir}/libgtk-4.so
|
2017-08-17 15:42:15 +00:00
|
|
|
%{_includedir}/*
|
|
|
|
%{_libdir}/pkgconfig/*
|
|
|
|
%{_bindir}/gtk4-builder-tool
|
|
|
|
%{_bindir}/gtk4-encode-symbolic-svg
|
|
|
|
%{_bindir}/gtk4-query-settings
|
2021-09-01 19:24:26 +00:00
|
|
|
%{_datadir}/gettext/
|
|
|
|
%{_datadir}/gir-1.0
|
|
|
|
%{_datadir}/gtk-4.0/gtk4builder.rng
|
|
|
|
%{_datadir}/gtk-4.0/valgrind/
|
|
|
|
%{_mandir}/man1/gtk4-builder-tool.1*
|
|
|
|
%{_mandir}/man1/gtk4-encode-symbolic-svg.1*
|
|
|
|
%{_mandir}/man1/gtk4-query-settings.1*
|
|
|
|
|
|
|
|
%files devel-docs
|
|
|
|
%{_datadir}/doc/gdk4/
|
|
|
|
%{_datadir}/doc/gdk4-wayland/
|
|
|
|
%{_datadir}/doc/gdk4-x11/
|
|
|
|
%{_datadir}/doc/gsk4/
|
|
|
|
%{_datadir}/doc/gtk4/
|
|
|
|
|
|
|
|
%files devel-tools
|
|
|
|
%{_bindir}/gtk4-demo
|
|
|
|
%{_bindir}/gtk4-demo-application
|
|
|
|
%{_bindir}/gtk4-icon-browser
|
2022-05-09 07:22:40 +00:00
|
|
|
%{_bindir}/gtk4-node-editor
|
2021-09-01 19:24:26 +00:00
|
|
|
%{_bindir}/gtk4-print-editor
|
2023-08-05 14:13:50 +00:00
|
|
|
%{_bindir}/gtk4-rendernode-tool
|
2021-09-01 19:24:26 +00:00
|
|
|
%{_bindir}/gtk4-widget-factory
|
2022-05-09 07:22:40 +00:00
|
|
|
%{_datadir}/applications/org.gtk.gtk4.NodeEditor.desktop
|
2019-05-07 03:59:45 +00:00
|
|
|
%{_datadir}/applications/org.gtk.Demo4.desktop
|
|
|
|
%{_datadir}/applications/org.gtk.IconBrowser4.desktop
|
2020-08-01 12:10:11 +00:00
|
|
|
%{_datadir}/applications/org.gtk.PrintEditor4.desktop
|
2019-05-07 03:59:45 +00:00
|
|
|
%{_datadir}/applications/org.gtk.WidgetFactory4.desktop
|
2022-05-09 07:22:40 +00:00
|
|
|
%{_datadir}/icons/hicolor/*/apps/org.gtk.gtk4.NodeEditor*.svg
|
2020-08-01 12:10:11 +00:00
|
|
|
%{_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
|
2019-05-07 03:59:45 +00:00
|
|
|
%{_datadir}/glib-2.0/schemas/org.gtk.Demo4.gschema.xml
|
2022-05-09 07:22:40 +00:00
|
|
|
%{_metainfodir}/org.gtk.gtk4.NodeEditor.appdata.xml
|
|
|
|
%{_metainfodir}/org.gtk.Demo4.appdata.xml
|
|
|
|
%{_metainfodir}/org.gtk.IconBrowser4.appdata.xml
|
|
|
|
%{_metainfodir}/org.gtk.PrintEditor4.appdata.xml
|
|
|
|
%{_metainfodir}/org.gtk.WidgetFactory4.appdata.xml
|
2017-08-17 15:42:15 +00:00
|
|
|
%{_mandir}/man1/gtk4-demo.1*
|
|
|
|
%{_mandir}/man1/gtk4-demo-application.1*
|
|
|
|
%{_mandir}/man1/gtk4-icon-browser.1*
|
2022-05-09 07:22:40 +00:00
|
|
|
%{_mandir}/man1/gtk4-node-editor.1*
|
2023-08-05 14:13:50 +00:00
|
|
|
%{_mandir}/man1/gtk4-rendernode-tool.1*
|
2017-08-17 15:42:15 +00:00
|
|
|
%{_mandir}/man1/gtk4-widget-factory.1*
|
|
|
|
|
|
|
|
%changelog
|
2023-02-09 14:16:25 +00:00
|
|
|
%autochangelog
|