goGoFetch/Makefile
2026-06-25 19:00:27 +03:00

30 lines
820 B
Makefile

.PHONY: all build install clean uninstall test
BINARY_NAME = gogofetch
PREFIX ?= /usr
all:
@echo "Available targets: build install clean uninstall test"
build:
@echo "Building $(BINARY_NAME)..."
@go build -mod=vendor -ldflags="-s -w" -o $(BINARY_NAME) ./src
@echo "Build completed successfully."
install:
@[ "$$(id -u)" -eq 0 ] || [ -n "$(DESTDIR)" ] || { echo "Root privileges required."; exit 1; }
install -Dm755 $(BINARY_NAME) $(DESTDIR)$(PREFIX)/bin/$(BINARY_NAME)
install -d $(DESTDIR)$(PREFIX)/share/gogofetch/logos
install -m 644 logos/* $(DESTDIR)$(PREFIX)/share/gogofetch/logos/
test:
go test -v ./src/...
clean:
rm -f $(BINARY_NAME)
uninstall:
@echo "Uninstalling $(BINARY_NAME) from $(PREFIX)/bin..."
rm -f $(DESTDIR)$(PREFIX)/bin/$(BINARY_NAME)
rm -rf $(DESTDIR)$(PREFIX)/share/gogofetch