[Bug 496633] Review Request: monodevelop-debugger-gdb - GDB Debugger Addin for MonoDevelop

bugzilla at redhat.com bugzilla at redhat.com
Fri Apr 24 00:16:09 UTC 2009


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=496633





--- Comment #4 from Toshio Ernie Kuratomi <a.badger at gmail.com>  2009-04-23 20:16:08 EDT ---
(In reply to comment #3)
> First the doubts:
> you say: "* Package is named according to the naming Guidelines"
> My packages don't end with .fc10.rpm , don't know how to instruct rpmbuild to
> use that kind of name convention.
> 
Ah... this is optional, but it actually is a good thing to do (so upgrades
between releases work).  Change the Release tag to:

  Release: 2%{?dist}

The %{dist} macro expands to fc10 on fedora 10, fc11 on Fedora 11, etc.  The
"?" in the macro allows the rpm to build if the macro isn't defined on the
system on which you're building.

> On "*Needswork" section you say: "* All filenames are UTF-8", that is good or
> bad?, need to change the text encoding?
> 
Ah.  Sorry.  I should have put that in the Good section.  Your encoding is
fine.

> Fixed:
> * Spec file readability - DONE

* Still need to move the %file section to just before the %changelog section

> * BuildArch: i386 does not belong in the spec file: Here some doubts don't know
> if this addins are goin to compile fine in all architectures, it seems to me
> that it have to just x86/x86_64 for now, how do I mix the "BuildArch: noarh"
> and "ExclusiveArch: x86 x86_64"?

* You would do:
    ExclusiveArch: %ix86 x86_64
But what keeps the addins from compiling on other arches?  mono itself is being
built on:
    %ix86 x86_64 ia64 armv4l sparcv9 alpha s390 s390x ppc ppc64

monodevelop is being built on:
    ExclusiveArch:  %ix86 x86_64 ia64 armv4l sparc alpha

You probably want to go with monodevelop's version as it is the more restricted
of the two.  Since ppc and ppc64 is left off of there, you want to follow the
directions here:
  http://fedoraproject.org/wiki/Packaging:Guidelines#Architecture_Support

So that people associated with ppc and ppc64 ports can track this bug and
attempt to fix it.

> * You should use %configure rather than ./configure: Problem here, using
> "%configure" I get:

Yeah... I took a look.  The package has a hand-coded configure script instead
of an autoconf generated one so it has limited options.  Try this for the
configure line:

./configure --prefix=%{_prefix} --bindir=%{_bindir} --datadir=%{_datadir}
--libdir=%{_libdir}

And it looks like you'll also have to patch one of the make files.

MonoDevelop.Debugger.Gdb.make hardcodes $(prefix)/lib/ instead of allowing
libdir to override that.  You can patch the file or put this sed line into your
%prep section:

  sed -i 's!INSTALL_DIR =
$(DESTDIR)$(prefix)/lib/monodevelop/AddIns/MonoDevelop.Debugger!INSTALL_DIR =
$(DESTDIR)%{_libdir}/monodevelop/AddIns/MonoDevelop.Debugger!'
MonoDevelop.Debugger.Gdb.make


> RPM build errors:
>     File not found by glob:
> /home/buho/rpmbuild/BUILDROOT/monodevelop-debugger-gdb-2.0-1.1.i386/usr/lib/lib/monodevelop/AddIns/MonoDevelop.Debugger/MonoDevelop.Debugger.Gdb.dll*
> 
> Witch is related to the use of: 
> 
> %{_libdir}/lib/monodevelop/AddIns/MonoDevelop.Debugger/MonoDevelop.Debugger.Gdb.dll*

the goal is to be able to use:
 
%{_libdir}/monodevelop/AddIns/MonoDevelop.Debugger/MonoDevelop.Debugger.Gdb.dll*

So it looks like you'll need to modify the file line a little.


New things:

* You need to bump the Release: field with every revision.  Since you also want
to add the disttag, the next release should be:
  Release: 2%{?dist}


I was able to build in mock with the changes mentioned here.  So rpmlint output
from the packages:

monodevelop-debugger-gdb.src: E: no-changelogname-tag
monodevelop-debugger-gdb.x86_64: E: no-changelogname-tag

* You need to add a %changelog entry to tell what you've done.  the format is
shown here:
  https://fedoraproject.org/wiki/Packaging:Guidelines#Changelogs

monodevelop-debugger-gdb.src: W: strange-permission
monodevelop-debugger-gdb-2.0.tar.bz2 0755

* 0644 would be the normal permissions for a tarball.

monodevelop-debugger-gdb.src: W: mixed-use-of-spaces-and-tabs (spaces: line 2,
tab: line 1)

* Converting all tabs in the specfile into spaces would be a good idea.

monodevelop-debugger-gdb.x86_64: E: no-binary
monodevelop-debugger-gdb.x86_64: W: only-non-binary-in-usr-lib

* mono packages that only contain assemblies have no ELF files but they use
architecture specific directories so they cannot be noarch.

monodevelop-debugger-gdb.x86_64: W: no-documentation

* In this case upstream is not providing any documentation files

monodevelop-debugger-gdb-debuginfo.x86_64: E: empty-debuginfo-package

* Presently, rpm doesn't know how to pull debug information from mono
assemblies.  So we should be stopping the generation of debuginfo files.  This
will change in the future.  This page has details of how to fix this:
  
https://fedoraproject.org/wiki/Packaging:Debuginfo#Useless_or_incomplete_debuginfo_packages_due_to_other_reasons

You want to add this to your spec file:
  # rpm does not currently pull debuginfo out of mono packages
  %global debug_package %{nil}

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.




More information about the Fedora-package-review mailing list