Work around broken rpm pkg-config dep extraction
Temporarily revert an upstream change until we figure out how to do this without breaking rpm pkg-config dep extraction that needs the private requires to generate correct dependencies. https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
This commit is contained in:
parent
90db2084cf
commit
0f741e54a0
120
0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
Normal file
120
0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
From 5f5fd77f096174c45f8335afe6efd6745796d9a5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kalev Lember <klember@redhat.com>
|
||||||
|
Date: Mon, 25 Jul 2022 16:21:50 +0200
|
||||||
|
Subject: [PATCH] Revert "Meson: Simplify pkgconfig file generator"
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
This reverts commit 802bf4199911c811938b0454a876089bafa97dba.
|
||||||
|
---
|
||||||
|
meson.build | 47 +++++++++++++++++++++++++++++++++--------------
|
||||||
|
1 file changed, 33 insertions(+), 14 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/meson.build b/meson.build
|
||||||
|
index 1b8f2d0248..4fc808dbd4 100644
|
||||||
|
--- a/meson.build
|
||||||
|
+++ b/meson.build
|
||||||
|
@@ -471,6 +471,9 @@ if not os_win32
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
+
|
||||||
|
+pc_gdk_extra_libs = []
|
||||||
|
+
|
||||||
|
cairo_backends = []
|
||||||
|
foreach backend: [ ['cairo-xlib', cairo_req, x11_enabled],
|
||||||
|
['cairo-win32', cairo_req, win32_enabled],
|
||||||
|
@@ -601,14 +604,26 @@ if x11_enabled
|
||||||
|
cdata.set('HAVE_RANDR15', xrandr15_dep.found())
|
||||||
|
endif
|
||||||
|
|
||||||
|
+if broadway_enabled
|
||||||
|
+ pc_gdk_extra_libs += ['-lz']
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
+if macos_enabled
|
||||||
|
+ pc_gdk_extra_libs += ['-framework Cocoa', '-framework Carbon']
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
extra_demo_ldflags = []
|
||||||
|
if win32_enabled
|
||||||
|
+ pc_gdk_extra_libs += ['-lgdi32', '-limm32', '-lshell32', '-lole32']
|
||||||
|
if cc.get_id() == 'msvc'
|
||||||
|
# Since the demo programs are now built as pure GUI programs, we
|
||||||
|
# need to pass in /entry:mainCRTStartup so that they will properly
|
||||||
|
# link on Visual Studio builds
|
||||||
|
extra_demo_ldflags = ['/entry:mainCRTStartup']
|
||||||
|
+ else
|
||||||
|
+ pc_gdk_extra_libs += ['-Wl,-luuid']
|
||||||
|
endif
|
||||||
|
+ pc_gdk_extra_libs += ['-lwinmm', '-ldwmapi', '-lsetupapi', '-lcfgmgr32', '-lhid']
|
||||||
|
|
||||||
|
# Check whether libepoxy is built with EGL support on Windows
|
||||||
|
endif
|
||||||
|
@@ -826,7 +841,16 @@ gsk_private_packages = [] # all already in gdk_private_packages
|
||||||
|
pangoft2_pkgs = (wayland_enabled or x11_enabled) ? ['pangoft2'] : []
|
||||||
|
gtk_private_packages = pangoft2_pkgs
|
||||||
|
|
||||||
|
-pkgs = []
|
||||||
|
+gdk_extra_libs = pc_gdk_extra_libs
|
||||||
|
+gsk_extra_libs = []
|
||||||
|
+gtk_extra_libs = []
|
||||||
|
+
|
||||||
|
+gdk_extra_cflags = []
|
||||||
|
+gsk_extra_cflags = []
|
||||||
|
+gtk_extra_cflags = []
|
||||||
|
+
|
||||||
|
+pkgs = [ 'gtk4' ]
|
||||||
|
+
|
||||||
|
pkg_targets = []
|
||||||
|
display_backends = []
|
||||||
|
foreach backend: [ 'broadway', 'macos', 'wayland', 'win32', 'x11', ]
|
||||||
|
@@ -843,23 +867,18 @@ common_pc_variables = [
|
||||||
|
'gtk_host=@0@-@1@'.format(host_machine.cpu_family(), host_machine.system()), # FIXME
|
||||||
|
]
|
||||||
|
|
||||||
|
-pkg_config.generate(libgtk,
|
||||||
|
- filebase: 'gtk4',
|
||||||
|
- unescaped_variables: common_pc_variables,
|
||||||
|
- name: 'GTK',
|
||||||
|
- description: 'GTK Graphical UI Library',
|
||||||
|
- requires: gdk_packages + gsk_packages + gtk_packages,
|
||||||
|
- subdirs: ['gtk-@0@'.format(gtk_api_version)],
|
||||||
|
-)
|
||||||
|
-meson.override_dependency('gtk4', libgtk_dep)
|
||||||
|
-
|
||||||
|
foreach pkg: pkgs
|
||||||
|
pkg_config.generate(
|
||||||
|
filebase: pkg,
|
||||||
|
unescaped_variables: common_pc_variables,
|
||||||
|
name: 'GTK',
|
||||||
|
description: 'GTK Graphical UI Library',
|
||||||
|
- requires: 'gtk4',
|
||||||
|
+ requires: gdk_packages + gsk_packages + gtk_packages,
|
||||||
|
+ requires_private: gdk_private_packages + gsk_private_packages + gtk_private_packages,
|
||||||
|
+ libraries: ['-L${libdir}', '-lgtk-4'],
|
||||||
|
+ libraries_private: gdk_extra_libs + gsk_extra_libs + gtk_extra_libs,
|
||||||
|
+ subdirs: ['gtk-@0@'.format(gtk_api_version)],
|
||||||
|
+ extra_cflags: gdk_extra_cflags + gsk_extra_cflags + gtk_extra_cflags,
|
||||||
|
)
|
||||||
|
meson.override_dependency(pkg, libgtk_dep)
|
||||||
|
endforeach
|
||||||
|
@@ -870,10 +889,10 @@ if os_unix
|
||||||
|
unescaped_variables: common_pc_variables,
|
||||||
|
name: 'GTK',
|
||||||
|
description: 'GTK Unix print support',
|
||||||
|
- requires: 'gtk4',
|
||||||
|
+ requires: ['gtk4'] + gtk_packages,
|
||||||
|
+ libraries: [],
|
||||||
|
subdirs: ['gtk-@0@/unix-print'.format(gtk_api_version)],
|
||||||
|
)
|
||||||
|
- meson.override_dependency('gtk4-unix-print', libgtk_dep)
|
||||||
|
endif
|
||||||
|
|
||||||
|
subdir('po')
|
||||||
|
--
|
||||||
|
2.37.1
|
||||||
|
|
@ -17,12 +17,16 @@
|
|||||||
|
|
||||||
Name: gtk4
|
Name: gtk4
|
||||||
Version: 4.7.1
|
Version: 4.7.1
|
||||||
Release: 2%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: GTK graphical user interface library
|
Summary: GTK graphical user interface library
|
||||||
|
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
URL: https://www.gtk.org
|
URL: https://www.gtk.org
|
||||||
Source0: https://download.gnome.org/sources/gtk/4.7/gtk-%{version}.tar.xz
|
Source0: https://download.gnome.org/sources/gtk/4.7/gtk-%{version}.tar.xz
|
||||||
|
# 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
|
||||||
|
|
||||||
BuildRequires: cups-devel
|
BuildRequires: cups-devel
|
||||||
BuildRequires: desktop-file-utils
|
BuildRequires: desktop-file-utils
|
||||||
@ -231,6 +235,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
|
|||||||
%{_mandir}/man1/gtk4-widget-factory.1*
|
%{_mandir}/man1/gtk4-widget-factory.1*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Jul 25 2022 Kalev Lember <klember@redhat.com> - 4.7.1-3
|
||||||
|
- Work around broken rpm pkg-config dep extraction
|
||||||
|
|
||||||
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.1-2
|
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.1-2
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user