buildroot包.mk文件中的高级选项串联



我正在为xmms2创建一个使用waf构建系统的buildroot包。对于配置步骤,我需要根据配置选择传递参数。实际上,它是一个具有逗号分隔值的参数。它应该是这样的:

--with-optionals medialib-updater,s4

我看不出产生这种价值的方法。以下是尝试的内容:

################################################################################
#
# xmms2
#
################################################################################
XMMS2_VERSION = c081011ddc280908678709d1e80f7ec57efa7b82
XMMS2_SITE = https://github.com/Gamadril/xmms2-devel
XMMS2_SITE_METHOD = git
XMMS2_GIT_SUBMODULES = YES
XMMS2_LICENSE = LGPL-2.1
XMMS2_LICENSE_FILES = COPYING
XMMS2_INSTALL_STAGING = YES
XMMS2_CONF_OPTS = --with-optionals medialib-updater 
ifeq ($(BR2_PACKAGE_XMMS2_DB_S4),y)
XMMS2_CONF_OPTS += ,s4 
endif
$(eval $(waf-package))

结果是:--with-optionals medialib-updater ,s4-之间有一个空格。如何摆脱那个空间?那么实际上如何用分隔符连接一些字符串呢?

make中,+=运算符总是添加一个空格。您可以使用扩展在没有空格的情况下进行附加:

XMMS2_CONF_OPTS := "$(XMMS2_CONF_OPTS),s4"

最新更新