On Thu, Sep 29, 2022 at 10:51:55AM +0100, Sérgio Basto wrote:
On Thu, 2022-09-29 at 08:26 +0000, Zbigniew Jędrzejewski-Szmek
wrote:
> On Thu, Sep 29, 2022 at 12:01:13AM +0100, Sérgio Basto wrote:
> > On Fri, 2022-09-23 at 22:49 +0100, Sérgio Basto wrote:
> > > On Fri, 2022-09-23 at 22:39 +0100, Sérgio Basto wrote:
> > > > On Mon, 2022-09-19 at 09:08 +0200, Dan Horák wrote:
> > > > > On Fri, 16 Sep 2022 13:42:42 +0000
> > > > > Zbigniew Jędrzejewski-Szmek <zbyszek(a)in.waw.pl> wrote:
> > > > >
> > > > > > On Fri, Sep 16, 2022 at 03:35:29PM +0200, Florian Weimer
> > > > > > wrote:
> > > > > > > * Zbigniew Jędrzejewski-Szmek:
> > > > > > >
> > > > > > > > So… we certainly don't want people having to
declare
> > > > > > > > the
> > > > > > > > dependency
> > > > > > > > manually everywhere.
> > > > > > >
> > > > > > > The packaging guidelines seem to say that the manual
> > > > > > > dependency
> > > > > > > is
> > > > > > > required, though.
> > > > > >
> > > > > > Yeah, you need *some* dependency. But opencryptoki has
> > > > > > BR:systemd-devel, and systemd-devel has R:systemd, which
> > > > > > has
> > > > > > the
> > > > > > Requires(meta) under discussion. So an explicit
BR:systemd-
> > > > > > rpm-
> > > > > > macros
> > > > > > should be redundant.
> > > > >
> > > > > the BR: systemd-devel in opencryptoki might be just a
> > > > > historical
> > > > > relict, because it used to be required to define the various
> > > > > macros
> > > > > (IIRC)
> > > > >
> > > > >
> > > > > Dan
> > > >
> > > >
> > > > Today clamav fails to build on rawhide again, this time because
> > > > make
> > > > install on mock doesn't install systemd files !
> > >
> > >
> > > scratch build
> > >
https://koji.fedoraproject.org/koji/taskinfo?taskID=92286295
> >
> >
> > systemd-devel no longer has systemd dependency on F37+, now we also
> > need BuildRequires: systemd
>
> I don't expect clamav needs systemd to build. It probably needs
> systemd-devel and systemd-rpm-macros.
>
> It is true that systemd-devel used to pull in systemd. It was
> something
> of an accident: systemd-devel had an artificial dependency on
> systemd-pam,
> which in turn had a dependency on systemd. The artificial dep was
> added
> to make system-pam a multiarch package. At some point this was solved
> properly
> and and hack was dropped. I don't think we want systemd-devel to
> R:systemd.
> systemd-devel is about various headers and libraries, and the systemd
> runtime is a separate thing.
>
> I now pushed a commit to add in systemd-devel:
>
> Requires(meta): (%{name}-rpm-macros = %{version}-%{release} if rpm-
> build)
>
> This means we'll get systemd-rpm-macros in rpm buildroot if systemd-
> devel
> is installed. We had the same line on systemd itself. This way one
> doesn't
> need to explicitly BR:systemd-rpm-macros is either BR:systemd or
> BR:systemd-devel
> is specified.
https://src.fedoraproject.org/rpms/clamav/c/35d73944ae2fa9cee3df4729c53a6...
"Add missing dependency on systemd as it's the systemd package itself
that ships systemd.pc, not systemd-devel."
because clamav runs `pkg-config --variable=systemdsystemunitdir
systemd` which needs /usr/share/pkgconfig/systemd.pc
Ah, OK. Thanks for the correction. In this case, it's fine for clamav
to BR:systemd.
An alternative approach would be to use rpm macros instead of pkg-config:
%_unitdir gives the same string.
and /usr/share/pkgconfig/systemd.pc is systemd (core) sub-package ,
maybe I would suggest move /usr/share/pkgconfig/systemd.pc and
/usr/share/pkgconfig/udev.pc to devel sub-package
That'd cause too much confusion. systemd-devel has libsystemd.pc already,
and -devel is about libraries. We had the rule that 'pkgconfig(systemd)'
gives you full systemd package, and I think we should not change that.
Zbyszek