Makefile
资源名称:VGAText.rar [点击查看]
上传用户:ayjyok
上传日期:2020-04-12
资源大小:27k
文件大小:2k
源码类别:
多显示器编程
开发平台:
C/C++
- ###############################################################################
- # Makefile for the project text
- ###############################################################################
- ## General Flags
- PROJECT = text
- MCU = atmega16
- TARGET = text.elf
- CC = avr-gcc.exe
- ## Options common to compile, link and assembly rules
- COMMON = -mmcu=$(MCU)
- ## Compile options common for all C compilation units.
- CFLAGS = $(COMMON)
- CFLAGS += -Wall -gdwarf-2 -O0
- CFLAGS += -MD -MP -MT $(*F).o -MF dep/$(@F).d
- ## Assembly specific flags
- ASMFLAGS = $(COMMON)
- ASMFLAGS += -x assembler-with-cpp -Wa,-gdwarf2
- ## Linker flags
- LDFLAGS = $(COMMON)
- LDFLAGS +=
- ## Intel Hex file production flags
- HEX_FLASH_FLAGS = -R .eeprom
- HEX_EEPROM_FLAGS = -j .eeprom
- HEX_EEPROM_FLAGS += --set-section-flags=.eeprom="alloc,load"
- HEX_EEPROM_FLAGS += --change-section-lma .eeprom=0
- ## Objects that must be built in order to link
- OBJECTS = text.o
- ## Objects explicitly added by the user
- LINKONLYOBJECTS =
- ## Build
- all: $(TARGET) text.hex text.eep size
- ## Compile
- text.o: ../text.c
- $(CC) $(INCLUDES) $(CFLAGS) -c $<
- ##Link
- $(TARGET): $(OBJECTS)
- $(CC) $(LDFLAGS) $(OBJECTS) $(LINKONLYOBJECTS) $(LIBDIRS) $(LIBS) -o $(TARGET)
- %.hex: $(TARGET)
- avr-objcopy -O ihex $(HEX_FLASH_FLAGS) $< $@
- %.eep: $(TARGET)
- avr-objcopy $(HEX_EEPROM_FLAGS) -O ihex $< $@
- %.lss: $(TARGET)
- avr-objdump -h -S $< > $@
- size: ${TARGET}
- @echo
- @avr-size -C --mcu=${MCU} ${TARGET}
- ## Clean target
- .PHONY: clean
- clean:
- -rm -rf $(OBJECTS) text.elf dep/* text.hex text.eep
- ## Other dependencies
- -include $(shell mkdir dep 2>/dev/null) $(wildcard dep/*)