Advertisement
Guest User

Untitled

a guest
Feb 1st, 2019
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 0.78 KB | None | 0 0
  1. OUT = a.out
  2.  
  3. CXX = g++
  4.  
  5. CVERSION = -std=c++17
  6.  
  7. SDIR = src
  8. ODIR = obj
  9.  
  10. FLAGS = -Wredundant-decls \
  11.                 -Wcast-align \
  12.                 -Wmissing-declarations \
  13.                 -Wmissing-include-dirs \
  14.                 -Wswitch-enum \
  15.                 -Wswitch-default \
  16.                 -Wextra \
  17.                 -Wall \
  18.                 -Werror \
  19.                 -Winvalid-pch \
  20.                 -Wredundant-decls \
  21.                 -Wformat=2 \
  22.                 -Wmissing-format-attribute \
  23.                 -Wformat-nonliteral
  24.  
  25. SRC = $(wildcard $(SDIR)/*.cpp) \
  26.       $(wildcard $(SDIR)/power4/*.cpp) \
  27.       $(wildcard $(SDIR)/rl/*.cpp)
  28.  
  29. OBJ = $(patsubst $(SDIR)/%.cpp, $(ODIR)/%.o, $(SRC))
  30.  
  31. $(ODIR)/%.o: $(SDIR)/%.cpp
  32.     @mkdir -p $(dir $@)
  33.     $(CXX) $(CVERSION) -c $^ -o $@
  34.  
  35. $(OUT): $(OBJ)
  36.     g++ $(OBJ)
  37.  
  38. .PHONY: clean re run
  39.  
  40. clean:
  41.     rm -rf $(ODIR)
  42.     rm -rf $(OUT)
  43.  
  44. re: clean $(OUT)
  45.  
  46. run: $(OUT)
  47.     ./$(OUT)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement