Bug 200095 - sys-devel/catalyst-2.0.5_pre5 (or svn-trunk) patch to add support for sys-devel/icecream cluster compiling
Bug#: 200095 Product:  Gentoo Hosted Projects Version: unspecified Platform: All
OS/Version: Linux Status: RESOLVED Severity: enhancement Priority: P2
Resolution: FIXED Assigned To: catalyst@gentoo.org Reported By: tais.hansen@osd.dk
Component: Catalyst
URL: 
Summary: sys-devel/catalyst-2.0.5_pre5 (or svn-trunk) patch to add support for sys-devel/icecream cluster compiling
Keywords:  InSVN
Status Whiteboard: 
Opened: 2007-11-23 16:57 0000
Description:   Opened: 2007-11-23 16:57 0000
Here's a patch which enables sys-devel/icecream support for compiling targets
in clusters.

Requires the icecream daemon to be running on the host which is running
catalyst. It is not necessary to run the daemon inside catalyst as catalyst
will use the build host's icecc job directory (/var/cache/icecream).

Remember to enable icecream by adding the keyword "icecream" to the options
string in /etc/catalyst/catalyst.conf. Also remember to increase the number of
make jobs by setting MAKEOPTS in /etc/catalyst/catalystrc. Icecream figures out
how many jobs can be distributed automatically so you can set the number of
jobs high without overloading the compile host. I.e. MAKEOPTS="-j15" is working
just fine here.

------- Comment #1 From Tais P. Hansen 2007-11-23 16:57:52 0000 -------
Created an attachment (id=136784) [details]
Adds sys-devel/icecream support to catalyst

------- Comment #2 From Chris Gianelloni (RETIRED) 2007-11-24 06:24:31 0000 -------
Cool.  I'll definitely check this out...

------- Comment #3 From Chris Gianelloni (RETIRED) 2007-11-25 05:39:12 0000 -------
Added to SVN... this will be released in a new catalyst shortly...

------- Comment #4 From Andrew Gaffney 2007-11-25 05:44:46 0000 -------
Just to note, neither of us are familiar with icecream or how its usage differs
from that of distcc. If this breaks, you've bought it. We'll also probably CC
you on any bugs that people file in this code :)

------- Comment #5 From Chris Gianelloni (RETIRED) 2007-11-25 05:48:22 0000 -------
He's such a flirt, isn't he?

What he means is we'll need to defer to you on questions until we've gotten a
grasp on the functionality of icecream.

This is in 2.0.5_pre6 which is going in the tree now.  Let me know if it
doesn't work for you.

------- Comment #6 From Tais P. Hansen 2007-11-27 12:40:47 0000 -------
I'm experiencing an issue with first stage building. The root-in-chroot stuff
is doing weird things specifically breaking libperl configure (testing gcc)
with permission problems. I'm working on figuring out why although I cannot
reproduce it outside catalyst.

------- Comment #7 From Andrew Gaffney 2007-11-27 12:45:30 0000 -------
Well, since it doesn't affect anything when it's not enabled, we're not going
to touch the code. If you find a fix, please submit a patch.

------- Comment #8 From Tais P. Hansen 2007-11-27 14:10:10 0000 -------
I've narrowed it down to a bug in icecreams handling of $PATH when searching
for the actual compiler. Perl's configure script adds /usr/libexec to $PATH and
icecream sees gcc in /usr/libexec/gcc and forgets to check if it's actually a
file. I'll have a patch ready for icecream in a few minutes.