2017-06-03 8 views
1

たとえば、--enable-foo --enable-barというオプションを./configureコマンドに追加します。追加のカスタム./configure autotoolsオプションをBuildrootパッケージに渡すにはどうすればいいですか?

多く./configureのオプションがBR2_のconfigsを介して間接的に設定することができますが、多くのソフトウェアは、すべての可能な./configureオプションの1つのBR2_設定を持っていることが実行不可能になるので、多くのオプションを持っています。

すべてのautotoolsパッケージで機能する一般的なメカニズムはありますか?

答えて

1

package/pkg-autotools.mkが含まれているので、私は、2017.02のように何も現在の一般的な方法が存在しないと思う:

# 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設定で、たとえばパッケージが起こるlucklyはMakefileの上+=の代わり=を使用するため

HOST_QEMU_OPTS="--enable-sdl --with-sdlabi=2.0" 

:まだautotoolsのに変換されていないhost-qemu、のために、私は単純に私の追加オプションを取得するために管理します。

0

BR2_EXTERNALツリーを定義することができます。external.mkには、好きなパッケージ変数を上書きできます(例外はいくつかあります(例:<PKG>_VERSION)。変数に追加したり上書きすることができます。

+0

こんにちは、しかし、configのために働く変数はありますか? –

関連する問題