Small improvement to Linux build script.
This commit is contained in:
parent
4983652ddf
commit
f229c7ccfb
@ -2,12 +2,20 @@
|
|||||||
set -e
|
set -e
|
||||||
cd -- "$(dirname -- "${BASH_SOURCE[0]}")/../.."
|
cd -- "$(dirname -- "${BASH_SOURCE[0]}")/../.."
|
||||||
|
|
||||||
|
readonly mode="${1,,}"
|
||||||
|
if [[ "${mode}" != "gnu" && "${mode}" != "musl" ]]; then
|
||||||
|
echo "Error: Parameter must be either \"gnu\" or \"musl\" !!!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
rm -rf "out"
|
rm -rf "out"
|
||||||
mkdir -pv "out/include"
|
mkdir -pv "out/include"
|
||||||
cp -rfv "libhashset/include/"*.h "out/include"
|
cp -rfv "libhashset/include/"*.h "out/include"
|
||||||
|
|
||||||
for target in i686 x86_64 arm64; do
|
case "${mode}" in
|
||||||
compiler="/usr/local/musl/${target}/bin/musl-gcc"
|
gnu)
|
||||||
|
for target in i686 x86_64 aarch64; do
|
||||||
|
compiler="${target}-linux-gnu-gcc"
|
||||||
target="$("${compiler}" -dumpmachine)"
|
target="$("${compiler}" -dumpmachine)"
|
||||||
echo -e "--------------------------------\n${target}\n--------------------------------"
|
echo -e "--------------------------------\n${target}\n--------------------------------"
|
||||||
make CC="${compiler}" clean
|
make CC="${compiler}" clean
|
||||||
@ -19,4 +27,22 @@ for target in i686 x86_64 arm64; do
|
|||||||
cp -fv "${i}/${j}/bin/${i}-${j}" "out/bin/${target}"
|
cp -fv "${i}/${j}/bin/${i}-${j}" "out/bin/${target}"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
;;
|
||||||
|
musl)
|
||||||
|
for target in i686 x86_64 arm64; do
|
||||||
|
compiler="/usr/local/musl/${target}/bin/musl-gcc"
|
||||||
|
target="$("${compiler}" -dumpmachine | sed 's/-gnu/-musl/i')"
|
||||||
|
echo -e "--------------------------------\n${target}\n--------------------------------"
|
||||||
|
make CC="${compiler}" clean
|
||||||
|
make CC="${compiler}"
|
||||||
|
mkdir -pv "out/lib/${target}" "out/bin/${target}"
|
||||||
|
cp -rv "libhashset/lib/"* "out/lib/${target}"
|
||||||
|
for i in example test; do
|
||||||
|
for j in hash-set hash-map; do
|
||||||
|
cp -fv "${i}/${j}/bin/${i}-${j}" "out/bin/${target}"
|
||||||
|
done
|
||||||
|
done
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
Loading…
Reference in New Issue
Block a user