I've googled and scanned recent messages archive of this list for this issue - if I'm blind, apologies in advance.
I've changed some USE flags deliberately to add features to a package (in this case, apache). That package is also impacted by different ACCEPT_KEYWORDS flag ("~86"), which I've specified in /etc/portage/package.keywords Despite the USE change, I find that that apache is not being caught by "emerge --newuse world". My expectation is that "--newuse world" will rebuild everything that a new USE impacts. So do I horribly misunderstand --newuse, or have I configured something wrong, or does it not work with package.keywords, or is there a bug someone would like more data on before I manually rebuild the various packages in in my system that need it and blow the symptoms away? I added "threads nptlonly mpm-worker" to USE in make.conf. I've probably made some other changes to USE since my last world rebuild. I've also done an emerge --sync. Then: <snip> # emerge --update --deep --newuse --pretend --verbose world These are the packages that I would merge, in order: Calculating world dependencies ...done! [ebuild R ] sys-libs/ncurses-5.4-r6 -bootstrap -build -debug -doc -gpm* -minimal -nocxx -unicode 0 kB [ebuild U ] sys-devel/gcc-config-1.3.12-r4 [1.3.12-r3] 0 kB [ebuild U ] sys-devel/binutils-config-1.8-r6 [1.8-r5] 0 kB [ebuild U ] sys-devel/binutils-2.16.1 [2.15.92.0.2-r10] -multislot -multitarget +nls -test 12,392 kB [ebuild R ] sys-devel/gcc-3.3.6 (-altivec) -bootstrap -boundschecking -build -fortran* -gcj -gtk +hardened -ip28 -mudflap (-multilib) -multislot (-n32) (-n64) +nls -nocxx -nopie -nossp -objc -objc-gc -vanilla 0 kB [ebuild R ] sys-libs/glibc-2.3.5-r2 -build -erandom -glibc-compat20 -glibc-omitfp +hardened -linuxthreads-tls (-multilib) +nls +nptl +nptlonly* +pic -profile (-selinux) +userlocales 0 kB [ebuild U ] sys-apps/man-pages-2.13 [2.11] +nls 1,670 kB [ebuild R ] sys-apps/grep-2.5.1-r8 -build +nls +pcre* -static 0 kB [ebuild R ] dev-lang/python-2.4.2 -X +berkdb -bootstrap -build -doc +gdbm -ipv6* +ncurses -nocxx +readline +ssl -tcltk -ucs2 0 kB [ebuild R ] sys-libs/db-4.2.52_p2 -bootstrap -doc +java* -nocxx -tcltk 0 kB [ebuild R ] sys-apps/tcp-wrappers-7.6-r8 -ipv6* 0 kB [ebuild R ] app-editors/nano-1.3.7 -build -debug -justify +ncurses +nls -nomac -slang -spell* -unicode 0 kB [ebuild R ] net-misc/wget-1.10.2 -build -debug -ipv6* +nls -socks5 +ssl -static 0 kB [ebuild R ] net-dns/bind-9.2.5-r6 +berkdb -bind-mysql -dlz -doc +idn* -ipv6 +ldap +mysql -odbc -postgres (-selinux) +ssl +threads* 0 kB [ebuild R ] net-misc/openssh-4.2_p1 -X509 -chroot -hpn -ipv6* -kerberos +ldap* -libedit +pam (-selinux) -sftplogging -skey -smartcard -static +tcpd 58 kB [ebuild U ] app-crypt/hashalot-0.3-r1 [0.3] 0 kB [ebuild R ] dev-java/commons-pool-1.2 -doc -jikes +junit* 0 kB [ebuild R ] dev-java/commons-net-1.3.0-r1 -doc -examples -jikes +junit* -source 0 kB [ebuild R ] dev-java/commons-digester-1.6-r1 -doc -jikes +junit* -source 0 kB [ebuild R ] dev-php/php-4.4.0-r4 -X +berkdb +crypt +curl* -debug -doc -fdftk -firebird -flash -freetds -gd -gd-external +gdbm +gmp* -hardenedphp +imap -informix -ipv6 +java -jpeg -kerberos +ldap -mcal -memlimit -mssql +mysql +ncurses +nls -oci8 -odbc +pam -png -postgres +readline -snmp -spell +ssl -tiff -truetype +xml2 -yaz 0 kB [ebuild R ] app-editors/vim-6.4 -acl -bash-completion -cscope -gpm* -minimal +nls +perl +python -ruby -vim-with-x 0 kB [ebuild R ] net-misc/iputils-021109-r3 -doc -ipv6* -static 0 kB Total size of downloads: 14,122 kB </snip> note the lack of apache. Now: <snip> # emerge --pretend --verbose apache These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild R ] net-www/apache-2.0.55 +apache2 -debug -doc +ldap -mpm-leader -mpm-peruser -mpm-prefork -mpm-threadpool +mpm-worker* -no-suexec (-selinux) +ssl -static-modules +threads* 0 kB Total size of downloads: 0 kB </snip> As you see, apache is already installed. By the '*'s, emerge seems to have noted the USE change. also <snip> # equery uses apache [ Searching for packages matching apache... ] [ Colour Code : set unset ] [ Legend : Left column (U) - USE flags from make.conf ] [ : Right column (I) - USE flags packages was installed with ] [ Found these USE variables for net-www/apache-2.0.55 ] U I + + apache2 : Chooses Apache2 support when a package supports both Apache1 and Apache2 - - debug : Tells configure and the makefiles to build for debugging. Effects vary across packages, but generally it will at least add -g to CFLAGS. Remember to set FEATURES=nostrip too - - doc : Adds extra documentation (API, Javadoc, etc) + + ldap : Adds LDAP support (Lightweight Directory Access Protocol) - - mpm-leader : <unknown> - - mpm-peruser : <unknown> - - mpm-prefork : <unknown> - - mpm-threadpool : <unknown> + - mpm-worker : <unknown> - - no-suexec : Don't install suexec with apache + + ssl : Adds support for Secure Socket Layer connections - - static-modules : Build modules into apache instead of having them load at run time + - threads : Adds threads support for various packages. Usually pthreads - - selinux : !!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur </snip> shows the uses change pretty clearly as well. So, any thoughts on why "emerge --newuse" doesn't want to rebuild apache? Again, misunderstanding on my part? Or bug? Or misconfiguration? thanks in advance. glen PS FWIW, Here is my emerge --info: <snip> # emerge --info Portage 2.0.51.22-r3 (default-linux/x86/2005.1, gcc-3.3.6, glibc-2.3.5-r2, 2.6.11-hardened-r15_third i686) ================================================================= System uname: 2.6.11-hardened-r15_third i686 VIA Samuel 2 Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i586-pc-linux-gnu" CFLAGS="-Os -march=c3 -m3dnow -mmmx -pipe -fomit-frame-pointer" CHOST="i586-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/bind /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-Os -march=c3 -m3dnow -mmmx -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.chem.wisc.edu/gentoo/ http://cudlug.cudenver.edu/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="x86 apache2 berkdb bzip2 clamav crypt cups curl expat gdbm gmp hardened idn imap innodb java junit ldap libg++ libwww lm_sensors mhash mpm-worker mysql mysqli ncurses nls nptl nptlonly pam pcre perl php pic python readline sapdb sockets ssl tcpd threads udev xml2 zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY </snip> And here is my package.keywords: <snip> dev-perl/Msql-Mysql-modules ~x86 www-servers/tomcat ~x86 dev-libs/apr ~x86 dev-libs/apr-util ~x86 net-www/apache ~x86 dev-java/struts ~x86 dev-java/struts-legacy ~x86 dev-java/commons-validator ~x86 perl-core/Storable ~x86 dev-perl/PlRPC ~x86 dev-perl/DBI ~x86 dev-perl/DBD-mysql ~x86 net-nds/openldap ~x86 dev-java/ant-core ~x86 app-arch/unzip ~x86 dev-java/bsh ~x86 dev-java/log4j ~x86 dev-java/commons-net ~x86 dev-java/jdepend ~x86 dev-java/gnu-crypto ~x86 dev-java/jsch ~x86 dev-java/antlr ~x86 dev-java/ant-tasks ~x86 dev-java/ant ~x86 dev-java/commons-daemon ~x86 </snip> -- gentoo-user@gentoo.org mailing list