I have /etc/distcc/hosts configured with 4 local builds, and 6 distibuted builds.

When I run 'make -j 10' myself, the build gets correctly distributed. But something strange happens when I try to use rpmbuild.

I have rpmbuild properly configured to run 'make -j 10'. And I see that ten distcc instances get started, but only for localhost builds appear to be running, and the remaining processes wait until a localhost slot becomes available, before spawning off g++.

I strace-d the entire rpmbuild.

What I see is that distcc never reads /etc/distcc/hosts, and just proceeds to run a local build.

When I run 'make -j 10' myself, this is what I see the distcc process doing:

17180 mkdir("/home/mrsam/.distcc", 0777 <unfinished …>
17180 <… mkdir resumed> )             = -1 EEXIST (File exists)
17180 access("/home/mrsam/.distcc/hosts", R_OK) = -1 ENOENT (No such file or directory)
17180 access("/etc/distcc/hosts", R_OK <unfinished …>

… and so on.

When I strace an entire rpmbuild, the distcc process, instead, does this:

10068 mkdir("/home/mrsam/.distcc", 0777 <unfinished …>
10068 <… mkdir resumed> )             = -1 EEXIST (File exists)
10068 mkdir("/home/mrsam/.distcc/lock", 0777 <unfinished …>
10068 <… mkdir resumed> )             = -1 EEXIST (File exists)
10068 open("/home/mrsam/.distcc/lock/cpu_localhost_0", O_WRONLY|O_CREAT, 0666 <unfinished …>

… and so on. What are the reasons distcc decides to skip checking /etc/distcc/hosts? grepping the entire strace, distcc never tries to read /etc/distcc/hosts.

Attachment: pgpwtPjQmokEE.pgp
Description: PGP signature

__
distcc mailing list            http://distcc.samba.org/
To unsubscribe or change options:
https://lists.samba.org/mailman/listinfo/distcc

Reply via email to