blob: 81eb814c8f9104adf0fa2c364711adc17120acdf (
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
|
CC := clang++
MAKEFILE_DIR := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
DEFINES :=
CFLAGS := -Wall -Wextra -std=c++20 $(DEFINES) -I$(MAKEFILE_DIR)/fmt/include
LDFLAGS := -L$(MAKEFILE_DIR)/fmt/build -lfmt -static
SRCS := $(wildcard *.cpp)
HDRS := $(wildcard *.h)
OBJS := $(SRCS:.cpp=.o)
EXE := server
.PHONY: all
all: $(EXE)
$(EXE): $(OBJS)
$(CC) -o $@ $^ $(LDFLAGS)
# Hack: any header change causes a full recompilation of everything.
%.o: %.cpp $(HDRS)
$(CC) $(CFLAGS) -c -o $@ $<
.PHONY: clean
clean:
@rm -f $(OBJS) $(EXE)
.PHONY: debug
debug:
@echo "CC: $(CC)"
@echo "MAKEFILE_DIR: $(MAKEFILE_DIR)"
@echo "STT_TOP: $(STT_TOP)"
@echo "OBJS: $(OBJS)"
|