[Pkg-rust-maintainers] Bug#881846: build for armel
    Marco A L Barbosa 
    malbarbo at gmail.com
       
    Thu Dec 28 15:20:59 UTC 2017
    
    
  
After https://github.com/rust-lang/rust/pull/47018 got merged I was able to
cross build to armel (but not tested) using this docker file
FROM ubuntu:17.10
RUN apt-get update && apt-get install -y --no-install-recommends \
  g++ \
  make \
  file \
  curl \
  ca-certificates \
  python2.7 \
  git \
  cmake \
  sudo \
  xz-utils \
  zlib1g-dev \
  g++-arm-linux-gnueabi \
  bzip2 \
  patch \
  libssl-dev \
  pkg-config
WORKDIR /tmp
ENV TARGETS=armv4t-unknown-linux-gnueabi
RUN echo "#!/bin/sh\narm-linux-gnueabi-gcc -Wl,--allow-multiple-definition
\"\$@\"" > /usr/bin/arm-linux-gnueabi-gcc2
RUN chmod +x /usr/bin/arm-linux-gnueabi-gcc2
RUN cat /usr/bin/arm-linux-gnueabi-gcc2
ENV CC_armv4t_unknown_linux_gnueabi=arm-linux-gnueabi-gcc2 \
    CFLAGS_armv4t_unknown_linux_gnueabi="-march=armv4t -marm
-mfloat-abi=soft" \
    CXX_armv4t_unknown_linux_gnueabi=arm-linux-gnueabi-g++ \
    CXXFLAGS_armv4t_unknown_linux_gnueabi="-march=armv4t -marm
-mfloat-abi=soft"
# Suppress some warnings in the openwrt toolchains we downloaded
ENV STAGING_DIR=/tmp
ENV RUST_CONFIGURE_ARGS \
      --target=$TARGETS \
      --host=$TARGETS
ENV SCRIPT python2.7 ../x.py dist --host $TARGETS --target $TARGETS
# sccache
COPY scripts/sccache.sh /scripts/
RUN sh /scripts/sccache.sh
Ubuntu 17.10 was necessary because it has a recent gcc (with fix for
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727621)
--allow-multiple-definition hack was necessary because function
__sync_fetch_and_add_4 (and similar) is defined in libgcc and
compiler_builtins (
https://github.com/rust-lang-nursery/compiler-builtins/pull/115)
-- 
Marco A L Barbosa
http://malbarbo.pro.br
--
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/pkg-rust-maintainers/attachments/20171228/35f2ca95/attachment.html>
    
    
More information about the Pkg-rust-maintainers
mailing list