1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
mainfile ?= main.cpp
CC := g++
C_FLAGS := -g -Wall C_FLAGS += $(opts) C_ALL_FILES := $(wildcard *.c) C_MAIN_FILES := $(wildcard *main.c) C_TMP_FILE := $(wildcard *tmp*.c) C_FILES := $(filter-out $(C_MAIN_FILES) $(C_TMP_FILE), $(C_ALL_FILES)) C_FILES += $(mainfile) C_OBJS := $(patsubst %.c,%.o,$(C_FILES))
CPP_FLAGS := -g -Wall CPP_FLAGS += $(opts) CPP_ALL_FILES := $(wildcard *.cpp) CPP_MAIN_FILES := $(wildcard *main.cpp) CPP_TMP_FILE := $(wildcard *tmp*.cpp) CPP_FILES := $(filter-out $(CPP_MAIN_FILES) $(CPP_TMP_FILE), $(CPP_ALL_FILES)) CPP_FILES += $(mainfile) CPP_OBJS := $(patsubst %.cpp,%.o,$(CPP_FILES))
demo: $(CPP_OBJS) $(CC) -o demo $(CPP_FLAGS) $(CPP_OBJS)
%.o: %.cpp g++ -c $(CPP_FLAGS) $< -o $@
%.o: %.c gcc -c $(C_FLAGS) $< -o $@
.PHONY: clean clean: rm -f *.o rm -f demo
|