Makefile | 16 ++++++++-------- patches/README.md | 6 ++++++ diff --git a/Makefile b/Makefile index 6b8772f4d70d2cfe4410b44d7dfeb2d3522a387f..5b8783f4bd85797478e4a2abfe67ffc392641b00 100644 --- a/Makefile +++ b/Makefile @@ -312,28 +312,28 @@ $(RM) -f $(BIN) nnn-$(VERSION).tar.gz *.sig $(BIN)-static $(BIN)-static-$(VERSION).x86_64.tar.gz $(BIN)-icons-static $(BIN)-icons-static-$(VERSION).x86_64.tar.gz $(BIN)-nerd-static $(BIN)-nerd-static-$(VERSION).x86_64.tar.gz $(BIN)-emoji-static $(BIN)-emoji-static-$(VERSION).x86_64.tar.gz $(BIN)-musl-static $(BIN)-musl-static-$(VERSION).x86_64.tar.gz prepatch: ifeq ($(strip $(O_NAMEFIRST)),1) - patch --forward --strip=1 --input=$(NAMEFIRST)/mainline.diff + patch --forward --merge --strip=1 --input=$(NAMEFIRST)/mainline.diff ifeq ($(strip $(O_GITSTATUS)),1) - patch --forward --strip=1 --input=$(GITSTATUS)/namefirst.diff + patch --forward --merge --strip=1 --input=$(GITSTATUS)/namefirst.diff endif else ifeq ($(strip $(O_GITSTATUS)),1) - patch --forward --strip=1 --input=$(GITSTATUS)/mainline.diff + patch --forward --merge --strip=1 --input=$(GITSTATUS)/mainline.diff endif ifeq ($(strip $(O_RESTOREPREVIEW)),1) - patch --forward --strip=1 --input=$(RESTOREPREVIEW)/mainline.diff + patch --forward --merge --strip=1 --input=$(RESTOREPREVIEW)/mainline.diff endif postpatch: ifeq ($(strip $(O_NAMEFIRST)),1) ifeq ($(strip $(O_GITSTATUS)),1) - patch --reverse --strip=1 --input=$(GITSTATUS)/namefirst.diff + patch --merge --reverse --strip=1 --input=$(GITSTATUS)/namefirst.diff endif - patch --reverse --strip=1 --input=$(NAMEFIRST)/mainline.diff + patch --merge --reverse --strip=1 --input=$(NAMEFIRST)/mainline.diff else ifeq ($(strip $(O_GITSTATUS)),1) - patch --reverse --strip=1 --input=$(GITSTATUS)/mainline.diff + patch --merge --reverse --strip=1 --input=$(GITSTATUS)/mainline.diff endif ifeq ($(strip $(O_RESTOREPREVIEW)),1) - patch --reverse --strip=1 --input=$(RESTOREPREVIEW)/mainline.diff + patch --merge --reverse --strip=1 --input=$(RESTOREPREVIEW)/mainline.diff endif skip: ; diff --git a/patches/README.md b/patches/README.md index eb8cebd2ba0d5c6a4ff8a8e8818ea641c46ea68f..dc64e57e49860085f8ea3924fc860f2ad56c6a98 100644 --- a/patches/README.md +++ b/patches/README.md @@ -14,3 +14,9 @@ To apply a patch, use the corresponding make variable, e.g.: make O_NAMEFIRST=1 + +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`. +- 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).