mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-04-30 04:34:27 +00:00
static-build: enable cross build for virtiofsd
Based on messense/rust-musl-cross which offer cross build musl lib environment to cross compile virtiofsd. Fixes: #6557 Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
This commit is contained in:
parent
11631c681a
commit
2205fb9d05
@ -8,7 +8,7 @@ set -o errexit
|
|||||||
set -o nounset
|
set -o nounset
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
|
|
||||||
ARCH=$(uname -m)
|
ARCH=${ARCH:-$(uname -m)}
|
||||||
ARCH_LIBC=""
|
ARCH_LIBC=""
|
||||||
LIBC=""
|
LIBC=""
|
||||||
|
|
||||||
|
@ -13,6 +13,7 @@ readonly virtiofsd_builder="${script_dir}/build-static-virtiofsd.sh"
|
|||||||
|
|
||||||
source "${script_dir}/../../scripts/lib.sh"
|
source "${script_dir}/../../scripts/lib.sh"
|
||||||
|
|
||||||
|
ARCH=${ARCH:-$(uname -m)}
|
||||||
DESTDIR=${DESTDIR:-${PWD}}
|
DESTDIR=${DESTDIR:-${PWD}}
|
||||||
PREFIX=${PREFIX:-/opt/kata}
|
PREFIX=${PREFIX:-/opt/kata}
|
||||||
kata_version="${kata_version:-}"
|
kata_version="${kata_version:-}"
|
||||||
@ -32,7 +33,6 @@ package_output_dir="${package_output_dir:-}"
|
|||||||
[ -n "${virtiofsd_toolchain}" ] || die "Failed to get the rust toolchain to build virtiofsd"
|
[ -n "${virtiofsd_toolchain}" ] || die "Failed to get the rust toolchain to build virtiofsd"
|
||||||
[ -n "${virtiofsd_zip}" ] || die "Failed to get virtiofsd binary URL"
|
[ -n "${virtiofsd_zip}" ] || die "Failed to get virtiofsd binary URL"
|
||||||
|
|
||||||
ARCH=$(uname -m)
|
|
||||||
case ${ARCH} in
|
case ${ARCH} in
|
||||||
"aarch64")
|
"aarch64")
|
||||||
libc="musl"
|
libc="musl"
|
||||||
@ -49,9 +49,10 @@ case ${ARCH} in
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
container_image="${VIRTIOFSD_CONTAINER_BUILDER:-$(get_virtiofsd_image_name)}"
|
container_image="${VIRTIOFSD_CONTAINER_BUILDER:-$(get_virtiofsd_image_name)}"
|
||||||
|
[ "${CROSS_BUILD}" == "true" ] && container_image="${container_image}-cross-build"
|
||||||
|
|
||||||
sudo docker pull ${container_image} || \
|
sudo docker pull ${container_image} || \
|
||||||
(sudo docker build \
|
(sudo docker $BUILDX build $PLATFORM \
|
||||||
--build-arg RUST_TOOLCHAIN="${virtiofsd_toolchain}" \
|
--build-arg RUST_TOOLCHAIN="${virtiofsd_toolchain}" \
|
||||||
-t "${container_image}" "${script_dir}/${libc}" && \
|
-t "${container_image}" "${script_dir}/${libc}" && \
|
||||||
# No-op unless PUSH_TO_REGISTRY is exported as "yes"
|
# No-op unless PUSH_TO_REGISTRY is exported as "yes"
|
||||||
@ -64,5 +65,6 @@ sudo docker run --rm -i -v "${repo_root_dir}:${repo_root_dir}" \
|
|||||||
--env virtiofsd_repo="${virtiofsd_repo}" \
|
--env virtiofsd_repo="${virtiofsd_repo}" \
|
||||||
--env virtiofsd_version="${virtiofsd_version}" \
|
--env virtiofsd_version="${virtiofsd_version}" \
|
||||||
--env virtiofsd_zip="${virtiofsd_zip}" \
|
--env virtiofsd_zip="${virtiofsd_zip}" \
|
||||||
|
--env ARCH="${ARCH}" \
|
||||||
"${container_image}" \
|
"${container_image}" \
|
||||||
bash -c "${virtiofsd_builder}"
|
bash -c "${virtiofsd_builder}"
|
||||||
|
Loading…
Reference in New Issue
Block a user