PROJECT := $(shell grep ^name Cargo.toml|sed -e s/\"\s*$$// -e s/^.*\"//)
VERSION := $(shell grep ^version Cargo.toml|sed -e s/\"\s*$$// -e s/^.*\"//)
PATH := ./target/debug:${PATH}
BINS := paths fdsum
DESTDIR =
RELEASE = target/release
PREFIX = /usr/local
BINDIR = $(PREFIX)/bin
DATADIR = $(PREFIX)/share
MANDIR = $(DATADIR)/man
MAN1 = $(MANDIR)/man1
DESTDIR =
all: build
sinclude custom.mk
.PHONY: all version build clean dist config install
build:
@cargo build
release:
@cargo build --release
clean:
@rm -f $(PROJECT)-*.tar.gz
@cargo clean
install: release
@install -d -m 755 $(DESTDIR)$(BINDIR)
@install -d -m 755 $(DESTDIR)$(MAN1)
@for name in $(BINS) ; do \
install -m 755 $(RELEASE)/$${name} $(DESTDIR)$(BINDIR) ;\
install -m 644 src/man/$${name}.1 $(DESTDIR)$(MAN1) ;\
done
dist:
@rm -f $(PROJECT)-*.tar.gz
@git archive -o $(PROJECT)-$(VERSION).tar.gz --format tar.gz --prefix=$(PROJECT)-$(VERSION)/ v$(VERSION) 2>/dev/null || git archive -o $(PROJECT)-$(VERSION).tar.gz --format tar.gz --prefix=$(PROJECT)-$(VERSION)/ HEAD
version:
@echo $(PROJECT) $(VERSION)
sinclude .make/*