[SA-exim] Installation problems

Marc MERLIN marc at merlins.org
Thu Mar 18 07:33:30 PST 2004


On Thu, Mar 18, 2004 at 12:13:52PM +0000, John Horne wrote:
> Hello,
> 
> I've just downloaded sa-exim 4.0 and am trying to install it onto a
> Solaris 9 system with exim 4.30.
> 
> First I see the INSTALL file says:
> 
>    Note that if you do this, you are responsible for modifying variables
>    in sa-exim.c that would normally have been modified by the Makefile.
> 
> What variables? I'm happy enough to install patches and the like, but do

#ifndef SPAMC_LOCATION
#define SPAMC_LOCATION      "/usr/bin/spamc"
#endif
 
#ifndef SPAMASSASSIN_CONF
#define SPAMASSASSIN_CONF   "/etc/exim4/sa-exim.conf"
#endif

Basically, what the makefile can override with -D

> Secondly, the document says:
> 
>    In the sa-exim distribution directory, type make sa-exim.h, and copy
>    it in the same place than sa-exim.c.
> 
> Tried that and got:
> 
>   make sa-exim.h
>   echo "char *version=\"`cat version` (built `date -R`)\";" > sa-exim.h
>   date: illegal option -- R
>   usage:  date [-u] mmddHHMM[[cc]yy][.SS]
>           date [-u] [+format]
>           date -a [-]sss[.fff]
>   *** Error code 1
>   make: Fatal error: Command failed for target `sa-exim.h'
> 
> Okay I can remove the '-R' option but I am assuming this won't break
> anything that looks for the date? What is '-R' supposed to do?

Ah, yeah, I keep forgetting there are still systems with non GNU fileutils

       -R, --rfc-2822
              output RFC-2822 compliant date string

You can remove it, it's just that without it, multi-byte locales would output
multibyte characters for date (without -R), making the C code unhappy after that.

On Thu, Mar 18, 2004 at 01:06:57PM +0000, John Horne wrote:
> Hello,
> 
> Compiling sa-exim 4.0 on a Solaris 9 system (gcc version 2.95.3
> 20010315), gives two warnings:
> 
>   ../Local/sa-exim.c: In function `local_scan':
>   ../Local/sa-exim.c:1100: warning: assignment makes pointer from
>   integer without a cast
>   ../Local/sa-exim.c:1101: warning: assignment makes pointer from
>   integer without a cast

I take it we're talking about this:
            char *start;
            char *end;
            char *mesgid=NULL;

            start=index(buffer, '<');
            end=index(buffer, '>');
 
            if (start == NULL || end == NULL)

My index man page says that it's supposed to return a char *
What does yours?

Marc
-- 
"A mouse is a device used to point at the xterm you want to type in" - A.S.R.
Microsoft is to operating systems & security ....
                                      .... what McDonalds is to gourmet cooking
Home page: http://marc.merlins.org/   |   Finger marc_f at merlins.org for PGP key



More information about the SA-Exim mailing list