当前位置:  技术问答>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 ...

本帖最后由 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 -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.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux0.12 ret_from_sys_call的疑问
  • Linux0.11 内核源码 main函数的参数问题
  • 编译linux0.01内核时出错,没有权限?
  • 现有linux内核中共享内存机制如何移植到linux0.11内核中
  • linux0.11内核线性地址问题,请教!!
  • Linux0.11进程最大可用虚拟内存为64M?
  • linux0.11内核blk.h
  • linux0.11的bios中断
  • 读linux0.11源代码小问题:)
  • linux0.11内核有些函数是封装的吗?比如timer_interrupt()函数。
  • 今天读完了LINUX0.11~~ 累坏了~ 现在直接开始读2.6内核会很困难么?
  • IT科技资讯 iis7站长之家
  • linux0.11内核源代码中system模块问题
  • !!!散分帖:历尽千辛万苦,将LINUX0.11内核编译运行成功!!!
  • 探讨linux0.11内核
  • 求助 linux0.01 boot.s
  • 简单!!高分!!Linux0.01中的简单问题—关于switch_to(n)。
  • 看linux0.12内核遇到个很奇怪的赋值,求教用意.
  • 用source insigt 看Linux0.11内核完全注释中的内核源码时,发现了一个有关c语言语法的奇怪现象。大虾请进,帮小弟解解惑。有重谢!
  • LINUX0.11如何编译成
  • linux环境下修改linux0.11 bootsect.s并用qemu运行的问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3