om@2: /* om@2: * baseinc.h om@2: * om@2: * Standard header include file to get the most common system definitions om@2: * om@2: * Autor: Oliver Maurhart, om@2: * om@2: * Copyright (C) 2013 AIT Austrian Institute of Technology om@2: * AIT Austrian Institute of Technology GmbH om@2: * Donau-City-Strasse 1 | 1220 Vienna | Austria om@2: * http://www.ait.ac.at om@2: * om@2: * This library is free software; you can redistribute it and/or om@2: * modify it under the terms of the GNU Lesser General Public om@2: * License version 2.1 as published by the Free Software Foundation. om@2: * om@2: * This library is distributed in the hope that it will be useful, om@2: * but WITHOUT ANY WARRANTY; without even the implied warranty of om@2: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU om@2: * Lesser General Public License for more details. om@2: * om@2: * You should have received a copy of the GNU Lesser General Public om@2: * License along with this library; if not, write to the om@2: * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, om@2: * Boston, MA 02110-1301, USA. om@2: */ om@2: om@2: #ifndef __BASEINC_H om@2: #define __BASEINC_H om@2: om@2: // get definitions found by cmake om@2: #include "config.h" om@2: om@2: // ------------------------------------------------------------ om@2: // C++ om@2: om@2: // C++11 standard and boost stuff om@2: #ifdef __cplusplus om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: om@2: # ifdef HAVE_BOOST_LIB om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # include om@2: # endif om@2: om@2: #endif om@2: om@2: om@2: // ------------------------------------------------------------ om@2: // check defs (headers only) om@2: om@2: // standard C headers om@2: #ifdef HAVE_STDIO_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_STDDEF_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_STDLIB_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_INTTYPES_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_MEMORY_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_STRING_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_UNISTD_H om@2: # include om@2: #endif om@2: om@2: om@2: // stdbool.h om@2: #ifdef HAVE_STDBOOL_H om@2: # include om@2: #endif om@2: om@2: om@2: // endian.h om@2: #ifdef HAVE_ENDIAN_H om@2: # include om@2: #endif om@2: om@2: om@2: // time system headers om@2: #ifdef HAVE_SYS_TIME_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_SYS_TIMES_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_TIME_H om@2: # include om@2: #endif om@2: om@2: om@2: // files om@2: #ifdef HAVE_FCNTL_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_SYS_STAT_H om@2: # include om@2: #endif om@2: om@2: om@2: // some math om@2: #ifdef HAVE_MATH_H om@2: # include om@2: #endif om@2: om@2: om@2: // networking om@2: #ifdef HAVE_NETDB_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_IFADDRS_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_NETINET_IN_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_ARPA_INET_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_SYS_SOCKET_H om@2: # include om@2: #endif om@2: om@2: #ifdef HAVE_SYS_UN_H om@2: # include om@2: #endif om@2: om@2: om@2: // assert.h om@2: #ifdef HAVE_ASSERT_H om@2: # include om@2: #endif om@2: om@2: om@2: // signal.h om@2: #ifdef HAVE_SIGNAL_H om@2: # include om@2: #endif om@2: om@2: om@2: // sys/uio.h om@2: #ifdef HAVE_SYS_UIO_H om@2: # include om@2: #endif om@2: om@2: om@2: // syslog.h om@2: #ifdef HAVE_SYSLOG_H om@2: # include om@2: #endif om@2: om@2: om@2: // errno.h om@2: #ifdef HAVE_ERRNO_H om@2: # include om@2: #endif om@2: om@2: om@2: // limits.h om@2: #ifdef HAVE_LIMITS_H om@2: # include om@2: #endif om@2: om@2: om@2: // sys/mman.h om@2: #ifdef HAVE_SYS_MMAN_H om@2: # include om@2: #endif om@2: om@2: om@2: // dirent.h om@2: #ifdef HAVE_DIRENT_H om@2: # include om@2: #endif om@2: om@2: om@2: // fuse.h om@2: #ifdef HAVE_FUSE_H om@2: # ifndef FUSE_USE_VERSION om@2: # define FUSE_USE_VERSION 30 om@2: # endif om@2: # include om@2: #endif om@2: om@2: om@2: // ------------------------------------------------------------ om@2: // Windows om@2: om@2: #ifdef __WIN32__ om@2: # include om@2: #endif om@2: om@2: om@2: // ------------------------------------------------------------ om@2: // Linux om@2: om@2: #ifdef __linux__ om@2: # include om@2: #endif om@2: om@2: om@2: // ------------------------------------------------------------ om@2: // common macros om@2: om@2: #if defined(__GNUC__) || defined(__GNUCPP__) om@2: # define UNUSED __attribute__((unused)) om@2: #else om@2: # define UNUSED om@2: #endif om@2: om@2: om@2: om@2: #endif om@2: