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

Reply via email to