06ab4bd6e9552f25a34556e0c81ff549687513a6
2 include $(SRCROOT)/Makefile.common
4 PBUILD := $(BUILD)
5 BUILD := $(PBUILD)/$(shell basename $(CURDIR))
7 EXES := $(BUILD)/echo_testd.out
9 ifeq ($(REMOTEPROC_MASTER),y)
10 ECHO_TEST_D_SRCS := echo_testd_remoteproc_master.c
11 EXES := $(BUILD)/echo_testd.bin
12 BUILDSHARE := $(PBUILD)/share
13 else
14 ECHO_TEST_D_SRCS := echo_testd.c
15 endif
17 ECHO_TEST_D_OBJS := $(patsubst %.c,$(BUILD)/%.o,$(ECHO_TEST_D_SRCS))
19 C_COMMON_OBJS := $(foreach f,$(C_COMMON_SRCS),$(BUILD)/$(patsubst %c,%o,$(shell basename $(f))))
21 # Create obj files dependencies
22 $(foreach f,$(ECHO_TEST_D_SRCS) $(C_COMMON_SRCS),$(eval $(patsubst %.c,%.o,$(BUILD)/$(shell basename $(f)))_dep := $(f)))
24 ECHO_TEST_D_MAP := $(patsubst %.out,%.map,$(BUILD)/echo_testd.out)
26 LIBS := -lopen_amp $(DEPS)
28 .PHONY: all clean
30 all: $(EXES)
32 ifeq ($(REMOTEPROC_MASTER),y)
33 $(BUILD)/echo_testd.out: $(ECHO_TEST_D_OBJS) $(C_COMMON_OBJS)
34 @echo 'Building echo test for baremetal : $@'
35 $(LD) -Wl,-Map=$(ECHO_TEST_D_MAP) -Wl,--gc-sections -T"$(LINKERSCRIPT)" $(LDFLAGS) -o "$@" $^ -Wl,--start-group $(BUILDSHARE)/firmware1.o $(BUILDSHARE)/firmware2.o -lstdc++ $(LIBS) -Wl,--end-group
37 $(BUILD)/echo_testd.bin: $(BUILD)/echo_testd.out
38 $(CROSS)objcopy -O binary $(BUILD)/echo_testd.out $(BUILD)/echo_testd.bin
40 else
41 $(BUILD)/echo_testd.out: $(ECHO_TEST_D_OBJS) $(C_COMMON_OBJS)
42 @echo 'Building echo test for baremetal : $@'
43 $(LD) -Wl,-Map=$(ECHO_TEST_D_MAP) -Wl,--gc-sections -T"$(LINKERSCRIPT)" $(LDFLAGS) -o "$@" $^ -Wl,--start-group $(LIBS) -Wl,--end-group
44 endif
46 clean:
47 rm -rf $(BUILD)
49 .SECONDEXPANSION:
50 %.o: $$($$@_dep)
51 mkdir -p $(dir $@);
52 $(CC) $(CFLAGS) $(ARCH_CFLAGS) $(INCLUDE) -c $< -o $@
54 # This is to avoid the warning of non-existing Makefile
55 %/Makefile.include: