summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2024-02-23 06:05:19 -0300
committerEuAndreh <eu@euandre.org>2024-02-23 06:05:21 -0300
commitc36bf8e3577da31cf6d575879c7e92d3e9c7e4f1 (patch)
tree4fd5414e76490e297c4c770ff35e09149ef3658f /Makefile
parentRemove C code and cleanup repository (diff)
downloadpapod-c36bf8e3577da31cf6d575879c7e92d3e9c7e4f1.tar.gz
papod-c36bf8e3577da31cf6d575879c7e92d3e9c7e4f1.tar.xz
Big cleanup
- delete all SQLite Node-API code: we'll use the C++ one instead; - implement hero.mjs, with tests! - use ESM all over.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile62
1 files changed, 14 insertions, 48 deletions
diff --git a/Makefile b/Makefile
index f150cf9..1dbf13e 100644
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,7 @@ NAME = papo
NAME_UC = $(NAME)
URL = papo.im
MAILING_LIST = list@$(URL)
-TRANSLATIONS =
+LANGUAGES =
## Installation prefix. Defaults to "/usr".
PREFIX = /usr
BINDIR = $(PREFIX)/bin
@@ -42,27 +42,18 @@ include deps.mk
manpages = $(manpages.in:.in=)
sources = \
- $(sources.js) \
- src/cli \
+ $(sources.mjs) \
installable = \
$(sources.sql) \
- $(sources.js) \
- src/index.js \
- src/cli \
+ $(sources.mjs) \
+ src/package.json \
derived-assets = \
- $(NAME).bin \
$(manpages) \
- src/index.js \
- node_modules/dir.sentinel \
- node_modules/ \
- node_modules/$(NAME) \
side-assets = \
- src/logerr.c.txt \
- src/catalog.c.txt \
ircd.sock \
web.sock \
@@ -73,40 +64,23 @@ side-assets = \
all: $(derived-assets)
-$(NAME).bin:
- ln -fs src/cli $@
-
$(manpages): Makefile deps.mk
-src/index.js:
- ln -fs api.js $@
-
-node_modules/dir.sentinel:
- mkdir $(@D)
- touch $@
-
-node_modules/$(NAME): node_modules/dir.sentinel
- rm -f $@
- ln -s ../src $@
- touch $@
-
-node_modules/: node_modules/dir.sentinel node_modules/$(NAME)
+.SUFFIXES: .mjs .mjs-check
+tests.mjs-check = $(tests.mjs:.mjs=.mjs-check)
+$(tests.mjs-check):
+ node $*.mjs
-.SUFFIXES: .js .js-t
-tests.js-t = $(tests.js:.js=.js-t)
-$(tests.js-t):
- node $*.js
-
-check-unit: $(tests.js-t)
+check-unit: $(tests.mjs-check)
integration-tests = \
tests/cli-opts.sh \
-$(integration-tests): $(NAME).bin ALWAYS
- sh $@ $(EXEC)$(NAME).bin
+$(integration-tests): ALWAYS
+ sh $@ $(EXEC)src/bin.mjs
check-integration: $(integration-tests)
@@ -129,7 +103,7 @@ install: all
mkdir -p \
'$(DESTDIR)$(BINDIR)' \
'$(DESTDIR)$(JSLIBDIR)'
- ln -fs '$(DESTDIR)$(JSLIBDIR)'/cli '$(DESTDIR)$(BINDIR)'/$(NAME)
+ ln -fs '$(DESTDIR)$(JSLIBDIR)'/bin.mjs '$(DESTDIR)$(BINDIR)'/$(NAME)
for f in $(installable); do \
dir='$(DESTDIR)$(JSLIBDIR)'/"`dirname "$${f#src/}"`"; \
mkdir -p "$$dir"; \
@@ -140,11 +114,6 @@ install: all
mkdir -p "$$dir"; \
cp -P "$$f" "$$dir"; \
done
- for l in en $(TRANSLATIONS); do \
- dir='$(DESTDIR)$(LOCALEDIR)'/"$$l"/LC_MESSAGES; \
- mkdir -p "$$dir"; \
- cp src/$(NAME)."$$l".cat "$$dir"/$(NAME).cat; \
- done
sh tools/manpages.sh -ip '$(DESTDIR)$(MANDIR)' $(manpages)
## Uninstalls from $(DESTDIR)$(PREFIX). This is a perfect mirror
@@ -155,19 +124,16 @@ uninstall:
'$(DESTDIR)$(BINDIR)'/$(NAME) \
'$(DESTDIR)$(JSLIBDIR)' \
'$(DESTDIR)$(SRCDIR)'
- for l in en $(TRANSLATIONS); do \
- rm -f '$(DESTDIR)$(LOCALEDIR)'/"$$l"/LC_MESSAGES/$(NAME).cat; \
- done
sh tools/manpages.sh -up '$(DESTDIR)$(MANDIR)' $(manpages)
run-ircd: all
rm -f ircd.sock
- ./src/cli ircd ircd.sock
+ ./src/papo ircd ircd.sock
run-web: all
rm -f web.sock
- ./src/cli web web.sock
+ ./src/papo web web.sock
## Run the web and IRC server locally.
run: all