Guest User

Untitled

a guest
Jul 24th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 0.88 KB | None | 0 0
  1. PH  = ../phoenix
  2. DIR = ./out
  3. APP = impulse
  4. BIN = $(APP)
  5.  
  6. CXXFILES   = $(wildcard *.cpp)
  7. HEADERS    = $(wildcard *.hpp)
  8. HEADERS_FMT = $(wildcard formats/*.hpp)
  9. GTK_LIB = `pkg-config --libs gtk+-2.0` -lX11
  10. OBJ      = $(DIR)/phoenix.o $(DIR)/$(CXXFILES:.cpp=.o)
  11. CXX      = g++
  12. CXXINCS  = -I"$(PH)" -I.
  13. CXXFLAGS = $(CXXINCS) -std=gnu++0x -DPHOENIX_GTK `pkg-config --cflags gtk+-2.0` -g -fpermissive
  14. RM       = rm -f
  15.  
  16. .PHONY: all clean
  17.  
  18. all: mkout $(DIR)/$(BIN)
  19.  
  20. clean:
  21.     $(shell if [ -d "$(DIR)" ]; then $(RM) -r "$(DIR)"; fi)
  22.  
  23. mkout:
  24.     $(shell if [ ! -d "$(DIR)" ]; then mkdir "$(DIR)"; fi)
  25.  
  26. # build phoenix
  27. $(DIR)/phoenix.o: $(PH)/phoenix.cpp
  28.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  29.  
  30. # build app
  31. $(DIR)/%.o: %.cpp $(HEADERS) $(HEADERS_FMT)
  32.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  33. $(DIR)/%.o: %.cc
  34.     $(CXX) $(CXXFLAGS) -c -o $@ $<
  35. $(DIR)/$(BIN): $(OBJ)
  36.     $(CXX) -s -o $@ $(OBJ) $(GTK_LIB)
Add Comment
Please, Sign In to add comment