Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 250401 - [science overlay] sci-chemistry/rosetta (new package)
Summary: [science overlay] sci-chemistry/rosetta (new package)
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Default Assignee for New Packages
URL: http://www.rosettacommons.org/
Whiteboard: Science overlay
Keywords: EBUILD
Depends on:
Blocks:
 
Reported: 2008-12-09 15:17 UTC by Hugo Mildenberger
Modified: 2011-06-20 06:19 UTC (History)
4 users (show)

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


Attachments
Rosetta++ license (rosetta,5.80 KB, text/plain)
2008-12-09 15:22 UTC, Hugo Mildenberger
Details
rosetta++ ebuild as a plain text file (rosetta-2.3.0.ebuild,4.95 KB, text/plain)
2008-12-09 15:25 UTC, Hugo Mildenberger
Details
rosetta++ metadata plain text (metadata.xml,461 bytes, text/plain)
2008-12-09 15:27 UTC, Hugo Mildenberger
Details
rosetta++ ChangeLog plain text (ChangeLog,1.92 KB, text/plain)
2008-12-09 15:28 UTC, Hugo Mildenberger
Details
rosetta++ Manifest plain text (Manifest,5.60 KB, text/plain)
2008-12-09 15:29 UTC, Hugo Mildenberger
Details
gzip compressed tar archive of rosetta ebuild directory, with patches (rosetta-2.3.0-ebuild.tar.gz,20.20 KB, application/octet-stream)
2008-12-09 15:35 UTC, Hugo Mildenberger
Details
revised ebuild (rosetta-2.3.0.ebuild,6.16 KB, text/plain)
2008-12-10 15:01 UTC, Hugo Mildenberger
Details
updated ChangeLog (ChangeLog,2.20 KB, text/plain)
2008-12-10 15:03 UTC, Hugo Mildenberger
Details
updated Manifest (Manifest,5.60 KB, text/plain)
2008-12-10 15:04 UTC, Hugo Mildenberger
Details
second revision of ebuild (rosetta++-2.3.0.ebuild,6.26 KB, text/plain)
2008-12-12 14:39 UTC, Hugo Mildenberger
Details
updated Changelog (ChangeLog,1.78 KB, text/plain)
2008-12-12 14:40 UTC, Hugo Mildenberger
Details
updated Manifest (Manifest,5.23 KB, text/plain)
2008-12-12 14:42 UTC, Hugo Mildenberger
Details
Whole ebuild directory (contains updated patchset) (rosetta++-2.3.0.tar.gz,16.70 KB, text/plain)
2008-12-12 14:46 UTC, Hugo Mildenberger
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Hugo Mildenberger 2008-12-09 15:17:59 UTC
Rosetta is used for prediction and design of protein structures, protein folding mechanisms, and protein-protein interactions. While there are online services around (see Robetta), this ebuild is the first step if one wants to run prediction tasks locally. The ebuild just provides the "rosetta" program itself. Ebuilds for database, antibody and documentation and scripts will follow separately, as these are very large packages.

RDEPEND is not complete, as a variety of rosetta scripts needs packages, which are not already provided by gentoo. An example for this is ncbi-blast, another psipred.

The ebuild is provided as a tar archive, as it contains a dozen patches.
Comment 1 Hugo Mildenberger 2008-12-09 15:22:26 UTC
Created attachment 174720 [details]
Rosetta++ license
Comment 2 Hugo Mildenberger 2008-12-09 15:25:33 UTC
Created attachment 174722 [details]
rosetta++ ebuild as a plain text file
Comment 3 Hugo Mildenberger 2008-12-09 15:27:09 UTC
Created attachment 174723 [details]
rosetta++ metadata plain text
Comment 4 Hugo Mildenberger 2008-12-09 15:28:10 UTC
Created attachment 174724 [details]
rosetta++ ChangeLog plain text
Comment 5 Hugo Mildenberger 2008-12-09 15:29:00 UTC
Created attachment 174726 [details]
rosetta++ Manifest plain text
Comment 6 Hugo Mildenberger 2008-12-09 15:35:15 UTC
Created attachment 174727 [details]
gzip compressed tar archive of rosetta ebuild directory, with patches
Comment 7 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 17:24:46 UTC
Does it compile with gcc-4*?
Comment 8 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 17:29:19 UTC
It could be named roseta++ as "+" is allowed.
http://devmanual.gentoo.org/ebuild-writing/file-format/index.html
Comment 9 Hugo Mildenberger 2008-12-09 18:05:02 UTC
(In reply to comment #7)
> Does it compile with gcc-4*?
yes. I compiled it using
1.) gcc 4.2.4 (Gentoo Hardened 4.2.4-r1 p1.0, builtin ssp,fortify, pie-9.0.11)
2.) gcc-4.3.2 (Gentoo 4.3.2 p1.1) 

