X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fportab%2Fportab.h;h=78b6f7e126e66b870b7d9016e6b2a9d0575dd824;hb=c5da48368569383d064a2325ab3b99d10287a085;hp=44e7c6c5fa7ff98eca91e1069f6ff9ced7d8b724;hpb=ca8ab38cacaac8943c30a40ef33b93b3af04b8cc;p=ngircd-alex.git diff --git a/src/portab/portab.h b/src/portab/portab.h index 44e7c6c5..78b6f7e1 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.20 2005/04/09 18:27:16 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,11 +41,23 @@ # endif #endif +/* datatypes */ -/* keywords */ -#define LOCAL static +#include -/* datatypes */ +#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 @@ -88,46 +77,56 @@ 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 #define GLOBAL - /* 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 */ @@ -147,21 +146,35 @@ extern size_t strlcat PARAMS(( char *dst, const char *src, size_t size )); extern size_t strlcpy PARAMS(( char *dst, const char *src, size_t size )); #endif +#ifndef HAVE_STRDUP +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 + #ifndef HAVE_VSNPRINTF #include 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 - #endif - /* -eof- */