Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 

51 рядки
1.0 KiB

  1. # Makefile is here to make it possible to use this whole shebang
  2. # outside of emacs.
  3. .PHONY: tangle tangle-next
  4. DEST:=$(HOME)
  5. LAST:=$(shell cat .last || echo 0)
  6. NEXT:=$(shell l=$(LAST); ((l=l+1)); echo $$l)
  7. NEXTGEN:=$(PWD)/generation/$(NEXT)
  8. LASTGEN:=$(PWD)/generation/$(LAST)
  9. CUSTOM:=
  10. TANGLERS:=$(CUSTOM) readme.org emacs.org tmux.org git.org x.org nix.org
  11. GEN:=$(LAST)
  12. OPTIONS:=
  13. INSTALLDIRS=tmp $(NEXTGEN) $(LASTGEN) generation/$(GEN)
  14. all: clean tangle-next
  15. $(INSTALLDIRS):
  16. install -dm755 $@
  17. generation: $(NEXTGEN) $(LASTGEN) tmp
  18. cd tmp && cp -av . $(NEXTGEN)
  19. check:
  20. diff: generation/$(GEN)
  21. ./ddiff $(PWD)/generation/$(GEN) $(DEST)
  22. next: diff
  23. tangle-next:
  24. $(MAKE) tangle
  25. $(MAKE) generation
  26. $(MAKE) next
  27. $(MAKE) copy GEN=$(NEXT)
  28. @echo $(NEXT) > .last
  29. copy:
  30. cd $(PWD)/generation/$(GEN) && find . -type f -exec rm -f $(DEST)/{} \;
  31. cd $(PWD)/generation/$(GEN) && cp -r . $(DEST)
  32. tangle: tmp
  33. /usr/bin/env emacs --script ./etangle $(TANGLERS)
  34. @echo
  35. clean:
  36. -rm -fr tmp
  37. nuke: clean
  38. -rm -fr .last generation