######### nmake用 Makefile(ARM 85混在) ######### ##### マクロ定義 ここから ##### GCCPATH=/cygdrive/c/cygnus/arm-tools TOOLPATH=/cygdrive/c/ CC = $(GCCPATH)/bin/arm-uclibc-gcc PATH := $(GCCPATH)/bin:$(PATH) INCDIR = LIBDIR = CMTOOLDIR = $(TOOLPATH)/tool_arm DUMP2DIS = $(CMTOOLDIR)\dump2dis.pl ELF2DBI = $(CMTOOLDIR)\elf2dbi.exe SRCDIR = . SFILES = $(SRCDIR)\start_arm.s CFILES = $(SRCDIR)\os.c OFILES = start_arm.o os.o ARM_CFLAGS = -I$(INCDIR) -save-temps -v -DARM ARM_LDFLAGS = -Map $(MAPFILE) -nostartfiles -Tlinkscript -static -v MAPFILE = sample.map TARGET_ELF = sample.elf #ELFOPT = -mem irom -start 0xffff0000 -end 0xffff0fff -hex iram -start 0x1000 -end 0x1fff #ELFOPT = -hex irom -start 0 -end 0x1fff -hex iram -start 0x2000 -end 0x5fff ELFOPT = -hex code1 -start 0xffff0000 -end 0xffff0fff -hex code2 -start 0x580000 -end 0x583FFF -hex data -start 0x588000 -end 0x588fff ##### マクロ定義 ここまで ##### all: $(TARGET_ELF) perl $(DUMP2DIS) $(TARGET_ELF) $(ELF2DBI) $(ELFOPT) $(TARGET_ELF) $(TARGET_ELF): $(OFILES) Makefile linkscript @echo > $(MAPFILE) $(CC) -Wl,$(ARM_LDFLAGS) $(OFILES) -o $@ -N os.o: $(SRCDIR)/os.c Makefile $(CC) -gdwarf-2 -O0 -c $(ARM_CFLAGS) $(SRCDIR)/os.c start_arm.o: $(SRCDIR)/start_arm.s Makefile $(CC) -Wa,-gdwarf -c $(SRCDIR)/start_arm.s # clean: rm *.o rm *.hex rm sample.*