• Bug#874587: glibc: Packaging support for arm64ilp32 architecture

    From Wookey@21:1/5 to All on Thu Sep 7 19:00:02 2017
    XPost: linux.debian.bugs.dist

    This is a multi-part MIME message sent by reportbug.


    Source: glibc
    Version: 2.24-11
    Severity: wishlist
    Tags: patch

    arm64ilp32 is a new 32-bit ABI 'ILP32' for the arm64 architecture,
    which normally uses the 'LP64' ABI

    We are adding support to Debian so that it is possible to build this architecture. glibc is part of the toolchain bootstrap so needs to
    support this. However the ABI is not yet in upstream glibc because
    they are waiting for the kernel to adopt the final ABI interface
    first. The branch for tracking is here: https://git.linaro.org/toolchain/glibc.git/log/?h=arm/ilp32

    Attached is the (fairly trivial) patch for adding support to the debian packaging so that once upstream supports this it can be built.

    To actually build a glibc for arm64ilp32 you also need the 250K glibc
    patch which I won't include here, and a couple of fixes. These three commits show what's needed:
    https://anonscm.debian.org/cgit/users/wookey/rebootstrap.git/commit/?h=ilp32-stable&id=091d79dd8c23d4f02dbc32cf1fd3cf1a5716bf9a
    https://anonscm.debian.org/cgit/users/wookey/rebootstrap.git/commit/?h=ilp32-stable&id=a72b2eefd6295fc5aad25ff3bc2ba8c9b913637e
    https://anonscm.debian.org/cgit/users/wookey/rebootstrap.git/commit/?h=ilp32-stable&id=7883ccac72bfaaaeb6f4504db4010e8f32c1a5b1

    diff -urN glibc-2.24/debian/control glibc-2.24.patched/debian/control
    --- glibc-2.24/debian/control 2017-04-09 21:28:38.000000000 +0000
    +++ glibc-2.24.patched/debian/control 2017-05-18 13:19:04.001882367 +0000
    @@ -157,7 +157,7 @@
    be removed once nothing on the system depends on it.

    Package: libc6
    -Architecture: amd64 arm64 armel armhf hppa i386 m68k mips mipsel mipsn32 mipsn32el mips64 mips64el nios2 powerpc powerpcspe ppc64 ppc64el sparc sparc64 s390x sh3 sh4 x32
    +Architecture: amd64 arm64 arm64ilp32 armel armhf hppa i386 m68k mips mipsel mipsn32 mipsn32el mips64 mips64el nios2 powerpc powerpcspe ppc64 ppc64el sparc sparc64 s390x sh3 sh4 x32
    Section: libs
    Priority: required
    Multi-Arch: same
    @@ -188,7 +188,7 @@
    and the standard math library, as well as many others.

    Package: libc6-dev
    -Architecture: amd64 arm64 armel armhf hppa i386 m68k mips mipsel mipsn32 mipsn32el mips64 mips64el nios2 powerpc powerpcspe ppc64 ppc64el sparc sparc64 s390x sh3 sh4 x32
    +Architecture: amd64 arm64 arm64ilp32 armel armhf hppa i386 m68k mips mipsel mipsn32 mipsn32el mips64