Files
core_libraries/resources/packages/sodium/prepare
Timothy Prepscius b308a4c280 flatten 20260225
2026-02-25 13:00:25 -05:00

93 lines
2.1 KiB
Bash
Executable File

#!/bin/bash
set -x
if [ -d "sodium" ]; then
echo "sodium does exists already"
exit 0
fi
sys_name_=$(uname -s)
if [ "$sys_name_" = "Linux" ]; then
: "${SYS_NAME:=Linux}"
sys_name=$SYS_NAME
else
sys_name=$sys_name_
fi
LIB=sodium
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
mkdir $LIB
pushd $LIB
mkdir -p ../../downloads
pushd ../../downloads
wget -nc https://download.libsodium.org/libsodium/releases/libsodium-1.0.20-stable.tar.gz
popd
ln -s ../../downloads/libsodium*
tar xf *.tar.gz
ln -s */ libsodium
if [ "Android" == "$sys_name" ]; then
pushd libsodium
./dist-build/android-aar.sh
popd
fi
if [ "Darwin" == "$sys_name" ]; then
pushd libsodium
./dist-build/apple-xcframework.sh
popd
for name in "Release.iOS-arm64" "ReleaseLog.iOS-arm64" "Debug.iOS-arm64"; do
mkdir -p ../sdk/lib/$name
cp libsodium/libsodium-apple/tmp/ios64/lib/libsodium.a ../sdk/lib/$name
done
for name in "Release.iOS-simulate" "ReleaseLog.iOS-simulate" "Debug.iOS-simulate"; do
mkdir -p ../sdk/lib/$name
cp libsodium/libsodium-apple/tmp/ios-simulator-arm64/lib/libsodium.a ../sdk/lib/$name
done
for name in "Release.Darwin-arm64" "ReleaseLog.Darwin-arm64" "Debug.Darwin-arm64"; do
mkdir -p ../sdk/lib/$name
cp libsodium/libsodium-apple/tmp/macos-arm64/lib/libsodium.a ../sdk/lib/$name
done
mkdir -p ../sdk/include
pushd ../sdk/include
rm -f sodium
ln -s ../../$LIB/libsodium/libsodium-apple/tmp/macos-arm64/include sodium
popd
fi
if [ "Linux" == "$sys_name" ]; then
pushd libsodium
./configure --prefix="$(pwd)/libsodium-linux" --enable-shared=no --enable-fast-install=no
make install
popd
for name in "Release.Linux-x86_64" "ReleaseLog.Linux-x86_64" "Debug.Linux-x86_64"; do
mkdir -p ../sdk/lib/$name
cp libsodium/libsodium-linux/lib/libsodium.a ../sdk/lib/$name
done
mkdir -p ../sdk/include
pushd ../sdk/include
rm -f sodium
ln -s ../../$LIB/libsodium/libsodium-linux/include sodium
popd
fi
popd