File tree Expand file tree Collapse file tree 8 files changed +76
-18
lines changed Expand file tree Collapse file tree 8 files changed +76
-18
lines changed Original file line number Diff line number Diff line change 9
9
apt-get install -y curl && \
10
10
dpkg --add-architecture arm64 && \
11
11
apt-get update && \
12
- apt-get install -y crossbuild-essential-arm64 autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake && \
12
+ apt-get install -y crossbuild-essential-arm64 autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake python3-pip ninja-build && \
13
13
curl https://sh.rustup.rs -sSf | sh -s -- -y && \
14
- ~/.cargo/bin/rustup target add aarch64-unknown-linux-gnu
14
+ ~/.cargo/bin/rustup target add aarch64-unknown-linux-gnu && \
15
+ pip3 install meson
15
16
16
17
# Compiler settings
17
18
ENV \
18
19
PATH="/root/.cargo/bin:$PATH" \
19
20
PLATFORM="linux-arm64v8" \
20
21
CHOST="aarch64-linux-gnu" \
21
- FLAGS="-march=armv8-a -Os -D_GLIBCXX_USE_CXX11_ABI=0"
22
+ FLAGS="-march=armv8-a -Os -D_GLIBCXX_USE_CXX11_ABI=0" \
23
+ MESON="--cross-file=/root/meson.ini"
22
24
23
25
COPY Toolchain.cmake /root/
26
+ COPY meson.ini /root/
Original file line number Diff line number Diff line change
1
+ [host_machine]
2
+ system = ' linux'
3
+ cpu_family = ' aarch64'
4
+ cpu = ' armv8-a'
5
+ endian = ' little'
6
+
7
+ [binaries]
8
+ c = ' /usr/bin/aarch64-linux-gnu-gcc'
9
+ cpp = ' /usr/bin/aarch64-linux-gnu-g++'
10
+ ar = ' /usr/bin/aarch64-linux-gnu-gcc-ar'
11
+ nm = ' /usr/bin/aarch64-linux-gnu-gcc-nm'
12
+ ld = ' /usr/bin/aarch64-linux-gnu-gcc-ld'
13
+ strip = ' /usr/bin/aarch64-linux-gnu-strip'
14
+ pkgconfig = ' /usr/bin/aarch64-linux-gnu-pkg-config'
15
+ ranlib = ' /usr/bin/aarch64-linux-gnu-gcc-ranlib'
Original file line number Diff line number Diff line change 9
9
apt-get install -y curl && \
10
10
dpkg --add-architecture armhf && \
11
11
apt-get update && \
12
- apt-get install -y autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake && \
12
+ apt-get install -y autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake python3-pip ninja-build && \
13
13
mkdir /root/tools && \
14
14
curl -Ls https://github.com/rvagg/rpi-newer-crosstools/archive/master.tar.gz | tar xzC /root/tools --strip-components=1 && \
15
15
curl https://sh.rustup.rs -sSf | sh -s -- -y && \
16
- ~/.cargo/bin/rustup target add arm-unknown-linux-gnueabihf
16
+ ~/.cargo/bin/rustup target add arm-unknown-linux-gnueabihf && \
17
+ pip3 install meson
17
18
18
19
# Compiler settings
19
20
ENV \
20
21
PATH="/root/.cargo/bin:/root/tools/x64-gcc-6.5.0/arm-rpi-linux-gnueabihf/bin:$PATH" \
21
22
PLATFORM="linux-armv6" \
22
23
CHOST="arm-rpi-linux-gnueabihf" \
23
24
RUST_TARGET="arm-unknown-linux-gnueabihf" \
24
- FLAGS="-marm -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -Os -D_GLIBCXX_USE_CXX11_ABI=0"
25
+ FLAGS="-marm -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -Os -D_GLIBCXX_USE_CXX11_ABI=0" \
26
+ MESON="--cross-file=/root/meson.ini"
25
27
26
28
COPY Toolchain.cmake /root/
29
+ COPY meson.ini /root/
Original file line number Diff line number Diff line change
1
+ [host_machine]
2
+ system = ' linux'
3
+ cpu_family = ' arm'
4
+ cpu = ' armv6-a'
5
+ endian = ' little'
6
+
7
+ [binaries]
8
+ c = ' /root/tools/x64-gcc-6.5.0/arm-rpi-linux-gnueabihf/bin/arm-rpi-linux-gnueabihf-gcc'
9
+ cpp = ' /root/tools/x64-gcc-6.5.0/arm-rpi-linux-gnueabihf/bin/arm-rpi-linux-gnueabihf-g++'
10
+ ar = ' /root/tools/x64-gcc-6.5.0/arm-rpi-linux-gnueabihf/bin/arm-rpi-linux-gnueabihf-ar'
11
+ nm = ' /root/tools/x64-gcc-6.5.0/arm-rpi-linux-gnueabihf/bin/arm-rpi-linux-gnueabihf-gcc-nm'
12
+ ld = ' /root/tools/x64-gcc-6.5.0/arm-rpi-linux-gnueabihf/bin/arm-rpi-linux-gnueabihf-gcc-ld'
13
+ strip = ' /root/tools/x64-gcc-6.5.0/arm-rpi-linux-gnueabihf/bin/arm-rpi-linux-gnueabihf-strip'
14
+ pkgconfig = ' /usr/bin/arm-linux-gnueabihf-pkg-config'
15
+ ranlib = ' /root/tools/x64-gcc-6.5.0/arm-rpi-linux-gnueabihf/bin/arm-rpi-linux-gnueabihf-gcc-ranlib'
Original file line number Diff line number Diff line change 9
9
apt-get install -y curl && \
10
10
dpkg --add-architecture armhf && \
11
11
apt-get update && \
12
- apt-get install -y crossbuild-essential-armhf autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake && \
12
+ apt-get install -y crossbuild-essential-armhf autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake python3-pip ninja-build && \
13
13
curl https://sh.rustup.rs -sSf | sh -s -- -y && \
14
- ~/.cargo/bin/rustup target add arm-unknown-linux-gnueabihf
14
+ ~/.cargo/bin/rustup target add arm-unknown-linux-gnueabihf && \
15
+ pip3 install meson
15
16
16
17
# Compiler settings
17
18
ENV \
18
19
PATH="/root/.cargo/bin:$PATH" \
19
20
PLATFORM="linux-armv7" \
20
21
CHOST="arm-linux-gnueabihf" \
21
- FLAGS="-marm -march=armv7-a -mfpu=neon-vfpv4 -mfloat-abi=hard -Os -D_GLIBCXX_USE_CXX11_ABI=0"
22
+ FLAGS="-marm -march=armv7-a -mfpu=neon-vfpv4 -mfloat-abi=hard -Os -D_GLIBCXX_USE_CXX11_ABI=0" \
23
+ MESON="--cross-file=/root/meson.ini"
22
24
23
25
COPY Toolchain.cmake /root/
26
+ COPY meson.ini /root/
Original file line number Diff line number Diff line change
1
+ [host_machine]
2
+ system = ' linux'
3
+ cpu_family = ' arm'
4
+ cpu = ' armv7-a'
5
+ endian = ' little'
6
+
7
+ [binaries]
8
+ c = ' /usr/bin/arm-linux-gnueabihf-gcc'
9
+ cpp = ' /usr/bin/arm-linux-gnueabihf-g++'
10
+ ar = ' /usr/bin/arm-linux-gnueabihf-gcc-ar'
11
+ nm = ' /usr/bin/arm-linux-gnueabihf-gcc-nm'
12
+ ld = ' /usr/bin/arm-linux-gnueabihf-gcc-ld'
13
+ strip = ' /usr/bin/arm-linux-gnueabihf-strip'
14
+ pkgconfig = ' /usr/bin/arm-linux-gnueabihf-pkg-config'
15
+ ranlib = ' /usr/bin/arm-linux-gnueabihf-gcc-ranlib'
Original file line number Diff line number Diff line change 5
5
6
6
# Build dependencies
7
7
RUN \
8
- yum update -y \
9
- && yum install -y epel-release centos-release-scl \
10
- && yum group install -y "Development Tools" \
11
- && yum install -y --setopt=tsflags=nodocs \
8
+ yum update -y && \
9
+ yum install -y epel-release centos-release-scl && \
10
+ yum group install -y "Development Tools" && \
11
+ yum install -y --setopt=tsflags=nodocs \
12
12
advancecomp \
13
13
cmake3 \
14
14
devtoolset-8-gcc \
20
20
jq \
21
21
nasm \
22
22
prelink \
23
- && curl https://sh.rustup.rs -sSf | sh -s -- -y \
24
- && ln -s /usr/bin/cmake3 /usr/bin/cmake
23
+ ninja-build && \
24
+ curl https://sh.rustup.rs -sSf | sh -s -- -y && \
25
+ ln -s /usr/bin/cmake3 /usr/bin/cmake && \
26
+ ln -s /usr/bin/ninja-build /usr/bin/ninja && \
27
+ pip3 install meson
25
28
26
29
# Compiler settings
27
30
ENV \
Original file line number Diff line number Diff line change 8
8
apk update && apk upgrade && \
9
9
apk --update --no-cache add \
10
10
build-base curl git autoconf automake libtool intltool shared-mime-info nasm gtk-doc \
11
- texinfo gperf glib-dev gobject-introspection-dev findutils jq linux-headers cmake && \
12
- apk --update --no-cache --repository https://alpine.global.ssl.fastly.net/alpine/edge/community/ add cargo && \
13
- apk --update --no-cache --repository https://alpine.global.ssl.fastly.net/alpine/edge/testing/ add advancecomp
11
+ texinfo gperf glib-dev gobject-introspection-dev findutils jq linux-headers cmake binutils python3 ninja && \
12
+ apk --update --no-cache --repository https://alpine.global.ssl.fastly.net/alpine/v3.10/community/ add cargo && \
13
+ apk --update --no-cache --repository https://alpine.global.ssl.fastly.net/alpine/edge/testing/ add advancecomp && \
14
+ pip3 install meson
14
15
15
16
# Compiler settings
16
17
ENV \
You can’t perform that action at this time.
0 commit comments