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

Re: How to commit a new architecture like RISC-V



On Sat, May 22, 2021 at 10:57:12AM +0800, zhangjialing wrote:
> 1. is it necessary to adapt rebootstrap ?

If you want to use rebootstrap, then experience tells that it is.
rebootstrap contains architecture-specific fixes that have not yet been
upstreamed to make the bootstrap process barely work. It is not well
suited to include large patches, which is why I asked you to upstream
first, but small fixups are regularly included. Not having to adapt it
would be much better, but it kinda assumes that you get all your patches
upstream at once, which feels unrealistic.

> 2. after adapt rebootstrap,what is the next. I want to know the full 
> process for a new architecture do a debian port.

I'm less of an expert here. You set up a native machine running the new
port and turn it into a buildd machine. Then you start natively building
as many packages as possible. Here and there whole package sets will be
bd-uninstallable due to cyclic dependencies. You'll be breaking those
cycles manually (e.g. using cross compilation). Once you have
significant coverage, the architecture can be integrated into Debian
infrastructure.

> 3. in  our local environment, we already have a Debian port based on
> loongarch64. Will this help the port work.

What you are saying here is that you already did bootstrap the port. In
that case, you can skip rebootstrap and use your existing binary
packages. It does seem to me though that your Debian port is not based
on Debian unstable, which is a barrier to including your changes into
the archive. You seem to have created a port of a Debian derivative
instead. What is left here is upstreaming your work and getting the diff
between your derivative and Debian unstable down to zero.

I think there are basically two ways to get there:
 1. Upgrade. You'll be continuously rebasing your patches to upgrade
    your derivative to follow unstable. Given the version numbers you
    presented earlier, your derivative seems stuck on quite old
    versions, so this is a lot of work.
 2. Start over. You'd effectively use your derivative port as a patch
    repository for upstreaming and redo the port bootstrap from Debian
    unstable instead of your derivative.

Either way, upstreaming is key to getting any of this into Debian.

Helmut


Reply to: