/* -*- c -*- * Copyright © 2009 CNRS * Copyright © 2009-2010 INRIA. All rights reserved. * Copyright © 2009-2011 Université Bordeaux 1 * Copyright © 2009-2011 Cisco Systems, Inc. All rights reserved. * See COPYING in top-level directory. */ /* The configuration file */ #ifndef HWLOC_CONFIG_H #define HWLOC_CONFIG_H #if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)) # define __hwloc_restrict __restrict #else # if __STDC_VERSION__ >= 199901L # define __hwloc_restrict restrict # else # define __hwloc_restrict # endif #endif #undef __hwloc_inline /* * Note: this is public. We can not assume anything from the compiler used * by the application and thus the HWLOC_HAVE_* macros below are not * fetched from the autoconf result here. We only automatically use a few * well-known easy cases. */ /* Maybe before gcc 2.95 too */ #if defined(HWLOC_HAVE_ATTRIBUTE_UNUSED) || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)) # if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)) || HWLOC_HAVE_ATTRIBUTE_UNUSED # define __hwloc_attribute_unused __attribute__((__unused__)) # else # define __hwloc_attribute_unused # endif #else # define __hwloc_attribute_unused #endif #if defined(HWLOC_HAVE_ATTRIBUTE_MALLOC) || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)) # if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)) || HWLOC_HAVE_ATTRIBUTE_MALLOC # define __hwloc_attribute_malloc __attribute__((__malloc__)) # else # define __hwloc_attribute_malloc # endif #else # define __hwloc_attribute_malloc #endif #if defined(HWLOC_HAVE_ATTRIBUTE_CONST) || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)) # if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)) || HWLOC_HAVE_ATTRIBUTE_CONST # define __hwloc_attribute_const __attribute__((__const__)) # else # define __hwloc_attribute_const # endif #else # define __hwloc_attribute_const #endif #if defined(HWLOC_HAVE_ATTRIBUTE_PURE) || (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)) # if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96)) || HWLOC_HAVE_ATTRIBUTE_PURE # define __hwloc_attribute_pure __attribute__((__pure__)) # else # define __hwloc_attribute_pure # endif #else # define __hwloc_attribute_pure #endif #if defined(HWLOC_HAVE_ATTRIBUTE_DEPRECATED) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) # if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) || HWLOC_HAVE_ATTRIBUTE_DEPRECATED # define __hwloc_attribute_deprecated __attribute__((__deprecated__)) # else # define __hwloc_attribute_deprecated # endif #else # define __hwloc_attribute_deprecated #endif #ifdef HWLOC_C_HAVE_VISIBILITY # if HWLOC_C_HAVE_VISIBILITY # define HWLOC_DECLSPEC __attribute__((__visibility__("default"))) # else # define HWLOC_DECLSPEC # endif #else # define HWLOC_DECLSPEC #endif /* Defined to 1 on Linux */ #undef HWLOC_LINUX_SYS /* Defined to 1 if the CPU_SET macro works */ #undef HWLOC_HAVE_CPU_SET /* Defined to 1 if you have the `windows.h' header. */ #undef HWLOC_HAVE_WINDOWS_H #undef hwloc_pid_t #undef hwloc_thread_t #ifdef HWLOC_HAVE_WINDOWS_H # include typedef DWORDLONG hwloc_uint64_t; #else /* HWLOC_HAVE_WINDOWS_H */ # ifdef hwloc_thread_t # include # endif /* hwloc_thread_t */ /* Defined to 1 if you have the header file. */ # undef HWLOC_HAVE_STDINT_H # include # ifdef HWLOC_HAVE_STDINT_H # include # endif typedef uint64_t hwloc_uint64_t; #endif /* HWLOC_HAVE_WINDOWS_H */ /* Whether we need to re-define all the hwloc public symbols or not */ #undef HWLOC_SYM_TRANSFORM /* The hwloc symbol prefix */ #undef HWLOC_SYM_PREFIX /* The hwloc symbol prefix in all caps */ #undef HWLOC_SYM_PREFIX_CAPS #endif /* HWLOC_CONFIG_H */