mirror of
https://github.com/bensuperpc/dockcross.git
synced 2025-03-12 17:20:08 +01:00
dockcross-command.sh: support multi-arch tags
This commit is contained in:
parent
055c60ebab
commit
de6a4b0be3
@ -4,8 +4,14 @@ if (( $# >= 2 )); then
|
|||||||
image_complet=$1
|
image_complet=$1
|
||||||
image=${image_complet%:*}
|
image=${image_complet%:*}
|
||||||
tag=${image_complet#*:}
|
tag=${image_complet#*:}
|
||||||
|
host_arch=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')
|
||||||
if test $tag = $image; then
|
if test $tag = $image; then
|
||||||
tag="latest"
|
# use multiarch image if available
|
||||||
|
if docker images | grep dockcross/${image} | grep latest-${host_arch} >/dev/null; then
|
||||||
|
tag="latest-${host_arch}"
|
||||||
|
else
|
||||||
|
tag="latest"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
shift 1
|
shift 1
|
||||||
|
|
||||||
@ -16,7 +22,7 @@ if (( $# >= 2 )); then
|
|||||||
# docker pull "dockcross/$image:$tag"
|
# docker pull "dockcross/$image:$tag"
|
||||||
|
|
||||||
echo "Make script dockcross-$image"
|
echo "Make script dockcross-$image"
|
||||||
docker run --rm dockcross/"$image" > ./dockcross-"$image"
|
docker run --rm dockcross/"$image:$tag" > ./dockcross-"$image"
|
||||||
chmod +x ./dockcross-"$image"
|
chmod +x ./dockcross-"$image"
|
||||||
|
|
||||||
echo "Run command in dockcross-$image"
|
echo "Run command in dockcross-$image"
|
||||||
|
@ -1,10 +1,19 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
if (( $# >= 1 )); then
|
if (( $# >= 1 )); then
|
||||||
image_complet=$1
|
image_complete=$1
|
||||||
image=${image_complet%:*}
|
image=${image_complete%:*}
|
||||||
tag=${image_complet#*:}
|
tag=${image_complete#*:}
|
||||||
build_file=build-$image
|
build_file=build-$image
|
||||||
|
host_arch=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')
|
||||||
|
if test $tag = $image; then
|
||||||
|
# use multiarch image if available
|
||||||
|
if docker images | grep dockcross/${image} | grep latest-${host_arch} >/dev/null; then
|
||||||
|
tag="latest-${host_arch}"
|
||||||
|
else
|
||||||
|
tag="latest"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
shift 1
|
shift 1
|
||||||
|
|
||||||
make_arg=$*
|
make_arg=$*
|
||||||
@ -14,11 +23,11 @@ if (( $# >= 1 )); then
|
|||||||
# docker pull "dockcross/$image:$tag"
|
# docker pull "dockcross/$image:$tag"
|
||||||
|
|
||||||
echo "Make script dockcross-$image"
|
echo "Make script dockcross-$image"
|
||||||
docker run --rm dockcross/"$image" > ./dockcross-"$image"
|
docker run --rm dockcross/"$image:$tag" > ./dockcross-"$image"
|
||||||
chmod +x ./dockcross-"$image"
|
chmod +x ./dockcross-"$image"
|
||||||
|
|
||||||
echo "Build $build_file"
|
echo "Build $build_file"
|
||||||
./dockcross-"$image" -i dockcross/"$image":latest bash -c 'make CXX=${CXX} CC=${CC} AR=${AR} AS=${AS} LD=${LD} CPP=${CPP} FC=${FC} '"$make_arg"
|
./dockcross-"$image" -i dockcross/"$image:$tag" bash -c 'make CXX=${CXX} CC=${CC} AR=${AR} AS=${AS} LD=${LD} CPP=${CPP} FC=${FC} '"$make_arg"
|
||||||
else
|
else
|
||||||
echo "Usage: ${0##*/} <docker image (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <make arg.>"
|
echo "Usage: ${0##*/} <docker image (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <make arg.>"
|
||||||
exit 1
|
exit 1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user