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

Re: Building a gdb-multiarch and binutils-multiarch with --enable-targets=all

On Mon, 17 Jan 2011 22:15:51 +0100
Loïc Minier <lool@dooz.org> wrote:

>  I recently discovered that gdb could be configured with
>  --enable-targets-all thanks to Ulrich Weigand; gdb then supports
>  multiple targets in the same build.  Current usr/bin/gdb on amd64 is
>  about 4.2 MB and an --enable-targets=all one is about 21 MB, so it
>  probably wouldn't be acceptable since gdb is often installed.  So
> I'd like to propose a new gdb-multiarch package for this. 

Please don't let this become a reverse-dependency of anything important or commonplace on a cross-building / cross-debugging box. It's already taken too many years to get nowhere with avoiding binutils-multiarch.

How many of these architectures are REALLY used with a cross-debugger? Seriously, apart from arm(*), powerpc(*) and maybe mips(*), do we really need the default package to include loads more?

How many cross-building users cross-build for more than one architecture? 

How many of those are all just variants of one main type? (i.e. subtypes of various ARM platforms)

Who are these people who are cross-building for armel, mips, sparc, powerpc, hppa, ia64 and m68k all on the same machine? (and are any of them still sane?)

>  Concerning binutils-multiarch, it's currently built with a hardcoded
>  list of targets instead of --enable-targets=all; I did a test build

.... there's a good reason for that - the remainder probably just weren't considered useful. Has that actually changed? Is there one you want added rather than enabling the entire world?

>  with "all" and found that the difference is from:
> -rw-r--r-- root/root   2896560 2011-01-12
> 23:57 ./usr/lib/libbfd-2.21-multiarch.so -rw-r--r-- root/root
> 2802888 2011-01-12 23:57 ./usr/lib/libopcodes-2.21-multiarch.so
>  to:
> -rw-r--r-- root/root   6760352 2011-01-17
> 20:40 ./usr/lib/libbfd-2.21-multiarch.so -rw-r--r-- root/root
> 13413280 2011-01-17 20:40 ./usr/lib/libopcodes-2.21-multiarch.so
>  So from 5.69 MB to 20.1 MB. 

Not a good change IMHO. Don't forget that this is still a dependency of dpkg-cross. #412118 #591542

> Given that this package is seldomly
>  installed on end-user systems, I would propose that we just make
>  --enable-targets=all the default for binutils-multiarch.  This would
>  make packaging simpler and would support pretty much all
> architectures out there.
>  How do people on this list feel about these proposals?

Only if we can FIRST get rid of the need for dpkg-cross to depend on binutils-multiarch in the first place.

Has anyone actually had time to test Joey's contention that dh_strip is not the right solution to fix because of packages using `install -s` in their Makefiles?

Can't we just have a cross-strip package instead? That, IMHO, is the correct fix. Strip back binutils-multiarch to only provide strip (nicely recursive too). Then you can have all the supported architectures and maybe even retain the full version but NOT make it part of a default cross-building install. It could be as simple as only packaging strip into a new binary package when building binutils-multiarch.

Loic: what problem did you find with dh_makeshlibs? When I tested with the binutils package for the armel cross toolchain without binutils-multiarch installed, I didn't get problems with dh_makeshlibs, only with strip.

Can you file a new bug for that one with full details please?


Neil Williams

Attachment: pgpMqP80BTKOl.pgp
Description: PGP signature

Reply to: