PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)}"
PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack"
如果安装了pulseaudio则使用--enable-pulse,类似 USE
出处: http://blog.csdn.net/xiaofeng_yan/article/details/7018349
PACKAGECONFIG是用来区分一个软件包在不同的条件下,配置依赖和编译选项
例如:
PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}"
PACKAGECONFIG[x11] = "--with-x,--without-x,${X11DEPENDS}"
PACKAGECONFIG[directfb] = ",,directfb"
用法说明:
PACKAGECONFIG[foo] = "--enable-foo,--disable-foo,foo_depends,foo_runtime_depends"
有四个参数,
--enable-foo:表示如果有foo的那么使能它
--disable-foo:表示没有foo的情况下就不是能它
foo_depends: 表示如果有foo的情况下编译时的依赖。
foo_runtime_depends:表示如果有foo的情况下,运行时的依赖
上面的例子是pango对基于x11或direcrfb的情况
如果是基于x11的(${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}),那么configure时,--with-x, 编译依赖${X11DEPENDS}
如果是基于direcrfb(${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)})的,那么运行confiure时,--without-x,编译依赖direcrfb