diff options
| author | Jens Arnold <amiconn@rockbox.org> | 2008-10-28 21:07:53 +0000 |
|---|---|---|
| committer | Jens Arnold <amiconn@rockbox.org> | 2008-10-28 21:07:53 +0000 |
| commit | 2c52dee83f5c796fe471e6fab15dea17a2f508ff (patch) | |
| tree | 4f90ccd3c1d5785385fea9144e5011b1943acfcd /firmware/decompressor/Makefile | |
| parent | afd2f681d18e574442f8569f1a722d5d39d79b78 (diff) | |
| download | rockbox-2c52dee83f5c796fe471e6fab15dea17a2f508ff.zip rockbox-2c52dee83f5c796fe471e6fab15dea17a2f508ff.tar.gz rockbox-2c52dee83f5c796fe471e6fab15dea17a2f508ff.tar.bz2 rockbox-2c52dee83f5c796fe471e6fab15dea17a2f508ff.tar.xz | |
Self-extractor for on-disk firmware image: UCL decompressor in SH1 assembler - less than half the size of the compiled C function, and ~45% faster.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18904 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/decompressor/Makefile')
| -rw-r--r-- | firmware/decompressor/Makefile | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/firmware/decompressor/Makefile b/firmware/decompressor/Makefile index 46d7afe..33b6aff 100644 --- a/firmware/decompressor/Makefile +++ b/firmware/decompressor/Makefile @@ -14,7 +14,8 @@ PRINTS=$(SILENT)$(call info,$(1)) LDS := link.lds LINKFILE = $(OBJDIR)/linkage.lds -OBJS := $(OBJDIR)/decompressor.o $(OBJDIR)/uclimage.o $(OBJDIR)/startup.o +OBJS := $(OBJDIR)/decompressor.o $(OBJDIR)/uclimage.o \ + $(OBJDIR)/sh_nrv2e_d8.o $(OBJDIR)/startup.o CFLAGS = $(GCCOPTS) all: $(OBJDIR)/compressed.bin @@ -25,9 +26,6 @@ $(OBJDIR)/compressed.bin : $(OBJDIR)/compressed.elf $(OBJDIR)/compressed.elf : $(OBJS) $(LINKFILE) $(call PRINTS,LD $(@F))$(CC) $(GCCOPTS) -Os -nostdlib -o $@ $(OBJS) -T$(LINKFILE) -Wl,-Map,$(OBJDIR)/compressed.map -$(LDS): $(OBJS) - - $(LINKFILE): $(LDS) $(call PRINTS,Build LDS file)cat $< | $(CC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) $(TARGET) $(DEFINES) -E -P $(ROMBUILD) - >$@ @@ -39,11 +37,15 @@ $(OBJDIR)/startup.o : startup.S $(SILENT)mkdir -p $(dir $@) $(call PRINTS,AS $<)$(CC) $(CFLAGS) -c $< -o $@ +$(OBJDIR)/sh_nrv2e_d8.o : sh_nrv2e_d8.S + $(SILENT)mkdir -p $(dir $@) + $(call PRINTS,AS $<)$(CC) $(CFLAGS) -c $< -o $@ + $(OBJDIR)/uclimage.o : $(OBJDIR)/uclimage.c $(SILENT)mkdir -p $(dir $@) $(call PRINTS,CC $(<F))$(CC) $(CFLAGS) -c $< -o $@ $(OBJDIR)/uclimage.c : $(FLASHFILE) $(TOOLSDIR)/ucl2src.pl $(SILENT)mkdir -p $(dir $@) - $(call PRINTS,UCL2SRC)perl -s $(TOOLSDIR)/ucl2src.pl -p=$(OBJDIR)/uclimage $< + $(call PRINTS,UCL2SRC $(<F))perl -s $(TOOLSDIR)/ucl2src.pl -p=$(OBJDIR)/uclimage $< |