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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171
|
-include config.mk
include default.mk
## ###################################################################
.PHONY: install install-lisp install-docs install-info \
test test-interactive use-package \
clean clean-lisp clean-docs clean-archives \
stats bump-version melpa-post-release \
dist use-package-$(VERSION).tar.gz
all: elc docs
help:
$(info )
$(info Current version: use-package-$(VERSION))
$(info )
$(info See default.mk for variables you might want to set.)
$(info )
$(info Build)
$(info =====)
$(info )
$(info make [all] - compile elisp and documentation)
$(info make elc - compile elisp)
$(info make docs - generate info manuals)
$(info make info - generate info manuals)
$(info make html - generate html manual files)
$(info make html-dir - generate html manual directories)
$(info make pdf - generate pdf manuals)
$(info )
$(info Install)
$(info =======)
$(info )
$(info make install - install elisp and documentation)
$(info make install-lisp - install elisp)
$(info make install-docs - install all documentation)
$(info make install-info - install info manuals only)
$(info )
$(info Clean)
$(info ====)
$(info )
$(info make clean - clean elisp, documentation and tarball)
$(info make clean-lisp - clean elisp)
$(info make clean-docs - clean docs)
$(info make clean-archives - clean release tarball)
$(info make clean-all - clean everything)
$(info make clean-stats - clean stats)
$(info )
$(info Test)
$(info ====)
$(info )
$(info make test - run tests)
$(info make test-interactive - run tests interactively)
$(info make emacs-Q - run emacs -Q plus Use-Package)
$(info )
$(info Release Management)
$(info ==================)
$(info )
$(info make stats - regenerate statistics)
$(info make authors - regenerate AUTHORS.md)
$(info make preview-stats - preview statistics)
$(info make publish-stats - publish statistics)
$(info make preview-manuals - preview manuals)
$(info make publish-manuals - publish manuals)
$(info make dist - create tarballs)
@printf "\n"
## Build #############################################################
elc:
@$(MAKE) -f Makefile.lisp lisp
docs:
@$(MAKE) -f Makefile.doc all
info:
@$(MAKE) -f Makefile.doc info
html:
@$(MAKE) -f Makefile.doc html
html-dir:
@$(MAKE) -f Makefile.doc html-dir
pdf:
@$(MAKE) -f Makefile.doc pdf
## Install ###########################################################
install: install-lisp install-docs
install-lisp:
@$(MAKE) -f Makefile.lisp install
install-docs: docs
@$(MAKE) -f Makefile.doc install-docs
install-info: info
@$(MAKE) -f Makefile.doc install-info
## Test ##############################################################
test:
@$(BATCH) --eval "(progn\
(load-file \"use-package-tests.el\")\
(ert-run-tests-batch-and-exit))"
test-interactive:
@$(EMACS) -Q $(LOAD_PATH) --eval "(progn\
(load-file \"use-package-tests.el\")\
(ert t))"
emacs-Q: clean-lisp
@$(EMACS) -Q $(LOAD_PATH) --debug-init --eval "(progn\
(setq debug-on-error t)\
(require 'use-package))"
## Clean #############################################################
clean: clean-lisp clean-docs clean-archives
@printf "Cleaning...\n"
@$(RM) *.elc $(ELGS) # temporary cleanup kludge
@$(RM) *.texi~ *.info*
clean-lisp:
@$(MAKE) -f Makefile.lisp clean
clean-docs:
@$(MAKE) -f Makefile.doc clean
clean-archives:
@$(RM) *.tar.gz *.tar
@$(RMDIR) use-package-$(VERSION)
clean-all: clean clean-stats
clean-stats:
@$(RMDIR) $(statsdir)
## Release management ################################################
stats:
@$(MAKE) -f Makefile.doc stats
authors:
@$(MAKE) -f Makefile.doc authors
preview-stats:
@$(MAKE) -f Makefile.doc preview-stats
publish-stats:
@$(MAKE) -f Makefile.doc publish-stats
preview-manuals:
@$(MAKE) -f Makefile.doc preview-manuals
publish-manuals:
@$(MAKE) -f Makefile.doc publish-manuals
dist: use-package-$(VERSION).tar.gz
DIST_ROOT_FILES = COPYING default.mk Makefile README.md
DIST_LISP_FILES = $(ELS) Makefile.lisp
DIST_DOCS_FILES = $(TEXIPAGES) AUTHORS.md Makefile.doc
use-package-$(VERSION).tar.gz: lisp info
@printf "Packing $@\n"
@$(MKDIR) use-package-$(VERSION)
@$(CP) $(DIST_ROOT_FILES) use-package-$(VERSION)
@$(TAR) cz --mtime=./use-package-$(VERSION) -f use-package-$(VERSION).tar.gz use-package-$(VERSION)
@$(RMDIR) use-package-$(VERSION)
|