OBJPATH := obj SRCPATH := src OVERRIDE := override INCPATH := . CLEO_DIR := ../../.. PLCD_DIR := $(CLEO_DIR)/devkit/plcd LIBSPID_STUBS_DIR := $(CLEO_DIR)/devkit/tests/libspid/stubs LIBMME_DIR := $(CLEO_DIR)/application/libmme LIBSPID_DIR := $(CLEO_DIR)/application/libspid LINUX_DIR := $(CLEO_DIR)/linux-2.6.25.10-spc300 PLCD_SRC_DIR := $(PLCD_DIR)/src GIT_DIR := $(CLEO_DIR)/.. COMMON_INC := $(GIT_DIR)/common/include INCLUDES := -I$(INCPATH) \ -I$(OVERRIDE) \ -I$(PLCD_DIR)/inc \ -I$(COMMON_INC) \ $(shell $(LIBSPID_DIR)/libspid-config --I_opts) CC := gcc CFLAGS := $(INCLUDES) -MMD -Wall -g -fprofile-arcs -ftest-coverage LFLAGS := -lcheck -fprofile-arcs UTEST_BASE := utest_launcher.o libspid_stub.o UTEST_BASE_OBJ := $(addprefix $(OBJPATH)/, $(UTEST_BASE)) SRCS := $(subst $(SRCPATH)/,,$(wildcard $(SRCPATH)/*.c)) \ $(subst $(PLCD_SRC_DIR)/,,$(wildcard $(PLCD_SRC_DIR)/*.c)) OBJS := $(addprefix $(OBJPATH)/,$(SRCS:.c=.o)) $(UTEST_BASE_OBJ) DEPS := $(patsubst %o,%d,$(OBJS)) COVS := $(patsubst %o,%gcno,$(OBJS)) $(patsubst %o,%gcda,$(OBJS)) UTEST_AUTOSWITCH_BIN := $(OBJPATH)/utest_plcd_autoswitch COVS := $(COVS) $(UTEST_AUTOSWITCH_BIN).info UTEST_PLCD_AUTOSWITCH_OBJ := $(UTEST_BASE_OBJ) \ $(addprefix $(OBJPATH)/, utest_plcd_autoswitch.o \ plcd_autoswitch.o ) $(UTEST_AUTOSWITCH_BIN): $(UTEST_PLCD_AUTOSWITCH_OBJ) $(CC) -o $@ $(UTEST_PLCD_AUTOSWITCH_OBJ) $(LFLAGS) all: $(UTEST_AUTOSWITCH_BIN) $(OBJPATH)/%.o: $(PLCD_SRC_DIR)/%.c $(CC) $(CFLAGS) -o $@ -c $< $(OBJPATH)/%.o: $(SRCPATH)/%.c $(CC) $(CFLAGS) -o $@ -c $< $(OBJPATH)/%.o: $(LIBSPID_STUBS_DIR)/%.c $(CC) $(CFLAGS) -o $@ -c $< $(OBJS): | $(OBJPATH) $(OBJPATH): mkdir $(OBJPATH) -include $(DEPS) .PHONY: all clean clean: rm -f $(OBJPATH)/utest_plcd_autoswitch rm -f $(OBJS) rm -f $(DEPS) rm -f $(COVS) rmdir $(OBJPATH)