-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile copy
executable file
·43 lines (32 loc) · 1.17 KB
/
Makefile copy
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
CXX=clang++
CXXFLAGS=-std=c++20 -g -fstandalone-debug -Wall -Wextra -w -pedantic -Iincludes/ `pkg-config --cflags --libs opencv` -llept -ltesseract -lsqlite3
exec: bin/exec
tests: bin/tests
bin/exec: obj/main.o obj/LicensePlateManager.o obj/LicensePlateInfo.o obj/LicensePlateScanner.o obj/Menu.o
mkdir -p bin
$(CXX) $(CXXFLAGS) $(INCLUDES) -lc++abi $^ -o $@
obj/main.o: src/main.cc
mkdir -p obj
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $^ -o $@
obj/LicensePlateManager.o: src/LicensePlateManager.cc
mkdir -p obj
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $^ -o $@
obj/LicensePlateInfo.o: src/LicensePlateInfo.cc
mkdir -p obj
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $^ -o $@
obj/LicensePlateScanner.o: src/LicensePlateScanner.cc
mkdir -p obj
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $^ -o $@
obj/Menu.o: src/Menu.cc
mkdir -p obj
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $^ -o $@
bin/tests: tests/tests.cc obj/catch.o obj/LicensePlateManager.o obj/LicensePlateInfo.o obj/LicensePlateScanner.o
mkdir -p bin
$(CXX) $(CXXFLAGS) $(INCLUDES) $^ -o $@
obj/catch.o: tests/catch.cc
mkdir -p obj
$(CXX) $(CXXFLAGS) $(INCLUDES) -c $^ -o $@
.DEFAULT_GOAL := exec
.PHONY: clean exec tests
clean:
rm -rf bin/* obj/*