#include <linux/module.h> 的module在哪
时间:2010-06-05
来源:互联网
新的内核模块编程中的make命令里有个M选项,如下:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
我查了make的document,没有发现呀M选项呀,这到底是什么意思?
M=$(PWD) 表明然后返回到当前目录继续读入、执行当前的Makefile。
http://www-128.ibm.com/developerworks/c ... -module26/
我的意思是:这个M是kbuild的东西呢,还是make本来自己就有的东西呢?
按理说,它是make的一个参数,应该是make的东西,但是make的doc里又找不到,
如果是kbuild里的东西,它应该怎样来实现呢?
M是makefile脚本中的一个变量(variable)
# Use make M=dir to specify directory of external module to build
# Old syntax make ... SUBDIRS=$PWD is still supported
# Setting the environment variable KBUILD_EXTMOD take precedence
ifdef SUBDIRS
KBUILD_EXTMOD ?= $(SUBDIRS)
endif
ifdef M //如果没有定义或赋值M,此处M未定义(undefined)
ifeq ("$(origin M)", "command line") //如果定义了,此句用来判断M是否从命令行来
KBUILD_EXTMOD := $(M)
endif
endif
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
我查了make的document,没有发现呀M选项呀,这到底是什么意思?
M=$(PWD) 表明然后返回到当前目录继续读入、执行当前的Makefile。
http://www-128.ibm.com/developerworks/c ... -module26/
我的意思是:这个M是kbuild的东西呢,还是make本来自己就有的东西呢?
按理说,它是make的一个参数,应该是make的东西,但是make的doc里又找不到,
如果是kbuild里的东西,它应该怎样来实现呢?
M是makefile脚本中的一个变量(variable)
# Use make M=dir to specify directory of external module to build
# Old syntax make ... SUBDIRS=$PWD is still supported
# Setting the environment variable KBUILD_EXTMOD take precedence
ifdef SUBDIRS
KBUILD_EXTMOD ?= $(SUBDIRS)
endif
ifdef M //如果没有定义或赋值M,此处M未定义(undefined)
ifeq ("$(origin M)", "command line") //如果定义了,此句用来判断M是否从命令行来
KBUILD_EXTMOD := $(M)
endif
endif
作者: hady55566 发布时间: 2010-06-05

作者: lgxwqq 发布时间: 2010-06-06
M= 选项是让你的这个Makefile在构造modules目标之前返回到模块源代码目录
作者: YT11 发布时间: 2010-08-19
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28