From 9ed9765bfe01b73f4ce64dd5ccb1ce448d951a03 Mon Sep 17 00:00:00 2001 From: Felix Arends Date: Fri, 16 Aug 2002 14:08:50 +0000 Subject: windows makefile for firmware git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1784 a1c6a512-1295-4272-9138-f99709370657 --- apps/main.c | 2 +- apps/win32.mak | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 apps/win32.mak diff --git a/apps/main.c b/apps/main.c index 22fd8f6051..4d408836f4 100644 --- a/apps/main.c +++ b/apps/main.c @@ -50,7 +50,7 @@ #endif -char appsversion[]=APPSVERSION; +char appsversion[]="WIN32"; void init(void); diff --git a/apps/win32.mak b/apps/win32.mak new file mode 100644 index 0000000000..1f7a1f44fc --- /dev/null +++ b/apps/win32.mak @@ -0,0 +1,87 @@ +# __________ __ ___. +# Open \______ \ ____ ____ | | _\_ |__ _______ ___ +# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# $Id$ +# + +CC = sh-elf-gcc +LD = sh-elf-ld +AR = sh-elf-ar +AS = sh-elf-as +OC = sh-elf-objcopy + +FIRMWARE := ../firmware + +INCLUDES= -I$(FIRMWARE)/include -I$(FIRMWARE) -I$(FIRMWARE)/common -I$(FIRMWARE)/drivers -I$(FIRMWARE)/malloc -I./recorder + +# Pick a target to build for +#TARGET = -DARCHOS_PLAYER=1 +#TARGET = -DARCHOS_PLAYER_OLD=1 +TARGET = -DARCHOS_RECORDER=1 + +# store output files in this directory: +OBJDIR = . +DEFINES = -DLCD_PROPFONTS + +CFLAGS = -O -W -Wall -m1 -nostdlib -Wstrict-prototypes -fomit-frame-pointer -fschedule-insns $(INCLUDES) $(TARGET) $(DEFINES) +AFLAGS += -small -relax + +ifdef DEBUG + DEFINES := -DDEBUG + CFLAGS += -g + LDS := $(FIRMWARE)/gdb.lds +else +#ifeq ($(TARGET),-DARCHOS_RECORDER) + LDS := $(FIRMWARE)/app.lds +#else +# LDS := $(FIRMWARE)/player.lds +#endif +endif + +SRC := $(wildcard *.c) + +#ifeq ($(TARGET),-DARCHOS_RECORDER) + SRC += $(wildcard recorder/*.c) + CFLAGS += -Irecorder + OUTNAME = ajbrec.ajz +#else +# OUTNAME = archos.mod +#endif + +OBJS := $(SRC:%.c=$(OBJDIR)/%.o) + +all : $(OBJDIR)/$(OUTNAME) + +$(OBJDIR)/librockbox.a: + make -C $(FIRMWARE) -f win32.mak TARGET=$(TARGET) DEBUG=$(DEBUG) OBJDIR=$(OBJDIR) + +$(OBJDIR)/archos.elf : $(OBJS) $(LDS) $(OBJDIR)/librockbox.a + $(CC) -Os -nostdlib -o $(OBJDIR)/archos.elf $(OBJS) -L$(OBJDIR) -lrockbox -lgcc -L$(FIRMWARE) -T$(LDS) -Wl,-Map,$(OBJDIR)/archos.map + +$(OBJDIR)/archos.bin : $(OBJDIR)/archos.elf + $(OC) -O binary $(OBJDIR)/archos.elf $(OBJDIR)/archos.bin + +$(OBJDIR)/archos.asm: $(OBJDIR)/archos.bin + ../tools/sh2d -sh1 $(OBJDIR)/archos.bin > $(OBJDIR)/archos.asm + +$(OBJDIR)/$(OUTNAME) : $(OBJDIR)/archos.bin + scramble $(OBJDIR)/archos.bin $(OBJDIR)/$(OUTNAME) + +$(OBJDIR)/%.o: %.c + $(CC) $(CFLAGS) -c $< -o $@ + +dist: + tar czvf dist.tar.gz Makefile main.c start.s app.lds + +clean: + -rm -f $(OBJS) $(OBJDIR)/$(OUTNAME) $(OBJDIR)/archos.asm \ + $(OBJDIR)/archos.bin $(OBJDIR)/archos.elf $(OBJDIR)/archos.map + -$(RM) -r $(OBJDIR)/$(DEPS) + +DEPS:=.deps +DEPDIRS:=$(DEPS) $(DEPS)/recorder + +-include $(SRC:%.c=$(OBJDIR)/$(DEPS)/%.d) -- cgit v1.2.3