goosedump 0.12.45

Browse, search, summarize, compact, and learn from coding-agent sessions
# SPDX-License-Identifier: LGPL-2.1-or-later
# Copyright (c) 2026 Jarkko Sakkinen

PREFIX ?= /usr/local
BINDIR ?= $(PREFIX)/bin
MANDIR ?= $(PREFIX)/share/man
DOCDIR ?= $(PREFIX)/share/doc/goosedump
CARGO ?= cargo
CROSS ?= cross
INSTALL ?= install
NODE ?= node
NPM ?= npm

.PHONY: all check ci clippy package publish install uninstall clean

all:
	$(CARGO) build

check:
	$(CARGO) build
	$(CARGO) clippy --all-targets

ci:
	CARGO="$(CARGO)" NODE="$(NODE)" NPM="$(NPM)" ./scripts/ci.sh

clippy:
	$(CARGO) clippy --all-targets

package:
	CROSS="$(CROSS)" NODE="$(NODE)" ./scripts/package.sh $(PLATFORMS)

publish:
	CARGO="$(CARGO)" NODE="$(NODE)" NPM="$(NPM)" \
		./scripts/publish.sh "$(VERSION)"

install:
	$(CARGO) build --release
	$(INSTALL) -d "$(DESTDIR)$(BINDIR)" "$(DESTDIR)$(MANDIR)/man1" "$(DESTDIR)$(DOCDIR)"
	$(INSTALL) -m 755 target/release/goosedump "$(DESTDIR)$(BINDIR)/goosedump"
	$(INSTALL) -m 644 man/man1/goosedump.1 "$(DESTDIR)$(MANDIR)/man1/goosedump.1"

uninstall:
	$(RM) "$(DESTDIR)$(BINDIR)/goosedump"
	$(RM) "$(DESTDIR)$(MANDIR)/man1/goosedump.1"

clean:
	$(CARGO) clean
	$(RM) -r artifacts
	$(RM) -r npm/*/bin