On Mon, Feb 19, 2018 at 09:11:25AM +0100, Alexander Dahl wrote:
> On Sun, Feb 18, 2018 at 03:00:22PM -0500, Jon Ringle wrote:
> > I built the arm-v5te toolchain, and it built:
> > oselas.toolchain-2018.02.0-arm-v5te-linux-gnueabi-gcc-7.3.1-glibc-2.27-binutils-2.30-kernel-4.15-sanitized_2018.02.0-0ptx1~bpo14.04+1_amd64.deb
> So you probably used Ubuntu 14.04?
> > But on https://debian.pengutronix.de/debian/pool/main/o/oselas.toolchain/ I
> > see:
> > oselas.toolchain-2018.02.0-arm-v5te-linux-gnueabi-gcc-7.3.1-glibc-2.27-binutils-2.30-kernel-4.15-sanitized_2018.02.0-0ptx1_amd64.deb
> > oselas.toolchain-2018.02.0-arm-v5te-linux-gnueabi-gcc-7.3.1-glibc-2.27-binutils-2.30-kernel-4.15-sanitized_2018.02.0-0ptx1~bpo8+1_amd64.deb
> > oselas.toolchain-2018.02.0-arm-v5te-linux-gnueabi-gcc-7.3.1-glibc-2.27-binutils-2.30-kernel-4.15-sanitized_2018.02.0-0ptx1~bpo9+1_amd64.deb
> > 
> > What is the cause for the difference in `bpo8+1`, `bpo9+1` and the
> > `bpo14.04+1` in the filename?
> From my personal analysis I think, this is spread over several files
> in OSELAS.Toolchain repository. In `rules/image-toolchain-deb.make`
> IMAGE_TOOLCHAIN_DEB_VERSION_EXT is set by a function defined in
> `scripts/lib/ptxd_make_debian_version_ext.sh`. This gets ${VERSION_ID}
> from your build host `/etc/os-version`, which is 8 for Debian jessie,
> 9 for Debian stretch and probably 14.04 for the Ubuntu you are using,
> so it depends on the build host. I would guess the 'bpo' means
> something like 'backports', at least Debian backports uses similar
> markings.
> The rest of those version numbers is like this: Something creates the
> file `.tarball-version`, maybe it's just included in the tarball, not
> in Git repository. In `rules/image-toolchain-deb.make` the script
> `scripts/setlocalversion` is called with that as a parameter, which
> probably outputs some version from Git, if using the Git repo instead
> of a tarball. This is assigned to IMAGE_TOOLCHAIN_DEB_VERSION in
> `rules/image-toolchain-deb.make` … yes I think this is it.

Right, the different debian packages are built from the same source but for
different Debian release. This is necessary because the new toolchains uses
Python 3 for gdb and jessie, stretch and buster all use different Python 3
minor release.
The versioning is set up in a way that it works correctly if you install
the toolchain on jessie and then update to stretch (provided you have the
correct sources.list entries).


Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

ptxdist mailing list

Reply via email to