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

📄 makefile

📁 Windows上的精简Linux系统
💻
字号:
#ident "$Id: Makefile,v 1.25 2004/01/24 21:37:22 hpa Exp $"## -----------------------------------------------------------------------##   ##   Copyright 2001-2004 H. Peter Anvin - All Rights Reserved####   This program is free software; you can redistribute it and/or modify##   it under the terms of the GNU General Public License as published by##   the Free Software Foundation, Inc., 53 Temple Place Ste 330,##   Bostom MA 02111-1307, USA; either version 2 of the License, or##   (at your option) any later version; incorporated herein by reference.#### -----------------------------------------------------------------------VERSION := $(shell cat ../version)gcc_ok   = $(shell if gcc $(1) -c -x c /dev/null -o /dev/null 2>/dev/null; \	           then echo $(1); else echo $(2); fi)M32     := $(call gcc_ok,-m32,)ALIGN   := $(call gcc_ok,-falign-functions=0 -falign-jumps=0 -falign-loops=0,-malign-functions=0 -malign-jumps=0 -malign-loops=0)CC       = gcc $(M32)CFLAGS   = -g -W -Wall -Os -fomit-frame-pointer -march=i386 $(ALIGN) \	   -DVERSION='"$(VERSION)"' -DDATE='"$(DATE)"'LDFLAGS  = -gINCLUDE  = -I../com32/includeLD	 = ld -m elf_i386NASM     = nasm -O99NINCLUDE = OBJCOPY  = objcopyPERL     = perl# Important: init.o16 must be first!!OBJS16   = init.o16 init32.oOBJS32   = start32.o setup.o msetup.o e820func.o conio.o memcpy.o memset.o \           unzip.o memdisk.oCSRC     = setup.c msetup.c e820func.c conio.c unzip.cSSRC     = init.S16NASMSRC  = memdisk.asm init32.asmall: memdisk e820test# tidy, clean removes everything except the final binarytidy:	rm -f *.o *.s *.o16 *.s16 *.bin *.lst *.elf e820testclean: tidy# spotless also removes the product binaryspotless: clean	rm -f memdisk .depend%.o: %.asm	$(NASM) -f elf -l $*.lst -o $@ $<%.o: %.s	$(CC) -x assembler -c -o $@ $<%.o16: %.s16	$(CC) -x assembler -c -o $@ $<%.o: %.c	$(CC) $(INCLUDE) $(CFLAGS) -c -o $@ $<%.s16: %.s	echo '.code16gcc' | cat - $< > $@%.s: %.S	$(CC) -x c $(INCLUDE) $(CFLAGS) -traditional -E -o $@ $<%.s16: %.S16	$(CC) -x c $(INCLUDE) $(CFLAGS) -traditional -E -o $@ $<%.s: %.c	$(CC) $(INCLUDE) $(CFLAGS) -S -o $@ $<%.i: %.c	$(CC) $(INCLUDE) $(CFLAGS) -E -o $@ $<# Cancel default rule%.o: %.c%.bin: %.asm	$(NASM) -f bin $(NINCLUDE) -o $@ -l $*.lst $<memdisk16.elf: $(OBJS16)	$(LD) -Ttext 0 -o $@ $^memdisk32.elf: $(OBJS32)	$(LD) -Ttext 0x100000 -o $@ $^%.bin: %.elf	$(OBJCOPY) -O binary $< $@memdisk: memdisk16.bin memdisk32.bin postprocess.pl	$(PERL) postprocess.pl $@ memdisk16.bin memdisk32.bine820test: e820func.o msetup.o e820test.o memdisk.o	$(CC) $(LDFLAGS) -o $@ $^memdisk.o: memdisk.bin	$(LD) -r -b binary -o $@ $<.depend:	rm -f .depend	for csrc in *.c ; do $(CC) $(INCLUDE) -MM $$csrc | sed -e 's/\.o/\.s/' >> .depend ; done	for ssrc in $(SSRC) ; do $(CC) $(INCLUDE) -x c -traditional -MM $$ssrc | sed -e 's/\.S16\.o/\.o16/' >> .depend ; done	for nsrc in $(NASMSRC) ; do $(NASM) -DDEPEND $(NINCLUDE) -o `echo $$nsrc | sed -e 's/\.asm/\.bin/'` -M $$nsrc >> .depend ; donedepend:	rm -f .depend	$(MAKE) .depend# This file contains the version number, so add a dependency for itsetup.s: ../version# Include dependencies fileinclude .depend

⌨️ 快捷键说明

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