update/project/*: unified patch handling

Handle patches by a function at include/git.sh

Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
Leah Rowe
2023-09-25 11:37:35 +01:00
parent cd3225d845
commit 3738ec90ec
3 changed files with 29 additions and 25 deletions
Executable
+21
View File
@@ -0,0 +1,21 @@
# SPDX-License-Identifier: GPL-3.0-or-later
# SPDX-FileCopyrightText: 2023 Leah Rowe <leah@libreboot.org>
git_am_patches()
{
sdir="${1}" # assumed to be absolute path
patchdir="${2}" # ditto
_fail="${3}"
(
cd "${sdir}" || \
"${_fail}" "apply_patches: !cd \"${sdir}\""
for patch in "${patchdir}/"*; do
[ -L "${patch}" ] && continue
[ -f "${patch}" ] || continue
if ! git am "${patch}"; then
git am --abort || "${_fail}" "${sdir}: !git am --abort"
"${_fail}" "!git am ${patch} -> ${sdir}"
fi
done
)
}