📄 makefile
字号:
# Configuration variables# They can also be stored in a file /etc/lilo.defines, e.g.# -DIGNORECASE -DONE_SHOT# The variables configured in this Makefile are ignored if# /etc/lilo.defines exists# ATARAID Enable 'ataraid' keyword and automatic marking of volumes# as 'inaccessible'. (testing only; DO NOT USE!!!)# AUTOAUTO Enable automatic generation of change rules for MS partitions;# issue warning if "CHANGE AUTOMATIC" is assumed# * BDATA Enable real mode gathering of system information for '-T'# BEEP Beep after displaying "LILO".# BOOT_FILE Append "BOOT_FILE=<path>" to the kernel command line.# BUG_SI_EBDA=n Compensate for BIOS's (notably early Silicon Image S-ATA)# that use the EBDA, but don't properly allocate the space.# (n=1..64) specifies the extra EBDA in kilobytes (default 20).# COHERENT Make boot loaders (chain.b & mbr.b) compatible with Coherent# by writing the boot device code to the memory copy of the PT# * DSECS=n Set the number of Descriptor Sectors (n=1..12). Each sector# of the descriptor table holds 9..10 descriptors.# * EVMS Enables support for booting from EVMS volumes. Requires a# 2.4 or 2.5 kernel patched to EVMS version 1.1.0 or later.# HP_TTRC Insert 150ms delay for HP TTRC card. Affects 'second.S'# * IGNORECASE Image selection is case-insensitive. Passwords are still# case-sensitive.# INITRDLOW Always load initial ramdisk images below address 15M,# ignoring any 'large-memory' option in the config file.# LARGE_EBDA Deprecated since Oct-2000 (version 21.6).# * LVM Enables support for booting from LVM partitions. This will# OOPS if you try to use this and are using a kernel < 2.4.7# that has not been patched to at least LVM 0.9.1beta6.# NO1STDIAG Don't show diagnostic on read errors in the first stage# boot. (not recommended)# NODRAIN Don't drain keyboard buffer after booting.# NOINSTDEF Don't install a new boot sector if INSTALL is not specified.# NOSERIAL Don't assemble serial line support in the boot loader.# OLD_DIRSTR Use old locations of config and boot files: (/etc/lilo)# * ONE_SHOT Disable the command-line and password timeout if any key is# hit at the boot prompt.# * PASS160 Use 160-bit password hash (Secure Hash Standard, see# FIPS PUB 180-1) instead of 64-bit CRC-32 hash# READAHEAD Enable read-ahead on EDD disks which support the function.# Note: no BIOS has yet been seen which supports this# EDD revision 1.1 function.# READONLY Don't write to disk while booting, e.g. don't overwrite the# default command line in the map file after reading it.# * REISERFS Compile support for parts of LILO on ReiserFS.# Requires header files for kernel 2.4.0test8 or later.# * REWRITE_TABLE Enable rewriting the partition table at boot time.# * SOLO_CHAIN Assemble all chain-loader functions into 'chain.b', # eliminating the need for 'os2_d.b'.# SUSPEND= Modify 'vmdefault' action if this partition type on C: drive# is marked active; (Dell suspend partition is -DSUSPEND=0x84).# USE_TMPDIR Create temporary devices in $TMPDIR if set# * VERSION Prints version string at LILO boot prompt.# * VIRTUAL Enable 'vmdefault', 'vmdisable', 'vmwarn' keywords; feature# requested by VMware users (new, experimental)# XL_SECS=n Support for extra large (non-standard) floppies.CONFIG=-DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 \ -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL# set the compiler optimization levelOPT=-Os# End of configuration variablesSBIN_DIR=/sbinCFG_DIR=/etcBOOT_DIR=/bootUSRSBIN_DIR=/usr/sbin# set the following if you wish LILO.COM to be installedDOS_DIR=/dosC/boot##MAN_DIR=`if [ -z "$(whereis lilo | grep 'lilo.8')" ]; then \# whereis lilo | sed -e "sX.* /usrX/usrX" -e "sX/man8/lilo.8.*XX" ; \# elif [ -f /usr/bin/manpath ]; then \# manpath | sed "s/:.*//"; else echo /usr/man; fi`#MAN_DIR=`if [ -f /usr/bin/manpath ]; then \ manpath | sed "s/:.*//"; else echo /usr/man; fi`BUILTIN=1PCONFIG=$(KVER) $(LILO) `( if [ -r $$ROOT/etc/lilo.defines ]; then \ cat $$ROOT/etc/lilo.defines; else echo $(CONFIG); fi ) | \ sed 's/-D/-DLCF_/g'`LILO=-DLILO=0x4c7c8088KVER=`if [ -f /usr/include/linux/version.h ]; then echo -DHAS_VERSION_H; fi`TMP=_TmP_SHELL=/bin/shCC=gccCPP=$(CC) -EAS86=as86 -0 -aLD86=ld86 -0NASM=nasmCFLAGS=$(OPT) -Wall -g $(PCONFIG)LDFLAGS=#-Xlinker -qmagicLIBS=OBJS=lilo.o raid.o map.o geometry.o boot.o device.o common.o bsect.o cfg.o \ partition.o identify.o probe.o shs2.o edit.o temp.oEDIT=edit.c common.oLIS=chain.lis disk.lis dparam.lis os2_d.lis first.lis second.lis \ bootsect.lis third.lis mbr.lis bitmap.lis pseudo.lis mbr2.lis \ pseudo1.lis loader.lis pseudo3.lisBFILES=first.b second.b third.b bitmap.b chain.b mbr.b mbr2.b \ bootsect.b pseudo.b pseudo1.b pseudo3.bCFILES=boot.c bsect.c cfg.c common.c device.c edit.c geometry.c \ identify.c lilo.c map.c partition.c probe.c raid.c shs2.c temp.cHFILES=bdata.h bitmap.h boot.h bsect.h cfg.h common.h config.h device.h \ edit.h geometry.h identify.h lilo.h loader.h map.h md-int.h partition.h \ probe.h raid.h shs2.h temp.h version.h vesainfo.h#BOOTS=boot-text.b boot-menu.b boot-bmp.b chain.b os2_d.b mbr.b mbr2.b.SUFFIXES: .img .b .com .S .sall: lilo bootsect.b diag1.img # OBSOLETE: $(BOOTS) edit dparam.com activate if [ -x /usr/bin/bcc -o -x /usr/local/bin/bcc ]; then \ make diagnostic; \ make dosexe; fi## everything above plus the statically linked version#alles: lilo-static all## if you have the 'bcc' compiler, then you can make the diagnostics, too#it: alles diagnostic dosexe## make the bootable diagnostic floppies#floppy: @echo @echo Make sure you have 2 blank, formatted, 1.44Mb floppies @echo before you proceed from this point. @echo "Press <Enter> to continue, <^C> to abort ..." @read @make floppy1 @echo Done. @echo @echo Remove the floppy from the drive. Label it "\"1.5.7\"" @echo "Press <Enter> to continue, <^C> to abort ..." @read @make floppy2 @echo Done. @echo @echo Remove the floppy from the drive. Label it "\"2.3\"" @echofloppy1: disk.com bootsect.b @echo @echo Creating Diagnostic Floppy 1.5.7 @echo @echo Insert a blank, formatted, floppy into drive 0 @echo "Press <Enter> to continue, <^C> to abort ..." @read cat bootsect.b disk.com | dd of=/dev/fd0 bs=512floppy2: disk.b @echo @echo Creating Diagnostic Floppy 2.3 @cd diagnose; make check; make floppy; cd ..diagnostic: diag2.img diag3.imgdosexe: lilo.com# if [ -x /usr/bin/bcc -o -x /usr/local/bin/bcc ]; then make diagnostic; \# else echo "You don't seem to have the 'bcc' compiler from the 'dev86' package."; \# exit 1; fimanpath: echo $(MAN_DIR)#check-config:# $(CPP) check-config.cpp $(PCONFIG) >/dev/null.c.o: $(CC) -c $(CFLAGS) $*.c.s.o: $(AS86) -w -l $*.lis -o $*.o $*.s.o.img: $(LD86) -s -o $*.img $*.o.img.b: dd if=$*.img of=$*.b bs=32 skip=1activate: activate.c $(CC) -Wall -s -O -o activate activate.c $(LDFLAGS)edit: $(EDIT) $(CC) -Wall -s -O -DSTANDALONE -o edit $(EDIT) $(LDFLAGS)loader.i: mkloader first.b second.b third.b bitmap.b mbr.b \ chain.b os2_d.b mbr2.b ./mkloader >loader.i#loader.o: loader.s first.b second.b third.b bitmap.b mbr.b \# chain.b os2_d.b mbr2.b# $(NASM) -f elf -o loader.o -l loader.lis loader.s#loader.s: loader.S# $(CPP) -traditional $(PCONFIG) -o loader.s loader.Sdisk.com: disk.b cp disk.b disk.comdisk.s: disk.S read.S bdata.h biosdata.S lilo.h Makefile $(CPP) -traditional $(PCONFIG) -o disk.s disk.Smbr.s: mbr.S lilo.h Makefile $(CPP) -traditional $(PCONFIG) -DMBR=0xc25b7d5e \ -o mbr.s mbr.Smbr.b: mbr.img dd if=$*.img of=$*.b bs=32 skip=49mbr2.s: mbr.S lilo.h Makefile $(CPP) -traditional $(PCONFIG) -DMBX=0xfe209276 \ -o mbr2.s mbr.Smbr2.b: mbr2.img dd if=$*.img of=$*.b bs=32 skip=49bootsect.s: bootsect.S disk.b $(CPP) -traditional $(PCONFIG) \
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -