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

Perez, Aaron P. Aaron.Perez at hospira.com
Tue Jun 10 19:12:14 GMT 2008


Fergus,

 

    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?

 

Regards,

    Aaron

 

________________________________

From: Fergus Henderson [mailto:fergus at google.com] 
Sent: Tuesday, June 10, 2008 11:56 AM
To: Perez, Aaron P.
Cc: distcc at lists.samba.org
Subject: Re: [distcc] Re: ARM Tools / ADS (tcc tccp armcomp) porting

 

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 <Aaron.Perez at hospira.com>
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 list            http://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 list            http://distcc.samba.org/
> To unsubscribe or change
options:https://lists.samba.org/mailman/listinfo/distcc
>
>

> -- Fergus Henderson <fergus <at> google.com>
>
> __

> distcc mailing list            http://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.000000000 -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)) {
-        return e;

+    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 {

-        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;
-        }
-    }

+        return NULL;

+    }
 }

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




-- 
Fergus Henderson <fergus at google.com> 

-------------- next part --------------
HTML attachment scrubbed and removed


More information about the distcc mailing list