75 lines
1.7 KiB
Bash
75 lines
1.7 KiB
Bash
#!/bin/bash
|
|
set -ex
|
|
|
|
if [ ! -e "src/api/api.h" ]; then
|
|
echo "Please run this script from the root directory of Lite XL."; exit 1
|
|
fi
|
|
|
|
show_help() {
|
|
echo
|
|
echo "Lite XL dependecies installer. Mainly used for CI but can also work on users systems."
|
|
echo "USE IT AT YOUR OWN RISK!"
|
|
echo
|
|
echo "Usage: $0 <OPTIONS>"
|
|
echo
|
|
echo "Available options:"
|
|
echo
|
|
echo "-l --lhelper Install tools required by LHelper and doesn't"
|
|
echo " install external libraries."
|
|
echo " --debug Debug this script."
|
|
echo
|
|
}
|
|
|
|
main() {
|
|
local lhelper=false
|
|
|
|
for i in "$@"; do
|
|
case $i in
|
|
-s|--lhelper)
|
|
lhelper=true
|
|
shift
|
|
;;
|
|
--debug)
|
|
set -x
|
|
shift
|
|
;;
|
|
*)
|
|
# unknown option
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [[ -n $1 ]]; then
|
|
show_help
|
|
exit 1
|
|
fi
|
|
|
|
if [[ "$OSTYPE" == "linux"* ]]; then
|
|
if [[ $lhelper == true ]]; then
|
|
sudo apt-get install -qq ninja-build
|
|
else
|
|
sudo apt-get install -qq ninja-build libsdl2-dev libfreetype6
|
|
fi
|
|
pip3 install meson
|
|
elif [[ "$OSTYPE" == "darwin"* ]]; then
|
|
if [[ $lhelper == true ]]; then
|
|
brew install bash md5sha1sum ninja
|
|
else
|
|
brew install ninja sdl2
|
|
fi
|
|
pip3 install meson
|
|
cd ~; npm install appdmg; cd -
|
|
~/node_modules/appdmg/bin/appdmg.js --version
|
|
elif [[ "$OSTYPE" == "msys" ]]; then
|
|
if [[ $lhelper == true ]]; then
|
|
pacman --noconfirm -S \
|
|
${MINGW_PACKAGE_PREFIX}-{gcc,meson,ninja,ntldd,pkg-config} unzip
|
|
else
|
|
pacman --noconfirm -S \
|
|
${MINGW_PACKAGE_PREFIX}-{gcc,meson,ninja,ntldd,pkg-config,freetype,pcre2,SDL2} unzip
|
|
fi
|
|
fi
|
|
}
|
|
|
|
main "$@"
|