makefile 577 B

12345678910111213141516171819202122232425262728293031323334353637
  1. IDIR= .
  2. CXX= g++
  3. STRIP= strip
  4. CXXFLAGS= -std=c++14 -Wall
  5. LNFLAGS=
  6. DEPS= Bitfield.h
  7. ifeq ($(OS),Windows_NT)
  8. EXECUTABLE= chessy.exe
  9. else
  10. EXECUTABLE= chessy
  11. endif
  12. SRC= $(wildcard *.cpp)
  13. OBJ= $(patsubst %.cpp, %.o, $(SRC))
  14. %.o: %.cpp
  15. $(CXX) $(CXXFLAGS) -c -o $@ $<
  16. $(EXECUTABLE): $(OBJ)
  17. $(CXX) -o $@ $^ $(LNFLAGS)
  18. all: chessy
  19. release: CXXFLAGS += -O3 -march=native
  20. release: $(EXECUTABLE)
  21. # $(STRIP) $(EXECUTABLE)
  22. flto: CXXFLAGS += -flto
  23. flto: LNFLAGS += -flto
  24. flto: release
  25. .PHONY: clean
  26. .SUFFIXES:
  27. clean:
  28. rm -f *.o chessy