Add install and uninstall build targets
This commit is contained in:
parent
1b6f968a6a
commit
b97c2043b8
@ -4,6 +4,22 @@
|
|||||||
# get parallel jobs.
|
# get parallel jobs.
|
||||||
MAKEFLAGS += --jobs=$(shell nproc 2>/dev/null || printf 8)
|
MAKEFLAGS += --jobs=$(shell nproc 2>/dev/null || printf 8)
|
||||||
|
|
||||||
|
EUID := $(shell id -u)
|
||||||
|
|
||||||
|
ifeq ($(EUID),0)
|
||||||
|
PREFIX := /usr/local
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifdef PREFIX
|
||||||
|
BASHCOMPDIR := $(PREFIX)/share/bash-completion/completions
|
||||||
|
else
|
||||||
|
XDG_DATA_HOME ?= $(HOME)/.local/share
|
||||||
|
BASH_COMPLETION_USER_DIR ?= $(XDG_DATA_HOME)/bash-completion
|
||||||
|
BASHCOMPDIR := $(BASH_COMPLETION_USER_DIR)/completions
|
||||||
|
endif
|
||||||
|
|
||||||
|
DESTDIR ?=
|
||||||
|
|
||||||
# Parse hledger's help and output all commands and command aliases in
|
# Parse hledger's help and output all commands and command aliases in
|
||||||
# parenthesis. Do not output single letter command aliases, it's not useful.
|
# parenthesis. Do not output single letter command aliases, it's not useful.
|
||||||
COMMANDS_TMP := commands.tmp
|
COMMANDS_TMP := commands.tmp
|
||||||
@ -28,10 +44,29 @@ sort -u
|
|||||||
endef
|
endef
|
||||||
|
|
||||||
EXTENSIONS := ui web api
|
EXTENSIONS := ui web api
|
||||||
|
INSTALLED_EXTENSIONS := $(foreach EXT,$(EXTENSIONS),$(shell type hledger-$(EXT) >/dev/null 2>&1 && echo $(EXT)))
|
||||||
|
|
||||||
COMMANDS := $(sort $(shell $(PARSE_COMMANDS)) $(EXTENSIONS))
|
COMMANDS := $(sort $(shell $(PARSE_COMMANDS)) $(INSTALLED_EXTENSIONS))
|
||||||
CMDOPTFILES := $(foreach CMD,$(COMMANDS),options-$(CMD).txt)
|
CMDOPTFILES := $(foreach CMD,$(COMMANDS),options-$(CMD).txt)
|
||||||
|
|
||||||
|
all: hledger-completion.bash
|
||||||
|
|
||||||
|
.PHONY: install
|
||||||
|
install:
|
||||||
|
@install -v -d "$(DESTDIR)$(BASHCOMPDIR)"
|
||||||
|
@install -v -m 0644 hledger-completion.bash "$(DESTDIR)$(BASHCOMPDIR)/hledger"
|
||||||
|
@for ext in $(INSTALLED_EXTENSIONS); do \
|
||||||
|
printf "symlink " ; \
|
||||||
|
ln -sfv hledger "$(DESTDIR)$(BASHCOMPDIR)/hledger-$$ext" ; \
|
||||||
|
done
|
||||||
|
|
||||||
|
.PHONY: uninstall
|
||||||
|
uninstall:
|
||||||
|
@rm -vf "$(DESTDIR)$(BASHCOMPDIR)/hledger"
|
||||||
|
@for ext in $(INSTALLED_EXTENSIONS); do \
|
||||||
|
rm -vf "$(DESTDIR)$(BASHCOMPDIR)/hledger-$$ext" ; \
|
||||||
|
done
|
||||||
|
|
||||||
define M4DEPS :=
|
define M4DEPS :=
|
||||||
hledger-completion.bash.m4 \
|
hledger-completion.bash.m4 \
|
||||||
hledger-completion.bash.stub \
|
hledger-completion.bash.stub \
|
||||||
@ -42,8 +77,6 @@ generic-options.txt \
|
|||||||
$(CMDOPTFILES)
|
$(CMDOPTFILES)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
all: hledger-completion.bash
|
|
||||||
|
|
||||||
hledger-completion.bash: $(M4DEPS)
|
hledger-completion.bash: $(M4DEPS)
|
||||||
m4 hledger-completion.bash.m4 > $@
|
m4 hledger-completion.bash.m4 > $@
|
||||||
|
|
||||||
|
|||||||
@ -417,7 +417,6 @@ read -r -d "" _hledger_complist_commands <<TEXT
|
|||||||
accounts
|
accounts
|
||||||
activity
|
activity
|
||||||
add
|
add
|
||||||
api
|
|
||||||
areg
|
areg
|
||||||
aregister
|
aregister
|
||||||
bal
|
bal
|
||||||
@ -456,7 +455,6 @@ tags
|
|||||||
test
|
test
|
||||||
txns
|
txns
|
||||||
ui
|
ui
|
||||||
web
|
|
||||||
TEXT
|
TEXT
|
||||||
|
|
||||||
read -r -d "" _hledger_complist_query_filters <<TEXT
|
read -r -d "" _hledger_complist_query_filters <<TEXT
|
||||||
@ -603,9 +601,6 @@ read -r -d "" _hledger_complist_options_add <<TEXT
|
|||||||
--version
|
--version
|
||||||
TEXT
|
TEXT
|
||||||
|
|
||||||
read -r -d "" _hledger_complist_options_api <<TEXT
|
|
||||||
TEXT
|
|
||||||
|
|
||||||
read -r -d "" _hledger_complist_options_areg <<TEXT
|
read -r -d "" _hledger_complist_options_areg <<TEXT
|
||||||
--alias=
|
--alias=
|
||||||
--anon
|
--anon
|
||||||
@ -2050,7 +2045,4 @@ read -r -d "" _hledger_complist_options_ui <<TEXT
|
|||||||
--yearly
|
--yearly
|
||||||
TEXT
|
TEXT
|
||||||
|
|
||||||
read -r -d "" _hledger_complist_options_web <<TEXT
|
|
||||||
TEXT
|
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user