1- .PHONY : all build byte -compile clean test
1+ .PHONY : all build unix -compile windows-compile clean unix-test windows- test
22
33EMACS ?= emacs
44CASK ?= cask
55
66DAP-GENERAL := dap-launch.el dap-overlays.el dap-variables.el \
7- dap-mode.el dapui.el dap-ui.el dap-mouse.el \
7+ dap-mode.el dapui.el dap-ui.el dap-mouse.el \
88 dap-hydra.el dap-utils.el
99
1010# TODO: make a clients/ directory and update melpa recipe
@@ -13,22 +13,45 @@ DAP-CLIENTS := dap-chrome.el dap-cpptools.el dap-edge.el \
1313 dap-go.el dap-lldb.el dap-netcore.el dap-node.el \
1414 dap-php.el dap-pwsh.el dap-python.el dap-ruby.el
1515
16+ TEST-FILES := test/windows-bootstrap.el $(shell ls test/dap-* .el)
17+ LOAD-FILE = -l $(test-file )
18+ LOAD-TEST-FILES := $(foreach test-file, $(TEST-FILES ) , $(LOAD-FILE ) )
19+
1620all :
1721 $(CASK ) build
1822
1923build :
2024 $(CASK ) install
2125
2226# NOTE: treemacs also sets treemacs-no-load-time-warnings to t in its Makefile, so I guess it's OK?
23- byte-compile :
24- @$(CASK ) $(EMACS ) -Q --batch -L . \
27+ unix-compile :
28+ @$(CASK ) $(EMACS ) -Q --batch \
29+ -L . \
30+ --eval ' (setq treemacs-no-load-time-warnings t)' \
31+ -f batch-byte-compile $(DAP-GENERAL ) $(DAP-CLIENTS )
32+
33+ windows-compile :
34+ @$(CASK ) $(EMACS ) -Q --batch \
35+ -l test/windows-bootstrap.el \
36+ -L . \
2537 --eval ' (setq treemacs-no-load-time-warnings t)' \
2638 -f batch-byte-compile $(DAP-GENERAL ) $(DAP-CLIENTS )
2739
28- ci : clean build byte-compile test
40+ unix-ci : clean build unix-compile unix-test
41+
42+ windows-ci : CASK=
43+ windows-ci : clean windows-compile windows-test
2944
3045clean :
3146 rm -rf .cask * .elc
3247
33- test :
48+ unix- test :
3449 $(CASK ) exec ert-runner -L .
50+
51+ windows-test :
52+ @$(EMACS ) -Q --batch \
53+ -l test/windows-bootstrap.el \
54+ -L . \
55+ $(LOAD-TEST-FILES ) \
56+ --eval " (ert-run-tests-batch-and-exit \
57+ ' (and (not (tag no-win)) (not (tag org))))"
0 commit comments