-
Notifications
You must be signed in to change notification settings - Fork 8
/
default.mk
68 lines (56 loc) · 1.79 KB
/
default.mk
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
# Copyright (C) 2019-2024 Free Software Foundation, Inc.
#
# License
#
# This file is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 3
# of the License, or (at your option) any later version.
#
# This file is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this file. If not, see <https://www.gnu.org/licenses/>.
TOP := $(dir $(lastword $(MAKEFILE_LIST)))
# Run “make build” by default
.DEFAULT_GOAL = build
EMACS ?= emacs
CASK ?= cask
PANDOC ?= pandoc
TAR ?= tar
AWK ?= awk
INSTALL_INFO ?= $(shell command -v ginstall-info || printf install-info)
MAKEINFO ?= makeinfo
EMACSFLAGS ?=
TESTFLAGS ?= -L .
PANDOCFLAGS ?= --fail-if-warnings \
--reference-links \
--markdown-headings=atx \
-f org+empty_paragraphs
EMACSBATCH = $(EMACS) -Q --batch -L . $(EMACSFLAGS)
RUNEMACS =
# Program availability
HAVE_CASK := $(shell sh -c "command -v $(CASK)")
ifndef HAVE_CASK
$(warning "$(CASK) is not available. Please run make help")
RUNEMACS = $(EMACSBATCH)
else
RUNEMACS = $(CASK) exec $(EMACSBATCH)
endif
PACKAGE = bnf-mode
ARCHIVE_NAME = $(PACKAGE)-$(VERSION)
VERSION="$(shell $(AWK) '/^;; Version:/ { sub(/^;; Version:[ \t]+/, ""); print $$0 }' $(PACKAGE).el)"
# File lists
AUTOLOADS = bnf-mode-autoloads.el
SRCS = bnf-mode.el
OBJS = $(SRCS:.el=.elc)
INFOPAGES = $(addsuffix .info,$(PACKAGE))
ARCHIVE_CONTENTS = README \
ChangeLog \
LICENSE \
$(AUTOLOADS) \
$(PACKAGE).el \
$(PACKAGE)-pkg.el \
$(INFOPAGES) dir