-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
43 lines (37 loc) · 1.15 KB
/
Makefile
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
# Installation vars
PREFIX ?= /usr
DATADIR ?= $(PREFIX)/share
# Build targets
ncrypt=target/release/libncrypt.a
ncrypt_so=target/release/libncrypt.so
debug:
cargo build
.PHONY: debug
release:
cargo build --release
.PHONY: release
install: $(ncrypt) $(ncrypt_so) include/ncrypt.h README.md LICENSE
@# Object files
install -d $(DESTDIR)$(PREFIX)/lib
install $(ncrypt) $(DESTDIR)$(PREFIX)/lib/libncrypt.a
install $(ncrypt_so) $(DESTDIR)$(PREFIX)/lib/libncrypt.so
@# Headers
install -d $(DESTDIR)$(PREFIX)/include
install -m644 include/ncrypt.h $(DESTDIR)$(PREFIX)/include/ncrypt.h
@# Docs + license
install -d $(DESTDIR)$(DATADIR)/doc/ncrypt
install -m644 README.md $(DESTDIR)$(DATADIR)/doc/ncrypt/README.md
install -d $(DESTDIR)$(DATADIR)/licenses/ncrypt
install -m644 LICENSE $(DESTDIR)$(DATADIR)/licenses/ncrypt/LICENSE
.PHONY: install
uninstall:
rm -f $(DESTDIR)$(PREFIX)/lib/libncrypt.a
rm -f $(DESTDIR)$(PREFIX)/lib/libncrypt.so
rm -f $(DESTDIR)$(PREFIX)/include/include/ncrypt.h
rm -rf $(DESTDIR)$(DATADIR)/doc/ncrypt
rm -rf $(DESTDIR)$(DATADIR)/licenses/ncrypt
.PHONY: uninstall
clean:
cargo clean
rm -f $(ncrypt) libncrypt.so
.PHONY: clean