On Wed, Jan 4, 2012 at 2:14 PM, David Howells <dhowells@xxxxxxxxxx> wrote: > > Hi, > > I've produced a pair of specfiles that I'm aiming to get into Fedora that take > the standard Fedora binutils and gcc SRPM sources and patches and produce a > series of cross-compilation binutils and gcc RPMs for all the Linux kernel > arches that I can manage to get working. > > The inclusion request BZs can be found here: > > cross-binutils: https://bugzilla.redhat.com/show_bug.cgi?id=761619 > cross-gcc: https://bugzilla.redhat.com/show_bug.cgi?id=766166 > > However, there are a number of warnings that rpmlint produces that I'd like > some advice on. For cross-binutils: > > (1) As each set of cross-binutils manual pages is the same as every other set > (and the core set come to that), I've stuffed the base manual pages in > their own RPM and put symlinks to them from the individual arch RPMs. > > However, this results in lots of "dangling-relative-symlink" warnings, > even though the targets are in another RPM passed to rpmlint. > > Can I make rpmlint ignore these? Probably not, but zero rpmlint output isn't required, although one should do as much as possible to fix the problems. > (2) The manual pages and translation files RPM gets the warning "no-binary" - > which is true. > > Is there any way to make the spec file produce a noarch RPM at the same > time as a bunch of binary RPMs? Within any sub-package you can specify "BuildArch: noarch" since the same package can be installed regardless of arch. %package doc Summary: Documentation and man pages for %{name} BuildArch: noarch Requires: %{name} = %{version}-%{release} %description ... or something like that. > (4) The binutils installer would like to create /usr/<target>/. I'm creating > /usr/cross/<target>/ to group all the stuff together into one dir under > /usr. However, rpmlint likes neither of these and gives a > "non-standard-dir-in-usr" warning. > > Should I put the stuff somewhere else? /usr/lib/ or /usr/libexec/ > perhaps? I've tried to persuade the cross-gcc to use the things in > /usr/bin/, but it really doesn't want to do that. Not sure here. Maybe they should be /usr/lib/<target>. I as /usr/lib and not /usr/lib{,64} because lib64 I would think should be only for x86_64 libraries. > (5) The binutils installer creates a supplementary "<target>-ld.bfd" that's a > hardlink to "<target>-ld". It doesn't, however, supply a manual page for > this. > > Is there a way to tell rpmlint that this is correct? Or should I just > discard the ld.bfd entirely? What is it for, anyway? I could even link > the manual page, I suppose. If you want to keep them then symlinking the man pages would work. > And for cross-gcc: > (7) The common manpage and translation RPM triggers a "no-binary" warning as > for cross-binutils. Same as #2 above. > (8) The package installs gpl.7.gz and similar common-looking manpages in man7. > Is this a bad idea, just in case there's a conflict with another package > wanting to do the same? > > Is there/ should there be a common GPL licence text RPM with these files > in it that RPMs can be made dependent on? You'll have to take a look and see what's in them. You can run man and add the path to the file (it doesn't have to be installed) to see what they contain. man /path/to/gpl.7.gz I quick check didn't find any other packages providing gpl.7 # repoquery --whatprovides /usr/share/man/man7/gpl.7* <no output> Richard -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel