Index: ebuild-writing/variables/text.xml =================================================================== --- ebuild-writing/variables/text.xml (revision 141) +++ ebuild-writing/variables/text.xml (working copy) @@ -93,7 +93,8 @@ ROOT Path to the root directory. When not using ${D}, - always prepend ${ROOT} to the path. + always prepend ${ROOT} to the path, see + . @@ -351,6 +352,48 @@
+ROOT + + +

+The idea behind ROOT is that one can build a system with +ROOT=/somewhere and then chroot into it or tar up /somewhere +as a system image. It is not designed to allow the user to run +/somewhere/usr/bin/foo. +

+ +

+An ebuild could use ROOT in pkg_postinst() to conditionally print +an error message if an old and obsolete configuration file still exists. + + +pkg_postinst() { + if [ -e "${ROOT}/etc/oldconfig" ]; then + ewarn "You still have the obsolete config file " + ewarn " ${ROOT}/etc/oldconfig." + ewarn "Please migrate your settings to ${ROOT}/etc/newconfig" + ewarn "and remove ${ROOT}/etc/oldconfig." + fi +} + +

+ +

+ROOT can't be used correctly in src_*, since ROOT might be +different when merging a binary package. For example, a binary package might be +built with ROOT=/ and then installed onto a system using +ROOT=/somewhere. +

+ +

+ROOT isn't used for library dependencies. When building, libraries, +headers etc. on / have to be used. +

+ + +
+ +
Version Formatting Issues