gpt4 book ai didi

autotools - 如何将额外的自定义 ./configure autotools 选项传递给 Buildroot 包?

转载 作者:行者123 更新时间:2023-12-05 01:15:41 24 4
gpt4 key购买 nike

例如,我想将选项 --enable-foo --enable-bar 添加到 ./configure 命令。

许多 ./configure 选项可以通过 BR2_ 配置间接设置,但许多软件有太多选项,以至于为每个可能的 BR2_ 选项都设置一个 ./configure 配置是不可行的。

是否有适用于所有 autotools 包的通用机制?

最佳答案

我认为截至 2017.02 没有当前的通用方法,因为 package/pkg-autotools.mk 包含:

# Configure package for target
define $(2)_CONFIGURE_CMDS
(cd $$($$(PKG)_SRCDIR) && rm -rf config.cache && \
$$(TARGET_CONFIGURE_OPTS) \
$$(TARGET_CONFIGURE_ARGS) \
$$($$(PKG)_CONF_ENV) \
CONFIG_SITE=/dev/null \
./configure \
--target=$$(GNU_TARGET_NAME) \
--host=$$(GNU_TARGET_NAME) \
--build=$$(GNU_HOST_NAME) \
--prefix=/usr \
--exec-prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--program-prefix="" \
--disable-gtk-doc \
--disable-gtk-doc-html \
--disable-doc \
--disable-docs \
--disable-documentation \
--with-xmlto=no \
--with-fop=no \
--disable-dependency-tracking \
--enable-ipv6 \
$$(DISABLE_NLS) \
$$(SHARED_STATIC_LIBS_OPTS) \
$$(QUIET) $$($$(PKG)_CONF_OPTS) \
)
endef
else

而且我看不到任何插入任意选项的方法,因为 $$($$(PKG)_CONF_OPTS) 是从每个包的 package.mk 设置的,而其他变量似乎也有特定用途,不应该被弄乱。

但我认为如果我们添加一个:
$$($$(PKG)_CONF_OPTS_EXTRA)

然后从 CLI 您可以执行以下操作:
make MYPACKAGE_CONF_OPTS_EXTRA="--enable-foo --enable-bar"

最后,对于某些软件包,您可以使用现有的 make 配置,例如对于尚未转换为 autotools 的 host-qemu ,我设法通过以下方式获得了额外的选项:
HOST_QEMU_OPTS="--enable-sdl --with-sdlabi=2.0"

因为幸运的是,该包碰巧在 Makefile 上使用了 += 而不是 =

Thomas 在: https://stackoverflow.com/a/49570825/895245 的回答还表明,如果不修改新的配置选项,这是不可能的。

关于autotools - 如何将额外的自定义 ./configure autotools 选项传递给 Buildroot 包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44341188/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com