[syslog-ng] Need help to compile syslog-ng for Solaris
Evan Rempel
erempel at uvic.ca
Tue Feb 13 17:42:29 CET 2007
I had similar problems compiling under AIX and had to change the macro definitions to be
#define msg_fatal(desc, ... ) msg_event_send(msg_event_create(EVT_PRI_CRIT, desc, __VA_ARGS__ ))
This is a little dangerous because it assumes that the tag1 and the tags... are
together in both the msg_fatal AND in the msg_event_create which is currently the case,
but could change in future versions.
I would have liked to make
#define msg_fatal(desc, tag1, ...) msg_event_send(msg_event_create(EVT_PRI_CRIT, desc, tag1, __VA_ARGS__ ))
but there are a few (<20) calls in the code that do not supply any paramaters, not even NULL, for the
... argument and the xlc AIX compiler does not like this. I could change these calls by adding another NULL paramater
but that makes and even more dangerous assumption that the msg_event_send function will not use the variable agrument
list if tag1 is NULL, which is currently the case, but may change in future versions.
I think Bazsi should change the variadic macro definitions a little less gcc specific.
One more item for AIX (xlc actually) is that the calls to the preprocessor which expands these macros needs to have
-qlanglvl=extended option suppied or the whole variadic macro thing just fails.
Evan.
Padmanabhan, Rajeesh (GE Healthcare) wrote:
> Hi Bazsi,
>
> Need your help in compiling syslog-ng for Solaris. Im getting the
> following error when i 'make'.
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> "./messages.h", line 33: syntax error in macro parameters
> "./messages.h", line 34: syntax error in macro parameters
> "./messages.h", line 35: syntax error in macro parameters
> "./messages.h", line 37: syntax error in macro parameters
> "./messages.h", line 43: syntax error in macro parameters
> cc: acomp failed for messages.c
> *** Error code 2
> make: Fatal error: Command failed for target `messages.o'
> Current working directory /syslog-ng-2.0.1/src
> *** Error code 1
> make: Fatal error: Command failed for target `all-recursive'
> Current working directory /syslog-ng-2.0.1
> *** Error code 1
> make: Fatal error: Command failed for target `all'
>
>
> cc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/glib-2.0
> -I/usr/local/lib/glib-2.0/include -I/usr/local/include/eventlog
> -D_GNU_SOURCE -g -g -c `test -f 'messages.c' || echo './'`messages.c
>
>
> *** Error code 2
> make: Fatal error: Command failed for target `messages.o'
> Current working directory /syslog-ng-2.0.1/src
> *** Error code 1
> make: Fatal error: Command failed for target `all-recursive'
> Current working directory /syslog-ng-2.0.1
> *** Error code 1
> make: Fatal error: Command failed for target `all'
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~~
>
> I suspect problem with macro defenition in message.h.
>
> #define msg_fatal(desc, tag1, tags,
> ...)msg_event_send(msg_event_create(EVT_PRI_CRIT, desc, tag1, ##tags ))
> #define msg_error(desc, tag1, tags,
> ...)msg_event_send(msg_event_create(EVT_PRI_ERR, desc, tag1, ##tags ))
> #define msg_notice(desc, tag1,tags, ... )
> msg_event_send(msg_event_create(EVT_PRI_NOTICE, desc, tag1, ##tags ))
>
> Please help.
>
> Thanks,
>
> Rajeesh
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> syslog-ng maillist - syslog-ng at lists.balabit.hu
> https://lists.balabit.hu/mailman/listinfo/syslog-ng
> Frequently asked questions at http://www.campin.net/syslog-ng/faq.html
>
--
Evan Rempel erempel at uvic.ca
Senior Programmer Analyst 250.721.7691
Computing Services
University of Victoria
More information about the syslog-ng
mailing list