CXX ?= c++ CXXFLAGS ?= -O2 CXXFLAGS += -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 INSTALLDIR := $(DESTDIR)/usr/bin all: $(SOURCES) $(EXECUTABLE) $(EXECUTABLE): $(OBJECTS) @echo ' LD $@' @$(CXX) $(LDFLAGS) $(OBJECTS) -o $@ .cpp.o: @echo ' CC $@' @$(CXX) $(CXXFLAGS) -c $< -o $@ clean: rm -rf $(OBJECTS) $(EXECUTABLE) distclean: rm -rf $(OBJECTS) install: install -m755 -D $(EXECUTABLE) "$(INSTALLDIR)/$(EXECUTABLE)" uninstall: rm -f "$(INSTALLDIR)/$(EXECUTABLE)"