mirror of
				https://github.com/Zygo/bees.git
				synced 2025-11-03 19:50:34 +01:00 
			
		
		
		
	Adds a `BINDIR` Make variable, defaulting to `sbin`, allowing packagers to override the install location of `beesd` for systems that do not use `/sbin`. This affects the install path and systemd unit template.
		
			
				
	
	
		
			73 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
PREFIX ?= /usr
 | 
						|
ETC_PREFIX ?= /etc
 | 
						|
LIBDIR ?= lib
 | 
						|
BINDIR ?= sbin
 | 
						|
 | 
						|
LIB_PREFIX ?= $(PREFIX)/$(LIBDIR)
 | 
						|
LIBEXEC_PREFIX ?= $(LIB_PREFIX)/bees
 | 
						|
 | 
						|
SYSTEMD_SYSTEM_UNIT_DIR ?= $(shell pkg-config systemd --variable=systemdsystemunitdir)
 | 
						|
 | 
						|
BEES_VERSION ?= $(shell git describe --always --dirty || echo UNKNOWN)
 | 
						|
 | 
						|
# allow local configuration to override above variables
 | 
						|
-include localconf
 | 
						|
 | 
						|
DEFAULT_MAKE_TARGET ?= reallyall
 | 
						|
 | 
						|
ifeq ($(DEFAULT_MAKE_TARGET),reallyall)
 | 
						|
	RUN_INSTALL_TESTS = test
 | 
						|
endif
 | 
						|
 | 
						|
include Defines.mk
 | 
						|
 | 
						|
default: $(DEFAULT_MAKE_TARGET)
 | 
						|
 | 
						|
all: lib src scripts
 | 
						|
reallyall: all doc test
 | 
						|
 | 
						|
clean: ## Cleanup
 | 
						|
	git clean -dfx -e localconf
 | 
						|
 | 
						|
.PHONY: lib src test doc
 | 
						|
 | 
						|
lib: ## Build libs
 | 
						|
	+$(MAKE) TAG="$(BEES_VERSION)" -C lib
 | 
						|
 | 
						|
src: ## Build bins
 | 
						|
src: lib
 | 
						|
	+$(MAKE) BEES_VERSION="$(BEES_VERSION)" -C src
 | 
						|
 | 
						|
test: ## Run tests
 | 
						|
test: lib src
 | 
						|
	+$(MAKE) -C test
 | 
						|
 | 
						|
doc: ## Build docs
 | 
						|
	+$(MAKE) -C docs
 | 
						|
 | 
						|
scripts/%: scripts/%.in
 | 
						|
	$(TEMPLATE_COMPILER)
 | 
						|
 | 
						|
scripts: scripts/beesd scripts/beesd@.service
 | 
						|
 | 
						|
install_bees: ## Install bees + libs
 | 
						|
install_bees: src $(RUN_INSTALL_TESTS)
 | 
						|
	install -Dm755 bin/bees	$(DESTDIR)$(LIBEXEC_PREFIX)/bees
 | 
						|
 | 
						|
install_scripts: ## Install scipts
 | 
						|
install_scripts: scripts
 | 
						|
	install -Dm755 scripts/beesd $(DESTDIR)$(PREFIX)/$(BINDIR)/beesd
 | 
						|
	install -Dm644 scripts/beesd.conf.sample $(DESTDIR)$(ETC_PREFIX)/bees/beesd.conf.sample
 | 
						|
ifneq ($(SYSTEMD_SYSTEM_UNIT_DIR),)
 | 
						|
	install -Dm644 scripts/beesd@.service $(DESTDIR)$(SYSTEMD_SYSTEM_UNIT_DIR)/beesd@.service
 | 
						|
endif
 | 
						|
 | 
						|
install: ## Install distribution
 | 
						|
install: install_bees install_scripts
 | 
						|
 | 
						|
help: ## Show help
 | 
						|
	@fgrep -h "##" $(MAKEFILE_LIST) | fgrep -v fgrep | sed -e 's/\\$$//' | sed -e 's/##/\t/'
 | 
						|
 | 
						|
bees: reallyall
 | 
						|
fly: install
 |