diff options
Diffstat (limited to 'apps/plugins')
-rw-r--r-- | apps/plugins/Makefile | 20 | ||||
-rw-r--r-- | apps/plugins/lib/Makefile | 4 |
2 files changed, 17 insertions, 7 deletions
diff --git a/apps/plugins/Makefile b/apps/plugins/Makefile index fdabc8cf22..c19843d979 100644 --- a/apps/plugins/Makefile +++ b/apps/plugins/Makefile | |||
@@ -24,8 +24,9 @@ LDS := plugin.lds | |||
24 | LINKFILE := $(OBJDIR)/pluginlink.lds | 24 | LINKFILE := $(OBJDIR)/pluginlink.lds |
25 | DEPFILE = $(OBJDIR)/dep-plugins | 25 | DEPFILE = $(OBJDIR)/dep-plugins |
26 | 26 | ||
27 | SRC := $(shell cat SOURCES | gcc -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) \ | 27 | # This sets up 'SRC' based on the files mentioned in SOURCES |
28 | $(TARGET) $(DEFINES) $(EXTRA_DEFINES) -E -P -include "config.h" - ) | 28 | include $(TOOLSDIR)/makesrc.inc |
29 | |||
29 | ROCKS := $(SRC:%.c=$(OBJDIR)/%.rock) | 30 | ROCKS := $(SRC:%.c=$(OBJDIR)/%.rock) |
30 | SOURCES = $(SRC) | 31 | SOURCES = $(SRC) |
31 | ELFS := $(SRC:%.c=$(OBJDIR)/%.elf) | 32 | ELFS := $(SRC:%.c=$(OBJDIR)/%.elf) |
@@ -34,6 +35,8 @@ OBJS := $(SRC:%.c=$(OBJDIR)/%.o) | |||
34 | DEFS := $(SRC:%.c=$(OBJDIR)/%.def) | 35 | DEFS := $(SRC:%.c=$(OBJDIR)/%.def) |
35 | DIRS = . | 36 | DIRS = . |
36 | 37 | ||
38 | ELFDEP = $(OBJDIR)/dep-elf | ||
39 | |||
37 | #for any recorder and iRiver model | 40 | #for any recorder and iRiver model |
38 | ifneq (,$(strip $(foreach tgt,RECORDER IRIVER,$(findstring $(tgt),$(TARGET))))) | 41 | ifneq (,$(strip $(foreach tgt,RECORDER IRIVER,$(findstring $(tgt),$(TARGET))))) |
39 | SUBDIRS += rockboy | 42 | SUBDIRS += rockboy |
@@ -43,9 +46,14 @@ endif | |||
43 | all: $(OBJDIR)/libplugin.a $(ROCKS) $(SUBDIRS) $(DEPFILE) | 46 | all: $(OBJDIR)/libplugin.a $(ROCKS) $(SUBDIRS) $(DEPFILE) |
44 | 47 | ||
45 | ifndef SIMVER | 48 | ifndef SIMVER |
46 | $(OBJDIR)/%.elf: $(OBJDIR)/%.o $(LINKFILE) $(OBJDIR)/libplugin.a | 49 | |
47 | @echo "LD $@" | 50 | ELFIT=@echo "LD $@"; \ |
48 | @$(CC) $(GCCOPTS) -O -nostdlib -o $@ $< -L$(OBJDIR) $(CODECLIBS) -lplugin -lgcc -T$(LINKFILE) -Wl,-Map,$(OBJDIR)/$*.map | 51 | $(CC) $(GCCOPTS) -O -nostdlib -o $@ $< -L$(OBJDIR) $(CODECLIBS) -lplugin -lgcc -T$(LINKFILE) -Wl,-Map,$(OBJDIR)/$*.map |
52 | |||
53 | $(ELFDEP): $(SOURCES) | ||
54 | perl elfdep.pl > $(ELFDEP) | ||
55 | |||
56 | -include $(ELFDEP) | ||
49 | 57 | ||
50 | $(OBJDIR)/%.rock : $(OBJDIR)/%.elf | 58 | $(OBJDIR)/%.rock : $(OBJDIR)/%.elf |
51 | @echo "OBJCOPY $<" | 59 | @echo "OBJCOPY $<" |
@@ -109,7 +117,7 @@ $(SUBDIRS): | |||
109 | clean: | 117 | clean: |
110 | @echo "cleaning plugins" | 118 | @echo "cleaning plugins" |
111 | @rm -f $(ROCKS) $(LINKFILE) $(OBJDIR)/*.rock $(DEPFILE) $(ELFS) \ | 119 | @rm -f $(ROCKS) $(LINKFILE) $(OBJDIR)/*.rock $(DEPFILE) $(ELFS) \ |
112 | $(OBJS) $(DEFS) | 120 | $(OBJS) $(DEFS) $(ELFDEP) |
113 | @$(MAKE) -C lib clean | 121 | @$(MAKE) -C lib clean |
114 | @$(MAKE) -C rockboy clean | 122 | @$(MAKE) -C rockboy clean |
115 | 123 | ||
diff --git a/apps/plugins/lib/Makefile b/apps/plugins/lib/Makefile index b492bb578f..fbd4cefbe0 100644 --- a/apps/plugins/lib/Makefile +++ b/apps/plugins/lib/Makefile | |||
@@ -20,7 +20,9 @@ endif | |||
20 | CFLAGS = $(GCCOPTS) \ | 20 | CFLAGS = $(GCCOPTS) \ |
21 | $(INCLUDES) $(TARGET) $(EXTRA_DEFINES) -DMEM=${MEMORYSIZE} -DPLUGIN | 21 | $(INCLUDES) $(TARGET) $(EXTRA_DEFINES) -DMEM=${MEMORYSIZE} -DPLUGIN |
22 | 22 | ||
23 | SRC := $(shell cat SOURCES | gcc -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) $(TARGET) $(DEFINES) $(EXTRA_DEFINES) -E -P -include "config.h" - ) | 23 | # This sets up 'SRC' based on the files mentioned in SOURCES |
24 | include $(TOOLSDIR)/makesrc.inc | ||
25 | |||
24 | SOURCES = $(SRC) | 26 | SOURCES = $(SRC) |
25 | OBJS := $(SRC:%.c=$(OBJDIR)/%.o) | 27 | OBJS := $(SRC:%.c=$(OBJDIR)/%.o) |
26 | DEPFILE = $(OBJDIR)/dep-pluginlib | 28 | DEPFILE = $(OBJDIR)/dep-pluginlib |