[distcc] distcc-2.11 on IRIX

Dimitri Papadopoulos-Orfanos papadopo at shfj.DECOY.cea.NOSPAM.fr
Thu Oct 2 06:07:21 GMT 2003


Hi,


distcc-2.8 fails to build on IRIX 6.5.18 using SGI's MIPSpro 7.3.1.3 
compiler:

cc-1005 cc: ERROR File = src/state.h, Line = 23
   The source file "stdint.h" is unavailable.

   #include <stdint.h>
                      ^

Indeed <stdint.h> is a C99 / Single UNIX Specification 3 addition. It 
isn't available yet on many UNIX platforms. Actually commenting out 
fixes the problem - this header is not needed.




After removing this include directive, distcc-2.8 builds just fine, 
except for a few warnings you may want to work around or fix in some cases :

cc-1552 cc: WARNING File = src/clinet.c, Line = 88
   The variable "ret" is set but never used.

       int ret;
           ^

cc-1552 cc: WARNING File = src/state.c, Line = 167
   The variable "ret" is set but never used.

       int ret;
           ^

cc-1116 cc: WARNING File = src/util.c, Line = 80
   Non-void function "dcc_exit" (declared at line 57) should return a value.

   }
   ^

cc-1116 cc: WARNING File = src/exec.c, Line = 194
   Non-void function "dcc_inside_child" (declared at line 175) should 
return a
           value.

   }
   ^

cc-1116 cc: WARNING File = src/exec.c, Line = 252
   Non-void function "dcc_spawn_child" (declared at line 231) should 
return a
           value.

   }
   ^

cc-1552 cc: WARNING File = src/bulk.c, Line = 138
   The variable "ret" is set but never used.

       int ret;
           ^

cc-1116 cc: WARNING File = src/pump.c, Line = 162
   Non-void function "dcc_r_bulk" (declared at line 147) should return a 
value.

   }
   ^

cc-1164 cc: WARNING File = src/daemon.c, Line = 277
   Argument of type "socklen_t *" is incompatible with parameter of type 
"int *".

       if ((getpeername(STDIN_FILENO, psa, &len) == -1)) {
                                           ^

cc-1116 cc: WARNING File = src/dopt.c, Line = 240
   Non-void function "distccd_parse_options" (declared at line 163) 
should return
           a value.

   }
   ^

cc-1116 cc: WARNING File = src/dparent.c, Line = 150
   Non-void function "dcc_standalone_server" (declared at line 96) 
should return
           a value.

   }
   ^

cc-1174 cc: WARNING File = src/dparent.c, Line = 159
   The variable "severity" was declared but never referenced.

           int severity = sig == SIGTERM ? RS_LOG_INFO : RS_LOG_ERR;
               ^

cc-1164 cc: WARNING File = src/dparent.c, Line = 241
   Argument of type "socklen_t *" is incompatible with parameter of type 
"int *".

           acc_fd = accept(listen_fd, &cli_addr, &cli_len);
                                                 ^

cc-1164 cc: WARNING File = src/dparent.c, Line = 278
   Argument of type "socklen_t *" is incompatible with parameter of type 
"int *".

           acc_fd = accept(listen_fd, &cli_addr, &cli_len);
                                                 ^

cc-1164 cc: WARNING File = src/prefork.c, Line = 133
   Argument of type "socklen_t *" is incompatible with parameter of type 
"int *".

               acc_fd = accept(listen_fd, &cli_addr, &cli_len);
                                                     ^

cc-1552 cc: WARNING File = src/serve.c, Line = 194
   The variable "newpath" is set but never used.

       const char *envpath, *newpath, *p, *n;
                             ^



At least please fix the following changes:
* in util.c
   	int dcc_exit(int exitcode)
   should be changed to
   	void dcc_exit(int exitcode)
* in dparent.c variable 'severity' should be moved inside the #ifdef
* in serve.c variable 'newpath' should be discarded
* type of 'addrlen' argument in socket functions should be queried
   by autoconf (I think there's already a macro available in autoconf)
   as it can be either of int, size_t, or socklen_t depending on the
   backward compatibility policies of the operating system.

--
Dimitri





More information about the distcc mailing list