build.sh: support multiple arguments

pull/20/head
telans 4 years ago
parent b6b8b157e7
commit cbf235ad69
No known key found for this signature in database
GPG Key ID: 195444EE92DBCB20

@ -33,18 +33,17 @@ dependencies() {
MANAGER_INSTALL="pacman -S" MANAGER_INSTALL="pacman -S"
DEPS="{gcc,meson,pkgconf,python-mako,glslang,libglvnd,lib32-libglvnd}" DEPS="{gcc,meson,pkgconf,python-mako,glslang,libglvnd,lib32-libglvnd}"
install install
;; ;;
"Fedora") "Fedora")
MANAGER_QUERY="dnf list installed" MANAGER_QUERY="dnf list installed"
MANAGER_INSTALL="dnf install" MANAGER_INSTALL="dnf install"
DEPS="{meson,gcc,g++,libX11-devel,glslang,python-mako,mesa-libGL-devel}" DEPS="{meson,gcc,g++,libX11-devel,glslang,python-mako,mesa-libGL-devel}"
install install
unset DEPS
unset INSTALL unset INSTALL
DEPS="{glibc-devel.i686,libstdc++-devel.i686,libX11-devel.i686}" DEPS="{glibc-devel.i686,libstdc++-devel.i686,libX11-devel.i686}"
install install
;; ;;
"Ubuntu"|"Linux Mint"|"Debian") "Ubuntu"|"Linux Mint"|"Debian")
MANAGER_QUERY="dpkg-query -l" MANAGER_QUERY="dpkg-query -l"
MANAGER_INSTALL="apt install" MANAGER_INSTALL="apt install"
@ -60,7 +59,7 @@ dependencies() {
sudo install -m755 bin/glslangValidator /usr/local/bin/ sudo install -m755 bin/glslangValidator /usr/local/bin/
rm bin/glslangValidator glslang-master-linux-Release.zip rm bin/glslangValidator glslang-master-linux-Release.zip
fi fi
;; ;;
*) *)
echo "# Unable to find distro information!" echo "# Unable to find distro information!"
echo "# Attempting to build regardless" echo "# Attempting to build regardless"
@ -83,11 +82,17 @@ configure() {
} }
build() { build() {
if [[ ! -d build/meson64 ]]; then
configure
fi
ninja -C build/meson32 install ninja -C build/meson32 install
ninja -C build/meson64 install ninja -C build/meson64 install
} }
package() { package() {
if [[ ! -f build/release/usr/lib64/libMangoHud.so ]]; then
build
fi
mkdir -p $INSTALL_DIR/{MangoHud,vulkan/implicit_layer.d} mkdir -p $INSTALL_DIR/{MangoHud,vulkan/implicit_layer.d}
cp build/release/usr/lib32/libMangoHud.so $INSTALL_DIR/MangoHud/libMangoHud32.so cp build/release/usr/lib32/libMangoHud.so $INSTALL_DIR/MangoHud/libMangoHud32.so
@ -117,15 +122,18 @@ uninstall() {
rm $IMPLICIT_LAYER_DIR/{mangohud64,mangohud32}.json rm $IMPLICIT_LAYER_DIR/{mangohud64,mangohud32}.json
} }
case $1 in for a in $@; do
"") configure; build;; case $a in
"build") configure; build;; "") configure; build;;
"install") package; install;; "pull") git pull;;
"update") git pull &> /dev/null; configure; build; install;; "configure") configure;;
"package") package;; "build") configure; build;;
"clean") clean;; "package") package;;
"uninstall") uninstall;; "install") package; install;;
*) "clean") clean;;
echo "Unrecognized command argument: $1" "uninstall") uninstall;;
echo 'Accepted arguments: "", "build", "install", "update", "package", "clean", "uninstall".' *)
esac echo "Unrecognized command argument: $a"
echo 'Accepted arguments: "pull", "configure", "build", "package", "install", "clean", "uninstall".'
esac
done

Loading…
Cancel
Save