You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
1.9 KiB

#!/bin/bash
#simplebuild_plugin vlmcsd
#line 3 is absolutely necessary
#without it no entry is created in the simplebuild
#the end of the line indicates how to call the module
build_vlmcsd() {
clear
#load toolchain preset
source "$tccfgdir/$1"
#vaiables for download
filename="svn1113.tar.gz"
sourcedir="vlmcsd-svn1113"
stable="https://github.com/Wind4/vlmcsd/archive/$filename"
#goto download dir
cd $dldir
slogo
[ -d $sourcedir ] && rm -rf $sourcedir #remove build dir if exist
[ -f $filename ] && rm -f $filename #remove download if exist
#messages and download source
echo -en "\nVLMCSD\n=======\ndownload please wait ... "
wget $stable --progress=dot -q --show-progress 2>&1 |
awk 'NF>2 && $(NF-2) ~ /%/{printf "\rdownload please wait ... %s",$(NF-2)} END{print "\rdownload please wait ... Done!"}' #download stable package
echo -e "extracting please wait ... "
#extract source
tar -zxf $filename
#enter source directory
cd $sourcedir
#build software
# variables
#example dream_one
#
# _compiler="aarch64-dream_one-linux-gnu-";
# - u can use $_compiler"ar" {strip,ranlib,ld...}
#
# _sysroot="aarch64-dream_one-linux-gnu/sysroot/";
# -if the source needs a sysroot
#
# _libsearchdir="/lib";
# if needet on the target system
#
# toolchain directory
# $tcdir
#
# toolchainname
# $_toolchainname
#build software
make CC="$tcdir/$_toolchainname/bin/$_compiler""gcc" 2>&1 |grep --line-buffered -v "^make" |awk -F "CC" '{print "compile -> " "\033[32m" $NF "\033[0m" }'
[ -d bin ] && cd bin
#compress binary
upx -9 -q vlmcs |grep vlmcs |awk '{print "compress -> " $1" "$3" "$4 }'
upx -9 -q vlmcsd |grep vlmcsd |awk '{print "compress -> " $1" "$3" "$4 }'
#move binarys & links to source-toolchainname
[ -d "$sodir/$sourcedir-$_toolchainname" ] && rm -rf "$sodir/$sourcedir-$_toolchainname"
mkdir -p "$sodir/$sourcedir-$_toolchainname"
mv {vlmcs,vlmcsd} "$sodir/$sourcedir-$_toolchainname"
}
#check software parameter
if [ "$1" = "vlmcsd" ]; then
build_vlmcsd $2
exit
fi