diff --git a/CHANGELOG.md b/CHANGELOG.md index 46e2801..3755088 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ + default C++ standard set to `c++11` + added `INCLUDE` to `default.config` + moved `LINKER_ARGS` to the end of linkage command in `functions.sh` to properly link static libs ++ added function `try_delete_dir_or_file` for `clean` task # v5 + added task `clean` diff --git a/default_tasks/clean.sh b/default_tasks/clean.sh index 0e5696e..4e40e05 100644 --- a/default_tasks/clean.sh +++ b/default_tasks/clean.sh @@ -1,6 +1,6 @@ #!/usr/bin/bash -delete_dir "$OBJDIR" -delete_dir "$OUTDIR" +try_delete_dir_or_file "$OBJDIR" +try_delete_dir_or_file "$OUTDIR" myprint "${WHITE}deleting build logs" rm -rf *.log diff --git a/functions.sh b/functions.sh index a2b3fbf..e589ff6 100755 --- a/functions.sh +++ b/functions.sh @@ -22,6 +22,14 @@ function delete_dir { rm -rf "$dir" } +function try_delete_dir_or_file { + local path="$1" + if [ -f "$path" ] || [ -d "$path" ]; then + rm -rf "$path" + myprint "${WHITE}deleting $path" + fi +} + function compile { local cmp="$1"