diff options
| -rw-r--r-- | .github/workflows/test.yml | 18 | ||||
| -rw-r--r-- | .gitignore | 4 | ||||
| -rw-r--r-- | Eask | 14 | ||||
| -rw-r--r-- | Makefile | 63 |
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 @@ -1 +1,5 @@ *.elc +*-autoloads.el + +.eask +/dist @@ -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") @@ -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 |
