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