make.mak

来自「专业汽车级嵌入式操作系统OSEK的源代码」· MAK 代码 · 共 115 行

MAK
115
字号
.SUFFIXES:default: def_targetinclude environment.makinclude targetdef.makRAM_TARGET   := $(TARGET)_ram.elfROM_TARGET   := $(TARGET)_rom.elfSAMBA_TARGET := $(TARGET)_samba_ram.binROMBIN_TARGET := $(TARGET)_rom.binRAM_LDSCRIPT   := $(TARGET)_ram.ldROM_LDSCRIPT   := $(TARGET)_rom.ldSAMBA_LDSCRIPT := $(TARGET)_samba.ldS_OBJECTS := $(S_SOURCES:.s=.o)C_OBJECTS := $(C_SOURCES:.c=.o) $(C_RAMSOURCES:.c=.oram)C_OPTIMISATION_FLAGS = -Os#C_OPTIMISATION_FLAGS = -O0CFLAGS = -c -ffreestanding -fsigned-char -mcpu=arm7tdmi  \	$(C_OPTIMISATION_FLAGS) -g  \	-Winline -Wall -Werror-implicit-function-declaration \	-I. -I$(VM_DIR) \         -mthumb -mthumb-interwork -ffunction-sections -fdata-sectionsLDFLAGS = -Map $@.map -L$(LIBPREFIX) -lm -cref --gc-sections $(LIBC)ASFLAGS = -mthumb-interwork  -mfpu=softfpadef_target: allALL_TARGETS := $(RAM_TARGET) $(ROM_TARGET) $(ROMBIN_TARGET) $(SAMBA_TARGET).PHONY:  allall:  BuildMessage $(ALL_TARGETS)PHONY: TargetMessageTargetMessage:	@echo ""	@echo "Building: $(ALL_TARGETS)"	@echo ""	@echo "C sources: $(C_SOURCES) to $(C_OBJECTS)"	@echo ""	@echo "Assembler sources: $(S_SOURCES) to $(S_OBJECTS)"	@echo ""	@echo "LD source: $(LDSCRIPT_SOURCE)"	@echo ""PHONY: BuildMessageBuildMessage: TargetMessage EnvironmentMessage$(SAMBA_LDSCRIPT): $(LDSCRIPT_SOURCE)	cat $< | sed -e 's/^SAMBA_ONLY//' -e '/^RAM_ONLY/d' -e'/^ROM_ONLY/d' >$@$(RAM_LDSCRIPT): $(LDSCRIPT_SOURCE)	cat $< | sed -e 's/^RAM_ONLY//' -e'/^ROM_ONLY/d' -e'/^SAMBA_ONLY/d' >$@$(ROM_LDSCRIPT): $(LDSCRIPT_SOURCE)	cat $< | sed -e 's/^ROM_ONLY//' -e'/^RAM_ONLY/d' -e'/^SAMBA_ONLY/d' >$@$(SAMBA_TARGET)_elf: $(C_OBJECTS) $(S_OBJECTS) $(SAMBA_LDSCRIPT)	@echo "Linking $@"	$(LD) -o $@ $(C_OBJECTS) $(S_OBJECTS) -T $(SAMBA_LDSCRIPT) $(LIBC) $(GCC_LIB) $(LDFLAGS)$(RAM_TARGET): $(C_OBJECTS) $(S_OBJECTS) $(RAM_LDSCRIPT)	@echo "Linking $@"	$(LD) -o $@ $(C_OBJECTS) $(S_OBJECTS) -T $(RAM_LDSCRIPT) $(LIBC) $(GCC_LIB) $(LDFLAGS)$(ROM_TARGET): $(C_OBJECTS) $(S_OBJECTS) $(ROM_LDSCRIPT)	@echo "Linking $@"	$(LD) -o $@ $(C_OBJECTS) $(S_OBJECTS) -T $(ROM_LDSCRIPT) $(LIBC) $(GCC_LIB) $(LDFLAGS)$(ROMBIN_TARGET): $(ROM_TARGET)	@echo "Generating binary file $@"	$(OBJCOPY) -O binary $< $@$(SAMBA_TARGET): $(SAMBA_TARGET)_elf	@echo "Generating binary file $@"	$(OBJCOPY) -O binary $< $@%.o: %.s	@echo "Assembling $< to $@"	$(AS)  $(ASFLAGS) -o $@ $< %.o: %.c	@echo "Compiling $< to $@"	$(CC) $(CFLAGS) -o $@ $< %.oram: %.c	@echo "Compiling $< to $@"	$(CC) $(CFLAGS) -o $@ $< .PHONY: cleanclean:  	@echo "Removing All Objects"	@rm -f $(S_OBJECTS) $(C_OBJECTS) *.o	@echo "Removing generated ld scripts"	@rm  -f *.ld	@echo "Removing target"	@rm -f $(ALL_TARGETS)	@echo "Removing map files"	@ rm -f *map-include $(C_SOURCES:.c=.d)

⌨️ 快捷键说明

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