mirror of
https://github.com/checkpoint-restore/criu
synced 2025-08-29 13:28:27 +00:00
crtools: add Dockerfile to build criu on armv7hf, aarch64, ppc64le
Signed-off-by: Andrew Vagin <avagin@virtuozzo.com> Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
This commit is contained in:
parent
d45116ff8b
commit
1c2c1f45f7
22
scripts/build/Dockerfile.aarch64
Normal file
22
scripts/build/Dockerfile.aarch64
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
FROM aarch64/ubuntu:trusty
|
||||||
|
|
||||||
|
COPY scripts/build/qemu-user-static/usr/bin/qemu-aarch64-static /usr/bin/qemu-aarch64-static
|
||||||
|
|
||||||
|
RUN apt-get update
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
protobuf-c-compiler \
|
||||||
|
libprotobuf-c0-dev \
|
||||||
|
libprotobuf-dev \
|
||||||
|
bsdmainutils \
|
||||||
|
protobuf-compiler \
|
||||||
|
python-minimal \
|
||||||
|
libaio-dev \
|
||||||
|
iptables \
|
||||||
|
libnl-3-dev
|
||||||
|
|
||||||
|
COPY . /criu
|
||||||
|
WORKDIR /criu
|
||||||
|
|
||||||
|
RUN make clean && make -j $(nproc)
|
22
scripts/build/Dockerfile.armv7hf
Normal file
22
scripts/build/Dockerfile.armv7hf
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
FROM armv7/armhf-ubuntu
|
||||||
|
|
||||||
|
COPY scripts/build/qemu-user-static/usr/bin/qemu-arm-static /usr/bin/qemu-arm-static
|
||||||
|
|
||||||
|
RUN apt-get update
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
protobuf-c-compiler \
|
||||||
|
libprotobuf-c0-dev \
|
||||||
|
libprotobuf-dev \
|
||||||
|
bsdmainutils \
|
||||||
|
protobuf-compiler \
|
||||||
|
python-minimal \
|
||||||
|
libaio-dev \
|
||||||
|
iptables \
|
||||||
|
libnl-3-dev
|
||||||
|
|
||||||
|
COPY . /criu
|
||||||
|
WORKDIR /criu
|
||||||
|
|
||||||
|
RUN make clean && make -j $(nproc)
|
22
scripts/build/Dockerfile.ppc64le
Normal file
22
scripts/build/Dockerfile.ppc64le
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
FROM ppc64le/ubuntu
|
||||||
|
|
||||||
|
COPY scripts/build/qemu-user-static/usr/bin/qemu-ppc64le-static /usr/bin/qemu-ppc64le-static
|
||||||
|
|
||||||
|
RUN apt-get update
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
build-essential \
|
||||||
|
protobuf-c-compiler \
|
||||||
|
libprotobuf-c0-dev \
|
||||||
|
libprotobuf-dev \
|
||||||
|
bsdmainutils \
|
||||||
|
protobuf-compiler \
|
||||||
|
python-minimal \
|
||||||
|
libaio-dev \
|
||||||
|
iptables \
|
||||||
|
libnl-3-dev
|
||||||
|
|
||||||
|
COPY . /criu
|
||||||
|
WORKDIR /criu
|
||||||
|
|
||||||
|
RUN make clean && make -j $(nproc)
|
24
scripts/build/Makefile
Normal file
24
scripts/build/Makefile
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
all: armv7hf aarch64 ppc64le
|
||||||
|
|
||||||
|
qemu-user-static:
|
||||||
|
./extract-deb-pkg qemu-user-static
|
||||||
|
|
||||||
|
binfmt_misc:
|
||||||
|
echo ':armv7hf:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm-static:' > /proc/sys/fs/binfmt_misc/register;
|
||||||
|
echo ':aarch64:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\xb7:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-aarch64-static:' > /proc/sys/fs/binfmt_misc/register
|
||||||
|
echo ':ppc64le:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x15\x00:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\x00:/usr/bin/qemu-ppc64le-static:' > /proc/sys/fs/binfmt_misc/register
|
||||||
|
|
||||||
|
armv7hf: qemu-user-static
|
||||||
|
docker build -t criu-armv7hf -f Dockerfile.armv7hf ../..
|
||||||
|
|
||||||
|
aarch64: qemu-user-static
|
||||||
|
docker build -t criu-aarch64 -f Dockerfile.aarch64 ../..
|
||||||
|
|
||||||
|
ppc64le: qemu-user-static
|
||||||
|
docker build -t criu-aarch64 -f Dockerfile.ppc64le ../..
|
||||||
|
|
||||||
|
clean:
|
||||||
|
echo -1 > /proc/sys/fs/binfmt_misc/ppc64le
|
||||||
|
echo -1 > /proc/sys/fs/binfmt_misc/armv7hf
|
||||||
|
echo -1 > /proc/sys/fs/binfmt_misc/aarch64
|
||||||
|
rm -rf qemu-user-static
|
11
scripts/build/extract-deb-pkg
Executable file
11
scripts/build/extract-deb-pkg
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#'http://mirror.yandex.ru/debian/pool/main/q/qemu/qemu-user-static_2.5%2Bdfsg-5_amd64.deb'
|
||||||
|
set -e
|
||||||
|
test -d $1 && exit
|
||||||
|
mkdir $1
|
||||||
|
cd $1
|
||||||
|
curl http://mirror.yandex.ru/debian/dists/jessie/main/binary-amd64/Packages.gz | zcat | grep "Filename.*$1" | awk '{ print $2 }'
|
||||||
|
pkg=`curl http://mirror.yandex.ru/debian/dists/jessie/main/binary-amd64/Packages.gz | zcat | grep "Filename.*$1" | awk '{ print $2 }'`
|
||||||
|
wget "http://mirror.yandex.ru/debian/$pkg"
|
||||||
|
pkg=`basename $pkg`
|
||||||
|
ar vx $pkg
|
||||||
|
tar -xJvf data.tar.xz
|
Loading…
x
Reference in New Issue
Block a user