Debian Bug report logs - #693220
Add crossbuild-essential support

version graph

Package: build-essential; Maintainer for build-essential is Matthias Klose <doko@debian.org>; Source for build-essential is src:build-essential.

Reported by: Wookey <wookey@wookware.org>

Date: Wed, 14 Nov 2012 12:09:02 UTC

Severity: wishlist

Tags: patch

Found in version build-essential/11.5

Fixed in version build-essential/11.6

Done: Matthias Klose <doko@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, debian-embedded@lists.debian.org, Matthias Klose <doko@debian.org>:
Bug#693220; Package build-essential. (Wed, 14 Nov 2012 12:09:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Wookey <wookey@wookware.org>:
New Bug report received and forwarded. Copy sent to debian-embedded@lists.debian.org, Matthias Klose <doko@debian.org>. (Wed, 14 Nov 2012 12:09:04 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Wookey <wookey@wookware.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: Add crossbuild-essential support
Date: Wed, 14 Nov 2012 12:08:26 +0000
Package: build-essential
Version: 11.5
Severity: wishlist
Tags: patch

Following on from discussion in this thread
http://lists.debian.org/debian-embedded/2012/06/msg00030.html

The cross-build-essential package has been developed some more and
tested in Quantal for arm64 bootstrap, and armel and armhf builds. It
works nicely. We definitely want to start using this.

The latest code is available at: 
http://people.debian.org/~wookey/bootstrap/ubunturepo/pool/main/c/cross-build-essential/

That code was carefully developed on top of build-essential so that
they could be easily merged into that one package if so desired. Feedback,
particularly from the maintainer, about whether this is desireable, or
should be uploaded as a separate package would be helpful. The above
thread didn't generate any on that point.

I can't actually think of any real reasons why it should be a
seaparate package. Thinking about build-essential:<arch>,
and crossbuild-essential-<arch> together seems to make sense and I
don't expect much churn in either package once toolchains are stable. 

It takes moments to build so the large increase in number of binary
packages is not an issue. 

On the other hand it's dead easy to just upload it as a new package
and let them diverge. This doesn't do any real harm but seems bit lazy
to me.

The existing code is set up for Ubuntu cross-toolchains at the moment,
but this fundamental question of whether it is one or two source
packages should be considered here, I think. 

Build-essential+cross-build-essential is always likely to have some
Debian/Ubuntu difference.

If the build-essential maintainer is happy to merge them then I'll
tidy up the Debian code for an upload. 

-- System Information:
Debian Release: 6.0.6
  APT prefers stable
  APT policy: (990, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.32.33-kvm-i386-20111128-dirty (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages build-essential depends on:
ii  dpkg-dev                      1.15.8.13  Debian package development tools
ii  g++                           4:4.4.5-1  The GNU C++ compiler
ii  gcc                           4:4.4.5-1  The GNU C compiler
ii  libc6-dev [libc-dev]          2.11.3-4   Embedded GNU C Library: Developmen
ii  make                          3.81-8     An utility for Directing compilati

build-essential recommends no packages.

build-essential suggests no packages.

-- no debconf information



Information forwarded to debian-bugs-dist@lists.debian.org, Matthias Klose <doko@debian.org>:
Bug#693220; Package build-essential. (Tue, 08 Jan 2013 15:27:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Colin Watson <cjwatson@debian.org>:
Extra info received and forwarded to list. Copy sent to Matthias Klose <doko@debian.org>. (Tue, 08 Jan 2013 15:27:03 GMT) Full text and rfc822 format available.

Message #10 received at 693220@bugs.debian.org (full text, mbox):

From: Colin Watson <cjwatson@debian.org>
To: Wookey <wookey@wookware.org>, 693220@bugs.debian.org
Cc: debian-embedded@lists.debian.org, debian-dpkg@lists.debian.org
Subject: Re: Bug#693220: Add crossbuild-essential support
Date: Tue, 8 Jan 2013 15:23:49 +0000
On Wed, Nov 14, 2012 at 12:08:26PM +0000, Wookey wrote:
> Following on from discussion in this thread
> http://lists.debian.org/debian-embedded/2012/06/msg00030.html
> 
> The cross-build-essential package has been developed some more and
> tested in Quantal for arm64 bootstrap, and armel and armhf builds. It
> works nicely. We definitely want to start using this.
> 
> The latest code is available at: 
> http://people.debian.org/~wookey/bootstrap/ubunturepo/pool/main/c/cross-build-essential/

I think it would be a good idea to put this in build-essential, but I
have one concern.  At the moment this uses "Depends: libc6-dev:armhf"
(etc.).  The multiarch spec currently explicitly says that Depends on
PKG:ARCH for a particular architecture (as opposed to PKG:any) is
undefined.  I'm therefore a bit worried that adding such syntax to
build-essential would cause some bit of archive machinery to explode; it
certainly results in a Lintian error.  That said, it apparently works in
simple sbuild chroot situations.  CCing -embedded and -dpkg for advice.

The other possibility is to add bridging dependencies by way of
artificial package names that only exist on one architecture, e.g.:

  Package: libc6-armhf-cross
  Architecture: any
  Depends: libc6-armhf

  Package: libc6-armhf
  Architecture: armhf
  Multi-Arch: foreign
  Depends: libc6

  Package: libc6
  Architecture: any
  Multi-Arch: same

That's not without its own problems, though; it bloats Packages and
(last I checked) it requires manually forcing britney to accept it into
testing.  If it's possible to use the :ARCH syntax instead, that would
be better.

-- 
Colin Watson                                       [cjwatson@debian.org]



Information forwarded to debian-bugs-dist@lists.debian.org, Matthias Klose <doko@debian.org>:
Bug#693220; Package build-essential. (Tue, 08 Jan 2013 15:39:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Wookey <wookey@wookware.org>:
Extra info received and forwarded to list. Copy sent to Matthias Klose <doko@debian.org>. (Tue, 08 Jan 2013 15:39:06 GMT) Full text and rfc822 format available.

Message #15 received at 693220@bugs.debian.org (full text, mbox):

From: Wookey <wookey@wookware.org>
To: Colin Watson <cjwatson@debian.org>
Cc: 693220@bugs.debian.org, debian-embedded@lists.debian.org, debian-dpkg@lists.debian.org
Subject: Re: Bug#693220: Add crossbuild-essential support
Date: Tue, 8 Jan 2013 15:37:49 +0000
+++ Colin Watson [2013-01-08 15:23 +0000]:
> On Wed, Nov 14, 2012 at 12:08:26PM +0000, Wookey wrote:
> > Following on from discussion in this thread
> > http://lists.debian.org/debian-embedded/2012/06/msg00030.html
> > 
> > The cross-build-essential package has been developed some more and
> > tested in Quantal for arm64 bootstrap, and armel and armhf builds. It
> > works nicely. We definitely want to start using this.
> > 
> > The latest code is available at: 
> > http://people.debian.org/~wookey/bootstrap/ubunturepo/pool/main/c/cross-build-essential/

Updated version with native build-essential stuff re-enabled at:
http://people.debian.org/~wookey/bootstrap/ubunturepo/pool/main/b/build-essential/build-essential_11.6.dsc
except that it doesn;t actually work and end up with empty package
list. I failed to work out exactly why yet. But better that we all see
same latest code.

Doko has fettled that a bit at
http://people.debian.org/~doko/tmp/build-essential_11.6.dsc

> I think it would be a good idea to put this in build-essential, but I
> have one concern.  At the moment this uses "Depends: libc6-dev:armhf"
> (etc.).  The multiarch spec currently explicitly says that Depends on
> PKG:ARCH for a particular architecture (as opposed to PKG:any) is
> undefined.  I'm therefore a bit worried that adding such syntax to
> build-essential would cause some bit of archive machinery to explode; it
> certainly results in a Lintian error.  That said, it apparently works in
> simple sbuild chroot situations.  CCing -embedded and -dpkg for advice.

We need to use :<arch> for cross-compilers in the archive (if we ever
want to get beyond the *-cross package-naming mechanism and actually
use multiarch). We all recognise that.

:<arch> was excluded from the spec initially, but there is no reason
not to use it when needed and so long as the stable version of dpkg
understands it. The dpkg in quantal and wheezy understands it so it
should now be fine to upload sources using this so long as the
versions of dpkg on the buildds understand it. We can't upload this to
debian until buildds are updated to wheezy. 

>  If it's possible to use the :ARCH syntax instead, that would
>  be better.

I believe so. 

Wookey
-- 
Principal hats:  Linaro, Emdebian, Wookware, Balloonboard, ARM
http://wookware.org/



Reply sent to Matthias Klose <doko@debian.org>:
You have taken responsibility. (Tue, 08 Jan 2013 15:51:10 GMT) Full text and rfc822 format available.

Notification sent to Wookey <wookey@wookware.org>:
Bug acknowledged by developer. (Tue, 08 Jan 2013 15:51:10 GMT) Full text and rfc822 format available.

Message #20 received at 693220-close@bugs.debian.org (full text, mbox):

From: Matthias Klose <doko@debian.org>
To: 693220-close@bugs.debian.org
Subject: Bug#693220: fixed in build-essential 11.6
Date: Tue, 08 Jan 2013 15:47:30 +0000
Source: build-essential
Source-Version: 11.6

We believe that the bug you reported is fixed in the latest version of
build-essential, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 693220@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Matthias Klose <doko@debian.org> (supplier of updated build-essential package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Tue, 08 Jan 2013 16:33:55 +0100
Source: build-essential
Binary: build-essential crossbuild-essential-arm64 crossbuild-essential-armhf crossbuild-essential-i386
Architecture: source amd64
Version: 11.6
Distribution: unstable
Urgency: low
Maintainer: Matthias Klose <doko@debian.org>
Changed-By: Matthias Klose <doko@debian.org>
Description: 
 build-essential - Informational list of build-essential packages
 crossbuild-essential-arm64 - Informational list of cross-build-essential packages
 crossbuild-essential-armhf - Informational list of cross-build-essential packages
 crossbuild-essential-i386 - Informational list of cross-build-essential packages
Closes: 603386 693220
Changes: 
 build-essential (11.6) unstable; urgency=low
 .
   * Update Standards-Version to 3.9.4.
   * Build-depend on python3 instead of python.
   * Update make-esslist.sh to consider ports archives and distros.
     Closes: #603386.
   * Update essential packages lists.
   * Build crossbuild-essential-<arch> packages for architectures
     provided in debian/cross-targets (currently all commented out).
     Closes: #693220.
Checksums-Sha1: 
 f54f431731b7cfb1cf1b37a5c86ab8199f95647f 1069 build-essential_11.6.dsc
 afa098b12be62ad60b999338895035c059e11f3d 63657 build-essential_11.6.tar.gz
 0a46e32793b0cf952860b7eec2d263d53c5f9515 7358 build-essential_11.6_amd64.deb
Checksums-Sha256: 
 2e83f5fc955d153e24859170fd1e08a4028a7dac1e5f5414a496e137ef929895 1069 build-essential_11.6.dsc
 bb43615452c54be190e484a281ec5cb4fc9d2050303ea47530f78880e522f1dc 63657 build-essential_11.6.tar.gz
 e407a5cf73aa967a47c1337b7b6dd67590e26cc114896ac0cceb14a616428f60 7358 build-essential_11.6_amd64.deb
Files: 
 3a7a543691ce1c6741a7a6878de71019 1069 devel optional build-essential_11.6.dsc
 3ba251f07eb9b183bd448d0adf50e619 63657 devel optional build-essential_11.6.tar.gz
 6ca434686efb96f984ff157c9dcd1377 7358 devel optional build-essential_11.6_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)

iEYEARECAAYFAlDsPLUACgkQStlRaw+TLJxmJwCgiqgsyiuzBP22AGHrW5XxLEHl
1F4An1bysiqPwFHY8uYkW/LOWax8Db83
=inPf
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Mon, 03 Jun 2013 07:52:21 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sat Apr 19 18:09:39 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.