数日前に「dev-python/pytz-2011g は依存パッケージの sys-libs/timezone-data-2011g が無いから古いの入れとくね」というメッセージを emerge 中に見掛けていたので、sys-libs/timezone-data が更新されて 2011g が来れば当然 emerge -uD world で更新が掛かると思っていた。
が、
$ emerge -uDp world
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild U ] dev-python/pygobject-2.28.6 [2.28.4]
[ebuild U ] dev-libs/libevent-2.0.12 [2.0.11]
[ebuild U ] x11-libs/gtk+-2.24.5-r1 [2.24.4]
[ebuild U ] app-text/lcdf-typetools-2.90 [2.88]
と出てこなかった。
なぜだ、と emerge の man を読み返すと
--deep [DEPTH] (-D)
This flag forces emerge to consider the entire dependency tree
of packages, instead of checking only the immediate dependencies
of the packages. As an example, this catches updates in
libraries that are not directly listed in the dependencies of a
package. Also see --with-bdeps for behavior with respect to
build time dependencies that are not strictly required.
という説明で、 --with-bdeps なるオプションも見ろ、と。
聞いたことがないオプションだったので、読んでみる。
--with-bdeps < y | n >
In dependency calculations, pull in build time dependencies that
are not strictly required. This defaults to 'n' for installation
actions, meaning they will not be installed, and 'y' for the
--depclean action, meaning they will not be removed. This setting can be added to EMERGE_DEFAULT_OPTS (see make.conf(5)) and
later overridden via the command line.
一度インストールしてしまえば更新の必要がないものはこれを y にしない限り引っ張ってこないよ、と。
なるほど。
試しに --with-bdeps=y を付けてみると
$ emerge -uDp --with-bdeps=y world
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild U ] sys-libs/timezone-data-2011g [2011e]
[ebuild U ] dev-lang/swig-2.0.4 [2.0.2]
[ebuild U ] dev-libs/mpfr-3.0.1 [3.0.0_p3]
[ebuild U ] sys-apps/help2man-1.40.3 [1.39.1]
[ebuild U ] dev-perl/XML-Parser-2.410.0 [2.40]
[ebuild U ] dev-python/pytz-2011g [2011e]
[ebuild U ] sys-apps/debianutils-4 [3.4.3-r1]
[ebuild U ] x11-misc/util-macros-1.14.0 [1.10.1]
[ebuild N ] media-fonts/font-util-1.2.0
[ebuild U ] dev-libs/libevent-2.0.12 [2.0.11]
[ebuild U ] dev-python/pygobject-2.28.6 [2.28.4]
[ebuild U ] x11-libs/gtk+-2.24.5-r1 [2.24.4]
[ebuild U ] app-text/lcdf-typetools-2.90 [2.88]
更新されるパッケージがかなり増えた。
もちろん、sys-libs/timezone-data と dev-python/pytz も入っている。
|