Re: Need some advice on best packaging practices for a tricky package?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux