Add script (scripts/qnap-patches-apply.bash) which applies QNAP/QTS specific patches
This commit is contained in:
parent
5058d21a91
commit
a8403e744f
44
scripts/qnap-patches-apply.bash
Executable file
44
scripts/qnap-patches-apply.bash
Executable file
@ -0,0 +1,44 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
quilt-ensure() {
|
||||||
|
command -v quilt >/dev/null || {
|
||||||
|
"${REPO_ROOT}/projects/quilt/ossbuild-quilt.bash"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
_main_() {
|
||||||
|
declare -g REPO_ROOT
|
||||||
|
REPO_ROOT="$(realpath "$(dirname "${BASH_SOURCE[-1]}")/..")"
|
||||||
|
source "${REPO_ROOT}/lib/ossbuild-common.bash"
|
||||||
|
|
||||||
|
quilt-ensure
|
||||||
|
shopt -s globstar
|
||||||
|
|
||||||
|
ossbuild-pushd "${REPO_ROOT}/quilt/qnap"
|
||||||
|
ossbuild-cmd quilt push -a || true
|
||||||
|
|
||||||
|
local dst='root/' src p
|
||||||
|
local -a cmd=('cp' '-uv' '--target' "${dst}" '--parents')
|
||||||
|
for src in */; do
|
||||||
|
[ "${src}" = 'patches/' ] || {
|
||||||
|
for p in "${src}"**; do
|
||||||
|
[ -f "${p}" ] || continue
|
||||||
|
#echo "p:'${p}'/'${dst}${p}'"
|
||||||
|
if [ -f "${dst}${p}" ] && ! diff -q "${dst}${p}" "${p}" >/dev/null; then
|
||||||
|
if [ -w "${dst}${p}" ]; then
|
||||||
|
ossbuild-cmd "${cmd[@]}" "${p}"
|
||||||
|
else
|
||||||
|
ossbuild-cmd sudo "${cmd[@]}" "${p}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
done
|
||||||
|
|
||||||
|
ossbuild-cmd quilt pop -a
|
||||||
|
ossbuild-popd
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
_main_ "${@}"
|
||||||
Loading…
x
Reference in New Issue
Block a user