Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 258115 - x11-themes/mythtv-themes-extra abusing ${ROOT}
Summary: x11-themes/mythtv-themes-extra abusing ${ROOT}
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High QA (vote)
Assignee: Television related Applications in Gentoo's Portage
Depends on:
Blocks: 258096
  Show dependency tree
Reported: 2009-02-08 12:54 UTC by Thilo Bangert (RETIRED) (RETIRED)
Modified: 2009-11-10 16:03 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Note You need to log in before you can comment on or make changes to this bug.
Description Thilo Bangert (RETIRED) (RETIRED) gentoo-dev 2009-02-08 12:54:56 UTC
+++ This bug was initially created as a clone of Bug #258114 +++

Some notes on 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.

* 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. Cross-compiling etc is done by configuring the
toolchain correctly, not by hacking ebuilds in a way that breaks binary

See also the discussion on bug #167285 for more info.
Comment 1 Doug Goldstein (RETIRED) gentoo-dev 2009-11-08 01:34:44 UTC
Suggest the fix. That variable is used and unfortunately generated files have paths hardcoded into them.
Comment 2 Thilo Bangert (RETIRED) (RETIRED) gentoo-dev 2009-11-08 09:02:12 UTC
if the buildsystem hardcodes the location of the binaries, then that is still independant of ROOT. ROOT only allows the installation of a binary into a different directory. they are not meant to be run "from there" - they are meant to be run where the root of the system is ROOT (ie. chroot $ROOT)

just strip it away. the point of ROOT is that you should be able chroot into it and then call the binaries - so adding ROOT to the paths wont work correctly.

again - ROOT might be set at install time, for packages which have been built on a entirely different machine (with a different ROOT set)...

the latest version doesnt use it anymore - so punting the old ebuilds would also do it.

Comment 3 Doug Goldstein (RETIRED) gentoo-dev 2009-11-10 16:03:51 UTC