这篇主要分析Makefile文件开头部分对与一些编译环境以及编译路径等变量的初始化 VERSION = 2010 PATCHLEVEL = 12 SUBLEVEL = EXTRAVERSION = ifneq "$(SUBLEVEL)""" U_BOOT_VERSION =$(VERSION).$( ...
分类:
其他好文 时间:
2018-01-24 10:57:32
阅读次数:
212
ARCH := arm CROSS_COMPILE := arm-linux-gnueabi- export ARCH CROSS_COMPILE obj-m += chardev.o ifneq ($(KERNELRELEASE),) else KERNELDIR ?= /home/hugh/wo ...
分类:
其他好文 时间:
2017-06-23 15:29:33
阅读次数:
160
ifneq ($(KERNELRELEASE),)param-objs := file1.o file2.oobj-m := param.oelse KDIR := /lib/modules/2.6.18-53.el5/build all: make -C $(KDIR) M=$(PWD) modu ...
分类:
其他好文 时间:
2016-07-11 18:37:32
阅读次数:
140
1 2 ifeq($(CC),gcc)/ifneq 3 else 4 endif bar = foo = $(bar) 5 6 ifdef foo /ifndef foo值非空,表示真,否则假 else endif 7 include 8 $@ 目标文件 9 $^ 所有依赖文件 10 $< 第一个依 ...
分类:
其他好文 时间:
2016-04-16 23:11:26
阅读次数:
333
直接写Makefile 文件(假设要编译的文件为hello.c)1 ifneq ($(KERNElRELEASE),)2 obj-m := hello.o3 else4 obj-m := hello.o5 KERNELDIR ?= /lib/modules/$(shell uname -r)/bui...
分类:
系统相关 时间:
2015-08-08 13:26:39
阅读次数:
137
Makefile中条件表达式的语法为:
endif或者
else
endif
表示条件关键字:
关键字
说明
ifeq
ifeq (arg1,arg2) 比较参数arg1和arg2的值,相同返回true
ifneq
ifneq (arg1,arg2) 比较参数arg1和arg2的值,不同返回true
...
分类:
其他好文 时间:
2015-05-18 09:14:29
阅读次数:
174
1、ifeq”语法是ifeq (;, ;),功能是比较参数“arg1”和“arg2”的值是否相同。ifneq刚好相反,比较两者的值是否不同其中有一些是我们常见或是见过的,第一个ifneq ($(KERNELRELEASE),)目前,有用处,它的由来是指在Linux源码根目录下的Makefile编译内核时,KERNELRELEASE宏会被定义,那么如果是从源码根目录开始的make则会将hello.o模块编译进内核。
KERNELDIR :=/home/ZP1015/Desktop/li...
分类:
系统相关 时间:
2015-04-13 11:07:00
阅读次数:
177
linux驱动makefile写法:
ifneq
($*KERNELRELEASE),)
obj-m
:=hello.o
else
KERNELDIR?=/lib/modules/$(shell
uname-r)/build
PWD
:=$(shellpwd)
default:
$(MAKE)
-C$(KERNELDIR)M=$(PWD)modules
endif初始化和关闭:static
int__initinitialization_funciton(void)
{
*
}
mo..
分类:
其他好文 时间:
2015-03-16 06:30:11
阅读次数:
202
使用条件判断,可以让make根据运行时的不同情况选择不同的执行分支。条件表达式可以是比较变量的值,或是比较变量和常量的值。
一、示例
下面的例子,判断$(CC)变量是否“gcc”,如果是的话,则使用GNU函数编译目标。
libs_for_gcc = -lgnu
normal_libs =
foo: $(objects)
ife...
分类:
其他好文 时间:
2015-01-09 12:41:14
阅读次数:
846
1 ifneq ($(KERNELRELEASE),) 2 obj-m := hello.o 3 4 else 5 PWD := $(shell pwd) 6 KVER := $(shell uname -r) 7 KDIR := /lib/modules/$(KVER)/build 8 al...
分类:
其他好文 时间:
2014-06-15 11:01:51
阅读次数:
349