Bug#881341: webkit2gtk FTCBFS: debian/rules confuses build and host

Alberto Garcia berto at igalia.com
Fri Nov 10 19:25:59 UTC 2017


On Fri, Nov 10, 2017 at 07:07:00PM +0100, Helmut Grohne wrote:

> > > ifeq ($(DEB_HOST_ARCH_BITS),32)
> > >  	LDFLAGS += -Wl,--no-keep-memory
> > >  endif
> > >  
> > > -ifeq ($(DEB_BUILD_ARCH),alpha)
> > > +ifeq ($(DEB_HOST_ARCH),alpha)
> > >  	LDFLAGS += -Wl,--no-relax
> > >  endif
> > 
> > Wait a minute, why do you change this to DEB_HOST_ARCH here? Shouldn't
> > we be using the DEB_BUILD_* variables in these two cases?
> 
> I think you are confusing build and host again.
> 
> If you check DEB_BUILD_ARCH, then you will pass -Wl,--no-relax when
> building for amd64 on alpha. Since --no-relax is machine-dependent,
> that seems wrong to me. In general, changing the build architecture
> should not affect the resulting binary packages. Passing different
> flags for different build architectures often breaks that.

Both those flags (--no-keep-memory and --no-relax) plus the -g1 that
you're changing in your patch were added because the build was failing
(not enough memory, at least in the 1st and the 3rd case).

If the build machine is able to compile webkit without those flags
then there's no need to add them, so if I'm understanding it right it
doesn't depend on the target architecture but on the machine where
you're doing the build.

For the -g1 case we probably want to do it depending on the target
architecture anyway, but for the --no-keep-memory case I don't see
why.

And now that we're at it, I'm not sure if --no-relax is even necessary
anymore. This was added for alpha in 2008 to work around a binutils
bug, which I guess has been already fixed ? It would be nice to test
that, but I don't have access to an alpha machine.

Berto



More information about the Pkg-webkit-maintainers mailing list