Comment 10 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 18:23:46 UTC
Think
http://depts.washington.edu/ventures/UW_Technology/Express_Licenses/rosetta.php
is better in pkg_nofetch()
Comment 11 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 18:25:47 UTC
ncbi-blast is provided by sci-biology/ncbi-tools.
Comment 12 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 18:26:48 UTC
Can't you combine all those patches in one as-needed.patch?
Comment 13 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 18:28:00 UTC
typo in SRC_URI which leads to the speculation, that this ebuild was never used!?
Comment 14 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 18:33:48 UTC
icc 10.1 fails to build:

KeyError: "Unknown version number 10.1 for compiler 'icc'"
scons: done reading SConscript files.
scons: Building targets ...
scons: `.' is up to date.
scons: done building targets.
 * 
 * ERROR: sci-chemistry/rosetta-2.3.0 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 2134:  Called die
 * The specific snippet of code:
 *           die "scons ${MYCONF} failed";
 *  The die message:
 *   scons  mode=release extras=graphics,mpi,valgrind cxx=icc failed


PLUS CC=gcc and icc is used. That must be fixes.
Comment 15 Hugo Mildenberger 2008-12-09 19:34:37 UTC
(In reply to comment #13)
> typo in SRC_URI which leads to the speculation, that this ebuild was never
> used!?
> 
No, the typo "rosetta++_srouce" is original, as you could have seen on the download page (after registration).
Comment 16 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 19:45:52 UTC
(In reply to comment #15)
> (In reply to comment #13)
> > typo in SRC_URI which leads to the speculation, that this ebuild was never
> > used!?
> > 
> No, the typo "rosetta++_srouce" is original, as you could have seen on the
> download page (after registration).
> 

Can not confirm, I saw
https://www.rosettacommons.org/software/academic/2.3.0/rosetta++_source-2.3.0.tgz
Comment 17 Hugo Mildenberger 2008-12-09 20:03:11 UTC
(In reply to comment #14)
> icc 10.1 fails to build:
> 
> KeyError: "Unknown version number 10.1 for compiler 'icc'"
>  *  The die message:
>  *   scons  mode=release extras=graphics,mpi,valgrind cxx=icc failed
> 
>
So you emerged rosetta with USE="opengl mpi icc" ? Please try USE="opengl mpi -icc".

I haven't tried icc, but just provided the ability to use it, because icc is said to compile much faster code.

> PLUS CC=gcc and icc is used. That must be fixes.
>
The maintainers of rosetta decided to switch to scons as the one and only supported build system. Hence I was forced to base this ebuild on scons too.

Scons ignores each and everything what you are used from autoconf and gmake. 
I could test for $CC. But then I had to test $CXX to? To avoid such a mess, I introduced the icc - use flag, which is possibly not the best solution, though.

> KeyError: "Unknown version number 10.1 for compiler 'icc'"

While this really is an upstream problem, it should be easy to fix: 
look into tools/build/setup_platform.py and add support for icc 10.1 version, 

Then look into tools/build/options.settings. Just replace the line

  "icc"     : [ "8.0", "8.1", "9.0", "9.1", "*" ],

by

  "icc"     : [ "8.0", "8.1", "9.0", "9.1", "10.1" *],

and provide a patch, if you should succeed.
Comment 18 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 20:10:36 UTC
> So you emerged rosetta with USE="opengl mpi icc" ? Please try USE="opengl mpi
> -icc".

you are right. Sorry for that report.

> The maintainers of rosetta decided to switch to scons as the one and only
> supported build system. Hence I was forced to base this ebuild on scons too.
there is a makefile included, therefor a make should work. I will try this.
> Then look into tools/build/options.settings. Just replace the line
> 
>   "icc"     : [ "8.0", "8.1", "9.0", "9.1", "*" ],
> 
> by
> 
>   "icc"     : [ "8.0", "8.1", "9.0", "9.1", "10.1" *],
> 
> and provide a patch, if you should succeed.
> 
Comment 19 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 20:45:18 UTC
If MAKEOPTS="-j9 -l9" scons breaks as -l is not supported. SO this must be filtered.
Comment 20 Justin Lecher (RETIRED) gentoo-dev 2008-12-09 20:53:03 UTC
The licence has to be in $PORTAGE_ROOT/licenses and not installed in src_install.
do you use repoman?
Comment 21 Hugo Mildenberger 2008-12-09 21:58:37 UTC
(In reply to comment #16)
>>> typo in SRC_URI which leads to the speculation, that this ebuild was never
>>> used!?
>>> 
>> No, the typo "rosetta++_srouce" is original, as you could have seen on the
>> download page (after registration).
> 
>Can not confirm, I saw
>https://www.rosettacommons.org/software/academic/2.3.0/rosetta++_source-2.3.0.tgz
> 

$ tar -tvzf RosettaBundle-2.3.0.tgz
-rw-rw-r-- yiliu/yiliu 8007336 2008-04-18 22:42 rosetta++_srouce-2.3.0.tgz
-rw-rw-r-- yiliu/yiliu 153930790 2008-04-18 22:44 rosetta_database-2.3.0.tgz
-rw-rw-r-- yiliu/yiliu   3995023 2008-04-18 22:47 rosetta_documentation-2.3.0.tgz
-rw-rw-r-- yiliu/yiliu   3822872 2008-04-18 22:52 rosetta_scripts-2.3.0.tgz
-rw-rw-r-- yiliu/yiliu  91705267 2008-04-18 23:07 RosettaAntibody-2.3.0.tgz

So there is a subtile inconsistency, depending on wha archive you download. I used RosettaBundle-2.3.0.tar.gz first, and later decided to rebase the ebuilds on the splitted archives, because a single combined ebuild would consume way too much disk space during build.
Comment 22 Hugo Mildenberger 2008-12-09 22:32:40 UTC
(In reply to comment #20)
> The licence has to be in $PORTAGE_ROOT/licenses and not installed in
> src_install.

Then just how the a license usually arrives there?

> do you use repoman?

Yes. 
Comment 23 Justin Lecher (RETIRED) gentoo-dev 2008-12-10 08:50:31 UTC
(In reply to comment #22)
> (In reply to comment #20)
> > The licence has to be in $PORTAGE_ROOT/licenses and not installed in
> > src_install.
> 
If you create your personal overlay, just create an dir for that and place the license. Additionally add it to the bugreport and if it is added it will placed there by a dev.
> Then just how the a license usually arrives there?
> 
> > do you use repoman?
> 
> Yes. 
> 

Then it should have been complaining about missing license.
Comment 24 Hugo Mildenberger 2008-12-10 15:01:55 UTC
Created attachment 174862 [details]
revised ebuild

- fix SRC_UL "source" vs "srouce" filename issue, add a warning
- do not install license from src_install
- do not pass insane MAKEOPTS -l and --load-average to scons
Comment 25 Hugo Mildenberger 2008-12-10 15:03:15 UTC
Created attachment 174863 [details]
updated ChangeLog
Comment 26 Hugo Mildenberger 2008-12-10 15:04:50 UTC
Created attachment 174864 [details]
updated Manifest
Comment 27 Hugo Mildenberger 2008-12-10 15:09:01 UTC
(In reply to comment #23)
> Then it should have been complaining about missing license.
It did. Did you get icc 10.1 compiling rosetta in the meantime? 

Comment 28 Justin Lecher (RETIRED) gentoo-dev 2008-12-10 15:20:50 UTC
>RDEPEND=" mpi? ( virtual/mpi )
This is a DEPEND as mpiCC is used for compilation.

>		  boinc? ( sci-misc/boinc ) "
>		  sys-apps/sed
>		  sys-apps/findutils"
Do we need to depend on @system packages at all?

>src_prepare() {
>
>	epatch "${FILESDIR}/rosetta-elliptic-msd.patch"
>	epatch "${FILESDIR}/rosetta-gl-graphics.patch"
>	epatch "${FILESDIR}/rosetta-setup-platforms.patch"
>	epatch "${FILESDIR}/rosetta-options-settings.patch"
>	epatch "${FILESDIR}/rosetta-FileName-cc-ostream.patch"
>	epatch "${FILESDIR}/rosetta-PathName-cc-ostream.patch"
>	epatch "${FILESDIR}/rosetta-basic-settings-nostdc99.patch"
>	epatch "${FILESDIR}/rosetta-SConscript-src-use-clone.patch"
>	epatch "${FILESDIR}/rosetta-SConscript-src-2-use-clone.patch"
>	epatch "${FILESDIR}/rosetta-string-functions-cc.patch"
>	epatch "${FILESDIR}/rosetta-zipstream-ipp.patch"
>	epatch "${FILESDIR}/rosetta-DirectedSimAnnealer-cc.patch"
>	epatch "${FILESDIR}/rosetta-dna-cc.patch"
>	epatch "${FILESDIR}/rosetta-kin_id-h.patch"
>	epatch "${FILESDIR}/rosetta-dna_classes-h.patch"
>	epatch "${FILESDIR}/rosetta-loop_class-h.patch"
>	epatch "${FILESDIR}/rosetta-barcode_classes-h.patch"
>	epatch "${FILESDIR}/rosetta-packing_measures-cc.patch"
>	epatch "${FILESDIR}/rosetta-XUtilities-cc.patch"
>	epatch "${FILESDIR}/rosetta-basic-settings-nostrip.patch"
>	epatch "${FILESDIR}/rosetta-basic-settings-gcc43.patch"
>	epatch "${FILESDIR}/rosetta-barcode_classes-h-unitialized.patch"
>	epatch "${FILESDIR}/rosetta-marchingCubes-cc-missing-braces.patch"
Still would prefere to bundle some patches which are related e.g. patched headers, patched includes, patches for compiler  stuff to end up with a small number.

>
>src_unpack() {
>	unpack ${A}
>}
This is default so you can leave this out (http://devmanual.gentoo.org/ebuild-writing/functions/index.html)

>my_filter_option() {
>	local value="$1"
>	local exp="$2"
>	local result=`echo ${value} | sed -e s/${exp}//g`
>	echo "${result}"
>	return 0;
>}
Probably better to move you're functions to the end to enhance readability.

