1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
# -*- Mode: Makefile -*-
patch_dir = debian/patches
debian_patches= $(shell cat $(patch_dir)/PATCHES)
apply-patches: patched-stamp
reverse-patches:
@for stamp in none patched-*; do \
case "$$stamp" in none|patched-stamp|patched-\*) continue; esac; \
patch=`echo $$stamp | sed -e 's/patched-//'`; \
echo "trying to revert patch $$patch ..."; \
if [ -x $(patch_dir)/$$patch.dpatch ]; then true; else \
chmod +x $(patch_dir)/$$patch.dpatch; fi; \
if $(patch_dir)/$$patch.dpatch -unpatch; then \
echo "reverted $$patch patch."; \
rm -f $$stamp; \
else \
echo "error in reverting $$patch patch."; \
exit 1; \
fi; \
done
@echo "Removing patched-stamp"
@rm -f patched-stamp
patched-%: $(patch_dir)/%.dpatch
@if [ -x $< ]; then true; else chmod +x $<; fi
@if [ -f $@ ]; then \
echo "$* patches already applied."; exit 1; \
fi
$< -patch
@echo "$* patches applied." > $@
patched-stamp: $(foreach p,$(debian_patches),patched-$(p))
@echo -e "\nPatches applied:" >> pxxx
@for i in none $(debian_patches); do \
if [ -r debian/patches/$$i.dpatch ]; then \
echo -e "\n$$i:" >> pxxx; \
sed -n 's/^# *DP: */ /p' debian/patches/$$i.dpatch >> pxxx; \
fi \
done
@echo "Writing patched-stamp"
@mv -f pxxx patched-stamp
|