X-Git-Url: https://arthur.barton.de/gitweb/?a=blobdiff_plain;f=src%2Fportab%2Fportab.h;h=43f2f9070c20caa28cdeee403d80b177dfa95b91;hb=f27827d7937375b5348107ca7427abf74c9eff3d;hp=83e11313d4ae3aa1ff555cd40ecf6eee1d40b514;hpb=b90f71ca2ab1b2eea7ca992b1e51a4b39afe0728;p=ngircd.git diff --git a/src/portab/portab.h b/src/portab/portab.h index 83e11313..43f2f907 100644 --- a/src/portab/portab.h +++ b/src/portab/portab.h @@ -1,22 +1,21 @@ /* * ngIRCd -- The Next Generation IRC Daemon - * Copyright (c)2001-2005 Alexander Barton (alex@barton.de) + * Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * Please read the file COPYING, README and AUTHORS for more information. - * - * $Id: portab.h,v 1.22 2005/07/31 20:13:11 alex Exp $ - * - * Portability functions and declarations (header for libngbportab). */ - #ifndef __PORTAB__ #define __PORTAB__ +/** + * @file + * Portability functions and declarations (header) + */ #include "config.h" @@ -24,31 +23,9 @@ # define NDEBUG #endif -#ifdef HAVE_SYS_TYPES_H -# include -#endif - -#ifdef HAVE_INTTYPES_H -# include -# define NGIRC_GOT_INTTYPES -#else -# ifdef HAVE_STDINT_H -# include -# define NGIRC_GOT_INTTYPES -# endif -#endif - -#ifdef HAVE_STDDEF_H -# include -#endif - -#ifdef HAVE_STDBOOL_H -# include -#endif - /* compiler features */ -#if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)) +#if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 7)) # define PUNUSED(x) __attribute__ ((unused)) x # define UNUSED __attribute__ ((unused)) #else @@ -64,9 +41,24 @@ # endif #endif - /* datatypes */ +#include + +#ifdef HAVE_STDDEF_H +# include +#endif + +#ifdef HAVE_INTTYPES_H +# include +# define NGIRC_GOT_INTTYPES +#else +# ifdef HAVE_STDINT_H +# include +# define NGIRC_GOT_INTTYPES +# endif +#endif + #ifndef PROTOTYPES # ifndef signed # define signed @@ -85,46 +77,60 @@ typedef unsigned short UINT16; typedef unsigned int UINT32; #endif -#ifndef HAVE_STDBOOL_H +#ifdef HAVE_STDBOOL_H +# include +#else typedef unsigned char bool; -#define true (bool)1 -#define false (bool)0 +# define true (bool)1 +# define false (bool)0 #endif #ifndef NULL -#ifdef PROTOTYPES -# define NULL (void *)0 -#else -# define NULL 0L +# ifdef PROTOTYPES +# define NULL (void *)0 +# else +# define NULL 0L +# endif #endif + +#ifdef NeXT +# define S_IRUSR 0000400 /* read permission, owner */ +# define S_IWUSR 0000200 /* write permission, owner */ +# define S_IRGRP 0000040 /* read permission, group */ +# define S_IROTH 0000004 /* read permission, other */ +# define ssize_t int #endif #undef GLOBAL +#ifdef GLOBAL_INIT #define GLOBAL - +#else +#define GLOBAL extern +#endif /* SPLint */ - #ifdef S_SPLINT_S -#include "splint.h" +# include "splint.h" #endif - /* target constants */ -#ifndef TARGET_OS -#define TARGET_OS "unknown" +#ifndef HOST_OS +# define HOST_OS "unknown" #endif -#ifndef TARGET_CPU -#define TARGET_CPU "unknown" +#ifndef HOST_CPU +# define HOST_CPU "unknown" #endif -#ifndef TARGET_VENDOR -#define TARGET_VENDOR "unknown" +#ifndef HOST_VENDOR +# define HOST_VENDOR "unknown" #endif +#ifdef __HAIKU__ +# define SINGLE_USER_OS +#endif /* configure options */ @@ -148,6 +154,10 @@ extern size_t strlcpy PARAMS(( char *dst, const char *src, size_t size )); extern char * strdup PARAMS(( const char *s )); #endif +#ifndef HAVE_STRNDUP +extern char * strndup PARAMS((const char *s, size_t maxlen)); +#endif + #ifndef HAVE_STRTOK_R extern char * strtok_r PARAMS((char *str, const char *delim, char **saveptr)); #endif @@ -157,16 +167,22 @@ extern char * strtok_r PARAMS((char *str, const char *delim, char **saveptr)); extern int vsnprintf PARAMS(( char *str, size_t count, const char *fmt, va_list args )); #endif +#ifndef HAVE_GAI_STRERROR +# define gai_strerror(r) "unknown error" +#endif + #ifndef PACKAGE_NAME -#define PACKAGE_NAME PACKAGE +# define PACKAGE_NAME PACKAGE #endif #ifndef PACKAGE_VERSION -#define PACKAGE_VERSION VERSION +# define PACKAGE_VERSION VERSION #endif - +#ifndef SYSCONFDIR +# define SYSCONFDIR "/etc" #endif +#endif /* -eof- */