Recent releases of RPM add automatic Requires for
dependencies found in pkgconfig .pc files.
This package now requires at least one -devel package.
Packaging-changes are necessary to get rid of this dependency
on -devel packages:
=> avahi-ui-sharp-0.6.24-1.fc11.i386 (avahi-0.6.24-1.fc11.src.rpm)
Sorry, my mono-foo is too limited to fully understand the mono packaging. Too me this current kind of packaging make some sense, given that mono should not require seperate devel packages. Or does it?
I could answer your question if I understood it. :( So, let me add some comments that hopefully help in finding a decision:
* The "current kind of packaging" does not make sense, because if the pkgconfig files is needed at run-time (as opposed to only build-time), the automatically generated pkgconfig-file dependency-chain (a new feature for Fedora >= 11) would install a -devel package which is supposed to stay fully optional.
* Installing avahi-ui-sharp (or anything that requires it) will pull in gtk-sharp2-devel, which includes the needed pkgconfig file. No -devel package ought to be needed by run-time packages.
* avahi-ui-sharp doesn't look like a -devel package in disguise, because it contains dlls needed at run-time (despite its Summary and Description!)
* Btw: avahi-sharp's Summary and Description also pretend that it's a package needed during development, but actually it's a run-time package (and required by "giver" and "lat", for example).
1) if the pkgconfig in gtk-sharp2-devel is needed by Mono at run-time, the file ought to be moved to gtk-sharp2.
2) Else, if it's not needed at run-time, avahi-ui-sharp.pc should be moved to a -devel package.
=> Reassigning to gtk-shark2 owner, under the assumption that Mono stuff needs the pkgconfig files at run-time. If assumption is wrong, reassign back, please.
no clue about mono, but i think the .pc files are only necessary for building things.
Which hence boils down to: you are asking me to create a -devel package for nothing but a single .pc file. You are kidding, right?
To me it appears that this rpm 'feature' is rather bogus.
Yes, normally .pc files are needed only at build-time. I seem to have heard before that Mono looks for them also at run-time. Perhaps there's someone in the Mono SIG who can tell?
> you are asking me to create a -devel package for
> nothing but a single .pc file.
Whether to split off single-file -devel packages (such as tomboy-devel) or whether to ignore the guidelines may be subject to discussion.
This initiative is based on a request posted by Jesse Keating:
avahi-ui-sharp -> gtk-sharp2-devel pulls in additional -devel packages.
> To me it appears that this rpm 'feature' is rather bogus.
It's rather useful for -devel packages, because pkg-config files have an own dependency-chain (in their "Requires" and "Requires.private" fields). pkg-config files cannot be used/queried without fatal errors unless their dependency-chain is complete, and for it to be complete it must be mapped into proper RPM package dependencies. You don't want to do that manually in your spec files.
I know nobody from the mono camp, sorry.
I understand what the reason for this 'rpm' feature is. But I think it wasn't thought to the end with mono in mind.
On f-d-l Toshio has kindly pointed me to:
Lennart, it is best to just create that single-file -devel package, and move on. Thats the easiest way to stop the nagging...
Reported on 2008-12-20 ... still not fixed.
(In reply to comment #8)
> Reported on 2008-12-20 ... still not fixed.
Why are you nagging me? Is this time critical in any way?
If this matters so much to you, you are welcome to fix this bug yourself!
Fix committed to devel (F-12).