aboutsummaryrefslogtreecommitdiffstats
path: root/sbo-batch-test
diff options
context:
space:
mode:
Diffstat (limited to 'sbo-batch-test')
-rwxr-xr-xsbo-batch-test25
1 files changed, 25 insertions, 0 deletions
diff --git a/sbo-batch-test b/sbo-batch-test
index 1e0020c..c5e6cf1 100755
--- a/sbo-batch-test
+++ b/sbo-batch-test
@@ -342,6 +342,31 @@ cache_decision() {
fi
}
+# cache_path <cat> <prog> <version> -> echoes the cached .txz path for that
+# version, or nothing. Used to installpkg a cached dep.
+cache_path() {
+ local cat="$1" prog="$2" version="$3"
+ [[ -z "$PKG_CACHE" ]] && return
+ local dir="$PKG_CACHE/$cat/$prog"
+ local f newest=""
+ for f in "$dir/$prog"-*.t?z; do
+ [[ -e "$f" ]] || continue
+ [[ -z "$newest" || "$f" -nt "$newest" ]] && newest="$f"
+ done
+ [[ -z "$newest" ]] && return
+ [[ "$(_cache_ver_of "$prog" "$(basename "$newest")")" == "$version" ]] && echo "$newest"
+}
+
+# cache_store <cat> <prog> <src-txz> -> clear the prog dir, copy src in.
+cache_store() {
+ local cat="$1" prog="$2" src="$3"
+ [[ -z "$PKG_CACHE" ]] && return
+ local dir="$PKG_CACHE/$cat/$prog"
+ mkdir -p "$dir"
+ rm -f "$dir"/*.t?z
+ cp -a "$src" "$dir/"
+}
+
# =============================================================================
# SBo tree lookup. Find the SlackBuild dir for a prog name across roots.
# Echoes the dir path, returns 0 if found, 1 otherwise.