How to remove erroneous deps from pkgng
Jason E. Hale
bsdkaffee at gmail.com
Sat Jul 21 20:48:09 UTC 2012
On Saturday, July 21, 2012 11:38:39 Scot Hetzel wrote:
> > The problem with simply removing
> >
> > pkgconfig_RUN_DEPENDS= pkg-config:${PORTSDIR}/devel/pkg-config
> >
> > from bsd.gnome.mk is that there are ports that indirectly depend on
> > pkg-config for their build through other ports that directly depend on it
> > since it has just been a runtime dependency. I know there are quite a
> > few KDE ports like that.
>
> Removing this runtime dependency for pkgconfig from bsd.gnome.mk is
> the correct thing to do, until we have the better frame work to
> specify that pkgconfig is a build or run dependancy.
>
IMO I don't really see what the hurry is. This has been the behavior for
years. I think we can wait until there is a framework in place so we are not
doing double work. I agree it should be done, but why go through all this
again in a week or a month?
> > To explain better, x11/kdelibs4 has USE_GNOME=pkgconfig, but some ports
> > that depend on kdelibs4 and require pkg-config for their build are not
> > currently defining USE_GNOME=pkgconfig since it is assumed that
> > pkg-config is installed. A direct dependency for pkg-config would need to
> > be added to all of those ports.
>
> That is what the experimental run will tell us. Which ports break
> when this line is removed/disabled in bsd.gnome.mk. This way we can
> fix those ports by adding a BUILD_DEPENDS to them.
>
There are a few ports that need pkg-config to properly configure, but will
build anyways without it. Just doing an exp-run isn't going to neccessarily
test for those (graphics/kipi-plugins-kde4 is a good example although in that
case there may be some file leftovers to give it away). Certain non-default
options may use pkg-config to check a dependency as well and a default build
wouldn't tell us if those options worked or not.
> > I think there would be a lot less breakage if the line in bsd.gnome.mk
> > were
> > left in for now and we migrated over to the pkgconfig:build/run scheme.
>
> We would still have the same amount of breakage. In your example
> x11/kdelibs4 would be changed to USE_GNOME=pkgconfig:build. The ports
> that still have an indirect build dependancy on pkgconfig would still
> fail to build.
>
I see what you're saying. I was originally thinking that it would still
remain as USE_GNOME=pkgconfig, meaning pkg-config is a build and run
dependency and we could opt-in to either :build or :run later.
My main concern is with ports like graphics/kipi-plugins-kde4 where the
failure isn't going to be as obvious. I think a good alternative is to detect
the ports that currently have and indirect dependency on pkg-config whether
needed or not and add USE_GNOME=pkgconfig (if we are just going to remove the
line from bsd.gnome.mk) to them for now.
Jason E. Hale
KDE/FreeBSD Team
More information about the freebsd-gnome
mailing list