Re: Is it possible (or a good idea) to add additional files to the -debuginfo packages?

2023-11-08 Thread Richard W.M. Jones
On Wed, Nov 08, 2023 at 09:01:15AM -0500, Omair Majid wrote:
> Hi,
> 
> "Richard W.M. Jones"  writes:
> 
> > Can you be a bit more specific?  What programming language?  What does
> > the debug data look like?  Is it embedded in ELF sections?  What tools
> > are needed / provided to extract it?  How does the debugger read it?
> 
> This is for the .NET ecosystem, where the primary languages include C#,
> F# and VB.NET.
> 
> The compiled .NET code files are generally named along the lines of
> Foo.dll, and debug data is stored in separate Foo.pdb files. The files
> are generated by the .NET compilers directly. The Foo.dll file generally
> contains a reference to where the .pdb files are stored (they could be
> online, for example, - similar to a debuginfod server - or on the disk
> next to the .dll file).
> 
> I am not aware of any non-.NET tools in Fedora that can work with these
> files.
> 
> .NET-specific debuggers know how to find the .pdb files when they see a
> .dll file. Generally, every IDE provides their own debugger (often
> closed source). An open source debugger is available at
> https://github.com/Samsung/netcoredbg/ and used by some
> (non-Fedora-packaged) open source IDEs.
> 
> To circle back to my original question, the disk layout currently looks
> something like this:
> 
> - /usr/lib64/dotnet/shared/$NAME/$VERSION/foo.dll
> - /usr/lib64/dotnet/shared/$NAME/$VERSION/foo.pdb

I suspect it would be confusing to have debuginfo sometimes contain
.pdb files, and it would make all the debuginfo generation code much
more complicated.  But others are experts about this.

However some kind of alternate -windbg standard might work?

Who will consume this in Fedora?  Is netcoredbg packaged?  Can Wine
use them?

Although we ship a few *.exe files in Fedora now, we got a lot of
pushback about this when we proposed it originally (around 2008).
There is usually a clear case where we do include them: they are
necessary utilities that can run under Wine, or -- like rhsrvany.exe /
pnp_wait.exe / qemu-ga -- we need them so we can install the files
inside Windows guests.  Generally packaging random open source Windows
*.exes as Fedora RPMs "just because" is frowned on.

> I was thinking that it might be possible to put the .dll file in the
> base package (eg, dotnet-runtime-8.0) and the .pdb file in the debug package
> (eg, dotnet-runtime-8.0-debuginfo) somehow.

It would definitely be technically possible to write some RPM macros
that package them, but as above putting them into something
specifically called -debuginfo could be confusing.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines.  Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Is it possible (or a good idea) to add additional files to the -debuginfo packages?

2023-11-08 Thread Omair Majid
Hi,

"Richard W.M. Jones"  writes:

> Can you be a bit more specific?  What programming language?  What does
> the debug data look like?  Is it embedded in ELF sections?  What tools
> are needed / provided to extract it?  How does the debugger read it?

This is for the .NET ecosystem, where the primary languages include C#,
F# and VB.NET.

The compiled .NET code files are generally named along the lines of
Foo.dll, and debug data is stored in separate Foo.pdb files. The files
are generated by the .NET compilers directly. The Foo.dll file generally
contains a reference to where the .pdb files are stored (they could be
online, for example, - similar to a debuginfod server - or on the disk
next to the .dll file).

I am not aware of any non-.NET tools in Fedora that can work with these
files.

.NET-specific debuggers know how to find the .pdb files when they see a
.dll file. Generally, every IDE provides their own debugger (often
closed source). An open source debugger is available at
https://github.com/Samsung/netcoredbg/ and used by some
(non-Fedora-packaged) open source IDEs.

To circle back to my original question, the disk layout currently looks
something like this:

- /usr/lib64/dotnet/shared/$NAME/$VERSION/foo.dll
- /usr/lib64/dotnet/shared/$NAME/$VERSION/foo.pdb

I was thinking that it might be possible to put the .dll file in the
base package (eg, dotnet-runtime-8.0) and the .pdb file in the debug package
(eg, dotnet-runtime-8.0-debuginfo) somehow.

Thanks,
Omair

--
PGP Key: B157A9F0 (http://pgp.mit.edu/)
Fingerprint = 9DB5 2F0B FD3E C239 E108  E7BD DF99 7AF8 B157 A9F0
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Is it possible (or a good idea) to add additional files to the -debuginfo packages?

2023-11-08 Thread Richard W.M. Jones

On Tue, Nov 07, 2023 at 01:40:09PM -0500, Omair Majid wrote:
> Hi,
> 
> I am trying to enable debug information for a programming language that
> produces debuginfo in a custom (non-DWARF) format. I was thinking that
> adding that programming-language-specific debuginfo to existing
> -debuginfo packages seems like a good idea.
> 
> (Is that a bad idea?)
> 
> Any suggestions on how I can add additional files to the auto-generated
> -debuginfo packages (which already contain some useful DWARF debuginfo).

Can you be a bit more specific?  What programming language?  What does
the debug data look like?  Is it embedded in ELF sections?  What tools
are needed / provided to extract it?  How does the debugger read it?

Rich.

> Thanks,
> Omair
> 
> --
> PGP Key: B157A9F0 (http://pgp.mit.edu/)
> Fingerprint = 9DB5 2F0B FD3E C239 E108  E7BD DF99 7AF8 B157 A9F0
> ___
> devel mailing list -- devel@lists.fedoraproject.org
> To unsubscribe send an email to devel-le...@lists.fedoraproject.org
> Fedora Code of Conduct: 
> https://docs.fedoraproject.org/en-US/project/code-of-conduct/
> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives: 
> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
> Do not reply to spam, report it: 
> https://pagure.io/fedora-infrastructure/new_issue

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
nbdkit - Flexible, fast NBD server with plugins
https://gitlab.com/nbdkit/nbdkit
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Is it possible (or a good idea) to add additional files to the -debuginfo packages?

2023-11-07 Thread Omair Majid
Hi,

I am trying to enable debug information for a programming language that
produces debuginfo in a custom (non-DWARF) format. I was thinking that
adding that programming-language-specific debuginfo to existing
-debuginfo packages seems like a good idea.

(Is that a bad idea?)

Any suggestions on how I can add additional files to the auto-generated
-debuginfo packages (which already contain some useful DWARF debuginfo).

Thanks,
Omair

--
PGP Key: B157A9F0 (http://pgp.mit.edu/)
Fingerprint = 9DB5 2F0B FD3E C239 E108  E7BD DF99 7AF8 B157 A9F0
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue