From 665bcabfb6ddb5319596b8cb0ebd9c8ee5e1011c Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Tue, 4 Oct 2016 15:19:23 +0000 Subject: [PATCH] collect-installed-pkg-changes.sh: Add collect-installed-package-changes.sh Signed-off-by: Jan Lindemann --- scripts/collect-installed-pkg-changes.sh | 52 ++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 scripts/collect-installed-pkg-changes.sh diff --git a/scripts/collect-installed-pkg-changes.sh b/scripts/collect-installed-pkg-changes.sh new file mode 100644 index 00000000..f1950dc2 --- /dev/null +++ b/scripts/collect-installed-pkg-changes.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +log() +{ + echo "=== $@" +} + +err() +{ + log $@ +} + +fatal() +{ + err $@ + exit 1 +} + +lp() +{ + find . -name "$1" | grep -v "/dist/\|/include/" +} + +proj=$1 +[ "$proj" ] || { + proj=`pwd | xargs basename` + proj="$proj-run $proj-devel" +} + +changed_paths=`rpm -qV $proj | sed ' + /^..5.*/ !d + s%^..5...... . /%/% +'` + +for p in $changed_paths; do + [ -r $p ] || { + fatal "can't read $p" + } + b=`basename $p` + lp=`lp "$b"` + [ "$lp" ] || { + fatal "$p is not in repository" + } + nl=`lp $b | wc -l` + [ $nl -gt 1 ] && { + log $p is more than once in repository: + lp $b + fatal exiting + } + log copying $p $lp + cp $p $lp +done