Hi,

On Sun, 10 Sep 2006 13:36:12 +0200 (CEST)
Meino Christian Cramer <[EMAIL PROTECTED]> wrote:

>  If I set "X" by default in /etc/make.conf...what happens to programs,
>  which simply doesn't know anything about "X" ... for example 
>  "basename" (...yes, I know, "basename" is an builtin in most
>  shells...just an example).

They ignore it. Ebuilds basically just use a few functions to determine
whether a certain USE flag is or is not set. Developers use this for
making the script in the ebuild behave differently. So if there's no
check for a certain USE flag, it will just have no consequences.

>  Will make.conf override /usr/portagte/<category>/<progrname>/*.ebuild
>  ? If so, what happens, if the gentoo developpers have set "-X"
>  intentionally in the *ebuild file and I have set "X" (globally!) in
>  make.conf.

Not in that sense. As I said, ebuilds don't have "default flags", just
your system has. If a certain USE flag combination is considered bad
(or just concurrent) by an ebuild's developer, it just has to be
sorted out by the script in the ebuild. In fact, /etc/make.conf
(and /etc/portage/package.use) cannot override ebuild scripting logic.
The logic just respects a few settings in these.

>  Currently I am a little anxious to set "X" (or unset it or set/unset
>  any other USE flag in make.conf due to its global character). 

I can understand that. I think it is advised to use "X" for a machine
that is used as a desktop. You can check what would happen by including
it by setting USE as (temporary) environment variable:

$ USE="X" emerge -pvN world

this would show any package affected by such a change. Same goes for
unsetting flags ("-blah"). Before actually emerging packages for real,
enter the flags to your make.conf.

For package specific settings, use /etc/portage/package.use. This
overrides /etc/make.conf w/ regard to USE flags. Again, you can set and
unset them there.

Note that there is a default for USE flags in your profile. To start
from scratch (not advised for newcomers), you can prefix
your /etc/make.conf's USE setting with "-*". That would disable all
default USE flags from the profile. See "man portage" for details on
the files involved.

As an example, my /etc/make.conf's USE is just:
USE="-* nptl nptlonly ssl zlib jpeg png alsa ncurses pic nls pam"
All the other flags are configured per-package.

>  On the other side I dont like to compile qt three times for example,
>  due of missing USE flags...(initial compilation, openssl was
>  missing, opengl was missing).

Yes, more possibilities to configure packages lead to more
possibilities to misconfigure them :-) BTW, I *did* tell that "-*"
isn't the way to go for everyone, right? ;-)


-hwh
-- 
gentoo-user@gentoo.org mailing list

Reply via email to