📄 makefile
字号:
# Makefile for making XCOFF bootable images for booting on PowerMacs# using Open Firmware.## Paul Mackerras January 1997HOSTCFLAGS = -O -I$(TOPDIR)/includeCFLAGS = $(CPPFLAGS) -O -fno-builtinOBJCOPY_ARGS = -O aixcoff-rs6000 -R .stab -R .stabstr -R .commentCOFF_LD_ARGS = -e _start -T ld.script -Ttext 500000 -Tdata 510000 -BstaticCHRP_LD_ARGS = -Ttext 0x01000000COFFOBJS = coffcrt0.o start.o coffmain.o misc.o string.o zlib.o image.oCHRPOBJS = crt0.o start.o chrpmain.o misc.o string.o zlib.o image.oLIBS = $(TOPDIR)/lib/lib.aifeq ($(CONFIG_PPC64BRIDGE),y)MSIZE=.64elseMSIZE=endififeq ($(CONFIG_ALL_PPC),y)# yes, we want to build pmac stuffCONFIG_PMAC = yendififeq ($(CONFIG_SMP),y)TFTPIMAGE=/tftpboot/zImage.pmac.smp$(MSIZE)elseTFTPIMAGE=/tftpboot/zImage.pmac$(MSIZE)endififeq ($(CONFIG_PMAC),y)chrpmain.o: chrpmain.c $(CC) $(CFLAGS) -DSYSMAP_OFFSET=0 -DSYSMAP_SIZE=0 -c chrpmain.chack-coff: hack-coff.c $(HOSTCC) $(HOSTCFLAGS) -o hack-coff hack-coff.cznetboot: vmlinux.coff vmlinux.elf zImage cp vmlinux.coff $(TFTPIMAGE) cp vmlinux.elf $(TFTPIMAGE).elfznetboot.initrd: vmlinux.coff.initrd vmlinux.elf.initrd cp vmlinux.coff.initrd $(TFTPIMAGE) cp vmlinux.elf.initrd $(TFTPIMAGE).elffloppy: zImage# mount -t hfs /dev/fd0 /mnt# cp vmlinux.coff /mnt# umount /mntmiboot.image: dummy.o vmlinux.gz $(OBJCOPY) $(OBJCOPY_ARGS) --add-section=image=vmlinux.gz dummy.o $@miboot.image.initrd: miboot.image ramdisk.image.gz $(OBJCOPY) $(OBJCOPY_ARGS) --add-section=initrd=ramdisk.image.gz miboot.image $@coffboot: $(COFFOBJS) no_initrd.o ld.script $(LD) -o $@ $(COFF_LD_ARGS) $(COFFOBJS) no_initrd.o $(LIBS)coffboot.initrd: $(COFFOBJS) initrd.o ld.script $(LD) -o $@ $(COFF_LD_ARGS) $(COFFOBJS) initrd.o $(LIBS)piggyback: piggyback.c $(HOSTCC) $(HOSTCFLAGS) -DKERNELBASE=$(KERNELBASE) -o piggyback piggyback.cmknote: mknote.c $(HOSTCC) $(HOSTCFLAGS) -o mknote mknote.cimage.o: piggyback vmlinux.gz ./piggyback image < vmlinux.gz | $(AS) -o image.oinitrd.o: ramdisk.image.gz piggyback ./piggyback initrd < ramdisk.image.gz | $(AS) -o initrd.ovmlinux.coff: coffboot hack-coff $(OBJCOPY) $(OBJCOPY_ARGS) coffboot $@ ./hack-coff $@ ln -sf vmlinux.coff zImagevmlinux.coff.initrd: coffboot.initrd hack-coff $(OBJCOPY) $(OBJCOPY_ARGS) coffboot.initrd $@ ./hack-coff $@vmlinux.elf: $(CHRPOBJS) no_initrd.o mknote $(LD) $(CHRP_LD_ARGS) -o $@ $(CHRPOBJS) no_initrd.o $(LIBS) ./mknote > note $(OBJCOPY) $@ $@ --add-section=.note=note \ --add-section=sysmap=../../../System.map -R .comment $(CC) $(CFLAGS) chrpmain.c -c -o chrpmain.o \ -DSYSMAP_OFFSET=`sh ../boot/offset $(OBJDUMP) $@ sysmap` \ -DSYSMAP_SIZE=`sh ../boot/size $(OBJDUMP) $@ sysmap` $(LD) $(CHRP_LD_ARGS) -o $@ $(CHRPOBJS) no_initrd.o $(LIBS) $(OBJCOPY) $@ $@ --add-section=.note=note \ --add-section=sysmap=../../../System.map -R .commentvmlinux.elf.initrd: $(CHRPOBJS) initrd.o mknote $(LD) $(CHRP_LD_ARGS) -o $@ $(CHRPOBJS) initrd.o $(LIBS) ./mknote > note $(OBJCOPY) $@ $@ --add-section=.note=note -R .commentzImage: vmlinux.coff vmlinux.elf miboot.imagezImage.initrd: vmlinux.coff.initrd vmlinux.elf.initrd miboot.image.initrdelseznetboot: vmlinux.gzznetboot.initrd: vmlinux.gzcoffboot: vmlinux.gzzImage: vmlinux.gzzImage.initrd: vmlinux.gzvmlinux.coff: vmlinux.gzvmlinux.coff.initrd: vmlinux.gzfloppy: vmlinux.gzendifvmlinux.gz: $(TOPDIR)/vmlinux $(OBJCOPY) -S -O binary $(TOPDIR)/vmlinux vmlinux gzip -vf9 vmlinuxclean: rm -f hack-coff coffboot zImage vmlinux.coff vmlinux.gz rm -f mknote piggyback vmlinux.elf note rm -f miboot.image miboot.image.initrdfastdep:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -