aboutsummaryrefslogtreecommitdiff
path: root/devel/electron29/files/apply-electron-patches.sh
diff options
context:
space:
mode:
Diffstat (limited to 'devel/electron29/files/apply-electron-patches.sh')
-rw-r--r--devel/electron29/files/apply-electron-patches.sh26
1 files changed, 26 insertions, 0 deletions
diff --git a/devel/electron29/files/apply-electron-patches.sh b/devel/electron29/files/apply-electron-patches.sh
new file mode 100644
index 000000000000..367de24e9a71
--- /dev/null
+++ b/devel/electron29/files/apply-electron-patches.sh
@@ -0,0 +1,26 @@
+#! /bin/sh
+
+PATH=/bin:/usr/bin:/usr/local/bin
+
+GIT_CMD="git"
+PATCH_CMD="${GIT_CMD} apply"
+#PATCH_FLAGS="--numstat --check" # for debugging
+PATCH_FLAGS="--verbose --reject"
+
+WRKSRC=$1
+PATCH_CONF=${WRKSRC}/electron/patches/config.json
+
+${GIT_CMD} status "${WRKSRC}" > /dev/null 2>&1 && IS_GIT_REPO=1
+
+PATCHD_REPOD_PAIRS=$(jq -r '.[] | .patch_dir + ":" + .repo' "${PATCH_CONF}")
+for prp in ${PATCHD_REPOD_PAIRS}; do
+ pd=$(echo "${prp}" | awk -F: '{print $1}' | sed -e 's/src/./')
+ rd=$(echo "${prp}" | awk -F: '{print $2}' | sed -e 's/src/./')
+ (cd "${WRKSRC}/${rd}" && \
+ if [ -n "${IS_GIT_REPO}" ]; then
+ PATCH_FLAGS="${PATCH_FLAGS} --directory=$(${GIT_CMD} rev-parse --show-prefix)"
+ fi && \
+ while read -r p; do
+ ${PATCH_CMD} ${PATCH_FLAGS} "${WRKSRC}/${pd}/${p}"
+ done < "${WRKSRC}/${pd}/.patches")
+done