makefile

来自「一款MP3 Player Firmware 的原代码,非常有参考价值」· 代码 · 共 101 行

TXT
101
字号
SDCCFLAGS = --model-large --peep-file peephole.def#SDCCFLAGS = --model-large# Only for hacking on SDCC (creates lots of SDCC debug info)#SDCCFLAGS = --model-large --peep-file peephole.def --dumpall%.hex : %.asm	as31 -l $<%.rel : %.c %.h peephole.def	sdcc $(SDCCFLAGS) -c $<#./sloc_purge $*.asm > $*.tas#asx8051 -plosgff $*.tasall: mp3player.hex lcd.hex pm2_mp3.hex player.hex devmain.hex main.hex# there are four builds... mp3player.hex has everything and it is the# one that must be distributed to end users.  The other three include# less stuff, which allows developers to have quick download times.# Developers only coding in C should download "main.hex" (after erasing# with 'X').  Developers also working on drivers should use "devmain.hex"# (after erasing with 'Y').# "mp3player.hex" is the full code to distribute to end usersmp3player.hex: drivers.hex p02_0609.hex isr.hex nodram.mcs mp3.mcs \test_dram.hex erase0.hex erase1.hex old.hex main.hex	perl merge -0 isr.hex test_dram.hex erase0.hex \	old.hex -1 isr.hex drivers.hex p02_0609.hex nodram.mcs \	mp3.mcs erase1.hex -0 main.hex > mp3player.hex# "player.hex" is a complete download without 0.1.2 or extra stuffplayer.hex: drivers.hex p02_0609.hex isr.hex mp3.mcs erase0.hex \erase1.hex main.hex	perl merge -0 isr.hex erase0.hex main.hex\	-1 isr.hex drivers.hex p02_0609.hex \	mp3.mcs erase1.hex -0 > player.hex# "devmain.hex" is all the code including drivers ('Y' to erase)devmain.hex: drivers.hex isr.hex main.hex	perl merge -0 isr.hex main.hex \	-1 isr.hex drivers.hex -0 > devmain.hex# "main.hex" is just the portion built by SDCC ('X' to erase)main.hex: main.ihx main_hdr.hex	packihx main.ihx > main.tmp	perl merge -0 main.tmp main_hdr.hex > main.hexmain.ihx: main.c paulmon2.rel as31glue.rel startup.rel printf.rel \display.rel parse.rel malloc.rel playlist.rel stricmp.rel sta013.rel \malloc.rel dirlist.rel rand.rel id3.rel params.rel treedir.rel	sdcc $(SDCCFLAGS) --code-loc 0x3040 --data-loc 0x40 \	  --xram-loc 0x1000 --stack-after-data --idata-loc 0xFC \	  main.c paulmon2.rel as31glue.rel startup.rel printf.rel \	  display.rel parse.rel stricmp.rel sta013.rel malloc.rel \	  playlist.rel dirlist.rel rand.rel id3.rel params.rel \	  treedir.rel	perl dseg_checkpaulmon2.rel: paulmon2.asx	asx8051 -slop paulmon2.asxas31glue.rel: as31glue.asx	asx8051 -slop as31glue.asxisr.asm: isr.asi drivers.asm	perl asi2asm isr.asi > isr.asmp02_0609.hex: p02_0609.bin	perl hexfmt p02_0609.bin > p02_0609.hexnodram.mcs mp3.mcs: mp3.mcs.master nodram.mcs.master	cp mp3.mcs.master mp3.mcs	cp nodram.mcs.master nodram.mcs	@echo "It is normal for this next step to have an error."	-get_mp3_mcs_fileslcd.asm: jw002.asm font0.txt font1.txt font2.txt font3.txt	cp jw002.asm lcd.asm	perl font2asm font0.txt >> lcd.asm	perl font2asm font1.txt >> lcd.asm	perl font2asm font2.txt >> lcd.asm	perl font2asm font3.txt >> lcd.asmclean:	rm -f *.hex *.lst *.bit bit2mcs *.mcs *.bit *.tas core	rm -f *.cdb *.lnk *.ihx *.lst *.rel *.rst *.sym *.map *.fdl	rm -f *.dumpgcse *.dumpdeadcode *.dumpdflow *.dumploop	rm -f *.dumploopd *.dumploopg *.dumplrange *.dumppack	rm -f *.dumprange *.dumprassgn *.dumpraw0 *.dumpraw1	rm -f main.tmp isr.asm main.asm printf.asm startup.asm	rm -f lcd.asm display.asm parse.asm malloc.asm playlist.asm	rm -f stricmp.asm sta013.asm malloc.asm playlist.asm main.mem	rm -f dirlist.asm rand.asm id3.asm params.asm treedir.asm

⌨️ 快捷键说明

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