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.
83 lines
1.8 KiB
83 lines
1.8 KiB
#!/bin/bash
|
|
CSL_TO_USE=$1
|
|
|
|
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
|
PROJECT_DIR=$SCRIPT_DIR/..
|
|
|
|
BUILD_DIR=$SCRIPT_DIR/../ked_build
|
|
cd $SCRIPT_DIR
|
|
|
|
build()
|
|
{
|
|
if [ -z "$CSL_TO_USE" ];then
|
|
echo "Please enter a CSL"
|
|
cd csl
|
|
echo Curretnly awailable CSL are :
|
|
|
|
for d in */ ; do #Cheking the directory to print files
|
|
if [ "$d" != "csl/" ];then #Exept csl/
|
|
echo -e "\t|--> $d" | grep -oP '.*?(?=\/)' #And remove the finel "/"
|
|
fi
|
|
done
|
|
|
|
else
|
|
|
|
if [ -d "$BUILD_DIR" ];then
|
|
rm -r $BUILD_DIR
|
|
cmake -S . -B $BUILD_DIR -DCSL_USED=$CSL_TO_USE
|
|
else
|
|
cmake -S . -B $BUILD_DIR -DCSL_USED=$CSL_TO_USE
|
|
fi
|
|
|
|
cd $BUILD_DIR
|
|
make -j4
|
|
|
|
if [ "$CSL_TO_USE" == "raspberry" ];then
|
|
echo -e "\e[36m"
|
|
echo "+--------------------------------------+"
|
|
echo -e "\tExecuting $CSL_TO_USE"
|
|
echo "+--------------------------------------+"
|
|
echo -e "\e[32m"
|
|
|
|
./$CSL_TO_USE
|
|
|
|
echo -e "\e[36m"
|
|
echo "+--------------------------------------+"
|
|
echo -e "\tExecution Terminated"
|
|
echo "+--------------------------------------+"
|
|
echo -e "\e[32m"
|
|
fi
|
|
|
|
if [ "$CSL_TO_USE" == "stm32f042" ];then
|
|
echo -e "\e[36m"
|
|
echo "+--------------------------------------+"
|
|
echo -e "\tFlashing $CSL_TO_USE"
|
|
echo "+--------------------------------------+"
|
|
echo -e "\e[32m"
|
|
|
|
st-flash write $CSL_TO_USE.bin 0x08000000
|
|
|
|
echo -e "\e[36m"
|
|
echo "+--------------------------------------+"
|
|
echo -e "\tFlashing has Finished"
|
|
echo "+--------------------------------------+"
|
|
echo -e "\e[32m"
|
|
fi
|
|
fi
|
|
}
|
|
|
|
autoInit()
|
|
{
|
|
if [[ -f "$SCRIPT_DIR/../main.c" ]];then
|
|
build
|
|
else
|
|
echo "Main.c is not fount"
|
|
echo "Creating sample project"
|
|
cp -r $SCRIPT_DIR/examples/autoInit/* $PROJECT_DIR/
|
|
build
|
|
fi
|
|
}
|
|
|
|
autoInit
|
|
|