Re: [distcc] Re: ARM Tools / ADS (tcc tccp armcomp) porting

2008-06-10 Thread Fergus Henderson
Hi Aaron,

I suspect that using pump mode (new in distcc 3.0) probably solves this
issue without any need for a new DISTCC_KEEP_FILETYPE environment variable.
So if that works, that would be my preferred solution.

Cheers,
  Fergus.

On Tue, Apr 15, 2008 at 11:20 PM, Aaron Perez [EMAIL PROTECTED]
wrote:

 Fergus Henderson fergus at google.com writes:

  Hi Aaron,Can you please use diff -u rather than diff to produce
 patches?
  Also, it would be nice to update the man page to describe the new
 environment
  variable.Cheers,  Fergus.
  On Tue, Apr 15, 2008 at 5:25 PM, Aaron Perez Aaron.Perez at
 hospira.com
 wrote:
 
 
  Wang Lixin wanglx at huawei.com writes:
  
  
   Hi,
  
  
   I am
   interesting in DISTCC porting for ARM/ADS. How can i get this patch?
   Can you send it to me by email.
   Thanks.
  
  
   B.R.
   Wang Lixin
  
  
  
 
   __
   distcc mailing listhttp://distcc.samba.org/
   To unsubscribe or change options:
   https://lists.samba.org/mailman/listinfo/distcc
  All,
  I've been playing with the distcc/armcc combo for a while now and
 though
  I'd like to go through the formal development process, it's not all that
  straightforward and I don't have that much free time (enough ranting).
  To the point, armcc/armcpp won't compile anything that it's not
 expecting
  (*.i, *.ii, etc. vs. *.c, *.cpp, etc). Apparently it doesn't even try to
 open
  it, it just dies with a semi-cryptic C3065E: type of file unknown. I
 wrote a
  DISTCC_KEEP_FILETYPE flag so that armcc is happy and it appears to
 working
  correctly (I haven't gotten a full compile yet due to lack of time and a
  complex makefile system).
  Also, I had to setup TMPDIR=c:/cygwin/tmp/ or armcc kept erroring
 with a
  can't find /tmp/file.c. If I gave it a relative path it was fine but it
 didn't
  like an absolute path. A co-worker and I stumbled upon giving it the DOS
 path
  instead of /cygdrive/c/cygwin/tmp/ that CygWin thinks it is and that was
 the
  last piece of the puzzle.
  Hope this helps everybody running a distcc/armcc/cygwin chain.
  Here's the diff
  diff ./distcc-2.18.3/src/filename.c
 ./original/distcc-2.18.3/src/filename.c
  140,167c140,157
  
   /*
* Keep the file's extension *.c, *.cpp, etc. instead of *.i, *.ii,
 etc.
* Some compiler's (i.e. ARM's armcc, armcpp, etc.) will only
 compile
  expected filetypes
* and *.i, *.ii, etc. are not expected.
*/
   if (dcc_getenv_bool(DISTCC_KEEP_FILETYPE, 1)) {
   return e;
 } else {
 e++;
   if (!strcmp(e, i) || !strcmp(e, c)) {
   return .i;
   } else if (!strcmp(e, c) || !strcmp(e, cc)
  || !strcmp(e, cpp) || !strcmp(e, cxx)
  || !strcmp(e, cp) || !strcmp(e, c++)
  || !strcmp(e, C) || !strcmp(e, ii)) {
   return .ii;
   } else if(!strcmp(e,mi) || !strcmp(e, m)) {
   return .mi;
   } else if(!strcmp(e,mii) || !strcmp(e,mm)
   || !strcmp(e,M)) {
   return .mii;
   } else if (!strcasecmp(e, s)) {
   return .s;
   } else {
   return NULL;
   }
   }
  ---
   e++;
   if (!strcmp(e, i) || !strcmp(e, c)) {
   return .i;
   } else if (!strcmp(e, c) || !strcmp(e, cc)
  || !strcmp(e, cpp) || !strcmp(e, cxx)
  || !strcmp(e, cp) || !strcmp(e, c++)
  || !strcmp(e, C) || !strcmp(e, ii)) {
   return .ii;
   } else if(!strcmp(e,mi) || !strcmp(e, m)) {
   return .mi;
   } else if(!strcmp(e,mii) || !strcmp(e,mm)
   || !strcmp(e,M)) {
   return .mii;
   } else if (!strcasecmp(e, s)) {
   return .s;
   } else {
   return NULL;
   }
  __
  distcc mailing listhttp://distcc.samba.org/
  To unsubscribe or change
 options:https://lists.samba.org/mailman/listinfo/distcc
 
 
  -- Fergus Henderson fergus at google.com
 
  __
  distcc mailing listhttp://distcc.samba.org/
  To unsubscribe or change options:
  https://lists.samba.org/mailman/listinfo/distcc

 I'll try to do the man pages this weekend, if I'm not working. Here's the
 diff -
 u output:

 bash$ diff -u ./distcc-2.18.3/src/ ./original/distcc-2.18.3/src/
 diff -u ./distcc-2.18.3/src/filename.c
 ./original/distcc-2.18.3/src/filename.c
 --- ./distcc-2.18.3/src/filename.c  2008-04-15 14:54:05.660072600 -0700
 +++ ./original/distcc-2.18.3/src/filename.c 2004-10-23
 22:05:26.0 -0
 700
 @@ -137,34 +137,24 @@
  {
 if (e[0] != '.')
 return NULL;
 -
 -/*
 - * Keep the file's extension *.c, *.cpp, etc. instead of *.i, *.ii,
 etc.
 - * Some compiler's (i.e. ARM's armcc, armcpp, etc.) will only compile
 expected filetypes
 - * and *.i, *.ii, etc. are not expected.
 - */
 -if (dcc_getenv_bool(DISTCC_KEEP_FILETYPE, 1)) {
 -

Re: [distcc] Re: ARM Tools / ADS (tcc tccp armcomp) porting

2008-06-10 Thread Fergus Henderson
On Tue, Jun 10, 2008 at 3:12 PM, Perez, Aaron P. [EMAIL PROTECTED]
wrote:

  I was looking at the online man pages this morning and wondering the
 same thing myself. When I get the time to try it out I will let you know.
 One thing that I wasn't clear on (as I only scanned over this) does pump
 mode require source (or directory structure) on all machines or are all of
 the necessary source and headers sent over to the volunteer machine?


All of the application source files and headers are sent to the volunteer
machines running the distccd servers.
System header files, however, are not sent.  By system header files I mean
those on the default search path (which is output by e.g. gcc -x c++ -c -v
/dev/null -o /dev/null).

Cheers,
  Fergus.

-- 
Fergus Henderson [EMAIL PROTECTED]
__ 
distcc mailing listhttp://distcc.samba.org/
To unsubscribe or change options: 
https://lists.samba.org/mailman/listinfo/distcc

Re: [distcc] Re: ARM Tools / ADS (tcc tccp armcomp) porting

2008-06-10 Thread Nils Klarlund
Just adding to this: we didn't investigate how to extract this default
search path for other platforms than gcc. The include server assumes that
the output of gcc -v is an very particular format.  You may need to extend
this parser or perhaps simply extend the include processor with a flag to
explictily pass the default system dirs.  For testing purposes, you could
comment out the current code that queries the compiler and set the involved
variables to empty. You'd still need the default system headers on your
servers.
/Nils

On Tue, Jun 10, 2008 at 3:59 PM, Fergus Henderson [EMAIL PROTECTED] wrote:

 On Tue, Jun 10, 2008 at 3:12 PM, Perez, Aaron P. [EMAIL PROTECTED]
 wrote:

  I was looking at the online man pages this morning and wondering the
 same thing myself. When I get the time to try it out I will let you know.
 One thing that I wasn't clear on (as I only scanned over this) does pump
 mode require source (or directory structure) on all machines or are all of
 the necessary source and headers sent over to the volunteer machine?


 All of the application source files and headers are sent to the volunteer
 machines running the distccd servers.
 System header files, however, are not sent.  By system header files I mean
 those on the default search path (which is output by e.g. gcc -x c++ -c -v
 /dev/null -o /dev/null).

 Cheers,
   Fergus.

 --
 Fergus Henderson [EMAIL PROTECTED]

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




-- 


Nils Klarlund
Google, Inc.
__ 
distcc mailing listhttp://distcc.samba.org/
To unsubscribe or change options: 
https://lists.samba.org/mailman/listinfo/distcc

Re: [distcc] Re: ARM Tools / ADS (tcc tccp armcomp) porting

2008-04-15 Thread Fergus Henderson
Hi Aaron,

Can you please use diff -u rather than diff to produce patches?
Also, it would be nice to update the man page to describe the new
environment variable.

Cheers,
  Fergus.

On Tue, Apr 15, 2008 at 5:25 PM, Aaron Perez [EMAIL PROTECTED]
wrote:

 Wang Lixin wanglx at huawei.com writes:

 
 
  Hi,
 
 
  I am
  interesting in DISTCC porting for ARM/ADS. How can i get this patch?
  Can you send it to me by email.
  Thanks.
 
 
  B.R.
  Wang Lixin
 
 
 
  __
  distcc mailing listhttp://distcc.samba.org/
  To unsubscribe or change options:
  https://lists.samba.org/mailman/listinfo/distcc

 All,

I've been playing with the distcc/armcc combo for a while now and
 though
 I'd like to go through the formal development process, it's not all that
 straightforward and I don't have that much free time (enough ranting).

To the point, armcc/armcpp won't compile anything that it's not
 expecting
 (*.i, *.ii, etc. vs. *.c, *.cpp, etc). Apparently it doesn't even try to
 open
 it, it just dies with a semi-cryptic C3065E: type of file unknown. I
 wrote a
 DISTCC_KEEP_FILETYPE flag so that armcc is happy and it appears to working
 correctly (I haven't gotten a full compile yet due to lack of time and a
 complex makefile system).

Also, I had to setup TMPDIR=c:/cygwin/tmp/ or armcc kept erroring with
 a
 can't find /tmp/file.c. If I gave it a relative path it was fine but it
 didn't
 like an absolute path. A co-worker and I stumbled upon giving it the DOS
 path
 instead of /cygdrive/c/cygwin/tmp/ that CygWin thinks it is and that was
 the
 last piece of the puzzle.

Hope this helps everybody running a distcc/armcc/cygwin chain.

 Here's the diff
 diff ./distcc-2.18.3/src/filename.c
 ./original/distcc-2.18.3/src/filename.c
 140,167c140,157
 
  /*
   * Keep the file's extension *.c, *.cpp, etc. instead of *.i, *.ii,
 etc.
   * Some compiler's (i.e. ARM's armcc, armcpp, etc.) will only
 compile
 expected filetypes
   * and *.i, *.ii, etc. are not expected.
   */
  if (dcc_getenv_bool(DISTCC_KEEP_FILETYPE, 1)) {
  return e;
} else {
e++;
  if (!strcmp(e, i) || !strcmp(e, c)) {
  return .i;
  } else if (!strcmp(e, c) || !strcmp(e, cc)
 || !strcmp(e, cpp) || !strcmp(e, cxx)
 || !strcmp(e, cp) || !strcmp(e, c++)
 || !strcmp(e, C) || !strcmp(e, ii)) {
  return .ii;
  } else if(!strcmp(e,mi) || !strcmp(e, m)) {
  return .mi;
  } else if(!strcmp(e,mii) || !strcmp(e,mm)
  || !strcmp(e,M)) {
  return .mii;
  } else if (!strcasecmp(e, s)) {
  return .s;
  } else {
  return NULL;
  }
  }
 ---
  e++;
  if (!strcmp(e, i) || !strcmp(e, c)) {
  return .i;
  } else if (!strcmp(e, c) || !strcmp(e, cc)
 || !strcmp(e, cpp) || !strcmp(e, cxx)
 || !strcmp(e, cp) || !strcmp(e, c++)
 || !strcmp(e, C) || !strcmp(e, ii)) {
  return .ii;
  } else if(!strcmp(e,mi) || !strcmp(e, m)) {
  return .mi;
  } else if(!strcmp(e,mii) || !strcmp(e,mm)
  || !strcmp(e,M)) {
  return .mii;
  } else if (!strcasecmp(e, s)) {
  return .s;
  } else {
  return NULL;
  }

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




-- 
Fergus Henderson [EMAIL PROTECTED]
__ 
distcc mailing listhttp://distcc.samba.org/
To unsubscribe or change options: 
https://lists.samba.org/mailman/listinfo/distcc