当前位置: 技术问答>linux和unix
关于linux0.11根文件夹下MakeFile的疑问?
来源: 互联网 发布时间:2016-07-26
本文导语: 本帖最后由 liulinqwert 于 2010-01-01 11:17:17 编辑 这个Makefile的完整内容如下: # # if you want the ram-disk device, define this to be the # size in blocks. # RAMDISK = #-DRAMDISK=512 AS86 =as86 -0 -a LD86 =ld86 -0 AS =gas LD =gld LDFLAGS =-s -x ...
#
# if you want the ram-disk device, define this to be the
# size in blocks.
#
RAMDISK = #-DRAMDISK=512
AS86 =as86 -0 -a
LD86 =ld86 -0
AS =gas
LD =gld
LDFLAGS =-s -x -M
CC =gcc $(RAMDISK)
CFLAGS =-Wall -O -fstrength-reduce -fomit-frame-pointer
-fcombine-regs -mstring-insns
CPP =cpp -nostdinc -Iinclude
#
# ROOT_DEV specifies the default root-device when making the image.
# This can be either FLOPPY, /dev/xxxx or empty, in which case the
# default of /dev/hd6 is used by 'build'.
#
ROOT_DEV=/dev/hd6
ARCHIVES=kernel/kernel.o mm/mm.o fs/fs.o
DRIVERS =kernel/blk_drv/blk_drv.a kernel/chr_drv/chr_drv.a
MATH =kernel/math/math.a
LIBS =lib/lib.a
.c.s:
$(CC) $(CFLAGS)
-nostdinc -Iinclude -S -o $*.s $
tmp.s
cat boot/bootsect.s >> tmp.s
clean:
rm -f Image System.map tmp_make core boot/bootsect boot/setup
rm -f init/*.o tools/system tools/build boot/*.o
(cd mm;make clean)
(cd fs;make clean)
(cd kernel;make clean)
(cd lib;make clean)
backup: clean
(cd .. ; tar cf - linux | compress - > backup.Z)
sync
dep:
sed '/### Dependencies/q' tmp_make
(for i in init/*.c;do echo -n "init/";$(CPP) -M $$i;done) >> tmp_make
cp tmp_make Makefile
(cd fs; make dep)
(cd kernel; make dep)
(cd mm; make dep)
### Dependencies:
init/main.o : init/main.c include/unistd.h include/sys/stat.h
include/sys/types.h include/sys/times.h include/sys/utsname.h
include/utime.h include/time.h include/linux/tty.h include/termios.h
include/linux/sched.h include/linux/head.h include/linux/fs.h
include/linux/mm.h include/signal.h include/asm/system.h include/asm/io.h
include/stddef.h include/stdarg.h include/fcntl.h
/////////////////////////////////////////////////////////////////////////////////
上面蓝颜色的地方,即
tmp.s: boot/bootsect.s tools/system
(echo -n "SYSSIZE = (";ls -l tools/system | grep system
| cut -c25-31 | tr '12' ' '; echo "+ 15 ) / 16") > tmp.s
cat boot/bootsect.s >> tmp.s
这段代码,它的意思是要在boot/bootsect.s这个文件中加入SYSSIZE={tools/system这个文件的大小}这句话,
它先是把这句话放在tmp.s这个文件中,然后将boot/bootsect.s这个文件的内容追加到tmp.s的后面,但问题是
后来的这个tmp.s文件中的内容,又是什么时候再写回到boot/bootsect.s这个文件中的呢?或是怎样再写回到
boot/bootsect.s这个文件中的呢?而在这个文件中这段代码以外的其它地方就再也没有对tmp.s这个文件进行处理的语句了?
|
这个东西早就过时了兄弟,没有必要研究那么透彻,好多东西现在的内核都没有了
|
这段话在0.11中已经作废了,是0.11之前的makefile里面的,估计linus忘记删了
|
直接加进去的
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。