From c6b3d38a156dd624760a8eb1bb374affd43b4f2a Mon Sep 17 00:00:00 2001 From: Björn Stenberg Date: Thu, 20 Nov 2008 11:27:31 +0000 Subject: New makefile solution: A single invocation of 'make' to build the entire tree. Fully controlled dependencies give faster and more correct recompiles. Many #include lines adjusted to conform to the new standards. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19146 a1c6a512-1295-4272-9138-f99709370657 --- apps/plugins/rockboy/Makefile | 119 -------------------------------------- apps/plugins/rockboy/SOURCES | 16 +++++ apps/plugins/rockboy/rockboy.make | 53 +++++++++++++++++ 3 files changed, 69 insertions(+), 119 deletions(-) delete mode 100644 apps/plugins/rockboy/Makefile create mode 100644 apps/plugins/rockboy/SOURCES create mode 100644 apps/plugins/rockboy/rockboy.make (limited to 'apps/plugins/rockboy') diff --git a/apps/plugins/rockboy/Makefile b/apps/plugins/rockboy/Makefile deleted file mode 100644 index 4aa8526125..0000000000 --- a/apps/plugins/rockboy/Makefile +++ /dev/null @@ -1,119 +0,0 @@ -# __________ __ ___. -# Open \______ \ ____ ____ | | _\_ |__ _______ ___ -# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / -# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < -# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ -# \/ \/ \/ \/ \/ -# $Id$ -# - -INCLUDES = -I$(APPSDIR) -I.. -I. $(TARGET_INC) -I$(FIRMDIR)/include -I$(FIRMDIR)/export \ - -I$(FIRMDIR)/common -I$(FIRMDIR)/drivers -I$(OUTDIR) -I$(BUILDDIR) -CFLAGS = $(INCLUDES) $(GCCOPTS) -O2 $(TARGET) $(EXTRA_DEFINES) \ - -DTARGET_ID=$(TARGET_ID) -DMEM=${MEMORYSIZE} -DPLUGIN -finline-functions - -ifdef APPEXTRA - INCLUDES += $(patsubst %,-I$(APPSDIR)/%,$(subst :, ,$(APPEXTRA))) -endif - -LINKFILE := $(OBJDIR)/link.lds -DEPFILE = $(OBJDIR)/dep-rockboy -SRC = cpu.c emu.c events.c fastmem.c hw.c lcd.c lcdc.c loader.c \ - mem.c menu.c rbsound.c rockboy.c rtc.c save.c sound.c sys_rockbox.c \ - ../../../firmware/common/sscanf.c - -#CFLAGS += -DDYNAREC -#SRC += dynarec.c - -SOURCES = $(SRC) -OBJS := $(SRC:%.c=$(OBJDIR)/%.o) -DIRS = . - -ifndef SIMVER -ifneq (,$(findstring RECORDER,$(TARGET))) ## Archos recorder targets - LDS := archos.lds - OUTPUT = $(OUTDIR)/rockboy.ovl -else ## iRiver target - LDS := ../plugin.lds - OUTPUT = $(OUTDIR)/rockboy.rock -endif -else ## simulators - OUTPUT = $(OUTDIR)/rockboy.rock -endif - -all: $(OUTPUT) - -ifndef SIMVER -$(OBJDIR)/rockboy.elf: $(OBJS) $(LINKFILE) - $(call PRINTS,LD $(@F))$(CC) $(CFLAGS) -o $@ $(OBJS) -L$(BUILDDIR) -lplugin -fast -lgcc \ - -T$(LINKFILE) -Wl,--gc-sections -Wl,-Map,$(OBJDIR)/rockboy.map - -$(OUTPUT): $(OBJDIR)/rockboy.elf - $(call PRINTS,OBJCOPY $(@F))$(OC) -O binary $< $@ -else - -ifeq ($(SIMVER), x11) -################################################### -# This is the X11 simulator version - -$(OUTPUT): $(OBJS) - $(call PRINTS,LD $(@F))$(CC) $(CFLAGS) $(SHARED_FLAG) $(OBJS) -L$(BUILDDIR) -lplugin -o $@ -ifeq ($(findstring CYGWIN,$(UNAME)),CYGWIN) -# 'x' must be kept or you'll have "Win32 error 5" -# $ fgrep 5 /usr/include/w32api/winerror.h | head -1 -# #define ERROR_ACCESS_DENIED 5L -else - @chmod -x $@ -endif - -else # end of x11-simulator -ifeq ($(SIMVER), sdl) -################################################### -# This is the sdl simulator version - -$(OUTPUT): $(OBJS) - $(call PRINTS,LD $(@F))$(CC) $(CFLAGS) $(SHARED_FLAG) $(OBJS) -L$(BUILDDIR) -lplugin -o $@ -ifeq ($(findstring CYGWIN,$(UNAME)),CYGWIN) -# 'x' must be kept or you'll have "Win32 error 5" -# $ fgrep 5 /usr/include/w32api/winerror.h | head -1 -# #define ERROR_ACCESS_DENIED 5L -else - @chmod -x $@ -endif - -else # end of sdl-simulator -################################################### -# This is the win32 simulator version -DLLTOOLFLAGS = --export-all -DLLWRAPFLAGS = -s --entry _DllMain@12 --target=i386-mingw32 -mno-cygwin - -$(OUTPUT): $(OBJS) - $(call PRINTS,DLL $(@F))$(DLLTOOL) $(DLLTOOLFLAGS) -z $(OBJDIR)/$*.def $(OBJS) - $(SILENT)$(DLLWRAP) $(DLLWRAPFLAGS) --def $(OBJDIR)/$*.def $(OBJS) \ - $(BUILDDIR)/libplugin.a -o $@ -ifeq ($(findstring CYGWIN,$(UNAME)),CYGWIN) -# 'x' must be kept or you'll have "Win32 error 5" -# $ fgrep 5 /usr/include/w32api/winerror.h | head -1 -# #define ERROR_ACCESS_DENIED 5L -else - @chmod -x $@ -endif -endif # end of win32-simulator -endif -endif # end of simulator section - - -include $(TOOLSDIR)/make.inc - -# MEMORYSIZE should be passed on to this makefile with the chosen memory size -# given in number of MB -$(LINKFILE): $(LDS) - $(call PRINTS,build $(@F))cat $< | $(CC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) $(TARGET) $(DEFINES) \ - -E -P - >$@ - -clean: - $(call PRINTS,cleaning rockboy)rm -rf $(OBJDIR)/rockboy - $(SILENT)rm -f $(OBJDIR)/rockboy.* $(DEPFILE) - --include $(DEPFILE) - diff --git a/apps/plugins/rockboy/SOURCES b/apps/plugins/rockboy/SOURCES new file mode 100644 index 0000000000..8806b58389 --- /dev/null +++ b/apps/plugins/rockboy/SOURCES @@ -0,0 +1,16 @@ +cpu.c +emu.c +events.c +fastmem.c +hw.c +lcd.c +lcdc.c +loader.c +mem.c +menu.c +rbsound.c +rockboy.c +rtc.c +save.c +sound.c +sys_rockbox.c diff --git a/apps/plugins/rockboy/rockboy.make b/apps/plugins/rockboy/rockboy.make new file mode 100644 index 0000000000..62196cf0b7 --- /dev/null +++ b/apps/plugins/rockboy/rockboy.make @@ -0,0 +1,53 @@ +# __________ __ ___. +# Open \______ \ ____ ____ | | _\_ |__ _______ ___ +# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# $Id: Makefile 19082 2008-11-10 23:54:24Z zagor $ +# + +ROCKBOY_SRCDIR = $(APPSDIR)/plugins/rockboy +ROCKBOY_OBJDIR = $(BUILDDIR)/apps/plugins/rockboy + +ROCKBOY_SRC := $(call preprocess, $(ROCKBOY_SRCDIR)/SOURCES) +ROCKBOY_OBJ := $(call c2obj, $(ROCKBOY_SRC)) +ROCKBOY_OBJ += $(ROCKBOY_OBJDIR)/sscanf.o + +OTHER_SRC += $(ROCKBOY_SRC) + +ifndef SIMVER +ifneq (,$(findstring RECORDER,$(TARGET))) + ## archos recorder targets + ROCKBOY_INLDS := $(ROCKBOY_SRCDIR)/archos.lds + ROCKS += $(ROCKBOY_OBJDIR)/rockboy.ovl +else + ### all other targets + ROCKBOY_INLDS := $(APPSDIR)/plugins/plugin.lds + ROCKS += $(ROCKBOY_OBJDIR)/rockboy.rock +endif + ROCKBOY_OVLFLAGS = -T$(ROCKBOY_OUTLDS) -Wl,--gc-sections -Wl,-Map,$(ROCKBOY_OBJDIR)/$*.map + ROCKBOY_OUTLDS = $(ROCKBOY_OBJDIR)/rockboy.lds +else + ### simulator + ROCKS += $(ROCKBOY_OBJDIR)/rockboy.rock + ROCKBOY_OVLFLAGS = $(SHARED_FLAG) # <-- from Makefile +endif + +$(ROCKBOY_OBJDIR)/sscanf.c: $(FIRMDIR)/common/sscanf.c + $(SILENT)mkdir -p $(dir $@) + $(call PRINTS,CP $<)cp $< $@ + +$(ROCKBOY_OBJDIR)/sscanf.o: $(ROCKBOY_OBJDIR)/sscanf.c + +$(ROCKBOY_OUTLDS): $(ROCKBOY_INLDS) $(ROCKBOY_OBJ) + $(call PRINTS,PP $(