# aldermon — btop-style Alder Lake monitor. Gentoo-friendly: respects # PREFIX, DESTDIR. `make check` runs fmt+clippy+test. PREFIX ?= /usr/local SYSCONF ?= /etc DATADIR ?= /usr/share BIN := $(DESTDIR)$(PREFIX)/bin/aldermon MSRBIN := $(DESTDIR)$(PREFIX)/bin/aldermon-msr CONF := $(DESTDIR)$(SYSCONF)/aldermon/aldermon.conf SETUP := $(DESTDIR)$(DATADIR)/aldermon/aldermon-setup.sh .PHONY: all build check install uninstall clean all: build build: cargo build --release check: cargo fmt --check cargo clippy --all-targets -- -D warnings cargo test install: build install -Dm755 target/release/aldermon $(BIN) install -Dm755 target/release/aldermon-msr $(MSRBIN) install -Dm644 aldermon.conf $(CONF) install -Dm755 aldermon-setup.sh $(SETUP) ifeq ($(DESTDIR),) # VID needs the cap half of a two-gate check (msr nodes also go 0440 adm # via aldermon-setup.sh); grant cap_sys_rawio to the read-only helper # only. Re-applied on every install since rebuilding drops file caps. setcap cap_sys_rawio+ep $(MSRBIN) endif uninstall: rm -f $(BIN) $(MSRBIN) $(CONF) $(SETUP) rm -f $(DESTDIR)$(DATADIR)/aldermon/powercap-pl-rules.sh rmdir -p --ignore-fail-on-non-empty $(CONF) 2>/dev/null || true rmdir -p --ignore-fail-on-non-empty $(SETUP) 2>/dev/null || true clean: cargo clean