Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 177368 - crossdev and layman appear to have a conflict.
Summary: crossdev and layman appear to have a conflict.
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Toolchain Maintainers
: 181645 212328 (view as bug list)
Depends on:
Reported: 2007-05-06 20:34 UTC by Hal Engel
Modified: 2013-08-25 02:36 UTC (History)
2 users (show)

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 Hal Engel 2007-05-06 20:34:31 UTC
When configuring a build target with crossdev when there is a layman overlay installed crossdev uses the wrong overlay path.  As a result it puts it's overlays in the first overlay path in the layman make.conf.  That is if /etc/make.conf has:

PORTDIR_OVERLAY="/usr/i686-mingw32/usr/portage /usr/local/portage"
source /usr/portage/local/layman/make.conf

and no layman overlays are installed it will place the mingw32 overlay in the correct place.  But if I add an overlay with (for example):

layman -a sunrise

then crossdev i686-mingw32 will place it's overlay in the sunrise overlay directory.

Reproducible: Always

Steps to Reproduce:
1.  Details in decription

Actual Results:  
crossdev overaly is in wrong location if there is a layman overlay.

Expected Results:  
crossdev should be able to figure out how to correctly configure it own overlay directory.
Comment 1 SpanKY gentoo-dev 2007-05-06 21:29:24 UTC
so put the overlay you want crossdev to put its links in as the first element
Comment 2 Hal Engel 2007-05-07 05:54:36 UTC
I might be, perhaps more than, a little confused about how this is supposed to work.  I went back and looked at the "Gentoo Cross Development Guide" and I now see that it does not say anything about setting the PORTDIR_OVERLAY.  But other sources about crossdev such as the Gentoo wiki HOWTO MinGW do.  I concluded that the simplest way to keep layman from clobbering the order of the portdir_overlay directories was to change make.conf to look like this:

source /usr/portage/local/layman/make.conf
PORTDIR_OVERLAY="/usr/i686-mingw32/usr/portage /usr/local/portage $PORTDIR_OVERLAY"
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2007-06-11 14:02:56 UTC
*** Bug 181645 has been marked as a duplicate of this bug. ***
Comment 4 Jakub Moc (RETIRED) gentoo-dev 2008-03-04 22:43:02 UTC
*** Bug 212328 has been marked as a duplicate of this bug. ***
Comment 5 Michael Weber (RETIRED) gentoo-dev 2013-08-17 11:45:43 UTC
crossdev still writes to layman overlays, still a RESO/WONT? I don't like my crossdev targets apprearing in random overlays

io portage # eix -e cross-avr/gdb     
[U] cross-avr/gdb
     Available versions:  
     (avr)  6.6-r2[1] 6.6-r2[2] 6.7.1-r3[1] 6.7.1-r3[2] 6.8-r1[1] 6.8-r1[2] (~)6.8-r2[1] (~)6.8-r2[2] 7.0.1[1] 7.0.1[2] (~)7.1[1] (~)7.1[2] 7.2[1] 7.2[2] **[1] **[2] (~)7.3[1] (~)7.3[2] 7.3.1[1] 7.3.1[2]
     (0)    (~)7.3.1-r1[1] (~)7.3.1-r1[2] (~)7.4[1] (~)7.4[2] (~)7.4.1[1] (~)7.4.1[2] 7.5[1] 7.5[2] 7.5.1{tbz2}[1] 7.5.1{tbz2}[2] (~)7.6[1] (~)7.6[2] **9999[1] **9999[2]
       {+client expat multitarget nls (+)python +server test vanilla zlib}
     Installed versions:  7.5.1{tbz2}[2](11:48:05 AM 08/17/2013)(client nls python server zlib -expat -multitarget -test -vanilla)
     Description:         GNU debugger

[1] "mgorny" /var/lib/layman/mgorny
[2] "local" /etc/portage/overlay
Comment 6 Alexander Weber 2013-08-17 12:23:42 UTC
my current workaround is the next setting in make.conf:

source /usr/portage/local/layman/make.conf

in this case the crossdev-overlay is allways first.

My suggestion to solve the issue: because crossdev allways needs an overlay, the overlay should be hard-coded to /var/db/crossdev/overlay or in /usr/share/crossdev/overlay.
Comment 7 SpanKY gentoo-dev 2013-08-25 02:36:41 UTC
there's nothing to be done here.  fix the order of your overlays, or use the overlay flags that crossdev already supports.