gluon/scripts/patch.sh
Petr Štetiar 9dc1ac7f58
build: replace hardcoded paths with overridable variables
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-22 22:00:45 +02:00

39 lines
893 B
Bash
Executable File

#!/bin/bash
set -e
shopt -s nullglob
[ "$GLUON_TMPDIR" -a "$GLUON_PATCHESDIR" ] || exit 1
. scripts/modules.sh
mkdir -p "$GLUON_TMPDIR"
GLUONDIR="$(pwd)"
PATCHDIR="$GLUON_TMPDIR"/patching
trap 'rm -rf "$PATCHDIR"' EXIT
for module in $GLUON_MODULES; do
echo "--- Patching module '$module' ---"
git clone -s -b base --single-branch "$GLUONDIR/$module" "$PATCHDIR" 2>/dev/null
cd "$PATCHDIR"
for patch in "${GLUON_PATCHESDIR}/$module"/*.patch; do
git -c user.name='Gluon Patch Manager' -c user.email='gluon@void.example.com' -c commit.gpgsign=false am --whitespace=nowarn --committer-date-is-author-date "$patch"
done
cd "$GLUONDIR/$module"
git fetch "$PATCHDIR" 2>/dev/null
git checkout -B patched FETCH_HEAD >/dev/null
git config branch.patched.remote .
git config branch.patched.merge refs/heads/base
git submodule update --init --recursive
rm -rf "$PATCHDIR"
done