Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- project_dir
- |-Makefile
- |-run_tests.sh
- |
- |__source
- | |-program1.cpp
- | |-program2.cpp
- |
- |__bin
- |-program1
- |-program2
- #Current make system
- BIN=./bin/
- SOURCE=./source/
- LIST=program1 program2...
- all: $(LIST)
- %: $(SOURCE)%.cpp
- $(CC) $(INC) $< $(CFLAGS) -o $(BIN)$@ $(LIBS)
- #Current make system
- BIN=./bin/
- SOURCE=./source/
- LIST=$(BIN)/program1 $(BIN)/program2...
- all: $(LIST)
- $(BIN)/%: $(SOURCE)%.cpp
- $(CC) $(INC) $< $(CFLAGS) -o $@ $(LIBS)
- PROG=program1 program2
- LIST=$(addprefix $(BIN)/, $(PROG))
- CC = g++
- LD = g++
- CFLAG = -Wall
- PROG_NAME = prog
- SRC_DIR = src
- BUILD_DIR = build
- SRC_LIST = $(wildcard $(SRC_DIR)/*.cpp)
- OBJ_LIST = $(BUILD_DIR)/$(notdir $(SRC_LIST:.cpp=.o))
- .PHONY: all clean $(PROG_NAME) compile
- all: $(PROG_NAME)
- compile:
- @echo $(notdir $(SRC_LIST))
- @echo $(OBJ_LIST)
- $(CC) -c $(CFLAG) $(SRC_LIST) -o $(OBJ_LIST)
- $(PROG_NAME): compile
- $(LD) $(OBJ_LIST) -o $@
- clean:
- rm -f $(PROG_NAME) $(BUILD_DIR)/*.o
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement