ALR
/
Makefile
50 строк · 1.2 Кб
1NAME := alr
2GIT_VERSION = $(shell git describe --tags )
3
4DESTDIR ?=
5PREFIX ?= /usr/local
6BIN := ./$(NAME)
7INSTALED_BIN := $(DESTDIR)/$(PREFIX)/bin/$(NAME)
8COMPLETIONS_DIR := ./scripts/completion
9BASH_COMPLETION := $(COMPLETIONS_DIR)/bash
10ZSH_COMPLETION := $(COMPLETIONS_DIR)/zsh
11INSTALLED_BASH_COMPLETION := $(DESTDIR)$(PREFIX)/share/bash-completion/completions/$(NAME)
12INSTALLED_ZSH_COMPLETION := $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_$(NAME)
13
14.PHONY: build install clean clear uninstall check-no-root
15
16build: check-no-root $(BIN)
17
18export CGO_ENABLED := 0
19$(BIN):
20go build -ldflags="-X 'gitea.plemya-x.ru/xpamych/ALR/internal/config.Version=$(GIT_VERSION)'" -o $@
21
22check-no-root:
23@if [[ "$$(whoami)" == 'root' ]]; then \
24echo "This target shouldn't run as root" 1>&2; \
25exit 1; \
26fi
27
28install: \
29$(INSTALED_BIN) \
30$(INSTALLED_BASH_COMPLETION) \
31$(INSTALLED_ZSH_COMPLETION)
32@echo "Installation done!"
33
34$(INSTALED_BIN): $(BIN)
35install -Dm755 $< $@
36
37$(INSTALLED_BASH_COMPLETION): $(BASH_COMPLETION)
38install -Dm755 $< $@
39
40$(INSTALLED_ZSH_COMPLETION): $(ZSH_COMPLETION)
41install -Dm755 $< $@
42
43uninstall:
44rm -f \
45$(INSTALED_BIN) \
46$(INSTALLED_BASH_COMPLETION) \
47$(INSTALLED_ZSH_COMPLETION)
48
49clean clear:
50rm -f $(BIN)
51