updated with git add commands on adding new module
This commit is contained in:
parent
5c9de8a80c
commit
1788aa2dd7
6
otto.sh
6
otto.sh
|
@ -1,7 +1,7 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# Author: Jake Goodwin
|
# Author: Jake Goodwin
|
||||||
# Date: 2024
|
# Date: 2024
|
||||||
# Filename: tdd.sh
|
# Filename: otto.sh
|
||||||
|
|
||||||
CROSS_TC_WIN="$(pwd)/i686-w64-mingw32_toolchain.cmake"
|
CROSS_TC_WIN="$(pwd)/i686-w64-mingw32_toolchain.cmake"
|
||||||
CMAKE_VERBOSE="ON"
|
CMAKE_VERBOSE="ON"
|
||||||
|
@ -58,6 +58,10 @@ add_new_module () {
|
||||||
tree -L 2 $modtest_dir
|
tree -L 2 $modtest_dir
|
||||||
|
|
||||||
# Now we add the new files to the git tracked files
|
# Now we add the new files to the git tracked files
|
||||||
|
git add ${modsrc_dir}/*
|
||||||
|
git add ${modsrc_dir}
|
||||||
|
git add ${modtest_dir}/*
|
||||||
|
git add ${modtest_dir}
|
||||||
|
|
||||||
#del_module
|
#del_module
|
||||||
}
|
}
|
||||||
|
|
151
tdd.sh
151
tdd.sh
|
@ -1,151 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# Author: Jake Goodwin
|
|
||||||
# Date: 2024
|
|
||||||
# Filename: otto.sh
|
|
||||||
|
|
||||||
CROSS_TC_WIN="$(pwd)/i686-w64-mingw32_toolchain.cmake"
|
|
||||||
CMAKE_VERBOSE="ON"
|
|
||||||
CROSS_COMPILE=1
|
|
||||||
TEMPLATE_FILES=".template_files"
|
|
||||||
MODULE_DIR="${TEMPLATE_FILES}/modules"
|
|
||||||
|
|
||||||
clear_cmake_cache () {
|
|
||||||
cd ./build
|
|
||||||
rm -rf CMakeCache.txt CMakeFiles/
|
|
||||||
}
|
|
||||||
|
|
||||||
does_module_exist () {
|
|
||||||
local basename="$1"
|
|
||||||
|
|
||||||
if [ -d "src/${basename}" ]; then
|
|
||||||
echo "1"
|
|
||||||
else
|
|
||||||
echo "0"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
add_new_module () {
|
|
||||||
read -p "Enter the name of the module:" modname
|
|
||||||
|
|
||||||
result=$(does_module_exist "$modname")
|
|
||||||
|
|
||||||
if [ "${result}" -eq "1" ]; then
|
|
||||||
echo "Module already exists!"
|
|
||||||
echo "Exiting without changing anything"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
modname_cap=$(echo $modname | sed 's/[a-z]/\U&/g')
|
|
||||||
modsrc_dir="./src/${modname}"
|
|
||||||
modtest_dir="./tests/${modname}"
|
|
||||||
|
|
||||||
echo "creating: ${modsrc_dir}, ${modtest_dir}"
|
|
||||||
mkdir $modsrc_dir
|
|
||||||
mkdir $modtest_dir
|
|
||||||
|
|
||||||
#copy the template files.
|
|
||||||
echo "copying & customizing template files..."
|
|
||||||
|
|
||||||
sed "s/module_name/${modname}/" $MODULE_DIR/module_name.c > $modsrc_dir/${modname}.c
|
|
||||||
sed "s/module_name/${modname_cap}/" $MODULE_DIR/module_name.h > $modsrc_dir/${modname}.h
|
|
||||||
sed "s/module_name/${modname}/" $MODULE_DIR/CMakeLists.txt > $modsrc_dir/CMakeLists.txt
|
|
||||||
|
|
||||||
sed "s/module_name/${modname}/" $MODULE_DIR/test_module_name.c > $modtest_dir/test_${modname}.c
|
|
||||||
sed "s/module_name/${modname}/" $MODULE_DIR/TestCMakeLists.txt > $modtest_dir/CMakeLists.txt
|
|
||||||
|
|
||||||
echo "Resulting files/dirs:"
|
|
||||||
tree -L 2 $modsrc_dir
|
|
||||||
tree -L 2 $modtest_dir
|
|
||||||
|
|
||||||
# Now we add the new files to the git tracked files
|
|
||||||
|
|
||||||
#del_module
|
|
||||||
}
|
|
||||||
|
|
||||||
del_module () {
|
|
||||||
read -p "Enter the name of the module:" modname
|
|
||||||
|
|
||||||
rm -r ./tests/${modname}
|
|
||||||
rm -r ./src/${modname}
|
|
||||||
}
|
|
||||||
|
|
||||||
cross_compile () {
|
|
||||||
echo "ERROR: Currently no toolchain / target!"
|
|
||||||
}
|
|
||||||
|
|
||||||
build_release() {
|
|
||||||
clear_cmake_cache
|
|
||||||
cmake -DCAM_HANDLER_LIB=ON -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE} ../
|
|
||||||
make camera_handler
|
|
||||||
}
|
|
||||||
|
|
||||||
build_main () {
|
|
||||||
clear_cmake_cache
|
|
||||||
|
|
||||||
cmake -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE} ../
|
|
||||||
make main
|
|
||||||
}
|
|
||||||
|
|
||||||
run_c_tests () {
|
|
||||||
cp ./src/camera_handler/testdata.bin /tmp/
|
|
||||||
clear_cmake_cache
|
|
||||||
cmake -DUNIT_TESTING=ON -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE} ../
|
|
||||||
make all && ctest
|
|
||||||
}
|
|
||||||
|
|
||||||
print_menu () {
|
|
||||||
echo "BUILD MENU:"
|
|
||||||
echo "1. Run Tests"
|
|
||||||
echo "2. Build Project"
|
|
||||||
echo "3. Build for release"
|
|
||||||
echo "4. cross compile for XXXXXX"
|
|
||||||
echo "5. Add new module to project"
|
|
||||||
echo "6. Exit"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
main() {
|
|
||||||
valid_choice=false
|
|
||||||
|
|
||||||
while [ "$valid_choice" != true ]; do
|
|
||||||
print_menu
|
|
||||||
read -p "Enter your choice: " choice
|
|
||||||
|
|
||||||
case $choice in
|
|
||||||
1)
|
|
||||||
echo "You selected Option 1"
|
|
||||||
valid_choice=true
|
|
||||||
run_c_tests
|
|
||||||
;;
|
|
||||||
2)
|
|
||||||
echo "You selected Option 2"
|
|
||||||
valid_choice=true
|
|
||||||
build_main
|
|
||||||
;;
|
|
||||||
3)
|
|
||||||
echo "You selected Option 3"
|
|
||||||
valid_choice=true
|
|
||||||
build_release
|
|
||||||
;;
|
|
||||||
4)
|
|
||||||
echo "You selected Option 4"
|
|
||||||
valid_choice=true
|
|
||||||
cross_compile
|
|
||||||
;;
|
|
||||||
5)
|
|
||||||
echo "You selected Option 5"
|
|
||||||
valid_choice=true
|
|
||||||
add_new_module
|
|
||||||
;;
|
|
||||||
6)
|
|
||||||
echo "Exiting..."
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Invalid choice. Please select a valid option."
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
main
|
|
Loading…
Reference in New Issue