eclipse-sdk doesn't depend on the gtk2 use flag, my use flags are: -gtk gtk2 it doesn't seem to look at gtk2. i've fixed it (dirty) using the attached patch.
Created attachment 31659 [details, diff] dirty patch dirty patch
1. Download dirty patch 2. Rename to "eclipse-sdk-3.0.0_pre8-r2.ebuild" 3. Move to "/usr/portage/dev-util/eclipse-sdk" 4. run USE="gtk2" ACCEPT_KEYWORDS="~x86" emerge eclipse-sdk Works like a charm! Now eclipse is compiled with gtk2 instead of Motif. Else I couldn't install EPIC [http://e-p-i-c.sourceforge.net/] it would give me error about me using Motif but not having it installed. It would be great if this patch could be applied in portage. Thanks a lot for it! :-)
"-gtk gtk2" as a USE flag will disable gtk support when any gtk support is avalible, and *may* build gtk2 support if that is an optional part if the gtk flag is unset and gtk is, how ever, if gtk support is optional, then no Dick, Zurd, i *highly* recommend you RTFM and change your USE flags to say "gtk gtk2" or "-gtk" or "-gtk2 gtk", because neither of you seem to realize that while using "-gtk gtk2" works, it is highly misleading and will lead to a number of your gtk programs (yes, even many of them that depend on gtk2, as eclipse does) will not be build with optional gtk support if any dev cares enought to handle stupid bugs like this, i suppose this should be set to "INVALID", as this is perfectly normal behavior of eclipse using the 'gtk' USE flag
my first paragraph made no sense, basicly, what i mean i that, using gtk2 will only build gtk support: 1. if you already have USE='gtk' also 2. the ebuild was designed to misuse gtk2 USE flag, which i doubt many are, and if they do build optional interfaces with the 'gtk2' use flag and not with 'gtk', then that is a bug gtk is for building optional gtk support of any version. gtk2 is for when theres a choice between gtk1 and gtk2 support, people can choice not to use gtk2 support. it does not mean at all that the 'gtk' use flag refeers to gtk 1.x
Joseph Booker, sorry I feel stupid :-( Maybe its a good idea to give atleast a warning when motif or gtk isn't set, USE=-motif -gtk emerge eclipse doesn't make sence at the moment ;-).
This is how it works: USE="gtk -motif" builds gtk2 support. gtk1 isn't supported. you cannot differentiate between 1 and 2. It's 2 or nothing, there's no sense in being able to select "gtk2 over gtk1", as don't support gtk1 at all. USE="-gtk motif" only motif is compiled. USE="-gtk -motif" gtk2 support is used as a fallback. USE="gtk motif" both frontends are compiled and installed. If you either of the above scenarios fail for you, please reopen or make a new bug report with a complete build log and output from emerge info. According to Spider, and his word is gospel on the matter, as he's the gtk+ maintainer, gtk2 is only used to select between gtk1 and gtk2. If you want gtk2 support, you need both gtk and gtk2 in your USE.