aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Loeser <halcy0n@gentoo.org>2006-03-09 03:41:25 +0000
committerMark Loeser <halcy0n@gentoo.org>2006-03-09 03:41:25 +0000
commitbbfb28e736823048a90981ef1fa350ed9ddb463a (patch)
treec2ab8f116041ed201426123d09c38ddfd62e63c2 /profiles/use.mask/text.xml
parentAdd the eclass writing guide (diff)
downloaddevmanual-bbfb28e736823048a90981ef1fa350ed9ddb463a.tar.gz
devmanual-bbfb28e736823048a90981ef1fa350ed9ddb463a.tar.bz2
devmanual-bbfb28e736823048a90981ef1fa350ed9ddb463a.zip
Add profiles/
git-svn-id: svn+ssh://svn.gentoo.org/var/svnroot/devmanual/trunk@16 176d3534-300d-0410-8db8-84e73ed771c3
Diffstat (limited to 'profiles/use.mask/text.xml')
-rw-r--r--profiles/use.mask/text.xml45
1 files changed, 45 insertions, 0 deletions
diff --git a/profiles/use.mask/text.xml b/profiles/use.mask/text.xml
new file mode 100644
index 0000000..2effe8b
--- /dev/null
+++ b/profiles/use.mask/text.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<guide self="profiles/use.mask/">
+<chapter>
+<title>Profiles <c>use.mask</c> File</title>
+<body>
+
+<p>
+The <c>use.mask</c> file can be used to mark <c>USE</c> flags as unavailable on a
+particular profile. This can be useful for various reasons:
+</p>
+
+<ul>
+ <li>
+ Masking hardware-specific feature flags. For example, <c>mmx</c> and <c>sse</c> are
+ only available on x86, <c>altivec</c> is only available on <c>ppc</c> and <c>vis</c> is
+ only available on sparc v9.
+ </li>
+ <li>
+ Disabling unavailable soft dependencies. A simple hypothetical example <d /> say
+ <c>fooapp</c> works on <c>mips</c>, but has an optional dependency (controlled by
+ the <c>bar</c> flag) upon <c>libbar</c>, which doesn't work on <c>mips</c>. Then by
+ adding the <c>bar</c> flag to <c>profiles/default-linux/mips/use.mask</c>,
+ <c>fooapp</c> could be made available to <c>mips</c> users with the unresolvable
+ dependency forcibly disabled.
+ </li>
+</ul>
+
+<p>
+Note that <c>use.mask</c> is a per-flag thing, not per package's use of a given
+flag. This is one of the reasons that USE flags must have a specific well
+defined purpose.
+</p>
+
+<p>
+Updates to <c>use.mask</c> should be handled via the relevant arch team.
+</p>
+
+<p>
+See `noblah USE Flags`_ for more discussion.
+</p>
+
+</body>
+</chapter>
+</guide>
+