From 23b711ebacb2371915bfa4d9e0d386fa4e7cb35e Mon Sep 17 00:00:00 2001 From: Russ Allbery Date: Thu, 24 Apr 2008 01:17:48 +0000 Subject: Switch to messages-krb5 in util instead of the one built in the client library and start the transition of coding style. --- portable/macros.h | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 portable/macros.h (limited to 'portable') diff --git a/portable/macros.h b/portable/macros.h new file mode 100644 index 0000000..dcffa59 --- /dev/null +++ b/portable/macros.h @@ -0,0 +1,37 @@ +/* $Id$ + * + * Portability macros used in include files. + * + * Written by Russ Allbery + * This work is hereby placed in the public domain by its author. + */ + +#ifndef PORTABLE_MACROS_H +#define PORTABLE_MACROS_H 1 + +/* + * __attribute__ is available in gcc 2.5 and later, but only with gcc 2.7 + * could you use the __format__ form of the attributes, which is what we use + * (to avoid confusion with other macros). + */ +#ifndef __attribute__ +# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) +# define __attribute__(spec) /* empty */ +# endif +#endif + +/* + * BEGIN_DECLS is used at the beginning of declarations so that C++ + * compilers don't mangle their names. END_DECLS is used at the end. + */ +#undef BEGIN_DECLS +#undef END_DECLS +#ifdef __cplusplus +# define BEGIN_DECLS extern "C" { +# define END_DECLS } +#else +# define BEGIN_DECLS /* empty */ +# define END_DECLS /* empty */ +#endif + +#endif /* !PORTABLE_MACROS_H */ -- cgit v1.2.3