39 lines
615 B
Makefile
39 lines
615 B
Makefile
CXX ?= c++
|
|
CPPFLAGS ?= -O2
|
|
CPPFLAGS += -Wall \
|
|
-Wextra \
|
|
-pipe \
|
|
-Wmissing-declarations \
|
|
-pedantic \
|
|
-fstack-protector-strong \
|
|
|
|
LDFLAGS=-lncursesw -Wl,-z,relro,-z,now
|
|
|
|
SOURCES = main.cpp \
|
|
chess.cpp \
|
|
bishop.cpp \
|
|
rook.cpp \
|
|
queen.cpp \
|
|
king.cpp \
|
|
knight.cpp \
|
|
pawn.cpp
|
|
|
|
OBJECTS = $(SOURCES:.cpp=.o)
|
|
EXECUTABLE = chess
|
|
|
|
all: $(SOURCES) $(EXECUTABLE)
|
|
|
|
$(EXECUTABLE): $(OBJECTS)
|
|
@echo ' LD $@'
|
|
@$(CXX) $(LDFLAGS) $(OBJECTS) -o $@
|
|
|
|
.cpp.o:
|
|
@echo ' CC $@'
|
|
@$(CXX) $(CPPFLAGS) -c $< -o $@
|
|
|
|
clean:
|
|
rm -rf $(OBJECTS) $(EXECUTABLE)
|
|
|
|
distclean:
|
|
rm -rf $(OBJECTS)
|