⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile.inc

📁 ICCAVR中所有的库函数源码
💻 INC
字号:
CC = iccavr
AS = iasavr
INCLUDES = -I/work/v6/include -I.
PRINCLUDES = $(INCLUDES) -I/work/v6/libsrc.common/stdio

MACH = asave.o asr16.o asr32.o asr8.o div16s.o div16u.o div32.o div8s.o div8u.o elpm16.o elpm32.o emul16s.o emul32.o gpop2.o gpop3.o gpop3x.o gpop4.o gpop4x.o gpop5.o gpop5x.o gpush.o gpush2.o gpush3.o gpush3x.o gpush4.o gpush4x.o gpush5.o gpush5x.o icall.o lneg.o longutil.o lpm16.o lpm32.o lpush.o lsl16.o lsl32.o lsl8.o lsr16.o lsr32.o lsr8.o mpy16s.o mpy8s.o mul32.o pmstruct.o struct.o

AVR = putchar.o getchar.o eepromr.o eepromw.o eepromrbytes.o eepromwbytes.o _256eeprom.o spi.o hwstack.o stackcheck.o stackovf.o setjmp.o stdarg.o eepromrm169.o eepromwm169.o eepromrbytesm169.o eepromwbytesm169.o

FP = fp2int.o fpint2fp.o fputil.o fabs.o fpadd.o fpdiv.o fpcmp.o fpmul.o fpemul.o fpneg.o fputil2.o fputil3.o

# CONST runtime functions
RTL_CONST = cstrlen.o cstrcmp.o cstrcpy.o cstrcat.o csprintf.o cprintf.o cstrstr.o cstrstrx.o cstrncpy.o

# asm runtime functions
RTL = abs.o memchr.o memcmp.o memcpy.o memset.o strcat.o strchr.o strcspn.o strcmp.o strcpy.o strlen.o strncat.o strncmp.o strncpy.o strrchr.o strspn.o strstr.o

FILES = $(MACH) $(AVR) $(FP) $(RTL_CONST)

_PRINTS = _printf.o lpprint.o fpprint.o _cprintf.o clpprint.o cfpprint.o

.SUFFIXES:	.c .s .o

.c.o:
	$(CC) $(CFLAGS) -e -A $(INCLUDES) -c $*.c

.s.o:
	$(AS) $(ASFLAGS) $*.s

all:	mach.a $(RTL) $(_PRINTS)
	(cd ../libsrc.common/alloc;	\
		make CC=$(CC) AS=$(AS) "CFLAGS=$(CFLAGS)" ASFLAGS=$(ASFLAGS))
	(cd ../libsrc.common/conversion;\
		make CC=$(CC) AS=$(AS) "CFLAGS=$(CFLAGS)" ASFLAGS=$(ASFLAGS))
	(cd ../libsrc.common/ctype;	\
		make CC=$(CC) AS=$(AS) "CFLAGS=$(CFLAGS)" ASFLAGS=$(ASFLAGS))
#	(cd ../libsrc.common/math;	\
#		make CC=$(CC) AS=$(AS) "CFLAGS=$(CFLAGS)" ASFLAGS=$(ASFLAGS))
	(cd ../libsrc.common/math.salov;\
		make CC=$(CC) AS=$(AS) "CFLAGS=$(CFLAGS)" ASFLAGS=$(ASFLAGS))
	(cd ../libsrc.common/stdio;	\
		make CC=$(CC) AS=$(AS) "CFLAGS=$(CFLAGS)" ASFLAGS=$(ASFLAGS))
	(cd ../libsrc.common/stdlib;	\
		make CC=$(CC) AS=$(AS) "CFLAGS=$(CFLAGS)" ASFLAGS=$(ASFLAGS))
	(cd ../libsrc.common/string;	\
		make CC=$(CC) AS=$(AS) "CFLAGS=$(CFLAGS)" ASFLAGS=$(ASFLAGS))
	cat mach.a ../libsrc.common/alloc/*.a ../libsrc.common/conversion/*.a ../libsrc.common/ctype/*.a ../libsrc.common/math.salov/*.a ../libsrc.common/stdio/*.a ../libsrc.common/stdlib/*.a ../libsrc.common/string/*.a > libc$(TARGET).a
	ilibw -a libc$(TARGET).a $(RTL)
	ilibw -a libc$(TARGET).a _printf.o _cprintf.o
	ilibw -a liblp$(TARGET).a lpprint.o clpprint.o
	ilibw -a libfp$(TARGET).a fpprint.o cfpprint.o

_printf.o:  _printf.c
	$(CC) $(CFLAGS) -DMINIMAL_PRINTF -e -A $(PRINCLUDES) -c $*.c

lpprint.o:  _printf.c
	$(CC) -o lpprint.o $(CFLAGS) -e -A $(PRINCLUDES) -c _printf.c

fpprint.o:  _printf.c
	$(CC) -o fpprint.o $(CFLAGS) -DFLOAT_PRINTF -e -A $(PRINCLUDES) -c _printf.c

_cprintf.o:  _cprintf.c
	$(CC) $(CFLAGS) -DMINIMAL_PRINTF -e -A $(PRINCLUDES) -c $*.c

clpprint.o:  _cprintf.c
	$(CC) -o clpprint.o $(CFLAGS) -e -A $(PRINCLUDES) -c _cprintf.c

cfpprint.o:  _cprintf.c
	$(CC) -o cfpprint.o $(CFLAGS) -DFLOAT_PRINTF -e -A $(PRINCLUDES) -c _cprintf.c

mach.a: $(FILES)
	ilibw -a mach.a $(FILES)

clean:	clean_o
	-rm *.a

clean_o:
	-rm *.o
	-(cd ../libsrc.common; rm alloc/*.o conversion/*.o ctype/*.o math/*.o math.salov/*.o stdio/*.o stdlib/*.o string/*.o)

⌨️ 快捷键说明

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