criu/scripts/build/Dockerfile.linux32.tmpl
Adrian Reber eab8cf0775 travis: switch all arm related tests to real hardware
This switches all arm related tests (32bit and 64bit) to the aarch64
systems Travis provides. For arm32 we are running in a armv7hf container
on aarch64 with 'setarch linux32'.

The main changes are that docker on Travis aarch64 cannot use
'--privileged' as Travis is using unprivileged LXD containers to setup
the testing environment.

Signed-off-by: Adrian Reber <areber@redhat.com>
2020-02-04 12:39:04 -08:00

47 lines
1.1 KiB
Cheetah

ARG CC=gcc
ARG ENV1=FOOBAR
RUN apt-get update && apt-get install -y \
ccache \
libnet-dev \
libnl-route-3-dev \
$CC \
bsdmainutils \
build-essential \
git-core \
iptables \
libaio-dev \
libcap-dev \
libgnutls28-dev \
libgnutls30 \
libnl-3-dev \
libprotobuf-c-dev \
libprotobuf-dev \
libselinux-dev \
pkg-config \
protobuf-c-compiler \
protobuf-compiler \
python-minimal \
python-future
COPY . /criu
WORKDIR /criu
ENV CC="ccache $CC" CCACHE_DIR=/tmp/.ccache CCACHE_NOCOMPRESS=1 $ENV1=yes
RUN uname -m && setarch linux32 uname -m && setarch --list
RUN mv .ccache /tmp && make mrproper && ccache -s && \
date && \
# Check single object build
setarch linux32 make -j $(nproc) CC="$CC" criu/parasite-syscall.o && \
# Compile criu
setarch linux32 make -j $(nproc) CC="$CC" && \
date && \
# Check that "make mrproper" works
setarch linux32 make mrproper && ! git clean -ndx --exclude=scripts/build \
--exclude=.config --exclude=test | grep .
# Compile tests
RUN date && setarch linux32 make -j $(nproc) CC="$CC" -C test/zdtm && date
#RUN make test/compel/handle_binary && ./test/compel/handle_binary