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

Bug#904302: Why outlawing vendor-specific patch series would be a bad idea



On Sun, Aug 19, 2018 at 10:13:56PM +0200, Philip Hands wrote:
> Adrian Bunk <bunk@debian.org> writes:
> 
> ...
> >> "The source" is what you get after steps 1 and 2.
> >
> > Why is "The source" what you get after dpkg applied patches,
> > but before debian/rules applied patches?
> 
> I agree with Sean's point about it being a matter of definition relating
> to when we invoke debian/rules, but for an alternative justification one
> might look at this:
> 
> For the Debian Maintainer, what is the preferred form of modification?

The maintainer might actually know how his self-written patching 
machinery works.

I am doing plenty of bugfixing in packages I do not maintain, and the 
complex build machineries of some packages can be a real timeconsuming 
pain in some body part.

It is also frustrating when you end up spending hours trying to find a 
bug in the wrong sources.

> It could be the source before the patches are applied (especially if
> they're working on a patch to be sent upstream), but really, chances are
> that it's actually the state of the source after the Debian patches are
> applied.

So for src:gcc-8 the preferred form of modification are three tarballs 
that are not even unpacked, and none of the patches applied?

> It is almost certainly _not_ the state that source might get transformed
> into at some point during the build process.

Why not?
It gets transformed into the sources that actually get built.
These are the relevant sources when debugging some FTBFS or segfault.

> It is also almost certainly not the alternative version of the source
> that results from applying a patch series that only gets applied if they
> unpack the source on a different vendor's OS.

"different vendor's OS" is only a small part of the general problem.

How should we handle architecture-specific patches properly inside 
Debian? This is part of the same general problem that the notion
of exactly one "the sources" is misguided when it comes to what
actually gets compiled.

It is a real problem that there is no standard way to look on an amd64 
machine at the src:gcc-8 sources that will actually get built on armel.

And I cannot blame the maintainer, since there is no standard way to 
express things like e.g.:
- "apply the Linaro patches only on arm* and only in Ubuntu"
- "apply the Hurd patches that might touch generic code only on Hurd"

> Cheers, Phil.

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed


Reply to: