diff --git a/.gitignore b/.gitignore index 1a6efb166e50d1f731309031f9a234199e6d559b..bade6d8b3da5e3e54693addfd5ba1ac7cc31a051 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ build +repo stage stage.tar diff --git a/cook.sh b/cook.sh index df6c7ff127906a6b04416a8a3972cd230fd358f0..88517cf5ea4edbee0f17e16627cab35b8d9987dc 100755 --- a/cook.sh +++ b/cook.sh @@ -4,6 +4,7 @@ export RUST_TARGET_PATH="$PWD/targets" export RUSTFLAGS="--cfg redox" export CARGOFLAGS= TARGET=x86_64-unknown-redox +REPO="$PWD/repo/$TARGET" set -e @@ -23,7 +24,7 @@ function op { popd > /dev/null ;; unfetch) - rm -rf build + rm -rfv build ;; update) pushd build > /dev/null @@ -48,18 +49,25 @@ function op { popd > /dev/null ;; unstage) - rm -rf stage + rm -rfv stage ;; tar) pushd stage > /dev/null - tar cf ../stage.tar . + tar cfv ../stage.tar . popd > /dev/null ;; untar) - rm -rf stage.tar + rm -rfv stage.tar + ;; + publish) + mkdir -p "$REPO" + cp -v stage.tar "$REPO/$1.tar" + ;; + unpublish) + rm -rfv "$REPO/$1.tar" ;; *) - echo "$0 {package} {build|clean|fetch|update}" + echo "cook.sh $1 {build|clean|fetch|unfetch|publish|unpublish|stage|unstage|tar|untar|update}" ;; esac } @@ -75,8 +83,8 @@ then op "$1" "$arg" done else - echo "$0: recipe '$1' not found" + echo "cook.sh: recipe '$1' not found" fi else - echo "$0 {package} {build|clean|fetch|unfetch|stage|unstage|tar|untar|update}" + echo "cook.sh {package} {build|clean|fetch|unfetch|publish|unpublish|stage|unstage|tar|untar|update}" fi