summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 341cd460c353f09c4f5449c2b2e313b7cead6e32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
SHELL = /bin/sh
prefix = /usr/local

VERSION = $(shell git describe --dirty --always)
DATE_FMT = +%b %d %Y %H:%M:%S UTC

ifdef SOURCE_DATE_EPOCH
	BUILD_DATE ?= $(shell \
		date -u -d "@$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)" 2>/dev/null \
		|| date -u -r "@$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)" 2>/dev/null \
		|| date -u "$(DATE_FMT)")
else
	BUILD_DATE ?= $(shell date -u "$(DATE_FMT)")
endif

INSTALL	= install

CFLAGS += -Wall -DVERSION="\"$(VERSION)\"" -DBUILD_DATE="\"$(BUILD_DATE)\""
LDFLAGS +=

TARGETS := exchange
MAINS := $(addsuffix .o, $(TARGETS))
OBJ := $(MAINS)

.PHONY: all
all: $(TARGETS)

.PHONY: clean
clean:
	rm -f $(OBJ) $(TARGETS)

.PHONY: distclean
distclean: clean

.PHONY: install
install: $(TARGETS)
	$(INSTALL) -Dt "$(DESTDIR)$(prefix)/bin" $(TARGETS)

.PHONY: uninstall
uninstall:
	cd $(DESTDIR)$(prefix)/bin && rm -f $(TARGETS)


$(TARGETS): % : %.o
	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^