Re: Proposal to Removal of QNX Neutrino support from GDB

Simon Marchi via Gdb
2021-02-28T15:28:54Z

On 2021-02-27 10:48 a.m., Stephen Webb wrote:
> We have decided to commit to integrating our fork as much as possible
> into upstream and maintaining it there.

Great!

> There are a lot of steps we'll need to go through to complete this
> process, including all the legal and technical preparations. These will
> of course take time and we're going to need some guidance.

No problem, we're here to help.

It's a bit early, but do you think there's a chance that people in the
GDB community can get access to the toolchain to build for Neutrino?
This way we could at least build-test our changes. Otherwise, we can
just try our best when we do changes to the Neutrino files, or we
sometimes just forget to change them when doing big changes across the
codebase.

> We already have pointers on BuildBot setup so we can start the ball
> rolling locally on our end.

I don't know if you are talking about the upstream GDB buildbot. But
this one is dead currently. It was maintained by an ex-contributor
(Sergio) on his own time, and it's unmaintained now. I think everyone
would like if we had working CI, but nobody is working on that right
now.

> We'll start by maintaining a local patch
> queue against upstream branches and submitting them through the various
> review processes. I do not yet have a time estimate on when this will be
> ready.

Perfect. As always, sending small and focused patches will make it
easier to review and merge.

The first step will likely be to get the port building. I can't build
it myself, but I recently noticed it was calling functions that didn't
exist anymore (e.g. inf_child_mourn_inferior), so it definitly doesn't
build.

>
> Is there a link to the paperwork requirements for code submissions? The
> sooner we get the ball rolling on that the sooner we can start waiting
> for it.

The technical bits for contributions are here:

https://sourceware.org/gdb/wiki/ContributionChecklist

In my opinion, the most important is:

- use git-send-email to send the patches
- make sure you are on latest master
- one logical thing per patch, if you notice addition cleanups to do,
just add another patch on top (or before) rather than shoving
unrelated changes in a patch
- write detailed commit messages, if you look at commits in the gdb/
directory you'll get an idea

Do your best for the formatting and ChangeLog entries. They likely
won't be correct on the first try, and the comments on the first few
patches will help you learn those. After that you'll get the hang of
them.

Regarding the copyright assignment, I'd like to see what is the status
of QNX. Is there maybe an existing company-wide copyright assignment
for QNX, given the past contributions? Unfortunately, the GNU server
used to check those seems down. I'll try back later.

If there isn't, it's possible to get an assignment for individuals, or a
company-wide one (meaning that any QNX employee can submit code to GDB).

The typical form we point individuals to to get an assignment is this
one (also down for me at the moment):

https://git.savannah.gnu.org/cgit/gnulib.git/plain/doc/Copyright/request-assign.future

But I don't know if that differs if you want to get one for someone who
will contribute on behalf of a company. The folks at assign@gnu.org
will be able to help you.

In any case, I'd suggest sorting the copyright assignment thing as early
as possible, because that can take some time. You can still send
patches and get them reviewed while that is pending, but you won't be
able to merge the patches until that's done.

Simon