makefile

来自「GBA平台上《特训》游戏的源代码」· 代码 · 共 44 行

TXT
44
字号
.SFILES    =   crt0.s
.CFILES    =   main.c
.OFILES    =   $(.SFILES:.s=.o) $(.CFILES:.c=.o)

GSDIR	   =    c:/gsagb
GSINC	   =	$(GSDIR)/include
GSLIB	   =	$(GSDIR)/lib

ASFLAGS    =          -I$(GSINC) -mthumb-interwork
CFLAGS     =   -g -O2 -I$(GSINC) -mthumb-interwork \
               -nostdlib #-DNDEBUG
LDFLAGS    +=  -Map $(MAPFILE) -nostartfiles \
               -Ttext 0x08000000 -Tbss 0x03000000 \
               -L$(GSLIB) -lagbsyscall -lisagbprn -lgsagb

DEPENDFILE =   Makedepend
MAPFILE    =   main.map
TARGET_ELF =   main.elf
TARGET_BIN =   main.bin


$(TARGET_BIN): $(TARGET_ELF)
	objcopy -v -O binary $< $@

$(TARGET_ELF): $(.OFILES) Makefile $(DEPENDFILE)
	@echo > $(MAPFILE)
	$(CC) -g -o $@ $(.OFILES) -Wl,$(LDFLAGS)

.PHONY: all clean depend

all:    clean depend $(TARGET_BIN)

clean:
	-rm $(.OFILES) $(DEPENDFILE) $(MAPFILE) $(TARGET_ELF) $(TARGET_BIN)

depend:
	$(CC) $(CFLAGS) -M $(.CFILES) > $(DEPENDFILE)

$(DEPENDFILE): 
	$(CC) $(CFLAGS) -M $(.CFILES) > $(DEPENDFILE)

include Gasdepend
include $(DEPENDFILE)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?