Advertisement
Guest User

Makefile

a guest
Mar 20th, 2015
344
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 0.98 KB | None | 0 0
  1. NAME    = aart
  2.  
  3. CC      = gcc
  4. PROF    = -O -g
  5.  
  6. C_FLAGS = -Wall $(PROF)
  7. L_FLAGS = -lstdc++ -lpng
  8.  
  9. OBJ_DIR = obj
  10.  
  11. SRC_FILES := $(wildcard *.cpp)
  12. O_FILES   := $(patsubst %.cpp,$(OBJ_DIR)/%.o,$(SRC_FILES))
  13.  
  14. all:
  15.     @$(MAKE) dynamically_linked -s
  16.  
  17. dynamically_linked: $(O_FILES)
  18.     @printf "\033[1;33mMaking \033[37m   ...."
  19.     $(CC) -o ../$(NAME) $(O_FILES) $(L_FLAGS)
  20.     @printf "\033[1;32m Dynamically linked %s DONE!\033[0m\n" $(NAME)
  21.  
  22. $(OBJ_DIR)/more/%.o: more/%.cpp
  23.         @printf "\033[1m\033[36mCompiling \033[37m....\033[1;34m %-30s\033[1;33m%6s\033[31m lines\033[0m \n" more/$*.cpp "`wc -l more/$*.cpp | cut -f1 -d' '`"
  24.         @$(CC) $< $(C_FLAGS) -c -o $@
  25.  
  26. $(OBJ_DIR)/%.o: %.cpp
  27.         @printf "\033[1m\033[31mCompiling \033[37m....\033[34m %-30s\033[33m%6s\033[31m lines\033[0m \n" $*.cpp "`wc -l $*.cpp | cut -f1 -d' '`"
  28.         @$(CC) $< $(C_FLAGS) -c -o $@
  29.  
  30. clean:
  31.     @printf "\033[1;36mCleaning up\033[37m ...."
  32.     @rm -f $(O_FILES) *~ *.bak *.orig *.rej
  33.     @printf "\033[1;37m ALL CLEAN!\033[0m\n"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement