-
-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.28.0: autoconf pkgconfig dependencies uses indirect dependencies #313
Comments
Looks like below patch fixes this issue --- a/configure.ac
+++ b/configure.ac
@@ -55,6 +55,7 @@
PKG_CHECK_MODULES(SESSION_PROPERTIES,
glib-2.0 >= $GLIB_REQUIRED
+ gio-unix-2.0 >= $GLIB_REQUIRED
gtk+-3.0 >= $GTK_REQUIRED
) Please let me know if you want this as PR. |
Please show me your spec file. |
here it is%global build_cflags %{build_cflags} -Os
Summary: MATE Desktop session manager
Name: mate-session-manager
Version: 1.28.0
Release: 2%{?dist}
License: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later.html)
URL: https://mate-desktop.org/
VCS: https://github.com/mate-desktop/mate-session-manager/
Source: https://pub.mate-desktop.org/releases/%(v=%{version}; echo ${v%.*})/%{name}-%{version}.tar.xz
Patch: %{name}-do_not_install_some_docs.patch
Patch: %{name}-use_DocBook_4.5.patch
Patch: %{name}-add_missing_gio-unix-2.0_depndencies.patch
BuildRequires: autoconf-archive
BuildRequires: automake
BuildRequires: docbook-style-xsl
BuildRequires: docbook-xml-dtd-4.5
BuildRequires: gcc
BuildRequires: gettext-devel
BuildRequires: libtool
BuildRequires: mate-common
BuildRequires: pkgconfig
BuildRequires: pkgconfig(dbus-glib-1) >= 0.76
BuildRequires: pkgconfig(gio-2.0) >= 2.25.0
BuildRequires: pkgconfig(glib-2.0) >= 2.50.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.22.0
BuildRequires: pkgconfig(ice)
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(sm)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xau)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xtrans)
BuildRequires: xmlto
# CheckRequires:
BuildRequires: pkgconfig(epoxy)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(glesv2)
BuildRequires: pkgconfig(xcomposite)
BuildRequires: pkgconfig(xtst)
Requires: dbus-x11
Requires: mate-control-center
Requires: mate-desktop-libs
Requires: mate-polkit
Requires: system-logos
%description
mate-session contains the MATE session manager, as well as a configuration
program to choose applications starting on login.
%prep
%autosetup -p1
%build
autoreconf -fiv
%configure \
--disable-static \
--enable-ipv6 \
--with-default-wm=marco \
--with-systemd \
--enable-docbook-docs \
--disable-schemas-compile \
%{nil}
%make_build
%install
%make_install
%find_lang %{name}
%check
%make_build check
%files -f %{name}.lang
%doc doc/dbus/mate-session.html
%attr(755,root,root) %{_bindir}/mate-*
%{_datadir}/applications/*.desktop
%{_datadir}/glib-2.0/schemas/*.gschema.xml
%{_datadir}/icons/*/*/*/*
%{_datadir}/mate-session-manager
%{_datadir}/xsessions/mate.desktop
%{_libexecdir}/mate-session-check-*
%{_mandir}/man1/*
Fedora has a lot indirect dependencies caused by well known bug in pkgconfig dependencies generator. As you see it is used here
This causes that if .pc file contains Now that issue affects even latest pkgconfig. My recent comment about that you can read about that on pkgconf/pkgconf#321 This Issue with indirect dependencies is very CLEARLY visible as mate-session-manager is using |
Weird, for me it works without adding |
Which is equivalent of PKG_CHECK_MODULES(DBUS_GLIB, dbus-glib-1 >= $DBUS_GLIB_REQUIRED) Just check in which one .pc file in build env you have |
We do not use static linking in official fedora Mate. And my build works fine. |
No one wrote anything which may point on something like that (and not me as well). Did you check what you have in .pc files in |
We reached a level which i don't like , bye! |
Looks like mate-session-manager uses
gio-unix-2.0
becausebuild fails with
At the same time:
The text was updated successfully, but these errors were encountered: