-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
33 lines (25 loc) · 801 Bytes
/
Makefile
File metadata and controls
33 lines (25 loc) · 801 Bytes
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
CXXFLAGS := -Wall -Wextra -Werror -O2 -Iinclude -fPIE -fstack-protector-strong -D_FORTIFY_SOURCE=2 -std=c++11
LDFLAGS := lib/*.o -lcryptopp -pie
SRC := src/Scrypt.cc src/Decrypt.cc src/Encrypt.cc src/Utils.cc
OBJS := $(addprefix obj/, $(addsuffix .o, $(basename $(notdir $(SRC)))))
all: lib folders fcrypt
lib:
@echo "[SCRYPT] Compiling and copying in lib/"
@./scripts/copy_scrypt.sh
folders:
@mkdir -p bin obj
fcrypt_test: $(OBJS) obj/test.o
@echo "[LD] $@"
@$(CXX) $(CXXFLAGS) $(LDFLAGS) $^ -o bin/$@
fcrypt: $(OBJS) obj/main.o
@echo "[LD] $@"
@$(CXX) $(CXXFLAGS) $(LDFLAGS) $^ -o bin/$@
obj/%.o: src/%.cc
@echo "[CXX] $^"
@$(CXX) -c $(CXXFLAGS) $< -o $@
clean:
rm -rf bin obj lib
install:
cp bin/fcrypt /usr/bin/fcrypt
.PHONY: clean install folders
.NOTPARALLEL: lib folders