diff options
author | Patrick Spek <p.spek@tyil.nl> | 2020-03-28 09:00:16 +0100 |
---|---|---|
committer | Patrick Spek <p.spek@tyil.nl> | 2020-03-28 09:00:16 +0100 |
commit | 559711d4ce5af190d57ccfd67ce6d2e95fb545d4 (patch) | |
tree | 4c37d520ef3ebf8705ce21837782f015c94c5414 /lib | |
parent | c9b07f443080ce5ed7db85f674bd70cf2a733475 (diff) |
Bring clean up to date with the rest of the repo
Diffstat (limited to 'lib')
-rw-r--r-- | lib/actions/clean.bash | 32 | ||||
-rw-r--r-- | lib/main.bash | 5 |
2 files changed, 29 insertions, 8 deletions
diff --git a/lib/actions/clean.bash b/lib/actions/clean.bash index c00e85d..0ed521d 100644 --- a/lib/actions/clean.bash +++ b/lib/actions/clean.bash @@ -1,11 +1,31 @@ #!/usr/bin/env bash action() { - remove "$BASEDIR/tmp" - remove "$BASEDIR/install" -} + local OPTIND + local clean_source + + while getopts ":s" opt + do + case "$opt" in + s) clean_src=1 ;; + *) emerg "Invalid option specified: $opt" ;; + esac + done + + shift $(( OPTIND - 1 )) + + shopt -s extglob + + rm -fr -- "!($BASEDIR/bin/rstar)" + rm -fr -- "$BASEDIR/dist" + rm -fr -- "$BASEDIR/include" + rm -fr -- "$BASEDIR/lib/libmoar.so" + rm -fr -- "$BASEDIR/share" -remove() { - info "Removing $1" - rm -fr -- "$1" + # Cleaning the sources is not desired for end-users, but convenient for + # maintainers. As such, this one is put behind an opt. + if [[ $clean_src ]] + then + rm -fr -- "$BASEDIR/src" + fi } diff --git a/lib/main.bash b/lib/main.bash index 18d5dfd..a06c003 100644 --- a/lib/main.bash +++ b/lib/main.bash @@ -74,7 +74,7 @@ usage() { cat <<EOF Usage: rstar -h - rstar clean + rstar clean [-s] rstar dist [version] rstar fetch rstar install [-b backend] [-p prefix] [core] [modules] @@ -84,7 +84,8 @@ Usage: rstar is the entry point for all utilities to deal with Rakudo Star. Actions: - clean Clean up the repository. + clean Clean up the repository. If -s is given, the src directory + will also be removed. dist Create a distributable tarball of this repository. If no version identifier is specified, it will use the current year and month in "yyyy.mm" notation. |