-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
41 lines (31 loc) · 1018 Bytes
/
Copy pathMakefile
File metadata and controls
41 lines (31 loc) · 1018 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
34
35
36
37
38
39
40
# Compiler flags -------------------------------------------------
CXX ?=g++
DEBUG = -Os
CFLAGS = -Wall -Wextra -Werror $(DEBUG)
IFLAGS = -I.
LDFLAGS = -pthread -rdynamic
ARCHFLAGS =
# Compiler flags ends ---------------------------------------------
# Install data ----------------------------------------------------
DESTDIR ?=/usr/local
INSTALLDIR_BIN=$(DESTDIR)/bin/
# -----------------------------------------------------------------
# Config build structure ##########################################
BIN = mcastit
SRC = $(wildcard *.cpp)
OBJS = $(SRC:.cpp=.o)
# Config build structure end ######################################
.PHONY: all
all: $(BIN)
clean:
-rm -f $(OBJS) $(BIN)
install: all
mkdir -p $(INSTALLDIR_BIN)
install $(BIN) $(INSTALLDIR_BIN)
uninstall:
rm -f $(INSTALLDIR_BIN)/$(BIN)
# Build code #######################################
%.o:%.cpp
$(CXX) -c $(CFLAGS) $(IFLAGS) $(ARCHFLAGS) $< -o $@
$(BIN): $(OBJS)
$(CXX) $(CFLAGS) $(LDFLAGS) $(OBJS) $(IFLAGS) $(ARCHFLAGS) -o $@