Advertisement
Guest User

Untitled

a guest
Sep 20th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. project_dir
  2. |-Makefile
  3. |-run_tests.sh
  4. |
  5. |__source
  6. | |-program1.cpp
  7. | |-program2.cpp
  8. |
  9. |__bin
  10. |-program1
  11. |-program2
  12.  
  13. #Current make system
  14. BIN=./bin/
  15. SOURCE=./source/
  16.  
  17. LIST=program1 program2...
  18.  
  19. all: $(LIST)
  20.  
  21. %: $(SOURCE)%.cpp
  22. $(CC) $(INC) $< $(CFLAGS) -o $(BIN)$@ $(LIBS)
  23.  
  24. #Current make system
  25. BIN=./bin/
  26. SOURCE=./source/
  27.  
  28. LIST=$(BIN)/program1 $(BIN)/program2...
  29.  
  30. all: $(LIST)
  31.  
  32. $(BIN)/%: $(SOURCE)%.cpp
  33. $(CC) $(INC) $< $(CFLAGS) -o $@ $(LIBS)
  34.  
  35. PROG=program1 program2
  36. LIST=$(addprefix $(BIN)/, $(PROG))
  37.  
  38. CC = g++
  39. LD = g++
  40. CFLAG = -Wall
  41. PROG_NAME = prog
  42.  
  43. SRC_DIR = src
  44. BUILD_DIR = build
  45. SRC_LIST = $(wildcard $(SRC_DIR)/*.cpp)
  46. OBJ_LIST = $(BUILD_DIR)/$(notdir $(SRC_LIST:.cpp=.o))
  47.  
  48. .PHONY: all clean $(PROG_NAME) compile
  49.  
  50. all: $(PROG_NAME)
  51.  
  52. compile:
  53. @echo $(notdir $(SRC_LIST))
  54. @echo $(OBJ_LIST)
  55. $(CC) -c $(CFLAG) $(SRC_LIST) -o $(OBJ_LIST)
  56.  
  57. $(PROG_NAME): compile
  58. $(LD) $(OBJ_LIST) -o $@
  59.  
  60.  
  61. clean:
  62. rm -f $(PROG_NAME) $(BUILD_DIR)/*.o
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement