Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
X
xv6-public
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
问题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
银宸时代
OS Lab Group
奖励实验
xv6-public
提交
45a9876c
提交
45a9876c
12月 04, 2011
创建
作者:
Silas Boyd-Wickizer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Make it easier to build kernels for different machines.
上级
3faf7937
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
28 行增加
和
18 行删除
+28
-18
Makefile
Makefile
+28
-18
没有找到文件。
Makefile
浏览文件 @
45a9876c
...
@@ -12,6 +12,7 @@ QEMUSRC ?= ../mtrace
...
@@ -12,6 +12,7 @@ QEMUSRC ?= ../mtrace
MTRACE
?=
$(QEMU)
MTRACE
?=
$(QEMU)
HW
?=
qemu
HW
?=
qemu
O
=
o.
$(HW)
CC
=
$(TOOLPREFIX)
gcc
CC
=
$(TOOLPREFIX)
gcc
AS
=
$(TOOLPREFIX)
gas
AS
=
$(TOOLPREFIX)
gas
LD
=
$(TOOLPREFIX)
ld
LD
=
$(TOOLPREFIX)
ld
...
@@ -62,8 +63,10 @@ OBJS = \
...
@@ -62,8 +63,10 @@ OBJS = \
trap.o
\
trap.o
\
trapasm.o
\
trapasm.o
\
wq.o
wq.o
OBJS
:=
$
(
addprefix
$(O)
/,
$(OBJS)
)
ULIB
=
ulib.o usys.o printf.o umalloc.o uthread.o
ULIB
=
ulib.o usys.o printf.o umalloc.o uthread.o
ULIB
:=
$
(
addprefix
$(O)
/,
$(ULIB)
)
UPROGS
=
\
UPROGS
=
\
_cat
\
_cat
\
...
@@ -75,26 +78,30 @@ UPROGS= \
...
@@ -75,26 +78,30 @@ UPROGS= \
_mapbench
\
_mapbench
\
_maptest
\
_maptest
\
_sh
\
_sh
\
_thrtest
\
_thrtest
UPROGS
:=
$
(
addprefix
$(O)
/,
$(UPROGS)
)
%.o
:
%.c
$(O)/kernel
:
$(O) $(O)/boot.o $(OBJS) initcode bootother fs.img
@
echo
" LD
$@
"
$(Q)$(LD)
$(LDFLAGS)
-T
kernel.ld
-z
max-page-size
=
4096
-e
start
\
-o
$@
$(O)
/boot.o
$(OBJS)
-b
binary initcode bootother fs.img
$(O)
:
$(Q)
mkdir
$(O)
$(O)/%.o
:
%.c
@
echo
" CC
$@
"
@
echo
" CC
$@
"
$(Q)$(CC)
$(CFLAGS)
-c
-o
$@
$<
$(Q)$(CC)
$(CFLAGS)
-c
-o
$@
$<
%.o
:
%.S
$(O)/
%.o
:
%.S
@
echo
" CC
$@
"
@
echo
" CC
$@
"
$(Q)$(CC)
$(ASFLAGS)
-c
-o
$@
$<
$(Q)$(CC)
$(ASFLAGS)
-c
-o
$@
$<
kernel
:
boot.o $(OBJS) initcode bootother fs.img
@
echo
" LD
$@
"
$(Q)$(LD)
$(LDFLAGS)
-T
kernel.ld
-z
max-page-size
=
4096
-e
start
\
-o
$@
boot.o
$(OBJS)
-b
binary initcode bootother fs.img
initcode
:
TTEXT = 0x0
initcode
:
TTEXT = 0x0
bootother
:
TTEXT = 0x7000
bootother
:
TTEXT = 0x7000
%
:
%.S
%
:
%.S
@
echo
" CC
$@
"
@
echo
" CC
$@
"
$(Q)$(CC)
$(CFLAGS)
-nostdinc
-I
.
-c
$
@
.S
$(Q)$(CC)
$(CFLAGS)
-nostdinc
-I
.
-c
$
<
-o
$@
.o
$(Q)$(LD)
$(LDFLAGS)
-N
-e
start
-Ttext
$(TTEXT)
-o
$@
.out
$@
.o
$(Q)$(LD)
$(LDFLAGS)
-N
-e
start
-Ttext
$(TTEXT)
-o
$@
.out
$@
.o
$(Q)$(OBJCOPY)
-S
-O
binary
$@
.out
$@
$(Q)$(OBJCOPY)
-S
-O
binary
$@
.out
$@
...
@@ -111,7 +118,8 @@ mkfs: mkfs.c fs.h
...
@@ -111,7 +118,8 @@ mkfs: mkfs.c fs.h
gcc
-m32
-Werror
-Wall
-o
mkfs mkfs.c
gcc
-m32
-Werror
-Wall
-o
mkfs mkfs.c
fs.img
:
mkfs README $(UPROGS)
fs.img
:
mkfs README $(UPROGS)
./mkfs fs.img README
$(UPROGS)
@
echo
" MKFS
$@
"
$(Q)
./mkfs
$@
README
$(UPROGS)
mscan.syms
:
kernel
mscan.syms
:
kernel
$(NM)
-S
$<
>
$@
$(NM)
-S
$<
>
$@
...
@@ -120,18 +128,20 @@ mscan.kern: kernel
...
@@ -120,18 +128,20 @@ mscan.kern: kernel
cp
$<
$@
cp
$<
$@
-include
*.d
-include
*.d
-include
$(O)/*.d
.PHONY
:
clean qemu gdb ud0 josmp
.PRECIOUS
:
$(O)/%.o
.PHONY
:
clean qemu gdb rsync
##
##
## qemu
## qemu
##
##
QEMUOPTS
=
-smp
$(QEMUSMP)
-m
512
-serial
mon:stdio
-nographic
QEMUOPTS
=
-smp
$(QEMUSMP)
-m
512
-serial
mon:stdio
-nographic
qemu
:
kernel
qemu
:
$(O)/
kernel
$(QEMU)
$(QEMUOPTS)
-kernel
kernel
$(QEMU)
$(QEMUOPTS)
-kernel
$(O)
/
kernel
gdb
:
kernel
gdb
:
$(O)/
kernel
$(QEMU)
$(QEMUOPTS)
-kernel
kernel
-S
-s
$(QEMU)
$(QEMUOPTS)
-kernel
$(O)
/
kernel
-S
-s
##
##
## mtrace
## mtrace
...
@@ -148,8 +158,8 @@ mscan.out: $(QEMUSRC)/mtrace-tools/mscan mtrace.out
...
@@ -148,8 +158,8 @@ mscan.out: $(QEMUSRC)/mtrace-tools/mscan mtrace.out
mscan.sorted
:
mscan.out $(QEMUSRC)/mtrace-tools/sersec-sort
mscan.sorted
:
mscan.out $(QEMUSRC)/mtrace-tools/sersec-sort
$(QEMUSRC)
/mtrace-tools/sersec-sort <
$<
>
$@
$(QEMUSRC)
/mtrace-tools/sersec-sort <
$<
>
$@
josmp ud0
:
kernel
rsync
:
$(O)/
kernel
rsync
-avP
kernel amsterdam.csail.mit.edu:/tftpboot/
$@
/kernel.xv6
rsync
-avP
$(O)
/kernel amsterdam.csail.mit.edu:/tftpboot/
$(HW)
/kernel.xv6
clean
:
clean
:
rm
-f
*
.o
*
.d
*
.asm
*
.sym initcode kernel bootother mkfs fs.img _
*
rm
-f
r
$(O)
*
.d
*
.asm
*
.sym initcode kernel bootother mkfs fs.img
编写
预览
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论