>src_install() {
>	#install executable(s)
>	dobin bin/*
Needs die.

>	if use doc; then
>	   dohtml build/doc/rosetta++/docs/*
>	fi
Probably you want to do it this way:
      use doc && dohtml build/doc/rosetta++/docs/*
and some devs like to die here too.
Comment 29 Justin Lecher (RETIRED) gentoo-dev 2008-12-10 15:21:46 UTC
(In reply to comment #27)
> (In reply to comment #23)
> > Then it should have been complaining about missing license.
> It did. Did you get icc 10.1 compiling rosetta in the meantime? 
> 

No it couldn't find icpc, the cxx compiler of icc. Needs more testing.
Comment 30 Hugo Mildenberger 2008-12-10 15:51:17 UTC
(In reply to comment #28)
> >RDEPEND=" mpi? ( virtual/mpi )
> This is a DEPEND as mpiCC is used for compilation.

As for openmpi, it's probably both. 

> Do we need to depend on @system packages at all?

Good question. The documentation says you have to include here all packages needed to compile the ebuild. Hence, you would have to include a compiler package too. And a shell, and a dozen very basic tools more?
 

> Still would prefere to bundle some patches which are related e.g. patched
> headers, patched includes, patches for compiler  stuff to end up with a small
> number.

Sorry. Patches should be as small as possible. Crosspatching the whole system would make it difficult to bisect a problematic patch. 
Comment 31 Justin Lecher (RETIRED) gentoo-dev 2008-12-10 16:02:54 UTC
(In reply to comment #30)
> Good question. The documentation says you have to include here all packages
> needed to compile the ebuild. Hence, you would have to include a compiler
> package too. And a shell, and a dozen very basic tools more?
So no we don't need to depend on them. (http://devmanual.gentoo.org/general-concepts/dependencies/index.html)

> > Still would prefere to bundle some patches which are related e.g. patched
> > headers, patched includes, patches for compiler  stuff to end up with a small
> > number.
> 
> Sorry. Patches should be as small as possible. Crosspatching the whole system
> would make it difficult to bisect a problematic patch. 
> 
Quoting darkside: "a smaller amount of patches is preferred normally, use your discretion .... every file takes up 4K on unoptimized filesystems"
Comment 32 Hugo Mildenberger 2008-12-12 14:39:23 UTC
Created attachment 175093 [details]
second revision of ebuild 

- Renamed ebuild from 'rosetta' to 'rosetta++'
- Renamed ebuild directory, patches and license likewise
- Removed explicit sys-apps/* dependencies from DEPEND 
- Removed rosetta license copy from files/static/rosetta 
- Commented each patch inside the patch itself
- Combined several patches against barcode_classes.h into a single file
- Removed patch against tools/build/basic.settings
- Added patch against tools/build/user.settings and got icc working
- Ebuild now compiles ok with:
  gcc 4.2.4-r1 p1.0, builtin ssp,fortify, pie-9.0.11
  gcc 4.3.2 p1.1
  icc 10.1.018  (Note: if you still get icpc not found see if 
                 libstdc++-v3 really is installed. icpc depends on this)

- TODO: When using gcc 3.3.6-1, build still fails in dock_ensemble.cc:678,
  at a suspiciously looking construct (taking address of a temporary?). 
  Same problem in dock_loop_ensemble.cc, pose_docking_flexible.cc.
  A similar problem exists in epigraft_functions.hh:59-61. 
  Perhaps someone experienced with the ObjexxFCL fortran/c++ class 
  library could fix this?
- TODO: The boinc target still does not compile with any compiler, as does
  the test target, both to an invalid scons build setup. Don't know how
  to fix this.
Comment 33 Hugo Mildenberger 2008-12-12 14:40:35 UTC
Created attachment 175095 [details]
updated Changelog
Comment 34 Hugo Mildenberger 2008-12-12 14:42:25 UTC
Created attachment 175098 [details]
updated Manifest
Comment 35 Hugo Mildenberger 2008-12-12 14:46:57 UTC
Created attachment 175103 [details]
Whole ebuild directory (contains updated patchset)

Justin, could you please try to compile rosetta++ with icc now?
Comment 36 Hugo Mildenberger 2008-12-12 14:48:23 UTC
Comment on attachment 174720 [details]
Rosetta++ license

Please rename license file from "rosetta" to "rosetta++"
Comment 37 Justin Lecher (RETIRED) gentoo-dev 2008-12-12 17:58:27 UTC
(In reply to comment #32)
> Created an attachment (id=175093) [edit]
> second revision of ebuild 
> 
> - Renamed ebuild from 'rosetta' to 'rosetta++'
> - Renamed ebuild directory, patches and license likewise
> - Removed explicit sys-apps/* dependencies from DEPEND 
> - Removed rosetta license copy from files/static/rosetta 
> - Commented each patch inside the patch itself
> - Combined several patches against barcode_classes.h into a single file
> - Removed patch against tools/build/basic.settings
> - Added patch against tools/build/user.settings and got icc working
> - Ebuild now compiles ok with:
>   gcc 4.2.4-r1 p1.0, builtin ssp,fortify, pie-9.0.11
>   gcc 4.3.2 p1.1
>   icc 10.1.018  (Note: if you still get icpc not found see if 
>                  libstdc++-v3 really is installed. icpc depends on this)
> 
> - TODO: When using gcc 3.3.6-1, build still fails in dock_ensemble.cc:678,
>   at a suspiciously looking construct (taking address of a temporary?). 
>   Same problem in dock_loop_ensemble.cc, pose_docking_flexible.cc.
>   A similar problem exists in epigraft_functions.hh:59-61. 
>   Perhaps someone experienced with the ObjexxFCL fortran/c++ class 
>   library could fix this?
> - TODO: The boinc target still does not compile with any compiler, as does
>   the test target, both to an invalid scons build setup. Don't know how
>   to fix this.
> 

Thanks for your enormous work on that . I'll go testing the weekend.
Comment 38 Justin Lecher (RETIRED) gentoo-dev 2008-12-12 19:08:12 UTC
Tests are running:

needs change in tools/build/basic.settings in line 407

-             "cxx"           : "mpiCC",
+             "cxx"           : "mpicxx",

Comment 39 Hugo Mildenberger 2008-12-12 19:34:59 UTC
(In reply to comment #38)

Looks like a bug in your local mpi version. 
Which mpi package are you using? 

I didn't see this with openmpi-1.2.8:

$ ls -l /usr/bin/mpi*
/usr/bin/mpic++ -> opal_wrapper
/usr/bin/mpicc -> opal_wrapper
/usr/bin/mpiCC -> opal_wrapper
/usr/bin/mpicxx -> opal_wrapper
[...]
Comment 40 Justin Lecher (RETIRED) gentoo-dev 2008-12-13 09:03:38 UTC
I have currently mpich2 emerged:

/usr/bin/mpicc
/usr/bin/mpich2version
/usr/bin/mpicxx
/usr/bin/mpiexec
/usr/bin/mpiexec.gforker
/usr/bin/mpif77
/usr/bin/mpif90
/usr/bin/mpirun
/usr/bin/mpirun.py
/usr/bin/parkill


So we need some correct. Perhaps we can find a package with similar situation.
Comment 41 Justin Lecher (RETIRED) gentoo-dev 2008-12-13 09:07:53 UTC
And we need -fno-exeptions removed from settings:

In file included from /usr/include/mpi.h:1143,
                 from job_distributor.cc:12:
/usr/include/mpicxx.h: In member function 'virtual void MPI::Datatype::Commit()':
/usr/include/mpicxx.h:182: error: exception handling disabled, use -fexceptions to enable
scons: *** [build/src/release/linux/2.6/32/x86/gcc/shared-graphics-mpi/rosetta++/job_distributor.o] Error 1
scons: building terminated because of errors.
Comment 42 Hugo Mildenberger 2008-12-13 10:42:12 UTC
(In reply to comment #41 and #42)
> And we need -fno-exeptions removed from settings
That's bad news. The maintainers had disabled exceptions for using them would result in a considerable runtime overhead. Can mpich2 be configured to compile without execeptions? Else it should dependend on mpich2. There is a inconsistency regarding used compiler too. openmpi just uses gcc, and AFAIK there is no possibility to integrate icc into gcc-config. 

As for mpiCC, mpicxx seems to be a common denominator. In addition, "man mpi" says that mpiCC only exists on systems with case sensitive file systems". Hence  I'll add a patch.
Comment 43 Justin Lecher (RETIRED) gentoo-dev 2008-12-13 11:00:41 UTC
(In reply to comment #42)
> (In reply to comment #41 and #42)
> > And we need -fno-exeptions removed from settings
> That's bad news. The maintainers had disabled exceptions for using them would
> result in a considerable runtime overhead. Can mpich2 be configured to compile
> without execeptions? 
I don't know. We should figure this out.

> Else it should dependend on mpich2. There is a
> inconsistency regarding used compiler too. openmpi just uses gcc, and AFAIK
> there is no possibility to integrate icc into gcc-config.
There is a open bug for this. But I don't find him. 

> 
> As for mpiCC, mpicxx seems to be a common denominator. In addition, "man mpi"
> says that mpiCC only exists on systems with case sensitive file systems". Hence
>  I'll add a patch.
> 


I checked combination of USE="(-)mpi (-)icc" and all compile fine. So only two things to fix left: mpiCC and exceptions.
Comment 44 Hugo Mildenberger 2008-12-14 13:23:35 UTC
(In reply to comment #43)

> I checked combination of USE="(-)mpi (-)icc" and all compile fine. 
> So only two things to fix left: mpiCC and exceptions.

Having installed sys-cluster/mpich2-1.0.3-r1 instead of openmpi/1.2.8, I got the following mpi tools:

ls -l /usr/bin/mpi*
  /usr/bin/mpicc
  /usr/bin/mpich2version
  /usr/bin/mpiexec -> mpiexec.py
  [...]

Apparently, mpicxx is missing here because the use-flag "cxx" was not given during install. Some of the currently known mpi packages (mpich  mpich2  mpiexec) do provide a "cxx" use flage, while some other (virtuals/mpi, openmpi and lam-mpi) do not. So, within an ebuild, how do you specifiy an additional use flags for packages listed in DEPEND ? 
Comment 45 Justin Lecher (RETIRED) gentoo-dev 2008-12-14 14:15:43 UTC
With EAPI="2" it is very straight, just DEPEND="foo/bar[cxx]". But I don't know if this is working with virtual/mpi[cxx]. I try to figure this out.
Comment 46 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2008-12-30 17:05:14 UTC
(this is an automated message based on filtering criteria that matched this bug)

Hello, The Gentoo Team would like to firstly thank you for your ebuild submission. We also apologize for not being able to accommodate you in a timely manor. There are simply too many new packages.

Allow me to use this opportunity to introduce you to Gentoo Sunrise. The sunrise overlay[1] is a overlay for Gentoo which we allow trusted users to commit to and all users can have ebuilds reviewed by Gentoo devs for entry into the overlay. 
So, the sunrise team is suggesting that you look into this and submit your ebuild to the overlay where even *you* can commit to. =)

Because this is a mass message, we are also asking you to be patient with us. We anticipate a large number of requests in a short time. 

Thanks,
On behalf of the Gentoo Sunrise Team,
Jeremy.

[1]: http://www.gentoo.org/proj/en/sunrise/
[2]: http://overlays.gentoo.org/proj/sunrise/wiki/SunriseFaq
Comment 47 Justin Lecher (RETIRED) gentoo-dev 2008-12-30 17:14:57 UTC
Think this one makes more sense in the science overlay.