Serializing possibly resource-intensive tasks such as meinproc

Thiago Macieira thiago at kde.org
Fri Jan 8 20:23:11 CET 2010


Em Sexta-feira 08 Janeiro 2010, às 16:09:27, Lubos Lunak escreveu:
>  Ok, but I'd prefer a more long-term solution, when I finally got to doing 
> something about it.

A more long-term solution would be for cmake to understand the concept of 
compile farms.

In any case, I have solved this problem locally for more than 2 years. The 
attached program is what I use. It's a small LD_PRELOAD module that will 
enslave the execution of some programs to the scheduler. It has "tb" hardcoded 
because I wrote it for Teambuilder, but changing it to Icecream is trivial 
(findInPath("tb") to findInPath("icecc")).

To use:
- build it and put it somewhere known (like $HOME/bin)

- add to your ~/.profile, ~/.bashenv or similar script:
	export EN_TB=moc:uic:uic3:meinproc4:qmake:automoc4

- ensure you have LD_PRELOAD set to the script when compiling, like for 
example this function in ~/.profile or something
	function make() {
		export LD_PRELOAD=$HOME/bin/en-tb.so 
		command make "$@"
	}
Or if you have a make-replacement script, add to it.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
  Senior Product Manager - Nokia, Qt Development Frameworks
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: en-tb.c
Type: text/x-csrc
Size: 3902 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20100108/bd554af1/attachment.c 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Makefile
Type: text/x-makefile
Size: 111 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20100108/bd554af1/attachment.bin 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20100108/bd554af1/attachment.sig 


More information about the Kde-buildsystem mailing list