Hi Martin,
 
Thanks for your help.
 
Regarding my first question (TMPDIR):
Using DISTCC_TMPDIR won't help here, because the problem is that Cygwin is not giving the exact string as defined in the environment variable, but it convert it to UNIX path format.
 
What I did is converting it back to Windows path format, by rewriting dcc_get_tmp_top():
=============================================================
int dcc_get_tmp_top(const char **p_ret)
{
    const char *d;
 static char win32_path[MAX_PATH];
 
 d = getenv("TMPDIR");

    if (!d || d[0] == '\0') {
  *p_ret = "/cygdrive/c/tmp";
    } else {
        *p_ret = d;
   }

 /* Convert the path to Windows format, so the compiler will be able
  * to understand its inputs */
  cygwin_conv_to_full_win32_path( *p_ret, win32_path );

 *p_ret = win32_path;

 return 0;
}

=============================================================
 
Lucky me, Cygwing code can access both UNIX and Windows paths format, so there are no problems with the rest of distcc.exe and distccd.exe functionality.
 
Regarding my second question (DISTCC_HOSTS): you are right, it is really working :)
The real problem is at distccd. You must give IP addresses for the -allow option.
Anyway - I just changed the code of distccd so it will answer every client.
 
On 7/20/06, Martin Pool <[EMAIL PROTECTED]> wrote:
On 18 Jul 2006, Shlomi Mor <[EMAIL PROTECTED]> wrote:
> 1) TMPDIR
> I am using distcc on Cygwin, and I have a problem with TMPDIR.
> If TMPDIR = c:\tmp, distccd gets "/cygdrive/c/tmp" when calling getenv
> ("TMPDIR).
> The problem is that my compiler can't access such a path (it can get only
> regular windows paths, like "c:\tmp" or "c:/tmp" ).
>
> What is the most elegant way to fix it?
> (Of course I can change the dcc_get_tmp_top() function, so it will replace "/
> cygdrive/X/" with "X:/", but maybe there is nicer solution).

I suggest you write a patch which adds DISTCC_TMPDIR and uses that
instead if it's defined.

> 2) DISTCC_HOSTS
> Is there a way to use the computer name (inside my Windows domain) instead of
> IP numbers?
> I can't use IP numbers snice we are using DHCP.

I thought Windows domain naming was mapped to DNS in modern NT domains?
If so you should be able to just use those names.

If this isn't true in your environment, you'll need to investigate
whether there is an alternative to gethostbyname() which looks up WINS
names (??), and use that instead.

--
Martin

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

Reply via email to