From: Luuk van Baal <luukvbaal@gmail.com>
Date: Tue, 31 May 2022 09:07:31 +0000 (+0200)
Subject: Update patch conflict instructions/workflow
X-Git-Tag: v4.6~56^2
X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=3072aa78919fc3d8f0e17ba1a8536a2249a17f5b;p=nnn.git

Update patch conflict instructions/workflow
---

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 9cafe0dd..eba26519 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -43,12 +43,13 @@ jobs:
         env:
           CC: gcc
         run: |
+          export PATCH_OPTS="--merge"
           patches=("O_GITSTATUS" "O_NAMEFIRST" "O_RESTOREPREVIEW")
           z=$(( 1 << ${#patches[@]} ))
           for ((n=1; n < z; ++n)); do
             for ((i=0; i < ${#patches[@]}; ++i)); do
               printf "%s=%d " "${patches[$i]}" "$(( (n & (1 << i)) != 0 ))"
             done | tee "tmp" ; echo
-            make clean
+            make clean -s
             xargs make <"tmp"
           done
diff --git a/Makefile b/Makefile
index 5b8783f4..1c7e0ddb 100644
--- a/Makefile
+++ b/Makefile
@@ -312,28 +312,28 @@ clean:
 
 prepatch:
 ifeq ($(strip $(O_NAMEFIRST)),1)
-	patch --forward --merge --strip=1 --input=$(NAMEFIRST)/mainline.diff
+	patch --forward $(PATCH_OPTS) --strip=1 --input=$(NAMEFIRST)/mainline.diff
 ifeq ($(strip $(O_GITSTATUS)),1)
-	patch --forward --merge --strip=1 --input=$(GITSTATUS)/namefirst.diff
+	patch --forward $(PATCH_OPTS) --strip=1 --input=$(GITSTATUS)/namefirst.diff
 endif
 else ifeq ($(strip $(O_GITSTATUS)),1)
-	patch --forward --merge --strip=1 --input=$(GITSTATUS)/mainline.diff
+	patch --forward $(PATCH_OPTS) --strip=1 --input=$(GITSTATUS)/mainline.diff
 endif
 ifeq ($(strip $(O_RESTOREPREVIEW)),1)
-	patch --forward --merge --strip=1 --input=$(RESTOREPREVIEW)/mainline.diff
+	patch --forward $(PATCH_OPTS) --strip=1 --input=$(RESTOREPREVIEW)/mainline.diff
 endif
 
 postpatch:
 ifeq ($(strip $(O_NAMEFIRST)),1)
 ifeq ($(strip $(O_GITSTATUS)),1)
-	patch --merge --reverse --strip=1 --input=$(GITSTATUS)/namefirst.diff
+	patch --reverse $(PATCH_OPTS) --strip=1 --input=$(GITSTATUS)/namefirst.diff
 endif
-	patch --merge --reverse --strip=1 --input=$(NAMEFIRST)/mainline.diff
+	patch --reverse $(PATCH_OPTS) --strip=1 --input=$(NAMEFIRST)/mainline.diff
 else ifeq ($(strip $(O_GITSTATUS)),1)
-	patch --merge --reverse --strip=1 --input=$(GITSTATUS)/mainline.diff
+	patch --reverse $(PATCH_OPTS) --strip=1 --input=$(GITSTATUS)/mainline.diff
 endif
 ifeq ($(strip $(O_RESTOREPREVIEW)),1)
-	patch --merge --reverse --strip=1 --input=$(RESTOREPREVIEW)/mainline.diff
+	patch --reverse $(PATCH_OPTS) --strip=1 --input=$(RESTOREPREVIEW)/mainline.diff
 endif
 
 skip: ;
diff --git a/patches/README.md b/patches/README.md
index b349065a..199213d8 100644
--- a/patches/README.md
+++ b/patches/README.md
@@ -20,6 +20,6 @@ To apply a patch, use the corresponding make variable, e.g.:
 
 Whenever patch conflicts occur on the latest master, pull requests resolving them are welcome. Let's say a conflict occurs in the `restorepreview` patch. The best way to resolve this conflict would be something along the lines of:
 
-- Ensure you're on latest master and run `cp src/nnn.c src/nnn.c.orig && make O_RESTOREPREVIEW=1`. This will save a copy of the source from master in `src/nnn.c.orig` and generate conflict markers in `src/nnn.c`.
+- Ensure you're on latest master and run `cp src/nnn.c src/nnn.c.orig && PATCH_OPTS="--merge" make O_RESTOREPREVIEW=1`. This will save a copy of the source from master in `src/nnn.c.orig` and generate conflict markers in `src/nnn.c`.
 - Next edit `src.nnn`, resolve all the conflicts around the conflict markers(`<<<<<<<`), and save.
 - Then run `diff -u src/nnn.c.orig src/nnn.c > patch.diff` to generate the new patch file and copy the contents to `patches/restorepreview/mainline.diff` (keeping the description comment at the start of the file).