root/opal/mca/hwloc/hwloc201/hwloc201.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
   2 /*
   3  * Copyright (c) 2011-2017 Cisco Systems, Inc.  All rights reserved
   4  * Copyright (c) 2014-2017 Intel, Inc. All rights reserved.
   5  * Copyright (c) 2016      Los Alamos National Security, LLC. All rights
   6  *                         reserved.
   7  * Copyright (c) 2017      Research Organization for Information Science
   8  *                         and Technology (RIST). All rights reserved.
   9  *
  10  * $COPYRIGHT$
  11  *
  12  * Additional copyrights may follow
  13  *
  14  * $HEADER$
  15  *
  16  * When this component is used, this file is included in the rest of
  17  * the OPAL/ORTE/OMPI code base via opal/mca/hwloc/hwloc-internal.h.  As such,
  18  * this header represents the public interface to this static component.
  19  */
  20 
  21 #ifndef MCA_OPAL_HWLOC_HWLOC201_H
  22 #define MCA_OPAL_HWLOC_HWLOC201_H
  23 
  24 BEGIN_C_DECLS
  25 
  26 #include "hwloc/include/hwloc.h"
  27 #include "hwloc/include/hwloc/shmem.h"
  28 
  29 /* If the including file requested it, also include the hwloc verbs
  30    helper file.  We can't just always include this file (even if we
  31    know we have <infiniband/verbs.h>) because there are some inline
  32    functions in that file that invoke ibv_* functions.  Some linkers
  33    (e.g., Solaris Studio Compilers) will instantiate those static
  34    inline functions even if we don't use them, and therefore we need
  35    to be able to resolve the ibv_* symbols at link time.
  36 
  37    Since -libverbs is only specified in places where we use other
  38    ibv_* functions (e.g., the OpenFabrics-based BTLs), that means that
  39    linking random executables can/will fail (e.g., orterun).
  40  */
  41 #if defined(OPAL_HWLOC_WANT_VERBS_HELPER) && OPAL_HWLOC_WANT_VERBS_HELPER
  42 #    if defined(HAVE_INFINIBAND_VERBS_H)
  43 #        include "hwloc/include/hwloc/openfabrics-verbs.h"
  44 #    else
  45 #        error Tried to include hwloc verbs helper file, but hwloc was compiled with no OpenFabrics support
  46 #    endif
  47 #endif
  48 
  49 END_C_DECLS
  50 
  51 #endif /* MCA_OPAL_HWLOC_HWLOC201_H */

/* [<][>][^][v][top][bottom][index][help] */