summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/test.yml18
-rw-r--r--.gitignore4
-rw-r--r--Eask14
-rw-r--r--Makefile63
4 files changed, 49 insertions, 50 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 6b016cf..dcc875e 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -4,27 +4,33 @@ on: [push, pull_request]
jobs:
unix-test:
- runs-on: ubuntu-latest
+ runs-on: ${{ matrix.os }}
strategy:
- max-parallel: 6
+ fail-fast: false
matrix:
+ os: [ubuntu-latest, macos-latest, windows-latest]
emacs-version:
- 26.3
- 27.2
+ - 28.1
# - snapshot
steps:
- uses: actions/checkout@v2
- - uses: purcell/setup-emacs@master
+ - uses: jcs090218/setup-emacs@master
with:
version: ${{ matrix.emacs-version }}
- - uses: conao3/setup-cask@master
+ - uses: actions/setup-node@v2
with:
- version: 0.8.4
+ node-version: '16'
+
+ - uses: emacs-eask/setup-eask@master
+ with:
+ version: 'snapshot'
- name: Run tests
run: |
- make test
+ make ci
diff --git a/.gitignore b/.gitignore
index c531d98..2835be6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,5 @@
*.elc
+*-autoloads.el
+
+.eask
+/dist
diff --git a/Eask b/Eask
new file mode 100644
index 0000000..5f99101
--- /dev/null
+++ b/Eask
@@ -0,0 +1,14 @@
+(package "rust-mode"
+ "1.0.4"
+ "A major-mode for editing Rust source code")
+
+(package-file "rust-mode.el")
+
+(files
+ "rust-cargo.el"
+ "rust-compile.el"
+ "rust-playpen.el"
+ "rust-rustfmt.el"
+ "rust-utils.el")
+
+(depends-on "emacs" "25.1")
diff --git a/Makefile b/Makefile
index 64bb106..876ea22 100644
--- a/Makefile
+++ b/Makefile
@@ -8,64 +8,39 @@ PKG = rust-mode
EMACS ?= emacs
EMACS_ARGS ?=
-
-ELS = rust-mode.el
-ELS += rust-cargo.el
-ELS += rust-compile.el
-ELS += rust-playpen.el
-ELS += rust-rustfmt.el
-ELS += rust-utils.el
-ELCS = $(ELS:.el=.elc)
+EASK ?= eask
DEPS =
LOAD_PATH ?= $(addprefix -L ../,$(DEPS))
LOAD_PATH += -L .
-lisp: $(ELCS) loaddefs
+ci: build compile checkdoc lint test
+
+build:
+ $(EASK) package
+ $(EASK) install
-%.elc: %.el
+compile:
@printf "Compiling $<\n"
- @$(EMACS) -Q --batch $(EMACS_ARGS) \
- $(LOAD_PATH) --funcall batch-byte-compile $<
+ $(EASK) compile
test:
- @$(EMACS) -Q --batch -L . -l rust-mode.el \
- -l rust-mode-tests.el -f ert-run-tests-batch-and-exit
+ $(EASK) ert rust-mode-tests.el
+
+checkdoc:
+ $(EASK) checkdoc
+
+lint:
+ $(EASK) lint
-CLEAN = $(ELCS) $(PKG)-autoloads.el
+CLEAN = $(PKG)-autoloads.el
clean:
@printf "Cleaning...\n"
@rm -rf $(CLEAN)
+ $(EASK) clean-all
-loaddefs: $(PKG)-autoloads.el
-
-define LOADDEFS_TMPL
-;;; $(PKG)-autoloads.el --- automatically extracted autoloads
-;;
-;;; Code:
-(add-to-list 'load-path (directory-file-name \
-(or (file-name-directory #$$) (car load-path))))
-
-;; Local Variables:
-;; version-control: never
-;; no-byte-compile: t
-;; no-update-autoloads: t
-;; End:
-;;; $(PKG)-autoloads.el ends here
-endef
-export LOADDEFS_TMPL
-#'
-
-$(PKG)-autoloads.el: $(ELS)
+$(PKG)-autoloads.el:
@printf "Generating $@\n"
- @printf "%s" "$$LOADDEFS_TMPL" > $@
- @$(EMACS) -Q --batch --eval "(progn\
- (setq make-backup-files nil)\
- (setq vc-handled-backends nil)\
- (setq default-directory (file-truename default-directory))\
- (setq generated-autoload-file (expand-file-name \"$@\"))\
- (setq find-file-visit-truename t)\
- (update-directory-autoloads default-directory))"
-
+ $(EASK) autoloads