From 3bd2f7cfd65e70f85a658dbaa793524569b18ab3 Mon Sep 17 00:00:00 2001 From: Ian Douglas Scott Date: Sat, 8 Apr 2017 11:13:24 -0700 Subject: [PATCH 1/3] Add update-all.sh script to rebuild only out of date packages --- cook.sh | 8 ++++++++ update-all.sh | 23 +++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100755 update-all.sh diff --git a/cook.sh b/cook.sh index 9a20c173a..7fb8c9dea 100755 --- a/cook.sh +++ b/cook.sh @@ -101,6 +101,14 @@ function op { fi popd > /dev/null ;; + gitversion) + if [ -d build/.git ] + then + echo "$(op $1 version)-$(git -C build rev-parse --short HEAD)" + else + op $1 version + fi + ;; update) pushd build > /dev/null skip="0" diff --git a/update-all.sh b/update-all.sh new file mode 100755 index 000000000..18a41e85c --- /dev/null +++ b/update-all.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +set -e + +for recipe in `ls -1 recipes` +do + if [ ! -f "recipes/$recipe/stage.tar" ] + then + echo "$recipe: building..." + ./cook.sh $recipe dist + else + oldver=$(./cook.sh $recipe gitversion) + ./cook.sh $recipe update + newver=$(./cook.sh $recipe gitversion) + if [ "$oldver" = "$newver" ] + then + echo "$recipe: up to date (version $newver)." + else + echo "$recipe: updating $oldver -> $newver..." + ./cook.sh $recipe dist + fi + fi +done From e0401295afe4da6ceaa6d082932aa97ce2e1fd66 Mon Sep 17 00:00:00 2001 From: Ian Douglas Scott Date: Sat, 8 Apr 2017 11:29:41 -0700 Subject: [PATCH 2/3] Rename update-all.sh to update-packages.sh; make it optionally allow a list of packages as arguments --- update-all.sh => update-packages.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) rename update-all.sh => update-packages.sh (84%) diff --git a/update-all.sh b/update-packages.sh similarity index 84% rename from update-all.sh rename to update-packages.sh index 18a41e85c..6a3aba2f9 100755 --- a/update-all.sh +++ b/update-packages.sh @@ -2,7 +2,14 @@ set -e -for recipe in `ls -1 recipes` +if [ $# = 0 ] +then + recipes=$(ls -1 recipes) +else + recipes=$@ +fi + +for recipe in $recipes do if [ ! -f "recipes/$recipe/stage.tar" ] then From 8b4c56b07467ac76650b5d011caadbc683c7cd4c Mon Sep 17 00:00:00 2001 From: Ian Douglas Scott Date: Sat, 8 Apr 2017 11:43:38 -0700 Subject: [PATCH 3/3] "exit 1" if package not found --- cook.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/cook.sh b/cook.sh index 7fb8c9dea..ac18a7e01 100755 --- a/cook.sh +++ b/cook.sh @@ -223,6 +223,7 @@ then done else echo "cook.sh: recipe '$1' not found" >&2 + exit 1 fi else usage "{package}"