[Mailman-Users] [ANNOUNCE] Mailman 2.0

Jean-Francois Malouin Jean-Francois.Malouin at bic.mni.mcgill.ca
Wed Nov 22 21:30:14 CET 2000

* Jerry Adlersfluegel (jerrya at jerrya.net) [20001122 15:03] thus spake:
> On Wed, 22 Nov 2000, Wayne Ringling wrote:
> > 
> >  Has anyone built a RPM of 2.0 yet?  I would really like to use 2.0 on one
> > of my mailing list servers. I have never had much luck with getting the
> > compiled one to work with my systems.
> On the same note, does anyone have it compiled for irix 6.5? I am trying
> to test mailman's performance but am having difficulty setting up gcc on
> the machine.

You are aware of the gcc problems with irix-6.5.x don't you? 
(the gcc backend does not conform to the N32-MIPS ABI when passing 
or returning small --4bytes-- structures by value: inet_ntoa() 
does that...).

Do yourself a favor and get a temporary license for the mipspro
compilers if you don't want to purchase them and don't use gcc.

If you still want to use gcc, you have a few options:

- compile with N64 ABI of gcc (it's free of the gcc-induced problem of
  passing small (4-byte) structures on the stack rather than as
  register). You might encounter other problems though, if you link
  with other stuff that is N32 (sloppy typecasts: integer is smaller than
  long and pointer in N64 and casting a pointer into an integer will
  do harm)
- roll your own gcc-compiled inet_ntoa (from bind or inn, say) and 
  recompile gcc. You then use the same incorrect-gcc-but-consistent-way 
  of passing structures not abiding by the N32 MIPS ABI specs.
- use gcc-2.7.x and O32 (old and slower).
- Use the following code and stick somewhere in the mailman C code
  (thanks to Stuart Levy for this):

 #if sgi && __GNUC__
 /* Replacement for SGI libc inet_ntoa(), since
  * gcc's structure-passing convention isn't the same as SGI cc's. 
 char *inet_ntoa( struct in_addr sa )
   static char addr[20];
   sprintf(addr, "%d.%d.%d.%d",
     ((unsigned char *)&sa.s_addr)[0], 
     ((unsigned char *)&sa.s_addr)[1],
     ((unsigned char *)&sa.s_addr)[2], 
     ((unsigned char *)&sa.s_addr)[3]);   
   return addr;


> I've never had trouble installing it from source on a RH machine though.
> Sorry for the non-answer to your question.
> Thanks!
> -- 
> Jerry Adlersfluegel

"You are born naked, wet and hungry. Then it gets worse" -Woto

More information about the Mailman-Users mailing list