|
|
|
@ -2,59 +2,22 @@
|
|
|
|
|
|
|
|
|
|
set -e |
|
|
|
|
|
|
|
|
|
# This Script Assumes An x86_64 Host |
|
|
|
|
if [ "$(uname -m)" != "x86_64" ]; then |
|
|
|
|
echo 'Invalid Host Architecture' > /dev/stderr |
|
|
|
|
exit 1 |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
# Build For x86_64 |
|
|
|
|
native_build() { |
|
|
|
|
# Create Build Dir |
|
|
|
|
rm -rf build/$1-x86_64 |
|
|
|
|
mkdir -p build/$1-x86_64 |
|
|
|
|
cd build/$1-x86_64 |
|
|
|
|
|
|
|
|
|
# Create Prefix |
|
|
|
|
local prefix="$(cd ../../; pwd)/out/$1-x86_64" |
|
|
|
|
rm -rf "${prefix}" |
|
|
|
|
mkdir -p "${prefix}" |
|
|
|
|
|
|
|
|
|
# Prepare |
|
|
|
|
local extra_arg='-DMCPI_USE_MEDIA_LAYER_PROXY=ON' |
|
|
|
|
if [ "$1" = "server" ]; then |
|
|
|
|
extra_arg='-DMCPI_SERVER_MODE=ON' |
|
|
|
|
# Build |
|
|
|
|
build() { |
|
|
|
|
# Find Toolchain |
|
|
|
|
local toolchain_file="$(pwd)/cmake/$2-toolchain.cmake" |
|
|
|
|
if [ ! -f "${toolchain_file}" ]; then |
|
|
|
|
echo "Invalid Architecture: $1" > /dev/stderr |
|
|
|
|
exit 1 |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
# Build ARM Components |
|
|
|
|
mkdir arm |
|
|
|
|
cd arm |
|
|
|
|
cmake -DMCPI_BUILD_MODE=arm "${extra_arg}" ../../.. |
|
|
|
|
make -j$(nproc) |
|
|
|
|
make install DESTDIR="${prefix}" |
|
|
|
|
cd ../ |
|
|
|
|
|
|
|
|
|
# Build Native Components |
|
|
|
|
mkdir native |
|
|
|
|
cd native |
|
|
|
|
cmake -DMCPI_BUILD_MODE=native "${extra_arg}" ../../.. |
|
|
|
|
make -j$(nproc) |
|
|
|
|
make install DESTDIR="${prefix}" |
|
|
|
|
cd ../ |
|
|
|
|
|
|
|
|
|
# Exit |
|
|
|
|
cd ../../ |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# Build For ARM64 |
|
|
|
|
arm64_build() { |
|
|
|
|
# Create Build Dir |
|
|
|
|
rm -rf build/$1-arm64 |
|
|
|
|
mkdir -p build/$1-arm64 |
|
|
|
|
cd build/$1-arm64 |
|
|
|
|
rm -rf "build/$1-$2" |
|
|
|
|
mkdir -p "build/$1-$2" |
|
|
|
|
cd "build/$1-$2" |
|
|
|
|
|
|
|
|
|
# Create Prefix |
|
|
|
|
local prefix="$(cd ../../; pwd)/out/$1-arm64" |
|
|
|
|
local prefix="$(cd ../../; pwd)/out/$1-$2" |
|
|
|
|
rm -rf "${prefix}" |
|
|
|
|
mkdir -p "${prefix}" |
|
|
|
|
|
|
|
|
@ -75,7 +38,7 @@ arm64_build() {
|
|
|
|
|
# Build Native Components |
|
|
|
|
mkdir native |
|
|
|
|
cd native |
|
|
|
|
cmake -DCMAKE_TOOLCHAIN_FILE="$(cd ../../../; pwd)/cmake/arm64-toolchain.cmake" -DMCPI_BUILD_MODE=native "${extra_arg}" ../../.. |
|
|
|
|
cmake -DCMAKE_TOOLCHAIN_FILE="${toolchain_file}" -DMCPI_BUILD_MODE=native "${extra_arg}" ../../.. |
|
|
|
|
make -j$(nproc) |
|
|
|
|
make install DESTDIR="${prefix}" |
|
|
|
|
cd ../ |
|
|
|
@ -87,9 +50,9 @@ arm64_build() {
|
|
|
|
|
# Build For ARM |
|
|
|
|
arm_build() { |
|
|
|
|
# Create Build Dir |
|
|
|
|
rm -rf build/$1-arm |
|
|
|
|
mkdir -p build/$1-arm |
|
|
|
|
cd build/$1-arm |
|
|
|
|
rm -rf "build/$1-arm" |
|
|
|
|
mkdir -p "build/$1-arm" |
|
|
|
|
cd "build/$1-arm" |
|
|
|
|
|
|
|
|
|
# Create Prefix |
|
|
|
|
local prefix="$(cd ../../; pwd)/out/$1-arm" |
|
|
|
@ -112,19 +75,14 @@ arm_build() {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# Verify Mode |
|
|
|
|
if [ "$2" != "client" ] && [ "$2" != "server" ]; then |
|
|
|
|
if [ "$1" != "client" ] && [ "$1" != "server" ]; then |
|
|
|
|
echo "Invalid Mode: $2" > /dev/stderr |
|
|
|
|
exit 1 |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
# Build |
|
|
|
|
if [ "$1" = "native" ]; then |
|
|
|
|
native_build "$2" |
|
|
|
|
elif [ "$1" = "arm64" ]; then |
|
|
|
|
arm64_build "$2" |
|
|
|
|
elif [ "$1" = "arm" ]; then |
|
|
|
|
arm_build "$2" |
|
|
|
|
if [ "$2" = "arm" ]; then |
|
|
|
|
arm_build "$1" |
|
|
|
|
else |
|
|
|
|
echo "Invalid Architecture: $1" > /dev/stderr |
|
|
|
|
exit 1 |
|
|
|
|
build "$1" "$2" |
|
|
|
|
fi |
|
|
|
|