1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- #!/bin/bash
- Mode=prod
- error_flag=0
- export TERM=xterm-256color
- function version {
- echo "$@" | awk -F. '{ printf("%d%03d%03d%03d\n", $1,$2,$3,$4); }';
- }
- function intro_ {
- echo -e "$(tput setaf 10)Install / Update cmake tool v2.0 :$(tput sgr0)"
- }
- function install_ {
- intro_
- if [ -x "$(command -v cmake)" ];then flag=1; else flag=0;fi
- case $flag in
- 0)
- echo "cmake not installed..."
- wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/cmake_3.26.4-1_amd64.deb
- sudo dpkg -i cmake_3.26.4-1_amd64.deb
- rm cmake_3.26.4-1_amd64.deb
- ;;
- 1)
- cmake_v="$(cmake --version | grep "version" | awk '{print $3}')"
- echo "cmake installed version : $(tput setaf 11)$cmake_v$(tput sgr0)"
- sleep 2
- if ! [ $(version $cmake_v) -ge $(version "3.18") ]
- then
- echo -e "cmake need to update=> cmake_3.26.4"
- sudo apt-get -qq remove --purge cmake -y
- wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/cmake_3.26.4-1_amd64.deb
- sudo dpkg -i cmake_3.26.4-1_amd64.deb
- rm cmake_3.26.4-1_amd64.deb
- else
- echo -e "cmake version : $(tput setaf 13)OK$(tput sgr0)"
- sleep 2
- fi
- ;;
- *) echo "Error";;
- esac
- echo -e "Done."
- }
- function rollback {
- intro_
- if [ -x "$(command -v cmake)" ];then flag=1; else flag=0;fi
- case $flag in
- 0)
- wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/cmake_3.16.3-1_amd64.deb
- sudo dpkg -i cmake_3.16.3-1_amd64.deb
- rm cmake_3.16.3-1_amd64.deb
- ;;
- 1)
- cmake_v="$(cmake --version | grep "version" | awk '{print $3}')"
- echo "cmake version : $cmake_v"
- sleep 2
- if [ $(version $cmake_v) -gt $(version "3.18") ]
- then
- echo -e "cmake need rollback to cmake_3.16.3"
- sudo apt-get -qq remove --purge cmake -y
- wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/cmake_3.16.3-1_amd64.deb
- sudo dpkg -i cmake_3.16.3-1_amd64.deb
- rm cmake_3.16.3-1_amd64.deb
- else
- echo -e "cmake version OK."
- sleep 2
- fi
- ;;
- *) echo "Error";;
- esac
- echo -e "Done."
- }
- function cmake_source {
- echo -e "$(tput setaf 12)Cmake kitware build:$(tput sgr0)"
- sleep 2
- sudo apt-get install checkinstall -y
- wget -c https://github.com/Kitware/CMake/releases/download/v3.26.4/cmake-3.26.4.tar.gz
- tar xvfz cmake-3.26.4.tar.gz
- cd cmake-3.26.4
- ./bootstrap
- make -j6
- sudo checkinstall --pkgname=cmake --pkgversion="3.26.4" --default
- hash -r
- }
- Mode=${Mode^^}
- if [ -z $1 ];then install_ && exit;fi
- if [ $1 = "rollback" ];then rollback;fi
- if [ $1 = "BUILD" ];then cmake_source;fi
|