Jeff,

currently, ompi master cannot be built if configured with
--without-hwloc *and without* --without-libfabric.

the root cause is HAVE_CONFIG_H is defined but no config.h file is found.

i digged a bit and found that config.h is taken from a hwloc directory
(if the --without-hwloc option is not used),
so even if this "works" that is unlikely the expected behaviour.

the attached patch fixes some missing #ifdef

two workarounds are (after configure)
1) after configure, manually touch
$top_builddir/opal/mca/common/libfabric/config.h
2) manually hack $top_builddir/opal/mca/common/libfabric/Makefile and
replace
DEFS = -DHAVE_CONFIG_H
with
DEFS =


my last (cosmetic) comment is about
$srcdir/opal/mca/common/libfabric/Makefile.in (and several other
Makefile.in) :

CONFIG_HEADER = $(top_builddir)/opal/include/opal_config.h \
        $(top_builddir)/ompi/include/mpi.h \
        $(top_builddir)/oshmem/include/shmem.h \

$(top_builddir)/opal/mca/hwloc/hwloc191/hwloc/include/private/autogen/config.h
\

$(top_builddir)/opal/mca/hwloc/hwloc191/hwloc/include/hwloc/autogen/config.h

the last two files do not exist when ompi is configured with
--without-hwloc, is there any way
to have them excluded from Makefile by configure ?

Cheers,

Gilles

diff --git 
a/opal/mca/common/libfabric/libfabric/prov/usnic/src/usnic_direct/libnl_utils_common.c
 
b/opal/mca/common/libfabric/libfabric/prov/usnic/src/usnic_direct/libnl_utils_common.c
index c38a817..fe1e509 100644
--- 
a/opal/mca/common/libfabric/libfabric/prov/usnic/src/usnic_direct/libnl_utils_common.c
+++ 
b/opal/mca/common/libfabric/libfabric/prov/usnic/src/usnic_direct/libnl_utils_common.c
@@ -39,7 +39,9 @@
  *
  *
  */
+#ifdef HAVE_CONFIG_H
 #include "config.h"
+#endif /* HAVE_CONFIG_H */

 #include <errno.h>
 #include <arpa/inet.h>
diff --git 
a/opal/mca/common/libfabric/libfabric/prov/usnic/src/usnic_direct/usnic_ip_utils.c
 
b/opal/mca/common/libfabric/libfabric/prov/usnic/src/usnic_direct/usnic_ip_utils.c
index 815417f..d1727dd 100644
--- 
a/opal/mca/common/libfabric/libfabric/prov/usnic/src/usnic_direct/usnic_ip_utils.c
+++ 
b/opal/mca/common/libfabric/libfabric/prov/usnic/src/usnic_direct/usnic_ip_utils.c
@@ -39,7 +39,9 @@
  *
  *
  */
+#ifdef HAVE_CONFIG_H
 #include "config.h"
+#endif /* HAVE_CONFIG_H */

 #include <stdlib.h>
 #include <stdio.h>

Reply via email to