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

📄 makefile

📁 一个用于学习的操作系统
💻
字号:
INCLUDE = ./include include ./makefile.osLIB_DIR = ./lib/OBJ_DIR = ./obj/BIN_DIR = ./image/TOOLS_DIR = ./tools/CREATE_IMAGE = $(TOOLS_DIR)create_imageBOOT_BIN = $(OBJ_DIR)boot.binSETUP_BIN = $(OBJ_DIR)setup.binKERNEL_BIN = kernel.binPATH_KERNEL_BIN = $(OBJ_DIR)$(KERNEL_BIN)KERNEL_OBJDUMP = $(BIN_DIR)kernel.mapFAIRYSKY_IMG = $(BIN_DIR)fairysky.imgFAIRYSKY_IMG_ORI = $(BIN_DIR)fairysky.img.bakOBJS    = $(OBJ_DIR)main.o MAIN_OBJ = $(OBJ_DIR)main.oLIBS    =  $(LIB_DIR)kernel.a \			$(LIB_DIR)char.a  \			$(LIB_DIR)block.a  \			$(LIB_DIR)mm.a \			$(LIB_DIR)fs.a \			$(LIB_DIR)kernellib.a \			$(LIB_DIR)test.a.PHONY : $(BOOT_BIN) $(SETUP_BIN) $(LIBS) all: $(FAIRYSKY_IMG)$(FAIRYSKY_IMG): $(BOOT_BIN) $(SETUP_BIN) $(PATH_KERNEL_BIN) $(CREATE_IMAGE)	@echo 	@echo Create system image...	@cat $(BOOT_BIN) $(SETUP_BIN) $(PATH_KERNEL_BIN) > $(FAIRYSKY_IMG)	#@cp $(FAIRYSKY_IMG) $(FAIRYSKY_IMG_ORI)	@$(CREATE_IMAGE) $(FAIRYSKY_IMG)	@echo System image created OK, try '"make floppy"' to make a fairysky boot disk.$(BOOT_BIN): 	@echo 	@echo Making bootloader...	@(cd boot; make ../obj/boot.bin; cd ..)	$(SETUP_BIN): 	@echo 	@echo Making setup...	@(cd boot; make ../obj/setup.bin; cd ..)$(PATH_KERNEL_BIN): $(LIBS) $(OBJS)	@echo 	@echo Linking... 	@echo ======================================LIBS======================================	@echo $(OBJS) $(LIBS)	@echo ================================================================================	@$(LD) $(OBJS) $(LIBS) $(LDFLAGS) -o $@.pre	@echo Dumping binnary ...	@objdump -sD $@.pre > $(KERNEL_OBJDUMP)	@echo Making binnary executable ...	@objcopy -O binary -R .note -R .comment -S $@.pre $@	$(LIB_DIR)kernel.a: 	@(cd kernel; make all;)	$(LIB_DIR)char.a: 	@(cd drivers/char; make;)$(LIB_DIR)block.a: 	@(cd drivers/block; make;)		$(LIB_DIR)mm.a:	@(cd mm; make;)$(LIB_DIR)fs.a: 	@(cd fs; make;)	$(LIB_DIR)kernellib.a: 	@(cd kernellib; make;)	$(LIB_DIR)test.a: 	@(cd test; make;)		$(MAIN_OBJ): 	@(cd init; make;)	$(CREATE_IMAGE): 	@(cd tools; make;)	# make a raw bootable floppy for the fairyskyfloppy: $(FAIRYSKY_IMG)	@dd if=$(FAIRYSKY_IMG) of=/dev/fd0 bs=512 count=2880	@echo "bootup with the floppy to see what will happen"    clean:	@(cd boot; make clean;)	@(cd init; make clean;)	@(cd kernel; make clean;)	@(cd drivers/char; make clean;)	@(cd drivers/block; make clean;)	@(cd mm; make clean;)	@(cd fs; make clean;)	@(cd kernellib; make clean;)	@(cd test; make clean;)	@rm -f $(PATH_KERNEL_BIN) $(PATH_KERNEL_BIN).pre 	@rm -f $(KERNEL_OBJDUMP) $(FAIRYSKY_IMG)	# make a tarball named fairysky_0.01_YYYYMMDD_HHMMSS.tgztar: clean	@(rm -f $(CREATE_IMAGE))	@(if [ -f ./image/hdc-0.11.img ] ; then mv ./image/hdc-0.11.img ../; fi;)	@(if [ -f ./project ] ; then mv ./project ../ -f; fi; )	@(cd ..; tar -czf fairysky_0.01_`date +%Y%m%d_%H%M%S`.tgz ./fairysky0.01; )	@(if [ -f ./hdc-0.11.img ] ; then mv ./hdc-0.11.img ./fairysky0.01/image/; fi;)	@(if [ -f ./project ] ; then mv ./project ./fairysky0.01/ -f; fi;)	@echo tarfile fairysky_0.01`date +%Y%m%d_%H%M%S`.tar.gz created OK!

⌨️ 快捷键说明

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