diff -Nru openmpi-4.0.3/aclocal.m4 openmpi-4.1.4/aclocal.m4
--- openmpi-4.0.3/aclocal.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/aclocal.m4 2022-05-29 09:51:40.000000000 +0000
@@ -1195,6 +1195,8 @@
m4_include([config/ltsugar.m4])
m4_include([config/ltversion.m4])
m4_include([config/lt~obsolete.m4])
+m4_include([config/ompi_check_gpfs.m4])
+m4_include([config/ompi_check_ime.m4])
m4_include([config/ompi_check_libfca.m4])
m4_include([config/ompi_check_libhcoll.m4])
m4_include([config/ompi_check_lustre.m4])
@@ -1202,6 +1204,7 @@
m4_include([config/ompi_check_psm.m4])
m4_include([config/ompi_check_psm2.m4])
m4_include([config/ompi_check_pvfs2.m4])
+m4_include([config/ompi_check_ucc.m4])
m4_include([config/ompi_check_ucx.m4])
m4_include([config/ompi_config_files.m4])
m4_include([config/ompi_configure_options.m4])
@@ -1225,6 +1228,7 @@
m4_include([config/ompi_fortran_check_logical_array.m4])
m4_include([config/ompi_fortran_check_max_array_rank.m4])
m4_include([config/ompi_fortran_check_optional_args.m4])
+m4_include([config/ompi_fortran_check_preprocess_f90.m4])
m4_include([config/ompi_fortran_check_private.m4])
m4_include([config/ompi_fortran_check_procedure.m4])
m4_include([config/ompi_fortran_check_protected.m4])
diff -Nru openmpi-4.0.3/AUTHORS openmpi-4.1.4/AUTHORS
--- openmpi-4.0.3/AUTHORS 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/AUTHORS 2022-05-29 09:51:40.000000000 +0000
@@ -15,21 +15,29 @@
adkulkar@cs.indiana.edu
Aboorva Devarajan
abodevar@in.ibm.com
+ aburvadevarajan@gmail.com
Adrian Knoth
adi@minet.uni-jena.de
Adrian Reber
adrian@lisas.de
areber@redhat.com
+Ake Sandgren
+ ake.sandgren@hpc2n.umu.se
Akshay Venkatesh
akvenkatesh@nvidia.com
Alejandro Vilches
alejandro.vilches@intel.com
Aleksey Senin
alekseys@mellanox.com
+Alex Anenkov
+ anenkov.ru@gmail.com
Alex Margolin
+ alex.margolin@huawei.com
alex.margolin@mail.huji.ac.il
Alex Mikheev
alexm@mellanox.com
+Alexander Grund
+ flamefire@users.noreply.github.com
Alina Sklarevich
alinas@mellanox.com
Anandhi S Jayakumar
@@ -39,6 +47,8 @@
Andrew Friedley
afriedle@osl.iu.edu
andrew.friedley@intel.com
+Andrew J. Hesford
+ ajh@sideband.org
Andrew Lumsdaine
lums@cs.indiana.edu
Andrey Maslennikov
@@ -55,6 +65,8 @@
artpol84@gmail.com
Artem Ryabov
artemry@mellanox.com
+Artemy Kovalyov
+ artemyko@mellanox.com
Aurelien Bouteiller
bouteill@icl.utk.edu
Austen Lauria
@@ -90,6 +102,8 @@
ccoti@icl.utk.edu
Carlos Bederián
bc@famaf.unc.edu.ar
+Charles Shereda
+ cpshereda@lanl.gov
Chris Ward
tjcw@uk.ibm.com
Christian Bell
@@ -114,6 +128,8 @@
deberius@vols.utk.edu
David Solt
dsolt@us.ibm.com
+David Wootton
+ dwootton@us.ibm.com
Denis Dimick
dgdimick@lnal.gov
Devendar Bureddy
@@ -122,11 +138,17 @@
devesh.sharma@broadcom.com
Dimitar Pashov
d.pashov@gmail.com
+Dipti Kothari
+ dkothar@amazon.com
Donald Kerr
donald.kerr@oracle.com
Doron Shoham
dorons@mellanox.com
+Durgesh
+ durg1222@in.ibm.com
Edgar Gabriel
+ edgar.gabriel1@outlook.com
+ edgar.gabriel@amd.com
egabriel@central.uh.edu
gabriel@cs.uh.edu
Elena Elkina
@@ -164,6 +186,8 @@
gingery@lanl.gov
Gleb Natapov
gleb@voltaire.com
+Goldman, Adam
+ adam.goldman@intel.com
Gopal Santhanaraman
santhana@osu.edu
Graham Fagg
@@ -184,6 +208,8 @@
harald@klimachs.de
Harumi Kuno
harumi.kuno@hpe.com
+Hessam Mirsadeghi
+ hmirsadeghi@nvidia.com
Howard Pritchard
howardp@lanl.gov
hppritcha@gmail.com
@@ -207,6 +233,8 @@
jsquyres@cisco.com
Jelena Pjesivac-Grbovic
pjesa@icl.iu.edu
+Jie Zhang
+ zhngaj@amazon.com
Jijo Varghese
jijo733@gmail.com
Jithin Jose
@@ -225,6 +253,7 @@
jroman@dsic.upv.es
Joseph Schuchart
schuchart@hlrs.de
+ schuchart@icl.utk.edu
Josh Hursey
jhursey@us.ibm.com
jjhursey@open-mpi.org
@@ -253,12 +282,18 @@
l.r.rajeshnarayanan@intel.com
Laura Casswell
lcasswell@lanl.gov
+Lei Chen
+ chenlcl@cn.ibm.com
Lenny Verkhovsky
lennyb@voltaire.com
Leobardo Ruiz Rountree
lruizrountree@gmail.com
+Leonid Genkin
+ lgenkin@nvidia.com
Li-Ta Lo
ollie@lanl.gov
+Mamzi Bayatpour mbayatpour@nvidia.com ()
+ mbayatpour@helios001.hpcadvisorycouncil.com
Mangala Jyothi Bhaskar
mjbhaskar@salmon.cs.uh.edu
mjbhaskar@uh.edu
@@ -285,6 +320,7 @@
Maxwell Coil
mcoil@nd.edu
Michael Heinz
+ michael.william.heinz@cornelisnetworks.com
michael.william.heinz@intel.com
Michael Lass
bevan@bi-co.net
@@ -292,6 +328,7 @@
miked@mellanox.com
Mikhail Brinskii
mikhailb@mellanox.com
+ mikhailb@nvidia.com
Mikhail Kurnosov
mkurnosov@gmail.com
Mitch Sukalski
@@ -302,6 +339,8 @@
mohgan@amazon.com
Moritz Kreutzer
mokreutzer@gmail.com
+NARIBAYASHI Akira
+ a.naribayashi@fujitsu.com
Nadezhda Kogteva
nadezhda.kogteva@itseez.com
Nadia Derbey
@@ -323,6 +362,8 @@
nicolas.chevalier@bull.net
Nicolas Morey-Chaisemartin
nmoreychaisemartin@suse.com
+Nikola Dancejic
+ dancejic@amazon.com
Ninad Prabhukhanolkar
ninadchess96@gmail.com
Noah Evans
@@ -338,6 +379,7 @@
Oscar Vega-Gisbert
ovega@dsic.upv.es
Pak Lui
+ pak.lui@amd.com
pak.lui@sun.com
Pascal Deveze
pascal.deveze@atos.net
@@ -363,9 +405,12 @@
pkambadu@osl.iu.edu
Raghavendra Pendyala
raghavendra.p.pendyala@intel.com
+Raghu Raja
+ craghun@amazon.com
Rainer Keller
rainer.keller@hft-stuttgart.de
rainer.keller@hlrs.de
+ rainer.keller@hs-esslingen.de
Ralph Castain
rhc@open-mpi.org
rhc@pmix.org
@@ -394,6 +439,8 @@
sssharka@us.ibm.com
Sami Ayyorgun
sami@lanl.gov
+Sami Ilvonen
+ sami.ilvonen@csc.fi
Samuel Gutierrez
samuel@lanl.gov
Sayantan Sur
@@ -404,6 +451,7 @@
selvin.xavier@broadcom.com
Sergey Oblomov
sergeyo@mellanox.com
+ sergeyo@nvidia.com
Sharon Melamed
sharonm@voltaire.com
Shiqing Fan
@@ -417,6 +465,10 @@
staskirillov@gmail.com
Steve Wise
swise@opengridcomputing.com
+StevenGood154
+ sgood2@nd.edu
+Subhadeep Bhattacharya
+ subhadeepb@nvidia.com
Sushant Sharma
sushant@lanl.gov
Sven Stork
@@ -449,6 +501,8 @@
tmattox@gmail.com
Tim Prins
tprins@lanl.gov
+Tim Wickberg
+ tim@schedmd.com
Tim Woodall
twoodall@lanl.gov
Todd Kordenbrock
@@ -463,12 +517,16 @@
fj2505dt@aa.jp.fujitsu.com
Valentin Petrov
valentinp@mellanox.com
+ valentinp@nvidia.com
Vasily Filipov
vasily@mellanox.com
Vishal Sahay
vsahay@osl.iu.edu
Vishwanath Venkatesan
vvenkates@gmail.com
+Wei Zhang
+ wzam@amazon.com
+ wzam@amazonc.com
Weikuan Yu
yuw@lanl.gov
Wesley Bland
@@ -479,8 +537,12 @@
lepera@us.ibm.com
William Throwe
wtt6@cornell.edu
+William Zhang
+ wilzhang@amazon.com
Wojtek Wasko
wwasko@nvidia.com
+Xi Luo
+ dycz0fx@gmail.com
Xin Zhao
xinz@mellanox.com
Yael Dayan
@@ -497,8 +559,13 @@
wangzm@cn.ibm.com
Zoltán Mizsei
zmizsei@extrowerk.com
+bsergentm
+ marc.sergent@atos.net
+dongzhong
+ zhongdong0321@hotmail.com
guserav
erik.zeiske@hpe.com
+ erik.zeiske@web.de
heasterday
heasterday@users.noreply.github.com
luz.paz
@@ -507,3 +574,5 @@
perrynzhou@gmail.com
raafatfeki
fekiraafat@gmail.com
+tomhers
+ tom.herschberg@gmail.com
diff -Nru openmpi-4.0.3/autogen.pl openmpi-4.1.4/autogen.pl
--- openmpi-4.0.3/autogen.pl 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/autogen.pl 2022-05-29 09:51:40.000000000 +0000
@@ -1,12 +1,12 @@
#!/usr/bin/env perl
#
-# Copyright (c) 2009-2017 Cisco Systems, Inc. All rights reserved
+# Copyright (c) 2009-2021 Cisco Systems, Inc. All rights reserved
# Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2013 Mellanox Technologies, Inc.
# All rights reserved.
# Copyright (c) 2013-2014 Intel, Inc. All rights reserved.
-# Copyright (c) 2015-2016 Research Organization for Information Science
-# and Technology (RIST). All rights reserved.
+# Copyright (c) 2015-2020 Research Organization for Information Science
+# and Technology (RIST). All rights reserved.
# Copyright (c) 2015 IBM Corporation. All rights reserved.
#
# $COPYRIGHT$
@@ -1068,12 +1068,41 @@
# Fix consequence of broken libtool.m4
# see http://lists.gnu.org/archive/html/bug-libtool/2015-07/msg00002.html and
# https://github.com/open-mpi/ompi/issues/751
- push(@verbose_out, $indent_str . "Patching configure for libtool.m4 bug\n");
+ push(@verbose_out, $indent_str . "Patching configure for -L/-R libtool.m4 bug\n");
# patch for libtool < 2.4.3
$c =~ s/# Some compilers place space between "-\{L,R\}" and the path.\n # Remove the space.\n if test \$p = \"-L\" \|\|/# Some compilers place space between "-\{L,-l,R\}" and the path.\n # Remove the spaces.\n if test \$p = \"-L\" \|\|\n test \$p = \"-l\" \|\|/g;
# patch for libtool >= 2.4.3
$c =~ s/# Some compilers place space between "-\{L,R\}" and the path.\n # Remove the space.\n if test x-L = \"\$p\" \|\|\n test x-R = \"\$p\"\; then/# Some compilers place space between "-\{L,-l,R\}" and the path.\n # Remove the spaces.\n if test x-L = \"x\$p\" \|\|\n test x-l = \"x\$p\" \|\|\n test x-R = \"x\$p\"\; then/g;
+ # Fix OS X Big Sur (11.0.x) support
+ # From https://lists.gnu.org/archive/html/libtool-patches/2020-06/msg00001.html
+ push(@verbose_out, $indent_str . "Patching configure for MacOS Big Sur libtool.m4 bug\n");
+ # Some versions of Libtool use ${wl} consistently, but others did
+ # not (e.g., they used $wl). Make the regexp be able to handle
+ # both. Additionally, the case string searching for 10.[012]*
+ # changed over time. So make sure it can handle both of the case
+ # strings that we're aware of.
+ my $WL = '(\$\{wl\}|\$wl)';
+ my $SOMETIMES = '(\[,.\])*';
+ my $search_string = 'darwin\*\) # darwin 5.x on
+ # if running on 10.5 or later, the deployment target defaults
+ # to the OS version, if on x86, and 10.4, the deployment
+ # target defaults to 10.4. Don\'t you love it\?
+ case \$\{MACOSX_DEPLOYMENT_TARGET-10.0\},\$host in
+ 10.0,\*86\*-darwin8\*\|10.0,\*-darwin\[91\]\*\)
+ _lt_dar_allow_undefined=\'' . $WL . '-undefined ' . $WL . 'dynamic_lookup\' ;;
+ 10.\[012\]' . $SOMETIMES . '\*\)
+ _lt_dar_allow_undefined=\'' . $WL . '-flat_namespace ' . $WL . '-undefined ' . $WL . 'suppress\' ;;
+ 10.\*\)';
+ my $replace_string = 'darwin*)
+ # Open MPI patched for Darwin / MacOS Big Sur. See
+ # http://lists.gnu.org/archive/html/bug-libtool/2015-07/msg00001.html
+ case ${MACOSX_DEPLOYMENT_TARGET},$host in
+ 10.[012],*|,*powerpc*)
+ _lt_dar_allow_undefined=\'${wl}-flat_namespace ${wl}-undefined ${wl}suppress\' ;;
+ *)';
+ $c =~ s/$search_string/$replace_string/g;
+
# Only write out verbose statements and a new configure if the
# configure content actually changed
return
@@ -1109,6 +1138,102 @@
}
##############################################################################
+
+sub replace_config_sub_guess {
+ # This could be simpler if we could use some Perl modules for this
+ # functionality (e.g., DateTime). But I don't want to introduce
+ # any CPAN dependencies here, so just do sometime simple, even if
+ # it's a bit laborious. Use a few private helper functions for
+ # this kind of functionality.
+
+ sub _get_timestamp {
+ my $filename = shift;
+
+ my $ret;
+ if (-x $filename) {
+ my $out = `$filename --version`;
+ $out =~ m/GNU config\.[a-z]+ \((.+)\)/;
+ $ret = $1;
+ }
+
+ return $ret;
+ }
+
+ sub _split_timestamp {
+ my $ts = shift;
+
+ $ts =~ m/(\d+)-(\d+)-(\d+)/;
+ return $1, $2, $3;
+ }
+
+ # Returns true if timestamp $a > timestamp $b.
+ sub _timestamp_gt {
+ my ($a, $b) = @_;
+
+ my ($year_a, $month_a, $day_a) = _split_timestamp($a);
+ my ($year_b, $month_b, $day_b) = _split_timestamp($b);
+
+ # Don't try to be clever -- just do a simple set of explicit
+ # comparisons.
+ if ($year_a > $year_b) {
+ return 1;
+ } elsif ($year_a < $year_b) {
+ return 0;
+ } else {
+ if ($month_a > $month_b) {
+ return 1;
+ } elsif ($month_a < $month_b) {
+ return 0;
+ } else {
+ if ($day_a > $day_b) {
+ return 1;
+ } else {
+ return 0;
+ }
+ }
+ }
+ }
+
+ my ($topdir) = @_;
+
+ # Find the stashed known-good files, and get their version
+ # timestamps.
+ my $cached_dir = "$topdir/config/from-savannah";
+ my @files = qw/config.guess config.sub/;
+ my %known_good_timestamps;
+ foreach my $file (@files) {
+ my $filename = "$cached_dir/upstream-$file";
+ my_die("Cannot find $filename")
+ if (! -f $filename);
+
+ my $ts = _get_timestamp($filename);
+ $known_good_timestamps{$file} = $ts;
+ }
+
+ # Find all config.guess/config.sub files in the tree. If their
+ # versions are older than the stashed known-good files, update
+ # them from the stash.
+ my @files;
+ File::Find::find(sub {
+ push(@files, $File::Find::name)
+ if ($_ eq "config.guess" ||
+ $_ eq "config.sub") }, $topdir);
+
+ foreach my $file (@files) {
+ # Skip anything in the 3rd-party tree
+ next
+ if ($file =~ /\/3rd-party\//);
+
+ my $base = basename($file);
+ my $ts = _get_timestamp($file);
+ if (_timestamp_gt($known_good_timestamps{$base}, $ts)) {
+ print("=== Replacing $file with newer version\n");
+ safe_system("cp -f $cached_dir/upstream-$base $file");
+ }
+ }
+}
+
+##############################################################################
##############################################################################
## main - do the real work...
##############################################################################
@@ -1200,7 +1325,7 @@
dnl This file is automatically created by autogen.pl; it should not
dnl be edited by hand!!
dnl
-dnl Generated by $username at " . localtime(time) . "
+dnl Generated by $username at " . localtime($ENV{SOURCE_DATE_EPOCH} || time) . "
dnl on $full_hostname.
$dnl_line\n\n";
@@ -1429,6 +1554,11 @@
patch_autotools_output(".");
+# Per https://github.com/open-mpi/ompi/issues/8410, replace config.sub
+# and config.guess with known-good versions if the Autoconf-installed
+# versions are older.
+replace_config_sub_guess(".");
+
#---------------------------------------------------------------------------
verbose "
diff -Nru openmpi-4.0.3/.ci/mellanox/azure-pipelines.yml openmpi-4.1.4/.ci/mellanox/azure-pipelines.yml
--- openmpi-4.0.3/.ci/mellanox/azure-pipelines.yml 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/.ci/mellanox/azure-pipelines.yml 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,47 @@
+trigger: none
+pr:
+ - master
+ - v*.*.x
+
+pool:
+ name: Default
+ demands:
+ - AGENT_CI_TARGET -equals ompi
+ - MLNX_IB_DEVICE -equals yes
+
+variables:
+ ompi_jenkins_scripts_git_repo_url: https://github.com/mellanox-hpc/jenkins_scripts.git
+ ompi_jenkins_scripts_git_branch: ompi_v4.0.x
+ # Enable debug information, supported values: true, false
+ debug: true
+
+jobs:
+- job: mellanox_ompi_ci
+ displayName: Mellanox Open MPI CI
+ timeoutInMinutes: 240
+ container:
+ image: rdmz-harbor.rdmz.labs.mlnx/hpcx/ompi_ci:latest
+ options: -v /hpc/local:/hpc/local -v /opt:/opt --uts=host --ipc=host --ulimit stack=67108864
+ --ulimit memlock=-1 --security-opt seccomp=unconfined --cap-add=SYS_ADMIN --device=/dev/infiniband/
+ steps:
+ - task: DeleteFiles@1
+ displayName: Cleanup workspace folder
+ inputs:
+ sourceFolder: $(Pipeline.Workspace)
+ contents: |
+ **/jenkins_scripts
+ - checkout: self
+ submodules: true
+ path: ompi
+ clean: true
+ - bash: |
+ set -eE
+ [ "$(debug)" = "true" ] && set -x
+ cd $(Pipeline.Workspace)
+ git clone $(ompi_jenkins_scripts_git_repo_url)
+ cd $(Pipeline.Workspace)/jenkins_scripts && git checkout $(ompi_jenkins_scripts_git_branch)
+ export WORKSPACE=$(Pipeline.Workspace)/ompi
+ # TODO: rework ompi_test.sh to avoid Jenkins mentions
+ export JENKINS_RUN_TESTS=yes
+ $(Pipeline.Workspace)/jenkins_scripts/jenkins/ompi/ompi_test.sh
+ displayName: Build and test Open MPI
diff -Nru openmpi-4.0.3/.ci/README.md openmpi-4.1.4/.ci/README.md
--- openmpi-4.0.3/.ci/README.md 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/.ci/README.md 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,16 @@
+# Open MPI Continuous Integration (CI) Services
+## Mellanox Open MPI CI
+### Scope
+[Mellanox](https://www.mellanox.com/) Open MPI CI is intended to verify Open MPI with recent Mellanox SW components ([Mellanox OFED](https://www.mellanox.com/page/products_dyn?product_family=26), [UCX](https://www.mellanox.com/page/products_dyn?product_family=281&mtag=ucx) and other [HPC-X](https://www.mellanox.com/page/products_dyn?product_family=189&mtag=hpc-x) components) in the Mellanox lab environment.
+
+CI is managed by [Azure Pipelines](https://docs.microsoft.com/en-us/azure/devops/pipelines/?view=azure-devops) service.
+
+Mellanox Open MPI CI includes:
+* Open MPI building with internal stable engineering versions of UCX and HCOLL. The building is run in Docker-based environment.
+* Sanity functional testing.
+### How to Run CI
+Mellanox Open MPI CI is triggered upon the following events:
+* Create a pull request (PR). CI status is visible in the PR status. CI is restarted automatically upon each new commit within the PR. CI status and log files are also available on the Azure DevOps server.
+* Trigger CI with special PR comments (for example, `/azp run`). Comment triggers are available only if the comment author has write permission to the PR target repo. Detailed information about comment triggers is available in the official Azure DevOps [documentation](https://docs.microsoft.com/en-us/azure/devops/pipelines/repos/github?view=azure-devops&tabs=yaml#comment-triggers).
+### Support
+In case of any issues, questions or suggestions please contact to [Mellanox Open MPI CI support team](mailto:swx-azure-svc@mellanox.com).
diff -Nru openmpi-4.0.3/config/autogen_found_items.m4 openmpi-4.1.4/config/autogen_found_items.m4
--- openmpi-4.0.3/config/autogen_found_items.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/autogen_found_items.m4 2022-05-29 09:51:40.000000000 +0000
@@ -5,8 +5,8 @@
dnl This file is automatically created by autogen.pl; it should not
dnl be edited by hand!!
dnl
-dnl Generated by ec2-user at Tue Mar 3 23:30:27 2020
-dnl on ip-172-31-13-177.
+dnl Generated by ec2-user at Thu May 26 14:32:49 2022
+dnl on ip-172-31-4-35.us-west-2.compute.internal.
dnl ---------------------------------------------------------------------------
dnl Platform file
@@ -36,7 +36,7 @@
m4_define([mca_opal_framework_list], [common, allocator, backtrace, btl, compress, crs, dl, event, hwloc, if, installdirs, memchecker, memcpy, memory, mpool, patcher, pmix, pstat, rcache, reachable, shmem, timer])
dnl Components in the opal / common framework
-m4_define([mca_opal_common_m4_config_component_list], [cuda, sm, ucx, verbs, verbs_usnic])
+m4_define([mca_opal_common_m4_config_component_list], [cuda, ofi, sm, ucx, verbs, verbs_usnic])
m4_define([mca_opal_common_no_config_component_list], [])
dnl Components in the opal / allocator framework
@@ -48,7 +48,7 @@
m4_define([mca_opal_backtrace_no_config_component_list], [])
dnl Components in the opal / btl framework
-m4_define([mca_opal_btl_m4_config_component_list], [openib, portals4, sm, smcuda, tcp, uct, ugni, usnic, vader])
+m4_define([mca_opal_btl_m4_config_component_list], [ofi, openib, portals4, sm, smcuda, tcp, uct, ugni, usnic, vader])
m4_define([mca_opal_btl_no_config_component_list], [self])
dnl Components in the opal / compress framework
@@ -189,7 +189,7 @@
m4_define([mca_orte_rtc_no_config_component_list], [hwloc])
dnl Components in the orte / schizo framework
-m4_define([mca_orte_schizo_m4_config_component_list], [alps, moab, singularity, slurm])
+m4_define([mca_orte_schizo_m4_config_component_list], [alps, jsm, moab, singularity, slurm])
m4_define([mca_orte_schizo_no_config_component_list], [flux, ompi, orte])
dnl Components in the orte / snapc framework
@@ -218,15 +218,15 @@
m4_define([mca_ompi_bml_no_config_component_list], [])
dnl Components in the ompi / coll framework
-m4_define([mca_ompi_coll_m4_config_component_list], [cuda, fca, hcoll, monitoring, portals4])
-m4_define([mca_ompi_coll_no_config_component_list], [basic, inter, libnbc, self, sm, sync, tuned])
+m4_define([mca_ompi_coll_m4_config_component_list], [cuda, fca, hcoll, monitoring, portals4, ucc])
+m4_define([mca_ompi_coll_no_config_component_list], [adapt, basic, han, inter, libnbc, self, sm, sync, tuned])
dnl Components in the ompi / crcp framework
m4_define([mca_ompi_crcp_m4_config_component_list], [bkmrk])
m4_define([mca_ompi_crcp_no_config_component_list], [])
dnl Components in the ompi / fbtl framework
-m4_define([mca_ompi_fbtl_m4_config_component_list], [posix, pvfs2])
+m4_define([mca_ompi_fbtl_m4_config_component_list], [ime, posix, pvfs2])
m4_define([mca_ompi_fbtl_no_config_component_list], [])
dnl Components in the ompi / fcoll framework
@@ -234,7 +234,7 @@
m4_define([mca_ompi_fcoll_no_config_component_list], [dynamic, dynamic_gen2, individual, two_phase, vulcan])
dnl Components in the ompi / fs framework
-m4_define([mca_ompi_fs_m4_config_component_list], [lustre, pvfs2, ufs])
+m4_define([mca_ompi_fs_m4_config_component_list], [gpfs, ime, lustre, pvfs2, ufs])
m4_define([mca_ompi_fs_no_config_component_list], [])
dnl Components in the ompi / hook framework
@@ -250,7 +250,7 @@
m4_define([mca_ompi_mtl_no_config_component_list], [])
dnl Components in the ompi / op framework
-m4_define([mca_ompi_op_m4_config_component_list], [])
+m4_define([mca_ompi_op_m4_config_component_list], [avx])
m4_define([mca_ompi_op_no_config_component_list], [])
dnl Components in the ompi / osc framework
@@ -291,7 +291,7 @@
m4_define([mca_oshmem_memheap_no_config_component_list], [buddy, ptmalloc])
dnl Components in the oshmem / scoll framework
-m4_define([mca_oshmem_scoll_m4_config_component_list], [fca])
+m4_define([mca_oshmem_scoll_m4_config_component_list], [fca, ucc])
m4_define([mca_oshmem_scoll_no_config_component_list], [basic, mpi])
dnl Components in the oshmem / spml framework
@@ -316,6 +316,7 @@
m4_include([opal/mca/pstat/configure.m4])
m4_include([opal/mca/timer/configure.m4])
m4_include([opal/mca/common/cuda/configure.m4])
+m4_include([opal/mca/common/ofi/configure.m4])
m4_include([opal/mca/common/sm/configure.m4])
m4_include([opal/mca/common/ucx/configure.m4])
m4_include([opal/mca/common/verbs/configure.m4])
@@ -323,6 +324,7 @@
m4_include([opal/mca/backtrace/execinfo/configure.m4])
m4_include([opal/mca/backtrace/none/configure.m4])
m4_include([opal/mca/backtrace/printstack/configure.m4])
+m4_include([opal/mca/btl/ofi/configure.m4])
m4_include([opal/mca/btl/openib/configure.m4])
m4_include([opal/mca/btl/portals4/configure.m4])
m4_include([opal/mca/btl/sm/configure.m4])
@@ -395,6 +397,7 @@
m4_include([orte/mca/ras/slurm/configure.m4])
m4_include([orte/mca/ras/tm/configure.m4])
m4_include([orte/mca/schizo/alps/configure.m4])
+m4_include([orte/mca/schizo/jsm/configure.m4])
m4_include([orte/mca/schizo/moab/configure.m4])
m4_include([orte/mca/schizo/singularity/configure.m4])
m4_include([orte/mca/schizo/slurm/configure.m4])
@@ -417,9 +420,13 @@
m4_include([ompi/mca/coll/hcoll/configure.m4])
m4_include([ompi/mca/coll/monitoring/configure.m4])
m4_include([ompi/mca/coll/portals4/configure.m4])
+m4_include([ompi/mca/coll/ucc/configure.m4])
m4_include([ompi/mca/crcp/bkmrk/configure.m4])
+m4_include([ompi/mca/fbtl/ime/configure.m4])
m4_include([ompi/mca/fbtl/posix/configure.m4])
m4_include([ompi/mca/fbtl/pvfs2/configure.m4])
+m4_include([ompi/mca/fs/gpfs/configure.m4])
+m4_include([ompi/mca/fs/ime/configure.m4])
m4_include([ompi/mca/fs/lustre/configure.m4])
m4_include([ompi/mca/fs/pvfs2/configure.m4])
m4_include([ompi/mca/fs/ufs/configure.m4])
@@ -429,6 +436,7 @@
m4_include([ompi/mca/mtl/portals4/configure.m4])
m4_include([ompi/mca/mtl/psm/configure.m4])
m4_include([ompi/mca/mtl/psm2/configure.m4])
+m4_include([ompi/mca/op/avx/configure.m4])
m4_include([ompi/mca/osc/monitoring/configure.m4])
m4_include([ompi/mca/osc/portals4/configure.m4])
m4_include([ompi/mca/osc/pt2pt/configure.m4])
@@ -449,6 +457,7 @@
m4_include([oshmem/mca/atomic/mxm/configure.m4])
m4_include([oshmem/mca/atomic/ucx/configure.m4])
m4_include([oshmem/mca/scoll/fca/configure.m4])
+m4_include([oshmem/mca/scoll/ucc/configure.m4])
m4_include([oshmem/mca/spml/ikrit/configure.m4])
m4_include([oshmem/mca/spml/ucx/configure.m4])
m4_include([oshmem/mca/sshmem/mmap/configure.m4])
diff -Nru openmpi-4.0.3/config/c_get_alignment.m4 openmpi-4.1.4/config/c_get_alignment.m4
--- openmpi-4.0.3/config/c_get_alignment.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/c_get_alignment.m4 2022-05-29 09:51:40.000000000 +0000
@@ -44,6 +44,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
]])], [AS_TR_SH([opal_cv_c_align_$1])=`cat conftestval`],
[AC_MSG_WARN([*** Problem running configure test!])
diff -Nru openmpi-4.0.3/config/config.guess openmpi-4.1.4/config/config.guess
--- openmpi-4.0.3/config/config.guess 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/config.guess 2022-05-29 09:51:40.000000000 +0000
@@ -1,8 +1,8 @@
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright 1992-2014 Free Software Foundation, Inc.
+# Copyright 1992-2021 Free Software Foundation, Inc.
-timestamp='2014-11-04'
+timestamp='2021-01-25'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -15,7 +15,7 @@
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, see .
+# along with this program; if not, see .
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -27,19 +27,19 @@
# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
#
# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
#
# Please send patches to .
-me=`echo "$0" | sed -e 's,.*/,,'`
+me=$(echo "$0" | sed -e 's,.*/,,')
usage="\
Usage: $0 [OPTION]
Output the configuration name of the system \`$me' is run on.
-Operation modes:
+Options:
-h, --help print this help, then exit
-t, --time-stamp print date of last modification, then exit
-v, --version print version number, then exit
@@ -50,7 +50,7 @@
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright 1992-2014 Free Software Foundation, Inc.
+Copyright 1992-2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -84,8 +84,6 @@
exit 1
fi
-trap 'exit 1' 1 2 15
-
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires
# temporary files to be created and, as you can see below, it is a
@@ -96,66 +94,89 @@
# Portable tmp directory creation inspired by the Autoconf team.
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int x;" > $dummy.c ;
- for c in cc gcc c89 c99 ; do
- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$c"; break ;
- fi ;
- done ;
- if test x"$CC_FOR_BUILD" = x ; then
- CC_FOR_BUILD=no_compiler_found ;
- fi
- ;;
- ,,*) CC_FOR_BUILD=$CC ;;
- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
+tmp=
+# shellcheck disable=SC2172
+trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15
+
+set_cc_for_build() {
+ # prevent multiple calls if $tmp is already set
+ test "$tmp" && return 0
+ : "${TMPDIR=/tmp}"
+ # shellcheck disable=SC2039
+ { tmp=$( (umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null) && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
+ dummy=$tmp/dummy
+ case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
+ ,,) echo "int x;" > "$dummy.c"
+ for driver in cc gcc c89 c99 ; do
+ if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
+ CC_FOR_BUILD="$driver"
+ break
+ fi
+ done
+ if test x"$CC_FOR_BUILD" = x ; then
+ CC_FOR_BUILD=no_compiler_found
+ fi
+ ;;
+ ,,*) CC_FOR_BUILD=$CC ;;
+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
+ esac
+}
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+if test -f /.attbin/uname ; then
PATH=$PATH:/.attbin ; export PATH
fi
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+UNAME_MACHINE=$( (uname -m) 2>/dev/null) || UNAME_MACHINE=unknown
+UNAME_RELEASE=$( (uname -r) 2>/dev/null) || UNAME_RELEASE=unknown
+UNAME_SYSTEM=$( (uname -s) 2>/dev/null) || UNAME_SYSTEM=unknown
+UNAME_VERSION=$( (uname -v) 2>/dev/null) || UNAME_VERSION=unknown
-case "${UNAME_SYSTEM}" in
+case "$UNAME_SYSTEM" in
Linux|GNU|GNU/*)
- # If the system lacks a compiler, then just pick glibc.
- # We could probably try harder.
- LIBC=gnu
+ LIBC=unknown
- eval $set_cc_for_build
- cat <<-EOF > $dummy.c
+ set_cc_for_build
+ cat <<-EOF > "$dummy.c"
#include
#if defined(__UCLIBC__)
LIBC=uclibc
#elif defined(__dietlibc__)
LIBC=dietlibc
- #else
+ #elif defined(__GLIBC__)
LIBC=gnu
+ #else
+ #include
+ /* First heuristic to detect musl libc. */
+ #ifdef __DEFINED_va_list
+ LIBC=musl
+ #endif
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+ eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g')"
+
+ # Second heuristic to detect musl libc.
+ if [ "$LIBC" = unknown ] &&
+ command -v ldd >/dev/null &&
+ ldd --version 2>&1 | grep -q ^musl; then
+ LIBC=musl
+ fi
+
+ # If the system lacks a compiler, then just pick glibc.
+ # We could probably try harder.
+ if [ "$LIBC" = unknown ]; then
+ LIBC=gnu
+ fi
;;
esac
# Note: order is significant - the case branches are not exclusive.
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
*:NetBSD:*:*)
# NetBSD (nbsd) targets should (where applicable) match one or
# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
@@ -167,22 +188,32 @@
#
# Note: NetBSD doesn't particularly care about the vendor
# portion of the name. We always set it to "unknown".
- sysctl="sysctl -n hw.machine_arch"
- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
- case "${UNAME_MACHINE_ARCH}" in
+ UNAME_MACHINE_ARCH=$( (uname -p 2>/dev/null || \
+ /sbin/sysctl -n hw.machine_arch 2>/dev/null || \
+ /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \
+ echo unknown))
+ case "$UNAME_MACHINE_ARCH" in
+ aarch64eb) machine=aarch64_be-unknown ;;
armeb) machine=armeb-unknown ;;
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
sh5el) machine=sh5le-unknown ;;
- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+ earmv*)
+ arch=$(echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,')
+ endian=$(echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p')
+ machine="${arch}${endian}"-unknown
+ ;;
+ *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
esac
# The Operating System including object format, if it has switched
- # to ELF recently, or will in the future.
- case "${UNAME_MACHINE_ARCH}" in
+ # to ELF recently (or will in the future) and ABI.
+ case "$UNAME_MACHINE_ARCH" in
+ earm*)
+ os=netbsdelf
+ ;;
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval $set_cc_for_build
+ set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ELF__
then
@@ -197,117 +228,137 @@
os=netbsd
;;
esac
+ # Determine ABI tags.
+ case "$UNAME_MACHINE_ARCH" in
+ earm*)
+ expr='s/^earmv[0-9]/-eabi/;s/eb$//'
+ abi=$(echo "$UNAME_MACHINE_ARCH" | sed -e "$expr")
+ ;;
+ esac
# The OS release
# Debian GNU/NetBSD machines have a different userland, and
# thus, need a distinct triplet. However, they do not need
# kernel version information, so it can be replaced with a
# suitable tag, in the style of linux-gnu.
- case "${UNAME_VERSION}" in
+ case "$UNAME_VERSION" in
Debian*)
release='-gnu'
;;
*)
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ release=$(echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2)
;;
esac
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
+ echo "$machine-${os}${release}${abi-}"
exit ;;
*:Bitrig:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
+ UNAME_MACHINE_ARCH=$(arch | sed 's/Bitrig.//')
+ echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
exit ;;
*:OpenBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+ UNAME_MACHINE_ARCH=$(arch | sed 's/OpenBSD.//')
+ echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
+ exit ;;
+ *:LibertyBSD:*:*)
+ UNAME_MACHINE_ARCH=$(arch | sed 's/^.*BSD\.//')
+ echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
+ exit ;;
+ *:MidnightBSD:*:*)
+ echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
exit ;;
*:ekkoBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
exit ;;
*:SolidBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
+ exit ;;
+ *:OS108:*:*)
+ echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
exit ;;
macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+ echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
exit ;;
*:MirBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
+ exit ;;
+ *:Sortix:*:*)
+ echo "$UNAME_MACHINE"-unknown-sortix
+ exit ;;
+ *:Twizzler:*:*)
+ echo "$UNAME_MACHINE"-unknown-twizzler
+ exit ;;
+ *:Redox:*:*)
+ echo "$UNAME_MACHINE"-unknown-redox
+ exit ;;
+ mips:OSF1:*.*)
+ echo mips-dec-osf1
exit ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
*4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+ UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $3}')
;;
*5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+ UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $4}')
;;
esac
# According to Compaq, /usr/sbin/psrinfo has been available on
# OSF/1 and Tru64 systems produced since 1995. I hope that
# covers most systems running today. This code pipes the CPU
# types through head -n 1, so we only detect the type of CPU 0.
- ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+ ALPHA_CPU_TYPE=$(/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1)
case "$ALPHA_CPU_TYPE" in
"EV4 (21064)")
- UNAME_MACHINE="alpha" ;;
+ UNAME_MACHINE=alpha ;;
"EV4.5 (21064)")
- UNAME_MACHINE="alpha" ;;
+ UNAME_MACHINE=alpha ;;
"LCA4 (21066/21068)")
- UNAME_MACHINE="alpha" ;;
+ UNAME_MACHINE=alpha ;;
"EV5 (21164)")
- UNAME_MACHINE="alphaev5" ;;
+ UNAME_MACHINE=alphaev5 ;;
"EV5.6 (21164A)")
- UNAME_MACHINE="alphaev56" ;;
+ UNAME_MACHINE=alphaev56 ;;
"EV5.6 (21164PC)")
- UNAME_MACHINE="alphapca56" ;;
+ UNAME_MACHINE=alphapca56 ;;
"EV5.7 (21164PC)")
- UNAME_MACHINE="alphapca57" ;;
+ UNAME_MACHINE=alphapca57 ;;
"EV6 (21264)")
- UNAME_MACHINE="alphaev6" ;;
+ UNAME_MACHINE=alphaev6 ;;
"EV6.7 (21264A)")
- UNAME_MACHINE="alphaev67" ;;
+ UNAME_MACHINE=alphaev67 ;;
"EV6.8CB (21264C)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.8AL (21264B)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.8CX (21264D)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.9A (21264/EV69A)")
- UNAME_MACHINE="alphaev69" ;;
+ UNAME_MACHINE=alphaev69 ;;
"EV7 (21364)")
- UNAME_MACHINE="alphaev7" ;;
+ UNAME_MACHINE=alphaev7 ;;
"EV7.9 (21364A)")
- UNAME_MACHINE="alphaev79" ;;
+ UNAME_MACHINE=alphaev79 ;;
esac
# A Pn.n version is a patched version.
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+ echo "$UNAME_MACHINE"-dec-osf"$(echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz)"
# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
exitcode=$?
trap '' 0
exit $exitcode ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
- exit ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit ;;
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
exit ;;
*:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
+ echo "$UNAME_MACHINE"-unknown-amigaos
exit ;;
*:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
+ echo "$UNAME_MACHINE"-unknown-morphos
exit ;;
*:OS/390:*:*)
echo i370-ibm-openedition
@@ -319,7 +370,7 @@
echo powerpc-ibm-os400
exit ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
+ echo arm-acorn-riscix"$UNAME_RELEASE"
exit ;;
arm*:riscos:*:*|arm*:RISCOS:*:*)
echo arm-unknown-riscos
@@ -329,7 +380,7 @@
exit ;;
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
+ if test "$( (/bin/universe) 2>/dev/null)" = att ; then
echo pyramid-pyramid-sysv3
else
echo pyramid-pyramid-bsd
@@ -342,69 +393,69 @@
echo sparc-icl-nx6
exit ;;
DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
- case `/usr/bin/uname -p` in
+ case $(/usr/bin/uname -p) in
sparc) echo sparc-icl-nx7; exit ;;
esac ;;
s390x:SunOS:*:*)
- echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo "$UNAME_MACHINE"-ibm-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')"
exit ;;
sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo sparc-hal-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
exit ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo sparc-sun-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')"
exit ;;
i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
- echo i386-pc-auroraux${UNAME_RELEASE}
+ echo i386-pc-auroraux"$UNAME_RELEASE"
exit ;;
i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
- eval $set_cc_for_build
- SUN_ARCH="i386"
+ set_cc_for_build
+ SUN_ARCH=i386
# If there is a compiler, see if it is configured for 64-bit objects.
# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
# This test works for both compilers.
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
then
- SUN_ARCH="x86_64"
+ SUN_ARCH=x86_64
fi
fi
- echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo "$SUN_ARCH"-pc-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
exit ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo sparc-sun-solaris3"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
exit ;;
sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
+ case "$(/usr/bin/arch -k)" in
Series*|S4*)
- UNAME_RELEASE=`uname -v`
+ UNAME_RELEASE=$(uname -v)
;;
esac
# Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+ echo sparc-sun-sunos"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/')"
exit ;;
sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
+ echo m68k-sun-sunos"$UNAME_RELEASE"
exit ;;
sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
- case "`/bin/arch`" in
+ UNAME_RELEASE=$( (sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null)
+ test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
+ case "$(/bin/arch)" in
sun3)
- echo m68k-sun-sunos${UNAME_RELEASE}
+ echo m68k-sun-sunos"$UNAME_RELEASE"
;;
sun4)
- echo sparc-sun-sunos${UNAME_RELEASE}
+ echo sparc-sun-sunos"$UNAME_RELEASE"
;;
esac
exit ;;
aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
+ echo sparc-auspex-sunos"$UNAME_RELEASE"
exit ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
@@ -415,44 +466,44 @@
# MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
+ echo m68k-atari-mint"$UNAME_RELEASE"
exit ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
+ echo m68k-atari-mint"$UNAME_RELEASE"
exit ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
+ echo m68k-atari-mint"$UNAME_RELEASE"
exit ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
+ echo m68k-milan-mint"$UNAME_RELEASE"
exit ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
+ echo m68k-hades-mint"$UNAME_RELEASE"
exit ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
+ echo m68k-unknown-mint"$UNAME_RELEASE"
exit ;;
m68k:machten:*:*)
- echo m68k-apple-machten${UNAME_RELEASE}
+ echo m68k-apple-machten"$UNAME_RELEASE"
exit ;;
powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
+ echo powerpc-apple-machten"$UNAME_RELEASE"
exit ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
exit ;;
RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
+ echo mips-dec-ultrix"$UNAME_RELEASE"
exit ;;
VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
+ echo vax-dec-ultrix"$UNAME_RELEASE"
exit ;;
2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
+ echo clipper-intergraph-clix"$UNAME_RELEASE"
exit ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#ifdef __cplusplus
#include /* for printf() prototype */
int main (int argc, char *argv[]) {
@@ -461,23 +512,23 @@
#endif
#if defined (host_mips) && defined (MIPSEB)
#if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
#endif
#endif
exit (-1);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c &&
- dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
- SYSTEM_NAME=`$dummy $dummyarg` &&
+ $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
+ dummyarg=$(echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p') &&
+ SYSTEM_NAME=$("$dummy" "$dummyarg") &&
{ echo "$SYSTEM_NAME"; exit; }
- echo mips-mips-riscos${UNAME_RELEASE}
+ echo mips-mips-riscos"$UNAME_RELEASE"
exit ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
@@ -502,18 +553,18 @@
exit ;;
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+ UNAME_PROCESSOR=$(/usr/bin/uname -p)
+ if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110
then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
+ if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \
+ test "$TARGET_BINARY_INTERFACE"x = x
then
- echo m88k-dg-dgux${UNAME_RELEASE}
+ echo m88k-dg-dgux"$UNAME_RELEASE"
else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
+ echo m88k-dg-dguxbcs"$UNAME_RELEASE"
fi
else
- echo i586-dg-dgux${UNAME_RELEASE}
+ echo i586-dg-dgux"$UNAME_RELEASE"
fi
exit ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
@@ -530,26 +581,26 @@
echo m68k-tektronix-bsd
exit ;;
*:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+ echo mips-sgi-irix"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/g')"
exit ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ exit ;; # Note that: echo "'$(uname -s)'" gives 'AIX '
i*86:AIX:*:*)
echo i386-ibm-aix
exit ;;
ia64:AIX:*:*)
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
+ if test -x /usr/bin/oslevel ; then
+ IBM_REV=$(/usr/bin/oslevel)
else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
fi
- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+ echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
exit ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#include
main()
@@ -560,7 +611,7 @@
exit(0);
}
EOF
- if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+ if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy")
then
echo "$SYSTEM_NAME"
else
@@ -573,28 +624,28 @@
fi
exit ;;
*:AIX:*:[4567])
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+ IBM_CPU_ID=$(/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }')
+ if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
IBM_ARCH=powerpc
fi
- if [ -x /usr/bin/lslpp ] ; then
- IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
- awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
+ if test -x /usr/bin/lslpp ; then
+ IBM_REV=$(/usr/bin/lslpp -Lqc bos.rte.libc |
+ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/)
else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+ echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
exit ;;
*:AIX:*:*)
echo rs6000-ibm-aix
exit ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+ ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
echo romp-ibm-bsd4.4
exit ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
+ echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
exit ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
@@ -609,28 +660,28 @@
echo m68k-hp-bsd4.4
exit ;;
9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
+ HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//')
+ case "$UNAME_MACHINE" in
+ 9000/31?) HP_ARCH=m68000 ;;
+ 9000/[34]??) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
- if [ -x /usr/bin/getconf ]; then
- sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+ if test -x /usr/bin/getconf; then
+ sc_cpu_version=$(/usr/bin/getconf SC_CPU_VERSION 2>/dev/null)
+ sc_kernel_bits=$(/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null)
+ case "$sc_cpu_version" in
+ 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
+ 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
+ case "$sc_kernel_bits" in
+ 32) HP_ARCH=hppa2.0n ;;
+ 64) HP_ARCH=hppa2.0w ;;
+ '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
esac ;;
esac
fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ if test "$HP_ARCH" = ""; then
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#define _HPUX_SOURCE
#include
@@ -663,13 +714,13 @@
exit (0);
}
EOF
- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+ (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=$("$dummy")
test -z "$HP_ARCH" && HP_ARCH=hppa
fi ;;
esac
- if [ ${HP_ARCH} = "hppa2.0w" ]
+ if test "$HP_ARCH" = hppa2.0w
then
- eval $set_cc_for_build
+ set_cc_for_build
# hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
# 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
@@ -680,23 +731,23 @@
# $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
# => hppa64-hp-hpux11.23
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+ if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
grep -q __LP64__
then
- HP_ARCH="hppa2.0w"
+ HP_ARCH=hppa2.0w
else
- HP_ARCH="hppa64"
+ HP_ARCH=hppa64
fi
fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+ echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
exit ;;
ia64:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux${HPUX_REV}
+ HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//')
+ echo ia64-hp-hpux"$HPUX_REV"
exit ;;
3050*:HI-UX:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
#include
int
main ()
@@ -721,11 +772,11 @@
exit (0);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+ $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy") &&
{ echo "$SYSTEM_NAME"; exit; }
echo unknown-hitachi-hiuxwe2
exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
echo hppa1.1-hp-bsd
exit ;;
9000/8??:4.3bsd:*:*)
@@ -734,17 +785,17 @@
*9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix
exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
echo hppa1.1-hp-osf
exit ;;
hp8??:OSF1:*:*)
echo hppa1.0-hp-osf
exit ;;
i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
+ if test -x /usr/sbin/sysversion ; then
+ echo "$UNAME_MACHINE"-unknown-osf1mk
else
- echo ${UNAME_MACHINE}-unknown-osf1
+ echo "$UNAME_MACHINE"-unknown-osf1
fi
exit ;;
parisc*:Lites*:*:*)
@@ -769,130 +820,123 @@
echo c4-convex-bsd
exit ;;
CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+ echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-e 's/\.[^.]*$/.X/'
exit ;;
CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
CRAY*SV1:*:*:*)
- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
*:UNICOS/mp:*:*)
- echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
exit ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+ FUJITSU_PROC=$(uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz)
+ FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///')
+ FUJITSU_REL=$(echo "$UNAME_RELEASE" | sed -e 's/ /_/')
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit ;;
5000:UNIX_System_V:4.*:*)
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+ FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///')
+ FUJITSU_REL=$(echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/')
echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
exit ;;
sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
+ echo sparc-unknown-bsdi"$UNAME_RELEASE"
exit ;;
*:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
+ exit ;;
+ arm:FreeBSD:*:*)
+ UNAME_PROCESSOR=$(uname -p)
+ set_cc_for_build
+ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_PCS_VFP
+ then
+ echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabi
+ else
+ echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabihf
+ fi
exit ;;
*:FreeBSD:*:*)
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- case ${UNAME_PROCESSOR} in
+ UNAME_PROCESSOR=$(/usr/bin/uname -p)
+ case "$UNAME_PROCESSOR" in
amd64)
- echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- *)
- echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ UNAME_PROCESSOR=x86_64 ;;
+ i386)
+ UNAME_PROCESSOR=i586 ;;
esac
+ echo "$UNAME_PROCESSOR"-unknown-freebsd"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')"
exit ;;
i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
+ echo "$UNAME_MACHINE"-pc-cygwin
exit ;;
*:MINGW64*:*)
- echo ${UNAME_MACHINE}-pc-mingw64
+ echo "$UNAME_MACHINE"-pc-mingw64
exit ;;
*:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
+ echo "$UNAME_MACHINE"-pc-mingw32
exit ;;
*:MSYS*:*)
- echo ${UNAME_MACHINE}-pc-msys
- exit ;;
- i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
+ echo "$UNAME_MACHINE"-pc-msys
exit ;;
i*:PW*:*)
- echo ${UNAME_MACHINE}-pc-pw32
+ echo "$UNAME_MACHINE"-pc-pw32
exit ;;
*:Interix*:*)
- case ${UNAME_MACHINE} in
+ case "$UNAME_MACHINE" in
x86)
- echo i586-pc-interix${UNAME_RELEASE}
+ echo i586-pc-interix"$UNAME_RELEASE"
exit ;;
authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix${UNAME_RELEASE}
+ echo x86_64-unknown-interix"$UNAME_RELEASE"
exit ;;
IA64)
- echo ia64-unknown-interix${UNAME_RELEASE}
+ echo ia64-unknown-interix"$UNAME_RELEASE"
exit ;;
esac ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
- exit ;;
- 8664:Windows_NT:*)
- echo x86_64-pc-mks
- exit ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
- echo i586-pc-interix
- exit ;;
i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
+ echo "$UNAME_MACHINE"-pc-uwin
exit ;;
amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-unknown-cygwin
- exit ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
+ echo x86_64-pc-cygwin
exit ;;
prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo powerpcle-unknown-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
exit ;;
*:GNU:*:*)
# the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ echo "$(echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,')-unknown-$LIBC$(echo "$UNAME_RELEASE"|sed -e 's,/.*$,,')"
exit ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
+ echo "$UNAME_MACHINE-unknown-$(echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]")$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')-$LIBC"
exit ;;
- i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
+ *:Minix:*:*)
+ echo "$UNAME_MACHINE"-unknown-minix
exit ;;
aarch64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
aarch64_be:Linux:*:*)
UNAME_MACHINE=aarch64_be
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+ case $(sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null) in
EV5) UNAME_MACHINE=alphaev5 ;;
EV56) UNAME_MACHINE=alphaev56 ;;
PCA56) UNAME_MACHINE=alphapca56 ;;
@@ -902,129 +946,182 @@
EV68*) UNAME_MACHINE=alphaev68 ;;
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
- if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
arc:Linux:*:* | arceb:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
arm*:Linux:*:*)
- eval $set_cc_for_build
+ set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_EABI__
then
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
else
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP
then
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
else
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
fi
fi
exit ;;
avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
cris:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
exit ;;
crisv32:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
+ exit ;;
+ e2k:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
frv:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
hexagon:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
i*86:Linux:*:*)
- echo ${UNAME_MACHINE}-pc-linux-${LIBC}
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
exit ;;
ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ k1om:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
mips:Linux:*:* | mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ set_cc_for_build
+ IS_GLIBC=0
+ test x"${LIBC}" = xgnu && IS_GLIBC=1
+ sed 's/^ //' << EOF > "$dummy.c"
#undef CPU
- #undef ${UNAME_MACHINE}
- #undef ${UNAME_MACHINE}el
+ #undef mips
+ #undef mipsel
+ #undef mips64
+ #undef mips64el
+ #if ${IS_GLIBC} && defined(_ABI64)
+ LIBCABI=gnuabi64
+ #else
+ #if ${IS_GLIBC} && defined(_ABIN32)
+ LIBCABI=gnuabin32
+ #else
+ LIBCABI=${LIBC}
+ #endif
+ #endif
+
+ #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
+ CPU=mipsisa64r6
+ #else
+ #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
+ CPU=mipsisa32r6
+ #else
+ #if defined(__mips64)
+ CPU=mips64
+ #else
+ CPU=mips
+ #endif
+ #endif
+ #endif
+
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=${UNAME_MACHINE}el
+ MIPS_ENDIAN=el
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=${UNAME_MACHINE}
+ MIPS_ENDIAN=
#else
- CPU=
+ MIPS_ENDIAN=
#endif
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
+ eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI')"
+ test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
;;
+ mips64el:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
openrisc*:Linux:*:*)
- echo or1k-unknown-linux-${LIBC}
+ echo or1k-unknown-linux-"$LIBC"
exit ;;
or32:Linux:*:* | or1k*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
padre:Linux:*:*)
- echo sparc-unknown-linux-${LIBC}
+ echo sparc-unknown-linux-"$LIBC"
exit ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-${LIBC}
+ echo hppa64-unknown-linux-"$LIBC"
exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
- case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
- PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
- *) echo hppa-unknown-linux-${LIBC} ;;
+ case $(grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2) in
+ PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
+ PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
+ *) echo hppa-unknown-linux-"$LIBC" ;;
esac
exit ;;
ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-${LIBC}
+ echo powerpc64-unknown-linux-"$LIBC"
exit ;;
ppc:Linux:*:*)
- echo powerpc-unknown-linux-${LIBC}
+ echo powerpc-unknown-linux-"$LIBC"
exit ;;
ppc64le:Linux:*:*)
- echo powerpc64le-unknown-linux-${LIBC}
+ echo powerpc64le-unknown-linux-"$LIBC"
exit ;;
ppcle:Linux:*:*)
- echo powerpcle-unknown-linux-${LIBC}
+ echo powerpcle-unknown-linux-"$LIBC"
+ exit ;;
+ riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
+ echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
exit ;;
sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
tile*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-${LIBC}
+ echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
exit ;;
x86_64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ set_cc_for_build
+ LIBCABI=$LIBC
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
+ if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_X32 >/dev/null
+ then
+ LIBCABI="$LIBC"x32
+ fi
+ fi
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBCABI"
exit ;;
xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
exit ;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1038,51 +1135,51 @@
# I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+ echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
exit ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
+ echo "$UNAME_MACHINE"-pc-os2-emx
exit ;;
i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
+ echo "$UNAME_MACHINE"-unknown-stop
exit ;;
i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
+ echo "$UNAME_MACHINE"-unknown-atheos
exit ;;
i*86:syllable:*:*)
- echo ${UNAME_MACHINE}-pc-syllable
+ echo "$UNAME_MACHINE"-pc-syllable
exit ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
+ echo i386-unknown-lynxos"$UNAME_RELEASE"
exit ;;
i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
+ echo "$UNAME_MACHINE"-pc-msdosdjgpp
exit ;;
- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+ i*86:*:4.*:*)
+ UNAME_REL=$(echo "$UNAME_RELEASE" | sed 's/\/MP$//')
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+ echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+ echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
fi
exit ;;
i*86:*:5:[678]*)
# UnixWare 7.x, OpenUNIX and OpenServer 6.
- case `/bin/uname -X | grep "^Machine"` in
+ case $(/bin/uname -X | grep "^Machine") in
*486*) UNAME_MACHINE=i486 ;;
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+ echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}"
exit ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
- UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+ UNAME_REL=$( (/bin/uname -X|grep Release|sed -e 's/.*= //'))
(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
@@ -1090,9 +1187,9 @@
&& UNAME_MACHINE=i686
(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+ echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
else
- echo ${UNAME_MACHINE}-pc-sysv32
+ echo "$UNAME_MACHINE"-pc-sysv32
fi
exit ;;
pc:*:*:*)
@@ -1100,7 +1197,7 @@
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i586.
# Note: whatever this is, it MUST be the same as what config.sub
- # prints for the "djgpp" host, or else GDB configury will decide that
+ # prints for the "djgpp" host, or else GDB configure will decide that
# this is a cross-build.
echo i586-pc-msdosdjgpp
exit ;;
@@ -1112,9 +1209,9 @@
exit ;;
i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+ echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
+ echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
fi
exit ;;
mini*:CTIX:SYS*5:*)
@@ -1132,41 +1229,41 @@
3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ && OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& { echo i486-ncr-sysv4; exit; } ;;
NCR*:*:4.2:* | MPRAS*:*:4.2:*)
OS_REL='.3'
test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ && OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
+ echo m68k-unknown-lynxos"$UNAME_RELEASE"
exit ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit ;;
TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
+ echo sparc-unknown-lynxos"$UNAME_RELEASE"
exit ;;
rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
+ echo rs6000-unknown-lynxos"$UNAME_RELEASE"
exit ;;
PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
+ echo powerpc-unknown-lynxos"$UNAME_RELEASE"
exit ;;
SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
+ echo mips-dde-sysv"$UNAME_RELEASE"
exit ;;
RM*:ReliantUNIX-*:*:*)
echo mips-sni-sysv4
@@ -1176,8 +1273,8 @@
exit ;;
*:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo ${UNAME_MACHINE}-sni-sysv4
+ UNAME_MACHINE=$( (uname -p) 2>/dev/null)
+ echo "$UNAME_MACHINE"-sni-sysv4
else
echo ns32k-sni-sysv
fi
@@ -1197,23 +1294,23 @@
exit ;;
i*86:VOS:*:*)
# From Paul.Green@stratus.com.
- echo ${UNAME_MACHINE}-stratus-vos
+ echo "$UNAME_MACHINE"-stratus-vos
exit ;;
*:VOS:*:*)
# From Paul.Green@stratus.com.
echo hppa1.1-stratus-vos
exit ;;
mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
+ echo m68k-apple-aux"$UNAME_RELEASE"
exit ;;
news*:NEWS-OS:6*:*)
echo mips-sony-newsos6
exit ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
+ if test -d /usr/nec; then
+ echo mips-nec-sysv"$UNAME_RELEASE"
else
- echo mips-unknown-sysv${UNAME_RELEASE}
+ echo mips-unknown-sysv"$UNAME_RELEASE"
fi
exit ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
@@ -1232,77 +1329,97 @@
echo x86_64-unknown-haiku
exit ;;
SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
+ echo sx4-nec-superux"$UNAME_RELEASE"
exit ;;
SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
+ echo sx5-nec-superux"$UNAME_RELEASE"
exit ;;
SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux${UNAME_RELEASE}
+ echo sx6-nec-superux"$UNAME_RELEASE"
exit ;;
SX-7:SUPER-UX:*:*)
- echo sx7-nec-superux${UNAME_RELEASE}
+ echo sx7-nec-superux"$UNAME_RELEASE"
exit ;;
SX-8:SUPER-UX:*:*)
- echo sx8-nec-superux${UNAME_RELEASE}
+ echo sx8-nec-superux"$UNAME_RELEASE"
exit ;;
SX-8R:SUPER-UX:*:*)
- echo sx8r-nec-superux${UNAME_RELEASE}
+ echo sx8r-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-ACE:SUPER-UX:*:*)
+ echo sxace-nec-superux"$UNAME_RELEASE"
exit ;;
Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
+ echo powerpc-apple-rhapsody"$UNAME_RELEASE"
exit ;;
*:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
+ exit ;;
+ arm64:Darwin:*:*)
+ echo aarch64-apple-darwin"$UNAME_RELEASE"
exit ;;
*:Darwin:*:*)
- UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- eval $set_cc_for_build
- if test "$UNAME_PROCESSOR" = unknown ; then
- UNAME_PROCESSOR=powerpc
- fi
- if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- case $UNAME_PROCESSOR in
- i386) UNAME_PROCESSOR=x86_64 ;;
- powerpc) UNAME_PROCESSOR=powerpc64 ;;
- esac
- fi
+ UNAME_PROCESSOR=$(uname -p)
+ case $UNAME_PROCESSOR in
+ unknown) UNAME_PROCESSOR=powerpc ;;
+ esac
+ if command -v xcode-select > /dev/null 2> /dev/null && \
+ ! xcode-select --print-path > /dev/null 2> /dev/null ; then
+ # Avoid executing cc if there is no toolchain installed as
+ # cc will be a stub that puts up a graphical alert
+ # prompting the user to install developer tools.
+ CC_FOR_BUILD=no_compiler_found
+ else
+ set_cc_for_build
+ fi
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
+ # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
+ if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_PPC >/dev/null
+ then
+ UNAME_PROCESSOR=powerpc
fi
elif test "$UNAME_PROCESSOR" = i386 ; then
- # Avoid executing cc on OS X 10.9, as it ships with a stub
- # that puts up a graphical alert prompting to install
- # developer tools. Any system running Mac OS X 10.7 or
- # later (Darwin 11 and later) is required to have a 64-bit
- # processor. This is not true of the ARM version of Darwin
- # that Apple uses in portable devices.
- UNAME_PROCESSOR=x86_64
+ # uname -m returns i386 or x86_64
+ UNAME_PROCESSOR=$UNAME_MACHINE
fi
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+ echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
- UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
+ UNAME_PROCESSOR=$(uname -p)
+ if test "$UNAME_PROCESSOR" = x86; then
UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+ echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
exit ;;
*:QNX:*:4*)
echo i386-pc-qnx
exit ;;
- NEO-?:NONSTOP_KERNEL:*:*)
- echo neo-tandem-nsk${UNAME_RELEASE}
+ NEO-*:NONSTOP_KERNEL:*:*)
+ echo neo-tandem-nsk"$UNAME_RELEASE"
exit ;;
NSE-*:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk${UNAME_RELEASE}
+ echo nse-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSR-*:NONSTOP_KERNEL:*:*)
+ echo nsr-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSV-*:NONSTOP_KERNEL:*:*)
+ echo nsv-tandem-nsk"$UNAME_RELEASE"
exit ;;
- NSR-?:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk${UNAME_RELEASE}
+ NSX-*:NONSTOP_KERNEL:*:*)
+ echo nsx-tandem-nsk"$UNAME_RELEASE"
exit ;;
*:NonStop-UX:*:*)
echo mips-compaq-nonstopux
@@ -1311,18 +1428,19 @@
echo bs2000-siemens-sysv
exit ;;
DS/*:UNIX_System_V:*:*)
- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+ echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
exit ;;
*:Plan9:*:*)
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
# operating systems.
- if test "$cputype" = "386"; then
+ # shellcheck disable=SC2154
+ if test "$cputype" = 386; then
UNAME_MACHINE=i386
else
UNAME_MACHINE="$cputype"
fi
- echo ${UNAME_MACHINE}-unknown-plan9
+ echo "$UNAME_MACHINE"-unknown-plan9
exit ;;
*:TOPS-10:*:*)
echo pdp10-unknown-tops10
@@ -1343,14 +1461,14 @@
echo pdp10-unknown-its
exit ;;
SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
+ echo mips-sei-seiux"$UNAME_RELEASE"
exit ;;
*:DragonFly:*:*)
- echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ echo "$UNAME_MACHINE"-unknown-dragonfly"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')"
exit ;;
*:*VMS:*:*)
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- case "${UNAME_MACHINE}" in
+ UNAME_MACHINE=$( (uname -p) 2>/dev/null)
+ case "$UNAME_MACHINE" in
A*) echo alpha-dec-vms ; exit ;;
I*) echo ia64-dec-vms ; exit ;;
V*) echo vax-dec-vms ; exit ;;
@@ -1359,62 +1477,223 @@
echo i386-pc-xenix
exit ;;
i*86:skyos:*:*)
- echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
+ echo "$UNAME_MACHINE"-pc-skyos"$(echo "$UNAME_RELEASE" | sed -e 's/ .*$//')"
exit ;;
i*86:rdos:*:*)
- echo ${UNAME_MACHINE}-pc-rdos
+ echo "$UNAME_MACHINE"-pc-rdos
exit ;;
- i*86:AROS:*:*)
- echo ${UNAME_MACHINE}-pc-aros
+ *:AROS:*:*)
+ echo "$UNAME_MACHINE"-unknown-aros
exit ;;
x86_64:VMkernel:*:*)
- echo ${UNAME_MACHINE}-unknown-esx
+ echo "$UNAME_MACHINE"-unknown-esx
+ exit ;;
+ amd64:Isilon\ OneFS:*:*)
+ echo x86_64-unknown-onefs
+ exit ;;
+ *:Unleashed:*:*)
+ echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE"
exit ;;
esac
+# No uname command or uname output not recognized.
+set_cc_for_build
+cat > "$dummy.c" <
+#include
+#endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
+#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#include
+#if defined(_SIZE_T_) || defined(SIGLOST)
+#include
+#endif
+#endif
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+ /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
+ I don't know.... */
+ printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include
+ printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+ "4"
+#else
+ ""
+#endif
+ ); exit (0);
+#endif
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+ int version;
+ version=$( (hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null);
+ if (version < 4)
+ printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+ else
+ printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+ exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+ printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+ printf ("ns32k-encore-mach\n"); exit (0);
+#else
+ printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+ printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+ printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+ printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+ struct utsname un;
+
+ uname(&un);
+ if (strncmp(un.version, "V2", 2) == 0) {
+ printf ("i386-sequent-ptx2\n"); exit (0);
+ }
+ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+ printf ("i386-sequent-ptx1\n"); exit (0);
+ }
+ printf ("i386-sequent-ptx\n"); exit (0);
+#endif
+
+#if defined (vax)
+#if !defined (ultrix)
+#include
+#if defined (BSD)
+#if BSD == 43
+ printf ("vax-dec-bsd4.3\n"); exit (0);
+#else
+#if BSD == 199006
+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#else
+ printf ("vax-dec-bsd\n"); exit (0);
+#endif
+#endif
+#else
+ printf ("vax-dec-bsd\n"); exit (0);
+#endif
+#else
+#if defined(_SIZE_T_) || defined(SIGLOST)
+ struct utsname un;
+ uname (&un);
+ printf ("vax-dec-ultrix%s\n", un.release); exit (0);
+#else
+ printf ("vax-dec-ultrix\n"); exit (0);
+#endif
+#endif
+#endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
+#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#if defined(_SIZE_T_) || defined(SIGLOST)
+ struct utsname *un;
+ uname (&un);
+ printf ("mips-dec-ultrix%s\n", un.release); exit (0);
+#else
+ printf ("mips-dec-ultrix\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (alliant) && defined (i860)
+ printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+ exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=$($dummy) &&
+ { echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
+
+echo "$0: unable to guess system type" >&2
+
+case "$UNAME_MACHINE:$UNAME_SYSTEM" in
+ mips:Linux | mips64:Linux)
+ # If we got here on MIPS GNU/Linux, output extra information.
+ cat >&2 <&2 < in order to provide the needed
-information to handle your system.
+year=$(echo $timestamp | sed 's,-.*,,')
+# shellcheck disable=SC2003
+if test "$(expr "$(date +%Y)" - "$year")" -lt 3 ; then
+ cat >&2 </dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo = `(hostinfo) 2>/dev/null`
-/bin/universe = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
+uname -m = $( (uname -m) 2>/dev/null || echo unknown)
+uname -r = $( (uname -r) 2>/dev/null || echo unknown)
+uname -s = $( (uname -s) 2>/dev/null || echo unknown)
+uname -v = $( (uname -v) 2>/dev/null || echo unknown)
+
+/usr/bin/uname -p = $( (/usr/bin/uname -p) 2>/dev/null)
+/bin/uname -X = $( (/bin/uname -X) 2>/dev/null)
+
+hostinfo = $( (hostinfo) 2>/dev/null)
+/bin/universe = $( (/bin/universe) 2>/dev/null)
+/usr/bin/arch -k = $( (/usr/bin/arch -k) 2>/dev/null)
+/bin/arch = $( (/bin/arch) 2>/dev/null)
+/usr/bin/oslevel = $( (/usr/bin/oslevel) 2>/dev/null)
+/usr/convex/getsysinfo = $( (/usr/convex/getsysinfo) 2>/dev/null)
+
+UNAME_MACHINE = "$UNAME_MACHINE"
+UNAME_RELEASE = "$UNAME_RELEASE"
+UNAME_SYSTEM = "$UNAME_SYSTEM"
+UNAME_VERSION = "$UNAME_VERSION"
EOF
+fi
exit 1
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
diff -Nru openmpi-4.0.3/config/config.sub openmpi-4.1.4/config/config.sub
--- openmpi-4.0.3/config/config.sub 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/config.sub 2022-05-29 09:51:40.000000000 +0000
@@ -1,8 +1,8 @@
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright 1992-2014 Free Software Foundation, Inc.
+# Copyright 1992-2021 Free Software Foundation, Inc.
-timestamp='2014-12-03'
+timestamp='2021-01-08'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -15,7 +15,7 @@
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, see .
+# along with this program; if not, see .
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -33,7 +33,7 @@
# Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
@@ -50,15 +50,14 @@
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# It is wrong to echo any other type of specification.
-me=`echo "$0" | sed -e 's,.*/,,'`
+me=$(echo "$0" | sed -e 's,.*/,,')
usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
+Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
Canonicalize a configuration name.
-Operation modes:
+Options:
-h, --help print this help, then exit
-t, --time-stamp print date of last modification, then exit
-v, --version print version number, then exit
@@ -68,7 +67,7 @@
version="\
GNU config.sub ($timestamp)
-Copyright 1992-2014 Free Software Foundation, Inc.
+Copyright 1992-2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -90,12 +89,12 @@
- ) # Use stdin as input.
break ;;
-* )
- echo "$me: invalid option $1$help"
+ echo "$me: invalid option $1$help" >&2
exit 1 ;;
*local*)
# First pass through any local machine types.
- echo $1
+ echo "$1"
exit ;;
* )
@@ -111,1228 +110,1169 @@
exit 1;;
esac
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
- linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
- knetbsd*-gnu* | netbsd*-gnu* | \
- kopensolaris*-gnu* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
- android-linux)
- os=-linux-android
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
- ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
- else os=; fi
- ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work. We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
- -sun*os*)
- # Prevent following clause from handling this invalid input.
- ;;
- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray | -microblaze*)
- os=
- basic_machine=$1
- ;;
- -bluegene*)
- os=-cnk
- ;;
- -sim | -cisco | -oki | -wec | -winbond)
- os=
- basic_machine=$1
- ;;
- -scout)
- ;;
- -wrs)
- os=-vxworks
- basic_machine=$1
- ;;
- -chorusos*)
- os=-chorusos
- basic_machine=$1
- ;;
- -chorusrdb)
- os=-chorusrdb
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
- -sco6)
- os=-sco5v6
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco4)
- os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*178)
- os=-lynxos178
- ;;
- -lynx*5)
- os=-lynxos5
- ;;
- -lynx*)
- os=-lynxos
+# Split fields of configuration type
+# shellcheck disable=SC2162
+IFS="-" read field1 field2 field3 field4 <&2
+ exit 1
;;
- -ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
+ *-*-*-*)
+ basic_machine=$field1-$field2
+ basic_os=$field3-$field4
;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
+ *-*-*)
+ # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
+ # parts
+ maybe_os=$field2-$field3
+ case $maybe_os in
+ nto-qnx* | linux-* | uclinux-uclibc* \
+ | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
+ | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
+ | storm-chaos* | os2-emx* | rtmk-nova*)
+ basic_machine=$field1
+ basic_os=$maybe_os
+ ;;
+ android-linux)
+ basic_machine=$field1-unknown
+ basic_os=linux-android
+ ;;
+ *)
+ basic_machine=$field1-$field2
+ basic_os=$field3
+ ;;
+ esac
;;
- -psos*)
- os=-psos
+ *-*)
+ # A lone config we happen to match not fitting any pattern
+ case $field1-$field2 in
+ decstation-3100)
+ basic_machine=mips-dec
+ basic_os=
+ ;;
+ *-*)
+ # Second component is usually, but not always the OS
+ case $field2 in
+ # Prevent following clause from handling this valid os
+ sun*os*)
+ basic_machine=$field1
+ basic_os=$field2
+ ;;
+ # Manufacturers
+ dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
+ | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
+ | unicom* | ibm* | next | hp | isi* | apollo | altos* \
+ | convergent* | ncr* | news | 32* | 3600* | 3100* \
+ | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \
+ | ultra | tti* | harris | dolphin | highlevel | gould \
+ | cbm | ns | masscomp | apple | axis | knuth | cray \
+ | microblaze* | sim | cisco \
+ | oki | wec | wrs | winbond)
+ basic_machine=$field1-$field2
+ basic_os=
+ ;;
+ *)
+ basic_machine=$field1
+ basic_os=$field2
+ ;;
+ esac
+ ;;
+ esac
;;
- -mint | -mint[0-9]*)
- basic_machine=m68k-atari
- os=-mint
+ *)
+ # Convert single-component short-hands not valid as part of
+ # multi-component configurations.
+ case $field1 in
+ 386bsd)
+ basic_machine=i386-pc
+ basic_os=bsd
+ ;;
+ a29khif)
+ basic_machine=a29k-amd
+ basic_os=udi
+ ;;
+ adobe68k)
+ basic_machine=m68010-adobe
+ basic_os=scout
+ ;;
+ alliant)
+ basic_machine=fx80-alliant
+ basic_os=
+ ;;
+ altos | altos3068)
+ basic_machine=m68k-altos
+ basic_os=
+ ;;
+ am29k)
+ basic_machine=a29k-none
+ basic_os=bsd
+ ;;
+ amdahl)
+ basic_machine=580-amdahl
+ basic_os=sysv
+ ;;
+ amiga)
+ basic_machine=m68k-unknown
+ basic_os=
+ ;;
+ amigaos | amigados)
+ basic_machine=m68k-unknown
+ basic_os=amigaos
+ ;;
+ amigaunix | amix)
+ basic_machine=m68k-unknown
+ basic_os=sysv4
+ ;;
+ apollo68)
+ basic_machine=m68k-apollo
+ basic_os=sysv
+ ;;
+ apollo68bsd)
+ basic_machine=m68k-apollo
+ basic_os=bsd
+ ;;
+ aros)
+ basic_machine=i386-pc
+ basic_os=aros
+ ;;
+ aux)
+ basic_machine=m68k-apple
+ basic_os=aux
+ ;;
+ balance)
+ basic_machine=ns32k-sequent
+ basic_os=dynix
+ ;;
+ blackfin)
+ basic_machine=bfin-unknown
+ basic_os=linux
+ ;;
+ cegcc)
+ basic_machine=arm-unknown
+ basic_os=cegcc
+ ;;
+ convex-c1)
+ basic_machine=c1-convex
+ basic_os=bsd
+ ;;
+ convex-c2)
+ basic_machine=c2-convex
+ basic_os=bsd
+ ;;
+ convex-c32)
+ basic_machine=c32-convex
+ basic_os=bsd
+ ;;
+ convex-c34)
+ basic_machine=c34-convex
+ basic_os=bsd
+ ;;
+ convex-c38)
+ basic_machine=c38-convex
+ basic_os=bsd
+ ;;
+ cray)
+ basic_machine=j90-cray
+ basic_os=unicos
+ ;;
+ crds | unos)
+ basic_machine=m68k-crds
+ basic_os=
+ ;;
+ da30)
+ basic_machine=m68k-da30
+ basic_os=
+ ;;
+ decstation | pmax | pmin | dec3100 | decstatn)
+ basic_machine=mips-dec
+ basic_os=
+ ;;
+ delta88)
+ basic_machine=m88k-motorola
+ basic_os=sysv3
+ ;;
+ dicos)
+ basic_machine=i686-pc
+ basic_os=dicos
+ ;;
+ djgpp)
+ basic_machine=i586-pc
+ basic_os=msdosdjgpp
+ ;;
+ ebmon29k)
+ basic_machine=a29k-amd
+ basic_os=ebmon
+ ;;
+ es1800 | OSE68k | ose68k | ose | OSE)
+ basic_machine=m68k-ericsson
+ basic_os=ose
+ ;;
+ gmicro)
+ basic_machine=tron-gmicro
+ basic_os=sysv
+ ;;
+ go32)
+ basic_machine=i386-pc
+ basic_os=go32
+ ;;
+ h8300hms)
+ basic_machine=h8300-hitachi
+ basic_os=hms
+ ;;
+ h8300xray)
+ basic_machine=h8300-hitachi
+ basic_os=xray
+ ;;
+ h8500hms)
+ basic_machine=h8500-hitachi
+ basic_os=hms
+ ;;
+ harris)
+ basic_machine=m88k-harris
+ basic_os=sysv3
+ ;;
+ hp300 | hp300hpux)
+ basic_machine=m68k-hp
+ basic_os=hpux
+ ;;
+ hp300bsd)
+ basic_machine=m68k-hp
+ basic_os=bsd
+ ;;
+ hppaosf)
+ basic_machine=hppa1.1-hp
+ basic_os=osf
+ ;;
+ hppro)
+ basic_machine=hppa1.1-hp
+ basic_os=proelf
+ ;;
+ i386mach)
+ basic_machine=i386-mach
+ basic_os=mach
+ ;;
+ isi68 | isi)
+ basic_machine=m68k-isi
+ basic_os=sysv
+ ;;
+ m68knommu)
+ basic_machine=m68k-unknown
+ basic_os=linux
+ ;;
+ magnum | m3230)
+ basic_machine=mips-mips
+ basic_os=sysv
+ ;;
+ merlin)
+ basic_machine=ns32k-utek
+ basic_os=sysv
+ ;;
+ mingw64)
+ basic_machine=x86_64-pc
+ basic_os=mingw64
+ ;;
+ mingw32)
+ basic_machine=i686-pc
+ basic_os=mingw32
+ ;;
+ mingw32ce)
+ basic_machine=arm-unknown
+ basic_os=mingw32ce
+ ;;
+ monitor)
+ basic_machine=m68k-rom68k
+ basic_os=coff
+ ;;
+ morphos)
+ basic_machine=powerpc-unknown
+ basic_os=morphos
+ ;;
+ moxiebox)
+ basic_machine=moxie-unknown
+ basic_os=moxiebox
+ ;;
+ msdos)
+ basic_machine=i386-pc
+ basic_os=msdos
+ ;;
+ msys)
+ basic_machine=i686-pc
+ basic_os=msys
+ ;;
+ mvs)
+ basic_machine=i370-ibm
+ basic_os=mvs
+ ;;
+ nacl)
+ basic_machine=le32-unknown
+ basic_os=nacl
+ ;;
+ ncr3000)
+ basic_machine=i486-ncr
+ basic_os=sysv4
+ ;;
+ netbsd386)
+ basic_machine=i386-pc
+ basic_os=netbsd
+ ;;
+ netwinder)
+ basic_machine=armv4l-rebel
+ basic_os=linux
+ ;;
+ news | news700 | news800 | news900)
+ basic_machine=m68k-sony
+ basic_os=newsos
+ ;;
+ news1000)
+ basic_machine=m68030-sony
+ basic_os=newsos
+ ;;
+ necv70)
+ basic_machine=v70-nec
+ basic_os=sysv
+ ;;
+ nh3000)
+ basic_machine=m68k-harris
+ basic_os=cxux
+ ;;
+ nh[45]000)
+ basic_machine=m88k-harris
+ basic_os=cxux
+ ;;
+ nindy960)
+ basic_machine=i960-intel
+ basic_os=nindy
+ ;;
+ mon960)
+ basic_machine=i960-intel
+ basic_os=mon960
+ ;;
+ nonstopux)
+ basic_machine=mips-compaq
+ basic_os=nonstopux
+ ;;
+ os400)
+ basic_machine=powerpc-ibm
+ basic_os=os400
+ ;;
+ OSE68000 | ose68000)
+ basic_machine=m68000-ericsson
+ basic_os=ose
+ ;;
+ os68k)
+ basic_machine=m68k-none
+ basic_os=os68k
+ ;;
+ paragon)
+ basic_machine=i860-intel
+ basic_os=osf
+ ;;
+ parisc)
+ basic_machine=hppa-unknown
+ basic_os=linux
+ ;;
+ psp)
+ basic_machine=mipsallegrexel-sony
+ basic_os=psp
+ ;;
+ pw32)
+ basic_machine=i586-unknown
+ basic_os=pw32
+ ;;
+ rdos | rdos64)
+ basic_machine=x86_64-pc
+ basic_os=rdos
+ ;;
+ rdos32)
+ basic_machine=i386-pc
+ basic_os=rdos
+ ;;
+ rom68k)
+ basic_machine=m68k-rom68k
+ basic_os=coff
+ ;;
+ sa29200)
+ basic_machine=a29k-amd
+ basic_os=udi
+ ;;
+ sei)
+ basic_machine=mips-sei
+ basic_os=seiux
+ ;;
+ sequent)
+ basic_machine=i386-sequent
+ basic_os=
+ ;;
+ sps7)
+ basic_machine=m68k-bull
+ basic_os=sysv2
+ ;;
+ st2000)
+ basic_machine=m68k-tandem
+ basic_os=
+ ;;
+ stratus)
+ basic_machine=i860-stratus
+ basic_os=sysv4
+ ;;
+ sun2)
+ basic_machine=m68000-sun
+ basic_os=
+ ;;
+ sun2os3)
+ basic_machine=m68000-sun
+ basic_os=sunos3
+ ;;
+ sun2os4)
+ basic_machine=m68000-sun
+ basic_os=sunos4
+ ;;
+ sun3)
+ basic_machine=m68k-sun
+ basic_os=
+ ;;
+ sun3os3)
+ basic_machine=m68k-sun
+ basic_os=sunos3
+ ;;
+ sun3os4)
+ basic_machine=m68k-sun
+ basic_os=sunos4
+ ;;
+ sun4)
+ basic_machine=sparc-sun
+ basic_os=
+ ;;
+ sun4os3)
+ basic_machine=sparc-sun
+ basic_os=sunos3
+ ;;
+ sun4os4)
+ basic_machine=sparc-sun
+ basic_os=sunos4
+ ;;
+ sun4sol2)
+ basic_machine=sparc-sun
+ basic_os=solaris2
+ ;;
+ sun386 | sun386i | roadrunner)
+ basic_machine=i386-sun
+ basic_os=
+ ;;
+ sv1)
+ basic_machine=sv1-cray
+ basic_os=unicos
+ ;;
+ symmetry)
+ basic_machine=i386-sequent
+ basic_os=dynix
+ ;;
+ t3e)
+ basic_machine=alphaev5-cray
+ basic_os=unicos
+ ;;
+ t90)
+ basic_machine=t90-cray
+ basic_os=unicos
+ ;;
+ toad1)
+ basic_machine=pdp10-xkl
+ basic_os=tops20
+ ;;
+ tpf)
+ basic_machine=s390x-ibm
+ basic_os=tpf
+ ;;
+ udi29k)
+ basic_machine=a29k-amd
+ basic_os=udi
+ ;;
+ ultra3)
+ basic_machine=a29k-nyu
+ basic_os=sym1
+ ;;
+ v810 | necv810)
+ basic_machine=v810-nec
+ basic_os=none
+ ;;
+ vaxv)
+ basic_machine=vax-dec
+ basic_os=sysv
+ ;;
+ vms)
+ basic_machine=vax-dec
+ basic_os=vms
+ ;;
+ vsta)
+ basic_machine=i386-pc
+ basic_os=vsta
+ ;;
+ vxworks960)
+ basic_machine=i960-wrs
+ basic_os=vxworks
+ ;;
+ vxworks68)
+ basic_machine=m68k-wrs
+ basic_os=vxworks
+ ;;
+ vxworks29k)
+ basic_machine=a29k-wrs
+ basic_os=vxworks
+ ;;
+ xbox)
+ basic_machine=i686-pc
+ basic_os=mingw32
+ ;;
+ ymp)
+ basic_machine=ymp-cray
+ basic_os=unicos
+ ;;
+ *)
+ basic_machine=$1
+ basic_os=
+ ;;
+ esac
;;
esac
-# Decode aliases for certain CPU-COMPANY combinations.
+# Decode 1-component or ad-hoc basic machines
case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | aarch64 | aarch64_be \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arceb \
- | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
- | avr | avr32 \
- | be32 | be64 \
- | bfin \
- | c4x | c8051 | clipper \
- | d10v | d30v | dlx | dsp16xx \
- | epiphany \
- | fido | fr30 | frv \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | hexagon \
- | i370 | i860 | i960 | ia64 \
- | ip2k | iq2000 \
- | k1om \
- | le32 | le64 \
- | lm32 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64octeon | mips64octeonel \
- | mips64orion | mips64orionel \
- | mips64r5900 | mips64r5900el \
- | mips64vr | mips64vrel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa32r6 | mipsisa32r6el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
- | mipsisa64r6 | mipsisa64r6el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipsr5900 | mipsr5900el \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | moxie \
- | mt \
- | msp430 \
- | nds32 | nds32le | nds32be \
- | nios | nios2 | nios2eb | nios2el \
- | ns16k | ns32k \
- | open8 | or1k | or1knd | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle \
- | pyramid \
- | riscv32 | riscv64 \
- | rl78 | rx \
- | score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu \
- | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
- | ubicom32 \
- | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
- | visium \
- | we32k \
- | x86 | xc16x | xstormy16 | xtensa \
- | z8k | z80)
- basic_machine=$basic_machine-unknown
- ;;
- c54x)
- basic_machine=tic54x-unknown
- ;;
- c55x)
- basic_machine=tic55x-unknown
- ;;
- c6x)
- basic_machine=tic6x-unknown
- ;;
- leon|leon[3-9])
- basic_machine=sparc-$basic_machine
- ;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
- basic_machine=$basic_machine-unknown
- os=-none
+ # Here we handle the default manufacturer of certain CPU types. It is in
+ # some cases the only manufacturer, in others, it is the most popular.
+ w89k)
+ cpu=hppa1.1
+ vendor=winbond
;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+ op50n)
+ cpu=hppa1.1
+ vendor=oki
;;
- ms1)
- basic_machine=mt-unknown
+ op60c)
+ cpu=hppa1.1
+ vendor=oki
;;
-
- strongarm | thumb | xscale)
- basic_machine=arm-unknown
+ ibm*)
+ cpu=i370
+ vendor=ibm
;;
- xgate)
- basic_machine=$basic_machine-unknown
- os=-none
+ orion105)
+ cpu=clipper
+ vendor=highlevel
;;
- xscaleeb)
- basic_machine=armeb-unknown
+ mac | mpw | mac-mpw)
+ cpu=m68k
+ vendor=apple
;;
-
- xscaleel)
- basic_machine=armel-unknown
+ pmac | pmac-mpw)
+ cpu=powerpc
+ vendor=apple
;;
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | aarch64-* | aarch64_be-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
- | be32-* | be64-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* \
- | c8051-* | clipper-* | craynv-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | hexagon-* \
- | i*86-* | i860-* | i960-* | ia64-* \
- | ip2k-* | iq2000-* \
- | k1om-* \
- | le32-* | le64-* \
- | lm32-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
- | microblaze-* | microblazeel-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64octeon-* | mips64octeonel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64r5900-* | mips64r5900el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa32r6-* | mipsisa32r6el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
- | mipsisa64r6-* | mipsisa64r6el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipsr5900-* | mipsr5900el-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nds32-* | nds32le-* | nds32be-* \
- | nios-* | nios2-* | nios2eb-* | nios2el-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
- | open8-* \
- | or1k*-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
- | pyramid-* \
- | rl78-* | romp-* | rs6000-* | rx-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
- | tahoe-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
- | tile*-* \
- | tron-* \
- | ubicom32-* \
- | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
- | vax-* \
- | visium-* \
- | we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-* | z80-*)
- ;;
- # Recognize the basic CPU types without company name, with glob match.
- xtensa*)
- basic_machine=$basic_machine-unknown
- ;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
- 386bsd)
- basic_machine=i386-unknown
- os=-bsd
- ;;
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
+ cpu=m68000
+ vendor=att
;;
3b*)
- basic_machine=we32k-att
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=-udi
- ;;
- abacus)
- basic_machine=abacus-unknown
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- am29k)
- basic_machine=a29k-none
- os=-bsd
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amd64-*)
- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=-sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=-bsd
- ;;
- aros)
- basic_machine=i386-pc
- os=-aros
- ;;
- aux)
- basic_machine=m68k-apple
- os=-aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
- os=-linux
- ;;
- blackfin-*)
- basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
+ cpu=we32k
+ vendor=att
;;
bluegene*)
- basic_machine=powerpc-ibm
- os=-cnk
- ;;
- c54x-*)
- basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c55x-*)
- basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c6x-*)
- basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c90)
- basic_machine=c90-cray
- os=-unicos
- ;;
- cegcc)
- basic_machine=arm-unknown
- os=-cegcc
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=-bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=-bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=-bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=-bsd
- ;;
- cray | j90)
- basic_machine=j90-cray
- os=-unicos
- ;;
- craynv)
- basic_machine=craynv-cray
- os=-unicosmp
- ;;
- cr16 | cr16-*)
- basic_machine=cr16-unknown
- os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- crisv32 | crisv32-* | etraxfs*)
- basic_machine=crisv32-axis
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- crx)
- basic_machine=crx-unknown
- os=-elf
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
+ cpu=powerpc
+ vendor=ibm
+ basic_os=cnk
;;
decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=-tops10
+ cpu=pdp10
+ vendor=dec
+ basic_os=tops10
;;
decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=-tops20
+ cpu=pdp10
+ vendor=dec
+ basic_os=tops20
;;
delta | 3300 | motorola-3300 | motorola-delta \
| 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
- ;;
- delta88)
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
- dicos)
- basic_machine=i686-pc
- os=-dicos
- ;;
- djgpp)
- basic_machine=i586-pc
- os=-msdosdjgpp
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
- ;;
- dpx2* | dpx2*-bull)
- basic_machine=m68k-bull
- os=-sysv3
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=-ebmon
+ cpu=m68k
+ vendor=motorola
;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=-bsd
+ dpx2*)
+ cpu=m68k
+ vendor=bull
+ basic_os=sysv3
;;
encore | umax | mmax)
- basic_machine=ns32k-encore
+ cpu=ns32k
+ vendor=encore
;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=-ose
+ elxsi)
+ cpu=elxsi
+ vendor=elxsi
+ basic_os=${basic_os:-bsd}
;;
fx2800)
- basic_machine=i860-alliant
+ cpu=i860
+ vendor=alliant
;;
genix)
- basic_machine=ns32k-ns
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=-sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=-go32
+ cpu=ns32k
+ vendor=ns
;;
h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=-hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=-xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=-hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=-sysv3
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=-bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=-hpux
+ cpu=hppa1.1
+ vendor=hitachi
+ basic_os=hiuxwe2
;;
hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
+ cpu=hppa1.0
+ vendor=hp
;;
hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
+ cpu=m68000
+ vendor=hp
;;
hp9k3[2-9][0-9])
- basic_machine=m68k-hp
+ cpu=m68k
+ vendor=hp
;;
hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
+ cpu=hppa1.0
+ vendor=hp
;;
hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
+ cpu=hppa1.1
+ vendor=hp
;;
hp9k78[0-9] | hp78[0-9])
# FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
+ cpu=hppa1.1
+ vendor=hp
;;
hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
# FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
+ cpu=hppa1.1
+ vendor=hp
;;
hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
+ cpu=hppa1.1
+ vendor=hp
;;
hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hppa-next)
- os=-nextstep3
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=-osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=-proelf
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
+ cpu=hppa1.0
+ vendor=hp
;;
i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
+ cpu=$(echo "$1" | sed -e 's/86.*/86/')
+ vendor=pc
+ basic_os=sysv32
;;
i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
+ cpu=$(echo "$1" | sed -e 's/86.*/86/')
+ vendor=pc
+ basic_os=sysv4
;;
i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
+ cpu=$(echo "$1" | sed -e 's/86.*/86/')
+ vendor=pc
+ basic_os=sysv
;;
i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- i386mach)
- basic_machine=i386-mach
- os=-mach
- ;;
- i386-vsta | vsta)
- basic_machine=i386-unknown
- os=-vsta
+ cpu=$(echo "$1" | sed -e 's/86.*/86/')
+ vendor=pc
+ basic_os=solaris2
+ ;;
+ j90 | j90-cray)
+ cpu=j90
+ vendor=cray
+ basic_os=${basic_os:-unicos}
;;
iris | iris4d)
- basic_machine=mips-sgi
- case $os in
- -irix*)
+ cpu=mips
+ vendor=sgi
+ case $basic_os in
+ irix*)
;;
*)
- os=-irix4
+ basic_os=irix4
;;
esac
;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=-sysv
- ;;
- leon-*|leon[3-9]-*)
- basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
- ;;
- m68knommu)
- basic_machine=m68k-unknown
- os=-linux
- ;;
- m68knommu-*)
- basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- m88k-omron*)
- basic_machine=m88k-omron
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=-sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=-sysv
- ;;
- microblaze*)
- basic_machine=microblaze-xilinx
- ;;
- mingw64)
- basic_machine=x86_64-pc
- os=-mingw64
- ;;
- mingw32)
- basic_machine=i686-pc
- os=-mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
- os=-mingw32ce
- ;;
miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
+ cpu=m68000
+ vendor=convergent
;;
- monitor)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
- moxiebox)
- basic_machine=moxie-unknown
- os=-moxiebox
- ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
- ;;
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
- msys)
- basic_machine=i686-pc
- os=-msys
- ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- nacl)
- basic_machine=le32-unknown
- os=-nacl
- ;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=-netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=-linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=-newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=-newsos
+ *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
+ cpu=m68k
+ vendor=atari
+ basic_os=mint
;;
news-3600 | risc-news)
- basic_machine=mips-sony
- os=-newsos
- ;;
- necv70)
- basic_machine=v70-nec
- os=-sysv
- ;;
- next | m*-next )
- basic_machine=m68k-next
- case $os in
- -nextstep* )
+ cpu=mips
+ vendor=sony
+ basic_os=newsos
+ ;;
+ next | m*-next)
+ cpu=m68k
+ vendor=next
+ case $basic_os in
+ openstep*)
+ ;;
+ nextstep*)
;;
- -ns2*)
- os=-nextstep2
+ ns2*)
+ basic_os=nextstep2
;;
*)
- os=-nextstep3
+ basic_os=nextstep3
;;
esac
;;
- nh3000)
- basic_machine=m68k-harris
- os=-cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=-cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=-nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=-mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=-nonstopux
- ;;
np1)
- basic_machine=np1-gould
- ;;
- neo-tandem)
- basic_machine=neo-tandem
- ;;
- nse-tandem)
- basic_machine=nse-tandem
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
+ cpu=np1
+ vendor=gould
;;
op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
- openrisc | openrisc-*)
- basic_machine=or32-unknown
- ;;
- os400)
- basic_machine=powerpc-ibm
- os=-os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=-os68k
+ cpu=hppa1.1
+ vendor=oki
+ basic_os=proelf
;;
pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- paragon)
- basic_machine=i860-intel
- os=-osf
- ;;
- parisc)
- basic_machine=hppa-unknown
- os=-linux
- ;;
- parisc-*)
- basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
+ cpu=hppa1.1
+ vendor=hitachi
+ basic_os=hiuxwe2
;;
pbd)
- basic_machine=sparc-tti
+ cpu=sparc
+ vendor=tti
;;
pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+ cpu=m68k
+ vendor=tti
;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
+ pc532)
+ cpu=ns32k
+ vendor=pc532
;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
+ pn)
+ cpu=pn
+ vendor=gould
;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+ power)
+ cpu=power
+ vendor=ibm
;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ps2)
+ cpu=i386
+ vendor=ibm
;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+ rm[46]00)
+ cpu=mips
+ vendor=siemens
;;
- pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+ rtpc | rtpc-*)
+ cpu=romp
+ vendor=ibm
;;
- pn)
- basic_machine=pn-gould
+ sde)
+ cpu=mipsisa32
+ vendor=sde
+ basic_os=${basic_os:-elf}
+ ;;
+ simso-wrs)
+ cpu=sparclite
+ vendor=wrs
+ basic_os=vxworks
;;
- power) basic_machine=power-ibm
+ tower | tower-32)
+ cpu=m68k
+ vendor=ncr
;;
- ppc | ppcbe) basic_machine=powerpc-unknown
+ vpp*|vx|vx-*)
+ cpu=f301
+ vendor=fujitsu
;;
- ppc-* | ppcbe-*)
- basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+ w65)
+ cpu=w65
+ vendor=wdc
;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
+ w89k-*)
+ cpu=hppa1.1
+ vendor=winbond
+ basic_os=proelf
;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
+ none)
+ cpu=none
+ vendor=none
;;
- ppc64) basic_machine=powerpc64-unknown
+ leon|leon[3-9])
+ cpu=sparc
+ vendor=$basic_machine
;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ leon-*|leon[3-9]-*)
+ cpu=sparc
+ vendor=$(echo "$basic_machine" | sed 's/-.*//')
;;
- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
- basic_machine=powerpc64le-unknown
+
+ *-*)
+ # shellcheck disable=SC2162
+ IFS="-" read cpu vendor <&2
- exit 1
+ # Recognize the canonical CPU types that are allowed with any
+ # company name.
+ case $cpu in
+ 1750a | 580 \
+ | a29k \
+ | aarch64 | aarch64_be \
+ | abacus \
+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
+ | alphapca5[67] | alpha64pca5[67] \
+ | am33_2.0 \
+ | amdgcn \
+ | arc | arceb \
+ | arm | arm[lb]e | arme[lb] | armv* \
+ | avr | avr32 \
+ | asmjs \
+ | ba \
+ | be32 | be64 \
+ | bfin | bpf | bs2000 \
+ | c[123]* | c30 | [cjt]90 | c4x \
+ | c8051 | clipper | craynv | csky | cydra \
+ | d10v | d30v | dlx | dsp16xx \
+ | e2k | elxsi | epiphany \
+ | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
+ | h8300 | h8500 \
+ | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+ | hexagon \
+ | i370 | i*86 | i860 | i960 | ia16 | ia64 \
+ | ip2k | iq2000 \
+ | k1om \
+ | le32 | le64 \
+ | lm32 \
+ | loongarch32 | loongarch64 | loongarchx32 \
+ | m32c | m32r | m32rle \
+ | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
+ | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
+ | m88110 | m88k | maxq | mb | mcore | mep | metag \
+ | microblaze | microblazeel \
+ | mips | mipsbe | mipseb | mipsel | mipsle \
+ | mips16 \
+ | mips64 | mips64eb | mips64el \
+ | mips64octeon | mips64octeonel \
+ | mips64orion | mips64orionel \
+ | mips64r5900 | mips64r5900el \
+ | mips64vr | mips64vrel \
+ | mips64vr4100 | mips64vr4100el \
+ | mips64vr4300 | mips64vr4300el \
+ | mips64vr5000 | mips64vr5000el \
+ | mips64vr5900 | mips64vr5900el \
+ | mipsisa32 | mipsisa32el \
+ | mipsisa32r2 | mipsisa32r2el \
+ | mipsisa32r6 | mipsisa32r6el \
+ | mipsisa64 | mipsisa64el \
+ | mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64r6 | mipsisa64r6el \
+ | mipsisa64sb1 | mipsisa64sb1el \
+ | mipsisa64sr71k | mipsisa64sr71kel \
+ | mipsr5900 | mipsr5900el \
+ | mipstx39 | mipstx39el \
+ | mmix \
+ | mn10200 | mn10300 \
+ | moxie \
+ | mt \
+ | msp430 \
+ | nds32 | nds32le | nds32be \
+ | nfp \
+ | nios | nios2 | nios2eb | nios2el \
+ | none | np1 | ns16k | ns32k | nvptx \
+ | open8 \
+ | or1k* \
+ | or32 \
+ | orion \
+ | picochip \
+ | pdp10 | pdp11 | pj | pjl | pn | power \
+ | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
+ | pru \
+ | pyramid \
+ | riscv | riscv32 | riscv32be | riscv64 | riscv64be \
+ | rl78 | romp | rs6000 | rx \
+ | s390 | s390x \
+ | score \
+ | sh | shl \
+ | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
+ | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
+ | sparclite \
+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
+ | spu \
+ | tahoe \
+ | thumbv7* \
+ | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
+ | tron \
+ | ubicom32 \
+ | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
+ | vax \
+ | visium \
+ | w65 \
+ | wasm32 | wasm64 \
+ | we32k \
+ | x86 | x86_64 | xc16x | xgate | xps100 \
+ | xstormy16 | xtensa* \
+ | ymp \
+ | z8k | z80)
+ ;;
+
+ *)
+ echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
+ exit 1
+ ;;
+ esac
;;
esac
# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+case $vendor in
+ digital*)
+ vendor=dec
;;
- *-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+ commodore*)
+ vendor=cbm
;;
*)
;;
@@ -1340,200 +1280,213 @@
# Decode manufacturer-specific aliases for certain operating systems.
-if [ x"$os" != x"" ]
+if test x$basic_os != x
then
+
+# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
+# set os.
+case $basic_os in
+ gnu/linux*)
+ kernel=linux
+ os=$(echo $basic_os | sed -e 's|gnu/linux|gnu|')
+ ;;
+ os2-emx)
+ kernel=os2
+ os=$(echo $basic_os | sed -e 's|os2-emx|emx|')
+ ;;
+ nto-qnx*)
+ kernel=nto
+ os=$(echo $basic_os | sed -e 's|nto-qnx|qnx|')
+ ;;
+ *-*)
+ # shellcheck disable=SC2162
+ IFS="-" read kernel os <&2
- exit 1
+ # No normalization, but not necessarily accepted, that comes below.
;;
esac
+
else
# Here we handle the default operating systems that come with various machines.
@@ -1546,261 +1499,361 @@
# will signal an error saying that MANUFACTURER isn't an operating
# system, and we'll never get to this point.
-case $basic_machine in
+kernel=
+case $cpu-$vendor in
score-*)
- os=-elf
+ os=elf
;;
spu-*)
- os=-elf
+ os=elf
;;
*-acorn)
- os=-riscix1.2
+ os=riscix1.2
;;
arm*-rebel)
- os=-linux
+ kernel=linux
+ os=gnu
;;
arm*-semi)
- os=-aout
+ os=aout
;;
c4x-* | tic4x-*)
- os=-coff
+ os=coff
;;
c8051-*)
- os=-elf
+ os=elf
+ ;;
+ clipper-intergraph)
+ os=clix
;;
hexagon-*)
- os=-elf
+ os=elf
;;
tic54x-*)
- os=-coff
+ os=coff
;;
tic55x-*)
- os=-coff
+ os=coff
;;
tic6x-*)
- os=-coff
+ os=coff
;;
# This must come before the *-dec entry.
pdp10-*)
- os=-tops20
+ os=tops20
;;
pdp11-*)
- os=-none
+ os=none
;;
*-dec | vax-*)
- os=-ultrix4.2
+ os=ultrix4.2
;;
m68*-apollo)
- os=-domain
+ os=domain
;;
i386-sun)
- os=-sunos4.0.2
+ os=sunos4.0.2
;;
m68000-sun)
- os=-sunos3
+ os=sunos3
;;
m68*-cisco)
- os=-aout
+ os=aout
;;
mep-*)
- os=-elf
+ os=elf
;;
mips*-cisco)
- os=-elf
+ os=elf
;;
mips*-*)
- os=-elf
+ os=elf
;;
or32-*)
- os=-coff
+ os=coff
;;
*-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
+ os=sysv3
;;
sparc-* | *-sun)
- os=-sunos4.1.1
+ os=sunos4.1.1
;;
- *-be)
- os=-beos
+ pru-*)
+ os=elf
;;
- *-haiku)
- os=-haiku
+ *-be)
+ os=beos
;;
*-ibm)
- os=-aix
+ os=aix
;;
*-knuth)
- os=-mmixware
+ os=mmixware
;;
*-wec)
- os=-proelf
+ os=proelf
;;
*-winbond)
- os=-proelf
+ os=proelf
;;
*-oki)
- os=-proelf
+ os=proelf
;;
*-hp)
- os=-hpux
+ os=hpux
;;
*-hitachi)
- os=-hiux
+ os=hiux
;;
i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=-sysv
+ os=sysv
;;
*-cbm)
- os=-amigaos
+ os=amigaos
;;
*-dg)
- os=-dgux
+ os=dgux
;;
*-dolphin)
- os=-sysv3
+ os=sysv3
;;
m68k-ccur)
- os=-rtu
+ os=rtu
;;
m88k-omron*)
- os=-luna
+ os=luna
;;
- *-next )
- os=-nextstep
+ *-next)
+ os=nextstep
;;
*-sequent)
- os=-ptx
+ os=ptx
;;
*-crds)
- os=-unos
+ os=unos
;;
*-ns)
- os=-genix
+ os=genix
;;
i370-*)
- os=-mvs
- ;;
- *-next)
- os=-nextstep3
+ os=mvs
;;
*-gould)
- os=-sysv
+ os=sysv
;;
*-highlevel)
- os=-bsd
+ os=bsd
;;
*-encore)
- os=-bsd
+ os=bsd
;;
*-sgi)
- os=-irix
+ os=irix
;;
*-siemens)
- os=-sysv4
+ os=sysv4
;;
*-masscomp)
- os=-rtu
+ os=rtu
;;
f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
+ os=uxpv
;;
*-rom68k)
- os=-coff
+ os=coff
;;
*-*bug)
- os=-coff
+ os=coff
;;
*-apple)
- os=-macos
+ os=macos
;;
*-atari*)
- os=-mint
+ os=mint
+ ;;
+ *-wrs)
+ os=vxworks
;;
*)
- os=-none
+ os=none
;;
esac
+
fi
+# Now, validate our (potentially fixed-up) OS.
+case $os in
+ # Sometimes we do "kernel-libc", so those need to count as OSes.
+ musl* | newlib* | uclibc*)
+ ;;
+ # Likewise for "kernel-abi"
+ eabi* | gnueabi*)
+ ;;
+ # VxWorks passes extra cpu info in the 4th filed.
+ simlinux | simwindows | spe)
+ ;;
+ # Now accept the basic system types.
+ # The portable systems comes first.
+ # Each alternative MUST end in a * to match a version number.
+ gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
+ | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
+ | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
+ | sym* | plan9* | psp* | sim* | xray* | os68k* | v88r* \
+ | hiux* | abug | nacl* | netware* | windows* \
+ | os9* | macos* | osx* | ios* \
+ | mpw* | magic* | mmixware* | mon960* | lnews* \
+ | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
+ | aos* | aros* | cloudabi* | sortix* | twizzler* \
+ | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
+ | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
+ | mirbsd* | netbsd* | dicos* | openedition* | ose* \
+ | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \
+ | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
+ | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
+ | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
+ | udi* | lites* | ieee* | go32* | aux* | hcos* \
+ | chorusrdb* | cegcc* | glidix* \
+ | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
+ | midipix* | mingw32* | mingw64* | mint* \
+ | uxpv* | beos* | mpeix* | udk* | moxiebox* \
+ | interix* | uwin* | mks* | rhapsody* | darwin* \
+ | openstep* | oskit* | conix* | pw32* | nonstopux* \
+ | storm-chaos* | tops10* | tenex* | tops20* | its* \
+ | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
+ | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
+ | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
+ | skyos* | haiku* | rdos* | toppers* | drops* | es* \
+ | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
+ | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
+ | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx*)
+ ;;
+ # This one is extra strict with allowed versions
+ sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
+ # Don't forget version if it is 3.2v4 or newer.
+ ;;
+ none)
+ ;;
+ *)
+ echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2
+ exit 1
+ ;;
+esac
+
+# As a final step for OS-related things, validate the OS-kernel combination
+# (given a valid OS), if there is a kernel.
+case $kernel-$os in
+ linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* )
+ ;;
+ uclinux-uclibc* )
+ ;;
+ -dietlibc* | -newlib* | -musl* | -uclibc* )
+ # These are just libc implementations, not actual OSes, and thus
+ # require a kernel.
+ echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
+ exit 1
+ ;;
+ kfreebsd*-gnu* | kopensolaris*-gnu*)
+ ;;
+ vxworks-simlinux | vxworks-simwindows | vxworks-spe)
+ ;;
+ nto-qnx*)
+ ;;
+ os2-emx)
+ ;;
+ *-eabi* | *-gnueabi*)
+ ;;
+ -*)
+ # Blank kernel with real OS is always fine.
+ ;;
+ *-*)
+ echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2
+ exit 1
+ ;;
+esac
+
# Here we handle the case where we know the os, and the CPU type, but not the
# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
- case $os in
- -riscix*)
+case $vendor in
+ unknown)
+ case $cpu-$os in
+ *-riscix*)
vendor=acorn
;;
- -sunos*)
+ *-sunos*)
vendor=sun
;;
- -cnk*|-aix*)
+ *-cnk* | *-aix*)
vendor=ibm
;;
- -beos*)
+ *-beos*)
vendor=be
;;
- -hpux*)
+ *-hpux*)
vendor=hp
;;
- -mpeix*)
+ *-mpeix*)
vendor=hp
;;
- -hiux*)
+ *-hiux*)
vendor=hitachi
;;
- -unos*)
+ *-unos*)
vendor=crds
;;
- -dgux*)
+ *-dgux*)
vendor=dg
;;
- -luna*)
+ *-luna*)
vendor=omron
;;
- -genix*)
+ *-genix*)
vendor=ns
;;
- -mvs* | -opened*)
+ *-clix*)
+ vendor=intergraph
+ ;;
+ *-mvs* | *-opened*)
+ vendor=ibm
+ ;;
+ *-os400*)
vendor=ibm
;;
- -os400*)
+ s390-* | s390x-*)
vendor=ibm
;;
- -ptx*)
+ *-ptx*)
vendor=sequent
;;
- -tpf*)
+ *-tpf*)
vendor=ibm
;;
- -vxsim* | -vxworks* | -windiss*)
+ *-vxsim* | *-vxworks* | *-windiss*)
vendor=wrs
;;
- -aux*)
+ *-aux*)
vendor=apple
;;
- -hms*)
+ *-hms*)
vendor=hitachi
;;
- -mpw* | -macos*)
+ *-mpw* | *-macos*)
vendor=apple
;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+ *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
vendor=atari
;;
- -vos*)
+ *-vos*)
vendor=stratus
;;
esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
;;
esac
-echo $basic_machine$os
+echo "$cpu-$vendor-${kernel:+$kernel-}$os"
exit
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
diff -Nru openmpi-4.0.3/config/from-savannah/upstream-config.guess openmpi-4.1.4/config/from-savannah/upstream-config.guess
--- openmpi-4.0.3/config/from-savannah/upstream-config.guess 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/config/from-savannah/upstream-config.guess 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,1700 @@
+#! /bin/sh
+# Attempt to guess a canonical system name.
+# Copyright 1992-2021 Free Software Foundation, Inc.
+
+timestamp='2021-01-25'
+
+# This file 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 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, see .
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that
+# program. This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
+#
+# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
+#
+# You can get the latest version of this script from:
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess
+#
+# Please send patches to .
+
+
+me=$(echo "$0" | sed -e 's,.*/,,')
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Options:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+
+Report bugs and patches to ."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright 1992-2021 Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+ echo "$timestamp" ; exit ;;
+ --version | -v )
+ echo "$version" ; exit ;;
+ --help | --h* | -h )
+ echo "$usage"; exit ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+ break ;;
+ -* )
+ echo "$me: invalid option $1$help" >&2
+ exit 1 ;;
+ * )
+ break ;;
+ esac
+done
+
+if test $# != 0; then
+ echo "$me: too many arguments$help" >&2
+ exit 1
+fi
+
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+# compiler to aid in system detection is discouraged as it requires
+# temporary files to be created and, as you can see below, it is a
+# headache to deal with in a portable fashion.
+
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+# Portable tmp directory creation inspired by the Autoconf team.
+
+tmp=
+# shellcheck disable=SC2172
+trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15
+
+set_cc_for_build() {
+ # prevent multiple calls if $tmp is already set
+ test "$tmp" && return 0
+ : "${TMPDIR=/tmp}"
+ # shellcheck disable=SC2039
+ { tmp=$( (umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null) && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
+ dummy=$tmp/dummy
+ case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
+ ,,) echo "int x;" > "$dummy.c"
+ for driver in cc gcc c89 c99 ; do
+ if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
+ CC_FOR_BUILD="$driver"
+ break
+ fi
+ done
+ if test x"$CC_FOR_BUILD" = x ; then
+ CC_FOR_BUILD=no_compiler_found
+ fi
+ ;;
+ ,,*) CC_FOR_BUILD=$CC ;;
+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
+ esac
+}
+
+# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+# (ghazi@noc.rutgers.edu 1994-08-24)
+if test -f /.attbin/uname ; then
+ PATH=$PATH:/.attbin ; export PATH
+fi
+
+UNAME_MACHINE=$( (uname -m) 2>/dev/null) || UNAME_MACHINE=unknown
+UNAME_RELEASE=$( (uname -r) 2>/dev/null) || UNAME_RELEASE=unknown
+UNAME_SYSTEM=$( (uname -s) 2>/dev/null) || UNAME_SYSTEM=unknown
+UNAME_VERSION=$( (uname -v) 2>/dev/null) || UNAME_VERSION=unknown
+
+case "$UNAME_SYSTEM" in
+Linux|GNU|GNU/*)
+ LIBC=unknown
+
+ set_cc_for_build
+ cat <<-EOF > "$dummy.c"
+ #include
+ #if defined(__UCLIBC__)
+ LIBC=uclibc
+ #elif defined(__dietlibc__)
+ LIBC=dietlibc
+ #elif defined(__GLIBC__)
+ LIBC=gnu
+ #else
+ #include
+ /* First heuristic to detect musl libc. */
+ #ifdef __DEFINED_va_list
+ LIBC=musl
+ #endif
+ #endif
+ EOF
+ eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g')"
+
+ # Second heuristic to detect musl libc.
+ if [ "$LIBC" = unknown ] &&
+ command -v ldd >/dev/null &&
+ ldd --version 2>&1 | grep -q ^musl; then
+ LIBC=musl
+ fi
+
+ # If the system lacks a compiler, then just pick glibc.
+ # We could probably try harder.
+ if [ "$LIBC" = unknown ]; then
+ LIBC=gnu
+ fi
+ ;;
+esac
+
+# Note: order is significant - the case branches are not exclusive.
+
+case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
+ *:NetBSD:*:*)
+ # NetBSD (nbsd) targets should (where applicable) match one or
+ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
+ # switched to ELF, *-*-netbsd* would select the old
+ # object file format. This provides both forward
+ # compatibility and a consistent mechanism for selecting the
+ # object file format.
+ #
+ # Note: NetBSD doesn't particularly care about the vendor
+ # portion of the name. We always set it to "unknown".
+ UNAME_MACHINE_ARCH=$( (uname -p 2>/dev/null || \
+ /sbin/sysctl -n hw.machine_arch 2>/dev/null || \
+ /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \
+ echo unknown))
+ case "$UNAME_MACHINE_ARCH" in
+ aarch64eb) machine=aarch64_be-unknown ;;
+ armeb) machine=armeb-unknown ;;
+ arm*) machine=arm-unknown ;;
+ sh3el) machine=shl-unknown ;;
+ sh3eb) machine=sh-unknown ;;
+ sh5el) machine=sh5le-unknown ;;
+ earmv*)
+ arch=$(echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,')
+ endian=$(echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p')
+ machine="${arch}${endian}"-unknown
+ ;;
+ *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
+ esac
+ # The Operating System including object format, if it has switched
+ # to ELF recently (or will in the future) and ABI.
+ case "$UNAME_MACHINE_ARCH" in
+ earm*)
+ os=netbsdelf
+ ;;
+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+ set_cc_for_build
+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ELF__
+ then
+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+ # Return netbsd for either. FIX?
+ os=netbsd
+ else
+ os=netbsdelf
+ fi
+ ;;
+ *)
+ os=netbsd
+ ;;
+ esac
+ # Determine ABI tags.
+ case "$UNAME_MACHINE_ARCH" in
+ earm*)
+ expr='s/^earmv[0-9]/-eabi/;s/eb$//'
+ abi=$(echo "$UNAME_MACHINE_ARCH" | sed -e "$expr")
+ ;;
+ esac
+ # The OS release
+ # Debian GNU/NetBSD machines have a different userland, and
+ # thus, need a distinct triplet. However, they do not need
+ # kernel version information, so it can be replaced with a
+ # suitable tag, in the style of linux-gnu.
+ case "$UNAME_VERSION" in
+ Debian*)
+ release='-gnu'
+ ;;
+ *)
+ release=$(echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2)
+ ;;
+ esac
+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+ # contains redundant information, the shorter form:
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+ echo "$machine-${os}${release}${abi-}"
+ exit ;;
+ *:Bitrig:*:*)
+ UNAME_MACHINE_ARCH=$(arch | sed 's/Bitrig.//')
+ echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
+ exit ;;
+ *:OpenBSD:*:*)
+ UNAME_MACHINE_ARCH=$(arch | sed 's/OpenBSD.//')
+ echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
+ exit ;;
+ *:LibertyBSD:*:*)
+ UNAME_MACHINE_ARCH=$(arch | sed 's/^.*BSD\.//')
+ echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
+ exit ;;
+ *:MidnightBSD:*:*)
+ echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
+ exit ;;
+ *:ekkoBSD:*:*)
+ echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
+ exit ;;
+ *:SolidBSD:*:*)
+ echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
+ exit ;;
+ *:OS108:*:*)
+ echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
+ exit ;;
+ macppc:MirBSD:*:*)
+ echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
+ exit ;;
+ *:MirBSD:*:*)
+ echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
+ exit ;;
+ *:Sortix:*:*)
+ echo "$UNAME_MACHINE"-unknown-sortix
+ exit ;;
+ *:Twizzler:*:*)
+ echo "$UNAME_MACHINE"-unknown-twizzler
+ exit ;;
+ *:Redox:*:*)
+ echo "$UNAME_MACHINE"-unknown-redox
+ exit ;;
+ mips:OSF1:*.*)
+ echo mips-dec-osf1
+ exit ;;
+ alpha:OSF1:*:*)
+ case $UNAME_RELEASE in
+ *4.0)
+ UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $3}')
+ ;;
+ *5.*)
+ UNAME_RELEASE=$(/usr/sbin/sizer -v | awk '{print $4}')
+ ;;
+ esac
+ # According to Compaq, /usr/sbin/psrinfo has been available on
+ # OSF/1 and Tru64 systems produced since 1995. I hope that
+ # covers most systems running today. This code pipes the CPU
+ # types through head -n 1, so we only detect the type of CPU 0.
+ ALPHA_CPU_TYPE=$(/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1)
+ case "$ALPHA_CPU_TYPE" in
+ "EV4 (21064)")
+ UNAME_MACHINE=alpha ;;
+ "EV4.5 (21064)")
+ UNAME_MACHINE=alpha ;;
+ "LCA4 (21066/21068)")
+ UNAME_MACHINE=alpha ;;
+ "EV5 (21164)")
+ UNAME_MACHINE=alphaev5 ;;
+ "EV5.6 (21164A)")
+ UNAME_MACHINE=alphaev56 ;;
+ "EV5.6 (21164PC)")
+ UNAME_MACHINE=alphapca56 ;;
+ "EV5.7 (21164PC)")
+ UNAME_MACHINE=alphapca57 ;;
+ "EV6 (21264)")
+ UNAME_MACHINE=alphaev6 ;;
+ "EV6.7 (21264A)")
+ UNAME_MACHINE=alphaev67 ;;
+ "EV6.8CB (21264C)")
+ UNAME_MACHINE=alphaev68 ;;
+ "EV6.8AL (21264B)")
+ UNAME_MACHINE=alphaev68 ;;
+ "EV6.8CX (21264D)")
+ UNAME_MACHINE=alphaev68 ;;
+ "EV6.9A (21264/EV69A)")
+ UNAME_MACHINE=alphaev69 ;;
+ "EV7 (21364)")
+ UNAME_MACHINE=alphaev7 ;;
+ "EV7.9 (21364A)")
+ UNAME_MACHINE=alphaev79 ;;
+ esac
+ # A Pn.n version is a patched version.
+ # A Vn.n version is a released version.
+ # A Tn.n version is a released field test version.
+ # A Xn.n version is an unreleased experimental baselevel.
+ # 1.2 uses "1.2" for uname -r.
+ echo "$UNAME_MACHINE"-dec-osf"$(echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz)"
+ # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
+ exitcode=$?
+ trap '' 0
+ exit $exitcode ;;
+ Amiga*:UNIX_System_V:4.0:*)
+ echo m68k-unknown-sysv4
+ exit ;;
+ *:[Aa]miga[Oo][Ss]:*:*)
+ echo "$UNAME_MACHINE"-unknown-amigaos
+ exit ;;
+ *:[Mm]orph[Oo][Ss]:*:*)
+ echo "$UNAME_MACHINE"-unknown-morphos
+ exit ;;
+ *:OS/390:*:*)
+ echo i370-ibm-openedition
+ exit ;;
+ *:z/VM:*:*)
+ echo s390-ibm-zvmoe
+ exit ;;
+ *:OS400:*:*)
+ echo powerpc-ibm-os400
+ exit ;;
+ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+ echo arm-acorn-riscix"$UNAME_RELEASE"
+ exit ;;
+ arm*:riscos:*:*|arm*:RISCOS:*:*)
+ echo arm-unknown-riscos
+ exit ;;
+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+ echo hppa1.1-hitachi-hiuxmpp
+ exit ;;
+ Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+ # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+ if test "$( (/bin/universe) 2>/dev/null)" = att ; then
+ echo pyramid-pyramid-sysv3
+ else
+ echo pyramid-pyramid-bsd
+ fi
+ exit ;;
+ NILE*:*:*:dcosx)
+ echo pyramid-pyramid-svr4
+ exit ;;
+ DRS?6000:unix:4.0:6*)
+ echo sparc-icl-nx6
+ exit ;;
+ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+ case $(/usr/bin/uname -p) in
+ sparc) echo sparc-icl-nx7; exit ;;
+ esac ;;
+ s390x:SunOS:*:*)
+ echo "$UNAME_MACHINE"-ibm-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')"
+ exit ;;
+ sun4H:SunOS:5.*:*)
+ echo sparc-hal-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
+ exit ;;
+ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+ echo sparc-sun-solaris2"$(echo "$UNAME_RELEASE" | sed -e 's/[^.]*//')"
+ exit ;;
+ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
+ echo i386-pc-auroraux"$UNAME_RELEASE"
+ exit ;;
+ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
+ set_cc_for_build
+ SUN_ARCH=i386
+ # If there is a compiler, see if it is configured for 64-bit objects.
+ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
+ # This test works for both compilers.
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
+ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ SUN_ARCH=x86_64
+ fi
+ fi
+ echo "$SUN_ARCH"-pc-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
+ exit ;;
+ sun4*:SunOS:6*:*)
+ # According to config.sub, this is the proper way to canonicalize
+ # SunOS6. Hard to guess exactly what SunOS6 will be like, but
+ # it's likely to be more like Solaris than SunOS4.
+ echo sparc-sun-solaris3"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
+ exit ;;
+ sun4*:SunOS:*:*)
+ case "$(/usr/bin/arch -k)" in
+ Series*|S4*)
+ UNAME_RELEASE=$(uname -v)
+ ;;
+ esac
+ # Japanese Language versions have a version number like `4.1.3-JL'.
+ echo sparc-sun-sunos"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/')"
+ exit ;;
+ sun3*:SunOS:*:*)
+ echo m68k-sun-sunos"$UNAME_RELEASE"
+ exit ;;
+ sun*:*:4.2BSD:*)
+ UNAME_RELEASE=$( (sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null)
+ test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
+ case "$(/bin/arch)" in
+ sun3)
+ echo m68k-sun-sunos"$UNAME_RELEASE"
+ ;;
+ sun4)
+ echo sparc-sun-sunos"$UNAME_RELEASE"
+ ;;
+ esac
+ exit ;;
+ aushp:SunOS:*:*)
+ echo sparc-auspex-sunos"$UNAME_RELEASE"
+ exit ;;
+ # The situation for MiNT is a little confusing. The machine name
+ # can be virtually everything (everything which is not
+ # "atarist" or "atariste" at least should have a processor
+ # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
+ # to the lowercase version "mint" (or "freemint"). Finally
+ # the system name "TOS" denotes a system which is actually not
+ # MiNT. But MiNT is downward compatible to TOS, so this should
+ # be no problem.
+ atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+ echo m68k-atari-mint"$UNAME_RELEASE"
+ exit ;;
+ atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+ echo m68k-atari-mint"$UNAME_RELEASE"
+ exit ;;
+ *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+ echo m68k-atari-mint"$UNAME_RELEASE"
+ exit ;;
+ milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+ echo m68k-milan-mint"$UNAME_RELEASE"
+ exit ;;
+ hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+ echo m68k-hades-mint"$UNAME_RELEASE"
+ exit ;;
+ *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+ echo m68k-unknown-mint"$UNAME_RELEASE"
+ exit ;;
+ m68k:machten:*:*)
+ echo m68k-apple-machten"$UNAME_RELEASE"
+ exit ;;
+ powerpc:machten:*:*)
+ echo powerpc-apple-machten"$UNAME_RELEASE"
+ exit ;;
+ RISC*:Mach:*:*)
+ echo mips-dec-mach_bsd4.3
+ exit ;;
+ RISC*:ULTRIX:*:*)
+ echo mips-dec-ultrix"$UNAME_RELEASE"
+ exit ;;
+ VAX*:ULTRIX*:*:*)
+ echo vax-dec-ultrix"$UNAME_RELEASE"
+ exit ;;
+ 2020:CLIX:*:* | 2430:CLIX:*:*)
+ echo clipper-intergraph-clix"$UNAME_RELEASE"
+ exit ;;
+ mips:*:*:UMIPS | mips:*:*:RISCos)
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
+#ifdef __cplusplus
+#include /* for printf() prototype */
+ int main (int argc, char *argv[]) {
+#else
+ int main (argc, argv) int argc; char *argv[]; {
+#endif
+ #if defined (host_mips) && defined (MIPSEB)
+ #if defined (SYSTYPE_SYSV)
+ printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_SVR4)
+ printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+ printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
+ #endif
+ #endif
+ exit (-1);
+ }
+EOF
+ $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
+ dummyarg=$(echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p') &&
+ SYSTEM_NAME=$("$dummy" "$dummyarg") &&
+ { echo "$SYSTEM_NAME"; exit; }
+ echo mips-mips-riscos"$UNAME_RELEASE"
+ exit ;;
+ Motorola:PowerMAX_OS:*:*)
+ echo powerpc-motorola-powermax
+ exit ;;
+ Motorola:*:4.3:PL8-*)
+ echo powerpc-harris-powermax
+ exit ;;
+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+ echo powerpc-harris-powermax
+ exit ;;
+ Night_Hawk:Power_UNIX:*:*)
+ echo powerpc-harris-powerunix
+ exit ;;
+ m88k:CX/UX:7*:*)
+ echo m88k-harris-cxux7
+ exit ;;
+ m88k:*:4*:R4*)
+ echo m88k-motorola-sysv4
+ exit ;;
+ m88k:*:3*:R3*)
+ echo m88k-motorola-sysv3
+ exit ;;
+ AViiON:dgux:*:*)
+ # DG/UX returns AViiON for all architectures
+ UNAME_PROCESSOR=$(/usr/bin/uname -p)
+ if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110
+ then
+ if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \
+ test "$TARGET_BINARY_INTERFACE"x = x
+ then
+ echo m88k-dg-dgux"$UNAME_RELEASE"
+ else
+ echo m88k-dg-dguxbcs"$UNAME_RELEASE"
+ fi
+ else
+ echo i586-dg-dgux"$UNAME_RELEASE"
+ fi
+ exit ;;
+ M88*:DolphinOS:*:*) # DolphinOS (SVR3)
+ echo m88k-dolphin-sysv3
+ exit ;;
+ M88*:*:R3*:*)
+ # Delta 88k system running SVR3
+ echo m88k-motorola-sysv3
+ exit ;;
+ XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+ echo m88k-tektronix-sysv3
+ exit ;;
+ Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+ echo m68k-tektronix-bsd
+ exit ;;
+ *:IRIX*:*:*)
+ echo mips-sgi-irix"$(echo "$UNAME_RELEASE"|sed -e 's/-/_/g')"
+ exit ;;
+ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+ exit ;; # Note that: echo "'$(uname -s)'" gives 'AIX '
+ i*86:AIX:*:*)
+ echo i386-ibm-aix
+ exit ;;
+ ia64:AIX:*:*)
+ if test -x /usr/bin/oslevel ; then
+ IBM_REV=$(/usr/bin/oslevel)
+ else
+ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
+ fi
+ echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
+ exit ;;
+ *:AIX:2:3)
+ if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
+ #include
+
+ main()
+ {
+ if (!__power_pc())
+ exit(1);
+ puts("powerpc-ibm-aix3.2.5");
+ exit(0);
+ }
+EOF
+ if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy")
+ then
+ echo "$SYSTEM_NAME"
+ else
+ echo rs6000-ibm-aix3.2.5
+ fi
+ elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+ echo rs6000-ibm-aix3.2.4
+ else
+ echo rs6000-ibm-aix3.2
+ fi
+ exit ;;
+ *:AIX:*:[4567])
+ IBM_CPU_ID=$(/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }')
+ if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
+ IBM_ARCH=rs6000
+ else
+ IBM_ARCH=powerpc
+ fi
+ if test -x /usr/bin/lslpp ; then
+ IBM_REV=$(/usr/bin/lslpp -Lqc bos.rte.libc |
+ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/)
+ else
+ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
+ fi
+ echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
+ exit ;;
+ *:AIX:*:*)
+ echo rs6000-ibm-aix
+ exit ;;
+ ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
+ echo romp-ibm-bsd4.4
+ exit ;;
+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
+ echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
+ exit ;; # report: romp-ibm BSD 4.3
+ *:BOSX:*:*)
+ echo rs6000-bull-bosx
+ exit ;;
+ DPX/2?00:B.O.S.:*:*)
+ echo m68k-bull-sysv3
+ exit ;;
+ 9000/[34]??:4.3bsd:1.*:*)
+ echo m68k-hp-bsd
+ exit ;;
+ hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+ echo m68k-hp-bsd4.4
+ exit ;;
+ 9000/[34678]??:HP-UX:*:*)
+ HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//')
+ case "$UNAME_MACHINE" in
+ 9000/31?) HP_ARCH=m68000 ;;
+ 9000/[34]??) HP_ARCH=m68k ;;
+ 9000/[678][0-9][0-9])
+ if test -x /usr/bin/getconf; then
+ sc_cpu_version=$(/usr/bin/getconf SC_CPU_VERSION 2>/dev/null)
+ sc_kernel_bits=$(/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null)
+ case "$sc_cpu_version" in
+ 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
+ 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
+ 532) # CPU_PA_RISC2_0
+ case "$sc_kernel_bits" in
+ 32) HP_ARCH=hppa2.0n ;;
+ 64) HP_ARCH=hppa2.0w ;;
+ '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
+ esac ;;
+ esac
+ fi
+ if test "$HP_ARCH" = ""; then
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
+
+ #define _HPUX_SOURCE
+ #include
+ #include
+
+ int main ()
+ {
+ #if defined(_SC_KERNEL_BITS)
+ long bits = sysconf(_SC_KERNEL_BITS);
+ #endif
+ long cpu = sysconf (_SC_CPU_VERSION);
+
+ switch (cpu)
+ {
+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+ case CPU_PA_RISC2_0:
+ #if defined(_SC_KERNEL_BITS)
+ switch (bits)
+ {
+ case 64: puts ("hppa2.0w"); break;
+ case 32: puts ("hppa2.0n"); break;
+ default: puts ("hppa2.0"); break;
+ } break;
+ #else /* !defined(_SC_KERNEL_BITS) */
+ puts ("hppa2.0"); break;
+ #endif
+ default: puts ("hppa1.0"); break;
+ }
+ exit (0);
+ }
+EOF
+ (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=$("$dummy")
+ test -z "$HP_ARCH" && HP_ARCH=hppa
+ fi ;;
+ esac
+ if test "$HP_ARCH" = hppa2.0w
+ then
+ set_cc_for_build
+
+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
+ # generating 64-bit code. GNU and HP use different nomenclature:
+ #
+ # $ CC_FOR_BUILD=cc ./config.guess
+ # => hppa2.0w-hp-hpux11.23
+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+ # => hppa64-hp-hpux11.23
+
+ if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
+ grep -q __LP64__
+ then
+ HP_ARCH=hppa2.0w
+ else
+ HP_ARCH=hppa64
+ fi
+ fi
+ echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
+ exit ;;
+ ia64:HP-UX:*:*)
+ HPUX_REV=$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//')
+ echo ia64-hp-hpux"$HPUX_REV"
+ exit ;;
+ 3050*:HI-UX:*:*)
+ set_cc_for_build
+ sed 's/^ //' << EOF > "$dummy.c"
+ #include
+ int
+ main ()
+ {
+ long cpu = sysconf (_SC_CPU_VERSION);
+ /* The order matters, because CPU_IS_HP_MC68K erroneously returns
+ true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
+ results, however. */
+ if (CPU_IS_PA_RISC (cpu))
+ {
+ switch (cpu)
+ {
+ case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
+ case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
+ case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
+ default: puts ("hppa-hitachi-hiuxwe2"); break;
+ }
+ }
+ else if (CPU_IS_HP_MC68K (cpu))
+ puts ("m68k-hitachi-hiuxwe2");
+ else puts ("unknown-hitachi-hiuxwe2");
+ exit (0);
+ }
+EOF
+ $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=$("$dummy") &&
+ { echo "$SYSTEM_NAME"; exit; }
+ echo unknown-hitachi-hiuxwe2
+ exit ;;
+ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
+ echo hppa1.1-hp-bsd
+ exit ;;
+ 9000/8??:4.3bsd:*:*)
+ echo hppa1.0-hp-bsd
+ exit ;;
+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+ echo hppa1.0-hp-mpeix
+ exit ;;
+ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
+ echo hppa1.1-hp-osf
+ exit ;;
+ hp8??:OSF1:*:*)
+ echo hppa1.0-hp-osf
+ exit ;;
+ i*86:OSF1:*:*)
+ if test -x /usr/sbin/sysversion ; then
+ echo "$UNAME_MACHINE"-unknown-osf1mk
+ else
+ echo "$UNAME_MACHINE"-unknown-osf1
+ fi
+ exit ;;
+ parisc*:Lites*:*:*)
+ echo hppa1.1-hp-lites
+ exit ;;
+ C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+ echo c1-convex-bsd
+ exit ;;
+ C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+ if getsysinfo -f scalar_acc
+ then echo c32-convex-bsd
+ else echo c2-convex-bsd
+ fi
+ exit ;;
+ C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+ echo c34-convex-bsd
+ exit ;;
+ C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+ echo c38-convex-bsd
+ exit ;;
+ C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+ echo c4-convex-bsd
+ exit ;;
+ CRAY*Y-MP:*:*:*)
+ echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*[A-Z]90:*:*:*)
+ echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
+ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+ -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*TS:*:*:*)
+ echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*T3E:*:*:*)
+ echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*SV1:*:*:*)
+ echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ *:UNICOS/mp:*:*)
+ echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+ FUJITSU_PROC=$(uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz)
+ FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///')
+ FUJITSU_REL=$(echo "$UNAME_RELEASE" | sed -e 's/ /_/')
+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
+ 5000:UNIX_System_V:4.*:*)
+ FUJITSU_SYS=$(uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///')
+ FUJITSU_REL=$(echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/')
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+ echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
+ exit ;;
+ sparc*:BSD/OS:*:*)
+ echo sparc-unknown-bsdi"$UNAME_RELEASE"
+ exit ;;
+ *:BSD/OS:*:*)
+ echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
+ exit ;;
+ arm:FreeBSD:*:*)
+ UNAME_PROCESSOR=$(uname -p)
+ set_cc_for_build
+ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_PCS_VFP
+ then
+ echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabi
+ else
+ echo "${UNAME_PROCESSOR}"-unknown-freebsd"$(echo ${UNAME_RELEASE}|sed -e 's/[-(].*//')"-gnueabihf
+ fi
+ exit ;;
+ *:FreeBSD:*:*)
+ UNAME_PROCESSOR=$(/usr/bin/uname -p)
+ case "$UNAME_PROCESSOR" in
+ amd64)
+ UNAME_PROCESSOR=x86_64 ;;
+ i386)
+ UNAME_PROCESSOR=i586 ;;
+ esac
+ echo "$UNAME_PROCESSOR"-unknown-freebsd"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')"
+ exit ;;
+ i*:CYGWIN*:*)
+ echo "$UNAME_MACHINE"-pc-cygwin
+ exit ;;
+ *:MINGW64*:*)
+ echo "$UNAME_MACHINE"-pc-mingw64
+ exit ;;
+ *:MINGW*:*)
+ echo "$UNAME_MACHINE"-pc-mingw32
+ exit ;;
+ *:MSYS*:*)
+ echo "$UNAME_MACHINE"-pc-msys
+ exit ;;
+ i*:PW*:*)
+ echo "$UNAME_MACHINE"-pc-pw32
+ exit ;;
+ *:Interix*:*)
+ case "$UNAME_MACHINE" in
+ x86)
+ echo i586-pc-interix"$UNAME_RELEASE"
+ exit ;;
+ authenticamd | genuineintel | EM64T)
+ echo x86_64-unknown-interix"$UNAME_RELEASE"
+ exit ;;
+ IA64)
+ echo ia64-unknown-interix"$UNAME_RELEASE"
+ exit ;;
+ esac ;;
+ i*:UWIN*:*)
+ echo "$UNAME_MACHINE"-pc-uwin
+ exit ;;
+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
+ echo x86_64-pc-cygwin
+ exit ;;
+ prep*:SunOS:5.*:*)
+ echo powerpcle-unknown-solaris2"$(echo "$UNAME_RELEASE"|sed -e 's/[^.]*//')"
+ exit ;;
+ *:GNU:*:*)
+ # the GNU system
+ echo "$(echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,')-unknown-$LIBC$(echo "$UNAME_RELEASE"|sed -e 's,/.*$,,')"
+ exit ;;
+ *:GNU/*:*:*)
+ # other systems with GNU libc and userland
+ echo "$UNAME_MACHINE-unknown-$(echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]")$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')-$LIBC"
+ exit ;;
+ *:Minix:*:*)
+ echo "$UNAME_MACHINE"-unknown-minix
+ exit ;;
+ aarch64:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ aarch64_be:Linux:*:*)
+ UNAME_MACHINE=aarch64_be
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ alpha:Linux:*:*)
+ case $(sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null) in
+ EV5) UNAME_MACHINE=alphaev5 ;;
+ EV56) UNAME_MACHINE=alphaev56 ;;
+ PCA56) UNAME_MACHINE=alphapca56 ;;
+ PCA57) UNAME_MACHINE=alphapca56 ;;
+ EV6) UNAME_MACHINE=alphaev6 ;;
+ EV67) UNAME_MACHINE=alphaev67 ;;
+ EV68*) UNAME_MACHINE=alphaev68 ;;
+ esac
+ objdump --private-headers /bin/sh | grep -q ld.so.1
+ if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ arc:Linux:*:* | arceb:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ arm*:Linux:*:*)
+ set_cc_for_build
+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_EABI__
+ then
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ else
+ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_PCS_VFP
+ then
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
+ else
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
+ fi
+ fi
+ exit ;;
+ avr32*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ cris:Linux:*:*)
+ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
+ exit ;;
+ crisv32:Linux:*:*)
+ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
+ exit ;;
+ e2k:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ frv:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ hexagon:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ i*86:Linux:*:*)
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
+ exit ;;
+ ia64:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ k1om:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ m32r*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ m68*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ mips:Linux:*:* | mips64:Linux:*:*)
+ set_cc_for_build
+ IS_GLIBC=0
+ test x"${LIBC}" = xgnu && IS_GLIBC=1
+ sed 's/^ //' << EOF > "$dummy.c"
+ #undef CPU
+ #undef mips
+ #undef mipsel
+ #undef mips64
+ #undef mips64el
+ #if ${IS_GLIBC} && defined(_ABI64)
+ LIBCABI=gnuabi64
+ #else
+ #if ${IS_GLIBC} && defined(_ABIN32)
+ LIBCABI=gnuabin32
+ #else
+ LIBCABI=${LIBC}
+ #endif
+ #endif
+
+ #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
+ CPU=mipsisa64r6
+ #else
+ #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
+ CPU=mipsisa32r6
+ #else
+ #if defined(__mips64)
+ CPU=mips64
+ #else
+ CPU=mips
+ #endif
+ #endif
+ #endif
+
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+ MIPS_ENDIAN=el
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+ MIPS_ENDIAN=
+ #else
+ MIPS_ENDIAN=
+ #endif
+ #endif
+EOF
+ eval "$($CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI')"
+ test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
+ ;;
+ mips64el:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ openrisc*:Linux:*:*)
+ echo or1k-unknown-linux-"$LIBC"
+ exit ;;
+ or32:Linux:*:* | or1k*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ padre:Linux:*:*)
+ echo sparc-unknown-linux-"$LIBC"
+ exit ;;
+ parisc64:Linux:*:* | hppa64:Linux:*:*)
+ echo hppa64-unknown-linux-"$LIBC"
+ exit ;;
+ parisc:Linux:*:* | hppa:Linux:*:*)
+ # Look for CPU level
+ case $(grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2) in
+ PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
+ PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
+ *) echo hppa-unknown-linux-"$LIBC" ;;
+ esac
+ exit ;;
+ ppc64:Linux:*:*)
+ echo powerpc64-unknown-linux-"$LIBC"
+ exit ;;
+ ppc:Linux:*:*)
+ echo powerpc-unknown-linux-"$LIBC"
+ exit ;;
+ ppc64le:Linux:*:*)
+ echo powerpc64le-unknown-linux-"$LIBC"
+ exit ;;
+ ppcle:Linux:*:*)
+ echo powerpcle-unknown-linux-"$LIBC"
+ exit ;;
+ riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ s390:Linux:*:* | s390x:Linux:*:*)
+ echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
+ exit ;;
+ sh64*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ sh*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ sparc:Linux:*:* | sparc64:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ tile*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ vax:Linux:*:*)
+ echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
+ exit ;;
+ x86_64:Linux:*:*)
+ set_cc_for_build
+ LIBCABI=$LIBC
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
+ if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_X32 >/dev/null
+ then
+ LIBCABI="$LIBC"x32
+ fi
+ fi
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBCABI"
+ exit ;;
+ xtensa*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ i*86:DYNIX/ptx:4*:*)
+ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+ # earlier versions are messed up and put the nodename in both
+ # sysname and nodename.
+ echo i386-sequent-sysv4
+ exit ;;
+ i*86:UNIX_SV:4.2MP:2.*)
+ # Unixware is an offshoot of SVR4, but it has its own version
+ # number series starting with 2...
+ # I am not positive that other SVR4 systems won't match this,
+ # I just have to hope. -- rms.
+ # Use sysv4.2uw... so that sysv4* matches it.
+ echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
+ exit ;;
+ i*86:OS/2:*:*)
+ # If we were able to find `uname', then EMX Unix compatibility
+ # is probably installed.
+ echo "$UNAME_MACHINE"-pc-os2-emx
+ exit ;;
+ i*86:XTS-300:*:STOP)
+ echo "$UNAME_MACHINE"-unknown-stop
+ exit ;;
+ i*86:atheos:*:*)
+ echo "$UNAME_MACHINE"-unknown-atheos
+ exit ;;
+ i*86:syllable:*:*)
+ echo "$UNAME_MACHINE"-pc-syllable
+ exit ;;
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
+ echo i386-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
+ i*86:*DOS:*:*)
+ echo "$UNAME_MACHINE"-pc-msdosdjgpp
+ exit ;;
+ i*86:*:4.*:*)
+ UNAME_REL=$(echo "$UNAME_RELEASE" | sed 's/\/MP$//')
+ if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+ echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
+ else
+ echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
+ fi
+ exit ;;
+ i*86:*:5:[678]*)
+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
+ case $(/bin/uname -X | grep "^Machine") in
+ *486*) UNAME_MACHINE=i486 ;;
+ *Pentium) UNAME_MACHINE=i586 ;;
+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+ esac
+ echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}"
+ exit ;;
+ i*86:*:3.2:*)
+ if test -f /usr/options/cb.name; then
+ UNAME_REL=$(sed -n 's/.*Version //p' /dev/null >/dev/null ; then
+ UNAME_REL=$( (/bin/uname -X|grep Release|sed -e 's/.*= //'))
+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
+ && UNAME_MACHINE=i586
+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
+ && UNAME_MACHINE=i686
+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+ && UNAME_MACHINE=i686
+ echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
+ else
+ echo "$UNAME_MACHINE"-pc-sysv32
+ fi
+ exit ;;
+ pc:*:*:*)
+ # Left here for compatibility:
+ # uname -m prints for DJGPP always 'pc', but it prints nothing about
+ # the processor, so we play safe by assuming i586.
+ # Note: whatever this is, it MUST be the same as what config.sub
+ # prints for the "djgpp" host, or else GDB configure will decide that
+ # this is a cross-build.
+ echo i586-pc-msdosdjgpp
+ exit ;;
+ Intel:Mach:3*:*)
+ echo i386-pc-mach3
+ exit ;;
+ paragon:*:*:*)
+ echo i860-intel-osf1
+ exit ;;
+ i860:*:4.*:*) # i860-SVR4
+ if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+ echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
+ else # Add other i860-SVR4 vendors below as they are discovered.
+ echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
+ fi
+ exit ;;
+ mini*:CTIX:SYS*5:*)
+ # "miniframe"
+ echo m68010-convergent-sysv
+ exit ;;
+ mc68k:UNIX:SYSTEM5:3.51m)
+ echo m68k-convergent-sysv
+ exit ;;
+ M680?0:D-NIX:5.3:*)
+ echo m68k-diab-dnix
+ exit ;;
+ M68*:*:R3V[5678]*:*)
+ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
+ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
+ OS_REL=''
+ test -r /etc/.relid \
+ && OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid)
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
+ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4; exit; } ;;
+ NCR*:*:4.2:* | MPRAS*:*:4.2:*)
+ OS_REL='.3'
+ test -r /etc/.relid \
+ && OS_REL=.$(sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid)
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+ echo m68k-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
+ mc68030:UNIX_System_V:4.*:*)
+ echo m68k-atari-sysv4
+ exit ;;
+ TSUNAMI:LynxOS:2.*:*)
+ echo sparc-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
+ rs6000:LynxOS:2.*:*)
+ echo rs6000-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
+ echo powerpc-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
+ SM[BE]S:UNIX_SV:*:*)
+ echo mips-dde-sysv"$UNAME_RELEASE"
+ exit ;;
+ RM*:ReliantUNIX-*:*:*)
+ echo mips-sni-sysv4
+ exit ;;
+ RM*:SINIX-*:*:*)
+ echo mips-sni-sysv4
+ exit ;;
+ *:SINIX-*:*:*)
+ if uname -p 2>/dev/null >/dev/null ; then
+ UNAME_MACHINE=$( (uname -p) 2>/dev/null)
+ echo "$UNAME_MACHINE"-sni-sysv4
+ else
+ echo ns32k-sni-sysv
+ fi
+ exit ;;
+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+ # says
+ echo i586-unisys-sysv4
+ exit ;;
+ *:UNIX_System_V:4*:FTX*)
+ # From Gerald Hewes .
+ # How about differentiating between stratus architectures? -djm
+ echo hppa1.1-stratus-sysv4
+ exit ;;
+ *:*:*:FTX*)
+ # From seanf@swdc.stratus.com.
+ echo i860-stratus-sysv4
+ exit ;;
+ i*86:VOS:*:*)
+ # From Paul.Green@stratus.com.
+ echo "$UNAME_MACHINE"-stratus-vos
+ exit ;;
+ *:VOS:*:*)
+ # From Paul.Green@stratus.com.
+ echo hppa1.1-stratus-vos
+ exit ;;
+ mc68*:A/UX:*:*)
+ echo m68k-apple-aux"$UNAME_RELEASE"
+ exit ;;
+ news*:NEWS-OS:6*:*)
+ echo mips-sony-newsos6
+ exit ;;
+ R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+ if test -d /usr/nec; then
+ echo mips-nec-sysv"$UNAME_RELEASE"
+ else
+ echo mips-unknown-sysv"$UNAME_RELEASE"
+ fi
+ exit ;;
+ BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
+ echo powerpc-be-beos
+ exit ;;
+ BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
+ echo powerpc-apple-beos
+ exit ;;
+ BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
+ echo i586-pc-beos
+ exit ;;
+ BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
+ echo i586-pc-haiku
+ exit ;;
+ x86_64:Haiku:*:*)
+ echo x86_64-unknown-haiku
+ exit ;;
+ SX-4:SUPER-UX:*:*)
+ echo sx4-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-5:SUPER-UX:*:*)
+ echo sx5-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-6:SUPER-UX:*:*)
+ echo sx6-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-7:SUPER-UX:*:*)
+ echo sx7-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-8:SUPER-UX:*:*)
+ echo sx8-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-8R:SUPER-UX:*:*)
+ echo sx8r-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-ACE:SUPER-UX:*:*)
+ echo sxace-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ Power*:Rhapsody:*:*)
+ echo powerpc-apple-rhapsody"$UNAME_RELEASE"
+ exit ;;
+ *:Rhapsody:*:*)
+ echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
+ exit ;;
+ arm64:Darwin:*:*)
+ echo aarch64-apple-darwin"$UNAME_RELEASE"
+ exit ;;
+ *:Darwin:*:*)
+ UNAME_PROCESSOR=$(uname -p)
+ case $UNAME_PROCESSOR in
+ unknown) UNAME_PROCESSOR=powerpc ;;
+ esac
+ if command -v xcode-select > /dev/null 2> /dev/null && \
+ ! xcode-select --print-path > /dev/null 2> /dev/null ; then
+ # Avoid executing cc if there is no toolchain installed as
+ # cc will be a stub that puts up a graphical alert
+ # prompting the user to install developer tools.
+ CC_FOR_BUILD=no_compiler_found
+ else
+ set_cc_for_build
+ fi
+ if test "$CC_FOR_BUILD" != no_compiler_found; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
+ # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
+ if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_PPC >/dev/null
+ then
+ UNAME_PROCESSOR=powerpc
+ fi
+ elif test "$UNAME_PROCESSOR" = i386 ; then
+ # uname -m returns i386 or x86_64
+ UNAME_PROCESSOR=$UNAME_MACHINE
+ fi
+ echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
+ exit ;;
+ *:procnto*:*:* | *:QNX:[0123456789]*:*)
+ UNAME_PROCESSOR=$(uname -p)
+ if test "$UNAME_PROCESSOR" = x86; then
+ UNAME_PROCESSOR=i386
+ UNAME_MACHINE=pc
+ fi
+ echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
+ exit ;;
+ *:QNX:*:4*)
+ echo i386-pc-qnx
+ exit ;;
+ NEO-*:NONSTOP_KERNEL:*:*)
+ echo neo-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSE-*:NONSTOP_KERNEL:*:*)
+ echo nse-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSR-*:NONSTOP_KERNEL:*:*)
+ echo nsr-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSV-*:NONSTOP_KERNEL:*:*)
+ echo nsv-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSX-*:NONSTOP_KERNEL:*:*)
+ echo nsx-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ *:NonStop-UX:*:*)
+ echo mips-compaq-nonstopux
+ exit ;;
+ BS2000:POSIX*:*:*)
+ echo bs2000-siemens-sysv
+ exit ;;
+ DS/*:UNIX_System_V:*:*)
+ echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
+ exit ;;
+ *:Plan9:*:*)
+ # "uname -m" is not consistent, so use $cputype instead. 386
+ # is converted to i386 for consistency with other x86
+ # operating systems.
+ # shellcheck disable=SC2154
+ if test "$cputype" = 386; then
+ UNAME_MACHINE=i386
+ else
+ UNAME_MACHINE="$cputype"
+ fi
+ echo "$UNAME_MACHINE"-unknown-plan9
+ exit ;;
+ *:TOPS-10:*:*)
+ echo pdp10-unknown-tops10
+ exit ;;
+ *:TENEX:*:*)
+ echo pdp10-unknown-tenex
+ exit ;;
+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+ echo pdp10-dec-tops20
+ exit ;;
+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+ echo pdp10-xkl-tops20
+ exit ;;
+ *:TOPS-20:*:*)
+ echo pdp10-unknown-tops20
+ exit ;;
+ *:ITS:*:*)
+ echo pdp10-unknown-its
+ exit ;;
+ SEI:*:*:SEIUX)
+ echo mips-sei-seiux"$UNAME_RELEASE"
+ exit ;;
+ *:DragonFly:*:*)
+ echo "$UNAME_MACHINE"-unknown-dragonfly"$(echo "$UNAME_RELEASE"|sed -e 's/[-(].*//')"
+ exit ;;
+ *:*VMS:*:*)
+ UNAME_MACHINE=$( (uname -p) 2>/dev/null)
+ case "$UNAME_MACHINE" in
+ A*) echo alpha-dec-vms ; exit ;;
+ I*) echo ia64-dec-vms ; exit ;;
+ V*) echo vax-dec-vms ; exit ;;
+ esac ;;
+ *:XENIX:*:SysV)
+ echo i386-pc-xenix
+ exit ;;
+ i*86:skyos:*:*)
+ echo "$UNAME_MACHINE"-pc-skyos"$(echo "$UNAME_RELEASE" | sed -e 's/ .*$//')"
+ exit ;;
+ i*86:rdos:*:*)
+ echo "$UNAME_MACHINE"-pc-rdos
+ exit ;;
+ *:AROS:*:*)
+ echo "$UNAME_MACHINE"-unknown-aros
+ exit ;;
+ x86_64:VMkernel:*:*)
+ echo "$UNAME_MACHINE"-unknown-esx
+ exit ;;
+ amd64:Isilon\ OneFS:*:*)
+ echo x86_64-unknown-onefs
+ exit ;;
+ *:Unleashed:*:*)
+ echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE"
+ exit ;;
+esac
+
+# No uname command or uname output not recognized.
+set_cc_for_build
+cat > "$dummy.c" <
+#include
+#endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
+#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#include
+#if defined(_SIZE_T_) || defined(SIGLOST)
+#include
+#endif
+#endif
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+ /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
+ I don't know.... */
+ printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include
+ printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+ "4"
+#else
+ ""
+#endif
+ ); exit (0);
+#endif
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+ int version;
+ version=$( (hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null);
+ if (version < 4)
+ printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+ else
+ printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+ exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+ printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+ printf ("ns32k-encore-mach\n"); exit (0);
+#else
+ printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+ printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+ printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+ printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+ struct utsname un;
+
+ uname(&un);
+ if (strncmp(un.version, "V2", 2) == 0) {
+ printf ("i386-sequent-ptx2\n"); exit (0);
+ }
+ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+ printf ("i386-sequent-ptx1\n"); exit (0);
+ }
+ printf ("i386-sequent-ptx\n"); exit (0);
+#endif
+
+#if defined (vax)
+#if !defined (ultrix)
+#include
+#if defined (BSD)
+#if BSD == 43
+ printf ("vax-dec-bsd4.3\n"); exit (0);
+#else
+#if BSD == 199006
+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#else
+ printf ("vax-dec-bsd\n"); exit (0);
+#endif
+#endif
+#else
+ printf ("vax-dec-bsd\n"); exit (0);
+#endif
+#else
+#if defined(_SIZE_T_) || defined(SIGLOST)
+ struct utsname un;
+ uname (&un);
+ printf ("vax-dec-ultrix%s\n", un.release); exit (0);
+#else
+ printf ("vax-dec-ultrix\n"); exit (0);
+#endif
+#endif
+#endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
+#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#if defined(_SIZE_T_) || defined(SIGLOST)
+ struct utsname *un;
+ uname (&un);
+ printf ("mips-dec-ultrix%s\n", un.release); exit (0);
+#else
+ printf ("mips-dec-ultrix\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (alliant) && defined (i860)
+ printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+ exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=$($dummy) &&
+ { echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
+
+echo "$0: unable to guess system type" >&2
+
+case "$UNAME_MACHINE:$UNAME_SYSTEM" in
+ mips:Linux | mips64:Linux)
+ # If we got here on MIPS GNU/Linux, output extra information.
+ cat >&2 <&2 <&2 </dev/null || echo unknown)
+uname -r = $( (uname -r) 2>/dev/null || echo unknown)
+uname -s = $( (uname -s) 2>/dev/null || echo unknown)
+uname -v = $( (uname -v) 2>/dev/null || echo unknown)
+
+/usr/bin/uname -p = $( (/usr/bin/uname -p) 2>/dev/null)
+/bin/uname -X = $( (/bin/uname -X) 2>/dev/null)
+
+hostinfo = $( (hostinfo) 2>/dev/null)
+/bin/universe = $( (/bin/universe) 2>/dev/null)
+/usr/bin/arch -k = $( (/usr/bin/arch -k) 2>/dev/null)
+/bin/arch = $( (/bin/arch) 2>/dev/null)
+/usr/bin/oslevel = $( (/usr/bin/oslevel) 2>/dev/null)
+/usr/convex/getsysinfo = $( (/usr/convex/getsysinfo) 2>/dev/null)
+
+UNAME_MACHINE = "$UNAME_MACHINE"
+UNAME_RELEASE = "$UNAME_RELEASE"
+UNAME_SYSTEM = "$UNAME_SYSTEM"
+UNAME_VERSION = "$UNAME_VERSION"
+EOF
+fi
+
+exit 1
+
+# Local variables:
+# eval: (add-hook 'before-save-hook 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff -Nru openmpi-4.0.3/config/from-savannah/upstream-config.sub openmpi-4.1.4/config/from-savannah/upstream-config.sub
--- openmpi-4.0.3/config/from-savannah/upstream-config.sub 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/config/from-savannah/upstream-config.sub 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,1860 @@
+#! /bin/sh
+# Configuration validation subroutine script.
+# Copyright 1992-2021 Free Software Foundation, Inc.
+
+timestamp='2021-01-08'
+
+# This file 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 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, see .
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that
+# program. This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
+
+
+# Please send patches to .
+#
+# Configuration subroutine to validate and canonicalize a configuration type.
+# Supply the specified configuration type as an argument.
+# If it is invalid, we print an error message on stderr and exit with code 1.
+# Otherwise, we print the canonical config type on stdout and succeed.
+
+# You can get the latest version of this script from:
+# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
+
+# This file is supposed to be the same for all GNU packages
+# and recognize all the CPU types, system types and aliases
+# that are meaningful with *any* GNU software.
+# Each package is responsible for reporting which valid configurations
+# it does not support. The user should be able to distinguish
+# a failure to support a valid configuration from a meaningless
+# configuration.
+
+# The goal of this file is to map all the various variations of a given
+# machine specification into a single specification in the form:
+# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or in some cases, the newer four-part form:
+# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+# It is wrong to echo any other type of specification.
+
+me=$(echo "$0" | sed -e 's,.*/,,')
+
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
+
+Canonicalize a configuration name.
+
+Options:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+
+Report bugs and patches to ."
+
+version="\
+GNU config.sub ($timestamp)
+
+Copyright 1992-2021 Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+ echo "$timestamp" ; exit ;;
+ --version | -v )
+ echo "$version" ; exit ;;
+ --help | --h* | -h )
+ echo "$usage"; exit ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+ break ;;
+ -* )
+ echo "$me: invalid option $1$help" >&2
+ exit 1 ;;
+
+ *local*)
+ # First pass through any local machine types.
+ echo "$1"
+ exit ;;
+
+ * )
+ break ;;
+ esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+ exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+ exit 1;;
+esac
+
+# Split fields of configuration type
+# shellcheck disable=SC2162
+IFS="-" read field1 field2 field3 field4 <&2
+ exit 1
+ ;;
+ *-*-*-*)
+ basic_machine=$field1-$field2
+ basic_os=$field3-$field4
+ ;;
+ *-*-*)
+ # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
+ # parts
+ maybe_os=$field2-$field3
+ case $maybe_os in
+ nto-qnx* | linux-* | uclinux-uclibc* \
+ | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
+ | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
+ | storm-chaos* | os2-emx* | rtmk-nova*)
+ basic_machine=$field1
+ basic_os=$maybe_os
+ ;;
+ android-linux)
+ basic_machine=$field1-unknown
+ basic_os=linux-android
+ ;;
+ *)
+ basic_machine=$field1-$field2
+ basic_os=$field3
+ ;;
+ esac
+ ;;
+ *-*)
+ # A lone config we happen to match not fitting any pattern
+ case $field1-$field2 in
+ decstation-3100)
+ basic_machine=mips-dec
+ basic_os=
+ ;;
+ *-*)
+ # Second component is usually, but not always the OS
+ case $field2 in
+ # Prevent following clause from handling this valid os
+ sun*os*)
+ basic_machine=$field1
+ basic_os=$field2
+ ;;
+ # Manufacturers
+ dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
+ | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
+ | unicom* | ibm* | next | hp | isi* | apollo | altos* \
+ | convergent* | ncr* | news | 32* | 3600* | 3100* \
+ | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \
+ | ultra | tti* | harris | dolphin | highlevel | gould \
+ | cbm | ns | masscomp | apple | axis | knuth | cray \
+ | microblaze* | sim | cisco \
+ | oki | wec | wrs | winbond)
+ basic_machine=$field1-$field2
+ basic_os=
+ ;;
+ *)
+ basic_machine=$field1
+ basic_os=$field2
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ *)
+ # Convert single-component short-hands not valid as part of
+ # multi-component configurations.
+ case $field1 in
+ 386bsd)
+ basic_machine=i386-pc
+ basic_os=bsd
+ ;;
+ a29khif)
+ basic_machine=a29k-amd
+ basic_os=udi
+ ;;
+ adobe68k)
+ basic_machine=m68010-adobe
+ basic_os=scout
+ ;;
+ alliant)
+ basic_machine=fx80-alliant
+ basic_os=
+ ;;
+ altos | altos3068)
+ basic_machine=m68k-altos
+ basic_os=
+ ;;
+ am29k)
+ basic_machine=a29k-none
+ basic_os=bsd
+ ;;
+ amdahl)
+ basic_machine=580-amdahl
+ basic_os=sysv
+ ;;
+ amiga)
+ basic_machine=m68k-unknown
+ basic_os=
+ ;;
+ amigaos | amigados)
+ basic_machine=m68k-unknown
+ basic_os=amigaos
+ ;;
+ amigaunix | amix)
+ basic_machine=m68k-unknown
+ basic_os=sysv4
+ ;;
+ apollo68)
+ basic_machine=m68k-apollo
+ basic_os=sysv
+ ;;
+ apollo68bsd)
+ basic_machine=m68k-apollo
+ basic_os=bsd
+ ;;
+ aros)
+ basic_machine=i386-pc
+ basic_os=aros
+ ;;
+ aux)
+ basic_machine=m68k-apple
+ basic_os=aux
+ ;;
+ balance)
+ basic_machine=ns32k-sequent
+ basic_os=dynix
+ ;;
+ blackfin)
+ basic_machine=bfin-unknown
+ basic_os=linux
+ ;;
+ cegcc)
+ basic_machine=arm-unknown
+ basic_os=cegcc
+ ;;
+ convex-c1)
+ basic_machine=c1-convex
+ basic_os=bsd
+ ;;
+ convex-c2)
+ basic_machine=c2-convex
+ basic_os=bsd
+ ;;
+ convex-c32)
+ basic_machine=c32-convex
+ basic_os=bsd
+ ;;
+ convex-c34)
+ basic_machine=c34-convex
+ basic_os=bsd
+ ;;
+ convex-c38)
+ basic_machine=c38-convex
+ basic_os=bsd
+ ;;
+ cray)
+ basic_machine=j90-cray
+ basic_os=unicos
+ ;;
+ crds | unos)
+ basic_machine=m68k-crds
+ basic_os=
+ ;;
+ da30)
+ basic_machine=m68k-da30
+ basic_os=
+ ;;
+ decstation | pmax | pmin | dec3100 | decstatn)
+ basic_machine=mips-dec
+ basic_os=
+ ;;
+ delta88)
+ basic_machine=m88k-motorola
+ basic_os=sysv3
+ ;;
+ dicos)
+ basic_machine=i686-pc
+ basic_os=dicos
+ ;;
+ djgpp)
+ basic_machine=i586-pc
+ basic_os=msdosdjgpp
+ ;;
+ ebmon29k)
+ basic_machine=a29k-amd
+ basic_os=ebmon
+ ;;
+ es1800 | OSE68k | ose68k | ose | OSE)
+ basic_machine=m68k-ericsson
+ basic_os=ose
+ ;;
+ gmicro)
+ basic_machine=tron-gmicro
+ basic_os=sysv
+ ;;
+ go32)
+ basic_machine=i386-pc
+ basic_os=go32
+ ;;
+ h8300hms)
+ basic_machine=h8300-hitachi
+ basic_os=hms
+ ;;
+ h8300xray)
+ basic_machine=h8300-hitachi
+ basic_os=xray
+ ;;
+ h8500hms)
+ basic_machine=h8500-hitachi
+ basic_os=hms
+ ;;
+ harris)
+ basic_machine=m88k-harris
+ basic_os=sysv3
+ ;;
+ hp300 | hp300hpux)
+ basic_machine=m68k-hp
+ basic_os=hpux
+ ;;
+ hp300bsd)
+ basic_machine=m68k-hp
+ basic_os=bsd
+ ;;
+ hppaosf)
+ basic_machine=hppa1.1-hp
+ basic_os=osf
+ ;;
+ hppro)
+ basic_machine=hppa1.1-hp
+ basic_os=proelf
+ ;;
+ i386mach)
+ basic_machine=i386-mach
+ basic_os=mach
+ ;;
+ isi68 | isi)
+ basic_machine=m68k-isi
+ basic_os=sysv
+ ;;
+ m68knommu)
+ basic_machine=m68k-unknown
+ basic_os=linux
+ ;;
+ magnum | m3230)
+ basic_machine=mips-mips
+ basic_os=sysv
+ ;;
+ merlin)
+ basic_machine=ns32k-utek
+ basic_os=sysv
+ ;;
+ mingw64)
+ basic_machine=x86_64-pc
+ basic_os=mingw64
+ ;;
+ mingw32)
+ basic_machine=i686-pc
+ basic_os=mingw32
+ ;;
+ mingw32ce)
+ basic_machine=arm-unknown
+ basic_os=mingw32ce
+ ;;
+ monitor)
+ basic_machine=m68k-rom68k
+ basic_os=coff
+ ;;
+ morphos)
+ basic_machine=powerpc-unknown
+ basic_os=morphos
+ ;;
+ moxiebox)
+ basic_machine=moxie-unknown
+ basic_os=moxiebox
+ ;;
+ msdos)
+ basic_machine=i386-pc
+ basic_os=msdos
+ ;;
+ msys)
+ basic_machine=i686-pc
+ basic_os=msys
+ ;;
+ mvs)
+ basic_machine=i370-ibm
+ basic_os=mvs
+ ;;
+ nacl)
+ basic_machine=le32-unknown
+ basic_os=nacl
+ ;;
+ ncr3000)
+ basic_machine=i486-ncr
+ basic_os=sysv4
+ ;;
+ netbsd386)
+ basic_machine=i386-pc
+ basic_os=netbsd
+ ;;
+ netwinder)
+ basic_machine=armv4l-rebel
+ basic_os=linux
+ ;;
+ news | news700 | news800 | news900)
+ basic_machine=m68k-sony
+ basic_os=newsos
+ ;;
+ news1000)
+ basic_machine=m68030-sony
+ basic_os=newsos
+ ;;
+ necv70)
+ basic_machine=v70-nec
+ basic_os=sysv
+ ;;
+ nh3000)
+ basic_machine=m68k-harris
+ basic_os=cxux
+ ;;
+ nh[45]000)
+ basic_machine=m88k-harris
+ basic_os=cxux
+ ;;
+ nindy960)
+ basic_machine=i960-intel
+ basic_os=nindy
+ ;;
+ mon960)
+ basic_machine=i960-intel
+ basic_os=mon960
+ ;;
+ nonstopux)
+ basic_machine=mips-compaq
+ basic_os=nonstopux
+ ;;
+ os400)
+ basic_machine=powerpc-ibm
+ basic_os=os400
+ ;;
+ OSE68000 | ose68000)
+ basic_machine=m68000-ericsson
+ basic_os=ose
+ ;;
+ os68k)
+ basic_machine=m68k-none
+ basic_os=os68k
+ ;;
+ paragon)
+ basic_machine=i860-intel
+ basic_os=osf
+ ;;
+ parisc)
+ basic_machine=hppa-unknown
+ basic_os=linux
+ ;;
+ psp)
+ basic_machine=mipsallegrexel-sony
+ basic_os=psp
+ ;;
+ pw32)
+ basic_machine=i586-unknown
+ basic_os=pw32
+ ;;
+ rdos | rdos64)
+ basic_machine=x86_64-pc
+ basic_os=rdos
+ ;;
+ rdos32)
+ basic_machine=i386-pc
+ basic_os=rdos
+ ;;
+ rom68k)
+ basic_machine=m68k-rom68k
+ basic_os=coff
+ ;;
+ sa29200)
+ basic_machine=a29k-amd
+ basic_os=udi
+ ;;
+ sei)
+ basic_machine=mips-sei
+ basic_os=seiux
+ ;;
+ sequent)
+ basic_machine=i386-sequent
+ basic_os=
+ ;;
+ sps7)
+ basic_machine=m68k-bull
+ basic_os=sysv2
+ ;;
+ st2000)
+ basic_machine=m68k-tandem
+ basic_os=
+ ;;
+ stratus)
+ basic_machine=i860-stratus
+ basic_os=sysv4
+ ;;
+ sun2)
+ basic_machine=m68000-sun
+ basic_os=
+ ;;
+ sun2os3)
+ basic_machine=m68000-sun
+ basic_os=sunos3
+ ;;
+ sun2os4)
+ basic_machine=m68000-sun
+ basic_os=sunos4
+ ;;
+ sun3)
+ basic_machine=m68k-sun
+ basic_os=
+ ;;
+ sun3os3)
+ basic_machine=m68k-sun
+ basic_os=sunos3
+ ;;
+ sun3os4)
+ basic_machine=m68k-sun
+ basic_os=sunos4
+ ;;
+ sun4)
+ basic_machine=sparc-sun
+ basic_os=
+ ;;
+ sun4os3)
+ basic_machine=sparc-sun
+ basic_os=sunos3
+ ;;
+ sun4os4)
+ basic_machine=sparc-sun
+ basic_os=sunos4
+ ;;
+ sun4sol2)
+ basic_machine=sparc-sun
+ basic_os=solaris2
+ ;;
+ sun386 | sun386i | roadrunner)
+ basic_machine=i386-sun
+ basic_os=
+ ;;
+ sv1)
+ basic_machine=sv1-cray
+ basic_os=unicos
+ ;;
+ symmetry)
+ basic_machine=i386-sequent
+ basic_os=dynix
+ ;;
+ t3e)
+ basic_machine=alphaev5-cray
+ basic_os=unicos
+ ;;
+ t90)
+ basic_machine=t90-cray
+ basic_os=unicos
+ ;;
+ toad1)
+ basic_machine=pdp10-xkl
+ basic_os=tops20
+ ;;
+ tpf)
+ basic_machine=s390x-ibm
+ basic_os=tpf
+ ;;
+ udi29k)
+ basic_machine=a29k-amd
+ basic_os=udi
+ ;;
+ ultra3)
+ basic_machine=a29k-nyu
+ basic_os=sym1
+ ;;
+ v810 | necv810)
+ basic_machine=v810-nec
+ basic_os=none
+ ;;
+ vaxv)
+ basic_machine=vax-dec
+ basic_os=sysv
+ ;;
+ vms)
+ basic_machine=vax-dec
+ basic_os=vms
+ ;;
+ vsta)
+ basic_machine=i386-pc
+ basic_os=vsta
+ ;;
+ vxworks960)
+ basic_machine=i960-wrs
+ basic_os=vxworks
+ ;;
+ vxworks68)
+ basic_machine=m68k-wrs
+ basic_os=vxworks
+ ;;
+ vxworks29k)
+ basic_machine=a29k-wrs
+ basic_os=vxworks
+ ;;
+ xbox)
+ basic_machine=i686-pc
+ basic_os=mingw32
+ ;;
+ ymp)
+ basic_machine=ymp-cray
+ basic_os=unicos
+ ;;
+ *)
+ basic_machine=$1
+ basic_os=
+ ;;
+ esac
+ ;;
+esac
+
+# Decode 1-component or ad-hoc basic machines
+case $basic_machine in
+ # Here we handle the default manufacturer of certain CPU types. It is in
+ # some cases the only manufacturer, in others, it is the most popular.
+ w89k)
+ cpu=hppa1.1
+ vendor=winbond
+ ;;
+ op50n)
+ cpu=hppa1.1
+ vendor=oki
+ ;;
+ op60c)
+ cpu=hppa1.1
+ vendor=oki
+ ;;
+ ibm*)
+ cpu=i370
+ vendor=ibm
+ ;;
+ orion105)
+ cpu=clipper
+ vendor=highlevel
+ ;;
+ mac | mpw | mac-mpw)
+ cpu=m68k
+ vendor=apple
+ ;;
+ pmac | pmac-mpw)
+ cpu=powerpc
+ vendor=apple
+ ;;
+
+ # Recognize the various machine names and aliases which stand
+ # for a CPU type and a company and sometimes even an OS.
+ 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
+ cpu=m68000
+ vendor=att
+ ;;
+ 3b*)
+ cpu=we32k
+ vendor=att
+ ;;
+ bluegene*)
+ cpu=powerpc
+ vendor=ibm
+ basic_os=cnk
+ ;;
+ decsystem10* | dec10*)
+ cpu=pdp10
+ vendor=dec
+ basic_os=tops10
+ ;;
+ decsystem20* | dec20*)
+ cpu=pdp10
+ vendor=dec
+ basic_os=tops20
+ ;;
+ delta | 3300 | motorola-3300 | motorola-delta \
+ | 3300-motorola | delta-motorola)
+ cpu=m68k
+ vendor=motorola
+ ;;
+ dpx2*)
+ cpu=m68k
+ vendor=bull
+ basic_os=sysv3
+ ;;
+ encore | umax | mmax)
+ cpu=ns32k
+ vendor=encore
+ ;;
+ elxsi)
+ cpu=elxsi
+ vendor=elxsi
+ basic_os=${basic_os:-bsd}
+ ;;
+ fx2800)
+ cpu=i860
+ vendor=alliant
+ ;;
+ genix)
+ cpu=ns32k
+ vendor=ns
+ ;;
+ h3050r* | hiux*)
+ cpu=hppa1.1
+ vendor=hitachi
+ basic_os=hiuxwe2
+ ;;
+ hp3k9[0-9][0-9] | hp9[0-9][0-9])
+ cpu=hppa1.0
+ vendor=hp
+ ;;
+ hp9k2[0-9][0-9] | hp9k31[0-9])
+ cpu=m68000
+ vendor=hp
+ ;;
+ hp9k3[2-9][0-9])
+ cpu=m68k
+ vendor=hp
+ ;;
+ hp9k6[0-9][0-9] | hp6[0-9][0-9])
+ cpu=hppa1.0
+ vendor=hp
+ ;;
+ hp9k7[0-79][0-9] | hp7[0-79][0-9])
+ cpu=hppa1.1
+ vendor=hp
+ ;;
+ hp9k78[0-9] | hp78[0-9])
+ # FIXME: really hppa2.0-hp
+ cpu=hppa1.1
+ vendor=hp
+ ;;
+ hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
+ # FIXME: really hppa2.0-hp
+ cpu=hppa1.1
+ vendor=hp
+ ;;
+ hp9k8[0-9][13679] | hp8[0-9][13679])
+ cpu=hppa1.1
+ vendor=hp
+ ;;
+ hp9k8[0-9][0-9] | hp8[0-9][0-9])
+ cpu=hppa1.0
+ vendor=hp
+ ;;
+ i*86v32)
+ cpu=$(echo "$1" | sed -e 's/86.*/86/')
+ vendor=pc
+ basic_os=sysv32
+ ;;
+ i*86v4*)
+ cpu=$(echo "$1" | sed -e 's/86.*/86/')
+ vendor=pc
+ basic_os=sysv4
+ ;;
+ i*86v)
+ cpu=$(echo "$1" | sed -e 's/86.*/86/')
+ vendor=pc
+ basic_os=sysv
+ ;;
+ i*86sol2)
+ cpu=$(echo "$1" | sed -e 's/86.*/86/')
+ vendor=pc
+ basic_os=solaris2
+ ;;
+ j90 | j90-cray)
+ cpu=j90
+ vendor=cray
+ basic_os=${basic_os:-unicos}
+ ;;
+ iris | iris4d)
+ cpu=mips
+ vendor=sgi
+ case $basic_os in
+ irix*)
+ ;;
+ *)
+ basic_os=irix4
+ ;;
+ esac
+ ;;
+ miniframe)
+ cpu=m68000
+ vendor=convergent
+ ;;
+ *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
+ cpu=m68k
+ vendor=atari
+ basic_os=mint
+ ;;
+ news-3600 | risc-news)
+ cpu=mips
+ vendor=sony
+ basic_os=newsos
+ ;;
+ next | m*-next)
+ cpu=m68k
+ vendor=next
+ case $basic_os in
+ openstep*)
+ ;;
+ nextstep*)
+ ;;
+ ns2*)
+ basic_os=nextstep2
+ ;;
+ *)
+ basic_os=nextstep3
+ ;;
+ esac
+ ;;
+ np1)
+ cpu=np1
+ vendor=gould
+ ;;
+ op50n-* | op60c-*)
+ cpu=hppa1.1
+ vendor=oki
+ basic_os=proelf
+ ;;
+ pa-hitachi)
+ cpu=hppa1.1
+ vendor=hitachi
+ basic_os=hiuxwe2
+ ;;
+ pbd)
+ cpu=sparc
+ vendor=tti
+ ;;
+ pbb)
+ cpu=m68k
+ vendor=tti
+ ;;
+ pc532)
+ cpu=ns32k
+ vendor=pc532
+ ;;
+ pn)
+ cpu=pn
+ vendor=gould
+ ;;
+ power)
+ cpu=power
+ vendor=ibm
+ ;;
+ ps2)
+ cpu=i386
+ vendor=ibm
+ ;;
+ rm[46]00)
+ cpu=mips
+ vendor=siemens
+ ;;
+ rtpc | rtpc-*)
+ cpu=romp
+ vendor=ibm
+ ;;
+ sde)
+ cpu=mipsisa32
+ vendor=sde
+ basic_os=${basic_os:-elf}
+ ;;
+ simso-wrs)
+ cpu=sparclite
+ vendor=wrs
+ basic_os=vxworks
+ ;;
+ tower | tower-32)
+ cpu=m68k
+ vendor=ncr
+ ;;
+ vpp*|vx|vx-*)
+ cpu=f301
+ vendor=fujitsu
+ ;;
+ w65)
+ cpu=w65
+ vendor=wdc
+ ;;
+ w89k-*)
+ cpu=hppa1.1
+ vendor=winbond
+ basic_os=proelf
+ ;;
+ none)
+ cpu=none
+ vendor=none
+ ;;
+ leon|leon[3-9])
+ cpu=sparc
+ vendor=$basic_machine
+ ;;
+ leon-*|leon[3-9]-*)
+ cpu=sparc
+ vendor=$(echo "$basic_machine" | sed 's/-.*//')
+ ;;
+
+ *-*)
+ # shellcheck disable=SC2162
+ IFS="-" read cpu vendor <&2
+ exit 1
+ ;;
+ esac
+ ;;
+esac
+
+# Here we canonicalize certain aliases for manufacturers.
+case $vendor in
+ digital*)
+ vendor=dec
+ ;;
+ commodore*)
+ vendor=cbm
+ ;;
+ *)
+ ;;
+esac
+
+# Decode manufacturer-specific aliases for certain operating systems.
+
+if test x$basic_os != x
+then
+
+# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
+# set os.
+case $basic_os in
+ gnu/linux*)
+ kernel=linux
+ os=$(echo $basic_os | sed -e 's|gnu/linux|gnu|')
+ ;;
+ os2-emx)
+ kernel=os2
+ os=$(echo $basic_os | sed -e 's|os2-emx|emx|')
+ ;;
+ nto-qnx*)
+ kernel=nto
+ os=$(echo $basic_os | sed -e 's|nto-qnx|qnx|')
+ ;;
+ *-*)
+ # shellcheck disable=SC2162
+ IFS="-" read kernel os <&2
+ exit 1
+ ;;
+esac
+
+# As a final step for OS-related things, validate the OS-kernel combination
+# (given a valid OS), if there is a kernel.
+case $kernel-$os in
+ linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* )
+ ;;
+ uclinux-uclibc* )
+ ;;
+ -dietlibc* | -newlib* | -musl* | -uclibc* )
+ # These are just libc implementations, not actual OSes, and thus
+ # require a kernel.
+ echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
+ exit 1
+ ;;
+ kfreebsd*-gnu* | kopensolaris*-gnu*)
+ ;;
+ vxworks-simlinux | vxworks-simwindows | vxworks-spe)
+ ;;
+ nto-qnx*)
+ ;;
+ os2-emx)
+ ;;
+ *-eabi* | *-gnueabi*)
+ ;;
+ -*)
+ # Blank kernel with real OS is always fine.
+ ;;
+ *-*)
+ echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2
+ exit 1
+ ;;
+esac
+
+# Here we handle the case where we know the os, and the CPU type, but not the
+# manufacturer. We pick the logical manufacturer.
+case $vendor in
+ unknown)
+ case $cpu-$os in
+ *-riscix*)
+ vendor=acorn
+ ;;
+ *-sunos*)
+ vendor=sun
+ ;;
+ *-cnk* | *-aix*)
+ vendor=ibm
+ ;;
+ *-beos*)
+ vendor=be
+ ;;
+ *-hpux*)
+ vendor=hp
+ ;;
+ *-mpeix*)
+ vendor=hp
+ ;;
+ *-hiux*)
+ vendor=hitachi
+ ;;
+ *-unos*)
+ vendor=crds
+ ;;
+ *-dgux*)
+ vendor=dg
+ ;;
+ *-luna*)
+ vendor=omron
+ ;;
+ *-genix*)
+ vendor=ns
+ ;;
+ *-clix*)
+ vendor=intergraph
+ ;;
+ *-mvs* | *-opened*)
+ vendor=ibm
+ ;;
+ *-os400*)
+ vendor=ibm
+ ;;
+ s390-* | s390x-*)
+ vendor=ibm
+ ;;
+ *-ptx*)
+ vendor=sequent
+ ;;
+ *-tpf*)
+ vendor=ibm
+ ;;
+ *-vxsim* | *-vxworks* | *-windiss*)
+ vendor=wrs
+ ;;
+ *-aux*)
+ vendor=apple
+ ;;
+ *-hms*)
+ vendor=hitachi
+ ;;
+ *-mpw* | *-macos*)
+ vendor=apple
+ ;;
+ *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
+ vendor=atari
+ ;;
+ *-vos*)
+ vendor=stratus
+ ;;
+ esac
+ ;;
+esac
+
+echo "$cpu-$vendor-${kernel:+$kernel-}$os"
+exit
+
+# Local variables:
+# eval: (add-hook 'before-save-hook 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff -Nru openmpi-4.0.3/config/getdate.sh openmpi-4.1.4/config/getdate.sh
--- openmpi-4.0.3/config/getdate.sh 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/config/getdate.sh 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,14 @@
+#!/bin/sh
+#
+# Copyright (c) 2017 Research Organization for Information Science
+# and Technology (RIST). All rights reserved.
+# Copyright (c) 2020 Cisco Systems, Inc. All rights reserved.
+
+# Provide a way to override build date for reproducible build results
+# See https://reproducible-builds.org/ for why this is good.
+
+# There are several different flavors of date(1) out there.
+# Try a few different CLI options for date(1) to see which one works.
+
+SOURCE_DATE_EPOCH="${SOURCE_DATE_EPOCH:-$(date +%s)}"
+date -u -d "@$SOURCE_DATE_EPOCH" "$@" 2>/dev/null || date -u -r "$SOURCE_DATE_EPOCH" "$@" 2>/dev/null || date -u "$@"
diff -Nru openmpi-4.0.3/config/Makefile.am openmpi-4.1.4/config/Makefile.am
--- openmpi-4.0.3/config/Makefile.am 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/Makefile.am 2022-05-29 09:51:40.000000000 +0000
@@ -9,7 +9,7 @@
# University of Stuttgart. All rights reserved.
# Copyright (c) 2004-2005 The Regents of the University of California.
# All rights reserved.
-# Copyright (c) 2006-2018 Cisco Systems, Inc. All rights reserved.
+# Copyright (c) 2006-2021 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2010 Oracle and/or its affiliates. All rights
# reserved.
# Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
@@ -29,7 +29,10 @@
ltmain_pgi_tp.diff \
opal_mca_priority_sort.pl \
find_common_syms \
- make_manpage.pl
+ getdate.sh \
+ make_manpage.pl \
+ from-savannah/upstream-config.guess \
+ from-savannah/upstream-config.sub
maintainer-clean-local:
rm -f opal_get_version.sh
diff -Nru openmpi-4.0.3/config/Makefile.in openmpi-4.1.4/config/Makefile.in
--- openmpi-4.0.3/config/Makefile.in 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/Makefile.in 2022-05-29 09:51:40.000000000 +0000
@@ -25,7 +25,7 @@
# University of Stuttgart. All rights reserved.
# Copyright (c) 2004-2005 The Regents of the University of California.
# All rights reserved.
-# Copyright (c) 2006-2018 Cisco Systems, Inc. All rights reserved.
+# Copyright (c) 2006-2021 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2010 Oracle and/or its affiliates. All rights
# reserved.
# Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
@@ -121,6 +121,8 @@
$(top_srcdir)/config/ltsugar.m4 \
$(top_srcdir)/config/ltversion.m4 \
$(top_srcdir)/config/lt~obsolete.m4 \
+ $(top_srcdir)/config/ompi_check_gpfs.m4 \
+ $(top_srcdir)/config/ompi_check_ime.m4 \
$(top_srcdir)/config/ompi_check_libfca.m4 \
$(top_srcdir)/config/ompi_check_libhcoll.m4 \
$(top_srcdir)/config/ompi_check_lustre.m4 \
@@ -128,6 +130,7 @@
$(top_srcdir)/config/ompi_check_psm.m4 \
$(top_srcdir)/config/ompi_check_psm2.m4 \
$(top_srcdir)/config/ompi_check_pvfs2.m4 \
+ $(top_srcdir)/config/ompi_check_ucc.m4 \
$(top_srcdir)/config/ompi_check_ucx.m4 \
$(top_srcdir)/config/ompi_config_files.m4 \
$(top_srcdir)/config/ompi_configure_options.m4 \
@@ -151,6 +154,7 @@
$(top_srcdir)/config/ompi_fortran_check_logical_array.m4 \
$(top_srcdir)/config/ompi_fortran_check_max_array_rank.m4 \
$(top_srcdir)/config/ompi_fortran_check_optional_args.m4 \
+ $(top_srcdir)/config/ompi_fortran_check_preprocess_f90.m4 \
$(top_srcdir)/config/ompi_fortran_check_private.m4 \
$(top_srcdir)/config/ompi_fortran_check_procedure.m4 \
$(top_srcdir)/config/ompi_fortran_check_protected.m4 \
@@ -253,6 +257,7 @@
$(top_srcdir)/opal/mca/pstat/configure.m4 \
$(top_srcdir)/opal/mca/timer/configure.m4 \
$(top_srcdir)/opal/mca/common/cuda/configure.m4 \
+ $(top_srcdir)/opal/mca/common/ofi/configure.m4 \
$(top_srcdir)/opal/mca/common/sm/configure.m4 \
$(top_srcdir)/opal/mca/common/ucx/configure.m4 \
$(top_srcdir)/opal/mca/common/verbs/configure.m4 \
@@ -260,6 +265,7 @@
$(top_srcdir)/opal/mca/backtrace/execinfo/configure.m4 \
$(top_srcdir)/opal/mca/backtrace/none/configure.m4 \
$(top_srcdir)/opal/mca/backtrace/printstack/configure.m4 \
+ $(top_srcdir)/opal/mca/btl/ofi/configure.m4 \
$(top_srcdir)/opal/mca/btl/openib/configure.m4 \
$(top_srcdir)/opal/mca/btl/portals4/configure.m4 \
$(top_srcdir)/opal/mca/btl/sm/configure.m4 \
@@ -340,6 +346,7 @@
$(top_srcdir)/orte/mca/ras/slurm/configure.m4 \
$(top_srcdir)/orte/mca/ras/tm/configure.m4 \
$(top_srcdir)/orte/mca/schizo/alps/configure.m4 \
+ $(top_srcdir)/orte/mca/schizo/jsm/configure.m4 \
$(top_srcdir)/orte/mca/schizo/moab/configure.m4 \
$(top_srcdir)/orte/mca/schizo/singularity/configure.m4 \
$(top_srcdir)/orte/mca/schizo/slurm/configure.m4 \
@@ -362,9 +369,13 @@
$(top_srcdir)/ompi/mca/coll/hcoll/configure.m4 \
$(top_srcdir)/ompi/mca/coll/monitoring/configure.m4 \
$(top_srcdir)/ompi/mca/coll/portals4/configure.m4 \
+ $(top_srcdir)/ompi/mca/coll/ucc/configure.m4 \
$(top_srcdir)/ompi/mca/crcp/bkmrk/configure.m4 \
+ $(top_srcdir)/ompi/mca/fbtl/ime/configure.m4 \
$(top_srcdir)/ompi/mca/fbtl/posix/configure.m4 \
$(top_srcdir)/ompi/mca/fbtl/pvfs2/configure.m4 \
+ $(top_srcdir)/ompi/mca/fs/gpfs/configure.m4 \
+ $(top_srcdir)/ompi/mca/fs/ime/configure.m4 \
$(top_srcdir)/ompi/mca/fs/lustre/configure.m4 \
$(top_srcdir)/ompi/mca/fs/pvfs2/configure.m4 \
$(top_srcdir)/ompi/mca/fs/ufs/configure.m4 \
@@ -374,6 +385,7 @@
$(top_srcdir)/ompi/mca/mtl/portals4/configure.m4 \
$(top_srcdir)/ompi/mca/mtl/psm/configure.m4 \
$(top_srcdir)/ompi/mca/mtl/psm2/configure.m4 \
+ $(top_srcdir)/ompi/mca/op/avx/configure.m4 \
$(top_srcdir)/ompi/mca/osc/monitoring/configure.m4 \
$(top_srcdir)/ompi/mca/osc/portals4/configure.m4 \
$(top_srcdir)/ompi/mca/osc/pt2pt/configure.m4 \
@@ -394,6 +406,7 @@
$(top_srcdir)/oshmem/mca/atomic/mxm/configure.m4 \
$(top_srcdir)/oshmem/mca/atomic/ucx/configure.m4 \
$(top_srcdir)/oshmem/mca/scoll/fca/configure.m4 \
+ $(top_srcdir)/oshmem/mca/scoll/ucc/configure.m4 \
$(top_srcdir)/oshmem/mca/spml/ikrit/configure.m4 \
$(top_srcdir)/oshmem/mca/spml/ucx/configure.m4 \
$(top_srcdir)/oshmem/mca/sshmem/mmap/configure.m4 \
@@ -568,6 +581,9 @@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
+MCA_BUILD_OP_AVX2_FLAGS = @MCA_BUILD_OP_AVX2_FLAGS@
+MCA_BUILD_OP_AVX512_FLAGS = @MCA_BUILD_OP_AVX512_FLAGS@
+MCA_BUILD_OP_AVX_FLAGS = @MCA_BUILD_OP_AVX_FLAGS@
MCA_PROJECT_DIST_SUBDIRS = @MCA_PROJECT_DIST_SUBDIRS@
MCA_PROJECT_SUBDIRS = @MCA_PROJECT_SUBDIRS@
MCA_ompi_FRAMEWORKS = @MCA_ompi_FRAMEWORKS@
@@ -1388,6 +1404,10 @@
coll_portals4_CPPFLAGS = @coll_portals4_CPPFLAGS@
coll_portals4_LDFLAGS = @coll_portals4_LDFLAGS@
coll_portals4_LIBS = @coll_portals4_LIBS@
+coll_ucc_CFLAGS = @coll_ucc_CFLAGS@
+coll_ucc_CPPFLAGS = @coll_ucc_CPPFLAGS@
+coll_ucc_LDFLAGS = @coll_ucc_LDFLAGS@
+coll_ucc_LIBS = @coll_ucc_LIBS@
common_alps_CPPFLAGS = @common_alps_CPPFLAGS@
common_alps_LDFLAGS = @common_alps_LDFLAGS@
common_alps_LIBS = @common_alps_LIBS@
@@ -1420,9 +1440,18 @@
ess_tm_LDFLAGS = @ess_tm_LDFLAGS@
ess_tm_LIBS = @ess_tm_LIBS@
exec_prefix = @exec_prefix@
+fbtl_ime_CPPFLAGS = @fbtl_ime_CPPFLAGS@
+fbtl_ime_LDFLAGS = @fbtl_ime_LDFLAGS@
+fbtl_ime_LIBS = @fbtl_ime_LIBS@
fbtl_pvfs2_CPPFLAGS = @fbtl_pvfs2_CPPFLAGS@
fbtl_pvfs2_LDFLAGS = @fbtl_pvfs2_LDFLAGS@
fbtl_pvfs2_LIBS = @fbtl_pvfs2_LIBS@
+fs_gpfs_CPPFLAGS = @fs_gpfs_CPPFLAGS@
+fs_gpfs_LDFLAGS = @fs_gpfs_LDFLAGS@
+fs_gpfs_LIBS = @fs_gpfs_LIBS@
+fs_ime_CPPFLAGS = @fs_ime_CPPFLAGS@
+fs_ime_LDFLAGS = @fs_ime_LDFLAGS@
+fs_ime_LIBS = @fs_ime_LIBS@
fs_lustre_CPPFLAGS = @fs_lustre_CPPFLAGS@
fs_lustre_LDFLAGS = @fs_lustre_LDFLAGS@
fs_lustre_LIBS = @fs_lustre_LIBS@
@@ -1443,6 +1472,7 @@
libmca_ompi_common_monitoring_so_version = @libmca_ompi_common_monitoring_so_version@
libmca_ompi_common_ompio_so_version = @libmca_ompi_common_ompio_so_version@
libmca_opal_common_cuda_so_version = @libmca_opal_common_cuda_so_version@
+libmca_opal_common_ofi_so_version = @libmca_opal_common_ofi_so_version@
libmca_opal_common_sm_so_version = @libmca_opal_common_sm_so_version@
libmca_opal_common_ucx_so_version = @libmca_opal_common_ucx_so_version@
libmca_opal_common_ugni_so_version = @libmca_opal_common_ugni_so_version@
@@ -1527,9 +1557,6 @@
opal_pmix_pmix3x_DEPENDENCIES = @opal_pmix_pmix3x_DEPENDENCIES@
opal_pmix_pmix3x_LDFLAGS = @opal_pmix_pmix3x_LDFLAGS@
opal_pmix_pmix3x_LIBS = @opal_pmix_pmix3x_LIBS@
-opal_reachable_netlink_CPPFLAGS = @opal_reachable_netlink_CPPFLAGS@
-opal_reachable_netlink_LDFLAGS = @opal_reachable_netlink_LDFLAGS@
-opal_reachable_netlink_LIBS = @opal_reachable_netlink_LIBS@
opaldatadir = @opaldatadir@
opalincludedir = @opalincludedir@
opallibdir = @opallibdir@
@@ -1590,6 +1617,9 @@
rcache_udreg_CPPFLAGS = @rcache_udreg_CPPFLAGS@
rcache_udreg_LDFLAGS = @rcache_udreg_LDFLAGS@
rcache_udreg_LIBS = @rcache_udreg_LIBS@
+reachable_netlink_CPPFLAGS = @reachable_netlink_CPPFLAGS@
+reachable_netlink_LDFLAGS = @reachable_netlink_LDFLAGS@
+reachable_netlink_LIBS = @reachable_netlink_LIBS@
sbindir = @sbindir@
schizo_alps_CPPFLAGS = @schizo_alps_CPPFLAGS@
schizo_moab_CPPFLAGS = @schizo_moab_CPPFLAGS@
@@ -1603,6 +1633,10 @@
scoll_fca_HOME = @scoll_fca_HOME@
scoll_fca_LDFLAGS = @scoll_fca_LDFLAGS@
scoll_fca_LIBS = @scoll_fca_LIBS@
+scoll_ucc_CFLAGS = @scoll_ucc_CFLAGS@
+scoll_ucc_CPPFLAGS = @scoll_ucc_CPPFLAGS@
+scoll_ucc_LDFLAGS = @scoll_ucc_LDFLAGS@
+scoll_ucc_LIBS = @scoll_ucc_LIBS@
sharedstatedir = @sharedstatedir@
spml_ikrit_CFLAGS = @spml_ikrit_CFLAGS@
spml_ikrit_CPPFLAGS = @spml_ikrit_CPPFLAGS@
@@ -1636,7 +1670,10 @@
ltmain_pgi_tp.diff \
opal_mca_priority_sort.pl \
find_common_syms \
- make_manpage.pl
+ getdate.sh \
+ make_manpage.pl \
+ from-savannah/upstream-config.guess \
+ from-savannah/upstream-config.sub
all: all-am
diff -Nru openmpi-4.0.3/config/ompi_check_gpfs.m4 openmpi-4.1.4/config/ompi_check_gpfs.m4
--- openmpi-4.0.3/config/ompi_check_gpfs.m4 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/config/ompi_check_gpfs.m4 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,69 @@
+dnl -*- shell-script -*-
+dnl
+dnl Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
+dnl University Research and Technology
+dnl Corporation. All rights reserved.
+dnl Copyright (c) 2004-2005 The University of Tennessee and The University
+dnl of Tennessee Research Foundation. All rights
+dnl reserved.
+dnl Copyright (c) 2004-2018 High Performance Computing Center Stuttgart,
+dnl University of Stuttgart. All rights reserved.
+dnl Copyright (c) 2004-2006 The Regents of the University of California.
+dnl All rights reserved.
+dnl Copyright (c) 2018 University of Houston. All rights reserved.
+dnl $COPYRIGHT$
+dnl
+dnl Additional copyrights may follow
+dnl
+dnl $HEADER$
+dnl
+
+# OMPI_CHECK_GPFS(prefix, [action-if-found], [action-if-not-found])
+# --------------------------------------------------------
+# check if GPFS support can be found. sets prefix_{CPPFLAGS,
+# LDFLAGS, LIBS} as needed and runs action-if-found if there is
+# support, otherwise executes action-if-not-found
+AC_DEFUN([OMPI_CHECK_GPFS],[
+
+ check_gpfs_CPPFLAGS=
+ check_gpfs_LDFLAGS=
+ check_gpfs_LIBS=
+
+ check_gpfs_save_LIBS="$LIBS"
+ check_gpfs_save_LDFLAGS="$LDFLAGS"
+ check_gpfs_save_CPPFLAGS="$CPPFLAGS"
+
+ check_gpfs_configuration="none"
+ ompi_check_gpfs_happy="yes"
+
+ # Get some configuration information
+ AC_ARG_WITH([gpfs],
+ [AC_HELP_STRING([--with-gpfs(=DIR)],
+ [Build Gpfs support, optionally adding DIR/include, DIR/lib, and DIR/lib64 to the search path for headers and libraries])])
+ OPAL_CHECK_WITHDIR([gpfs], [$with_gpfs], [include/gpfs.h])
+
+ AS_IF([test "$with_gpfs" = "no"],
+ [ompi_check_gpfs_happy="no"],
+ [AS_IF([test -z "$with_gpfs" || test "$with_gpfs" = "yes"],
+ [ompi_check_gpfs_dir="/usr"],
+ [ompi_check_gpfs_dir=$with_gpfs])
+
+ if test -e "$ompi_check_gpfs_dir/lib64" ; then
+ ompi_check_gpfs_libdir="$ompi_check_gpfs_dir/lib64"
+ else
+ ompi_check_gpfs_libdir="$ompi_check_gpfs_dir/lib"
+ fi
+
+ # Add correct -I and -L flags
+ OPAL_CHECK_PACKAGE([$1], [gpfs.h], [gpfs], [gpfs_lib_init],
+ [], [$ompi_check_gpfs_dir], [$ompi_check_gpfs_libdir],
+ [ompi_check_gpfs_happy="yes"],
+ [ompi_check_gpfs_happy="no"])
+ ])
+
+ AS_IF([test "$ompi_check_gpfs_happy" = "yes"],
+ [$2],
+ [AS_IF([test ! -z "$with_gpfs" && test "$with_gpfs" != "no"],
+ [AC_MSG_ERROR([GPFS support requested but not found. Aborting])])
+ $3])
+])
diff -Nru openmpi-4.0.3/config/ompi_check_ime.m4 openmpi-4.1.4/config/ompi_check_ime.m4
--- openmpi-4.0.3/config/ompi_check_ime.m4 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/config/ompi_check_ime.m4 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,62 @@
+dnl -*- shell-script -*-
+dnl
+dnl Copyright (c) 2018 DataDirect Networks. All rights reserved.
+dnl $COPYRIGHT$
+dnl
+dnl Additional copyrights may follow
+dnl
+dnl $HEADER$
+dnl
+
+# OMPI_CHECK_IME(prefix, [action-if-found], [action-if-not-found])
+# --------------------------------------------------------
+# check if IME support can be found. sets prefix_{CPPFLAGS,
+# LDFLAGS, LIBS} as needed and runs action-if-found if there is
+# support, otherwise executes action-if-not-found
+AC_DEFUN([OMPI_CHECK_IME],[
+
+ check_ime_CPPFLAGS=
+ check_ime_LDFLAGS=
+ check_ime_LIBS=
+
+ check_ime_configuration="none"
+ ompi_check_ime_happy="yes"
+
+
+ # Get some configuration information
+ AC_ARG_WITH([ime],
+ [AC_HELP_STRING([--with-ime(=DIR)],
+ [Build IME support, optionally adding DIR/include, DIR/lib, and DIR/lib64 to the search path for headers and libraries])])
+ OPAL_CHECK_WITHDIR([ime], [$with_ime], [include/ime_native.h])
+
+ AS_IF([test "$with_ime" = "no"],
+ [ompi_check_ime_happy="no"],
+ [AS_IF([test -z "$with_ime"],
+ [ompi_check_ime_dir="/usr/local"],
+ [ompi_check_ime_dir=$with_ime])
+
+ if test -e "$ompi_check_ime_dir/lib64" ; then
+ ompi_check_ime_libdir="$ompi_check_ime_dir/lib64"
+ else
+ ompi_check_ime_libdir="$ompi_check_ime_dir/lib"
+ fi
+
+ # Add correct -I and -L flags
+ OPAL_CHECK_PACKAGE([$1], [ime_native.h], [im_client], [ime_client_native2_init], [],
+ [$ompi_check_ime_dir], [$ompi_check_ime_libdir],
+ [ompi_check_ime_happy="yes"],
+ [OPAL_CHECK_PACKAGE([$1], [ime_native.h], [im_client], [ime_native_init], [],
+ [$ompi_check_ime_dir], [$ompi_check_ime_libdir],
+ [ompi_check_ime_happy="yes"],
+ [ompi_check_ime_happy="no"])
+ ])
+ ])
+
+ AS_IF([test "$ompi_check_ime_happy" = "yes"],
+ [$2],
+ [AS_IF([test ! -z "$with_ime" && test "$with_ime" != "no"],
+ [echo IME support not found])
+ $3])
+
+ ])
+
diff -Nru openmpi-4.0.3/config/ompi_check_lustre.m4 openmpi-4.1.4/config/ompi_check_lustre.m4
--- openmpi-4.0.3/config/ompi_check_lustre.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/ompi_check_lustre.m4 2022-05-29 09:51:40.000000000 +0000
@@ -12,8 +12,10 @@
dnl All rights reserved.
dnl Copyright (c) 2009-2017 Cisco Systems, Inc. All rights reserved
dnl Copyright (c) 2008-2018 University of Houston. All rights reserved.
-dnl Copyright (c) 2015 Research Organization for Information Science
-dnl and Technology (RIST). All rights reserved.
+dnl Copyright (c) 2015-2018 Research Organization for Information Science
+dnl and Technology (RIST). All rights reserved.
+dnl Copyright (c) 2020 Triad National Security, LLC. All rights
+dnl reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -36,7 +38,6 @@
check_lustre_save_LDFLAGS="$LDFLAGS"
check_lustre_save_CPPFLAGS="$CPPFLAGS"
- check_lustre_configuration="none"
ompi_check_lustre_happy="yes"
# Get some configuration information
@@ -46,25 +47,28 @@
OPAL_CHECK_WITHDIR([lustre], [$with_lustre], [include/lustre/lustreapi.h])
AS_IF([test "$with_lustre" = "no"],
- [ompi_check_lustre_happy="no"],
- [AS_IF([test -z "$with_lustre" || test "$with_lustre" = "yes"],
- [ompi_check_lustre_dir="/usr"],
- [ompi_check_lustre_dir=$with_lustre])
-
- if test -e "$ompi_check_lustre_dir/lib64" ; then
- ompi_check_lustre_libdir="$ompi_check_lustre_dir/lib64"
- else
- ompi_check_lustre_libdir="$ompi_check_lustre_dir/lib"
- fi
-
- # Add correct -I and -L flags
- OPAL_CHECK_PACKAGE([$1], [lustre/lustreapi.h], [lustreapi], [llapi_file_create],
+ [ompi_check_lustre_happy=no])
+
+ AS_IF([test "$ompi_check_lustre_happy" != "no" ],
+ [AC_MSG_CHECKING([looking for lustre libraries and header files in])
+ AS_IF([test "$with_lustre" != "yes"],
+ [ompi_check_lustre_dir=$with_lustre
+ AC_MSG_RESULT([($ompi_check_lustre_dir)])],
+ [AC_MSG_RESULT([(default search paths)])])
+ AS_IF([test -n "$with_lustre_libdir" && \
+ test "$with_lustre_libdir" != "yes"],
+ [ompi_check_lustre_libdir=$with_lustre_libdir])
+ ])
+
+ AS_IF([test "$ompi_check_lustre_happy" != "no" ],
+ [OPAL_CHECK_PACKAGE([$1], [lustre/lustreapi.h], [lustreapi], [llapi_file_create],
[], [$ompi_check_lustre_dir], [$ompi_check_lustre_libdir],
[ompi_check_lustre_happy="yes"],
- [ompi_check_lustre_happy="no"])
+ [ompi_check_lustre_happy="no"])])
- AC_MSG_CHECKING([for required lustre data structures])
- cat > conftest.c < conftest.c <])]
+ )
+
+ CPPFLAGS="$ompi_check_psm2_$1_save_CPPFLAGS"
+ LDFLAGS="$ompi_check_psm2_$1_save_LDFLAGS"
+ LIBS="$ompi_check_psm2_$1_save_LIBS"
+
+ OPAL_SUMMARY_ADD([[Transports]],[[Intel Omnipath (PSM2)]],[$1],[$ompi_check_psm2_happy])
fi
AS_IF([test "$ompi_check_psm2_happy" = "yes"],
diff -Nru openmpi-4.0.3/config/ompi_check_ucc.m4 openmpi-4.1.4/config/ompi_check_ucc.m4
--- openmpi-4.0.3/config/ompi_check_ucc.m4 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/config/ompi_check_ucc.m4 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,73 @@
+dnl -*- shell-script -*-
+dnl
+dnl Copyright (c) 2021 Mellanox Technologies. All rights reserved.
+dnl Copyright (c) 2013-2021 Cisco Systems, Inc. All rights reserved.
+dnl Copyright (c) 2015 Research Organization for Information Science
+dnl and Technology (RIST). All rights reserved.
+dnl $COPYRIGHT$
+dnl
+dnl Additional copyrights may follow
+dnl
+dnl $HEADER$
+dnl
+
+# OMPI_CHECK_UCC(prefix, [action-if-found], [action-if-not-found])
+# --------------------------------------------------------
+# check if ucc support can be found. sets prefix_{CPPFLAGS,
+# LDFLAGS, LIBS} as needed and runs action-if-found if there is
+# support, otherwise executes action-if-not-found
+AC_DEFUN([OMPI_CHECK_UCC],[
+ OPAL_VAR_SCOPE_PUSH([ompi_check_ucc_dir ompi_check_ucc_happy CPPFLAGS_save LDFLAGS_save LIBS_save])
+
+ AC_ARG_WITH([ucc],
+ [AS_HELP_STRING([--with-ucc(=DIR)],
+ [Build UCC (Unified Collective Communication)])])
+
+ AS_IF([test "$with_ucc" != "no"],
+ [AS_IF([test -n "$with_ucc" && test "$with_ucc" != "yes"],
+ [ompi_check_ucc_dir=$with_ucc])
+
+ CPPFLAGS_save=$CPPFLAGS
+ LDFLAGS_save=$LDFLAGS
+ LIBS_save=$LIBS
+
+ OPAL_LOG_MSG([$1_CPPFLAGS : $$1_CPPFLAGS], 1)
+ OPAL_LOG_MSG([$1_LDFLAGS : $$1_LDFLAGS], 1)
+ OPAL_LOG_MSG([$1_LIBS : $$1_LIBS], 1)
+
+ OPAL_CHECK_PACKAGE([$1],
+ [ucc/api/ucc.h],
+ [ucc],
+ [ucc_init_version],
+ [],
+ [$ompi_check_ucc_dir],
+ [],
+ [ompi_check_ucc_happy="yes"],
+ [ompi_check_ucc_happy="no"])
+
+ AS_IF([test "$ompi_check_ucc_happy" = "yes"],
+ [
+ CPPFLAGS=$coll_ucc_CPPFLAGS
+ LDFLAGS=$coll_ucc_LDFLAGS
+ LIBS=$coll_ucc_LIBS
+ AC_CHECK_FUNCS(ucc_comm_free, [], [])
+ ],
+ [])
+
+ CPPFLAGS=$CPPFLAGS_save
+ LDFLAGS=$LDFLAGS_save
+ LIBS=$LIBS_save],
+ [ompi_check_ucc_happy=no])
+
+ AS_IF([test "$ompi_check_ucc_happy" = "yes" && test "$enable_progress_threads" = "yes"],
+ [AC_MSG_WARN([ucc driver does not currently support progress threads. Disabling UCC.])
+ ompi_check_ucc_happy="no"])
+
+ AS_IF([test "$ompi_check_ucc_happy" = "yes"],
+ [$2],
+ [AS_IF([test -n "$with_ucc" && test "$with_ucc" != "no"],
+ [AC_MSG_ERROR([UCC support requested but not found. Aborting])])
+ $3])
+
+ OPAL_VAR_SCOPE_POP
+])
diff -Nru openmpi-4.0.3/config/ompi_check_ucx.m4 openmpi-4.1.4/config/ompi_check_ucx.m4
--- openmpi-4.0.3/config/ompi_check_ucx.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/ompi_check_ucx.m4 2022-05-29 09:51:40.000000000 +0000
@@ -104,30 +104,61 @@
old_CPPFLAGS="$CPPFLAGS"
AS_IF([test -n "$ompi_check_ucx_dir"],
[CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"])
- AC_CHECK_DECLS([ucp_tag_send_nbr],
- [AC_DEFINE([HAVE_UCP_TAG_SEND_NBR],[1],
- [have ucp_tag_send_nbr()])], [],
- [#include ])
- AC_CHECK_DECLS([ucp_ep_flush_nb, ucp_worker_flush_nb,
- ucp_request_check_status, ucp_put_nb, ucp_get_nb],
- [], [],
- [#include ])
- AC_CHECK_DECLS([ucm_test_events],
- [], [],
- [#include ])
- AC_CHECK_DECLS([UCP_ATOMIC_POST_OP_AND,
- UCP_ATOMIC_POST_OP_OR,
- UCP_ATOMIC_POST_OP_XOR,
- UCP_ATOMIC_FETCH_OP_FAND,
- UCP_ATOMIC_FETCH_OP_FOR,
- UCP_ATOMIC_FETCH_OP_FXOR,
- UCP_PARAM_FIELD_ESTIMATED_NUM_PPN],
- [], [],
- [#include ])
- AC_CHECK_DECLS([UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS],
- [AC_DEFINE([HAVE_UCP_WORKER_ADDRESS_FLAGS], [1],
- [have worker address attribute])], [],
- [#include ])
+ # Turn off UCX version v1.8 due to issue #8321
+ AC_MSG_CHECKING([UCX version])
+ AC_PREPROC_IFELSE([AC_LANG_PROGRAM([#include
+ #if (UCP_API_MAJOR == 1) && (UCP_API_MINOR == 8)
+ #error "Invalid version"
+ #endif], [])],
+ [AC_MSG_RESULT([ok (not 1.8.x)])],
+ [AC_MSG_RESULT([bad (1.8.x)])
+ AC_MSG_WARN([UCX support skipped because version 1.8.x was found, which has a known catastrophic issue.])
+ AC_MSG_WARN([Please upgrade to UCX version 1.9 or higher.])
+ ompi_check_ucx_happy=no])
+ AS_IF([test "$ompi_check_ucx_happy" = yes],
+ [
+ AC_CHECK_DECLS([ucp_tag_send_nbr],
+ [AC_DEFINE([HAVE_UCP_TAG_SEND_NBR],[1],
+ [have ucp_tag_send_nbr()])], [],
+ [#include ])
+ AC_CHECK_DECLS([ucp_ep_flush_nb, ucp_worker_flush_nb,
+ ucp_request_check_status, ucp_put_nb, ucp_get_nb,
+ ucp_put_nbx, ucp_get_nbx, ucp_atomic_op_nbx,
+ ucp_ep_flush_nbx],
+ [], [],
+ [#include ])
+ AC_CHECK_DECLS([ucm_test_events,
+ ucm_test_external_events],
+ [], [],
+ [#include ])
+ AC_CHECK_DECLS([UCP_ATOMIC_POST_OP_AND,
+ UCP_ATOMIC_POST_OP_OR,
+ UCP_ATOMIC_POST_OP_XOR,
+ UCP_ATOMIC_FETCH_OP_FAND,
+ UCP_ATOMIC_FETCH_OP_FOR,
+ UCP_ATOMIC_FETCH_OP_FXOR,
+ UCP_PARAM_FIELD_ESTIMATED_NUM_PPN,
+ UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK,
+ UCP_OP_ATTR_FLAG_MULTI_SEND],
+ [], [],
+ [#include ])
+ AC_CHECK_DECLS([UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS],
+ [AC_DEFINE([HAVE_UCP_WORKER_ADDRESS_FLAGS], [1],
+ [have worker address attribute])], [],
+ [#include ])
+ AC_CHECK_DECLS([UCP_ATTR_FIELD_MEMORY_TYPES],
+ [AC_DEFINE([HAVE_UCP_ATTR_MEMORY_TYPES], [1],
+ [have memory types attribute])], [],
+ [#include ])
+ AC_CHECK_DECLS([ucp_tag_send_nbx,
+ ucp_tag_send_sync_nbx,
+ ucp_tag_recv_nbx],
+ [], [],
+ [#include ])
+ AC_CHECK_TYPES([ucp_request_param_t],
+ [], [],
+ [[#include ]])
+ ])
CPPFLAGS=$old_CPPFLAGS
OPAL_SUMMARY_ADD([[Transports]],[[Open UCX]],[$1],[$ompi_check_ucx_happy])])])
diff -Nru openmpi-4.0.3/config/ompi_fortran_check_preprocess_f90.m4 openmpi-4.1.4/config/ompi_fortran_check_preprocess_f90.m4
--- openmpi-4.0.3/config/ompi_fortran_check_preprocess_f90.m4 1970-01-01 00:00:00.000000000 +0000
+++ openmpi-4.1.4/config/ompi_fortran_check_preprocess_f90.m4 2022-05-29 09:51:40.000000000 +0000
@@ -0,0 +1,43 @@
+dnl -*- shell-script -*-
+dnl
+dnl Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
+dnl University Research and Technology
+dnl Corporation. All rights reserved.
+dnl Copyright (c) 2004-2005 The University of Tennessee and The University
+dnl of Tennessee Research Foundation. All rights
+dnl reserved.
+dnl Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
+dnl University of Stuttgart. All rights reserved.
+dnl Copyright (c) 2004-2005 The Regents of the University of California.
+dnl All rights reserved.
+dnl Copyright (c) 2009 Oak Ridge National Labs. All rights reserved.
+dnl Copyright (c) 2009-2020 Cisco Systems, Inc. All rights reserved.
+dnl Copyright (c) 2015 Research Organization for Information Science
+dnl and Technology (RIST). All rights reserved.
+dnl $COPYRIGHT$
+dnl
+dnl Additional copyrights may follow
+dnl
+dnl $HEADER$
+dnl
+
+AC_DEFUN([OMPI_FORTRAN_CHECK_PREPROCESS_F90], [
+ AC_MSG_CHECKING([if Fortran compilers preprocess .F90 files without additional flag])
+ cat > conftest_f.F90 << EOF
+#if 0
+#error The source file was not preprocessed
+#endif
+ program bogus
+ end program
+EOF
+ OPAL_LOG_COMMAND([$FC $FCFLAGS -c conftest_f.F90],
+ [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ AC_MSG_CHECKING([if -fpp flag works])
+ OPAL_LOG_COMMAND([$FC $FCFLAGS -fpp -c conftest_f.F90],
+ [AC_MSG_RESULT([yes])
+ FCFLAGS="$FCFLAGS -fpp"],
+ [AC_MSG_RESULT(no)
+ AC_MSG_ERROR([cannot preprocess Fortran files, Aborting])])])
+ rm -f conftest*
+])dnl
diff -Nru openmpi-4.0.3/config/ompi_setup_fc.m4 openmpi-4.1.4/config/ompi_setup_fc.m4
--- openmpi-4.0.3/config/ompi_setup_fc.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/ompi_setup_fc.m4 2022-05-29 09:51:40.000000000 +0000
@@ -13,9 +13,9 @@
dnl Copyright (c) 2007 Los Alamos National Security, LLC. All rights
dnl reserved.
dnl Copyright (c) 2007 Sun Microsystems, Inc. All rights reserved.
-dnl Copyright (c) 2009-2014 Cisco Systems, Inc. All rights reserved.
-dnl Copyright (c) 2015-2016 Research Organization for Information Science
-dnl and Technology (RIST). All rights reserved.
+dnl Copyright (c) 2009-2020 Cisco Systems, Inc. All rights reserved.
+dnl Copyright (c) 2015-2020 Research Organization for Information Science
+dnl and Technology (RIST). All rights reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -139,6 +139,11 @@
[AC_FC_SRCEXT(f)
AC_FC_SRCEXT(f90)])
+ # Check to see if we need additional compiler flags for
+ # preprocessing .F90 files.
+ AS_IF([test $ompi_fc_happy -eq 1],
+ [OMPI_FORTRAN_CHECK_PREPROCESS_F90])
+
# Per trac #1982, on OS X, we may need some esoteric linker flags
# in the wrapper compilers. However, per
# https://github.com/open-mpi/ompi/issues/259, we need to use
diff -Nru openmpi-4.0.3/config/ompi_setup_mpi_fortran.m4 openmpi-4.1.4/config/ompi_setup_mpi_fortran.m4
--- openmpi-4.0.3/config/ompi_setup_mpi_fortran.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/ompi_setup_mpi_fortran.m4 2022-05-29 09:51:40.000000000 +0000
@@ -10,12 +10,12 @@
dnl University of Stuttgart. All rights reserved.
dnl Copyright (c) 2004-2005 The Regents of the University of California.
dnl All rights reserved.
-dnl Copyright (c) 2006-2017 Cisco Systems, Inc. All rights reserved
+dnl Copyright (c) 2006-2022 Cisco Systems, Inc. All rights reserved
dnl Copyright (c) 2006-2008 Sun Microsystems, Inc. All rights reserved.
dnl Copyright (c) 2006-2007 Los Alamos National Security, LLC. All rights
dnl reserved.
dnl Copyright (c) 2009 Oak Ridge National Labs. All rights reserved.
-dnl Copyright (c) 2014-2019 Research Organization for Information Science
+dnl Copyright (c) 2014-2020 Research Organization for Information Science
dnl and Technology (RIST). All rights reserved.
dnl Copyright (c) 2016 IBM Corporation. All rights reserved.
dnl $COPYRIGHT$
@@ -373,6 +373,72 @@
OMPI_FORTRAN_F08_TYPE=$OMPI_FORTRAN_IGNORE_TKR_TYPE
])
+ # The mpi_f08 module in this version of Open MPI does not properly
+ # handle if sizeof(INTEGER) != sizeof(int) with the mpi_f08
+ # bindings. As of July 2020, this issue is fixed on main / what
+ # will eventually become Open MPI v5.0.x, but the fix causes an
+ # ABI break. Hence, we're not going to fix it here on this
+ # release branch.
+ #
+ # This is a bit of a quandry, however, because up until v4.0.4, we
+ # built the Open MPI F08 bindings by default (if the compiler
+ # supported them), even in this problematic scenario. Meaning: a
+ # user could use the exact same compilers + configure command line
+ # between v4.0.4 and v4.0.5 and suddenly -- probably unexpectedly
+ # -- not get F08 bindings. That seems a little weird.
+ #
+ # Instead, if we're in the "bad" scenario (sizeof(int) !=
+ # sizeof(INTEGER)), if the user didn't explicitly disable the
+ # mpi_f08 module, we'll print a Giant Error Message (GEM) and tell
+ # them what their options are. This may be slightly annoying for
+ # the user, but it at least it won't violate the Law of Least
+ # Surprise.
+ #
+ # Note that mpif.h and mpi module are still ok in the sizeof(int)
+ # != sizeof(INTEGER) scenario; this isssue *only* affects the use
+ # of mpi_f08's TYPE(MPI_Status).
+ #
+ # The following URLs shed some light on this decision:
+ #
+ # - https://github.com/open-mpi/ompi/pull/7921 -- in particular,
+ # the comment at
+ # https://github.com/open-mpi/ompi/pull/7921#issuecomment-656418618
+ # - https://github.com/open-mpi/ompi/pull/7922 -- in particlar,
+ # the comment at
+ # https://github.com/open-mpi/ompi/pull/7922#issuecomment-656788803
+ #
+ AC_MSG_CHECKING([if sizeof(C int) == sizeof(Fortran INTEGER)])
+ AS_IF([test $ac_cv_sizeof_int -eq $OMPI_SIZEOF_FORTRAN_INTEGER],
+ [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ AS_IF([test $OMPI_TRY_FORTRAN_BINDINGS -ge $OMPI_FORTRAN_USEMPIF08_BINDINGS],
+ [c=$ac_cv_sizeof_int
+ f=$OMPI_SIZEOF_FORTRAN_INTEGER
+ cat <]),
+ [AC_CHECK_DECL([CU_POINTER_ATTRIBUTE_SYNC_MEMOPS], [CUDA_SYNC_MEMOPS=1], [CUDA_SYNC_MEMOPS=0],
+ [#include <$opal_cuda_incdir/cuda.h>])],
[])
# If we have CUDA support, check to see if we have CUDA 6.0 or later.
diff -Nru openmpi-4.0.3/config/opal_check_ofi.m4 openmpi-4.1.4/config/opal_check_ofi.m4
--- openmpi-4.0.3/config/opal_check_ofi.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_check_ofi.m4 2022-05-29 09:51:40.000000000 +0000
@@ -1,8 +1,10 @@
dnl -*- shell-script -*-
dnl
-dnl Copyright (c) 2015-2019 Cisco Systems, Inc. All rights reserved.
+dnl Copyright (c) 2015-2020 Cisco Systems, Inc. All rights reserved.
dnl Copyright (c) 2016-2017 Los Alamos National Security, LLC. All rights
dnl reserved.
+dnl Copyright (c) 2021 Amazon.com, Inc. or its affiliates. All rights
+dnl reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -11,6 +13,45 @@
dnl
dnl
+dnl OPAL_CHECK_OFI_VERSION_GE
+dnl
+dnl Check that the OFI API version number is >= a specific value.
+dnl
+dnl $1: version number to compare, in the form of "major,minor"
+dnl (without quotes) -- i.e., a single token representing the
+dnl arguments to FI_VERSION()
+dnl $2: action if OFI API version is >= $1
+dnl $3: action if OFI API version is < $1
+AC_DEFUN([OPAL_CHECK_OFI_VERSION_GE],[
+ OPAL_VAR_SCOPE_PUSH([opal_ofi_ver_ge_save_CPPFLAGS opal_ofi_ver_ge_happy])
+
+ AC_MSG_CHECKING([if OFI API version number is >= $1])
+ opal_ofi_ver_ge_save_CPPFLAGS=$CPPFLAGS
+ CPPFLAGS=$opal_ofi_CPPFLAGS
+
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]],
+[[
+#if !defined(FI_MAJOR_VERSION)
+#error "we cannot check the version -- sad panda"
+#elif FI_VERSION_LT(FI_VERSION(FI_MAJOR_VERSION, FI_MINOR_VERSION), FI_VERSION($1))
+#error "version is too low -- nopes"
+#endif
+]])],
+ [opal_ofi_ver_ge_happy=1],
+ [opal_ofi_ver_ge_happy=0])
+
+ AS_IF([test $opal_ofi_ver_ge_happy -eq 1],
+ [AC_MSG_RESULT([yes])
+ $2],
+ [AC_MSG_RESULT([no])
+ $3])
+
+ CPPFLAGS=$opal_ofi_ver_ge_save_CPPFLAGS
+
+ OPAL_VAR_SCOPE_POP
+])dnl
+
+dnl
dnl _OPAL_CHECK_OFI
dnl --------------------------------------------------------
dnl Do the real work of checking for OFI libfabric.
@@ -50,10 +91,11 @@
OPAL_CHECK_WITHDIR([ofi-libdir], [$with_ofi_libdir],
[libfabric.*])
- OPAL_VAR_SCOPE_PUSH([opal_check_ofi_save_CPPFLAGS opal_check_ofi_save_LDFLAGS opal_check_ofi_save_LIBS])
+ OPAL_VAR_SCOPE_PUSH([opal_check_ofi_save_CPPFLAGS opal_check_ofi_save_LDFLAGS opal_check_ofi_save_LIBS opal_check_fi_info_pci])
opal_check_ofi_save_CPPFLAGS=$CPPFLAGS
opal_check_ofi_save_LDFLAGS=$LDFLAGS
opal_check_ofi_save_LIBS=$LIBS
+ opal_check_fi_info_pci=0
opal_ofi_happy=yes
AS_IF([test "$with_ofi" = "no"],
@@ -81,6 +123,30 @@
[],
[opal_ofi_happy=no])])
+ CPPFLAGS="$CPPFLAGS $opal_ofi_CPPFLAGS"
+
+ AS_IF([test $opal_ofi_happy = yes],
+ [AC_CHECK_HEADERS([rdma/fi_ext.h])
+
+ AC_CHECK_MEMBER([struct fi_info.nic],
+ [opal_check_fi_info_pci=1],
+ [opal_check_fi_info_pci=0],
+ [[#include ]])
+
+ AC_DEFINE_UNQUOTED([OPAL_OFI_PCI_DATA_AVAILABLE],
+ [$opal_check_fi_info_pci],
+ [check if pci data is available in ofi])
+
+ AC_CHECK_DECLS([PMIX_PACKAGE_RANK],
+ [],
+ [],
+ [#include ])
+
+ AC_CHECK_TYPES([struct fi_ops_mem_monitor], [], [],
+ [#ifdef HAVE_RDMA_FI_EXT_H
+#include
+#endif])])
+
CPPFLAGS=$opal_check_ofi_save_CPPFLAGS
LDFLAGS=$opal_check_ofi_save_LDFLAGS
LIBS=$opal_check_ofi_save_LIBS
diff -Nru openmpi-4.0.3/config/opal_check_pmi.m4 openmpi-4.1.4/config/opal_check_pmi.m4
--- openmpi-4.0.3/config/opal_check_pmi.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_check_pmi.m4 2022-05-29 09:51:40.000000000 +0000
@@ -14,9 +14,9 @@
# Copyright (c) 2011-2014 Los Alamos National Security, LLC. All rights
# reserved.
# Copyright (c) 2014-2019 Intel, Inc. All rights reserved.
-# Copyright (c) 2014-2018 Research Organization for Information Science
+# Copyright (c) 2014-2021 Research Organization for Information Science
# and Technology (RIST). All rights reserved.
-# Copyright (c) 2016 IBM Corporation. All rights reserved.
+# Copyright (c) 2016-2021 IBM Corporation. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
@@ -139,15 +139,6 @@
AC_DEFUN([OPAL_CHECK_PMI],[
OPAL_VAR_SCOPE_PUSH([check_pmi_install_dir check_pmi_lib_dir default_pmi_libloc slurm_pmi_found])
- AC_ARG_WITH([pmi],
- [AC_HELP_STRING([--with-pmi(=DIR)],
- [Build PMI support, optionally adding DIR to the search path (default: no)])],
- [], with_pmi=no)
-
- AC_ARG_WITH([pmi-libdir],
- [AC_HELP_STRING([--with-pmi-libdir=DIR],
- [Look for libpmi or libpmi2 in the given directory DIR, DIR/lib or DIR/lib64])])
-
check_pmi_install_dir=
check_pmi_lib_dir=
default_pmi_libloc=
@@ -209,12 +200,12 @@
opal_pmi2_rpath="$pmi2_rpath"
AC_SUBST(opal_pmi2_rpath)])])
- # check for pmix lib installed by slurm */
- slurm_pmix_found=no
- OPAL_CHECK_PMIX_LIB([$check_pmi_install_dir],
- [$check_pmi_lib_dir],
- [opal_enable_pmix=yes],
- [opal_enable_pmix=no])
+ # check for pmix lib installed by slurm unless an other PMIx library is requested
+ AS_IF([test -z "$with_pmix" || test "$with_pmix" = "yes" || test "$with_pmix" = "external"],
+ [OPAL_CHECK_PMIX_LIB([$check_pmi_install_dir],
+ [$check_pmi_lib_dir],
+ [opal_enable_pmix=yes],
+ [opal_enable_pmix=no])])
# since support was explicitly requested, then we should error out
# if we didn't find the required support
@@ -328,6 +319,7 @@
], [])],
[AC_MSG_RESULT([found])
opal_external_pmix_version=4x
+ opal_external_pmix_version_major=4
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes],
[AC_MSG_RESULT([not found])])])
@@ -342,6 +334,7 @@
], [])],
[AC_MSG_RESULT([found])
opal_external_pmix_version=3x
+ opal_external_pmix_version_major=3
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes],
[AC_MSG_RESULT([not found])])])
@@ -356,6 +349,7 @@
], [])],
[AC_MSG_RESULT([found])
opal_external_pmix_version=2x
+ opal_external_pmix_version_major=2
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes],
[AC_MSG_RESULT([not found])])])
@@ -370,6 +364,7 @@
], [])],
[AC_MSG_RESULT([found])
opal_external_pmix_version=1x
+ opal_external_pmix_version_major=1
opal_external_pmix_version_found=1
opal_external_have_pmix1=1
opal_external_pmix_happy=yes],
@@ -394,14 +389,6 @@
AC_DEFUN([OPAL_CHECK_PMIX],[
- AC_ARG_WITH([pmix],
- [AC_HELP_STRING([--with-pmix(=DIR)],
- [Build PMIx support. DIR can take one of three values: "internal", "external", or a valid directory name. "internal" (or no DIR value) forces Open MPI to use its internal copy of PMIx. "external" forces Open MPI to use an external installation of PMIx. Supplying a valid directory name also forces Open MPI to use an external installation of PMIx, and adds DIR/include, DIR/lib, and DIR/lib64 to the search path for headers and libraries. Note that Open MPI does not support --without-pmix.])])
-
- AC_ARG_WITH([pmix-libdir],
- [AC_HELP_STRING([--with-pmix-libdir=DIR],
- [Look for libpmix the given directory DIR, DIR/lib or DIR/lib64])])
-
AS_IF([test "$with_pmix" = "no"],
[AC_MSG_WARN([Open MPI requires PMIx support. It can be built])
AC_MSG_WARN([with either its own internal copy of PMIx, or with])
@@ -471,3 +458,30 @@
[OPAL_SUMMARY_ADD([[Miscellaneous]],[[PMIx support]], [opal_pmix], [External ($opal_external_pmix_version)])])],
[OPAL_SUMMARY_ADD([[Miscellaneous]], [[PMIx support]], [opal_pmix], [Internal])])
])
+
+# Check both PMI and PMIx
+#
+# OPAL_CHECK_ALL_PMI()
+# --------------------------------------------------------
+AC_DEFUN([OPAL_CHECK_ALL_PMI],
+[
+ AC_ARG_WITH([pmi],
+ [AC_HELP_STRING([--with-pmi(=DIR)],
+ [Build PMI support, optionally adding DIR to the search path (default: no)])],
+ [], with_pmi=no)
+
+ AC_ARG_WITH([pmi-libdir],
+ [AC_HELP_STRING([--with-pmi-libdir=DIR],
+ [Look for libpmi or libpmi2 in the given directory DIR, DIR/lib or DIR/lib64])])
+
+ AC_ARG_WITH([pmix],
+ [AC_HELP_STRING([--with-pmix(=DIR)],
+ [Build PMIx support. DIR can take one of three values: "internal", "external", or a valid directory name. "internal" (or no DIR value) forces Open MPI to use its internal copy of PMIx. "external" forces Open MPI to use an external installation of PMIx. Supplying a valid directory name also forces Open MPI to use an external installation of PMIx, and adds DIR/include, DIR/lib, and DIR/lib64 to the search path for headers and libraries. Note that Open MPI does not support --without-pmix.])])
+
+ AC_ARG_WITH([pmix-libdir],
+ [AC_HELP_STRING([--with-pmix-libdir=DIR],
+ [Look for libpmix the given directory DIR, DIR/lib or DIR/lib64])])
+
+ OPAL_CHECK_PMI
+ OPAL_CHECK_PMIX
+])
diff -Nru openmpi-4.0.3/config/opal_config_asm.m4 openmpi-4.1.4/config/opal_config_asm.m4
--- openmpi-4.0.3/config/opal_config_asm.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_config_asm.m4 2022-05-29 09:51:40.000000000 +0000
@@ -2,7 +2,7 @@
dnl Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
dnl University Research and Technology
dnl Corporation. All rights reserved.
-dnl Copyright (c) 2004-2018 The University of Tennessee and The University
+dnl Copyright (c) 2004-2020 The University of Tennessee and The University
dnl of Tennessee Research Foundation. All rights
dnl reserved.
dnl Copyright (c) 2004-2006 High Performance Computing Center Stuttgart,
@@ -17,6 +17,7 @@
dnl reserved.
dnl Copyright (c) 2017 Amazon.com, Inc. or its affiliates. All Rights
dnl reserved.
+dnl Copyright (c) 2021 Google, LLC. All rights reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -1022,7 +1023,7 @@
AC_ARG_ENABLE([builtin-atomics],
[AC_HELP_STRING([--enable-builtin-atomics],
- [Enable use of __sync builtin atomics (default: enabled)])])
+ [Enable use of __atomic builtin atomics (default: enabled)])])
opal_cv_asm_builtin="BUILTIN_NO"
AS_IF([test "$opal_cv_asm_builtin" = "BUILTIN_NO" && test "$enable_builtin_atomics" != "no"],
@@ -1075,6 +1076,12 @@
OPAL_ASM_ARM_VERSION=8
AC_DEFINE_UNQUOTED([OPAL_ASM_ARM_VERSION], [$OPAL_ASM_ARM_VERSION],
[What ARM assembly version to use])
+ # If built-in atomics were not specifically request then disable the
+ # use of built-in atomics. The performance of Open MPI when using the
+ # built-ins is worse than when they are not in use.
+ if test "$enable_builtin_atomics" != "yes" ; then
+ opal_cv_asm_builtin="BUILTIN_NO"
+ fi
OPAL_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)'
;;
@@ -1129,6 +1136,18 @@
AC_MSG_ERROR([Could not determine PowerPC word size: $ac_cv_sizeof_long])
fi
OPAL_GCC_INLINE_ASSIGN='"1: li %0,0" : "=&r"(ret)'
+
+ # See the following github PR and some performance numbers/discussion:
+ # https://github.com/open-mpi/ompi/pull/8649
+ AC_MSG_CHECKING([$opal_cv_asm_arch: Checking if force gcc atomics requested])
+ if test $force_gcc_atomics_ppc = 0 ; then
+ AC_MSG_RESULT([no])
+ opal_cv_asm_builtin="BUILTIN_NO"
+ else
+ AC_MSG_RESULT([Yes])
+ AC_MSG_WARN([$opal_cv_asm_arch: gcc atomics have been known to perform poorly on powerpc.])
+ fi
+
;;
# There is no current difference between s390 and s390x
# But use two different defines in case some come later
@@ -1245,7 +1264,7 @@
# Check for RDTSCP support
result=0
- AS_IF([test "$opal_cv_asm_arch" = "OPAL_X86_64" || test "$opal_cv_asm_arch" = "OPAL_IA32"],
+ AS_IF([test "$opal_cv_asm_arch" = "X86_64" || test "$opal_cv_asm_arch" = "IA32"],
[AC_MSG_CHECKING([for RDTSCP assembly support])
AC_LANG_PUSH([C])
AC_TRY_RUN([[
diff -Nru openmpi-4.0.3/config/opal_configure_options.m4 openmpi-4.1.4/config/opal_configure_options.m4
--- openmpi-4.0.3/config/opal_configure_options.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_configure_options.m4 2022-05-29 09:51:40.000000000 +0000
@@ -84,6 +84,13 @@
WANT_BRANCH_PROBABILITIES=0
fi
+AC_ARG_ENABLE([builtin-atomics-for-ppc],[AS_HELP_STRING([--enable-builtin-atomics-for-ppc],
+ [POWER architectures only: Force use of builtin atomics if available. This could either be gcc builtins or C11 atomics, depending on what is available on your system. Enabling this is known to cause poor performance in atomic operations on Power machines. (default: disabled)])])
+if test "x$enable_builtin_atomics_for_ppc" = "xyes" ; then
+force_gcc_atomics_ppc=1
+else
+force_gcc_atomics_ppc=0
+fi
#
# Memory debugging
diff -Nru openmpi-4.0.3/config/opal_functions.m4 openmpi-4.1.4/config/opal_functions.m4
--- openmpi-4.0.3/config/opal_functions.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_functions.m4 2022-05-29 09:51:40.000000000 +0000
@@ -12,7 +12,7 @@
dnl All rights reserved.
dnl Copyright (c) 2007 Sun Microsystems, Inc. All rights reserved.
dnl Copyright (c) 2009 Oak Ridge National Labs. All rights reserved.
-dnl Copyright (c) 2009-2015 Cisco Systems, Inc. All rights reserved.
+dnl Copyright (c) 2009-2020 Cisco Systems, Inc. All rights reserved.
dnl Copyright (c) 2014 Intel, Inc. All rights reserved.
dnl Copyright (c) 2015-2017 Research Organization for Information Science
dnl and Technology (RIST). All rights reserved.
@@ -94,9 +94,15 @@
# Save some stats about this build
#
-OPAL_CONFIGURE_USER="`whoami`"
-OPAL_CONFIGURE_HOST="`(hostname || uname -n) 2> /dev/null | sed 1q`"
-OPAL_CONFIGURE_DATE="`date`"
+OPAL_CONFIGURE_USER="${USER:-`whoami`}"
+OPAL_CONFIGURE_HOST="${HOSTNAME:-`(hostname || uname -n) 2> /dev/null | sed 1q`}"
+# Note: it's ok to use $srcdir here because this macro is called at
+# the very beginning of configure.ac:
+#
+# a) before $OMPI_TOP_SRCDIR is set, and
+# b) from the top-level build directory (i.e., so $srcdir actually
+# points to the top source directory)
+OPAL_CONFIGURE_DATE="`$srcdir/config/getdate.sh`"
OPAL_LIBNL_SANITY_INIT
@@ -113,14 +119,6 @@
AC_DEFUN([OPAL_BASIC_SETUP],[
#
-# Save some stats about this build
-#
-
-OPAL_CONFIGURE_USER="`whoami`"
-OPAL_CONFIGURE_HOST="`(hostname || uname -n) 2> /dev/null | sed 1q`"
-OPAL_CONFIGURE_DATE="`date`"
-
-#
# Make automake clean emacs ~ files for "make clean"
#
diff -Nru openmpi-4.0.3/config/opal_get_version.m4 openmpi-4.1.4/config/opal_get_version.m4
--- openmpi-4.0.3/config/opal_get_version.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_get_version.m4 2022-05-29 09:51:40.000000000 +0000
@@ -10,10 +10,10 @@
dnl University of Stuttgart. All rights reserved.
dnl Copyright (c) 2004-2005 The Regents of the University of California.
dnl All rights reserved.
-dnl Copyright (c) 2008-2014 Cisco Systems, Inc. All rights reserved.
+dnl Copyright (c) 2008-2020 Cisco Systems, Inc. All rights reserved.
dnl Copyright (c) 2014 Intel, Inc. All rights reserved.
-dnl Copyright (c) 2014 Research Organization for Information Science
-dnl and Technology (RIST). All rights reserved.
+dnl Copyright (c) 2014-2020 Research Organization for Information Science
+dnl and Technology (RIST). All rights reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -80,18 +80,18 @@
# If we're in a git repo and we found the git command, use
# git describe to get the repo rev
- if test -d "$srcdir/.git" && test $git_happy -eq 1; then
+ if test -r "$srcdir/.git" && test $git_happy -eq 1; then
if test "$srcdir" != "`pwd`"; then
git_save_dir=`pwd`
- cd $srcdir
+ cd "$srcdir"
$2_REPO_REV=`git describe --tags --always`
- cd $git_save_dir
+ cd "$git_save_dir"
unset git_save_dir
else
$2_REPO_REV=`git describe --tags --always`
fi
else
- $2_REPO_REV="date`date '+%Y-%m-%d'`"
+ $2_REPO_REV=`$srcdir/config/getdate.sh '+%Y-%m-%d'`
fi
fi
diff -Nru openmpi-4.0.3/config/opal_mca.m4 openmpi-4.1.4/config/opal_mca.m4
--- openmpi-4.0.3/config/opal_mca.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_mca.m4 2022-05-29 09:51:40.000000000 +0000
@@ -10,7 +10,7 @@
dnl University of Stuttgart. All rights reserved.
dnl Copyright (c) 2004-2005 The Regents of the University of California.
dnl All rights reserved.
-dnl Copyright (c) 2010-2016 Cisco Systems, Inc. All rights reserved.
+dnl Copyright (c) 2010-2021 Cisco Systems, Inc. All rights reserved.
dnl Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
dnl Copyright (c) 2018 Amazon.com, Inc. or its affiliates.
dnl All Rights reserved.
@@ -59,9 +59,9 @@
[AC_HELP_STRING([--enable-mca-no-build=LIST],
[Comma-separated list of - pairs
that will not be built. Example:
- "--enable-mca-no-build=btl-portals,oob-ud" will
- disable building the "portals" btl and the "ud"
- oob components.])])
+ "--enable-mca-no-build=btl-portals4,topo-treematch" will
+ disable building the "portals4" btl and the "treematch"
+ topo components.])])
AC_ARG_ENABLE(mca-dso,
AC_HELP_STRING([--enable-mca-dso=LIST],
[Comma-separated list of types and/or
diff -Nru openmpi-4.0.3/config/opal_setup_cc.m4 openmpi-4.1.4/config/opal_setup_cc.m4
--- openmpi-4.0.3/config/opal_setup_cc.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_setup_cc.m4 2022-05-29 09:51:40.000000000 +0000
@@ -16,6 +16,9 @@
dnl reserved.
dnl Copyright (c) 2015-2019 Research Organization for Information Science
dnl and Technology (RIST). All rights reserved.
+dnl Copyright (c) 2020 Triad National Security, LLC. All rights
+dnl reserved.
+dnl
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -297,7 +300,7 @@
opal_cv_cc_wno_long_double="yes"
if test -s conftest.err ; then
dnl Yes, it should be "ignor", in order to catch ignoring and ignore
- for i in unknown invalid ignor unrecognized ; do
+ for i in unknown invalid ignor unrecognized 'not supported'; do
$GREP -iq $i conftest.err
if test "$?" = "0" ; then
opal_cv_cc_wno_long_double="no"
diff -Nru openmpi-4.0.3/config/opal_setup_cxx.m4 openmpi-4.1.4/config/opal_setup_cxx.m4
--- openmpi-4.0.3/config/opal_setup_cxx.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_setup_cxx.m4 2022-05-29 09:51:40.000000000 +0000
@@ -16,6 +16,9 @@
dnl Copyright (c) 2008-2013 Cisco Systems, Inc. All rights reserved.
dnl Copyright (c) 2015-2016 Research Organization for Information Science
dnl and Technology (RIST). All rights reserved.
+dnl Copyright (c) 2020 Triad National Security, LLC. All rights
+dnl reserved.
+dnl
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -122,7 +125,7 @@
opal_cv_cxx_wno_long_double="yes"
if test -s conftest.err ; then
dnl Yes, it should be "ignor", in order to catch ignoring and ignore
- for i in unknown invalid ignor unrecognized ; do
+ for i in unknown invalid ignor unrecognized 'not supported'; do
$GREP -iq $i conftest.err
if test "$?" = "0" ; then
opal_cv_cxx_wno_long_double="no"
diff -Nru openmpi-4.0.3/config/opal_setup_wrappers.m4 openmpi-4.1.4/config/opal_setup_wrappers.m4
--- openmpi-4.0.3/config/opal_setup_wrappers.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/opal_setup_wrappers.m4 2022-05-29 09:51:40.000000000 +0000
@@ -17,6 +17,8 @@
dnl Copyright (c) 2016 IBM Corporation. All rights reserved.
dnl Copyright (c) 2020 Triad National Security, LLC. All rights
dnl reserved.
+dnl Copyright (c) 2021 Amazon.com, Inc. or its affiliates.
+dnl All Rights reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -264,9 +266,11 @@
esac
done
- # Now add in the RPATH args for @{libdir}, and the RUNPATH args
+ # add in the RPATH args for @{libdir}, and the RUNPATH
+ # args. The install libdir goes first, so that we prefer
+ # our libmpi over any imposter libmpi we might find.
rpath_tmp=`echo ${$2} | sed -e s/LIBDIR/@{libdir}/`
- $1="${$1} $rpath_out $rpath_tmp ${$3}"
+ $1="${$1} $rpath_tmp $rpath_out ${$3}"
])
OPAL_VAR_SCOPE_POP
])
diff -Nru openmpi-4.0.3/config/orte_check_lsf.m4 openmpi-4.1.4/config/orte_check_lsf.m4
--- openmpi-4.0.3/config/orte_check_lsf.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/orte_check_lsf.m4 2022-05-29 09:51:40.000000000 +0000
@@ -15,7 +15,7 @@
dnl and Technology (RIST). All rights reserved.
dnl Copyright (c) 2016 Los Alamos National Security, LLC. All rights
dnl reserved.
-dnl Copyright (c) 2017 IBM Corporation. All rights reserved.
+dnl Copyright (c) 2017-2021 IBM Corporation. All rights reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@@ -77,28 +77,30 @@
# on AIX it should be in libbsd
# on HP-UX it should be in libBSD
# on IRIX < 6 it should be in libsun (IRIX 6 and later it is in libc)
- OPAL_SEARCH_LIBS_COMPONENT([yp_all_nsl], [yp_all], [nsl bsd BSD sun],
- [yp_all_nsl_happy="yes"],
- [yp_all_nsl_happy="no"])
+ # on RHEL: libnsl, libnsl2 AND libnsl2-devel are required to link libnsl to get yp_all.
+ AS_IF([test "$orte_check_lsf_happy" = "yes"],
+ [OPAL_SEARCH_LIBS_COMPONENT([yp_all_nsl], [yp_all], [nsl bsd BSD sun],
+ [orte_check_lsf_happy="yes"],
+ [AC_MSG_WARN([[Could not find yp_all. Please see https://www.open-mpi.org/faq/?category=building#build-rte-lsf for more details.]])
+ orte_check_lsf_happy="no"])])
- AS_IF([test "$yp_all_nsl_happy" = "no"],
- [orte_check_lsf_happy="no"],
- [orte_check_lsf_happy="yes"])
+ # liblsf requires shm_open, shm_unlink, which are in librt
+ AS_IF([test "$orte_check_lsf_happy" = "yes"],
+ [OPAL_SEARCH_LIBS_COMPONENT([shm_open_rt], [shm_open], [rt],
+ [orte_check_lsf_happy="yes"],
+ [orte_check_lsf_happy="no"])])
# liblsb requires liblsf - using ls_info as a test for liblsf presence
- OPAL_CHECK_PACKAGE([ls_info_lsf],
- [lsf/lsf.h],
- [lsf],
- [ls_info],
- [$yp_all_nsl_LIBS],
- [$orte_check_lsf_dir],
- [$orte_check_lsf_libdir],
- [ls_info_lsf_happy="yes"],
- [ls_info_lsf_happy="no"])
-
- AS_IF([test "$ls_info_lsf_happy" = "no"],
- [orte_check_lsf_happy="no"],
- [orte_check_lsf_happy="yes"])
+ AS_IF([test "$orte_check_lsf_happy" = "yes"],
+ [OPAL_CHECK_PACKAGE([ls_info_lsf],
+ [lsf/lsf.h],
+ [lsf],
+ [ls_info],
+ [$yp_all_nsl_LIBS $shm_open_rt_LIBS],
+ [$orte_check_lsf_dir],
+ [$orte_check_lsf_libdir],
+ [orte_check_lsf_happy="yes"],
+ [orte_check_lsf_happy="no"])])
# test function of liblsb LSF package
AS_IF([test "$orte_check_lsf_happy" = "yes"],
@@ -106,20 +108,89 @@
AC_MSG_RESULT([$orte_check_lsf_dir_msg])
AC_MSG_CHECKING([for LSF library dir])
AC_MSG_RESULT([$orte_check_lsf_libdir_msg])
- AC_MSG_CHECKING([for liblsf function])
- AC_MSG_RESULT([$ls_info_lsf_happy])
- AC_MSG_CHECKING([for liblsf yp requirements])
- AC_MSG_RESULT([$yp_all_nsl_happy])
OPAL_CHECK_PACKAGE([orte_check_lsf],
[lsf/lsbatch.h],
[bat],
[lsb_launch],
- [$ls_info_lsf_LIBS $yp_all_nsl_LIBS],
+ [$ls_info_lsf_LIBS $yp_all_nsl_LIBS $shm_open_rt_LIBS],
[$orte_check_lsf_dir],
[$orte_check_lsf_libdir],
[orte_check_lsf_happy="yes"],
[orte_check_lsf_happy="no"])])
+
+ # Some versions of LSF ship with a libevent.so in their library path.
+ # This is _not_ a copy of Libevent, but something specific to their project.
+ # The Open MPI components should not need to link against LSF's libevent.so
+ # However, the presence of it in the linker search path can cause a problem
+ # if there is a system installed Libevent and Open MPI chooses the 'external'
+ # event component prior to this stage.
+ #
+ # Add a check here to see if we are in a scenario where the two are conflicting.
+ # In which case the earlier checks for successful compile of an LSF program will
+ # have failed with messages like:
+ # lib64/libevent_pthreads.so: undefined reference to `evthread_set_condition_callbacks'
+ # lib64/libevent_pthreads.so: undefined reference to `event_mm_malloc_'
+ # lib64/libevent_pthreads.so: undefined reference to `event_mm_free_'
+ # lib64/libevent_pthreads.so: undefined reference to `evthread_set_id_callback'
+ # lib64/libevent_pthreads.so: undefined reference to `evthread_set_lock_callbacks'
+ # Because it picked up -levent from LSF, but -levent_pthreads from Libevent.
+ #
+ # So look for a function that libevent_pthreads is looking for from libevent.so.
+ # If it does appears then we have the correct libevent.so, otherwise then we picked
+ # up the LSF version and a conflict has been detected.
+ # If the external libevent component used 'event_core' instead of 'event'
+ orte_check_lsf_event_conflict=na
+ # Split libs into an array, see if -levent is in that list
+ orte_check_lsf_libevent_present=`echo "$LIBS" | awk '{split([$]0, a, " "); {for (k in a) {if (a[[k]] == "-levent") {print a[[k]]}}}}' | wc -l | tr -d '[[:space:]]'`
+ # (1) LSF check must have failed above. We need to know why...
+ AS_IF([test "$orte_check_lsf_happy" = "no"],
+ [# (2) If there is a -levent in the $LIBS then that might be the problem
+ AS_IF([test "$opal_event_external_support" = "yes" && test "$orte_check_lsf_libevent_present" != "0"],
+ [AS_IF([test "$orte_check_lsf_libdir" = "" ],
+ [],
+ [LDFLAGS="$LDFLAGS -L$orte_check_lsf_libdir"])
+ # Note that we do not want to set LIBS here to include -llsf since
+ # the check is not for an LSF library, but for the conflict with
+ # LDFLAGS.
+ # (3) Check to see if the -levent is from Libevent (check for a symbol it has)
+ AC_CHECK_LIB([event], [evthread_set_condition_callbacks],
+ [AC_MSG_CHECKING([for libevent conflict])
+ AC_MSG_RESULT([No conflict found. The correct libevent.so was linked.])
+ orte_check_lsf_event_conflict=no],
+ [# (4) The libevent.so is not from Libevent. Warn the user.
+ AC_MSG_CHECKING([for libevent conflict])
+ AC_MSG_RESULT([Conflict found. Detected a libevent.so that is not from Libevent.])
+ orte_check_lsf_event_conflict=yes])
+ ],
+ [AC_MSG_CHECKING([for libevent conflict])
+ AC_MSG_RESULT([No conflict found. Internal Libevent or libevent_core is being used.])
+ orte_check_lsf_event_conflict=na])],
+ [AC_MSG_CHECKING([for libevent conflict])
+ AC_MSG_RESULT([No conflict found. LSF checks passed.])
+ orte_check_lsf_event_conflict=na])
+
+ AS_IF([test "$orte_check_lsf_event_conflict" = "yes"],
+ [AC_MSG_WARN([===================================================================])
+ AC_MSG_WARN([Conflicting libevent.so libraries detected on the system.])
+ AC_MSG_WARN([])
+ AC_MSG_WARN([A system-installed Libevent library was detected and the Open MPI])
+ AC_MSG_WARN([build system chose to use the 'external' component expecting to])
+ AC_MSG_WARN([link against the Libevent in the linker search path.])
+ AC_MSG_WARN([If LSF is present on the system and in the default search path then])
+ AC_MSG_WARN([it _may be_ the source of the conflict.])
+ AC_MSG_WARN([LSF provides a libevent.so that is not from Libevent in its])
+ AC_MSG_WARN([library path. At this point the linker is attempting to resolve])
+ AC_MSG_WARN([Libevent symbols using the LSF library because of the lack of])
+ AC_MSG_WARN([an explicit linker path pointing to the system-installed Libevent.])
+ AC_MSG_WARN([])
+ AC_MSG_WARN([To resolve this issue either (A) explicitly pass the Libevent])
+ AC_MSG_WARN([library path on the configure line (--with-libevent-libdir), or])
+ AC_MSG_WARN([(B) use the internal libevent by requesting it from configure ])
+ AC_MSG_WARN([with the --with-libevent=internal option.])
+ AC_MSG_WARN([===================================================================])
+ ])
+
CPPFLAGS="$orte_check_lsf_$1_save_CPPFLAGS"
LDFLAGS="$orte_check_lsf_$1_save_LDFLAGS"
LIBS="$orte_check_lsf_$1_save_LIBS"
diff -Nru openmpi-4.0.3/config/orte_config_files.m4 openmpi-4.1.4/config/orte_config_files.m4
--- openmpi-4.0.3/config/orte_config_files.m4 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/config/orte_config_files.m4 2022-05-29 09:51:40.000000000 +0000
@@ -7,6 +7,7 @@
# Copyright (c) 2011-2012 Los Alamos National Security, LLC. All rights
# reserved.
# Copyright (c) 2015-2018 Intel, Inc. All rights reserved.
+# Copyright (c) 2021 IBM Corporation. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
@@ -19,7 +20,7 @@
orte/Makefile
orte/include/Makefile
orte/etc/Makefile
-
+ orte/orted/orted-mpir/Makefile
orte/tools/orted/Makefile
orte/tools/orterun/Makefile
orte/tools/wrappers/Makefile
diff -Nru openmpi-4.0.3/configure openmpi-4.1.4/configure
--- openmpi-4.0.3/configure 2020-03-17 09:53:59.000000000 +0000
+++ openmpi-4.1.4/configure 2022-05-29 09:51:40.000000000 +0000
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Open MPI 4.0.3.
+# Generated by GNU Autoconf 2.69 for Open MPI 4.1.4.
#
# Report bugs to .
#
@@ -590,8 +590,8 @@
# Identity of this package.
PACKAGE_NAME='Open MPI'
PACKAGE_TARNAME='openmpi'
-PACKAGE_VERSION='4.0.3'
-PACKAGE_STRING='Open MPI 4.0.3'
+PACKAGE_VERSION='4.1.4'
+PACKAGE_STRING='Open MPI 4.1.4'
PACKAGE_BUGREPORT='http://www.open-mpi.org/community/help/'
PACKAGE_URL=''
@@ -783,6 +783,12 @@
MCA_oshmem_scoll_DSO_COMPONENTS
MCA_oshmem_scoll_STATIC_COMPONENTS
MCA_oshmem_scoll_ALL_COMPONENTS
+MCA_BUILD_oshmem_scoll_ucc_DSO_FALSE
+MCA_BUILD_oshmem_scoll_ucc_DSO_TRUE
+scoll_ucc_LIBS
+scoll_ucc_LDFLAGS
+scoll_ucc_CPPFLAGS
+scoll_ucc_CFLAGS
MCA_BUILD_oshmem_scoll_fca_DSO_FALSE
MCA_BUILD_oshmem_scoll_fca_DSO_TRUE
scoll_fca_HOME
@@ -943,6 +949,21 @@
MCA_ompi_op_DSO_COMPONENTS
MCA_ompi_op_STATIC_COMPONENTS
MCA_ompi_op_ALL_COMPONENTS
+MCA_BUILD_ompi_op_avx_DSO_FALSE
+MCA_BUILD_ompi_op_avx_DSO_TRUE
+MCA_BUILD_OP_AVX_FLAGS
+MCA_BUILD_OP_AVX2_FLAGS
+MCA_BUILD_OP_AVX512_FLAGS
+MCA_BUILD_ompi_op_has_sse3_support_FALSE
+MCA_BUILD_ompi_op_has_sse3_support_TRUE
+MCA_BUILD_ompi_op_has_sse41_support_FALSE
+MCA_BUILD_ompi_op_has_sse41_support_TRUE
+MCA_BUILD_ompi_op_has_avx_support_FALSE
+MCA_BUILD_ompi_op_has_avx_support_TRUE
+MCA_BUILD_ompi_op_has_avx2_support_FALSE
+MCA_BUILD_ompi_op_has_avx2_support_TRUE
+MCA_BUILD_ompi_op_has_avx512_support_FALSE
+MCA_BUILD_ompi_op_has_avx512_support_TRUE
MCA_ompi_mtl_DIRECT_CALL_HEADER
MCA_ompi_mtl_DSO_SUBDIRS
MCA_ompi_mtl_STATIC_SUBDIRS
@@ -1011,6 +1032,16 @@
fs_lustre_LIBS
fs_lustre_LDFLAGS
fs_lustre_CPPFLAGS
+MCA_BUILD_ompi_fs_ime_DSO_FALSE
+MCA_BUILD_ompi_fs_ime_DSO_TRUE
+fs_ime_LIBS
+fs_ime_LDFLAGS
+fs_ime_CPPFLAGS
+MCA_BUILD_ompi_fs_gpfs_DSO_FALSE
+MCA_BUILD_ompi_fs_gpfs_DSO_TRUE
+fs_gpfs_LIBS
+fs_gpfs_LDFLAGS
+fs_gpfs_CPPFLAGS
MCA_ompi_fcoll_DSO_SUBDIRS
MCA_ompi_fcoll_STATIC_SUBDIRS
MCA_ompi_fcoll_ALL_SUBDIRS
@@ -1042,6 +1073,11 @@
fbtl_pvfs2_CPPFLAGS
MCA_BUILD_ompi_fbtl_posix_DSO_FALSE
MCA_BUILD_ompi_fbtl_posix_DSO_TRUE
+MCA_BUILD_ompi_fbtl_ime_DSO_FALSE
+MCA_BUILD_ompi_fbtl_ime_DSO_TRUE
+fbtl_ime_LIBS
+fbtl_ime_LDFLAGS
+fbtl_ime_CPPFLAGS
MCA_ompi_crcp_DSO_SUBDIRS
MCA_ompi_crcp_STATIC_SUBDIRS
MCA_ompi_crcp_ALL_SUBDIRS
@@ -1058,6 +1094,8 @@
MCA_ompi_coll_DSO_COMPONENTS
MCA_ompi_coll_STATIC_COMPONENTS
MCA_ompi_coll_ALL_COMPONENTS
+MCA_BUILD_ompi_coll_ucc_DSO_FALSE
+MCA_BUILD_ompi_coll_ucc_DSO_TRUE
MCA_BUILD_ompi_coll_portals4_DSO_FALSE
MCA_BUILD_ompi_coll_portals4_DSO_TRUE
coll_portals4_LIBS
@@ -1092,8 +1130,12 @@
MCA_BUILD_ompi_coll_libnbc_DSO_TRUE
MCA_BUILD_ompi_coll_inter_DSO_FALSE
MCA_BUILD_ompi_coll_inter_DSO_TRUE
+MCA_BUILD_ompi_coll_han_DSO_FALSE
+MCA_BUILD_ompi_coll_han_DSO_TRUE
MCA_BUILD_ompi_coll_basic_DSO_FALSE
MCA_BUILD_ompi_coll_basic_DSO_TRUE
+MCA_BUILD_ompi_coll_adapt_DSO_FALSE
+MCA_BUILD_ompi_coll_adapt_DSO_TRUE
MCA_ompi_bml_DSO_SUBDIRS
MCA_ompi_bml_STATIC_SUBDIRS
MCA_ompi_bml_ALL_SUBDIRS
@@ -1177,6 +1219,8 @@
schizo_moab_LIBS
schizo_moab_LDFLAGS
schizo_moab_CPPFLAGS
+MCA_BUILD_orte_schizo_jsm_DSO_FALSE
+MCA_BUILD_orte_schizo_jsm_DSO_TRUE
MCA_BUILD_orte_schizo_alps_DSO_FALSE
MCA_BUILD_orte_schizo_alps_DSO_TRUE
schizo_alps_CPPFLAGS
@@ -1478,9 +1522,9 @@
MCA_opal_reachable_ALL_COMPONENTS
MCA_BUILD_opal_reachable_netlink_DSO_FALSE
MCA_BUILD_opal_reachable_netlink_DSO_TRUE
-opal_reachable_netlink_LIBS
-opal_reachable_netlink_LDFLAGS
-opal_reachable_netlink_CPPFLAGS
+reachable_netlink_LIBS
+reachable_netlink_LDFLAGS
+reachable_netlink_CPPFLAGS
MCA_BUILD_opal_reachable_weighted_DSO_FALSE
MCA_BUILD_opal_reachable_weighted_DSO_TRUE
MCA_opal_rcache_DSO_SUBDIRS
@@ -1884,9 +1928,6 @@
MCA_BUILD_opal_btl_usnic_DSO_TRUE
OPAL_BTL_USNIC_BUILD_UNIT_TESTS_FALSE
OPAL_BTL_USNIC_BUILD_UNIT_TESTS_TRUE
-opal_ofi_LIBS
-opal_ofi_LDFLAGS
-opal_ofi_CPPFLAGS
MCA_BUILD_opal_btl_ugni_DSO_FALSE
MCA_BUILD_opal_btl_ugni_DSO_TRUE
btl_ugni_LIBS
@@ -1926,6 +1967,8 @@
btl_openib_LDFLAGS
btl_openib_CPPFLAGS
btl_openib_CFLAGS
+MCA_BUILD_opal_btl_ofi_DSO_FALSE
+MCA_BUILD_opal_btl_ofi_DSO_TRUE
MCA_BUILD_opal_btl_self_DSO_FALSE
MCA_BUILD_opal_btl_self_DSO_TRUE
MCA_opal_backtrace_DSO_SUBDIRS
@@ -1984,6 +2027,11 @@
PKG_CONFIG
MCA_BUILD_opal_common_sm_DSO_FALSE
MCA_BUILD_opal_common_sm_DSO_TRUE
+MCA_BUILD_opal_common_ofi_DSO_FALSE
+MCA_BUILD_opal_common_ofi_DSO_TRUE
+opal_ofi_LIBS
+opal_ofi_LDFLAGS
+opal_ofi_CPPFLAGS
MCA_BUILD_opal_common_cuda_DSO_FALSE
MCA_BUILD_opal_common_cuda_DSO_TRUE
common_cuda_CPPFLAGS
@@ -2282,6 +2330,7 @@
libmca_opal_common_ugni_so_version
libmca_opal_common_sm_so_version
libmca_opal_common_cuda_so_version
+libmca_opal_common_ofi_so_version
libopen_pal_so_version
liboshmem_so_version
libopen_rte_so_version
@@ -2429,7 +2478,11 @@
PACKAGE_TARNAME
PACKAGE_NAME
PATH_SEPARATOR
-SHELL'
+SHELL
+coll_ucc_LIBS
+coll_ucc_LDFLAGS
+coll_ucc_CPPFLAGS
+coll_ucc_CFLAGS'
ac_subst_files=''
ac_user_opts='
enable_option_checking
@@ -2440,6 +2493,7 @@
enable_silent_rules
enable_coverage
enable_branch_probabilities
+enable_builtin_atomics_for_ppc
enable_mem_debug
enable_mem_profile
enable_picky
@@ -2521,6 +2575,10 @@
enable_mca_dso
enable_mca_static
enable_mca_direct
+with_libfabric
+with_libfabric_libdir
+with_ofi
+with_ofi_libdir
with_ucx
with_ucx_libdir
with_verbs
@@ -2540,10 +2598,6 @@
with_ugni
with_usnic
enable_opal_btl_usnic_unit_tests
-with_libfabric
-with_libfabric_libdir
-with_ofi
-with_ofi_libdir
with_cray_xpmem
with_xpmem
with_xpmem_libdir
@@ -2578,7 +2632,6 @@
with_alps_libdir
with_flux_pmi
with_flux_pmi_library
-enable_install_libpmix
enable_pmix_timing
with_udreg
enable_mmap_shmem
@@ -2595,7 +2648,10 @@
with_singularity
with_fca
with_hcoll
+with_ucc
+with_ime
with_pvfs2
+with_gpfs
with_lustre
enable_io_romio
with_io_romio_flags
@@ -2604,6 +2660,7 @@
with_psm_libdir
with_psm2
with_psm2_libdir
+enable_psm2_version_check
with_mxm
with_mxm_libdir
with_ompi_pmix_rte
@@ -3218,7 +3275,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures Open MPI 4.0.3 to adapt to many kinds of systems.
+\`configure' configures Open MPI 4.1.4 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -3293,7 +3350,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of Open MPI 4.0.3:";;
+ short | recursive ) echo "Configuration of Open MPI 4.1.4:";;
esac
cat <<\_ACEOF
@@ -3311,6 +3368,13 @@
--enable-branch-probabilities
enable profile arcs and branch probability
optimization
+ --enable-builtin-atomics-for-ppc
+ POWER architectures only: Force use of builtin
+ atomics if available. This could either be gcc
+ builtins or C11 atomics, depending on what is
+ available on your system. Enabling this is known to
+ cause poor performance in atomic operations on Power
+ machines. (default: disabled)
--enable-mem-debug enable memory debugging (not for general MPI users!)
(default: disabled)
--enable-mem-profile enable memory profiling (not for general MPI users!)
@@ -3413,14 +3477,14 @@
disabled)
--enable-mpi-java enable Java MPI bindings (default: disabled)
--enable-builtin-atomics
- Enable use of __sync builtin atomics (default:
+ Enable use of __atomic builtin atomics (default:
enabled)
--enable-mca-no-build=LIST
Comma-separated list of - pairs
that will not be built. Example:
- "--enable-mca-no-build=btl-portals,oob-ud" will
- disable building the "portals" btl and the "ud" oob
- components.
+ "--enable-mca-no-build=btl-portals4,topo-treematch"
+ will disable building the "portals4" btl and the
+ "treematch" topo components.
--enable-mca-dso=LIST Comma-separated list of types and/or type-component
pairs that will be built as run-time loadable
components (as opposed to statically linked in), if
@@ -3487,9 +3551,6 @@
--enable-memchecker Enable memory and buffer checks. Note that disabling
will *also* add "memchecker" to the
--enable-mca-no-build list (default: disabled)
- --enable-install-libpmix
- Enable a native PMIx library and headers in the OMPI
- install location (default: disabled)
--enable-pmix-timing Enable PMIx timing measurements (default: disabled)
--disable-mmap-shmem disable mmap shared memory support (default:
enabled)
@@ -3501,6 +3562,9 @@
--enable-mtl-portals4-flow-control
enable flow control for Portals 4 MTL (default:
disabled)
+ --disable-psm2-version-check
+ Disable PSM2 version checking. Not recommended to
+ disable. (default: enabled)
--disable-mmap-sshmem disable mmap shared memory support (default:
enabled)
--disable-sysv-sshmem disable sysv shared memory support (default:
@@ -3643,6 +3707,15 @@
(default: no)
--with-cs-fs Destination FS is case sensitive (default: set to
value of the build FS's case sensitivity)
+ --with-libfabric=DIR Deprecated synonym for --with-ofi
+ --with-libfabric-libdir=DIR
+ Deprecated synonym for --with-ofi-libdir
+ --with-ofi=DIR Specify location of OFI libfabric installation,
+ adding DIR/include to the default search location
+ for libfabric headers, and DIR/lib or DIR/lib64 to
+ the default search location for libfabric libraries.
+ Error if libfabric support cannot be found.
+ --with-ofi-libdir=DIR Search for OFI libfabric libraries in DIR
--with-ucx(=DIR) Build with Unified Communication X library support
--with-ucx-libdir=DIR Search for Unified Communication X libraries in DIR
--with-verbs(=DIR) Build verbs support, optionally adding DIR/include,
@@ -3676,15 +3749,6 @@
variable to specify alternate path.
--with-usnic If specified, cause an error if usNIC support cannot
be built
- --with-libfabric=DIR Deprecated synonym for --with-ofi
- --with-libfabric-libdir=DIR
- Deprecated synonym for --with-ofi-libdir
- --with-ofi=DIR Specify location of OFI libfabric installation,
- adding DIR/include to the default search location
- for libfabric headers, and DIR/lib or DIR/lib64 to
- the default search location for libfabric libraries.
- Error if libfabric support cannot be found.
- --with-ofi-libdir=DIR Search for OFI libfabric libraries in DIR
--with-cray-xpmem(=yes/no)
Build Cray XPMEM support(default: auto)
--with-xpmem(=DIR) Build with XPMEM kernel module support, searching
@@ -3772,9 +3836,16 @@
support, optionally adding DIR/include and DIR/lib
or DIR/lib64 to the search path for headers and
libraries
+ --with-ucc(=DIR) Build UCC (Unified Collective Communication)
+ --with-ime(=DIR) Build IME support, optionally adding DIR/include,
+ DIR/lib, and DIR/lib64 to the search path for
+ headers and libraries
--with-pvfs2(=DIR) Build Pvfs2 support, optionally adding DIR/include,
DIR/lib, and DIR/lib64 to the search path for
headers and libraries
+ --with-gpfs(=DIR) Build Gpfs support, optionally adding DIR/include,
+ DIR/lib, and DIR/lib64 to the search path for
+ headers and libraries
--with-lustre(=DIR) Build Lustre support, optionally adding DIR/include,
DIR/lib, and DIR/lib64 to the search path for
headers and libraries
@@ -3966,7 +4037,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-Open MPI configure 4.0.3
+Open MPI configure 4.1.4
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -4376,6 +4447,52 @@
} # ac_fn_c_check_member
+# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
+# ---------------------------------------------
+# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
+# accordingly.
+ac_fn_c_check_decl ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ as_decl_name=`echo $2|sed 's/ *(.*//'`
+ as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
+$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+#ifndef $as_decl_name
+#ifdef __cplusplus
+ (void) $as_decl_use;
+#else
+ (void) $as_decl_name;
+#endif
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_decl
+
# ac_fn_c_check_func LINENO FUNC VAR
# ----------------------------------
# Tests whether FUNC exists, setting the cache variable VAR accordingly
@@ -5101,7 +5218,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by Open MPI $as_me 4.0.3, which was
+It was created by Open MPI $as_me 4.1.4, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -5598,7 +5715,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:5601: Loading environment file $with_platform, with contents below" >&5
+ echo "configure:5718: Loading environment file $with_platform, with contents below" >&5
else
echo Loading environment file $with_platform, with contents below >&5
fi
@@ -5631,7 +5748,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:5634: Loaded platform arguments for $platform_loaded" >&5
+ echo "configure:5751: Loaded platform arguments for $platform_loaded" >&5
else
echo Loaded platform arguments for $platform_loaded >&5
fi
@@ -5827,7 +5944,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:5830: === ${1}" >&5
+ echo "configure:5947: === ${1}" >&5
else
echo === ${1} >&5
fi
@@ -5843,7 +5960,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:5846: *** ${1}" >&5
+ echo "configure:5963: *** ${1}" >&5
else
echo *** ${1} >&5
fi
@@ -5859,7 +5976,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:5862: +++ ${1}" >&5
+ echo "configure:5979: +++ ${1}" >&5
else
echo +++ ${1} >&5
fi
@@ -5874,7 +5991,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:5877: --- ${1}" >&5
+ echo "configure:5994: --- ${1}" >&5
else
echo --- ${1} >&5
fi
@@ -5889,7 +6006,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:5892: --- ${1}" >&5
+ echo "configure:6009: --- ${1}" >&5
else
echo --- ${1} >&5
fi
@@ -5900,9 +6017,15 @@
# Save some stats about this build
#
-OPAL_CONFIGURE_USER="`whoami`"
-OPAL_CONFIGURE_HOST="`(hostname || uname -n) 2> /dev/null | sed 1q`"
-OPAL_CONFIGURE_DATE="`date`"
+OPAL_CONFIGURE_USER="${USER:-`whoami`}"
+OPAL_CONFIGURE_HOST="${HOSTNAME:-`(hostname || uname -n) 2> /dev/null | sed 1q`}"
+# Note: it's ok to use $srcdir here because this macro is called at
+# the very beginning of configure.ac:
+#
+# a) before $OMPI_TOP_SRCDIR is set, and
+# b) from the top-level build directory (i.e., so $srcdir actually
+# points to the top source directory)
+OPAL_CONFIGURE_DATE="`$srcdir/config/getdate.sh`"
opal_libnl_version=0
@@ -8005,7 +8128,7 @@
# Define the identity of the package.
PACKAGE='openmpi'
- VERSION='4.0.3'
+ VERSION='4.1.4'
# Some tools Automake needs.
@@ -8382,6 +8505,62 @@
CONFIGURE_DEPENDENCIES='$(top_srcdir)/VERSION'
+# Sanity checks
+
+
+ompi_dir=`pwd`
+
+ dir="$ompi_dir"
+ article="a"
+ label="build tree"
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking directory of $label" >&5
+$as_echo_n "checking directory of $label... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dir" >&5
+$as_echo "$dir" >&6; }
+ if test -n "`echo $dir | grep ' '`"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This version of Open MPI does not support $article $label" >&5
+$as_echo "$as_me: WARNING: This version of Open MPI does not support $article $label" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: with a path that contains spaces" >&5
+$as_echo "$as_me: WARNING: with a path that contains spaces" >&2;}
+ as_fn_error $? "Cannot continue." "$LINENO" 5
+fi
+
+
+ dir="$srcdir"
+ article="a"
+ label="source tree"
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking directory of $label" >&5
+$as_echo_n "checking directory of $label... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dir" >&5
+$as_echo "$dir" >&6; }
+ if test -n "`echo $dir | grep ' '`"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This version of Open MPI does not support $article $label" >&5
+$as_echo "$as_me: WARNING: This version of Open MPI does not support $article $label" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: with a path that contains spaces" >&5
+$as_echo "$as_me: WARNING: with a path that contains spaces" >&2;}
+ as_fn_error $? "Cannot continue." "$LINENO" 5
+fi
+
+
+ dir="$prefix"
+ article="a"
+ label="prefix"
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking directory of $label" >&5
+$as_echo_n "checking directory of $label... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dir" >&5
+$as_echo "$dir" >&6; }
+ if test -n "`echo $dir | grep ' '`"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This version of Open MPI does not support $article $label" >&5
+$as_echo "$as_me: WARNING: This version of Open MPI does not support $article $label" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: with a path that contains spaces" >&5
+$as_echo "$as_me: WARNING: with a path that contains spaces" >&2;}
+ as_fn_error $? "Cannot continue." "$LINENO" 5
+fi
+
+
opal_show_subtitle "Checking versions"
# Get the version of OMPI that we are installing
@@ -8427,18 +8606,18 @@
# If we're in a git repo and we found the git command, use
# git describe to get the repo rev
- if test -d "$srcdir/.git" && test $git_happy -eq 1; then
+ if test -r "$srcdir/.git" && test $git_happy -eq 1; then
if test "$srcdir" != "`pwd`"; then
git_save_dir=`pwd`
- cd $srcdir
+ cd "$srcdir"
OMPI_REPO_REV=`git describe --tags --always`
- cd $git_save_dir
+ cd "$git_save_dir"
unset git_save_dir
else
OMPI_REPO_REV=`git describe --tags --always`
fi
else
- OMPI_REPO_REV="date`date '+%Y-%m-%d'`"
+ OMPI_REPO_REV=`$srcdir/config/getdate.sh '+%Y-%m-%d'`
fi
fi
@@ -8555,18 +8734,18 @@
# If we're in a git repo and we found the git command, use
# git describe to get the repo rev
- if test -d "$srcdir/.git" && test $git_happy -eq 1; then
+ if test -r "$srcdir/.git" && test $git_happy -eq 1; then
if test "$srcdir" != "`pwd`"; then
git_save_dir=`pwd`
- cd $srcdir
+ cd "$srcdir"
ORTE_REPO_REV=`git describe --tags --always`
- cd $git_save_dir
+ cd "$git_save_dir"
unset git_save_dir
else
ORTE_REPO_REV=`git describe --tags --always`
fi
else
- ORTE_REPO_REV="date`date '+%Y-%m-%d'`"
+ ORTE_REPO_REV=`$srcdir/config/getdate.sh '+%Y-%m-%d'`
fi
fi
@@ -8683,18 +8862,18 @@
# If we're in a git repo and we found the git command, use
# git describe to get the repo rev
- if test -d "$srcdir/.git" && test $git_happy -eq 1; then
+ if test -r "$srcdir/.git" && test $git_happy -eq 1; then
if test "$srcdir" != "`pwd`"; then
git_save_dir=`pwd`
- cd $srcdir
+ cd "$srcdir"
OSHMEM_REPO_REV=`git describe --tags --always`
- cd $git_save_dir
+ cd "$git_save_dir"
unset git_save_dir
else
OSHMEM_REPO_REV=`git describe --tags --always`
fi
else
- OSHMEM_REPO_REV="date`date '+%Y-%m-%d'`"
+ OSHMEM_REPO_REV=`$srcdir/config/getdate.sh '+%Y-%m-%d'`
fi
fi
@@ -8811,18 +8990,18 @@
# If we're in a git repo and we found the git command, use
# git describe to get the repo rev
- if test -d "$srcdir/.git" && test $git_happy -eq 1; then
+ if test -r "$srcdir/.git" && test $git_happy -eq 1; then
if test "$srcdir" != "`pwd`"; then
git_save_dir=`pwd`
- cd $srcdir
+ cd "$srcdir"
OPAL_REPO_REV=`git describe --tags --always`
- cd $git_save_dir
+ cd "$git_save_dir"
unset git_save_dir
else
OPAL_REPO_REV=`git describe --tags --always`
fi
else
- OPAL_REPO_REV="date`date '+%Y-%m-%d'`"
+ OPAL_REPO_REV=`$srcdir/config/getdate.sh '+%Y-%m-%d'`
fi
fi
@@ -8926,6 +9105,7 @@
+
#
# Get the versions of the autotools that were used to bootstrap us
# (helpful for debugging reports)
@@ -8981,14 +9161,6 @@
#
-# Save some stats about this build
-#
-
-OPAL_CONFIGURE_USER="`whoami`"
-OPAL_CONFIGURE_HOST="`(hostname || uname -n) 2> /dev/null | sed 1q`"
-OPAL_CONFIGURE_DATE="`date`"
-
-#
# Make automake clean emacs ~ files for "make clean"
#
@@ -9248,6 +9420,16 @@
WANT_BRANCH_PROBABILITIES=0
fi
+# Check whether --enable-builtin-atomics-for-ppc was given.
+if test "${enable_builtin_atomics_for_ppc+set}" = set; then :
+ enableval=$enable_builtin_atomics_for_ppc;
+fi
+
+if test "x$enable_builtin_atomics_for_ppc" = "xyes" ; then
+force_gcc_atomics_ppc=1
+else
+force_gcc_atomics_ppc=0
+fi
#
# Memory debugging
@@ -9678,7 +9860,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:9681: Loading cross-compile file $with_cross, with contents below" >&5
+ echo "configure:9863: Loading cross-compile file $with_cross, with contents below" >&5
else
echo Loading cross-compile file $with_cross, with contents below >&5
fi
@@ -10798,14 +10980,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:10801: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lz $LIBS $opal_zlib_LIBS" >&5
+echo "configure:10983: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lz $LIBS $opal_zlib_LIBS" >&5
$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lz $LIBS $opal_zlib_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:10808: \$? = $opal_status" >&5
+ echo "configure:10990: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -11523,14 +11705,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:11526: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lz $LIBS $opal_zlib_LIBS" >&5
+echo "configure:11708: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lz $LIBS $opal_zlib_LIBS" >&5
$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lz $LIBS $opal_zlib_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:11533: \$? = $opal_status" >&5
+ echo "configure:11715: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -12330,53 +12512,7 @@
# If we have CUDA support, check to see if we have support for SYNC_MEMOPS
# which was first introduced in CUDA 6.0.
if test "$opal_check_cuda_happy"="yes"; then :
-
-# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
-# ---------------------------------------------
-# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
-# accordingly.
-ac_fn_c_check_decl ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- as_decl_name=`echo $2|sed 's/ *(.*//'`
- as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
-$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
-if eval \${$3+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-int
-main ()
-{
-#ifndef $as_decl_name
-#ifdef __cplusplus
- (void) $as_decl_use;
-#else
- (void) $as_decl_name;
-#endif
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_decl
-ac_fn_c_check_decl "$LINENO" "CU_POINTER_ATTRIBUTE_SYNC_MEMOPS" "ac_cv_have_decl_CU_POINTER_ATTRIBUTE_SYNC_MEMOPS" "#include <$opal_cuda_incdir/cuda.h>
+ ac_fn_c_check_decl "$LINENO" "CU_POINTER_ATTRIBUTE_SYNC_MEMOPS" "ac_cv_have_decl_CU_POINTER_ATTRIBUTE_SYNC_MEMOPS" "#include <$opal_cuda_incdir/cuda.h>
"
if test "x$ac_cv_have_decl_CU_POINTER_ATTRIBUTE_SYNC_MEMOPS" = xyes; then :
CUDA_SYNC_MEMOPS=1
@@ -12574,6 +12710,37 @@
+# Check whether --with-pmi was given.
+if test "${with_pmi+set}" = set; then :
+ withval=$with_pmi;
+else
+ with_pmi=no
+fi
+
+
+
+# Check whether --with-pmi-libdir was given.
+if test "${with_pmi_libdir+set}" = set; then :
+ withval=$with_pmi_libdir;
+fi
+
+
+
+# Check whether --with-pmix was given.
+if test "${with_pmix+set}" = set; then :
+ withval=$with_pmix;
+fi
+
+
+
+# Check whether --with-pmix-libdir was given.
+if test "${with_pmix_libdir+set}" = set; then :
+ withval=$with_pmix_libdir;
+fi
+
+
+
+
# Is the private index set? If not, set it.
if test "x$opal_scope_index" = "x"; then
@@ -12611,22 +12778,6 @@
opal_scope_index=`expr $opal_scope_index + 1`
-
-# Check whether --with-pmi was given.
-if test "${with_pmi+set}" = set; then :
- withval=$with_pmi;
-else
- with_pmi=no
-fi
-
-
-
-# Check whether --with-pmi-libdir was given.
-if test "${with_pmi_libdir+set}" = set; then :
- withval=$with_pmi_libdir;
-fi
-
-
check_pmi_install_dir=
check_pmi_lib_dir=
default_pmi_libloc=
@@ -13314,8 +13465,8 @@
fi
fi
- # check for pmix lib installed by slurm */
- slurm_pmix_found=no
+ # check for pmix lib installed by slurm unless an other PMIx library is requested
+ if test -z "$with_pmix" || test "$with_pmix" = "yes" || test "$with_pmix" = "external"; then :
@@ -13494,6 +13645,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
$as_echo "found" >&6; }
opal_external_pmix_version=4x
+ opal_external_pmix_version_major=4
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes
else
@@ -13526,6 +13678,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
$as_echo "found" >&6; }
opal_external_pmix_version=3x
+ opal_external_pmix_version_major=3
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes
else
@@ -13558,6 +13711,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
$as_echo "found" >&6; }
opal_external_pmix_version=2x
+ opal_external_pmix_version_major=2
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes
else
@@ -13590,6 +13744,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
$as_echo "found" >&6; }
opal_external_pmix_version=1x
+ opal_external_pmix_version_major=1
opal_external_pmix_version_found=1
opal_external_have_pmix1=1
opal_external_pmix_happy=yes
@@ -13643,6 +13798,7 @@
done
+fi
# since support was explicitly requested, then we should error out
# if we didn't find the required support
@@ -13701,20 +13857,6 @@
-
-# Check whether --with-pmix was given.
-if test "${with_pmix+set}" = set; then :
- withval=$with_pmix;
-fi
-
-
-
-# Check whether --with-pmix-libdir was given.
-if test "${with_pmix_libdir+set}" = set; then :
- withval=$with_pmix_libdir;
-fi
-
-
if test "$with_pmix" = "no"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI requires PMIx support. It can be built" >&5
$as_echo "$as_me: WARNING: Open MPI requires PMIx support. It can be built" >&2;}
@@ -13929,6 +14071,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
$as_echo "found" >&6; }
opal_external_pmix_version=4x
+ opal_external_pmix_version_major=4
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes
else
@@ -13961,6 +14104,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
$as_echo "found" >&6; }
opal_external_pmix_version=3x
+ opal_external_pmix_version_major=3
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes
else
@@ -13993,6 +14137,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
$as_echo "found" >&6; }
opal_external_pmix_version=2x
+ opal_external_pmix_version_major=2
opal_external_pmix_version_found=1
opal_external_pmix_happy=yes
else
@@ -14025,6 +14170,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
$as_echo "found" >&6; }
opal_external_pmix_version=1x
+ opal_external_pmix_version_major=1
opal_external_pmix_version_found=1
opal_external_have_pmix1=1
opal_external_pmix_happy=yes
@@ -14367,6 +14513,7 @@
fi
+
opal_show_subtitle "ORTE Configuration options"
#
@@ -19689,7 +19836,7 @@
opal_cv_cc_wno_long_double="yes"
if test -s conftest.err ; then
- for i in unknown invalid ignor unrecognized ; do
+ for i in unknown invalid ignor unrecognized 'not supported'; do
$GREP -iq $i conftest.err
if test "$?" = "0" ; then
opal_cv_cc_wno_long_double="no"
@@ -20493,14 +20640,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:20496: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:20643: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:20503: \$? = $opal_status" >&5
+ echo "configure:20650: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -20536,14 +20683,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:20539: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:20686: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:20546: \$? = $opal_status" >&5
+ echo "configure:20693: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -20579,14 +20726,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:20582: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:20729: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:20589: \$? = $opal_status" >&5
+ echo "configure:20736: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -20608,7 +20755,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:20611: the failed program was:" >&5
+ echo "configure:20758: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -20636,7 +20783,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:20639: the failed program was:" >&5
+ echo "configure:20786: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -20667,14 +20814,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:20670: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:20817: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:20677: \$? = $opal_status" >&5
+ echo "configure:20824: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -20696,7 +20843,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:20699: the failed program was:" >&5
+ echo "configure:20846: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -20740,14 +20887,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:20743: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:20890: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:20750: \$? = $opal_status" >&5
+ echo "configure:20897: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -20769,7 +20916,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:20772: the failed program was:" >&5
+ echo "configure:20919: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -20806,7 +20953,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:20809: the failed program was:" >&5
+ echo "configure:20956: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -20837,14 +20984,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:20840: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:20987: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:20847: \$? = $opal_status" >&5
+ echo "configure:20994: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -20880,14 +21027,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:20883: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:21030: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:20890: \$? = $opal_status" >&5
+ echo "configure:21037: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -20909,7 +21056,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:20912: the failed program was:" >&5
+ echo "configure:21059: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -20937,7 +21084,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:20940: the failed program was:" >&5
+ echo "configure:21087: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -20968,14 +21115,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:20971: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:21118: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:20978: \$? = $opal_status" >&5
+ echo "configure:21125: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -20997,7 +21144,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:21000: the failed program was:" >&5
+ echo "configure:21147: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -21041,14 +21188,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:21044: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:21191: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:21051: \$? = $opal_status" >&5
+ echo "configure:21198: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -21070,7 +21217,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:21073: the failed program was:" >&5
+ echo "configure:21220: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -21123,14 +21270,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:21126: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:21273: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:21133: \$? = $opal_status" >&5
+ echo "configure:21280: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -21166,14 +21313,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:21169: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:21316: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:21176: \$? = $opal_status" >&5
+ echo "configure:21323: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -21195,7 +21342,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:21198: the failed program was:" >&5
+ echo "configure:21345: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -21223,7 +21370,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:21226: the failed program was:" >&5
+ echo "configure:21373: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -21254,14 +21401,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:21257: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:21404: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:21264: \$? = $opal_status" >&5
+ echo "configure:21411: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -21283,7 +21430,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:21286: the failed program was:" >&5
+ echo "configure:21433: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -21327,14 +21474,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:21330: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
+echo "configure:21477: $opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.c -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:21337: \$? = $opal_status" >&5
+ echo "configure:21484: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -21356,7 +21503,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:21359: the failed program was:" >&5
+ echo "configure:21506: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -22504,6 +22651,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -22578,6 +22726,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -22652,6 +22801,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -22726,6 +22876,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -22800,6 +22951,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -22875,6 +23027,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -22950,6 +23103,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23024,6 +23178,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23098,6 +23253,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23172,6 +23328,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23246,6 +23403,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23321,6 +23479,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23396,6 +23555,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23470,6 +23630,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23545,6 +23706,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23621,6 +23783,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23701,6 +23864,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23777,6 +23941,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23853,6 +24018,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -23929,6 +24095,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -24003,6 +24170,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -24071,14 +24239,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:24074: $CC $CFLAGS -c conftest_weak.c" >&5
+echo "configure:24242: $CC $CFLAGS -c conftest_weak.c" >&5
$CC $CFLAGS -c conftest_weak.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:24081: \$? = $opal_status" >&5
+ echo "configure:24249: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -24088,14 +24256,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:24091: $CC $CFLAGS conftest.c conftest_weak.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:24259: $CC $CFLAGS conftest.c conftest_weak.o -o conftest $LDFLAGS $LIBS" >&5
$CC $CFLAGS conftest.c conftest_weak.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:24098: \$? = $opal_status" >&5
+ echo "configure:24266: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -24168,14 +24336,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:24171: $CC $CFLAGS -c conftest_weak.c" >&5
+echo "configure:24339: $CC $CFLAGS -c conftest_weak.c" >&5
$CC $CFLAGS -c conftest_weak.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:24178: \$? = $opal_status" >&5
+ echo "configure:24346: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -24185,14 +24353,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:24188: $CC $CFLAGS conftest.c conftest_weak.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:24356: $CC $CFLAGS conftest.c conftest_weak.o -o conftest $LDFLAGS $LIBS" >&5
$CC $CFLAGS conftest.c conftest_weak.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:24195: \$? = $opal_status" >&5
+ echo "configure:24363: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -26018,7 +26186,7 @@
opal_cv_cxx_wno_long_double="yes"
if test -s conftest.err ; then
- for i in unknown invalid ignor unrecognized ; do
+ for i in unknown invalid ignor unrecognized 'not supported'; do
$GREP -iq $i conftest.err
if test "$?" = "0" ; then
opal_cv_cxx_wno_long_double="no"
@@ -26324,14 +26492,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:26327: $CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext" >&5
+echo "configure:26495: $CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext" >&5
$CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:26334: \$? = $opal_status" >&5
+ echo "configure:26502: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -26572,6 +26740,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -27999,14 +28168,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:28002: $CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext" >&5
+echo "configure:28171: $CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext" >&5
$CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:28009: \$? = $opal_status" >&5
+ echo "configure:28178: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -28247,6 +28416,7 @@
FILE *f=fopen("conftestval", "w");
if (!f) exit(1);
diff = ((char *)&p->x) - ((char *)&p->c);
+ free(p);
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
;
@@ -29531,23 +29701,23 @@
EOF
ompi_template_failed=
-echo configure:29534: $CXX $CXXFLAGS -c conftest1.C >&5
+echo configure:29704: $CXX $CXXFLAGS -c conftest1.C >&5
$CXX $CXXFLAGS -c conftest1.C >&5 2>&5
if test ! -f conftest1.o ; then
ompi_cv_cxx_template_repository="templates not supported"
- echo configure:29538: here is the program that failed: >&5
+ echo configure:29708: here is the program that failed: >&5
cat conftest1.C >&5
- echo configure:29540: here is conftest.h: >&5
+ echo configure:29710: here is conftest.h: >&5
cat conftest.h >&5
ompi_template_failed=1
else
- echo configure:29544: $CXX $CXXFLAGS -c conftest2.C >&5
+ echo configure:29714: $CXX $CXXFLAGS -c conftest2.C >&5
$CXX $CXXFLAGS -c conftest2.C >&5 2>&5
if test ! -f conftest2.o ; then
ompi_cv_cxx_template_repository=
- echo configure:29548: here is the program that failed: >&5
+ echo configure:29718: here is the program that failed: >&5
cat conftest2.C >&5
- echo configure:29550: here is conftest.h: >&5
+ echo configure:29720: here is conftest.h: >&5
cat conftest.h >&5
else
rm -rf conftest*
@@ -29662,14 +29832,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:29665: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:29835: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:29672: \$? = $opal_status" >&5
+ echo "configure:29842: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -29705,14 +29875,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:29708: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:29878: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:29715: \$? = $opal_status" >&5
+ echo "configure:29885: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -29748,14 +29918,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:29751: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:29921: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:29758: \$? = $opal_status" >&5
+ echo "configure:29928: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -29777,7 +29947,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:29780: the failed program was:" >&5
+ echo "configure:29950: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -29805,7 +29975,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:29808: the failed program was:" >&5
+ echo "configure:29978: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -29836,14 +30006,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:29839: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30009: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:29846: \$? = $opal_status" >&5
+ echo "configure:30016: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -29865,7 +30035,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:29868: the failed program was:" >&5
+ echo "configure:30038: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -29909,14 +30079,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:29912: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30082: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:29919: \$? = $opal_status" >&5
+ echo "configure:30089: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -29938,7 +30108,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:29941: the failed program was:" >&5
+ echo "configure:30111: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -29975,7 +30145,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:29978: the failed program was:" >&5
+ echo "configure:30148: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -30006,14 +30176,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:30009: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30179: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:30016: \$? = $opal_status" >&5
+ echo "configure:30186: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -30049,14 +30219,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:30052: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30222: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:30059: \$? = $opal_status" >&5
+ echo "configure:30229: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -30078,7 +30248,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:30081: the failed program was:" >&5
+ echo "configure:30251: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -30106,7 +30276,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:30109: the failed program was:" >&5
+ echo "configure:30279: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -30137,14 +30307,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:30140: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30310: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:30147: \$? = $opal_status" >&5
+ echo "configure:30317: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -30166,7 +30336,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:30169: the failed program was:" >&5
+ echo "configure:30339: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -30210,14 +30380,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:30213: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30383: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:30220: \$? = $opal_status" >&5
+ echo "configure:30390: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -30239,7 +30409,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:30242: the failed program was:" >&5
+ echo "configure:30412: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -30292,14 +30462,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:30295: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30465: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:30302: \$? = $opal_status" >&5
+ echo "configure:30472: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -30335,14 +30505,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:30338: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30508: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:30345: \$? = $opal_status" >&5
+ echo "configure:30515: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -30364,7 +30534,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:30367: the failed program was:" >&5
+ echo "configure:30537: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -30392,7 +30562,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:30395: the failed program was:" >&5
+ echo "configure:30565: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -30423,14 +30593,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:30426: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30596: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:30433: \$? = $opal_status" >&5
+ echo "configure:30603: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -30452,7 +30622,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:30455: the failed program was:" >&5
+ echo "configure:30625: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -30496,14 +30666,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:30499: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
+echo "configure:30669: $opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT}" >&5
$opal_compiler $opal_flags -c conftest.cc -o conftest.${OBJEXT} 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:30506: \$? = $opal_status" >&5
+ echo "configure:30676: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -30525,7 +30695,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:30528: the failed program was:" >&5
+ echo "configure:30698: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -39317,14 +39487,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:39320: $CC $CFLAGS -c conftest.c -o conftest.$OBJEXT" >&5
+echo "configure:39490: $CC $CFLAGS -c conftest.c -o conftest.$OBJEXT" >&5
$CC $CFLAGS -c conftest.c -o conftest.$OBJEXT 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:39327: \$? = $opal_status" >&5
+ echo "configure:39497: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -39337,7 +39507,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:39340: the failed program was:" >&5
+ echo "configure:39510: the failed program was:" >&5
else
echo the failed program was: >&5
fi
@@ -40597,6 +40767,12 @@
#define OPAL_ASM_ARM_VERSION $OPAL_ASM_ARM_VERSION
_ACEOF
+ # If built-in atomics were not specifically request then disable the
+ # use of built-in atomics. The performance of Open MPI when using the
+ # built-ins is worse than when they are not in use.
+ if test "$enable_builtin_atomics" != "yes" ; then
+ opal_cv_asm_builtin="BUILTIN_NO"
+ fi
OPAL_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)'
;;
@@ -41715,6 +41891,22 @@
as_fn_error $? "Could not determine PowerPC word size: $ac_cv_sizeof_long" "$LINENO" 5
fi
OPAL_GCC_INLINE_ASSIGN='"1: li %0,0" : "=&r"(ret)'
+
+ # See the following github PR and some performance numbers/discussion:
+ # https://github.com/open-mpi/ompi/pull/8649
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking $opal_cv_asm_arch: Checking if force gcc atomics requested" >&5
+$as_echo_n "checking $opal_cv_asm_arch: Checking if force gcc atomics requested... " >&6; }
+ if test $force_gcc_atomics_ppc = 0 ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ opal_cv_asm_builtin="BUILTIN_NO"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: Yes" >&5
+$as_echo "Yes" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $opal_cv_asm_arch: gcc atomics have been known to perform poorly on powerpc." >&5
+$as_echo "$as_me: WARNING: $opal_cv_asm_arch: gcc atomics have been known to perform poorly on powerpc." >&2;}
+ fi
+
;;
# There is no current difference between s390 and s390x
# But use two different defines in case some come later
@@ -43368,7 +43560,7 @@
# Check for RDTSCP support
result=0
- if test "$opal_cv_asm_arch" = "OPAL_X86_64" || test "$opal_cv_asm_arch" = "OPAL_IA32"; then :
+ if test "$opal_cv_asm_arch" = "X86_64" || test "$opal_cv_asm_arch" = "IA32"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for RDTSCP assembly support" >&5
$as_echo_n "checking for RDTSCP assembly support... " >&6; }
ac_ext=c
@@ -44226,6 +44418,75 @@
fi
+ # Check to see if we need additional compiler flags for
+ # preprocessing .F90 files.
+ if test $ompi_fc_happy -eq 1; then :
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if Fortran compilers preprocess .F90 files without additional flag" >&5
+$as_echo_n "checking if Fortran compilers preprocess .F90 files without additional flag... " >&6; }
+ cat > conftest_f.F90 << EOF
+#if 0
+#error The source file was not preprocessed
+#endif
+ program bogus
+ end program
+EOF
+
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:44438: $FC $FCFLAGS -c conftest_f.F90" >&5
+$FC $FCFLAGS -c conftest_f.F90 1>&5 2>&1
+opal_status=$?
+
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:44445: \$? = $opal_status" >&5
+else
+ echo \$? = $opal_status >&5
+fi
+if test "$opal_status" = "0"; then
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if -fpp flag works" >&5
+$as_echo_n "checking if -fpp flag works... " >&6; }
+
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:44463: $FC $FCFLAGS -fpp -c conftest_f.F90" >&5
+$FC $FCFLAGS -fpp -c conftest_f.F90 1>&5 2>&1
+opal_status=$?
+
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:44470: \$? = $opal_status" >&5
+else
+ echo \$? = $opal_status >&5
+fi
+if test "$opal_status" = "0"; then
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ FCFLAGS="$FCFLAGS -fpp"
+else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ as_fn_error $? "cannot preprocess Fortran files, Aborting" "$LINENO" 5
+fi
+fi
+ rm -f conftest*
+
+fi
+
# Per trac #1982, on OS X, we may need some esoteric linker flags
# in the wrapper compilers. However, per
# https://github.com/open-mpi/ompi/issues/259, we need to use
@@ -44449,7 +44710,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:44452: Try with new FCFLAGS: $FCFLAGS_NEW and new LDFLAGS:$LDFLAGS_NEW" >&5
+ echo "configure:44713: Try with new FCFLAGS: $FCFLAGS_NEW and new LDFLAGS:$LDFLAGS_NEW" >&5
else
echo Try with new FCFLAGS: $FCFLAGS_NEW and new LDFLAGS:$LDFLAGS_NEW >&5
fi
@@ -44465,14 +44726,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:44468: $FC $FCFLAGS_NEW -c conftest.f $LDFLAGS_NEW $LIBS" >&5
+echo "configure:44729: $FC $FCFLAGS_NEW -c conftest.f $LDFLAGS_NEW $LIBS" >&5
$FC $FCFLAGS_NEW -c conftest.f $LDFLAGS_NEW $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:44475: \$? = $opal_status" >&5
+ echo "configure:44736: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -44494,7 +44755,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:44497: Could not determine Fortran naming convention. Output from $NM:" >&5
+ echo "configure:44758: Could not determine Fortran naming convention. Output from $NM:" >&5
else
echo Could not determine Fortran naming convention. Output from $NM: >&5
fi
@@ -44610,14 +44871,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:44613: $CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext" >&5
+echo "configure:44874: $CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext" >&5
$CC -c $CFLAGS $CPPFLAGS conftest_c.$ac_ext 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:44620: \$? = $opal_status" >&5
+ echo "configure:44881: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -45140,14 +45401,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:45143: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:45404: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:45150: \$? = $opal_status" >&5
+ echo "configure:45411: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -45157,14 +45418,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:45160: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:45421: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:45167: \$? = $opal_status" >&5
+ echo "configure:45428: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -45185,7 +45446,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:45188: here is the Fortran program:" >&5
+ echo "configure:45449: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -45208,14 +45469,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:45211: ./conftest" >&5
+echo "configure:45472: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:45218: \$? = $opal_status" >&5
+ echo "configure:45479: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -45447,14 +45708,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:45450: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:45711: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:45457: \$? = $opal_status" >&5
+ echo "configure:45718: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -45464,14 +45725,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:45467: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:45728: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:45474: \$? = $opal_status" >&5
+ echo "configure:45735: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -45502,14 +45763,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:45505: ./conftest" >&5
+echo "configure:45766: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:45512: \$? = $opal_status" >&5
+ echo "configure:45773: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46036,14 +46297,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:46039: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:46300: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46046: \$? = $opal_status" >&5
+ echo "configure:46307: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46053,14 +46314,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:46056: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:46317: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46063: \$? = $opal_status" >&5
+ echo "configure:46324: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46081,7 +46342,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46084: here is the Fortran program:" >&5
+ echo "configure:46345: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -46104,14 +46365,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:46107: ./conftest" >&5
+echo "configure:46368: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46114: \$? = $opal_status" >&5
+ echo "configure:46375: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46343,14 +46604,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:46346: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:46607: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46353: \$? = $opal_status" >&5
+ echo "configure:46614: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46360,14 +46621,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:46363: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:46624: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46370: \$? = $opal_status" >&5
+ echo "configure:46631: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46398,14 +46659,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:46401: ./conftest" >&5
+echo "configure:46662: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46408: \$? = $opal_status" >&5
+ echo "configure:46669: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46931,14 +47192,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:46934: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:47195: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46941: \$? = $opal_status" >&5
+ echo "configure:47202: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46948,14 +47209,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:46951: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:47212: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46958: \$? = $opal_status" >&5
+ echo "configure:47219: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -46976,7 +47237,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:46979: here is the Fortran program:" >&5
+ echo "configure:47240: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -46999,14 +47260,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:47002: ./conftest" >&5
+echo "configure:47263: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:47009: \$? = $opal_status" >&5
+ echo "configure:47270: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -47250,14 +47511,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:47253: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:47514: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:47260: \$? = $opal_status" >&5
+ echo "configure:47521: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -47267,14 +47528,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:47270: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:47531: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:47277: \$? = $opal_status" >&5
+ echo "configure:47538: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -47305,14 +47566,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:47308: ./conftest" >&5
+echo "configure:47569: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:47315: \$? = $opal_status" >&5
+ echo "configure:47576: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -47838,14 +48099,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:47841: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:48102: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:47848: \$? = $opal_status" >&5
+ echo "configure:48109: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -47855,14 +48116,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:47858: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:48119: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:47865: \$? = $opal_status" >&5
+ echo "configure:48126: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -47883,7 +48144,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:47886: here is the Fortran program:" >&5
+ echo "configure:48147: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -47906,14 +48167,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:47909: ./conftest" >&5
+echo "configure:48170: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:47916: \$? = $opal_status" >&5
+ echo "configure:48177: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -48152,14 +48413,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:48155: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:48416: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:48162: \$? = $opal_status" >&5
+ echo "configure:48423: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -48169,14 +48430,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:48172: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:48433: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:48179: \$? = $opal_status" >&5
+ echo "configure:48440: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -48207,14 +48468,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:48210: ./conftest" >&5
+echo "configure:48471: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:48217: \$? = $opal_status" >&5
+ echo "configure:48478: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -48740,14 +49001,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:48743: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:49004: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:48750: \$? = $opal_status" >&5
+ echo "configure:49011: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -48757,14 +49018,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:48760: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:49021: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:48767: \$? = $opal_status" >&5
+ echo "configure:49028: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -48785,7 +49046,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:48788: here is the Fortran program:" >&5
+ echo "configure:49049: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -48808,14 +49069,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:48811: ./conftest" >&5
+echo "configure:49072: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:48818: \$? = $opal_status" >&5
+ echo "configure:49079: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49044,14 +49305,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49047: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:49308: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49054: \$? = $opal_status" >&5
+ echo "configure:49315: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49061,14 +49322,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49064: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:49325: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49071: \$? = $opal_status" >&5
+ echo "configure:49332: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49099,14 +49360,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49102: ./conftest" >&5
+echo "configure:49363: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49109: \$? = $opal_status" >&5
+ echo "configure:49370: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49632,14 +49893,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49635: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:49896: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49642: \$? = $opal_status" >&5
+ echo "configure:49903: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49649,14 +49910,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49652: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:49913: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49659: \$? = $opal_status" >&5
+ echo "configure:49920: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49677,7 +49938,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49680: here is the Fortran program:" >&5
+ echo "configure:49941: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -49700,14 +49961,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49703: ./conftest" >&5
+echo "configure:49964: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49710: \$? = $opal_status" >&5
+ echo "configure:49971: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49931,14 +50192,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49934: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:50195: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49941: \$? = $opal_status" >&5
+ echo "configure:50202: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49948,14 +50209,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49951: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:50212: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49958: \$? = $opal_status" >&5
+ echo "configure:50219: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -49986,14 +50247,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:49989: ./conftest" >&5
+echo "configure:50250: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:49996: \$? = $opal_status" >&5
+ echo "configure:50257: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -50520,14 +50781,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:50523: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:50784: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:50530: \$? = $opal_status" >&5
+ echo "configure:50791: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -50537,14 +50798,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:50540: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:50801: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:50547: \$? = $opal_status" >&5
+ echo "configure:50808: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -50565,7 +50826,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:50568: here is the Fortran program:" >&5
+ echo "configure:50829: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -50588,14 +50849,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:50591: ./conftest" >&5
+echo "configure:50852: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:50598: \$? = $opal_status" >&5
+ echo "configure:50859: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -50822,14 +51083,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:50825: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:51086: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:50832: \$? = $opal_status" >&5
+ echo "configure:51093: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -50839,14 +51100,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:50842: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:51103: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:50849: \$? = $opal_status" >&5
+ echo "configure:51110: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -50877,14 +51138,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:50880: ./conftest" >&5
+echo "configure:51141: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:50887: \$? = $opal_status" >&5
+ echo "configure:51148: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -51410,14 +51671,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:51413: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:51674: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:51420: \$? = $opal_status" >&5
+ echo "configure:51681: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -51427,14 +51688,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:51430: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:51691: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:51437: \$? = $opal_status" >&5
+ echo "configure:51698: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -51455,7 +51716,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:51458: here is the Fortran program:" >&5
+ echo "configure:51719: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -51478,14 +51739,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:51481: ./conftest" >&5
+echo "configure:51742: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:51488: \$? = $opal_status" >&5
+ echo "configure:51749: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -51724,14 +51985,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:51727: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:51988: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:51734: \$? = $opal_status" >&5
+ echo "configure:51995: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -51741,14 +52002,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:51744: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:52005: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:51751: \$? = $opal_status" >&5
+ echo "configure:52012: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -51779,14 +52040,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:51782: ./conftest" >&5
+echo "configure:52043: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:51789: \$? = $opal_status" >&5
+ echo "configure:52050: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -52312,14 +52573,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:52315: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:52576: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:52322: \$? = $opal_status" >&5
+ echo "configure:52583: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -52329,14 +52590,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:52332: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:52593: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:52339: \$? = $opal_status" >&5
+ echo "configure:52600: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -52357,7 +52618,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:52360: here is the Fortran program:" >&5
+ echo "configure:52621: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -52380,14 +52641,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:52383: ./conftest" >&5
+echo "configure:52644: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:52390: \$? = $opal_status" >&5
+ echo "configure:52651: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -52626,14 +52887,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:52629: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:52890: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:52636: \$? = $opal_status" >&5
+ echo "configure:52897: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -52643,14 +52904,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:52646: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:52907: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:52653: \$? = $opal_status" >&5
+ echo "configure:52914: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -52681,14 +52942,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:52684: ./conftest" >&5
+echo "configure:52945: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:52691: \$? = $opal_status" >&5
+ echo "configure:52952: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -53214,14 +53475,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:53217: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:53478: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:53224: \$? = $opal_status" >&5
+ echo "configure:53485: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -53231,14 +53492,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:53234: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:53495: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:53241: \$? = $opal_status" >&5
+ echo "configure:53502: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -53259,7 +53520,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:53262: here is the Fortran program:" >&5
+ echo "configure:53523: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -53282,14 +53543,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:53285: ./conftest" >&5
+echo "configure:53546: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:53292: \$? = $opal_status" >&5
+ echo "configure:53553: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -53518,14 +53779,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:53521: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:53782: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:53528: \$? = $opal_status" >&5
+ echo "configure:53789: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -53535,14 +53796,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:53538: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:53799: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:53545: \$? = $opal_status" >&5
+ echo "configure:53806: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -53573,14 +53834,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:53576: ./conftest" >&5
+echo "configure:53837: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:53583: \$? = $opal_status" >&5
+ echo "configure:53844: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -54106,14 +54367,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:54109: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:54370: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:54116: \$? = $opal_status" >&5
+ echo "configure:54377: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -54123,14 +54384,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:54126: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:54387: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:54133: \$? = $opal_status" >&5
+ echo "configure:54394: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -54151,7 +54412,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:54154: here is the Fortran program:" >&5
+ echo "configure:54415: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -54174,14 +54435,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:54177: ./conftest" >&5
+echo "configure:54438: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:54184: \$? = $opal_status" >&5
+ echo "configure:54445: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -54405,14 +54666,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:54408: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:54669: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:54415: \$? = $opal_status" >&5
+ echo "configure:54676: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -54422,14 +54683,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:54425: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:54686: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:54432: \$? = $opal_status" >&5
+ echo "configure:54693: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -54460,14 +54721,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:54463: ./conftest" >&5
+echo "configure:54724: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:54470: \$? = $opal_status" >&5
+ echo "configure:54731: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -54993,14 +55254,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:54996: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:55257: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55003: \$? = $opal_status" >&5
+ echo "configure:55264: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -55010,14 +55271,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:55013: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:55274: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55020: \$? = $opal_status" >&5
+ echo "configure:55281: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -55038,7 +55299,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55041: here is the Fortran program:" >&5
+ echo "configure:55302: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -55061,14 +55322,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:55064: ./conftest" >&5
+echo "configure:55325: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55071: \$? = $opal_status" >&5
+ echo "configure:55332: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -55292,14 +55553,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:55295: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:55556: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55302: \$? = $opal_status" >&5
+ echo "configure:55563: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -55309,14 +55570,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:55312: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:55573: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55319: \$? = $opal_status" >&5
+ echo "configure:55580: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -55347,14 +55608,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:55350: ./conftest" >&5
+echo "configure:55611: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55357: \$? = $opal_status" >&5
+ echo "configure:55618: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -55881,14 +56142,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:55884: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:56145: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55891: \$? = $opal_status" >&5
+ echo "configure:56152: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -55898,14 +56159,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:55901: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:56162: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55908: \$? = $opal_status" >&5
+ echo "configure:56169: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -55926,7 +56187,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55929: here is the Fortran program:" >&5
+ echo "configure:56190: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -55949,14 +56210,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:55952: ./conftest" >&5
+echo "configure:56213: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:55959: \$? = $opal_status" >&5
+ echo "configure:56220: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -56173,14 +56434,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:56176: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:56437: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:56183: \$? = $opal_status" >&5
+ echo "configure:56444: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -56190,14 +56451,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:56193: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:56454: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:56200: \$? = $opal_status" >&5
+ echo "configure:56461: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -56228,14 +56489,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:56231: ./conftest" >&5
+echo "configure:56492: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:56238: \$? = $opal_status" >&5
+ echo "configure:56499: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -56761,14 +57022,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:56764: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:57025: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:56771: \$? = $opal_status" >&5
+ echo "configure:57032: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -56778,14 +57039,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:56781: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:57042: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:56788: \$? = $opal_status" >&5
+ echo "configure:57049: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -56806,7 +57067,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:56809: here is the Fortran program:" >&5
+ echo "configure:57070: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -56829,14 +57090,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:56832: ./conftest" >&5
+echo "configure:57093: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:56839: \$? = $opal_status" >&5
+ echo "configure:57100: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57055,14 +57316,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57058: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:57319: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57065: \$? = $opal_status" >&5
+ echo "configure:57326: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57072,14 +57333,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57075: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:57336: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57082: \$? = $opal_status" >&5
+ echo "configure:57343: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57110,14 +57371,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57113: ./conftest" >&5
+echo "configure:57374: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57120: \$? = $opal_status" >&5
+ echo "configure:57381: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57643,14 +57904,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57646: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:57907: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57653: \$? = $opal_status" >&5
+ echo "configure:57914: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57660,14 +57921,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57663: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:57924: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57670: \$? = $opal_status" >&5
+ echo "configure:57931: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57688,7 +57949,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57691: here is the Fortran program:" >&5
+ echo "configure:57952: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -57711,14 +57972,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57714: ./conftest" >&5
+echo "configure:57975: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57721: \$? = $opal_status" >&5
+ echo "configure:57982: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57937,14 +58198,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57940: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:58201: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57947: \$? = $opal_status" >&5
+ echo "configure:58208: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57954,14 +58215,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57957: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:58218: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:57964: \$? = $opal_status" >&5
+ echo "configure:58225: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -57992,14 +58253,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:57995: ./conftest" >&5
+echo "configure:58256: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:58002: \$? = $opal_status" >&5
+ echo "configure:58263: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -58525,14 +58786,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:58528: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:58789: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:58535: \$? = $opal_status" >&5
+ echo "configure:58796: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -58542,14 +58803,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:58545: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:58806: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:58552: \$? = $opal_status" >&5
+ echo "configure:58813: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -58570,7 +58831,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:58573: here is the Fortran program:" >&5
+ echo "configure:58834: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -58593,14 +58854,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:58596: ./conftest" >&5
+echo "configure:58857: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:58603: \$? = $opal_status" >&5
+ echo "configure:58864: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -58819,14 +59080,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:58822: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:59083: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:58829: \$? = $opal_status" >&5
+ echo "configure:59090: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -58836,14 +59097,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:58839: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:59100: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:58846: \$? = $opal_status" >&5
+ echo "configure:59107: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -58874,14 +59135,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:58877: ./conftest" >&5
+echo "configure:59138: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:58884: \$? = $opal_status" >&5
+ echo "configure:59145: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -59407,14 +59668,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:59410: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:59671: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:59417: \$? = $opal_status" >&5
+ echo "configure:59678: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -59424,14 +59685,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:59427: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:59688: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:59434: \$? = $opal_status" >&5
+ echo "configure:59695: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -59452,7 +59713,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:59455: here is the Fortran program:" >&5
+ echo "configure:59716: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -59475,14 +59736,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:59478: ./conftest" >&5
+echo "configure:59739: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:59485: \$? = $opal_status" >&5
+ echo "configure:59746: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -59701,14 +59962,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:59704: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:59965: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:59711: \$? = $opal_status" >&5
+ echo "configure:59972: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -59718,14 +59979,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:59721: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:59982: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:59728: \$? = $opal_status" >&5
+ echo "configure:59989: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -59756,14 +60017,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:59759: ./conftest" >&5
+echo "configure:60020: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:59766: \$? = $opal_status" >&5
+ echo "configure:60027: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60203,14 +60464,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60206: $CC $CFLAGS -I. -c conftest_c.c" >&5
+echo "configure:60467: $CC $CFLAGS -I. -c conftest_c.c" >&5
$CC $CFLAGS -I. -c conftest_c.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60213: \$? = $opal_status" >&5
+ echo "configure:60474: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60220,14 +60481,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60223: $FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:60484: $FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60230: \$? = $opal_status" >&5
+ echo "configure:60491: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60256,14 +60517,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60259: ./conftest" >&5
+echo "configure:60520: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60266: \$? = $opal_status" >&5
+ echo "configure:60527: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60430,14 +60691,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60433: $CC $CFLAGS -I. -c conftest_c.c" >&5
+echo "configure:60694: $CC $CFLAGS -I. -c conftest_c.c" >&5
$CC $CFLAGS -I. -c conftest_c.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60440: \$? = $opal_status" >&5
+ echo "configure:60701: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60447,14 +60708,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60450: $FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:60711: $FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60457: \$? = $opal_status" >&5
+ echo "configure:60718: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60483,14 +60744,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60486: ./conftest" >&5
+echo "configure:60747: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60493: \$? = $opal_status" >&5
+ echo "configure:60754: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60660,14 +60921,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60663: $CC $CFLAGS -I. -c conftest_c.c" >&5
+echo "configure:60924: $CC $CFLAGS -I. -c conftest_c.c" >&5
$CC $CFLAGS -I. -c conftest_c.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60670: \$? = $opal_status" >&5
+ echo "configure:60931: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60677,14 +60938,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60680: $FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:60941: $FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftest_f.f conftest_c.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60687: \$? = $opal_status" >&5
+ echo "configure:60948: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -60713,14 +60974,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:60716: ./conftest" >&5
+echo "configure:60977: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:60723: \$? = $opal_status" >&5
+ echo "configure:60984: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61004,14 +61265,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61007: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:61268: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61014: \$? = $opal_status" >&5
+ echo "configure:61275: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61021,14 +61282,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61024: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:61285: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61031: \$? = $opal_status" >&5
+ echo "configure:61292: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61049,7 +61310,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61052: here is the Fortran program:" >&5
+ echo "configure:61313: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -61072,14 +61333,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61075: ./conftest" >&5
+echo "configure:61336: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61082: \$? = $opal_status" >&5
+ echo "configure:61343: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61296,14 +61557,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61299: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:61560: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61306: \$? = $opal_status" >&5
+ echo "configure:61567: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61313,14 +61574,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61316: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:61577: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61323: \$? = $opal_status" >&5
+ echo "configure:61584: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61351,14 +61612,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61354: ./conftest" >&5
+echo "configure:61615: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61361: \$? = $opal_status" >&5
+ echo "configure:61622: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61885,14 +62146,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61888: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:62149: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61895: \$? = $opal_status" >&5
+ echo "configure:62156: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61902,14 +62163,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61905: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:62166: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61912: \$? = $opal_status" >&5
+ echo "configure:62173: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -61930,7 +62191,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61933: here is the Fortran program:" >&5
+ echo "configure:62194: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -61953,14 +62214,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:61956: ./conftest" >&5
+echo "configure:62217: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:61963: \$? = $opal_status" >&5
+ echo "configure:62224: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -62172,14 +62433,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:62175: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:62436: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:62182: \$? = $opal_status" >&5
+ echo "configure:62443: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -62189,14 +62450,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:62192: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:62453: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:62199: \$? = $opal_status" >&5
+ echo "configure:62460: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -62227,14 +62488,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:62230: ./conftest" >&5
+echo "configure:62491: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:62237: \$? = $opal_status" >&5
+ echo "configure:62498: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -62772,14 +63033,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:62775: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:63036: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:62782: \$? = $opal_status" >&5
+ echo "configure:63043: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -62789,14 +63050,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:62792: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:63053: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:62799: \$? = $opal_status" >&5
+ echo "configure:63060: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -62817,7 +63078,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:62820: here is the Fortran program:" >&5
+ echo "configure:63081: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -62840,14 +63101,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:62843: ./conftest" >&5
+echo "configure:63104: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:62850: \$? = $opal_status" >&5
+ echo "configure:63111: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63056,14 +63317,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63059: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:63320: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63066: \$? = $opal_status" >&5
+ echo "configure:63327: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63073,14 +63334,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63076: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:63337: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63083: \$? = $opal_status" >&5
+ echo "configure:63344: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63111,14 +63372,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63114: ./conftest" >&5
+echo "configure:63375: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63121: \$? = $opal_status" >&5
+ echo "configure:63382: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63644,14 +63905,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63647: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:63908: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63654: \$? = $opal_status" >&5
+ echo "configure:63915: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63661,14 +63922,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63664: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:63925: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63671: \$? = $opal_status" >&5
+ echo "configure:63932: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63689,7 +63950,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63692: here is the Fortran program:" >&5
+ echo "configure:63953: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -63712,14 +63973,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63715: ./conftest" >&5
+echo "configure:63976: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63722: \$? = $opal_status" >&5
+ echo "configure:63983: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63938,14 +64199,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63941: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:64202: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63948: \$? = $opal_status" >&5
+ echo "configure:64209: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63955,14 +64216,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63958: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:64219: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:63965: \$? = $opal_status" >&5
+ echo "configure:64226: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -63993,14 +64254,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:63996: ./conftest" >&5
+echo "configure:64257: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:64003: \$? = $opal_status" >&5
+ echo "configure:64264: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -64526,14 +64787,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:64529: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:64790: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:64536: \$? = $opal_status" >&5
+ echo "configure:64797: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -64543,14 +64804,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:64546: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:64807: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:64553: \$? = $opal_status" >&5
+ echo "configure:64814: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -64571,7 +64832,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:64574: here is the Fortran program:" >&5
+ echo "configure:64835: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -64594,14 +64855,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:64597: ./conftest" >&5
+echo "configure:64858: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:64604: \$? = $opal_status" >&5
+ echo "configure:64865: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -64820,14 +65081,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:64823: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:65084: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:64830: \$? = $opal_status" >&5
+ echo "configure:65091: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -64837,14 +65098,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:64840: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:65101: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:64847: \$? = $opal_status" >&5
+ echo "configure:65108: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -64875,14 +65136,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:64878: ./conftest" >&5
+echo "configure:65139: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:64885: \$? = $opal_status" >&5
+ echo "configure:65146: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -65408,14 +65669,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:65411: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:65672: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:65418: \$? = $opal_status" >&5
+ echo "configure:65679: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -65425,14 +65686,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:65428: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:65689: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:65435: \$? = $opal_status" >&5
+ echo "configure:65696: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -65453,7 +65714,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:65456: here is the Fortran program:" >&5
+ echo "configure:65717: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -65476,14 +65737,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:65479: ./conftest" >&5
+echo "configure:65740: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:65486: \$? = $opal_status" >&5
+ echo "configure:65747: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -65702,14 +65963,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:65705: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:65966: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:65712: \$? = $opal_status" >&5
+ echo "configure:65973: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -65719,14 +65980,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:65722: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:65983: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:65729: \$? = $opal_status" >&5
+ echo "configure:65990: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -65757,14 +66018,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:65760: ./conftest" >&5
+echo "configure:66021: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:65767: \$? = $opal_status" >&5
+ echo "configure:66028: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -66293,14 +66554,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:66296: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:66557: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:66303: \$? = $opal_status" >&5
+ echo "configure:66564: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -66310,14 +66571,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:66313: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:66574: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:66320: \$? = $opal_status" >&5
+ echo "configure:66581: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -66338,7 +66599,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:66341: here is the Fortran program:" >&5
+ echo "configure:66602: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -66361,14 +66622,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:66364: ./conftest" >&5
+echo "configure:66625: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:66371: \$? = $opal_status" >&5
+ echo "configure:66632: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -66585,14 +66846,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:66588: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:66849: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:66595: \$? = $opal_status" >&5
+ echo "configure:66856: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -66602,14 +66863,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:66605: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:66866: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:66612: \$? = $opal_status" >&5
+ echo "configure:66873: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -66640,14 +66901,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:66643: ./conftest" >&5
+echo "configure:66904: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:66650: \$? = $opal_status" >&5
+ echo "configure:66911: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -67272,14 +67533,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:67275: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:67536: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:67282: \$? = $opal_status" >&5
+ echo "configure:67543: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -67289,14 +67550,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:67292: $FC $FCFLAGS -o conftest conftest.o conftestf.f $LDFLAGS $LIBS" >&5
+echo "configure:67553: $FC $FCFLAGS -o conftest conftest.o conftestf.f $LDFLAGS $LIBS" >&5
$FC $FCFLAGS -o conftest conftest.o conftestf.f $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:67299: \$? = $opal_status" >&5
+ echo "configure:67560: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -67324,14 +67585,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:67327: ./conftest" >&5
+echo "configure:67588: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:67334: \$? = $opal_status" >&5
+ echo "configure:67595: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -67442,14 +67703,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:67445: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:67706: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:67452: \$? = $opal_status" >&5
+ echo "configure:67713: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -67459,14 +67720,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:67462: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:67723: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:67469: \$? = $opal_status" >&5
+ echo "configure:67730: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -67493,14 +67754,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:67496: ./conftest" >&5
+echo "configure:67757: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:67503: \$? = $opal_status" >&5
+ echo "configure:67764: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -67603,7 +67864,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n ""; then
- echo "configure:67606: testing Fortran dimension $f_rank / $f_dim" >&5
+ echo "configure:67867: testing Fortran dimension $f_rank / $f_dim" >&5
else
echo testing Fortran dimension $f_rank / $f_dim >&5
fi
@@ -68628,14 +68889,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:68631: $FC $FCFLAGS $FCFLAGS_f90 -c conftest-module.f90 $LDFLAGS $LIBS" >&5
+echo "configure:68892: $FC $FCFLAGS $FCFLAGS_f90 -c conftest-module.f90 $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 -c conftest-module.f90 $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:68638: \$? = $opal_status" >&5
+ echo "configure:68899: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -68672,14 +68933,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:68675: $FC $FCFLAGS $FCFLAGS_f90 conftest.f90 ${flag}subdir $LDFLAGS $LIBS" >&5
+echo "configure:68936: $FC $FCFLAGS $FCFLAGS_f90 conftest.f90 ${flag}subdir $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftest.f90 ${flag}subdir $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:68682: \$? = $opal_status" >&5
+ echo "configure:68943: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -68693,7 +68954,7 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:68696: $FC $FCFLAGS $FCFLAGS_f90 conftest.f90 subdir/conftest-module.o \
+echo "configure:68957: $FC $FCFLAGS $FCFLAGS_f90 conftest.f90 subdir/conftest-module.o \
${flag}subdir $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftest.f90 subdir/conftest-module.o \
${flag}subdir $LDFLAGS $LIBS 1>&5 2>&1
@@ -68702,7 +68963,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:68705: \$? = $opal_status" >&5
+ echo "configure:68966: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -69925,6 +70186,78 @@
fi
+ # The mpi_f08 module in this version of Open MPI does not properly
+ # handle if sizeof(INTEGER) != sizeof(int) with the mpi_f08
+ # bindings. As of July 2020, this issue is fixed on main / what
+ # will eventually become Open MPI v5.0.x, but the fix causes an
+ # ABI break. Hence, we're not going to fix it here on this
+ # release branch.
+ #
+ # This is a bit of a quandry, however, because up until v4.0.4, we
+ # built the Open MPI F08 bindings by default (if the compiler
+ # supported them), even in this problematic scenario. Meaning: a
+ # user could use the exact same compilers + configure command line
+ # between v4.0.4 and v4.0.5 and suddenly -- probably unexpectedly
+ # -- not get F08 bindings. That seems a little weird.
+ #
+ # Instead, if we're in the "bad" scenario (sizeof(int) !=
+ # sizeof(INTEGER)), if the user didn't explicitly disable the
+ # mpi_f08 module, we'll print a Giant Error Message (GEM) and tell
+ # them what their options are. This may be slightly annoying for
+ # the user, but it at least it won't violate the Law of Least
+ # Surprise.
+ #
+ # Note that mpif.h and mpi module are still ok in the sizeof(int)
+ # != sizeof(INTEGER) scenario; this isssue *only* affects the use
+ # of mpi_f08's TYPE(MPI_Status).
+ #
+ # The following URLs shed some light on this decision:
+ #
+ # - https://github.com/open-mpi/ompi/pull/7921 -- in particular,
+ # the comment at
+ # https://github.com/open-mpi/ompi/pull/7921#issuecomment-656418618
+ # - https://github.com/open-mpi/ompi/pull/7922 -- in particlar,
+ # the comment at
+ # https://github.com/open-mpi/ompi/pull/7922#issuecomment-656788803
+ #
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sizeof(C int) == sizeof(Fortran INTEGER)" >&5
+$as_echo_n "checking if sizeof(C int) == sizeof(Fortran INTEGER)... " >&6; }
+ if test $ac_cv_sizeof_int -eq $OMPI_SIZEOF_FORTRAN_INTEGER; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ if test $OMPI_TRY_FORTRAN_BINDINGS -ge $OMPI_FORTRAN_USEMPIF08_BINDINGS; then :
+ c=$ac_cv_sizeof_int
+ f=$OMPI_SIZEOF_FORTRAN_INTEGER
+ cat <&5
+echo "configure:70590: $FC $FCFLAGS -c aaa.f90" >&5
$FC $FCFLAGS -c aaa.f90 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:70264: \$? = $opal_status" >&5
+ echo "configure:70597: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -70271,14 +70604,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:70274: $FC $FCFLAGS -c bbb.f90" >&5
+echo "configure:70607: $FC $FCFLAGS -c bbb.f90" >&5
$FC $FCFLAGS -c bbb.f90 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:70281: \$? = $opal_status" >&5
+ echo "configure:70614: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -70758,14 +71091,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:70761: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:71094: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:70768: \$? = $opal_status" >&5
+ echo "configure:71101: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -70775,14 +71108,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:70778: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:71111: $FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS $FCFLAGS_f90 conftestf.f90 conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:70785: \$? = $opal_status" >&5
+ echo "configure:71118: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -70803,7 +71136,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:70806: here is the Fortran program:" >&5
+ echo "configure:71139: here is the Fortran program:" >&5
else
echo here is the Fortran program: >&5
fi
@@ -70826,14 +71159,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:70829: ./conftest" >&5
+echo "configure:71162: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:70836: \$? = $opal_status" >&5
+ echo "configure:71169: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -70900,14 +71233,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:70903: ./conftest" >&5
+echo "configure:71236: ./conftest" >&5
./conftest 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:70910: \$? = $opal_status" >&5
+ echo "configure:71243: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -75283,14 +75616,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:75286: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:75619: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75293: \$? = $opal_status" >&5
+ echo "configure:75626: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -75300,14 +75633,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:75303: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:75636: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75310: \$? = $opal_status" >&5
+ echo "configure:75643: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -75330,7 +75663,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75333: here is the C program:" >&5
+ echo "configure:75666: here is the C program:" >&5
else
echo here is the C program: >&5
fi
@@ -75344,7 +75677,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75347: here is contest.h:" >&5
+ echo "configure:75680: here is contest.h:" >&5
else
echo here is contest.h: >&5
fi
@@ -75358,7 +75691,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75361: here is the fortran program:" >&5
+ echo "configure:75694: here is the fortran program:" >&5
else
echo here is the fortran program: >&5
fi
@@ -75679,14 +76012,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:75682: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:76015: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75689: \$? = $opal_status" >&5
+ echo "configure:76022: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -75696,14 +76029,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:75699: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:76032: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75706: \$? = $opal_status" >&5
+ echo "configure:76039: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -75726,7 +76059,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75729: here is the C program:" >&5
+ echo "configure:76062: here is the C program:" >&5
else
echo here is the C program: >&5
fi
@@ -75740,7 +76073,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75743: here is contest.h:" >&5
+ echo "configure:76076: here is contest.h:" >&5
else
echo here is contest.h: >&5
fi
@@ -75754,7 +76087,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:75757: here is the fortran program:" >&5
+ echo "configure:76090: here is the fortran program:" >&5
else
echo here is the fortran program: >&5
fi
@@ -76185,14 +76518,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:76188: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:76521: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76195: \$? = $opal_status" >&5
+ echo "configure:76528: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -76202,14 +76535,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:76205: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:76538: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76212: \$? = $opal_status" >&5
+ echo "configure:76545: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -76232,7 +76565,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76235: here is the C program:" >&5
+ echo "configure:76568: here is the C program:" >&5
else
echo here is the C program: >&5
fi
@@ -76246,7 +76579,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76249: here is contest.h:" >&5
+ echo "configure:76582: here is contest.h:" >&5
else
echo here is contest.h: >&5
fi
@@ -76260,7 +76593,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76263: here is the fortran program:" >&5
+ echo "configure:76596: here is the fortran program:" >&5
else
echo here is the fortran program: >&5
fi
@@ -76375,14 +76708,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:76378: $CC $CFLAGS -I. -c conftest.c" >&5
+echo "configure:76711: $CC $CFLAGS -I. -c conftest.c" >&5
$CC $CFLAGS -I. -c conftest.c 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76385: \$? = $opal_status" >&5
+ echo "configure:76718: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -76392,14 +76725,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:76395: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
+echo "configure:76728: $FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS" >&5
$FC $FCFLAGS conftestf.f conftest.o -o conftest $LDFLAGS $LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76402: \$? = $opal_status" >&5
+ echo "configure:76735: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -76422,7 +76755,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76425: here is the C program:" >&5
+ echo "configure:76758: here is the C program:" >&5
else
echo here is the C program: >&5
fi
@@ -76436,7 +76769,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76439: here is contest.h:" >&5
+ echo "configure:76772: here is contest.h:" >&5
else
echo here is contest.h: >&5
fi
@@ -76450,7 +76783,7 @@
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:76453: here is the fortran program:" >&5
+ echo "configure:76786: here is the fortran program:" >&5
else
echo here is the fortran program: >&5
fi
@@ -79797,14 +80130,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:79800: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lhwloc $LIBS $opal_hwloc_external_LIBS" >&5
+echo "configure:80133: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lhwloc $LIBS $opal_hwloc_external_LIBS" >&5
$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lhwloc $LIBS $opal_hwloc_external_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:79807: \$? = $opal_status" >&5
+ echo "configure:80140: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -80522,14 +80855,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:80525: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lhwloc $LIBS $opal_hwloc_external_LIBS" >&5
+echo "configure:80858: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lhwloc $LIBS $opal_hwloc_external_LIBS" >&5
$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lhwloc $LIBS $opal_hwloc_external_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:80532: \$? = $opal_status" >&5
+ echo "configure:80865: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -91877,8 +92210,8 @@
$as_echo "" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for m4 configure components in framework common" >&5
$as_echo_n "checking for m4 configure components in framework common... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: cuda, sm, ucx, verbs, verbs_usnic" >&5
-$as_echo "cuda, sm, ucx, verbs, verbs_usnic" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: cuda, ofi, sm, ucx, verbs, verbs_usnic" >&5
+$as_echo "cuda, ofi, sm, ucx, verbs, verbs_usnic" >&6; }
# If there are components in the no configure list, but we're
# doing one of the "special" selection logics, abort with a
@@ -92567,13 +92900,13 @@
- opal_show_subsubsubtitle "MCA component common:sm (m4 configuration macro)"
+ opal_show_subsubsubtitle "MCA component common:ofi (m4 configuration macro)"
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- component_path="$srcdir/opal/mca/common/sm"
+ component_path="$srcdir/opal/mca/common/ofi"
want_component=0
# build if:
@@ -92606,7 +92939,7 @@
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "sm" ; then
+ if test "$DIRECT_common" = "ofi" ; then
want_component=1
else
want_component=0
@@ -92618,7 +92951,7 @@
if test "$DISABLE_common" = "1"; then :
want_component=0
fi
- if test "$DISABLE_common_sm" = "1"; then :
+ if test "$DISABLE_common_ofi" = "1"; then :
want_component=0
fi
@@ -92632,10 +92965,10 @@
# It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
SHARED_FRAMEWORK="$DSO_common"
- SHARED_COMPONENT="$DSO_common_sm"
+ SHARED_COMPONENT="$DSO_common_ofi"
STATIC_FRAMEWORK="$STATIC_common"
- STATIC_COMPONENT="$STATIC_common_sm"
+ STATIC_COMPONENT="$STATIC_common_ofi"
shared_mode_override=static
@@ -92653,9 +92986,9 @@
compile_mode="static"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:sm compile mode" >&5
-$as_echo_n "checking for MCA component common:sm compile mode... " >&6; }
- if test "$DIRECT_common" = "sm" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:ofi compile mode" >&5
+$as_echo_n "checking for MCA component common:ofi compile mode... " >&6; }
+ if test "$DIRECT_common" = "ofi" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
$as_echo "$compile_mode - direct" >&6; }
else
@@ -92666,162 +92999,133 @@
# try to configure the component
- ac_config_files="$ac_config_files opal/mca/common/sm/Makefile"
+ ac_config_files="$ac_config_files opal/mca/common/ofi/Makefile"
- should_build=$should_build
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
- if test "$should_build" = "1"; then :
+ # Check for OFI libfabric. Note that $opal_ofi_happy is used in
+ # other configure.m4's to know if OFI/libfabric configured
+ # successfully. We only need to run the back-end checks once, but
+ # at least emit a "checking..." statement each subsequent time
+ # this macro is invoked so that configure's stdout has
+ # sensible/logical output.
+ if test -z "$opal_ofi_happy"; then :
+ # Add --with options
+# Check whether --with-libfabric was given.
+if test "${with_libfabric+set}" = set; then :
+ withval=$with_libfabric;
+fi
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/common/sm/post_configure.sh"
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components sm"
+# Check whether --with-libfabric-libdir was given.
+if test "${with_libfabric_libdir+set}" = set; then :
+ withval=$with_libfabric_libdir;
+fi
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components sm"
- else
- if test "common" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/common/sm/lib${OPAL_LIB_PREFIX}mca_common_sm.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/common/sm/libmca_common_sm.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_common_sm_component;" >> $outfile.extern
- echo " &mca_common_sm_component, " >> $outfile.struct
- static_components="$static_components sm"
- fi
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:sm can compile" >&5
-$as_echo_n "checking if MCA component common:sm can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_common" = "sm" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** common component sm was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_common" = "sm" ; then
-as_fn_error $? "*** common component sm was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+# Check whether --with-ofi was given.
+if test "${with_ofi+set}" = set; then :
+ withval=$with_ofi;
+fi
+
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$common_sm_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+# Check whether --with-ofi-libdir was given.
+if test "${with_ofi_libdir+set}" = set; then :
+ withval=$with_ofi_libdir;
+fi
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
+ if test "$with_ofi" = ""; then
+ with_ofi=$with_libfabric
fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ if test "$with_ofi_libdir" = ""; then
+ with_ofi_libdir=$with_libfabric_libdir
+ fi
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ # Sanity check the --with values
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ofi value" >&5
+$as_echo_n "checking --with-ofi value... " >&6; }
+ if test "$with_ofi" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ofi)" >&5
+$as_echo "simple no (specified --without-ofi)" >&6; }
+else
+ if test "$with_ofi" = "yes" || test "x$with_ofi" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
+$as_echo "simple ok (unspecified value)" >&6; }
+else
+ if test ! -d "$with_ofi"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ofi not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_ofi not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ if test "x`ls $with_ofi/include/rdma/fabric.h 2> /dev/null`" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ofi/include/rdma/fabric.h not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_ofi/include/rdma/fabric.h not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ofi)" >&5
+$as_echo "sanity check ok ($with_ofi)" >&6; }
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+fi
- for arg in $common_sm_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
fi
- done
+
+
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+
+
fi
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ofi-libdir value" >&5
+$as_echo_n "checking --with-ofi-libdir value... " >&6; }
+ if test "$with_ofi_libdir" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ofi-libdir)" >&5
+$as_echo "simple no (specified --without-ofi-libdir)" >&6; }
+else
+ if test "$with_ofi_libdir" = "yes" || test "x$with_ofi_libdir" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
+$as_echo "simple ok (unspecified value)" >&6; }
+else
+ if test ! -d "$with_ofi_libdir"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ofi_libdir not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_ofi_libdir not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ if test "x`ls $with_ofi_libdir/libfabric.* 2> /dev/null`" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ofi_libdir/libfabric.* not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_ofi_libdir/libfabric.* not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ofi_libdir)" >&5
+$as_echo "sanity check ok ($with_ofi_libdir)" >&6; }
+
fi
- done
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+fi
-else
+fi
+
@@ -92834,7 +93138,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_check_ofi_save_CPPFLAGS opal_check_ofi_save_LDFLAGS opal_check_ofi_save_LIBS opal_check_fi_info_pci; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -92853,57 +93157,55 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_check_ofi_save_CPPFLAGS opal_check_ofi_save_LDFLAGS opal_check_ofi_save_LIBS opal_check_fi_info_pci\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
+ opal_check_ofi_save_CPPFLAGS=$CPPFLAGS
+ opal_check_ofi_save_LDFLAGS=$LDFLAGS
+ opal_check_ofi_save_LIBS=$LIBS
+ opal_check_fi_info_pci=0
- for arg in $common_sm_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
+ opal_ofi_happy=yes
+ if test "$with_ofi" = "no"; then :
+ opal_ofi_happy=no
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+
+ if test $opal_ofi_happy = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking looking for OFI libfabric in" >&5
+$as_echo_n "checking looking for OFI libfabric in... " >&6; }
+ if test "$with_ofi" != "yes"; then :
+ opal_ofi_dir=$with_ofi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ($opal_ofi_dir)" >&5
+$as_echo "($opal_ofi_dir)" >&6; }
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: (default search paths)" >&5
+$as_echo "(default search paths)" >&6; }
fi
+ if test ! -z "$with_ofi_libdir" && \
+ test "$with_ofi_libdir" != "yes"; then :
+ opal_ofi_libdir=$with_ofi_libdir
fi
- done
+fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ if test $opal_ofi_happy = yes; then :
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ opal_check_package_opal_ofi_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_opal_ofi_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_opal_ofi_save_LIBS="$LIBS"
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ opal_check_package_opal_ofi_orig_CPPFLAGS="$opal_ofi_CPPFLAGS"
+ opal_check_package_opal_ofi_orig_LDFLAGS="$opal_ofi_LDFLAGS"
+ opal_check_package_opal_ofi_orig_LIBS="$opal_ofi_LIBS"
-fi
- if test "$common_sm_WRAPPER_EXTRA_LIBS" = ""; then :
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
@@ -92916,7 +93218,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in dir_prefix; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -92935,7 +93237,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
eval $opal_str
unset opal_str
@@ -92943,48 +93245,357 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_sm_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+ # so this sucks, but there's no way to get through the progression
+ # of header includes without killing off the cache variable and trying
+ # again...
+ unset ac_cv_header_rdma_fabric_h
+
+ # get rid of the trailing slash(es)
+ dir_prefix=$(echo $opal_ofi_dir | sed -e 'sX/*$XXg')
+ opal_check_package_header_happy="no"
+ if test "$dir_prefix" = "/usr" || \
+ test "$dir_prefix" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
+$as_echo "looking for header without includes" >&6; }
+ for ac_header in rdma/fabric.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rdma/fabric.h" "ac_cv_header_rdma_fabric_h" "$ac_includes_default"
+if test "x$ac_cv_header_rdma_fabric_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RDMA_FABRIC_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
fi
- done
+
+done
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ # no go on the as is - reset the cache and try again
+ unset ac_cv_header_rdma_fabric_h
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
+fi
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ if test "$dir_prefix" != ""; then :
+ opal_ofi_CPPFLAGS="$opal_ofi_CPPFLAGS -I$dir_prefix/include"
+ CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+fi
+ for ac_header in rdma/fabric.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rdma/fabric.h" "ac_cv_header_rdma_fabric_h" "$ac_includes_default"
+if test "x$ac_cv_header_rdma_fabric_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RDMA_FABRIC_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
+fi
+
+done
+
+ if test "$opal_check_package_header_happy" = "yes"; then :
+
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
+
+
+ # see comment above
+ unset ac_cv_search_fi_getinfo
+ opal_check_package_lib_happy="no"
+ if test "$opal_ofi_libdir" != ""; then :
+ # libdir was specified - search only there
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_ofi_libdir"
+ LDFLAGS="$LDFLAGS -L$opal_ofi_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fi_getinfo ();
+int
+main ()
+{
+return fi_getinfo ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' fabric; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fi_getinfo=$ac_res
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fi_getinfo+:} false; then :
+ break
fi
- done
+done
+if ${ac_cv_search_fi_getinfo+:} false; then :
+else
+ ac_cv_search_fi_getinfo=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
+fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir="$opal_ofi_dir"
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fi_getinfo ();
+int
+main ()
+{
+return fi_getinfo ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' fabric; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fi_getinfo=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fi_getinfo+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_fi_getinfo+:} false; then :
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+else
+ ac_cv_search_fi_getinfo=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
+$as_echo "looking for library in lib" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fi_getinfo ();
+int
+main ()
+{
+return fi_getinfo ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' fabric; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fi_getinfo=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fi_getinfo+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_fi_getinfo+:} false; then :
+
+else
+ ac_cv_search_fi_getinfo=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib64"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
+$as_echo "looking for library in lib64" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fi_getinfo ();
+int
+main ()
+{
+return fi_getinfo ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' fabric; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fi_getinfo=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fi_getinfo+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
+ ac_cv_search_fi_getinfo=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
+fi
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # libnl v1 and libnl3 are known to *not* coexist
+ # harmoniously in the same process. Check to see if this
+ # new package will introduce such a conflict.
@@ -92997,7 +93608,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_libnl_sane; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -93016,66 +93627,16 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
-
- for arg in $common_sm_WRAPPER_EXTRA_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-fi
-
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$common_sm_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
+ opal_libnl_sane=1
+ case $host in
+ *linux*)
@@ -93088,7 +93649,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -93107,7 +93668,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
eval $opal_str
unset opal_str
@@ -93115,547 +93676,349 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_sm_WRAPPER_EXTRA_CPPFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
-else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
-fi
-fi
- done
-
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libfabric requires libnl v1 or v3" >&5
+$as_echo_n "checking if libfabric requires libnl v1 or v3... " >&6; }
+ cat > conftest_c.$ac_ext << EOF
+extern void fi_getinfo (void);
+int main(int argc, char *argv[]) {
+ fi_getinfo ();
+ return 0;
+}
+EOF
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ this_requires_v1=0
+ this_requires_v3=0
+ result_msg=
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:93703: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS 1>&5 2>&1
+opal_status=$?
-fi
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:93710: \$? = $opal_status" >&5
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_sm_WRAPPER_EXTRA_CPPFLAGS ($common_sm_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring common_sm_WRAPPER_EXTRA_CPPFLAGS ($common_sm_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ echo \$? = $opal_status >&5
+fi
+if test "$opal_status" = "0"; then
+ unset opal_status
+ ldd_output=`ldd conftest`
+ if echo $ldd_output | grep -q libnl-3.so; then :
+ this_requires_v3=1
+ result_msg="v3"
fi
+ if echo $ldd_output | grep -q libnl.so; then :
+ this_requires_v1=1
+ result_msg="v1 $result_msg"
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
+$as_echo "$result_msg" >&6; }
else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib fabric" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib fabric" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:sm can compile" >&5
-$as_echo_n "checking if MCA component common:sm can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_common" = "sm" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"sm\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"sm\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "sm" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"sm\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"sm\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
-
- # add component to all component list
- all_components="$all_components sm"
fi
+ # Assume that our configuration is sane; this may get reset below
+ libnl_sane=1
+ # Note: in all the checks below, only add this library to the list
+ # of libraries (for v1 or v3 as relevant) if we do not fail.
+ # I.e., assume that a higher level will refuse to use this library
+ # if we return failure.
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_common_sm_DSO=1
-else
- BUILD_opal_common_sm_DSO=0
-fi
- if test "$BUILD_opal_common_sm_DSO" = "1"; then
- MCA_BUILD_opal_common_sm_DSO_TRUE=
- MCA_BUILD_opal_common_sm_DSO_FALSE='#'
-else
- MCA_BUILD_opal_common_sm_DSO_TRUE='#'
- MCA_BUILD_opal_common_sm_DSO_FALSE=
-fi
+ # Does this library require both v1 and v3? If so, fail.
+ if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
- if test "$should_build" = "1"; then :
- components_last_result=1
-else
- components_last_result=0
+ libnl_sane=0
fi
- unset compile_mode
-
-
-
+ # Does this library require v1, but some prior library required
+ # v3? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
+ if test $opal_libnl_version -eq 3; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
- opal_show_subsubsubtitle "MCA component common:ucx (m4 configuration macro)"
+ libnl_sane=0
+else
+ opal_libnlv1_libs="$opal_libnlv1_libs fabric"
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv1_libs
+# Go through each item in the variable and only keep the unique ones
+opal_count=0
+for val in ${opal_libnlv1_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
- component_path="$srcdir/opal/mca/common/ucx"
- want_component=0
+ # Loop over every token we've seen so far
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "ucx" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
- fi
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_common" = "1"; then :
- want_component=0
-fi
- if test "$DISABLE_common_ucx" = "1"; then :
- want_component=0
-fi
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
- if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
-else
- should_build=0
-fi
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
+ # Check the ending condition
- SHARED_FRAMEWORK="$DSO_common"
- SHARED_COMPONENT="$DSO_common_ucx"
+ opal_done="`expr $opal_i \>= $opal_count`"
- STATIC_FRAMEWORK="$STATIC_common"
- STATIC_COMPONENT="$STATIC_common_ucx"
+ # Increment the counter
- shared_mode_override=static
+ opal_i="`expr $opal_i + 1`"
+ done
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+ # If we didn't find the token, add it to the "array"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:ucx compile mode" >&5
-$as_echo_n "checking for MCA component common:ucx compile mode... " >&6; }
- if test "$DIRECT_common" = "ucx" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
+ opal_i="`expr $opal_i - 1`"
fi
+done
+# Take all the items in the "array" and assemble them back into a
+# single variable
- # try to configure the component
-
- ac_config_files="$ac_config_files opal/mca/common/ucx/Makefile"
-
- common_ucx_happy="no"
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_check_ucx_dir; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_check_ucx_dir\""
- eval $opal_str
- unset opal_str
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+# Done; do the assignment
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
- if test -z "$ompi_check_ucx_happy"; then :
+# Clean up
-# Check whether --with-ucx was given.
-if test "${with_ucx+set}" = set; then :
- withval=$with_ucx;
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=1
fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ucx value" >&5
-$as_echo_n "checking --with-ucx value... " >&6; }
- if test "$with_ucx" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ucx)" >&5
-$as_echo "simple no (specified --without-ucx)" >&6; }
-else
- if test "$with_ucx" = "yes" || test "x$with_ucx" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
-$as_echo "simple ok (unspecified value)" >&6; }
-else
- if test ! -d "$with_ucx"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ucx not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_ucx not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- if test "x`ls $with_ucx/include/ucp/api/ucp.h 2> /dev/null`" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ucx/include/ucp/api/ucp.h not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_ucx/include/ucp/api/ucp.h not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ucx)" >&5
-$as_echo "sanity check ok ($with_ucx)" >&6; }
-
fi
+ # Does this library require v3, but some prior library required
+ # v1? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
+ if test $opal_libnl_version -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&2;}
-fi
-
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
-fi
+ libnl_sane=0
+else
+ opal_libnlv3_libs="$opal_libnlv3_libs fabric"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv3_libs
-fi
+# Go through each item in the variable and only keep the unique ones
+opal_count=0
+for val in ${opal_libnlv3_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
-# Check whether --with-ucx-libdir was given.
-if test "${with_ucx_libdir+set}" = set; then :
- withval=$with_ucx_libdir;
-fi
+ # Loop over every token we've seen so far
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ucx-libdir value" >&5
-$as_echo_n "checking --with-ucx-libdir value... " >&6; }
- if test "$with_ucx_libdir" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ucx-libdir)" >&5
-$as_echo "simple no (specified --without-ucx-libdir)" >&6; }
-else
- if test "$with_ucx_libdir" = "yes" || test "x$with_ucx_libdir" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
-$as_echo "simple ok (unspecified value)" >&6; }
-else
- if test ! -d "$with_ucx_libdir"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ucx_libdir not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_ucx_libdir not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- if test "x`ls $with_ucx_libdir/libucp.* 2> /dev/null`" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ucx_libdir/libucp.* not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_ucx_libdir/libucp.* not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ucx_libdir)" >&5
-$as_echo "sanity check ok ($with_ucx_libdir)" >&6; }
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
-fi
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
+ # Check the ending condition
-fi
+ opal_done="`expr $opal_i \>= $opal_count`"
+ # Increment the counter
-fi
+ opal_i="`expr $opal_i + 1`"
+ done
+ # If we didn't find the token, add it to the "array"
-fi
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
+ fi
+done
+# Take all the items in the "array" and assemble them back into a
+# single variable
- if test "$with_ucx" != "no"; then :
- if test -n "$with_ucx" && test "$with_ucx" != "yes"; then :
- ompi_check_ucx_dir="$with_ucx"
-else
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ucx" >&5
-$as_echo_n "checking for ucx... " >&6; }
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
-if test -n "$ucx_CFLAGS"; then
- pkg_cv_ucx_CFLAGS="$ucx_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
- ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_ucx_CFLAGS=`$PKG_CONFIG --cflags "ucx" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$ucx_LIBS"; then
- pkg_cv_ucx_LIBS="$ucx_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
- ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_ucx_LIBS=`$PKG_CONFIG --libs "ucx" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$ucx_STATIC_LIBS"; then
- pkg_cv_ucx_STATIC_LIBS="$ucx_STATIC_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
- ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_ucx_STATIC_LIBS=`$PKG_CONFIG --libs --static "ucx" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
+# Done; do the assignment
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
-if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+# Clean up
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=3
fi
- if test $_pkg_short_errors_supported = yes; then
- ucx_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "ucx" 2>&1`
- else
- ucx_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "ucx" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$ucx_PKG_ERRORS" >&5
- true
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- true
-else
- ucx_CFLAGS=$pkg_cv_ucx_CFLAGS
- ucx_LIBS=$pkg_cv_ucx_LIBS
- ucx_STATIC_LIBS=$pkg_cv_ucx_STATIC_LIBS
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- ompi_check_ucx_dir=`$PKG_CONFIG --variable=prefix ucx`
- if test "$ompi_check_ucx_dir" = "/usr"; then :
- ompi_check_ucx_dir=
-fi
fi
-fi
- ompi_check_ucx_happy="no"
- if test -z "$ompi_check_ucx_dir"; then :
-
- opal_check_package_ompi_check_ucx_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_ompi_check_ucx_save_LDFLAGS="$LDFLAGS"
- opal_check_package_ompi_check_ucx_save_LIBS="$LIBS"
-
- opal_check_package_ompi_check_ucx_orig_CPPFLAGS="$ompi_check_ucx_CPPFLAGS"
- opal_check_package_ompi_check_ucx_orig_LDFLAGS="$ompi_check_ucx_LDFLAGS"
- opal_check_package_ompi_check_ucx_orig_LIBS="$ompi_check_ucx_LIBS"
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ rm -f conftest conftest_c.$ac_ext
+ opal_libnl_sane=$libnl_sane
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in dir_prefix; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
done
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
- eval $opal_str
- unset opal_str
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ ;;
+ esac
+ opal_check_package_libnl_check_ok=$opal_libnl_sane
- # so this sucks, but there's no way to get through the progression
- # of header includes without killing off the cache variable and trying
- # again...
- unset ac_cv_header_ucp_api_ucp_h
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # get rid of the trailing slash(es)
- dir_prefix=$(echo | sed -e 'sX/*$XXg')
- opal_check_package_header_happy="no"
- if test "$dir_prefix" = "/usr" || \
- test "$dir_prefix" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
-$as_echo "looking for header without includes" >&6; }
- for ac_header in ucp/api/ucp.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_UCP_API_UCP_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
-fi
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
-done
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- if test "$opal_check_package_header_happy" = "no"; then :
- # no go on the as is - reset the cache and try again
- unset ac_cv_header_ucp_api_ucp_h
+
+ if test $opal_check_package_libnl_check_ok -eq 0; then :
+ opal_check_package_lib_happy=no
fi
+
fi
- if test "$opal_check_package_header_happy" = "no"; then :
- if test "$dir_prefix" != ""; then :
- ompi_check_ucx_CPPFLAGS="$ompi_check_ucx_CPPFLAGS -I$dir_prefix/include"
- CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
+ if test "$ac_cv_search_fi_getinfo" != "no" &&
+ test "$ac_cv_search_fi_getinfo" != "none required"; then :
+ opal_ofi_LIBS="$ac_cv_search_fi_getinfo "
+else
+ opal_ofi_LIBS=""
fi
- for ac_header in ucp/api/ucp.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_UCP_API_UCP_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
+ opal_check_package_happy="yes"
+else
+ opal_check_package_happy="no"
fi
-done
- if test "$opal_check_package_header_happy" = "yes"; then :
+else
+ opal_check_package_happy="no"
+fi
+else
# This is stolen from autoconf to peek under the covers to get the
# cache variable for the library check. one should not copy this
@@ -93663,15 +94026,15 @@
# see comment above
- unset ac_cv_search_ucp_cleanup
+ unset ac_cv_search_fi_getinfo
opal_check_package_lib_happy="no"
- if test "" != ""; then :
+ if test "$opal_ofi_libdir" != ""; then :
# libdir was specified - search only there
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L"
- LDFLAGS="$LDFLAGS -L"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_ofi_libdir"
+ LDFLAGS="$LDFLAGS -L$opal_ofi_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -93684,42 +94047,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char fi_getinfo ();
int
main ()
{
-return ucp_cleanup ();
+return fi_getinfo ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' fabric; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_fi_getinfo=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_fi_getinfo+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_fi_getinfo=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -93728,22 +94091,22 @@
fi
if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
else
# libdir was not specified - go through search path
- opal_check_package_libdir=""
+ opal_check_package_libdir="$opal_ofi_dir"
if test "$opal_check_package_libdir" = "" || \
test "$opal_check_package_libdir" = "/usr" || \
test "$opal_check_package_libdir" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -93756,42 +94119,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char fi_getinfo ();
int
main ()
{
-return ucp_cleanup ();
+return fi_getinfo ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' fabric; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_fi_getinfo=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_fi_getinfo+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_fi_getinfo=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -93801,21 +94164,21 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -93828,42 +94191,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char fi_getinfo ();
int
main ()
{
-return ucp_cleanup ();
+return fi_getinfo ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' fabric; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_fi_getinfo=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_fi_getinfo+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_fi_getinfo=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -93873,22 +94236,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -93901,42 +94264,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char fi_getinfo ();
int
main ()
{
-return ucp_cleanup ();
+return fi_getinfo ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' fabric; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_fi_getinfo=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_fi_getinfo+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_fi_getinfo=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -93946,9 +94309,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
fi
fi
@@ -94045,12 +94408,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
-$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libfabric requires libnl v1 or v3" >&5
+$as_echo_n "checking if libfabric requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void ucp_cleanup (void);
+extern void fi_getinfo (void);
int main(int argc, char *argv[]) {
- ucp_cleanup ();
+ fi_getinfo ();
return 0;
}
EOF
@@ -94062,14 +94425,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:94065: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
+echo "configure:94428: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:94072: \$? = $opal_status" >&5
+ echo "configure:94435: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -94089,8 +94452,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib fabric" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib fabric" >&2;}
fi
@@ -94104,15 +94467,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
libnl_sane=0
fi
@@ -94121,19 +94484,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs ucp"
+ opal_libnlv1_libs="$opal_libnlv1_libs fabric"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -94212,19 +94575,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs ucp"
+ opal_libnlv3_libs="$opal_libnlv3_libs fabric"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -94365,11 +94728,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ucp_cleanup" != "no" &&
- test "$ac_cv_search_ucp_cleanup" != "none required"; then :
- ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
+ if test "$ac_cv_search_fi_getinfo" != "no" &&
+ test "$ac_cv_search_fi_getinfo" != "none required"; then :
+ opal_ofi_LIBS="$ac_cv_search_fi_getinfo "
else
- ompi_check_ucx_LIBS="-luct -lucm -lucs"
+ opal_ofi_LIBS=""
fi
opal_check_package_happy="yes"
else
@@ -94377,312 +94740,114 @@
fi
-else
- opal_check_package_happy="no"
fi
-else
+ unset opal_check_package_header_happy
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+
+ if test "$opal_check_package_happy" = "yes"; then :
- # see comment above
- unset ac_cv_search_ucp_cleanup
- opal_check_package_lib_happy="no"
- if test "" != ""; then :
- # libdir was specified - search only there
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L"
- LDFLAGS="$LDFLAGS -L"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ opal_ofi_CPPFLAGS="$opal_check_package_opal_ofi_orig_CPPFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ opal_ofi_LIBS="$opal_check_package_opal_ofi_orig_LIBS"
+ opal_ofi_happy=no
+fi
+
+ CPPFLAGS="$opal_check_package_opal_ofi_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ LIBS="$opal_check_package_opal_ofi_save_LIBS"
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
+
+ CPPFLAGS="$CPPFLAGS $opal_ofi_CPPFLAGS"
+
+ if test $opal_ofi_happy = yes; then :
+ for ac_header in rdma/fi_ext.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rdma/fi_ext.h" "ac_cv_header_rdma_fi_ext_h" "$ac_includes_default"
+if test "x$ac_cv_header_rdma_fi_ext_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RDMA_FI_EXT_H 1
+_ACEOF
+
fi
+
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+
+ ac_fn_c_check_member "$LINENO" "struct fi_info" "nic" "ac_cv_member_struct_fi_info_nic" "#include
+"
+if test "x$ac_cv_member_struct_fi_info_nic" = xyes; then :
+ opal_check_fi_info_pci=1
else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ opal_check_fi_info_pci=0
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_OFI_PCI_DATA_AVAILABLE $opal_check_fi_info_pci
+_ACEOF
+
+
+ ac_fn_c_check_decl "$LINENO" "PMIX_PACKAGE_RANK" "ac_cv_have_decl_PMIX_PACKAGE_RANK" "#include
+"
+if test "x$ac_cv_have_decl_PMIX_PACKAGE_RANK" = xyes; then :
+ ac_have_decl=1
else
- opal_check_package_lib_happy="no"
+ ac_have_decl=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-else
- # libdir was not specified - go through search path
- opal_check_package_libdir=""
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_PMIX_PACKAGE_RANK $ac_have_decl
_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
-
-else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
-
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
-$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
+ ac_fn_c_check_type "$LINENO" "struct fi_ops_mem_monitor" "ac_cv_type_struct_fi_ops_mem_monitor" "#ifdef HAVE_RDMA_FI_EXT_H
+#include
#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
+"
+if test "x$ac_cv_type_struct_fi_ops_mem_monitor" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_FI_OPS_MEM_MONITOR 1
_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
-else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
fi
+
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
-$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ CPPFLAGS=$opal_check_ofi_save_CPPFLAGS
+ LDFLAGS=$opal_check_ofi_save_LDFLAGS
+ LIBS=$opal_check_ofi_save_LIBS
+
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
-else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
-fi
-fi
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # libnl v1 and libnl3 are known to *not* coexist
- # harmoniously in the same process. Check to see if this
- # new package will introduce such a conflict.
@@ -94695,7 +94860,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_libnl_sane; do
+ for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -94714,325 +94879,314 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
+ opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
- opal_libnl_sane=1
- case $host in
- *linux*)
-
+ ompi_summary_section=$(echo Transports | tr ' ' '_')
+ ompi_summary_line="OpenFabrics OFI Libfabric: $opal_ofi_happy"
+ ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
+ if test -z "$ompi_summary_section_current" ; then
+ if test -z "$ompi_summary_sections" ; then
+ ompi_summary_sections=$ompi_summary_section
+ else
+ ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
+ fi
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
+ else
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
eval $opal_str
- unset opal_str
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
-$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
- cat > conftest_c.$ac_ext << EOF
-extern void ucp_cleanup (void);
-int main(int argc, char *argv[]) {
- ucp_cleanup ();
- return 0;
-}
-EOF
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- this_requires_v1=0
- this_requires_v3=0
- result_msg=
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
-# 1 is the command
-# 2 is actions to do if success
-# 3 is actions to do if fail
-echo "configure:94790: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
-opal_status=$?
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
-# 1 is the message
-# 2 is whether to put a prefix or not
-if test -n "1"; then
- echo "configure:94797: \$? = $opal_status" >&5
-else
- echo \$? = $opal_status >&5
-fi
-if test "$opal_status" = "0"; then
- unset opal_status
- ldd_output=`ldd conftest`
- if echo $ldd_output | grep -q libnl-3.so; then :
- this_requires_v3=1
- result_msg="v3"
+
+ if test $opal_ofi_happy = no; then :
+ if test -n "$with_ofi" && test "$with_ofi" != "no"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OFI libfabric support requested (via --with-ofi or --with-libfabric), but not found." >&5
+$as_echo "$as_me: WARNING: OFI libfabric support requested (via --with-ofi or --with-libfabric), but not found." >&2;}
+ as_fn_error $? "Cannot continue." "$LINENO" 5
fi
- if echo $ldd_output | grep -q libnl.so; then :
- this_requires_v1=1
- result_msg="v1 $result_msg"
+
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
-$as_echo "$result_msg" >&6; }
else
- unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
-
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OFI libfabric is available" >&5
+$as_echo_n "checking if OFI libfabric is available... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $opal_ofi_happy" >&5
+$as_echo "$opal_ofi_happy" >&6; }
fi
- # Assume that our configuration is sane; this may get reset below
- libnl_sane=1
-
- # Note: in all the checks below, only add this library to the list
- # of libraries (for v1 or v3 as relevant) if we do not fail.
- # I.e., assume that a higher level will refuse to use this library
- # if we return failure.
-
- # Does this library require both v1 and v3? If so, fail.
- if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
- libnl_sane=0
+ # Note that $opal_common_ofi_happy is
+ # used in other configure.m4's to know if ofi configured
+ # successfully.
+ if test "$opal_ofi_happy" = "yes"; then :
+ opal_common_ofi_happy=yes
+ common_ofi_WRAPPER_EXTRA_LDFLAGS=$opal_ofi_LDFLAGS
+ common_ofi_WRAPPER_EXTRA_LIBS=$opal_ofi_LIBS
+ should_build=$should_build
+else
+ opal_common_ofi_happy=no
+ should_build=0
fi
- # Does this library require v1, but some prior library required
- # v3? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
- if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv1_libs="$opal_libnlv1_libs ucp"
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv1_libs
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
-# Go through each item in the variable and only keep the unique ones
+ if test "$should_build" = "1"; then :
-opal_count=0
-for val in ${opal_libnlv1_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
- # Loop over every token we've seen so far
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/common/ofi/post_configure.sh"
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components ofi"
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components ofi"
+ else
+ if test "common" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/common/ofi/lib${OPAL_LIB_PREFIX}mca_common_ofi.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/common/ofi/libmca_common_ofi.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_common_ofi_component;" >> $outfile.extern
+ echo " &mca_common_ofi_component, " >> $outfile.struct
+ static_components="$static_components ofi"
+ fi
- # Check the ending condition
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:ofi can compile" >&5
+$as_echo_n "checking if MCA component common:ofi can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
- opal_done="`expr $opal_i \>= $opal_count`"
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_common" = "ofi" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** common component ofi was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_common" = "ofi" ; then
+as_fn_error $? "*** common component ofi was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
- # Increment the counter
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ if test "$common_ofi_WRAPPER_EXTRA_LDFLAGS" = ""; then :
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-# Done; do the assignment
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-# Clean up
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=1
+ for arg in $common_ofi_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
+ done
fi
-
- # Does this library require v3, but some prior library required
- # v1? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
- if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- opal_libnlv3_libs="$opal_libnlv3_libs ucp"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv3_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv3_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- # Check the ending condition
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- opal_done="`expr $opal_i \>= $opal_count`"
- # Increment the counter
+else
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-# Done; do the assignment
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-# Clean up
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=3
+ for arg in $common_ofi_WRAPPER_EXTRA_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
+ done
fi
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- rm -f conftest conftest_c.$ac_ext
-
- opal_libnl_sane=$libnl_sane
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
+else
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
# Unwind the index
@@ -95056,10 +95210,66 @@
done
- ;;
- esac
+fi
+ if test "$common_ofi_WRAPPER_EXTRA_LIBS" = ""; then :
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $common_ofi_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
- opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -95082,28 +95292,64 @@
done
- if test $opal_check_package_libnl_check_ok -eq 0; then :
- opal_check_package_lib_happy=no
-fi
+else
-fi
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ucp_cleanup" != "no" &&
- test "$ac_cv_search_ucp_cleanup" != "none required"; then :
- ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
-else
- ompi_check_ucx_LIBS="-luct -lucm -lucs"
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $common_ofi_WRAPPER_EXTRA_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
- opal_check_package_happy="yes"
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- opal_check_package_happy="no"
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
fi
-
-
fi
- unset opal_check_package_header_happy
+ done
# Unwind the index
@@ -95127,78 +95373,17 @@
done
-
- if test "$opal_check_package_happy" = "yes"; then :
- ompi_check_ucx_happy="yes"
-else
- ompi_check_ucx_CPPFLAGS="$opal_check_package_ompi_check_ucx_orig_CPPFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- ompi_check_ucx_LIBS="$opal_check_package_ompi_check_ucx_orig_LIBS"
- ompi_check_ucx_happy="no"
-fi
-
- CPPFLAGS="$opal_check_package_ompi_check_ucx_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- LIBS="$opal_check_package_ompi_check_ucx_save_LIBS"
-
- if test "$ompi_check_ucx_happy" = yes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for UCX version compatibility" >&5
-$as_echo_n "checking for UCX version compatibility... " >&6; }
-
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ompi_check_ucx_happy="yes"
-else
- ompi_check_ucx_happy="no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_check_ucx_happy" >&5
-$as_echo "$ompi_check_ucx_happy" >&6; }
-fi
- if test "$ompi_check_ucx_happy" = "no"; then :
- ompi_check_ucx_dir=/opt/ucx
-fi
-fi
- if test "$ompi_check_ucx_happy" != yes; then :
- if test -n "$with_ucx_libdir"; then :
- ompi_check_ucx_libdir="$with_ucx_libdir"
-else
- files=`ls $ompi_check_ucx_dir/lib64/libucp.* 2> /dev/null | wc -l`
- if test "$files" -gt 0; then :
- ompi_check_ucx_libdir=$ompi_check_ucx_dir/lib64
-else
- ompi_check_ucx_libdir=$ompi_check_ucx_dir/lib
-fi
fi
- ompi_check_ucx_common_ucx_save_CPPFLAGS="$CPPFLAGS"
- ompi_check_ucx_common_ucx_save_LDFLAGS="$LDFLAGS"
- ompi_check_ucx_common_ucx_save_LIBS="$LIBS"
-
-
- opal_check_package_ompi_check_ucx_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_ompi_check_ucx_save_LDFLAGS="$LDFLAGS"
- opal_check_package_ompi_check_ucx_save_LIBS="$LIBS"
-
- opal_check_package_ompi_check_ucx_orig_CPPFLAGS="$ompi_check_ucx_CPPFLAGS"
- opal_check_package_ompi_check_ucx_orig_LDFLAGS="$ompi_check_ucx_LDFLAGS"
- opal_check_package_ompi_check_ucx_orig_LIBS="$ompi_check_ucx_LIBS"
-
+ fi
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ if test "$common_ofi_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=0
+ if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
+ if test "$with_devel_headers" = "yes"; then :
@@ -95211,7 +95396,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in dir_prefix; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -95230,7 +95415,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -95238,357 +95423,288 @@
opal_scope_index=`expr $opal_scope_index + 1`
- # so this sucks, but there's no way to get through the progression
- # of header includes without killing off the cache variable and trying
- # again...
- unset ac_cv_header_ucp_api_ucp_h
-
- # get rid of the trailing slash(es)
- dir_prefix=$(echo $ompi_check_ucx_dir | sed -e 'sX/*$XXg')
- opal_check_package_header_happy="no"
- if test "$dir_prefix" = "/usr" || \
- test "$dir_prefix" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
-$as_echo "looking for header without includes" >&6; }
- for ac_header in ucp/api/ucp.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_UCP_API_UCP_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
-fi
-
-done
-
- if test "$opal_check_package_header_happy" = "no"; then :
- # no go on the as is - reset the cache and try again
- unset ac_cv_header_ucp_api_ucp_h
+ for arg in $common_ofi_WRAPPER_EXTRA_CPPFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_cppflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
+ done
fi
-
- if test "$opal_check_package_header_happy" = "no"; then :
- if test "$dir_prefix" != ""; then :
- ompi_check_ucx_CPPFLAGS="$ompi_check_ucx_CPPFLAGS -I$dir_prefix/include"
- CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_cppflags"; then :
+ mca_wrapper_extra_cppflags=$arg
+else
+ mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
fi
- for ac_header in ucp/api/ucp.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_UCP_API_UCP_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
fi
+ done
-done
- if test "$opal_check_package_header_happy" = "yes"; then :
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- # see comment above
- unset ac_cv_search_ucp_cleanup
- opal_check_package_lib_happy="no"
- if test "$ompi_check_ucx_libdir" != ""; then :
- # libdir was specified - search only there
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$ompi_check_ucx_libdir"
- LDFLAGS="$LDFLAGS -L$ompi_check_ucx_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
-
else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_ofi_WRAPPER_EXTRA_CPPFLAGS ($common_ofi_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring common_ofi_WRAPPER_EXTRA_CPPFLAGS ($common_ofi_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$ompi_check_ucx_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:ofi can compile" >&5
+$as_echo_n "checking if MCA component common:ofi can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
-else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_common" = "ofi" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ofi\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"ofi\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
+ if test ! -z "$DIRECT_common" ; then
+ if test "$DIRECT_common" = "ofi" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ofi\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"ofi\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ fi
+
+ # add component to all component list
+ all_components="$all_components ofi"
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
-$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ # set the AM_CONDITIONAL on how we should build
+ if test "$compile_mode" = "dso"; then :
+ BUILD_opal_common_ofi_DSO=1
else
- ac_cv_search_ucp_cleanup=no
+ BUILD_opal_common_ofi_DSO=0
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+ if test "$BUILD_opal_common_ofi_DSO" = "1"; then
+ MCA_BUILD_opal_common_ofi_DSO_TRUE=
+ MCA_BUILD_opal_common_ofi_DSO_FALSE='#'
else
- opal_check_package_lib_happy="no"
+ MCA_BUILD_opal_common_ofi_DSO_TRUE='#'
+ MCA_BUILD_opal_common_ofi_DSO_FALSE=
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
-$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
+ if test "$should_build" = "1"; then :
+ components_last_result=1
else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
+ components_last_result=0
fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
-else
- ac_cv_search_ucp_cleanup=no
+ unset compile_mode
+
+
+
+
+
+ opal_show_subsubsubtitle "MCA component common:sm (m4 configuration macro)"
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+
+
+
+ component_path="$srcdir/opal/mca/common/sm"
+ want_component=0
+
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
+ fi
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_common" ; then
+ if test "$DIRECT_common" = "sm" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
+ fi
+ fi
+
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_common" = "1"; then :
+ want_component=0
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ if test "$DISABLE_common_sm" = "1"; then :
+ want_component=0
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+
+ if test "$want_component" = "1"; then :
+ should_build=$components_looking_for_succeed
else
- opal_check_package_lib_happy="no"
+ should_build=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
-fi
-fi
+ # Allow the component to override the build mode if it really wants to.
+ # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # libnl v1 and libnl3 are known to *not* coexist
- # harmoniously in the same process. Check to see if this
- # new package will introduce such a conflict.
+ SHARED_FRAMEWORK="$DSO_common"
+ SHARED_COMPONENT="$DSO_common_sm"
+
+ STATIC_FRAMEWORK="$STATIC_common"
+ STATIC_COMPONENT="$STATIC_common_sm"
+
+ shared_mode_override=static
+
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:sm compile mode" >&5
+$as_echo_n "checking for MCA component common:sm compile mode... " >&6; }
+ if test "$DIRECT_common" = "sm" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
+
+
+ # try to configure the component
+
+ ac_config_files="$ac_config_files opal/mca/common/sm/Makefile"
+
+ should_build=$should_build
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+
+ if test "$should_build" = "1"; then :
+
+
+
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/common/sm/post_configure.sh"
+
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components sm"
+
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components sm"
+ else
+ if test "common" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/common/sm/lib${OPAL_LIB_PREFIX}mca_common_sm.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/common/sm/libmca_common_sm.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_common_sm_component;" >> $outfile.extern
+ echo " &mca_common_sm_component, " >> $outfile.struct
+ static_components="$static_components sm"
+ fi
+
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:sm can compile" >&5
+$as_echo_n "checking if MCA component common:sm can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_common" = "sm" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** common component sm was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_common" = "sm" ; then
+as_fn_error $? "*** common component sm was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ if test "$common_sm_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -95601,7 +95717,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_libnl_sane; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -95620,16 +95736,56 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
- opal_libnl_sane=1
- case $host in
- *linux*)
+
+ for arg in $common_sm_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
+else
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+else
@@ -95642,7 +95798,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -95661,7 +95817,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -95669,276 +95825,187 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
-$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
- cat > conftest_c.$ac_ext << EOF
-extern void ucp_cleanup (void);
-int main(int argc, char *argv[]) {
- ucp_cleanup ();
- return 0;
-}
-EOF
-
- this_requires_v1=0
- this_requires_v3=0
- result_msg=
-
-# 1 is the command
-# 2 is actions to do if success
-# 3 is actions to do if fail
-echo "configure:95696: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
-opal_status=$?
-
-# 1 is the message
-# 2 is whether to put a prefix or not
-if test -n "1"; then
- echo "configure:95703: \$? = $opal_status" >&5
-else
- echo \$? = $opal_status >&5
-fi
-if test "$opal_status" = "0"; then
- unset opal_status
- ldd_output=`ldd conftest`
- if echo $ldd_output | grep -q libnl-3.so; then :
- this_requires_v3=1
- result_msg="v3"
+ for arg in $common_sm_WRAPPER_EXTRA_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
- if echo $ldd_output | grep -q libnl.so; then :
- this_requires_v1=1
- result_msg="v1 $result_msg"
+ done
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
-$as_echo "$result_msg" >&6; }
-
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
-
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
-
- # Assume that our configuration is sane; this may get reset below
- libnl_sane=1
-
- # Note: in all the checks below, only add this library to the list
- # of libraries (for v1 or v3 as relevant) if we do not fail.
- # I.e., assume that a higher level will refuse to use this library
- # if we return failure.
-
- # Does this library require both v1 and v3? If so, fail.
- if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
fi
+ done
- # Does this library require v1, but some prior library required
- # v3? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
- if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv1_libs="$opal_libnlv1_libs ucp"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv1_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv1_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- # Check the ending condition
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- opal_done="`expr $opal_i \>= $opal_count`"
- # Increment the counter
+fi
+ if test "$common_sm_WRAPPER_EXTRA_LIBS" = ""; then :
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-# Done; do the assignment
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-# Clean up
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=1
+ for arg in $common_sm_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
+ done
fi
-
- # Does this library require v3, but some prior library required
- # v1? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
- if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- opal_libnlv3_libs="$opal_libnlv3_libs ucp"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv3_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv3_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- # Check the ending condition
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- opal_done="`expr $opal_i \>= $opal_count`"
- # Increment the counter
+else
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-# Done; do the assignment
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-# Clean up
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=3
+ for arg in $common_sm_WRAPPER_EXTRA_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
+ done
fi
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- rm -f conftest conftest_c.$ac_ext
-
- opal_libnl_sane=$libnl_sane
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
# Unwind the index
@@ -95962,10 +96029,75 @@
done
- ;;
- esac
+fi
+
+ fi
+
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ if test "$common_sm_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=0
+ if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
+ if test "$with_devel_headers" = "yes"; then :
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $common_sm_WRAPPER_EXTRA_CPPFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_cppflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_cppflags"; then :
+ mca_wrapper_extra_cppflags=$arg
+else
+ mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
+fi
+fi
+ done
- opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -95988,118 +96120,594 @@
done
- if test $opal_check_package_libnl_check_ok -eq 0; then :
- opal_check_package_lib_happy=no
-fi
-
fi
-
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ucp_cleanup" != "no" &&
- test "$ac_cv_search_ucp_cleanup" != "none required"; then :
- ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
else
- ompi_check_ucx_LIBS="-luct -lucm -lucs"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_sm_WRAPPER_EXTRA_CPPFLAGS ($common_sm_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring common_sm_WRAPPER_EXTRA_CPPFLAGS ($common_sm_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
- opal_check_package_happy="yes"
-else
- opal_check_package_happy="no"
fi
-
-else
- opal_check_package_happy="no"
-fi
else
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:sm can compile" >&5
+$as_echo_n "checking if MCA component common:sm can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_common" = "sm" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"sm\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"sm\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # see comment above
- unset ac_cv_search_ucp_cleanup
- opal_check_package_lib_happy="no"
- if test "$ompi_check_ucx_libdir" != ""; then :
- # libdir was specified - search only there
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$ompi_check_ucx_libdir"
- LDFLAGS="$LDFLAGS -L$ompi_check_ucx_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ if test ! -z "$DIRECT_common" ; then
+ if test "$DIRECT_common" = "sm" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"sm\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"sm\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ fi
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
+ # add component to all component list
+ all_components="$all_components sm"
fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+
+
+ # set the AM_CONDITIONAL on how we should build
+ if test "$compile_mode" = "dso"; then :
+ BUILD_opal_common_sm_DSO=1
else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ BUILD_opal_common_sm_DSO=0
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+ if test "$BUILD_opal_common_sm_DSO" = "1"; then
+ MCA_BUILD_opal_common_sm_DSO_TRUE=
+ MCA_BUILD_opal_common_sm_DSO_FALSE='#'
else
- opal_check_package_lib_happy="no"
+ MCA_BUILD_opal_common_sm_DSO_TRUE='#'
+ MCA_BUILD_opal_common_sm_DSO_FALSE=
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
+
+ if test "$should_build" = "1"; then :
+ components_last_result=1
else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$ompi_check_ucx_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ components_last_result=0
+fi
+
+ unset compile_mode
+
+
+
+
+
+ opal_show_subsubsubtitle "MCA component common:ucx (m4 configuration macro)"
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+
+
+
+ component_path="$srcdir/opal/mca/common/ucx"
+ want_component=0
+
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
+ fi
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_common" ; then
+ if test "$DIRECT_common" = "ucx" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
+ fi
+ fi
+
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_common" = "1"; then :
+ want_component=0
+fi
+ if test "$DISABLE_common_ucx" = "1"; then :
+ want_component=0
+fi
+
+ if test "$want_component" = "1"; then :
+ should_build=$components_looking_for_succeed
+else
+ should_build=0
+fi
+
+ # Allow the component to override the build mode if it really wants to.
+ # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
+
+ SHARED_FRAMEWORK="$DSO_common"
+ SHARED_COMPONENT="$DSO_common_ucx"
+
+ STATIC_FRAMEWORK="$STATIC_common"
+ STATIC_COMPONENT="$STATIC_common_ucx"
+
+ shared_mode_override=static
+
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:ucx compile mode" >&5
+$as_echo_n "checking for MCA component common:ucx compile mode... " >&6; }
+ if test "$DIRECT_common" = "ucx" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
+
+
+ # try to configure the component
+
+ ac_config_files="$ac_config_files opal/mca/common/ucx/Makefile"
+
+ common_ucx_happy="no"
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in ompi_check_ucx_dir; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"ompi_check_ucx_dir\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ if test -z "$ompi_check_ucx_happy"; then :
+
+# Check whether --with-ucx was given.
+if test "${with_ucx+set}" = set; then :
+ withval=$with_ucx;
+fi
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ucx value" >&5
+$as_echo_n "checking --with-ucx value... " >&6; }
+ if test "$with_ucx" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ucx)" >&5
+$as_echo "simple no (specified --without-ucx)" >&6; }
+else
+ if test "$with_ucx" = "yes" || test "x$with_ucx" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
+$as_echo "simple ok (unspecified value)" >&6; }
+else
+ if test ! -d "$with_ucx"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ucx not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_ucx not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ if test "x`ls $with_ucx/include/ucp/api/ucp.h 2> /dev/null`" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ucx/include/ucp/api/ucp.h not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_ucx/include/ucp/api/ucp.h not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ucx)" >&5
+$as_echo "sanity check ok ($with_ucx)" >&6; }
+
+fi
+
+
+fi
+
+
+fi
+
+
+fi
+
+
+# Check whether --with-ucx-libdir was given.
+if test "${with_ucx_libdir+set}" = set; then :
+ withval=$with_ucx_libdir;
+fi
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ucx-libdir value" >&5
+$as_echo_n "checking --with-ucx-libdir value... " >&6; }
+ if test "$with_ucx_libdir" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ucx-libdir)" >&5
+$as_echo "simple no (specified --without-ucx-libdir)" >&6; }
+else
+ if test "$with_ucx_libdir" = "yes" || test "x$with_ucx_libdir" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
+$as_echo "simple ok (unspecified value)" >&6; }
+else
+ if test ! -d "$with_ucx_libdir"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ucx_libdir not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_ucx_libdir not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ if test "x`ls $with_ucx_libdir/libucp.* 2> /dev/null`" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ucx_libdir/libucp.* not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_ucx_libdir/libucp.* not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ucx_libdir)" >&5
+$as_echo "sanity check ok ($with_ucx_libdir)" >&6; }
+
+fi
+
+
+fi
+
+
+fi
+
+
+fi
+
+
+ if test "$with_ucx" != "no"; then :
+ if test -n "$with_ucx" && test "$with_ucx" != "yes"; then :
+ ompi_check_ucx_dir="$with_ucx"
+else
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ucx" >&5
+$as_echo_n "checking for ucx... " >&6; }
+
+if test -n "$ucx_CFLAGS"; then
+ pkg_cv_ucx_CFLAGS="$ucx_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ucx_CFLAGS=`$PKG_CONFIG --cflags "ucx" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$ucx_LIBS"; then
+ pkg_cv_ucx_LIBS="$ucx_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ucx_LIBS=`$PKG_CONFIG --libs "ucx" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$ucx_STATIC_LIBS"; then
+ pkg_cv_ucx_STATIC_LIBS="$ucx_STATIC_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ucx_STATIC_LIBS=`$PKG_CONFIG --libs --static "ucx" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ ucx_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "ucx" 2>&1`
+ else
+ ucx_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "ucx" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$ucx_PKG_ERRORS" >&5
+
+ true
+elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ true
+else
+ ucx_CFLAGS=$pkg_cv_ucx_CFLAGS
+ ucx_LIBS=$pkg_cv_ucx_LIBS
+ ucx_STATIC_LIBS=$pkg_cv_ucx_STATIC_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ ompi_check_ucx_dir=`$PKG_CONFIG --variable=prefix ucx`
+ if test "$ompi_check_ucx_dir" = "/usr"; then :
+ ompi_check_ucx_dir=
+fi
+fi
+fi
+ ompi_check_ucx_happy="no"
+ if test -z "$ompi_check_ucx_dir"; then :
+
+ opal_check_package_ompi_check_ucx_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_ompi_check_ucx_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_ompi_check_ucx_save_LIBS="$LIBS"
+
+ opal_check_package_ompi_check_ucx_orig_CPPFLAGS="$ompi_check_ucx_CPPFLAGS"
+ opal_check_package_ompi_check_ucx_orig_LDFLAGS="$ompi_check_ucx_LDFLAGS"
+ opal_check_package_ompi_check_ucx_orig_LIBS="$ompi_check_ucx_LIBS"
+
+
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in dir_prefix; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ # so this sucks, but there's no way to get through the progression
+ # of header includes without killing off the cache variable and trying
+ # again...
+ unset ac_cv_header_ucp_api_ucp_h
+
+ # get rid of the trailing slash(es)
+ dir_prefix=$(echo | sed -e 'sX/*$XXg')
+ opal_check_package_header_happy="no"
+ if test "$dir_prefix" = "/usr" || \
+ test "$dir_prefix" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
+$as_echo "looking for header without includes" >&6; }
+ for ac_header in ucp/api/ucp.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_UCP_API_UCP_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
+fi
+
+done
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ # no go on the as is - reset the cache and try again
+ unset ac_cv_header_ucp_api_ucp_h
+fi
+fi
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ if test "$dir_prefix" != ""; then :
+ ompi_check_ucx_CPPFLAGS="$ompi_check_ucx_CPPFLAGS -I$dir_prefix/include"
+ CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+fi
+ for ac_header in ucp/api/ucp.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_UCP_API_UCP_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
+fi
+
+done
+
+ if test "$opal_check_package_header_happy" = "yes"; then :
+
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
+
+
+ # see comment above
+ unset ac_cv_search_ucp_cleanup
+ opal_check_package_lib_happy="no"
+ if test "" != ""; then :
+ # libdir was specified - search only there
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L"
+ LDFLAGS="$LDFLAGS -L"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+
+else
+ ac_cv_search_ucp_cleanup=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
+fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir=""
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -96418,14 +97026,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:96421: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
+echo "configure:97029: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:96428: \$? = $opal_status" >&5
+ echo "configure:97036: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -96733,266 +97341,312 @@
fi
-fi
- unset opal_check_package_header_happy
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-
- if test "$opal_check_package_happy" = "yes"; then :
- ompi_check_ucx_happy="yes"
else
- ompi_check_ucx_CPPFLAGS="$opal_check_package_ompi_check_ucx_orig_CPPFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- ompi_check_ucx_LIBS="$opal_check_package_ompi_check_ucx_orig_LIBS"
- ompi_check_ucx_happy="no"
+ opal_check_package_happy="no"
fi
+else
- CPPFLAGS="$opal_check_package_ompi_check_ucx_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- LIBS="$opal_check_package_ompi_check_ucx_save_LIBS"
-
-
- CPPFLAGS="$ompi_check_ucx_common_ucx_save_CPPFLAGS"
- LDFLAGS="$ompi_check_ucx_common_ucx_save_LDFLAGS"
- LIBS="$ompi_check_ucx_common_ucx_save_LIBS"
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
- if test "$ompi_check_ucx_happy" = yes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for UCX version compatibility" >&5
-$as_echo_n "checking for UCX version compatibility... " >&6; }
- old_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ # see comment above
+ unset ac_cv_search_ucp_cleanup
+ opal_check_package_lib_happy="no"
+ if test "" != ""; then :
+ # libdir was specified - search only there
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L"
+ LDFLAGS="$LDFLAGS -L"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#include
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
int
main ()
{
-
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ompi_check_ucx_happy="yes"
-else
- ompi_check_ucx_happy="no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_check_ucx_happy" >&5
-$as_echo "$ompi_check_ucx_happy" >&6; }
- CPPFLAGS=$old_CPPFLAGS
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
- old_CPPFLAGS="$CPPFLAGS"
- if test -n "$ompi_check_ucx_dir"; then :
- CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"
-fi
- ac_fn_c_check_decl "$LINENO" "ucp_tag_send_nbr" "ac_cv_have_decl_ucp_tag_send_nbr" "#include
-"
-if test "x$ac_cv_have_decl_ucp_tag_send_nbr" = xyes; then :
- ac_have_decl=1
else
- ac_have_decl=0
+ ac_cv_search_ucp_cleanup=no
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_TAG_SEND_NBR $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
-
-$as_echo "#define HAVE_UCP_TAG_SEND_NBR 1" >>confdefs.h
-
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
fi
-
- ac_fn_c_check_decl "$LINENO" "ucp_ep_flush_nb" "ac_cv_have_decl_ucp_ep_flush_nb" "#include
-"
-if test "x$ac_cv_have_decl_ucp_ep_flush_nb" = xyes; then :
- ac_have_decl=1
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
else
- ac_have_decl=0
+ opal_check_package_lib_happy="no"
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_EP_FLUSH_NB $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ucp_worker_flush_nb" "ac_cv_have_decl_ucp_worker_flush_nb" "#include
-"
-if test "x$ac_cv_have_decl_ucp_worker_flush_nb" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir=""
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_WORKER_FLUSH_NB $ac_have_decl
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
_ACEOF
-ac_fn_c_check_decl "$LINENO" "ucp_request_check_status" "ac_cv_have_decl_ucp_request_check_status" "#include
-"
-if test "x$ac_cv_have_decl_ucp_request_check_status" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_REQUEST_CHECK_STATUS $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ucp_put_nb" "ac_cv_have_decl_ucp_put_nb" "#include
-"
-if test "x$ac_cv_have_decl_ucp_put_nb" = xyes; then :
- ac_have_decl=1
else
- ac_have_decl=0
+ ac_cv_search_ucp_cleanup=no
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_PUT_NB $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ucp_get_nb" "ac_cv_have_decl_ucp_get_nb" "#include
-"
-if test "x$ac_cv_have_decl_ucp_get_nb" = xyes; then :
- ac_have_decl=1
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
else
- ac_have_decl=0
+ opal_check_package_lib_happy="no"
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_GET_NB $ac_have_decl
-_ACEOF
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
+fi
+fi
- ac_fn_c_check_decl "$LINENO" "ucm_test_events" "ac_cv_have_decl_ucm_test_events" "#include
-"
-if test "x$ac_cv_have_decl_ucm_test_events" = xyes; then :
- ac_have_decl=1
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
+$as_echo "looking for library in lib" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- ac_have_decl=0
-fi
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCM_TEST_EVENTS $ac_have_decl
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
_ACEOF
-
- ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_AND" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_AND" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_AND" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_POST_OP_AND $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_OR" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_OR" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_OR" = xyes; then :
- ac_have_decl=1
else
- ac_have_decl=0
+ ac_cv_search_ucp_cleanup=no
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_POST_OP_OR $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_XOR" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_XOR" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_XOR" = xyes; then :
- ac_have_decl=1
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
else
- ac_have_decl=0
+ opal_check_package_lib_happy="no"
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_POST_OP_XOR $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FAND" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FAND" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FAND" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
+fi
+fi
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FAND $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FOR" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FOR" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FOR" = xyes; then :
- ac_have_decl=1
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
+$as_echo "looking for library in lib64" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- ac_have_decl=0
-fi
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FOR $ac_have_decl
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FXOR" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FXOR" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FXOR" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FXOR $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" "ac_cv_have_decl_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" "#include
-"
-if test "x$ac_cv_have_decl_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" = xyes; then :
- ac_have_decl=1
else
- ac_have_decl=0
+ ac_cv_search_ucp_cleanup=no
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN $ac_have_decl
-_ACEOF
-
- ac_fn_c_check_decl "$LINENO" "UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" "ac_cv_have_decl_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" "#include
-"
-if test "x$ac_cv_have_decl_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" = xyes; then :
- ac_have_decl=1
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
else
- ac_have_decl=0
+ opal_check_package_lib_happy="no"
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
-
-$as_echo "#define HAVE_UCP_WORKER_ADDRESS_FLAGS 1" >>confdefs.h
-
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
+fi
+fi
+fi
fi
- CPPFLAGS=$old_CPPFLAGS
-
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # libnl v1 and libnl3 are known to *not* coexist
+ # harmoniously in the same process. Check to see if this
+ # new package will introduce such a conflict.
@@ -97005,7 +97659,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
+ for opal_var in opal_libnl_sane; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -97024,399 +97678,325 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
+ opal_libnl_sane=1
+ case $host in
+ *linux*)
- ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="Open UCX: $ompi_check_ucx_happy"
- ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
-
- if test -z "$ompi_summary_section_current" ; then
- if test -z "$ompi_summary_sections" ; then
- ompi_summary_sections=$ompi_summary_section
- else
- ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
- fi
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
- else
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
- fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ eval $opal_str
+ unset opal_str
-fi
-fi
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
- if test "$ompi_check_ucx_happy" = "yes"; then :
- common_ucx_CPPFLAGS="$common_ucx_CPPFLAGS $ompi_check_ucx_CPPFLAGS"
- common_ucx_LDFLAGS="$common_ucx_LDFLAGS $ompi_check_ucx_LDFLAGS"
- common_ucx_LIBS="$common_ucx_LIBS $ompi_check_ucx_LIBS"
-$as_echo "#define HAVE_UCX 1" >>confdefs.h
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- common_ucx_happy="yes"
-else
- if test ! -z "$with_ucx" && test "$with_ucx" != "no"; then :
- as_fn_error $? "UCX support requested but not found. Aborting" "$LINENO" 5
-fi
-$as_echo "#define HAVE_UCX 0" >>confdefs.h
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
+$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
+ cat > conftest_c.$ac_ext << EOF
+extern void ucp_cleanup (void);
+int main(int argc, char *argv[]) {
+ ucp_cleanup ();
+ return 0;
+}
+EOF
- common_ucx_happy="no"
+ this_requires_v1=0
+ this_requires_v3=0
+ result_msg=
+
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:97754: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
+opal_status=$?
+
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:97761: \$? = $opal_status" >&5
+else
+ echo \$? = $opal_status >&5
+fi
+if test "$opal_status" = "0"; then
+ unset opal_status
+ ldd_output=`ldd conftest`
+ if echo $ldd_output | grep -q libnl-3.so; then :
+ this_requires_v3=1
+ result_msg="v3"
+fi
+ if echo $ldd_output | grep -q libnl.so; then :
+ this_requires_v1=1
+ result_msg="v1 $result_msg"
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
+$as_echo "$result_msg" >&6; }
+else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ # Assume that our configuration is sane; this may get reset below
+ libnl_sane=1
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ # Note: in all the checks below, only add this library to the list
+ # of libraries (for v1 or v3 as relevant) if we do not fail.
+ # I.e., assume that a higher level will refuse to use this library
+ # if we return failure.
+ # Does this library require both v1 and v3? If so, fail.
+ if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
- if test "$common_ucx_happy" = "yes"; then :
- should_build=$should_build
-else
- should_build=0
+ libnl_sane=0
fi
+ # Does this library require v1, but some prior library required
+ # v3? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
+ if test $opal_libnl_version -eq 3; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
- # substitute in the things needed to build common_ucx
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ libnl_sane=0
+else
+ opal_libnlv1_libs="$opal_libnlv1_libs ucp"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv1_libs
+# Go through each item in the variable and only keep the unique ones
+opal_count=0
+for val in ${opal_libnlv1_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+ # Loop over every token we've seen so far
- if test "$should_build" = "1"; then :
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/common/ucx/post_configure.sh"
+ # Check the ending condition
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components ucx"
+ opal_done="`expr $opal_i \>= $opal_count`"
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components ucx"
- else
- if test "common" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/common/ucx/lib${OPAL_LIB_PREFIX}mca_common_ucx.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/common/ucx/libmca_common_ucx.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_common_ucx_component;" >> $outfile.extern
- echo " &mca_common_ucx_component, " >> $outfile.struct
- static_components="$static_components ucx"
- fi
+ # Increment the counter
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:ucx can compile" >&5
-$as_echo_n "checking if MCA component common:ucx can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ opal_i="`expr $opal_i + 1`"
+ done
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_common" = "ucx" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** common component ucx was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+ # If we didn't find the token, add it to the "array"
+
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_common" = "ucx" ; then
-as_fn_error $? "*** common component ucx was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$common_ucx_WRAPPER_EXTRA_LDFLAGS" = ""; then :
-
-
+# Take all the items in the "array" and assemble them back into a
+# single variable
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+# Done; do the assignment
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
+# Clean up
- for arg in $common_ucx_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=1
fi
- done
+fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ # Does this library require v3, but some prior library required
+ # v1? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
+ if test $opal_libnl_version -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ libnl_sane=0
+else
+ opal_libnlv3_libs="$opal_libnlv3_libs ucp"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv3_libs
-else
+# Go through each item in the variable and only keep the unique ones
+opal_count=0
+for val in ${opal_libnlv3_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
+ # Loop over every token we've seen so far
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+ # Check the ending condition
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ opal_done="`expr $opal_i \>= $opal_count`"
+ # Increment the counter
- for arg in $common_ucx_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
-fi
+ opal_i="`expr $opal_i + 1`"
done
+ # If we didn't find the token, add it to the "array"
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+# Take all the items in the "array" and assemble them back into a
+# single variable
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
-fi
- if test "$common_ucx_WRAPPER_EXTRA_LIBS" = ""; then :
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
+# Done; do the assignment
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+# Clean up
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=3
+fi
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+fi
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ rm -f conftest conftest_c.$ac_ext
- for arg in $common_ucx_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
+ opal_libnl_sane=$libnl_sane
# Unwind the index
@@ -97440,65 +98020,10 @@
done
-else
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- for arg in $common_ucx_WRAPPER_EXTRA_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
+ ;;
+ esac
+ opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -97521,74 +98046,28 @@
done
+ if test $opal_check_package_libnl_check_ok -eq 0; then :
+ opal_check_package_lib_happy=no
fi
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$common_ucx_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- for arg in $common_ucx_WRAPPER_EXTRA_CPPFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
fi
- done
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
+ if test "$ac_cv_search_ucp_cleanup" != "no" &&
+ test "$ac_cv_search_ucp_cleanup" != "none required"; then :
+ ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
+else
+ ompi_check_ucx_LIBS="-luct -lucm -lucs"
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
+ opal_check_package_happy="yes"
else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
+ opal_check_package_happy="no"
fi
+
+
fi
- done
+ unset opal_check_package_header_happy
# Unwind the index
@@ -97612,302 +98091,73 @@
done
-fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_ucx_WRAPPER_EXTRA_CPPFLAGS ($common_ucx_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring common_ucx_WRAPPER_EXTRA_CPPFLAGS ($common_ucx_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
-fi
-fi
+ if test "$opal_check_package_happy" = "yes"; then :
+ ompi_check_ucx_happy="yes"
else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:ucx can compile" >&5
-$as_echo_n "checking if MCA component common:ucx can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_common" = "ucx" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ucx\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"ucx\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "ucx" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ucx\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"ucx\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
-
- # add component to all component list
- all_components="$all_components ucx"
+ ompi_check_ucx_CPPFLAGS="$opal_check_package_ompi_check_ucx_orig_CPPFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ ompi_check_ucx_LIBS="$opal_check_package_ompi_check_ucx_orig_LIBS"
+ ompi_check_ucx_happy="no"
fi
+ CPPFLAGS="$opal_check_package_ompi_check_ucx_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ LIBS="$opal_check_package_ompi_check_ucx_save_LIBS"
+ if test "$ompi_check_ucx_happy" = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for UCX version compatibility" >&5
+$as_echo_n "checking for UCX version compatibility... " >&6; }
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_common_ucx_DSO=1
-else
- BUILD_opal_common_ucx_DSO=0
-fi
- if test "$BUILD_opal_common_ucx_DSO" = "1"; then
- MCA_BUILD_opal_common_ucx_DSO_TRUE=
- MCA_BUILD_opal_common_ucx_DSO_FALSE='#'
-else
- MCA_BUILD_opal_common_ucx_DSO_TRUE='#'
- MCA_BUILD_opal_common_ucx_DSO_FALSE=
-fi
-
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
+int
+main ()
+{
- if test "$should_build" = "1"; then :
- components_last_result=1
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ompi_check_ucx_happy="yes"
else
- components_last_result=0
+ ompi_check_ucx_happy="no"
fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- unset compile_mode
-
-
-
-
-
- opal_show_subsubsubtitle "MCA component common:verbs (m4 configuration macro)"
-
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
-
-
-
- component_path="$srcdir/opal/mca/common/verbs"
- want_component=0
-
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "verbs" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
- fi
-
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_common" = "1"; then :
- want_component=0
-fi
- if test "$DISABLE_common_verbs" = "1"; then :
- want_component=0
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_check_ucx_happy" >&5
+$as_echo "$ompi_check_ucx_happy" >&6; }
fi
-
- if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
-else
- should_build=0
+ if test "$ompi_check_ucx_happy" = "no"; then :
+ ompi_check_ucx_dir=/opt/ucx
fi
-
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
-
- SHARED_FRAMEWORK="$DSO_common"
- SHARED_COMPONENT="$DSO_common_verbs"
-
- STATIC_FRAMEWORK="$STATIC_common"
- STATIC_COMPONENT="$STATIC_common_verbs"
-
- shared_mode_override=static
-
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:verbs compile mode" >&5
-$as_echo_n "checking for MCA component common:verbs compile mode... " >&6; }
- if test "$DIRECT_common" = "verbs" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
- fi
-
-
- # try to configure the component
-
- ac_config_files="$ac_config_files opal/mca/common/verbs/Makefile"
-
- common_verbs_happy="no"
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in common_verbs_msg; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"common_verbs_msg\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- # Setup the --with switches to allow users to specify where
- # verbs stuff lives.
-
-
- if test -z "$opal_check_openib_happy" ; then
- #
- # Add padding to OpenIB header
- #
- # Check whether --enable-openib-control-hdr-padding was given.
-if test "${enable_openib_control_hdr_padding+set}" = set; then :
- enableval=$enable_openib_control_hdr_padding;
fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if want to add padding to the openib BTL control header" >&5
-$as_echo_n "checking if want to add padding to the openib BTL control header... " >&6; }
- if test "$enable_openib_control_hdr_padding" = "yes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- ompi_openib_pad_hdr=1
- elif test "$enable_openib_control_hdr_padding" = "no"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- ompi_openib_pad_hdr=0
- else
- #
- # Enable padding for SPARC platforms by default because the
- # btl will segv otherwise. Keep padding disabled for other
- # platforms since there are some performance implications with
- # padding on for those platforms.
- #
- case "${host}" in
- sparc*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (enabled by default on SPARC)" >&5
-$as_echo "yes (enabled by default on SPARC)" >&6; }
- ompi_openib_pad_hdr=1
- ;;
- *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- ompi_openib_pad_hdr=0
- ;;
- esac
- fi
-
-cat >>confdefs.h <<_ACEOF
-#define OPAL_OPENIB_PAD_HDR $ompi_openib_pad_hdr
-_ACEOF
-
-
- if test "$opal_want_verbs" = "no"; then :
- opal_check_openib_happy="no"
+ if test "$ompi_check_ucx_happy" != yes; then :
+ if test -n "$with_ucx_libdir"; then :
+ ompi_check_ucx_libdir="$with_ucx_libdir"
else
- opal_check_openib_happy="yes"
-fi
-
- ompi_check_openib_common_verbs_save_CPPFLAGS="$CPPFLAGS"
- ompi_check_openib_common_verbs_save_LDFLAGS="$LDFLAGS"
- ompi_check_openib_common_verbs_save_LIBS="$LIBS"
-
- if test "$opal_check_openib_happy" = "yes"; then :
- for ac_header in fcntl.h sys/poll.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
+ files=`ls $ompi_check_ucx_dir/lib64/libucp.* 2> /dev/null | wc -l`
+ if test "$files" -gt 0; then :
+ ompi_check_ucx_libdir=$ompi_check_ucx_dir/lib64
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: fcntl.h sys/poll.h not found. Can not build component." >&5
-$as_echo "$as_me: WARNING: fcntl.h sys/poll.h not found. Can not build component." >&2;}
- opal_check_openib_happy="no"
+ ompi_check_ucx_libdir=$ompi_check_ucx_dir/lib
fi
-
-done
-
fi
- if test "$opal_check_openib_happy" = "yes"; then :
+ ompi_check_ucx_common_ucx_save_CPPFLAGS="$CPPFLAGS"
+ ompi_check_ucx_common_ucx_save_LDFLAGS="$LDFLAGS"
+ ompi_check_ucx_common_ucx_save_LIBS="$LIBS"
- opal_check_package_opal_check_openib_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_opal_check_openib_save_LDFLAGS="$LDFLAGS"
- opal_check_package_opal_check_openib_save_LIBS="$LIBS"
- opal_check_package_opal_check_openib_orig_CPPFLAGS="$opal_check_openib_CPPFLAGS"
- opal_check_package_opal_check_openib_orig_LDFLAGS="$opal_check_openib_LDFLAGS"
- opal_check_package_opal_check_openib_orig_LIBS="$opal_check_openib_LIBS"
+ opal_check_package_ompi_check_ucx_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_ompi_check_ucx_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_ompi_check_ucx_save_LIBS="$LIBS"
+
+ opal_check_package_ompi_check_ucx_orig_CPPFLAGS="$ompi_check_ucx_CPPFLAGS"
+ opal_check_package_ompi_check_ucx_orig_LDFLAGS="$ompi_check_ucx_LDFLAGS"
+ opal_check_package_ompi_check_ucx_orig_LIBS="$ompi_check_ucx_LIBS"
# This is stolen from autoconf to peek under the covers to get the
@@ -97955,22 +98205,22 @@
# so this sucks, but there's no way to get through the progression
# of header includes without killing off the cache variable and trying
# again...
- unset ac_cv_header_infiniband_verbs_h
+ unset ac_cv_header_ucp_api_ucp_h
# get rid of the trailing slash(es)
- dir_prefix=$(echo $opal_verbs_dir | sed -e 'sX/*$XXg')
+ dir_prefix=$(echo $ompi_check_ucx_dir | sed -e 'sX/*$XXg')
opal_check_package_header_happy="no"
if test "$dir_prefix" = "/usr" || \
test "$dir_prefix" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
$as_echo "looking for header without includes" >&6; }
- for ac_header in infiniband/verbs.h
+ for ac_header in ucp/api/ucp.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "infiniband/verbs.h" "ac_cv_header_infiniband_verbs_h" "$ac_includes_default"
-if test "x$ac_cv_header_infiniband_verbs_h" = xyes; then :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define HAVE_INFINIBAND_VERBS_H 1
+#define HAVE_UCP_API_UCP_H 1
_ACEOF
opal_check_package_header_happy="yes"
fi
@@ -97979,21 +98229,21 @@
if test "$opal_check_package_header_happy" = "no"; then :
# no go on the as is - reset the cache and try again
- unset ac_cv_header_infiniband_verbs_h
+ unset ac_cv_header_ucp_api_ucp_h
fi
fi
if test "$opal_check_package_header_happy" = "no"; then :
if test "$dir_prefix" != ""; then :
- opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$dir_prefix/include"
+ ompi_check_ucx_CPPFLAGS="$ompi_check_ucx_CPPFLAGS -I$dir_prefix/include"
CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
fi
- for ac_header in infiniband/verbs.h
+ for ac_header in ucp/api/ucp.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "infiniband/verbs.h" "ac_cv_header_infiniband_verbs_h" "$ac_includes_default"
-if test "x$ac_cv_header_infiniband_verbs_h" = xyes; then :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define HAVE_INFINIBAND_VERBS_H 1
+#define HAVE_UCP_API_UCP_H 1
_ACEOF
opal_check_package_header_happy="yes"
fi
@@ -98008,15 +98258,15 @@
# see comment above
- unset ac_cv_search_ibv_open_device
+ unset ac_cv_search_ucp_cleanup
opal_check_package_lib_happy="no"
- if test "$opal_verbs_libdir" != ""; then :
+ if test "$ompi_check_ucx_libdir" != ""; then :
# libdir was specified - search only there
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_verbs_libdir"
- LDFLAGS="$LDFLAGS -L$opal_verbs_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$ompi_check_ucx_libdir"
+ LDFLAGS="$LDFLAGS -L$ompi_check_ucx_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -98029,42 +98279,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ibv_open_device ();
+char ucp_cleanup ();
int
main ()
{
-return ibv_open_device ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ibverbs; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_ibv_open_device=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -98073,22 +98323,22 @@
fi
if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
else
# libdir was not specified - go through search path
- opal_check_package_libdir="$opal_verbs_dir"
+ opal_check_package_libdir="$ompi_check_ucx_dir"
if test "$opal_check_package_libdir" = "" || \
test "$opal_check_package_libdir" = "/usr" || \
test "$opal_check_package_libdir" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -98101,42 +98351,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ibv_open_device ();
+char ucp_cleanup ();
int
main ()
{
-return ibv_open_device ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ibverbs; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_ibv_open_device=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -98146,21 +98396,21 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -98173,42 +98423,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ibv_open_device ();
+char ucp_cleanup ();
int
main ()
{
-return ibv_open_device ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ibverbs; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_ibv_open_device=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -98218,22 +98468,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib64"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -98246,42 +98496,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ibv_open_device ();
+char ucp_cleanup ();
int
main ()
{
-return ibv_open_device ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ibverbs; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_ibv_open_device=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -98291,9 +98541,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
@@ -98390,12 +98640,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libibverbs requires libnl v1 or v3" >&5
-$as_echo_n "checking if libibverbs requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
+$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void ibv_open_device (void);
+extern void ucp_cleanup (void);
int main(int argc, char *argv[]) {
- ibv_open_device ();
+ ucp_cleanup ();
return 0;
}
EOF
@@ -98407,14 +98657,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:98410: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
+echo "configure:98660: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:98417: \$? = $opal_status" >&5
+ echo "configure:98667: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -98434,8 +98684,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ibverbs" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ibverbs" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
fi
@@ -98449,15 +98699,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
fi
@@ -98466,19 +98716,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs ibverbs"
+ opal_libnlv1_libs="$opal_libnlv1_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -98557,19 +98807,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs ibverbs"
+ opal_libnlv3_libs="$opal_libnlv3_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -98710,11 +98960,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ibv_open_device" != "no" &&
- test "$ac_cv_search_ibv_open_device" != "none required"; then :
- opal_check_openib_LIBS="$ac_cv_search_ibv_open_device "
+ if test "$ac_cv_search_ucp_cleanup" != "no" &&
+ test "$ac_cv_search_ucp_cleanup" != "none required"; then :
+ ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
else
- opal_check_openib_LIBS=""
+ ompi_check_ucx_LIBS="-luct -lucm -lucs"
fi
opal_check_package_happy="yes"
else
@@ -98733,15 +98983,15 @@
# see comment above
- unset ac_cv_search_ibv_open_device
+ unset ac_cv_search_ucp_cleanup
opal_check_package_lib_happy="no"
- if test "$opal_verbs_libdir" != ""; then :
+ if test "$ompi_check_ucx_libdir" != ""; then :
# libdir was specified - search only there
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_verbs_libdir"
- LDFLAGS="$LDFLAGS -L$opal_verbs_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$ompi_check_ucx_libdir"
+ LDFLAGS="$LDFLAGS -L$ompi_check_ucx_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -98754,42 +99004,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ibv_open_device ();
+char ucp_cleanup ();
int
main ()
{
-return ibv_open_device ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ibverbs; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_ibv_open_device=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -98798,22 +99048,22 @@
fi
if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
else
# libdir was not specified - go through search path
- opal_check_package_libdir="$opal_verbs_dir"
+ opal_check_package_libdir="$ompi_check_ucx_dir"
if test "$opal_check_package_libdir" = "" || \
test "$opal_check_package_libdir" = "/usr" || \
test "$opal_check_package_libdir" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -98826,42 +99076,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ibv_open_device ();
+char ucp_cleanup ();
int
main ()
{
-return ibv_open_device ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ibverbs; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_ibv_open_device=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -98871,21 +99121,21 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -98898,42 +99148,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ibv_open_device ();
+char ucp_cleanup ();
int
main ()
{
-return ibv_open_device ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ibverbs; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_ibv_open_device=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -98943,22 +99193,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib64"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -98971,42 +99221,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ibv_open_device ();
+char ucp_cleanup ();
int
main ()
{
-return ibv_open_device ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ibverbs; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_ibv_open_device=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -99016,9 +99266,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
@@ -99115,12 +99365,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libibverbs requires libnl v1 or v3" >&5
-$as_echo_n "checking if libibverbs requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
+$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void ibv_open_device (void);
+extern void ucp_cleanup (void);
int main(int argc, char *argv[]) {
- ibv_open_device ();
+ ucp_cleanup ();
return 0;
}
EOF
@@ -99132,14 +99382,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:99135: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
+echo "configure:99385: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:99142: \$? = $opal_status" >&5
+ echo "configure:99392: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -99159,8 +99409,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ibverbs" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ibverbs" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
fi
@@ -99174,15 +99424,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
fi
@@ -99191,19 +99441,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs ibverbs"
+ opal_libnlv1_libs="$opal_libnlv1_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -99282,19 +99532,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs ibverbs"
+ opal_libnlv3_libs="$opal_libnlv3_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -99435,11 +99685,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ibv_open_device" != "no" &&
- test "$ac_cv_search_ibv_open_device" != "none required"; then :
- opal_check_openib_LIBS="$ac_cv_search_ibv_open_device "
+ if test "$ac_cv_search_ucp_cleanup" != "no" &&
+ test "$ac_cv_search_ucp_cleanup" != "none required"; then :
+ ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
else
- opal_check_openib_LIBS=""
+ ompi_check_ucx_LIBS="-luct -lucm -lucs"
fi
opal_check_package_happy="yes"
else
@@ -99474,460 +99724,411 @@
if test "$opal_check_package_happy" = "yes"; then :
- opal_check_openib_happy="yes"
+ ompi_check_ucx_happy="yes"
else
- opal_check_openib_CPPFLAGS="$opal_check_package_opal_check_openib_orig_CPPFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- opal_check_openib_LIBS="$opal_check_package_opal_check_openib_orig_LIBS"
- opal_check_openib_happy="no"
+ ompi_check_ucx_CPPFLAGS="$opal_check_package_ompi_check_ucx_orig_CPPFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ ompi_check_ucx_LIBS="$opal_check_package_ompi_check_ucx_orig_LIBS"
+ ompi_check_ucx_happy="no"
fi
- CPPFLAGS="$opal_check_package_opal_check_openib_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- LIBS="$opal_check_package_opal_check_openib_save_LIBS"
+ CPPFLAGS="$opal_check_package_ompi_check_ucx_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ LIBS="$opal_check_package_ompi_check_ucx_save_LIBS"
-fi
- CPPFLAGS="$CPPFLAGS $opal_check_openib_CPPFLAGS"
- LDFLAGS="$LDFLAGS $opal_check_openib_LDFLAGS"
- LIBS="$LIBS $opal_check_openib_LIBS"
+ CPPFLAGS="$ompi_check_ucx_common_ucx_save_CPPFLAGS"
+ LDFLAGS="$ompi_check_ucx_common_ucx_save_LDFLAGS"
+ LIBS="$ompi_check_ucx_common_ucx_save_LIBS"
- if test "$opal_check_openib_happy" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking number of arguments to ibv_create_cq" >&5
-$as_echo_n "checking number of arguments to ibv_create_cq... " >&6; }
-if ${ompi_cv_func_ibv_create_cq_args+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ if test "$ompi_check_ucx_happy" = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for UCX version compatibility" >&5
+$as_echo_n "checking for UCX version compatibility... " >&6; }
+
+ old_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#include
+#include
int
main ()
{
-ibv_create_cq(NULL, 0, NULL, NULL, 0);
+
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ompi_cv_func_ibv_create_cq_args=5
+if ac_fn_c_try_compile "$LINENO"; then :
+ ompi_check_ucx_happy="yes"
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ ompi_check_ucx_happy="no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_check_ucx_happy" >&5
+$as_echo "$ompi_check_ucx_happy" >&6; }
+ CPPFLAGS=$old_CPPFLAGS
+fi
+fi
+
+ old_CPPFLAGS="$CPPFLAGS"
+ if test -n "$ompi_check_ucx_dir"; then :
+ CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"
+fi
+ # Turn off UCX version v1.8 due to issue #8321
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking UCX version" >&5
+$as_echo_n "checking UCX version... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#include
+#include
+ #if (UCP_API_MAJOR == 1) && (UCP_API_MINOR == 8)
+ #error "Invalid version"
+ #endif
int
main ()
{
-ibv_create_cq(NULL, 0, NULL);
+
;
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ompi_cv_func_ibv_create_cq_args=3
+if ac_fn_c_try_cpp "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (not 1.8.x)" >&5
+$as_echo "ok (not 1.8.x)" >&6; }
else
- ompi_cv_func_ibv_create_cq_args="unknown"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: bad (1.8.x)" >&5
+$as_echo "bad (1.8.x)" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: UCX support skipped because version 1.8.x was found, which has a known catastrophic issue." >&5
+$as_echo "$as_me: WARNING: UCX support skipped because version 1.8.x was found, which has a known catastrophic issue." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please upgrade to UCX version 1.9 or higher." >&5
+$as_echo "$as_me: WARNING: Please upgrade to UCX version 1.9 or higher." >&2;}
+ ompi_check_ucx_happy=no
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_cv_func_ibv_create_cq_args" >&5
-$as_echo "$ompi_cv_func_ibv_create_cq_args" >&6; }
- if test "$ompi_cv_func_ibv_create_cq_args" = "unknown"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Can not determine number of args to ibv_create_cq." >&5
-$as_echo "$as_me: WARNING: Can not determine number of args to ibv_create_cq." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Not building component." >&5
-$as_echo "$as_me: WARNING: Not building component." >&2;}
- opal_check_openib_happy="no"
+rm -f conftest.err conftest.i conftest.$ac_ext
+ if test "$ompi_check_ucx_happy" = yes; then :
+
+ ac_fn_c_check_decl "$LINENO" "ucp_tag_send_nbr" "ac_cv_have_decl_ucp_tag_send_nbr" "#include
+"
+if test "x$ac_cv_have_decl_ucp_tag_send_nbr" = xyes; then :
+ ac_have_decl=1
else
+ ac_have_decl=0
+fi
cat >>confdefs.h <<_ACEOF
-#define OPAL_IBV_CREATE_CQ_ARGS $ompi_cv_func_ibv_create_cq_args
+#define HAVE_DECL_UCP_TAG_SEND_NBR $ac_have_decl
_ACEOF
+if test $ac_have_decl = 1; then :
-fi
-fi
+$as_echo "#define HAVE_UCP_TAG_SEND_NBR 1" >>confdefs.h
- #
- # OpenIB dynamic SL
- #
- # Check whether --enable-openib-dynamic-sl was given.
-if test "${enable_openib_dynamic_sl+set}" = set; then :
- enableval=$enable_openib_dynamic_sl;
fi
-
- # Set these up so that we can do an AC_DEFINE below
- # (unconditionally)
- opal_check_openib_have_xrc=0
- opal_check_openib_have_xrc_domains=0
- opal_check_openib_have_opensm_devel=0
-
- # If we have the openib stuff available, find out what we've got
- if test "$opal_check_openib_happy" = "yes"; then :
- ac_fn_c_check_decl "$LINENO" "IBV_EVENT_CLIENT_REREGISTER" "ac_cv_have_decl_IBV_EVENT_CLIENT_REREGISTER" "#include
+ ac_fn_c_check_decl "$LINENO" "ucp_ep_flush_nb" "ac_cv_have_decl_ucp_ep_flush_nb" "#include
"
-if test "x$ac_cv_have_decl_IBV_EVENT_CLIENT_REREGISTER" = xyes; then :
+if test "x$ac_cv_have_decl_ucp_ep_flush_nb" = xyes; then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_EVENT_CLIENT_REREGISTER $ac_have_decl
+#define HAVE_DECL_UCP_EP_FLUSH_NB $ac_have_decl
_ACEOF
-ac_fn_c_check_decl "$LINENO" "IBV_ACCESS_SO" "ac_cv_have_decl_IBV_ACCESS_SO" "#include
+ac_fn_c_check_decl "$LINENO" "ucp_worker_flush_nb" "ac_cv_have_decl_ucp_worker_flush_nb" "#include
"
-if test "x$ac_cv_have_decl_IBV_ACCESS_SO" = xyes; then :
+if test "x$ac_cv_have_decl_ucp_worker_flush_nb" = xyes; then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_ACCESS_SO $ac_have_decl
+#define HAVE_DECL_UCP_WORKER_FLUSH_NB $ac_have_decl
_ACEOF
-ac_fn_c_check_decl "$LINENO" "IBV_ATOMIC_HCA" "ac_cv_have_decl_IBV_ATOMIC_HCA" "#include
+ac_fn_c_check_decl "$LINENO" "ucp_request_check_status" "ac_cv_have_decl_ucp_request_check_status" "#include
"
-if test "x$ac_cv_have_decl_IBV_ATOMIC_HCA" = xyes; then :
+if test "x$ac_cv_have_decl_ucp_request_check_status" = xyes; then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_ATOMIC_HCA $ac_have_decl
-_ACEOF
-
- for ac_func in ibv_get_device_list ibv_resize_cq
-do :
- as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_DECL_UCP_REQUEST_CHECK_STATUS $ac_have_decl
_ACEOF
-
+ac_fn_c_check_decl "$LINENO" "ucp_put_nb" "ac_cv_have_decl_ucp_put_nb" "#include
+"
+if test "x$ac_cv_have_decl_ucp_put_nb" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-done
-
- # struct ibv_device.transport_type was added in OFED v1.2
- ac_fn_c_check_member "$LINENO" "struct ibv_device" "transport_type" "ac_cv_member_struct_ibv_device_transport_type" "#include
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_PUT_NB $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_get_nb" "ac_cv_have_decl_ucp_get_nb" "#include
"
-if test "x$ac_cv_member_struct_ibv_device_transport_type" = xyes; then :
+if test "x$ac_cv_have_decl_ucp_get_nb" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_IBV_DEVICE_TRANSPORT_TYPE 1
+#define HAVE_DECL_UCP_GET_NB $ac_have_decl
_ACEOF
-
-
+ac_fn_c_check_decl "$LINENO" "ucp_put_nbx" "ac_cv_have_decl_ucp_put_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_put_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-
- # We have to check functions both exits *and* are declared
- # since some distro ship broken ibverbs devel headers
- # IBV_DEVICE_XRC is common to all OFED versions
- # ibv_create_xrc_rcv_qp was added in OFED 1.3
- # ibv_cmd_open_xrcd (aka XRC Domains) was added in OFED 3.12
- if test "$enable_connectx_xrc" = "yes"; then
- ac_fn_c_check_decl "$LINENO" "IBV_DEVICE_XRC" "ac_cv_have_decl_IBV_DEVICE_XRC" "#include
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_PUT_NBX $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_get_nbx" "ac_cv_have_decl_ucp_get_nbx" "#include
"
-if test "x$ac_cv_have_decl_IBV_DEVICE_XRC" = xyes; then :
+if test "x$ac_cv_have_decl_ucp_get_nbx" = xyes; then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_DEVICE_XRC $ac_have_decl
+#define HAVE_DECL_UCP_GET_NBX $ac_have_decl
_ACEOF
-if test $ac_have_decl = 1; then :
- opal_check_openib_have_xrc=1
- opal_check_openib_have_xrc_domains=1
+ac_fn_c_check_decl "$LINENO" "ucp_atomic_op_nbx" "ac_cv_have_decl_ucp_atomic_op_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_atomic_op_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
- fi
- if test "$enable_connectx_xrc" = "yes" \
- && test $opal_check_openib_have_xrc -eq 1; then
- ac_fn_c_check_decl "$LINENO" "ibv_create_xrc_rcv_qp" "ac_cv_have_decl_ibv_create_xrc_rcv_qp" "#include
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_OP_NBX $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_ep_flush_nbx" "ac_cv_have_decl_ucp_ep_flush_nbx" "#include
"
-if test "x$ac_cv_have_decl_ibv_create_xrc_rcv_qp" = xyes; then :
+if test "x$ac_cv_have_decl_ucp_ep_flush_nbx" = xyes; then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_CREATE_XRC_RCV_QP $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
- for ac_func in ibv_create_xrc_rcv_qp
-do :
- ac_fn_c_check_func "$LINENO" "ibv_create_xrc_rcv_qp" "ac_cv_func_ibv_create_xrc_rcv_qp"
-if test "x$ac_cv_func_ibv_create_xrc_rcv_qp" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_IBV_CREATE_XRC_RCV_QP 1
+#define HAVE_DECL_UCP_EP_FLUSH_NBX $ac_have_decl
_ACEOF
+ ac_fn_c_check_decl "$LINENO" "ucm_test_events" "ac_cv_have_decl_ucm_test_events" "#include
+"
+if test "x$ac_cv_have_decl_ucm_test_events" = xyes; then :
+ ac_have_decl=1
else
- opal_check_openib_have_xrc=0
+ ac_have_decl=0
fi
-done
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCM_TEST_EVENTS $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucm_test_external_events" "ac_cv_have_decl_ucm_test_external_events" "#include
+"
+if test "x$ac_cv_have_decl_ucm_test_external_events" = xyes; then :
+ ac_have_decl=1
else
- opal_check_openib_have_xrc=0
+ ac_have_decl=0
fi
- fi
- if test "$enable_connectx_xrc" = "yes" \
- && test $opal_check_openib_have_xrc_domains -eq 1; then
- ac_fn_c_check_decl "$LINENO" "ibv_cmd_open_xrcd" "ac_cv_have_decl_ibv_cmd_open_xrcd" "#include
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCM_TEST_EXTERNAL_EVENTS $ac_have_decl
+_ACEOF
+
+ ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_AND" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_AND" "#include
"
-if test "x$ac_cv_have_decl_ibv_cmd_open_xrcd" = xyes; then :
+if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_AND" = xyes; then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_CMD_OPEN_XRCD $ac_have_decl
+#define HAVE_DECL_UCP_ATOMIC_POST_OP_AND $ac_have_decl
_ACEOF
-if test $ac_have_decl = 1; then :
- ac_fn_c_check_decl "$LINENO" "IBV_SRQT_XRC" "ac_cv_have_decl_IBV_SRQT_XRC" "#include
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_OR" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_OR" "#include
"
-if test "x$ac_cv_have_decl_IBV_SRQT_XRC" = xyes; then :
+if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_OR" = xyes; then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_SRQT_XRC $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
- for ac_func in ibv_cmd_open_xrcd
-do :
- ac_fn_c_check_func "$LINENO" "ibv_cmd_open_xrcd" "ac_cv_func_ibv_cmd_open_xrcd"
-if test "x$ac_cv_func_ibv_cmd_open_xrcd" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_IBV_CMD_OPEN_XRCD 1
+#define HAVE_DECL_UCP_ATOMIC_POST_OP_OR $ac_have_decl
_ACEOF
-
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_XOR" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_XOR" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_XOR" = xyes; then :
+ ac_have_decl=1
else
- opal_check_openib_have_xrc_domains=0
+ ac_have_decl=0
fi
-done
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_POST_OP_XOR $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FAND" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FAND" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FAND" = xyes; then :
+ ac_have_decl=1
else
- opal_check_openib_have_xrc_domains=0
+ ac_have_decl=0
fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FAND $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FOR" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FOR" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FOR" = xyes; then :
+ ac_have_decl=1
else
- opal_check_openib_have_xrc_domains=0
+ ac_have_decl=0
fi
- # XRC and XRC Domains should be considered as exclusive
- if test "$opal_check_openib_have_xrc" -eq 1 && \
- test "$opal_check_openib_have_xrc_domains" -eq 1; then
- opal_check_openib_have_xrc=0
- fi
- fi
-
- if test "no" != "$enable_openib_dynamic_sl"; then
- # We need ib_types.h file, which is installed with opensm-devel
- # package. However, ib_types.h has a bad include directive,
- # which will cause AC_CHECK_HEADER to fail.
- # So instead, we will look for another file that is also
- # installed as part of opensm-devel package and included in
- # ib_types.h, but it doesn't include any other IB-related files.
- ac_fn_c_check_header_mongrel "$LINENO" "infiniband/complib/cl_types_osd.h" "ac_cv_header_infiniband_complib_cl_types_osd_h" "$ac_includes_default"
-if test "x$ac_cv_header_infiniband_complib_cl_types_osd_h" = xyes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cl_map_init in -losmcomp" >&5
-$as_echo_n "checking for cl_map_init in -losmcomp... " >&6; }
-if ${ac_cv_lib_osmcomp_cl_map_init+:} false; then :
- $as_echo_n "(cached) " >&6
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FOR $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FXOR" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FXOR" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FXOR" = xyes; then :
+ ac_have_decl=1
else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-losmcomp $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ ac_have_decl=0
+fi
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char cl_map_init ();
-int
-main ()
-{
-return cl_map_init ();
- ;
- return 0;
-}
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FXOR $ac_have_decl
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_osmcomp_cl_map_init=yes
+ac_fn_c_check_decl "$LINENO" "UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" "ac_cv_have_decl_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" "#include
+"
+if test "x$ac_cv_have_decl_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" = xyes; then :
+ ac_have_decl=1
else
- ac_cv_lib_osmcomp_cl_map_init=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_osmcomp_cl_map_init" >&5
-$as_echo "$ac_cv_lib_osmcomp_cl_map_init" >&6; }
-if test "x$ac_cv_lib_osmcomp_cl_map_init" = xyes; then :
- opal_check_openib_have_opensm_devel=1
+ ac_have_decl=0
fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK" "ac_cv_have_decl_UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK" "#include
+"
+if test "x$ac_cv_have_decl_UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-
- # Abort if dynamic SL support was explicitly requested but opensm-devel
- # package wasn't found. Otherwise, OMPI will be built w/o dynamic SL.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if can use dynamic SL support" >&5
-$as_echo_n "checking if can use dynamic SL support... " >&6; }
- if test "$opal_check_openib_have_opensm_devel" = "1"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_OP_ATTR_FLAG_MULTI_SEND" "ac_cv_have_decl_UCP_OP_ATTR_FLAG_MULTI_SEND" "#include
+"
+if test "x$ac_cv_have_decl_UCP_OP_ATTR_FLAG_MULTI_SEND" = xyes; then :
+ ac_have_decl=1
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- if test "$enable_openib_dynamic_sl" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-openib-dynamic-sl was specified but the" >&5
-$as_echo "$as_me: WARNING: --enable-openib-dynamic-sl was specified but the" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: appropriate header/library files could not be found" >&5
-$as_echo "$as_me: WARNING: appropriate header/library files could not be found" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please install opensm-devel if you need dynamic SL support" >&5
-$as_echo "$as_me: WARNING: Please install opensm-devel if you need dynamic SL support" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-fi
+ ac_have_decl=0
fi
- fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_OP_ATTR_FLAG_MULTI_SEND $ac_have_decl
+_ACEOF
- # Check support for RDMAoE devices
- common_verbs_have_rdmaoe=0
- ac_fn_c_check_decl "$LINENO" "IBV_LINK_LAYER_ETHERNET" "ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" "#include
+ ac_fn_c_check_decl "$LINENO" "UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" "ac_cv_have_decl_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" "#include
"
-if test "x$ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" = xyes; then :
+if test "x$ac_cv_have_decl_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" = xyes; then :
ac_have_decl=1
else
ac_have_decl=0
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_LINK_LAYER_ETHERNET $ac_have_decl
+#define HAVE_DECL_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS $ac_have_decl
_ACEOF
if test $ac_have_decl = 1; then :
- common_verbs_have_rdmaoe=1
-fi
+$as_echo "#define HAVE_UCP_WORKER_ADDRESS_FLAGS 1" >>confdefs.h
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if RDMAoE support is enabled" >&5
-$as_echo_n "checking if RDMAoE support is enabled... " >&6; }
+fi
+
+ ac_fn_c_check_decl "$LINENO" "UCP_ATTR_FIELD_MEMORY_TYPES" "ac_cv_have_decl_UCP_ATTR_FIELD_MEMORY_TYPES" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATTR_FIELD_MEMORY_TYPES" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_RDMAOE $common_verbs_have_rdmaoe
+#define HAVE_DECL_UCP_ATTR_FIELD_MEMORY_TYPES $ac_have_decl
_ACEOF
+if test $ac_have_decl = 1; then :
- if test "1" = "$common_verbs_have_rdmaoe"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-
+$as_echo "#define HAVE_UCP_ATTR_MEMORY_TYPES 1" >>confdefs.h
fi
- # Check to see if works. It is known to
- # create problems on some platforms with some compilers (e.g.,
- # RHEL4U3 with the PGI 32 bit compiler). Use undocumented (in AC
- # 2.63) feature of AC_CHECK_HEADERS: if you explicitly pass in
- # AC_INCLUDES_DEFAULT as the 4th arg to AC_CHECK_HEADERS, the test
- # will fail if the header is present but not compilable, *but it
- # will not print the big scary warning*. See
- # http://lists.gnu.org/archive/html/autoconf/2008-10/msg00143.html.
- if test "$opal_check_openib_happy" = "yes"; then :
- for ac_header in infiniband/driver.h
-do :
- ac_fn_c_check_header_compile "$LINENO" "infiniband/driver.h" "ac_cv_header_infiniband_driver_h" "$ac_includes_default
+ ac_fn_c_check_decl "$LINENO" "ucp_tag_send_nbx" "ac_cv_have_decl_ucp_tag_send_nbx" "#include
"
-if test "x$ac_cv_header_infiniband_driver_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_INFINIBAND_DRIVER_H 1
-_ACEOF
-
+if test "x$ac_cv_have_decl_ucp_tag_send_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-done
-
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_TAG_SEND_NBX $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_tag_send_sync_nbx" "ac_cv_have_decl_ucp_tag_send_sync_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_tag_send_sync_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ConnectX XRC support is enabled" >&5
-$as_echo_n "checking if ConnectX XRC support is enabled... " >&6; }
-
cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_CONNECTX_XRC $opal_check_openib_have_xrc
+#define HAVE_DECL_UCP_TAG_SEND_SYNC_NBX $ac_have_decl
_ACEOF
-
- if test "1" = "$opal_check_openib_have_xrc"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ConnectIB XRC support is enabled" >&5
-$as_echo_n "checking if ConnectIB XRC support is enabled... " >&6; }
+ac_fn_c_check_decl "$LINENO" "ucp_tag_recv_nbx" "ac_cv_have_decl_ucp_tag_recv_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_tag_recv_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_CONNECTX_XRC_DOMAINS $opal_check_openib_have_xrc_domains
+#define HAVE_DECL_UCP_TAG_RECV_NBX $ac_have_decl
_ACEOF
- if test "1" = "$opal_check_openib_have_xrc_domains"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if dynamic SL is enabled" >&5
-$as_echo_n "checking if dynamic SL is enabled... " >&6; }
+ ac_fn_c_check_type "$LINENO" "ucp_request_param_t" "ac_cv_type_ucp_request_param_t" "#include
+"
+if test "x$ac_cv_type_ucp_request_param_t" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define OPAL_ENABLE_DYNAMIC_SL $opal_check_openib_have_opensm_devel
+#define HAVE_UCP_REQUEST_PARAM_T 1
_ACEOF
- if test "1" = "$opal_check_openib_have_opensm_devel"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- common_verbs_LIBS="-losmcomp $common_verbs_LIBS"
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
- if test -z "$opal_verbs_dir"; then :
- openib_include_dir="/usr/include"
-else
- openib_include_dir="$opal_verbs_dir/include"
fi
- opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$openib_include_dir/infiniband"
- CPPFLAGS="$ompi_check_openib_common_verbs_save_CPPFLAGS"
- LDFLAGS="$ompi_check_openib_common_verbs_save_LDFLAGS"
- LIBS="$ompi_check_openib_common_verbs_save_LIBS"
+
+fi
+ CPPFLAGS=$old_CPPFLAGS
@@ -99969,7 +100170,7 @@
ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="OpenFabrics Verbs: $opal_check_openib_happy"
+ ompi_summary_line="Open UCX: $ompi_check_ucx_happy"
ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
if test -z "$ompi_summary_section_current" ; then
@@ -100005,6 +100206,26 @@
done
+fi
+fi
+
+ if test "$ompi_check_ucx_happy" = "yes"; then :
+ common_ucx_CPPFLAGS="$common_ucx_CPPFLAGS $ompi_check_ucx_CPPFLAGS"
+ common_ucx_LDFLAGS="$common_ucx_LDFLAGS $ompi_check_ucx_LDFLAGS"
+ common_ucx_LIBS="$common_ucx_LIBS $ompi_check_ucx_LIBS"
+
+$as_echo "#define HAVE_UCX 1" >>confdefs.h
+
+ common_ucx_happy="yes"
+else
+ if test ! -z "$with_ucx" && test "$with_ucx" != "no"; then :
+ as_fn_error $? "UCX support requested but not found. Aborting" "$LINENO" 5
+fi
+
+$as_echo "#define HAVE_UCX 0" >>confdefs.h
+
+ common_ucx_happy="no"
+fi
# Unwind the index
@@ -100027,37 +100248,29 @@
unset $opal_var
done
- fi
- common_verbs_have_xrc=$opal_check_openib_have_xrc
- common_verbs_have_xrc_domains=$opal_check_openib_have_xrc_domains
- common_verbs_have_opensm_devel=$opal_check_openib_have_opensm_devel
- if test "$opal_check_openib_happy" = "yes"; then :
- common_verbs_CPPFLAGS="$common_verbs_CPPFLAGS $opal_check_openib_CPPFLAGS"
- common_verbs_LDFLAGS="$common_verbs_LDFLAGS $opal_check_openib_LDFLAGS"
- common_verbs_LIBS="$common_verbs_LIBS $opal_check_openib_LIBS"
- common_verbs_happy="yes"
+ ac_fn_c_check_decl "$LINENO" "open_memstream" "ac_cv_have_decl_open_memstream" "#include
+"
+if test "x$ac_cv_have_decl_open_memstream" = xyes; then :
+ ac_have_decl=1
else
- if test "$opal_want_verbs" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Verbs support requested (via --with-verbs) but not found." >&5
-$as_echo "$as_me: WARNING: Verbs support requested (via --with-verbs) but not found." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&5
-$as_echo "$as_me: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&2;}
- as_fn_error $? "Aborting." "$LINENO" 5
-fi
-
+ ac_have_decl=0
fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_OPEN_MEMSTREAM $ac_have_decl
+_ACEOF
- if test "$common_verbs_happy" = "yes"; then :
+ if test "$common_ucx_happy" = "yes"; then :
should_build=$should_build
else
should_build=0
fi
- # substitute in the things needed to build openib
+
+ # substitute in the things needed to build common_ucx
@@ -100071,45 +100284,45 @@
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/common/verbs/post_configure.sh"
+ infile="$srcdir/opal/mca/common/ucx/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components verbs"
+ all_components="$all_components ucx"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components verbs"
+ dso_components="$dso_components ucx"
else
if test "common" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/common/verbs/lib${OPAL_LIB_PREFIX}mca_common_verbs.la $static_ltlibs"
+ static_ltlibs="mca/common/ucx/lib${OPAL_LIB_PREFIX}mca_common_ucx.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/common/verbs/libmca_common_verbs.la $static_ltlibs"
+ static_ltlibs="mca/common/ucx/libmca_common_ucx.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_common_verbs_component;" >> $outfile.extern
- echo " &mca_common_verbs_component, " >> $outfile.struct
- static_components="$static_components verbs"
+ echo "extern const mca_base_component_t mca_common_ucx_component;" >> $outfile.extern
+ echo " &mca_common_ucx_component, " >> $outfile.struct
+ static_components="$static_components ucx"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:verbs can compile" >&5
-$as_echo_n "checking if MCA component common:verbs can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:ucx can compile" >&5
+$as_echo_n "checking if MCA component common:ucx can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_common" = "verbs" ; then
+ if test "$DIRECT_common" = "ucx" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** common component verbs was supposed to be direct-called, but
+as_fn_error $? "*** common component ucx was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -100117,8 +100330,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_common" = "verbs" ; then
-as_fn_error $? "*** common component verbs was supposed to be direct-called, but
+ if test "$DIRECT_common" = "ucx" ; then
+as_fn_error $? "*** common component ucx was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -100133,7 +100346,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- if test "$common_verbs_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$common_ucx_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -100173,7 +100386,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_LDFLAGS; do
+ for arg in $common_ucx_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -100254,7 +100467,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_WRAPPER_EXTRA_LDFLAGS; do
+ for arg in $common_ucx_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -100296,7 +100509,7 @@
fi
- if test "$common_verbs_WRAPPER_EXTRA_LIBS" = ""; then :
+ if test "$common_ucx_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -100336,7 +100549,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_LIBS; do
+ for arg in $common_ucx_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -100417,7 +100630,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_WRAPPER_EXTRA_LIBS; do
+ for arg in $common_ucx_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -100465,7 +100678,7 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$common_verbs_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ if test "$common_ucx_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
stop_at_first=0
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -100508,7 +100721,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $common_ucx_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -100551,32 +100764,32 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_verbs_WRAPPER_EXTRA_CPPFLAGS ($common_verbs_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring common_verbs_WRAPPER_EXTRA_CPPFLAGS ($common_verbs_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_ucx_WRAPPER_EXTRA_CPPFLAGS ($common_ucx_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring common_ucx_WRAPPER_EXTRA_CPPFLAGS ($common_ucx_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:verbs can compile" >&5
-$as_echo_n "checking if MCA component common:verbs can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:ucx can compile" >&5
+$as_echo_n "checking if MCA component common:ucx can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_common" = "verbs" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"verbs\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"verbs\" failed to configure properly" >&2;}
+ if test "$with_common" = "ucx" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ucx\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"ucx\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "verbs" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"verbs\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"verbs\" failed to configure properly" >&2;}
+ if test "$DIRECT_common" = "ucx" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ucx\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"ucx\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
@@ -100584,23 +100797,23 @@
fi
# add component to all component list
- all_components="$all_components verbs"
+ all_components="$all_components ucx"
fi
# set the AM_CONDITIONAL on how we should build
if test "$compile_mode" = "dso"; then :
- BUILD_opal_common_verbs_DSO=1
+ BUILD_opal_common_ucx_DSO=1
else
- BUILD_opal_common_verbs_DSO=0
+ BUILD_opal_common_ucx_DSO=0
fi
- if test "$BUILD_opal_common_verbs_DSO" = "1"; then
- MCA_BUILD_opal_common_verbs_DSO_TRUE=
- MCA_BUILD_opal_common_verbs_DSO_FALSE='#'
+ if test "$BUILD_opal_common_ucx_DSO" = "1"; then
+ MCA_BUILD_opal_common_ucx_DSO_TRUE=
+ MCA_BUILD_opal_common_ucx_DSO_FALSE='#'
else
- MCA_BUILD_opal_common_verbs_DSO_TRUE='#'
- MCA_BUILD_opal_common_verbs_DSO_FALSE=
+ MCA_BUILD_opal_common_ucx_DSO_TRUE='#'
+ MCA_BUILD_opal_common_ucx_DSO_FALSE=
fi
@@ -100616,13 +100829,13 @@
- opal_show_subsubsubtitle "MCA component common:verbs_usnic (m4 configuration macro)"
+ opal_show_subsubsubtitle "MCA component common:verbs (m4 configuration macro)"
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- component_path="$srcdir/opal/mca/common/verbs_usnic"
+ component_path="$srcdir/opal/mca/common/verbs"
want_component=0
# build if:
@@ -100655,7 +100868,7 @@
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "verbs_usnic" ; then
+ if test "$DIRECT_common" = "verbs" ; then
want_component=1
else
want_component=0
@@ -100667,7 +100880,7 @@
if test "$DISABLE_common" = "1"; then :
want_component=0
fi
- if test "$DISABLE_common_verbs_usnic" = "1"; then :
+ if test "$DISABLE_common_verbs" = "1"; then :
want_component=0
fi
@@ -100680,31 +100893,44 @@
# Allow the component to override the build mode if it really wants to.
# It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:verbs_usnic compile mode" >&5
-$as_echo_n "checking for MCA component common:verbs_usnic compile mode... " >&6; }
- compile_mode="static"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+ SHARED_FRAMEWORK="$DSO_common"
+ SHARED_COMPONENT="$DSO_common_verbs"
+
+ STATIC_FRAMEWORK="$STATIC_common"
+ STATIC_COMPONENT="$STATIC_common_verbs"
+
+ shared_mode_override=static
+
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:verbs compile mode" >&5
+$as_echo_n "checking for MCA component common:verbs compile mode... " >&6; }
+ if test "$DIRECT_common" = "verbs" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
$as_echo "$compile_mode" >&6; }
+ fi
# try to configure the component
- ac_config_files="$ac_config_files opal/mca/common/verbs_usnic/Makefile"
-
- common_verbs_usnic_happy=0
-
-
-# Check whether --with-verbs-usnic was given.
-if test "${with_verbs_usnic+set}" = set; then :
- withval=$with_verbs_usnic;
-fi
-
-
- if test "$with_verbs_usnic" = "yes"; then :
- common_verbs_usnic_happy=1
-fi
+ ac_config_files="$ac_config_files opal/mca/common/verbs/Makefile"
- if test $common_verbs_usnic_happy -eq 1; then :
+ common_verbs_happy="no"
@@ -100717,7 +100943,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in common_verbs_usnic_msg; do
+ for opal_var in common_verbs_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -100736,7 +100962,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"common_verbs_usnic_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"common_verbs_msg\""
eval $opal_str
unset opal_str
@@ -100799,9 +101025,9 @@
opal_check_openib_happy="yes"
fi
- ompi_check_openib_common_verbs_usnic_save_CPPFLAGS="$CPPFLAGS"
- ompi_check_openib_common_verbs_usnic_save_LDFLAGS="$LDFLAGS"
- ompi_check_openib_common_verbs_usnic_save_LIBS="$LIBS"
+ ompi_check_openib_common_verbs_save_CPPFLAGS="$CPPFLAGS"
+ ompi_check_openib_common_verbs_save_LDFLAGS="$LDFLAGS"
+ ompi_check_openib_common_verbs_save_LIBS="$LIBS"
if test "$opal_check_openib_happy" = "yes"; then :
for ac_header in fcntl.h sys/poll.h
@@ -101331,14 +101557,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:101334: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
+echo "configure:101560: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:101341: \$? = $opal_status" >&5
+ echo "configure:101567: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -102056,14 +102282,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:102059: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
+echo "configure:102285: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:102066: \$? = $opal_status" >&5
+ echo "configure:102292: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -102737,7 +102963,7 @@
# Check support for RDMAoE devices
- common_verbs_usnic_have_rdmaoe=0
+ common_verbs_have_rdmaoe=0
ac_fn_c_check_decl "$LINENO" "IBV_LINK_LAYER_ETHERNET" "ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" "#include
"
if test "x$ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" = xyes; then :
@@ -102750,7 +102976,7 @@
#define HAVE_DECL_IBV_LINK_LAYER_ETHERNET $ac_have_decl
_ACEOF
if test $ac_have_decl = 1; then :
- common_verbs_usnic_have_rdmaoe=1
+ common_verbs_have_rdmaoe=1
fi
@@ -102758,10 +102984,10 @@
$as_echo_n "checking if RDMAoE support is enabled... " >&6; }
cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_RDMAOE $common_verbs_usnic_have_rdmaoe
+#define OPAL_HAVE_RDMAOE $common_verbs_have_rdmaoe
_ACEOF
- if test "1" = "$common_verbs_usnic_have_rdmaoe"; then
+ if test "1" = "$common_verbs_have_rdmaoe"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
else
@@ -102836,7 +103062,7 @@
if test "1" = "$opal_check_openib_have_opensm_devel"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- common_verbs_usnic_LIBS="-losmcomp $common_verbs_usnic_LIBS"
+ common_verbs_LIBS="-losmcomp $common_verbs_LIBS"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
@@ -102849,9 +103075,9 @@
fi
opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$openib_include_dir/infiniband"
- CPPFLAGS="$ompi_check_openib_common_verbs_usnic_save_CPPFLAGS"
- LDFLAGS="$ompi_check_openib_common_verbs_usnic_save_LDFLAGS"
- LIBS="$ompi_check_openib_common_verbs_usnic_save_LIBS"
+ CPPFLAGS="$ompi_check_openib_common_verbs_save_CPPFLAGS"
+ LDFLAGS="$ompi_check_openib_common_verbs_save_LDFLAGS"
+ LIBS="$ompi_check_openib_common_verbs_save_LIBS"
@@ -102953,15 +103179,15 @@
fi
- common_verbs_usnic_have_xrc=$opal_check_openib_have_xrc
- common_verbs_usnic_have_xrc_domains=$opal_check_openib_have_xrc_domains
- common_verbs_usnic_have_opensm_devel=$opal_check_openib_have_opensm_devel
+ common_verbs_have_xrc=$opal_check_openib_have_xrc
+ common_verbs_have_xrc_domains=$opal_check_openib_have_xrc_domains
+ common_verbs_have_opensm_devel=$opal_check_openib_have_opensm_devel
if test "$opal_check_openib_happy" = "yes"; then :
- common_verbs_usnic_CPPFLAGS="$common_verbs_usnic_CPPFLAGS $opal_check_openib_CPPFLAGS"
- common_verbs_usnic_LDFLAGS="$common_verbs_usnic_LDFLAGS $opal_check_openib_LDFLAGS"
- common_verbs_usnic_LIBS="$common_verbs_usnic_LIBS $opal_check_openib_LIBS"
- common_verbs_usnic_happy=1
+ common_verbs_CPPFLAGS="$common_verbs_CPPFLAGS $opal_check_openib_CPPFLAGS"
+ common_verbs_LDFLAGS="$common_verbs_LDFLAGS $opal_check_openib_LDFLAGS"
+ common_verbs_LIBS="$common_verbs_LIBS $opal_check_openib_LIBS"
+ common_verbs_happy="yes"
else
if test "$opal_want_verbs" = "yes"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Verbs support requested (via --with-verbs) but not found." >&5
@@ -102970,47 +103196,12 @@
$as_echo "$as_me: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&2;}
as_fn_error $? "Aborting." "$LINENO" 5
fi
- common_verbs_usnic_happy=0
-fi
-
-
-
-fi
-
- if test $common_verbs_usnic_happy -eq 1; then :
- ac_fn_c_check_member "$LINENO" "struct ibv_device" "ops" "ac_cv_member_struct_ibv_device_ops" "#include
-"
-if test "x$ac_cv_member_struct_ibv_device_ops" = xyes; then :
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --with-verbs-usnic specified, but the verbs.h does not" >&5
-$as_echo "$as_me: WARNING: --with-verbs-usnic specified, but the verbs.h does not" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: have the required member fields. It is highly likely" >&5
-$as_echo "$as_me: WARNING: have the required member fields. It is highly likely" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: that you do not need --with-verbs-usnic. Try configuring" >&5
-$as_echo "$as_me: WARNING: that you do not need --with-verbs-usnic. Try configuring" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: and building Open MPI without it; if you get warnings" >&5
-$as_echo "$as_me: WARNING: and building Open MPI without it; if you get warnings" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: about usnic IB devices anyway, please let us know." >&5
-$as_echo "$as_me: WARNING: about usnic IB devices anyway, please let us know." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Since you asked for --with-verbs-usnic and we cannot" >&5
-$as_echo "$as_me: WARNING: Since you asked for --with-verbs-usnic and we cannot" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: deliver it, configure will now abort." >&5
-$as_echo "$as_me: WARNING: deliver it, configure will now abort." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-
-fi
-
fi
-cat >>confdefs.h <<_ACEOF
-#define OPAL_COMMON_VERBS_USNIC_HAPPY $common_verbs_usnic_happy
-_ACEOF
-
- if test $common_verbs_usnic_happy -eq 1; then :
+ if test "$common_verbs_happy" = "yes"; then :
should_build=$should_build
else
should_build=0
@@ -103021,6 +103212,7 @@
+
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
if test "$should_build" = "1"; then :
@@ -103029,45 +103221,45 @@
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/common/verbs_usnic/post_configure.sh"
+ infile="$srcdir/opal/mca/common/verbs/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components verbs_usnic"
+ all_components="$all_components verbs"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components verbs_usnic"
+ dso_components="$dso_components verbs"
else
if test "common" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/common/verbs_usnic/lib${OPAL_LIB_PREFIX}mca_common_verbs_usnic.la $static_ltlibs"
+ static_ltlibs="mca/common/verbs/lib${OPAL_LIB_PREFIX}mca_common_verbs.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/common/verbs_usnic/libmca_common_verbs_usnic.la $static_ltlibs"
+ static_ltlibs="mca/common/verbs/libmca_common_verbs.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_common_verbs_usnic_component;" >> $outfile.extern
- echo " &mca_common_verbs_usnic_component, " >> $outfile.struct
- static_components="$static_components verbs_usnic"
+ echo "extern const mca_base_component_t mca_common_verbs_component;" >> $outfile.extern
+ echo " &mca_common_verbs_component, " >> $outfile.struct
+ static_components="$static_components verbs"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:verbs_usnic can compile" >&5
-$as_echo_n "checking if MCA component common:verbs_usnic can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:verbs can compile" >&5
+$as_echo_n "checking if MCA component common:verbs can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_common" = "verbs_usnic" ; then
+ if test "$DIRECT_common" = "verbs" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** common component verbs_usnic was supposed to be direct-called, but
+as_fn_error $? "*** common component verbs was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -103075,8 +103267,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_common" = "verbs_usnic" ; then
-as_fn_error $? "*** common component verbs_usnic was supposed to be direct-called, but
+ if test "$DIRECT_common" = "verbs" ; then
+as_fn_error $? "*** common component verbs was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -103091,7 +103283,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- if test "$common_verbs_usnic_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$common_verbs_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -103131,7 +103323,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_usnic_LDFLAGS; do
+ for arg in $common_verbs_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -103212,7 +103404,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_usnic_WRAPPER_EXTRA_LDFLAGS; do
+ for arg in $common_verbs_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -103254,7 +103446,7 @@
fi
- if test "$common_verbs_usnic_WRAPPER_EXTRA_LIBS" = ""; then :
+ if test "$common_verbs_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -103294,7 +103486,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_usnic_LIBS; do
+ for arg in $common_verbs_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -103375,7 +103567,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_usnic_WRAPPER_EXTRA_LIBS; do
+ for arg in $common_verbs_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -103423,7 +103615,7 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ if test "$common_verbs_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
stop_at_first=0
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -103466,7 +103658,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $common_verbs_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -103509,32 +103701,32 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS ($common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS ($common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_verbs_WRAPPER_EXTRA_CPPFLAGS ($common_verbs_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring common_verbs_WRAPPER_EXTRA_CPPFLAGS ($common_verbs_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:verbs_usnic can compile" >&5
-$as_echo_n "checking if MCA component common:verbs_usnic can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:verbs can compile" >&5
+$as_echo_n "checking if MCA component common:verbs can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_common" = "verbs_usnic" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"verbs_usnic\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"verbs_usnic\" failed to configure properly" >&2;}
+ if test "$with_common" = "verbs" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"verbs\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"verbs\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "verbs_usnic" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"verbs_usnic\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"verbs_usnic\" failed to configure properly" >&2;}
+ if test "$DIRECT_common" = "verbs" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"verbs\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"verbs\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
@@ -103542,23 +103734,23 @@
fi
# add component to all component list
- all_components="$all_components verbs_usnic"
+ all_components="$all_components verbs"
fi
# set the AM_CONDITIONAL on how we should build
if test "$compile_mode" = "dso"; then :
- BUILD_opal_common_verbs_usnic_DSO=1
+ BUILD_opal_common_verbs_DSO=1
else
- BUILD_opal_common_verbs_usnic_DSO=0
+ BUILD_opal_common_verbs_DSO=0
fi
- if test "$BUILD_opal_common_verbs_usnic_DSO" = "1"; then
- MCA_BUILD_opal_common_verbs_usnic_DSO_TRUE=
- MCA_BUILD_opal_common_verbs_usnic_DSO_FALSE='#'
+ if test "$BUILD_opal_common_verbs_DSO" = "1"; then
+ MCA_BUILD_opal_common_verbs_DSO_TRUE=
+ MCA_BUILD_opal_common_verbs_DSO_FALSE='#'
else
- MCA_BUILD_opal_common_verbs_usnic_DSO_TRUE='#'
- MCA_BUILD_opal_common_verbs_usnic_DSO_FALSE=
+ MCA_BUILD_opal_common_verbs_DSO_TRUE='#'
+ MCA_BUILD_opal_common_verbs_DSO_FALSE=
fi
@@ -103574,24 +103766,13 @@
- # configure components that provide their own configure script.
- # It would be really hard to run these for "find first that
- # works", so we don't :)
-
-
-
- if test "1" != "0"; then :
-
- for component_path in $srcdir/opal/mca/common/* ; do
- component="`basename $component_path`"
- if test -d $component_path && test -x $component_path/configure ; then
- opal_show_subsubsubtitle "MCA component common:$component (need to configure)"
+ opal_show_subsubsubtitle "MCA component common:verbs_usnic (m4 configuration macro)"
- opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: before, should_build="
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- component_path="$srcdir/opal/mca/common/$component"
+ component_path="$srcdir/opal/mca/common/verbs_usnic"
want_component=0
# build if:
@@ -103624,7 +103805,7 @@
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "$component" ; then
+ if test "$DIRECT_common" = "verbs_usnic" ; then
want_component=1
else
want_component=0
@@ -103636,56 +103817,44 @@
if test "$DISABLE_common" = "1"; then :
want_component=0
fi
- str="DISABLED_COMPONENT_CHECK=\$DISABLE_common_$component"
- eval $str
- if test "$DISABLED_COMPONENT_CHECK" = "1" ; then
- want_component=0
- fi
+ if test "$DISABLE_common_verbs_usnic" = "1"; then :
+ want_component=0
+fi
if test "$want_component" = "1"; then :
- should_build=1
+ should_build=$components_looking_for_succeed
else
should_build=0
fi
+ # Allow the component to override the build mode if it really wants to.
+ # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- SHARED_FRAMEWORK="$DSO_common"
- str="SHARED_COMPONENT=\$DSO_common_$component"
- eval $str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:verbs_usnic compile mode" >&5
+$as_echo_n "checking for MCA component common:verbs_usnic compile mode... " >&6; }
+ compile_mode="static"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
- STATIC_FRAMEWORK="$STATIC_common"
- str="STATIC_COMPONENT=\$STATIC_common_$component"
- eval $str
- shared_mode_override=static
+ # try to configure the component
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+ ac_config_files="$ac_config_files opal/mca/common/verbs_usnic/Makefile"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:$component compile mode" >&5
-$as_echo_n "checking for MCA component common:$component compile mode... " >&6; }
- if test "$DIRECT_common" = "$component" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
- fi
+ common_verbs_usnic_happy=0
- opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: after, should_build=$should_build"
- if test "$should_build" = "1" ; then
+# Check whether --with-verbs-usnic was given.
+if test "${with_verbs_usnic+set}" = set; then :
+ withval=$with_verbs_usnic;
+fi
+
+
+ if test "$with_verbs_usnic" = "yes"; then :
+ common_verbs_usnic_happy=1
+fi
+
+ if test $common_verbs_usnic_happy -eq 1; then :
@@ -103698,7 +103867,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in subdir_parent sub_configure subdir_dir subdir_srcdir subdir_cache_file subdir_args subdir_dots total_dir dir_part temp; do
+ for opal_var in common_verbs_usnic_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -103717,7 +103886,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"subdir_parent sub_configure subdir_dir subdir_srcdir subdir_cache_file subdir_args subdir_dots total_dir dir_part temp\""
+ opal_str="opal_scope_$opal_scope_index=\"common_verbs_usnic_msg\""
eval $opal_str
unset opal_str
@@ -103725,250 +103894,99 @@
opal_scope_index=`expr $opal_scope_index + 1`
-#
-# Invoke configure in a specific subdirectory.
-#
-# opal/mca/common/$component is the directory to invoke in
-# $opal_subdir_args is the list of arguments to pass
-# should_build=1 is actions to execute upon success
-# should_build=0 is actions to execute upon failure
-#
-subdir_dir="opal/mca/common/$component"
-subdir_args="$opal_subdir_args"
-subdir_success="should_build=1"
-subdir_failure="should_build=0"
-
-#
-# Sanity checks
-#
-
-if test "$subdir_dir" != ":" && test -d $srcdir/$subdir_dir; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: OPAL configuring in $subdir_dir" >&5
-$as_echo "$as_me: OPAL configuring in $subdir_dir" >&6;}
+ # Setup the --with switches to allow users to specify where
+ # verbs stuff lives.
- #
- # Gotta check where srcdir is for VPATH builds. If srcdir is not
- # ., then we need to mkdir the subdir. Otherwise, we can just cd
- # into it.
- #
- case $srcdir in
- .)
- ;;
- *)
- { case $subdir_dir in
- [\\/]* | ?:[\\/]* ) total_dir=;;
- *) total_dir=.;;
- esac
- temp=$subdir_dir
- for dir_part in `IFS='/\\'; set X $temp; shift; echo "$@"`; do
- case $dir_part in
- # Skip DOS drivespec
- ?:) total_dir=$dir_part ;;
- *) total_dir=$total_dir/$dir_part
- test -d "$total_dir" ||
- mkdir "$total_dir" ||
- as_fn_error $? "cannot create $subdir_dir" "$LINENO" 5
- ;;
- esac
- done; }
+ if test -z "$opal_check_openib_happy" ; then
+ #
+ # Add padding to OpenIB header
+ #
+ # Check whether --enable-openib-control-hdr-padding was given.
+if test "${enable_openib_control_hdr_padding+set}" = set; then :
+ enableval=$enable_openib_control_hdr_padding;
+fi
- if test -d ./$subdir_dir; then :;
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if want to add padding to the openib BTL control header" >&5
+$as_echo_n "checking if want to add padding to the openib BTL control header... " >&6; }
+ if test "$enable_openib_control_hdr_padding" = "yes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ ompi_openib_pad_hdr=1
+ elif test "$enable_openib_control_hdr_padding" = "no"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ ompi_openib_pad_hdr=0
else
- as_fn_error $? "cannot create \`pwd\`/$subdir_dir" "$LINENO" 5
+ #
+ # Enable padding for SPARC platforms by default because the
+ # btl will segv otherwise. Keep padding disabled for other
+ # platforms since there are some performance implications with
+ # padding on for those platforms.
+ #
+ case "${host}" in
+ sparc*)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (enabled by default on SPARC)" >&5
+$as_echo "yes (enabled by default on SPARC)" >&6; }
+ ompi_openib_pad_hdr=1
+ ;;
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ ompi_openib_pad_hdr=0
+ ;;
+ esac
fi
- ;;
- esac
-
- #
- # Move into the target directory
- #
-
- subdir_parent=`pwd`
- cd $subdir_dir
-
- #
- # Make a "../" for each directory in $subdir_dir.
- #
-
- subdir_dots=`echo $subdir_dir | sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
- #
- # Construct the --srcdir argument
- #
-
- case $srcdir in
- .)
- # In place
- subdir_srcdir="$srcdir"
- ;;
- [\\/]* | ?:[\\/]* )
- # Absolute path
- subdir_srcdir="$srcdir/$subdir_dir"
- ;;
- *)
- # Relative path
- subdir_srcdir="$subdir_dots$srcdir/$subdir_dir"
- ;;
- esac
-
- #
- # Construct the --cache-file argument
- #
-
- # BWB - subdir caching is a pain since we change CFLAGS and all that.
- # Just disable it for now
- subdir_cache_file="/dev/null"
-
- #
- # Invoke the configure script in the subdirectory
- #
- sub_configure="$SHELL '$subdir_srcdir/configure'"
- { $as_echo "$as_me:${as_lineno-$LINENO}: running $sub_configure $subdir_args --cache-file=$subdir_cache_file --srcdir=$subdir_srcdir --disable-option-checking" >&5
-$as_echo "$as_me: running $sub_configure $subdir_args --cache-file=$subdir_cache_file --srcdir=$subdir_srcdir --disable-option-checking" >&6;}
- eval "$sub_configure $subdir_args \
- --cache-file=\"\$subdir_cache_file\" --srcdir=\"$subdir_srcdir\" --disable-option-checking"
- if test "$?" = "0"; then
- eval $subdir_success
- { $as_echo "$as_me:${as_lineno-$LINENO}: $sub_configure succeeded for $subdir_dir" >&5
-$as_echo "$as_me: $sub_configure succeeded for $subdir_dir" >&6;}
- else
- eval $subdir_failure
- { $as_echo "$as_me:${as_lineno-$LINENO}: $sub_configure *failed* for $subdir_dir" >&5
-$as_echo "$as_me: $sub_configure *failed* for $subdir_dir" >&6;}
- fi
+cat >>confdefs.h <<_ACEOF
+#define OPAL_OPENIB_PAD_HDR $ompi_openib_pad_hdr
+_ACEOF
- #
- # Go back to the topdir
- #
- cd $subdir_parent
+ if test "$opal_want_verbs" = "no"; then :
+ opal_check_openib_happy="no"
+else
+ opal_check_openib_happy="yes"
fi
-#
-# Clean up
-#
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
- opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: after subdir, should_build=$should_build"
- fi
-
- if test "$should_build" = "1" ; then
- # do some extra work to pass flags back from the
- # top-level configure, the way a configure.m4
- # component would.
- infile="$srcdir/opal/mca/common/all_components/post_configure.sh"
- if test -f $infile; then
-
- # First check for the ABORT tag
- line="`$GREP ABORT= $infile | cut -d= -f2-`"
- if test -n "$line" && test "$line" != "no"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component configure script told me to abort" >&5
-$as_echo "$as_me: WARNING: MCA component configure script told me to abort" >&2;}
- as_fn_error $? "cannot continue" "$LINENO" 5
- fi
-
- line="`$GREP WRAPPER_EXTRA_LDFLAGS= $infile | cut -d= -f2-`"
- eval "line=$line"
- if test -n "$line"; then
- common_all_components_WRAPPER_EXTRA_LDFLAGS="$line"
- fi
- line="`$GREP WRAPPER_EXTRA_LIBS= $infile | cut -d= -f2-`"
- eval "line=$line"
- if test -n "$line"; then
- common_all_components_WRAPPER_EXTRA_LIBS="$line"
- fi
- fi
+ ompi_check_openib_common_verbs_usnic_save_CPPFLAGS="$CPPFLAGS"
+ ompi_check_openib_common_verbs_usnic_save_LDFLAGS="$LDFLAGS"
+ ompi_check_openib_common_verbs_usnic_save_LIBS="$LIBS"
+ if test "$opal_check_openib_happy" = "yes"; then :
+ for ac_header in fcntl.h sys/poll.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: fcntl.h sys/poll.h not found. Can not build component." >&5
+$as_echo "$as_me: WARNING: fcntl.h sys/poll.h not found. Can not build component." >&2;}
+ opal_check_openib_happy="no"
+fi
+done
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/common/$component/post_configure.sh"
+fi
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components $component"
+ if test "$opal_check_openib_happy" = "yes"; then :
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components $component"
- else
- if test "common" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/common/$component/lib${OPAL_LIB_PREFIX}mca_common_$component.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/common/$component/libmca_common_$component.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_common_$component_component;" >> $outfile.extern
- echo " &mca_common_$component_component, " >> $outfile.struct
- static_components="$static_components $component"
- fi
+ opal_check_package_opal_check_openib_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_opal_check_openib_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_opal_check_openib_save_LIBS="$LIBS"
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:$component can compile" >&5
-$as_echo_n "checking if MCA component common:$component can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ opal_check_package_opal_check_openib_orig_CPPFLAGS="$opal_check_openib_CPPFLAGS"
+ opal_check_package_opal_check_openib_orig_LDFLAGS="$opal_check_openib_LDFLAGS"
+ opal_check_package_opal_check_openib_orig_LIBS="$opal_check_openib_LIBS"
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_common" = "$component" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** common component $component was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_common" = "$component" ; then
-as_fn_error $? "*** common component $component was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- str="line=\$common_$component_WRAPPER_EXTRA_LDFLAGS"
- eval "$str"
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
@@ -103981,7 +103999,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in dir_prefix; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -104000,7 +104018,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
eval $opal_str
unset opal_str
@@ -104008,48 +104026,357 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $line; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+ # so this sucks, but there's no way to get through the progression
+ # of header includes without killing off the cache variable and trying
+ # again...
+ unset ac_cv_header_infiniband_verbs_h
+
+ # get rid of the trailing slash(es)
+ dir_prefix=$(echo $opal_verbs_dir | sed -e 'sX/*$XXg')
+ opal_check_package_header_happy="no"
+ if test "$dir_prefix" = "/usr" || \
+ test "$dir_prefix" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
+$as_echo "looking for header without includes" >&6; }
+ for ac_header in infiniband/verbs.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "infiniband/verbs.h" "ac_cv_header_infiniband_verbs_h" "$ac_includes_default"
+if test "x$ac_cv_header_infiniband_verbs_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_INFINIBAND_VERBS_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
fi
- done
+
+done
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ # no go on the as is - reset the cache and try again
+ unset ac_cv_header_infiniband_verbs_h
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+fi
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ if test "$dir_prefix" != ""; then :
+ opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$dir_prefix/include"
+ CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+fi
+ for ac_header in infiniband/verbs.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "infiniband/verbs.h" "ac_cv_header_infiniband_verbs_h" "$ac_includes_default"
+if test "x$ac_cv_header_infiniband_verbs_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_INFINIBAND_VERBS_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
+fi
+
+done
+
+ if test "$opal_check_package_header_happy" = "yes"; then :
+
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
+
+
+ # see comment above
+ unset ac_cv_search_ibv_open_device
+ opal_check_package_lib_happy="no"
+ if test "$opal_verbs_libdir" != ""; then :
+ # libdir was specified - search only there
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_verbs_libdir"
+ LDFLAGS="$LDFLAGS -L$opal_verbs_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
fi
- done
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir="$opal_verbs_dir"
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
-str="line=\$common_$component_WRAPPER_EXTRA_LIBS"
- eval "$str"
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
+$as_echo "looking for library in lib" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
+
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib64"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
+$as_echo "looking for library in lib64" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
+
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # libnl v1 and libnl3 are known to *not* coexist
+ # harmoniously in the same process. Check to see if this
+ # new package will introduce such a conflict.
@@ -104062,7 +104389,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_libnl_sane; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -104081,443 +104408,325 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
+ opal_libnl_sane=1
+ case $host in
+ *linux*)
- for arg in $line; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
done
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ eval $opal_str
+ unset opal_str
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
- else
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:$component can compile" >&5
-$as_echo_n "checking if MCA component common:$component can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_common" = "$component" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"$component\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"$component\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libibverbs requires libnl v1 or v3" >&5
+$as_echo_n "checking if libibverbs requires libnl v1 or v3... " >&6; }
+ cat > conftest_c.$ac_ext << EOF
+extern void ibv_open_device (void);
+int main(int argc, char *argv[]) {
+ ibv_open_device ();
+ return 0;
+}
+EOF
- if test ! -z "$DIRECT_common" ; then
- if test "$DIRECT_common" = "$component" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"$component\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"$component\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
+ this_requires_v1=0
+ this_requires_v3=0
+ result_msg=
- fi
- fi
- done
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:104484: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
+opal_status=$?
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:104491: \$? = $opal_status" >&5
+else
+ echo \$? = $opal_status >&5
fi
+if test "$opal_status" = "0"; then
+ unset opal_status
+ ldd_output=`ldd conftest`
+ if echo $ldd_output | grep -q libnl-3.so; then :
+ this_requires_v3=1
+ result_msg="v3"
+fi
+ if echo $ldd_output | grep -q libnl.so; then :
+ this_requires_v1=1
+ result_msg="v1 $result_msg"
+fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
+$as_echo "$result_msg" >&6; }
- MCA_opal_common_ALL_COMPONENTS="$all_components"
- MCA_opal_common_STATIC_COMPONENTS="$static_components"
- MCA_opal_common_DSO_COMPONENTS="$dso_components"
- MCA_opal_common_STATIC_LTLIBS="$static_ltlibs"
-
-
-
-
-
-
-
- MCA_opal_common_ALL_SUBDIRS=
- for item in $all_components ; do
- MCA_opal_common_ALL_SUBDIRS="$MCA_opal_common_ALL_SUBDIRS mca/common/$item"
- done
-
-
-
- MCA_opal_common_STATIC_SUBDIRS=
- for item in $static_components ; do
- MCA_opal_common_STATIC_SUBDIRS="$MCA_opal_common_STATIC_SUBDIRS mca/common/$item"
- done
+else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ibverbs" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ibverbs" >&2;}
+fi
+ # Assume that our configuration is sane; this may get reset below
+ libnl_sane=1
- MCA_opal_common_DSO_SUBDIRS=
- for item in $dso_components ; do
- MCA_opal_common_DSO_SUBDIRS="$MCA_opal_common_DSO_SUBDIRS mca/common/$item"
- done
+ # Note: in all the checks below, only add this library to the list
+ # of libraries (for v1 or v3 as relevant) if we do not fail.
+ # I.e., assume that a higher level will refuse to use this library
+ # if we return failure.
+ # Does this library require both v1 and v3? If so, fail.
+ if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- # Create the final .h file that will be included in the type's
- # top-level glue. This lists all the static components. We don't
- # need to do this for "common".
- if test "common" != "common"; then
- cat > $outfile <&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&2;}
-const mca_base_component_t *mca_common_base_static_components[] = {
-`cat $outfile.struct`
- NULL
-};
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
-#if defined(c_plusplus) || defined(__cplusplus)
-}
-#endif
+ libnl_sane=0
+else
+ opal_libnlv1_libs="$opal_libnlv1_libs ibverbs"
-EOF
- # Only replace the header file if a) it doesn't previously
- # exist, or b) the contents are different. Do this to not
- # trigger recompilation of certain .c files just because the
- # timestamp changed on $outfile_real (similar to the way AC
- # handles AC_CONFIG_HEADER files).
- diff $outfile $outfile_real > /dev/null 2>&1
- if test "$?" != "0"; then
- mv $outfile $outfile_real
- else
- rm -f $outfile
- fi
- fi
- rm -f $outfile.struct $outfile.extern
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv1_libs
- unset all_components static_components dso_components outfile outfile_real
+# Go through each item in the variable and only keep the unique ones
- MCA_opal_FRAMEWORKS="$MCA_opal_FRAMEWORKS allocator"
- MCA_opal_FRAMEWORKS_SUBDIRS="$MCA_opal_FRAMEWORKS_SUBDIRS mca/allocator"
- MCA_opal_FRAMEWORK_COMPONENT_ALL_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_ALL_SUBDIRS \$(MCA_opal_allocator_ALL_SUBDIRS)"
- MCA_opal_FRAMEWORK_COMPONENT_DSO_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_DSO_SUBDIRS \$(MCA_opal_allocator_DSO_SUBDIRS)"
- MCA_opal_FRAMEWORK_COMPONENT_STATIC_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_STATIC_SUBDIRS \$(MCA_opal_allocator_STATIC_SUBDIRS)"
- MCA_opal_FRAMEWORK_LIBS="$MCA_opal_FRAMEWORK_LIBS mca/allocator/libmca_allocator.la"
- MCA_opal_FRAMEWORK_LIBS="$MCA_opal_FRAMEWORK_LIBS \$(MCA_opal_allocator_STATIC_LTLIBS)"
+opal_count=0
+for val in ${opal_libnlv1_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
- opal_show_subsubtitle "Configuring MCA framework allocator"
+ # Loop over every token we've seen so far
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- # setup for framework
- all_components=
- static_components=
- dso_components=
- static_ltlibs=
+ # Check the ending condition
- # Ensure that the directory where the #include file is to live
- # exists. Need to do this for VPATH builds, because the directory
- # may not exist yet. For the "common" type, it's not really a
- # component, so it doesn't have a base.
- outdir=opal/mca/allocator/base
- as_dir=$outdir; as_fn_mkdir_p
+ opal_done="`expr $opal_i \>= $opal_count`"
- # emit Makefile rule
- ac_config_files="$ac_config_files opal/mca/allocator/Makefile"
+ # Increment the counter
+ opal_i="`expr $opal_i + 1`"
+ done
- # remove any previously generated #include files
- outfile_real=$outdir/static-components.h
- outfile=$outfile_real.new
- rm -f $outfile $outfile.struct $outfile.extern
- touch $outfile.struct $outfile.extern
+ # If we didn't find the token, add it to the "array"
- # print some nice messages about what we're about to do...
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for no configure components in framework allocator" >&5
-$as_echo_n "checking for no configure components in framework allocator... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: basic, bucket" >&5
-$as_echo "basic, bucket" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for m4 configure components in framework allocator" >&5
-$as_echo_n "checking for m4 configure components in framework allocator... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5
-$as_echo "" >&6; }
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
+ fi
+done
- # If there are components in the no configure list, but we're
- # doing one of the "special" selection logics, abort with a
- # reasonable message.
+# Take all the items in the "array" and assemble them back into a
+# single variable
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
- # run the configure logic for the no-config components
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
- opal_show_subsubsubtitle "MCA component allocator:basic (no configuration)"
+# Done; do the assignment
- opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: before, should_build=1"
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
+# Clean up
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=1
+fi
- component_path="$srcdir/opal/mca/allocator/basic"
- want_component=0
+fi
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_allocator" ; then
- if test "$DIRECT_allocator" = "basic" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
- fi
+ # Does this library require v3, but some prior library required
+ # v1? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
+ if test $opal_libnl_version -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&2;}
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_allocator" = "1"; then :
- want_component=0
-fi
- if test "$DISABLE_allocator_basic" = "1"; then :
- want_component=0
-fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- if test "$want_component" = "1"; then :
- should_build=1
+ libnl_sane=0
else
- should_build=0
-fi
+ opal_libnlv3_libs="$opal_libnlv3_libs ibverbs"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv3_libs
- SHARED_FRAMEWORK="$DSO_allocator"
- SHARED_COMPONENT="$DSO_allocator_basic"
+# Go through each item in the variable and only keep the unique ones
- STATIC_FRAMEWORK="$STATIC_allocator"
- STATIC_COMPONENT="$STATIC_allocator_basic"
+opal_count=0
+for val in ${opal_libnlv3_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
- shared_mode_override=static
+ # Loop over every token we've seen so far
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component allocator:basic compile mode" >&5
-$as_echo_n "checking for MCA component allocator:basic compile mode... " >&6; }
- if test "$DIRECT_allocator" = "basic" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
- fi
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
- opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: after, should_build=$should_build"
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- if test "$should_build" = "1" ; then
+ # Check the ending condition
+ opal_done="`expr $opal_i \>= $opal_count`"
+ # Increment the counter
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/allocator/basic/post_configure.sh"
+ opal_i="`expr $opal_i + 1`"
+ done
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components basic"
+ # If we didn't find the token, add it to the "array"
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components basic"
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
else
- if test "allocator" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/allocator/basic/lib${OPAL_LIB_PREFIX}mca_allocator_basic.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/allocator/basic/libmca_allocator_basic.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_allocator_basic_component;" >> $outfile.extern
- echo " &mca_allocator_basic_component, " >> $outfile.struct
- static_components="$static_components basic"
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:basic can compile" >&5
-$as_echo_n "checking if MCA component allocator:basic can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+# Take all the items in the "array" and assemble them back into a
+# single variable
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_allocator" = "basic" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_allocator_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** allocator component basic was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_allocator" = "basic" ; then
-as_fn_error $? "*** allocator component basic was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$allocator_basic_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
+# Done; do the assignment
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+# Clean up
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=3
+fi
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+fi
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ rm -f conftest conftest_c.$ac_ext
- for arg in $allocator_basic_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
-fi
- done
+ opal_libnl_sane=$libnl_sane
# Unwind the index
@@ -104541,65 +104750,10 @@
done
-else
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- for arg in $allocator_basic_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
-fi
- done
+ ;;
+ esac
+ opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -104622,89 +104776,332 @@
done
+ if test $opal_check_package_libnl_check_ok -eq 0; then :
+ opal_check_package_lib_happy=no
fi
- if test "$allocator_basic_WRAPPER_EXTRA_LIBS" = ""; then :
+fi
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
+ if test "$ac_cv_search_ibv_open_device" != "no" &&
+ test "$ac_cv_search_ibv_open_device" != "none required"; then :
+ opal_check_openib_LIBS="$ac_cv_search_ibv_open_device "
+else
+ opal_check_openib_LIBS=""
+fi
+ opal_check_package_happy="yes"
+else
+ opal_check_package_happy="no"
+fi
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+else
+ opal_check_package_happy="no"
+fi
+else
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ # see comment above
+ unset ac_cv_search_ibv_open_device
+ opal_check_package_lib_happy="no"
+ if test "$opal_verbs_libdir" != ""; then :
+ # libdir was specified - search only there
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_verbs_libdir"
+ LDFLAGS="$LDFLAGS -L$opal_verbs_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
- for arg in $allocator_basic_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+else
+ ac_cv_search_ibv_open_device=no
fi
- done
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+ opal_check_package_lib_happy="no"
fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
fi
- done
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir="$opal_verbs_dir"
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
+$as_echo "looking for library in lib" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
+
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib64"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
+$as_echo "looking for library in lib64" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # libnl v1 and libnl3 are known to *not* coexist
+ # harmoniously in the same process. Check to see if this
+ # new package will introduce such a conflict.
@@ -104717,7 +105114,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_libnl_sane; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -104736,66 +105133,16 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
-
- for arg in $allocator_basic_WRAPPER_EXTRA_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-fi
-
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$allocator_basic_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
+ opal_libnl_sane=1
+ case $host in
+ *linux*)
@@ -104808,7 +105155,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -104827,7 +105174,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
eval $opal_str
unset opal_str
@@ -104835,490 +105182,276 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $allocator_basic_WRAPPER_EXTRA_CPPFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
-else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libibverbs requires libnl v1 or v3" >&5
+$as_echo_n "checking if libibverbs requires libnl v1 or v3... " >&6; }
+ cat > conftest_c.$ac_ext << EOF
+extern void ibv_open_device (void);
+int main(int argc, char *argv[]) {
+ ibv_open_device ();
+ return 0;
+}
+EOF
+
+ this_requires_v1=0
+ this_requires_v3=0
+ result_msg=
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:105209: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
+opal_status=$?
-fi
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:105216: \$? = $opal_status" >&5
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring allocator_basic_WRAPPER_EXTRA_CPPFLAGS ($allocator_basic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring allocator_basic_WRAPPER_EXTRA_CPPFLAGS ($allocator_basic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ echo \$? = $opal_status >&5
fi
+if test "$opal_status" = "0"; then
+ unset opal_status
+ ldd_output=`ldd conftest`
+ if echo $ldd_output | grep -q libnl-3.so; then :
+ this_requires_v3=1
+ result_msg="v3"
fi
-
- else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:basic can compile" >&5
-$as_echo_n "checking if MCA component allocator:basic can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_allocator" = "basic" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"basic\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"basic\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- if test ! -z "$DIRECT_allocator" ; then
- if test "$DIRECT_allocator" = "basic" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"basic\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"basic\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
-
- # add component to all component list
- all_components="$all_components basic"
- fi
-
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso" ; then
- BUILD_opal_allocator_basic_DSO=1
- else
- BUILD_opal_allocator_basic_DSO=0
- fi
- if test "$BUILD_opal_allocator_basic_DSO" = "1"; then
- MCA_BUILD_opal_allocator_basic_DSO_TRUE=
- MCA_BUILD_opal_allocator_basic_DSO_FALSE='#'
-else
- MCA_BUILD_opal_allocator_basic_DSO_TRUE='#'
- MCA_BUILD_opal_allocator_basic_DSO_FALSE=
+ if echo $ldd_output | grep -q libnl.so; then :
+ this_requires_v1=1
+ result_msg="v1 $result_msg"
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
+$as_echo "$result_msg" >&6; }
+else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ibverbs" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ibverbs" >&2;}
- ac_config_files="$ac_config_files opal/mca/allocator/basic/Makefile"
-
-
- unset compile_mode
-
- opal_show_subsubsubtitle "MCA component allocator:bucket (no configuration)"
-
- opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: before, should_build=1"
+fi
+ # Assume that our configuration is sane; this may get reset below
+ libnl_sane=1
+ # Note: in all the checks below, only add this library to the list
+ # of libraries (for v1 or v3 as relevant) if we do not fail.
+ # I.e., assume that a higher level will refuse to use this library
+ # if we return failure.
- component_path="$srcdir/opal/mca/allocator/bucket"
- want_component=0
+ # Does this library require both v1 and v3? If so, fail.
+ if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&2;}
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_allocator" ; then
- if test "$DIRECT_allocator" = "bucket" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
- fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_allocator" = "1"; then :
- want_component=0
-fi
- if test "$DISABLE_allocator_bucket" = "1"; then :
- want_component=0
+ libnl_sane=0
fi
- if test "$want_component" = "1"; then :
- should_build=1
-else
- should_build=0
-fi
+ # Does this library require v1, but some prior library required
+ # v3? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
+ if test $opal_libnl_version -eq 3; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- SHARED_FRAMEWORK="$DSO_allocator"
- SHARED_COMPONENT="$DSO_allocator_bucket"
+ libnl_sane=0
+else
+ opal_libnlv1_libs="$opal_libnlv1_libs ibverbs"
- STATIC_FRAMEWORK="$STATIC_allocator"
- STATIC_COMPONENT="$STATIC_allocator_bucket"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv1_libs
- shared_mode_override=static
+# Go through each item in the variable and only keep the unique ones
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+opal_count=0
+for val in ${opal_libnlv1_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component allocator:bucket compile mode" >&5
-$as_echo_n "checking for MCA component allocator:bucket compile mode... " >&6; }
- if test "$DIRECT_allocator" = "bucket" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
- fi
+ # Loop over every token we've seen so far
- opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: after, should_build=$should_build"
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- if test "$should_build" = "1" ; then
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
+ # Check the ending condition
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/allocator/bucket/post_configure.sh"
+ opal_done="`expr $opal_i \>= $opal_count`"
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components bucket"
+ # Increment the counter
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components bucket"
- else
- if test "allocator" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/allocator/bucket/lib${OPAL_LIB_PREFIX}mca_allocator_bucket.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/allocator/bucket/libmca_allocator_bucket.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_allocator_bucket_component;" >> $outfile.extern
- echo " &mca_allocator_bucket_component, " >> $outfile.struct
- static_components="$static_components bucket"
- fi
+ opal_i="`expr $opal_i + 1`"
+ done
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:bucket can compile" >&5
-$as_echo_n "checking if MCA component allocator:bucket can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ # If we didn't find the token, add it to the "array"
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_allocator" = "bucket" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_allocator_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** allocator component bucket was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_allocator" = "bucket" ; then
-as_fn_error $? "*** allocator component bucket was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$allocator_bucket_WRAPPER_EXTRA_LDFLAGS" = ""; then :
-
-
+# Take all the items in the "array" and assemble them back into a
+# single variable
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+# Done; do the assignment
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
+# Clean up
- for arg in $allocator_bucket_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=1
fi
- done
+fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ # Does this library require v3, but some prior library required
+ # v1? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
+ if test $opal_libnl_version -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&2;}
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ libnl_sane=0
+else
+ opal_libnlv3_libs="$opal_libnlv3_libs ibverbs"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv3_libs
-else
+# Go through each item in the variable and only keep the unique ones
+opal_count=0
+for val in ${opal_libnlv3_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
+ # Loop over every token we've seen so far
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+ # Check the ending condition
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ opal_done="`expr $opal_i \>= $opal_count`"
+ # Increment the counter
- for arg in $allocator_bucket_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
-fi
+ opal_i="`expr $opal_i + 1`"
done
+ # If we didn't find the token, add it to the "array"
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+# Take all the items in the "array" and assemble them back into a
+# single variable
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
-fi
- if test "$allocator_bucket_WRAPPER_EXTRA_LIBS" = ""; then :
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
+# Done; do the assignment
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+# Clean up
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=3
+fi
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+fi
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ rm -f conftest conftest_c.$ac_ext
- for arg in $allocator_bucket_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
+ opal_libnl_sane=$libnl_sane
# Unwind the index
@@ -105342,65 +105475,10 @@
done
-else
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- for arg in $allocator_bucket_WRAPPER_EXTRA_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
+ ;;
+ esac
+ opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -105423,74 +105501,28 @@
done
+ if test $opal_check_package_libnl_check_ok -eq 0; then :
+ opal_check_package_lib_happy=no
fi
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$allocator_bucket_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- for arg in $allocator_bucket_WRAPPER_EXTRA_CPPFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
fi
- done
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
+ if test "$ac_cv_search_ibv_open_device" != "no" &&
+ test "$ac_cv_search_ibv_open_device" != "none required"; then :
+ opal_check_openib_LIBS="$ac_cv_search_ibv_open_device "
+else
+ opal_check_openib_LIBS=""
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
+ opal_check_package_happy="yes"
else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
+ opal_check_package_happy="no"
fi
+
+
fi
- done
+ unset opal_check_package_header_happy
# Unwind the index
@@ -105514,186 +105546,463 @@
done
+
+ if test "$opal_check_package_happy" = "yes"; then :
+ opal_check_openib_happy="yes"
+else
+ opal_check_openib_CPPFLAGS="$opal_check_package_opal_check_openib_orig_CPPFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ opal_check_openib_LIBS="$opal_check_package_opal_check_openib_orig_LIBS"
+ opal_check_openib_happy="no"
+fi
+
+ CPPFLAGS="$opal_check_package_opal_check_openib_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ LIBS="$opal_check_package_opal_check_openib_save_LIBS"
+
fi
+
+ CPPFLAGS="$CPPFLAGS $opal_check_openib_CPPFLAGS"
+ LDFLAGS="$LDFLAGS $opal_check_openib_LDFLAGS"
+ LIBS="$LIBS $opal_check_openib_LIBS"
+
+ if test "$opal_check_openib_happy" = "yes"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking number of arguments to ibv_create_cq" >&5
+$as_echo_n "checking number of arguments to ibv_create_cq... " >&6; }
+if ${ompi_cv_func_ibv_create_cq_args+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring allocator_bucket_WRAPPER_EXTRA_CPPFLAGS ($allocator_bucket_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring allocator_bucket_WRAPPER_EXTRA_CPPFLAGS ($allocator_bucket_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
+int
+main ()
+{
+ibv_create_cq(NULL, 0, NULL, NULL, 0);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ompi_cv_func_ibv_create_cq_args=5
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
+int
+main ()
+{
+ibv_create_cq(NULL, 0, NULL);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ompi_cv_func_ibv_create_cq_args=3
+else
+ ompi_cv_func_ibv_create_cq_args="unknown"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_cv_func_ibv_create_cq_args" >&5
+$as_echo "$ompi_cv_func_ibv_create_cq_args" >&6; }
+ if test "$ompi_cv_func_ibv_create_cq_args" = "unknown"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Can not determine number of args to ibv_create_cq." >&5
+$as_echo "$as_me: WARNING: Can not determine number of args to ibv_create_cq." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Not building component." >&5
+$as_echo "$as_me: WARNING: Not building component." >&2;}
+ opal_check_openib_happy="no"
+else
- else
+cat >>confdefs.h <<_ACEOF
+#define OPAL_IBV_CREATE_CQ_ARGS $ompi_cv_func_ibv_create_cq_args
+_ACEOF
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:bucket can compile" >&5
-$as_echo_n "checking if MCA component allocator:bucket can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+fi
+fi
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_allocator" = "bucket" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"bucket\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"bucket\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ #
+ # OpenIB dynamic SL
+ #
+ # Check whether --enable-openib-dynamic-sl was given.
+if test "${enable_openib_dynamic_sl+set}" = set; then :
+ enableval=$enable_openib_dynamic_sl;
+fi
- if test ! -z "$DIRECT_allocator" ; then
- if test "$DIRECT_allocator" = "bucket" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"bucket\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"bucket\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
- # add component to all component list
- all_components="$all_components bucket"
- fi
+ # Set these up so that we can do an AC_DEFINE below
+ # (unconditionally)
+ opal_check_openib_have_xrc=0
+ opal_check_openib_have_xrc_domains=0
+ opal_check_openib_have_opensm_devel=0
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso" ; then
- BUILD_opal_allocator_bucket_DSO=1
- else
- BUILD_opal_allocator_bucket_DSO=0
- fi
- if test "$BUILD_opal_allocator_bucket_DSO" = "1"; then
- MCA_BUILD_opal_allocator_bucket_DSO_TRUE=
- MCA_BUILD_opal_allocator_bucket_DSO_FALSE='#'
+ # If we have the openib stuff available, find out what we've got
+ if test "$opal_check_openib_happy" = "yes"; then :
+ ac_fn_c_check_decl "$LINENO" "IBV_EVENT_CLIENT_REREGISTER" "ac_cv_have_decl_IBV_EVENT_CLIENT_REREGISTER" "#include
+"
+if test "x$ac_cv_have_decl_IBV_EVENT_CLIENT_REREGISTER" = xyes; then :
+ ac_have_decl=1
else
- MCA_BUILD_opal_allocator_bucket_DSO_TRUE='#'
- MCA_BUILD_opal_allocator_bucket_DSO_FALSE=
+ ac_have_decl=0
fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_EVENT_CLIENT_REREGISTER $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IBV_ACCESS_SO" "ac_cv_have_decl_IBV_ACCESS_SO" "#include
+"
+if test "x$ac_cv_have_decl_IBV_ACCESS_SO" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
- ac_config_files="$ac_config_files opal/mca/allocator/bucket/Makefile"
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_ACCESS_SO $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IBV_ATOMIC_HCA" "ac_cv_have_decl_IBV_ATOMIC_HCA" "#include
+"
+if test "x$ac_cv_have_decl_IBV_ATOMIC_HCA" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_ATOMIC_HCA $ac_have_decl
+_ACEOF
- unset compile_mode
+ for ac_func in ibv_get_device_list ibv_resize_cq
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+fi
+done
- # configure components that use built-in configuration scripts
+ # struct ibv_device.transport_type was added in OFED v1.2
+ ac_fn_c_check_member "$LINENO" "struct ibv_device" "transport_type" "ac_cv_member_struct_ibv_device_transport_type" "#include
+"
+if test "x$ac_cv_member_struct_ibv_device_transport_type" = xyes; then :
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_IBV_DEVICE_TRANSPORT_TYPE 1
+_ACEOF
- best_mca_component_priority=0
- components_looking_for_succeed=1
- components_last_result=0
+fi
- # configure components that provide their own configure script.
- # It would be really hard to run these for "find first that
- # works", so we don't :)
+ # We have to check functions both exits *and* are declared
+ # since some distro ship broken ibverbs devel headers
+ # IBV_DEVICE_XRC is common to all OFED versions
+ # ibv_create_xrc_rcv_qp was added in OFED 1.3
+ # ibv_cmd_open_xrcd (aka XRC Domains) was added in OFED 3.12
+ if test "$enable_connectx_xrc" = "yes"; then
+ ac_fn_c_check_decl "$LINENO" "IBV_DEVICE_XRC" "ac_cv_have_decl_IBV_DEVICE_XRC" "#include
+"
+if test "x$ac_cv_have_decl_IBV_DEVICE_XRC" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_DEVICE_XRC $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ opal_check_openib_have_xrc=1
+ opal_check_openib_have_xrc_domains=1
+fi
- if test "1" != "0"; then :
+ fi
+ if test "$enable_connectx_xrc" = "yes" \
+ && test $opal_check_openib_have_xrc -eq 1; then
+ ac_fn_c_check_decl "$LINENO" "ibv_create_xrc_rcv_qp" "ac_cv_have_decl_ibv_create_xrc_rcv_qp" "#include
+"
+if test "x$ac_cv_have_decl_ibv_create_xrc_rcv_qp" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
- for component_path in $srcdir/opal/mca/allocator/* ; do
- component="`basename $component_path`"
- if test -d $component_path && test -x $component_path/configure ; then
- opal_show_subsubsubtitle "MCA component allocator:$component (need to configure)"
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_CREATE_XRC_RCV_QP $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ for ac_func in ibv_create_xrc_rcv_qp
+do :
+ ac_fn_c_check_func "$LINENO" "ibv_create_xrc_rcv_qp" "ac_cv_func_ibv_create_xrc_rcv_qp"
+if test "x$ac_cv_func_ibv_create_xrc_rcv_qp" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_IBV_CREATE_XRC_RCV_QP 1
+_ACEOF
- opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: before, should_build="
+else
+ opal_check_openib_have_xrc=0
+fi
+done
+else
+ opal_check_openib_have_xrc=0
+fi
+ fi
+ if test "$enable_connectx_xrc" = "yes" \
+ && test $opal_check_openib_have_xrc_domains -eq 1; then
+ ac_fn_c_check_decl "$LINENO" "ibv_cmd_open_xrcd" "ac_cv_have_decl_ibv_cmd_open_xrcd" "#include
+"
+if test "x$ac_cv_have_decl_ibv_cmd_open_xrcd" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
- component_path="$srcdir/opal/mca/allocator/$component"
- want_component=0
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_CMD_OPEN_XRCD $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ ac_fn_c_check_decl "$LINENO" "IBV_SRQT_XRC" "ac_cv_have_decl_IBV_SRQT_XRC" "#include
+"
+if test "x$ac_cv_have_decl_IBV_SRQT_XRC" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_allocator" ; then
- if test "$DIRECT_allocator" = "$component" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
- fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_SRQT_XRC $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ for ac_func in ibv_cmd_open_xrcd
+do :
+ ac_fn_c_check_func "$LINENO" "ibv_cmd_open_xrcd" "ac_cv_func_ibv_cmd_open_xrcd"
+if test "x$ac_cv_func_ibv_cmd_open_xrcd" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_IBV_CMD_OPEN_XRCD 1
+_ACEOF
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_allocator" = "1"; then :
- want_component=0
+else
+ opal_check_openib_have_xrc_domains=0
fi
- str="DISABLED_COMPONENT_CHECK=\$DISABLE_allocator_$component"
- eval $str
- if test "$DISABLED_COMPONENT_CHECK" = "1" ; then
- want_component=0
- fi
+done
- if test "$want_component" = "1"; then :
- should_build=1
else
- should_build=0
+ opal_check_openib_have_xrc_domains=0
fi
+else
+ opal_check_openib_have_xrc_domains=0
+fi
- SHARED_FRAMEWORK="$DSO_allocator"
- str="SHARED_COMPONENT=\$DSO_allocator_$component"
- eval $str
-
- STATIC_FRAMEWORK="$STATIC_allocator"
- str="STATIC_COMPONENT=\$STATIC_allocator_$component"
- eval $str
+ # XRC and XRC Domains should be considered as exclusive
+ if test "$opal_check_openib_have_xrc" -eq 1 && \
+ test "$opal_check_openib_have_xrc_domains" -eq 1; then
+ opal_check_openib_have_xrc=0
+ fi
+ fi
- shared_mode_override=static
+ if test "no" != "$enable_openib_dynamic_sl"; then
+ # We need ib_types.h file, which is installed with opensm-devel
+ # package. However, ib_types.h has a bad include directive,
+ # which will cause AC_CHECK_HEADER to fail.
+ # So instead, we will look for another file that is also
+ # installed as part of opensm-devel package and included in
+ # ib_types.h, but it doesn't include any other IB-related files.
+ ac_fn_c_check_header_mongrel "$LINENO" "infiniband/complib/cl_types_osd.h" "ac_cv_header_infiniband_complib_cl_types_osd_h" "$ac_includes_default"
+if test "x$ac_cv_header_infiniband_complib_cl_types_osd_h" = xyes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cl_map_init in -losmcomp" >&5
+$as_echo_n "checking for cl_map_init in -losmcomp... " >&6; }
+if ${ac_cv_lib_osmcomp_cl_map_init+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-losmcomp $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char cl_map_init ();
+int
+main ()
+{
+return cl_map_init ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_osmcomp_cl_map_init=yes
+else
+ ac_cv_lib_osmcomp_cl_map_init=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_osmcomp_cl_map_init" >&5
+$as_echo "$ac_cv_lib_osmcomp_cl_map_init" >&6; }
+if test "x$ac_cv_lib_osmcomp_cl_map_init" = xyes; then :
+ opal_check_openib_have_opensm_devel=1
+fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component allocator:$component compile mode" >&5
-$as_echo_n "checking for MCA component allocator:$component compile mode... " >&6; }
- if test "$DIRECT_allocator" = "$component" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
- fi
+fi
- opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: after, should_build=$should_build"
- if test "$should_build" = "1" ; then
+ # Abort if dynamic SL support was explicitly requested but opensm-devel
+ # package wasn't found. Otherwise, OMPI will be built w/o dynamic SL.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if can use dynamic SL support" >&5
+$as_echo_n "checking if can use dynamic SL support... " >&6; }
+ if test "$opal_check_openib_have_opensm_devel" = "1"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ if test "$enable_openib_dynamic_sl" = "yes"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-openib-dynamic-sl was specified but the" >&5
+$as_echo "$as_me: WARNING: --enable-openib-dynamic-sl was specified but the" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: appropriate header/library files could not be found" >&5
+$as_echo "$as_me: WARNING: appropriate header/library files could not be found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please install opensm-devel if you need dynamic SL support" >&5
+$as_echo "$as_me: WARNING: Please install opensm-devel if you need dynamic SL support" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+fi
+fi
+ fi
+
+
+ # Check support for RDMAoE devices
+ common_verbs_usnic_have_rdmaoe=0
+ ac_fn_c_check_decl "$LINENO" "IBV_LINK_LAYER_ETHERNET" "ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" "#include
+"
+if test "x$ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_LINK_LAYER_ETHERNET $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ common_verbs_usnic_have_rdmaoe=1
+fi
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if RDMAoE support is enabled" >&5
+$as_echo_n "checking if RDMAoE support is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_RDMAOE $common_verbs_usnic_have_rdmaoe
+_ACEOF
+
+ if test "1" = "$common_verbs_usnic_have_rdmaoe"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+
+fi
+
+ # Check to see if works. It is known to
+ # create problems on some platforms with some compilers (e.g.,
+ # RHEL4U3 with the PGI 32 bit compiler). Use undocumented (in AC
+ # 2.63) feature of AC_CHECK_HEADERS: if you explicitly pass in
+ # AC_INCLUDES_DEFAULT as the 4th arg to AC_CHECK_HEADERS, the test
+ # will fail if the header is present but not compilable, *but it
+ # will not print the big scary warning*. See
+ # http://lists.gnu.org/archive/html/autoconf/2008-10/msg00143.html.
+ if test "$opal_check_openib_happy" = "yes"; then :
+ for ac_header in infiniband/driver.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "infiniband/driver.h" "ac_cv_header_infiniband_driver_h" "$ac_includes_default
+"
+if test "x$ac_cv_header_infiniband_driver_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_INFINIBAND_DRIVER_H 1
+_ACEOF
+
+fi
+
+done
+
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ConnectX XRC support is enabled" >&5
+$as_echo_n "checking if ConnectX XRC support is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_CONNECTX_XRC $opal_check_openib_have_xrc
+_ACEOF
+
+ if test "1" = "$opal_check_openib_have_xrc"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ConnectIB XRC support is enabled" >&5
+$as_echo_n "checking if ConnectIB XRC support is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_CONNECTX_XRC_DOMAINS $opal_check_openib_have_xrc_domains
+_ACEOF
+
+ if test "1" = "$opal_check_openib_have_xrc_domains"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if dynamic SL is enabled" >&5
+$as_echo_n "checking if dynamic SL is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_ENABLE_DYNAMIC_SL $opal_check_openib_have_opensm_devel
+_ACEOF
+
+ if test "1" = "$opal_check_openib_have_opensm_devel"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ common_verbs_usnic_LIBS="-losmcomp $common_verbs_usnic_LIBS"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+ if test -z "$opal_verbs_dir"; then :
+ openib_include_dir="/usr/include"
+else
+ openib_include_dir="$opal_verbs_dir/include"
+fi
+ opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$openib_include_dir/infiniband"
+
+ CPPFLAGS="$ompi_check_openib_common_verbs_usnic_save_CPPFLAGS"
+ LDFLAGS="$ompi_check_openib_common_verbs_usnic_save_LDFLAGS"
+ LIBS="$ompi_check_openib_common_verbs_usnic_save_LIBS"
+
@@ -105706,7 +106015,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in subdir_parent sub_configure subdir_dir subdir_srcdir subdir_cache_file subdir_args subdir_dots total_dir dir_part temp; do
+ for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -105725,7 +106034,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"subdir_parent sub_configure subdir_dir subdir_srcdir subdir_cache_file subdir_args subdir_dots total_dir dir_part temp\""
+ opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
eval $opal_str
unset opal_str
@@ -105733,129 +106042,43 @@
opal_scope_index=`expr $opal_scope_index + 1`
-#
-# Invoke configure in a specific subdirectory.
-#
-# opal/mca/allocator/$component is the directory to invoke in
-# $opal_subdir_args is the list of arguments to pass
-# should_build=1 is actions to execute upon success
-# should_build=0 is actions to execute upon failure
-#
-subdir_dir="opal/mca/allocator/$component"
-subdir_args="$opal_subdir_args"
-subdir_success="should_build=1"
-subdir_failure="should_build=0"
-
-#
-# Sanity checks
-#
-
-if test "$subdir_dir" != ":" && test -d $srcdir/$subdir_dir; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: OPAL configuring in $subdir_dir" >&5
-$as_echo "$as_me: OPAL configuring in $subdir_dir" >&6;}
-
- #
- # Gotta check where srcdir is for VPATH builds. If srcdir is not
- # ., then we need to mkdir the subdir. Otherwise, we can just cd
- # into it.
- #
-
- case $srcdir in
- .)
- ;;
- *)
- { case $subdir_dir in
- [\\/]* | ?:[\\/]* ) total_dir=;;
- *) total_dir=.;;
- esac
- temp=$subdir_dir
- for dir_part in `IFS='/\\'; set X $temp; shift; echo "$@"`; do
- case $dir_part in
- # Skip DOS drivespec
- ?:) total_dir=$dir_part ;;
- *) total_dir=$total_dir/$dir_part
- test -d "$total_dir" ||
- mkdir "$total_dir" ||
- as_fn_error $? "cannot create $subdir_dir" "$LINENO" 5
- ;;
- esac
- done; }
-
- if test -d ./$subdir_dir; then :;
- else
- as_fn_error $? "cannot create \`pwd\`/$subdir_dir" "$LINENO" 5
- fi
- ;;
- esac
-
- #
- # Move into the target directory
- #
-
- subdir_parent=`pwd`
- cd $subdir_dir
-
- #
- # Make a "../" for each directory in $subdir_dir.
- #
-
- subdir_dots=`echo $subdir_dir | sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
- #
- # Construct the --srcdir argument
- #
-
- case $srcdir in
- .)
- # In place
- subdir_srcdir="$srcdir"
- ;;
- [\\/]* | ?:[\\/]* )
- # Absolute path
- subdir_srcdir="$srcdir/$subdir_dir"
- ;;
- *)
- # Relative path
- subdir_srcdir="$subdir_dots$srcdir/$subdir_dir"
- ;;
- esac
-
- #
- # Construct the --cache-file argument
- #
+ ompi_summary_section=$(echo Transports | tr ' ' '_')
+ ompi_summary_line="OpenFabrics Verbs: $opal_check_openib_happy"
+ ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
- # BWB - subdir caching is a pain since we change CFLAGS and all that.
- # Just disable it for now
- subdir_cache_file="/dev/null"
+ if test -z "$ompi_summary_section_current" ; then
+ if test -z "$ompi_summary_sections" ; then
+ ompi_summary_sections=$ompi_summary_section
+ else
+ ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
+ fi
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
+ else
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
+ fi
- #
- # Invoke the configure script in the subdirectory
- #
- sub_configure="$SHELL '$subdir_srcdir/configure'"
- { $as_echo "$as_me:${as_lineno-$LINENO}: running $sub_configure $subdir_args --cache-file=$subdir_cache_file --srcdir=$subdir_srcdir --disable-option-checking" >&5
-$as_echo "$as_me: running $sub_configure $subdir_args --cache-file=$subdir_cache_file --srcdir=$subdir_srcdir --disable-option-checking" >&6;}
- eval "$sub_configure $subdir_args \
- --cache-file=\"\$subdir_cache_file\" --srcdir=\"$subdir_srcdir\" --disable-option-checking"
- if test "$?" = "0"; then
- eval $subdir_success
- { $as_echo "$as_me:${as_lineno-$LINENO}: $sub_configure succeeded for $subdir_dir" >&5
-$as_echo "$as_me: $sub_configure succeeded for $subdir_dir" >&6;}
- else
- eval $subdir_failure
- { $as_echo "$as_me:${as_lineno-$LINENO}: $sub_configure *failed* for $subdir_dir" >&5
-$as_echo "$as_me: $sub_configure *failed* for $subdir_dir" >&6;}
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- #
- # Go back to the topdir
- #
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- cd $subdir_parent
-fi
-#
-# Clean up
-#
# Unwind the index
@@ -105878,80 +106101,123 @@
unset $opal_var
done
- opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: after subdir, should_build=$should_build"
- fi
+ fi
- if test "$should_build" = "1" ; then
- # do some extra work to pass flags back from the
- # top-level configure, the way a configure.m4
- # component would.
- infile="$srcdir/opal/mca/allocator/all_components/post_configure.sh"
- if test -f $infile; then
+ common_verbs_usnic_have_xrc=$opal_check_openib_have_xrc
+ common_verbs_usnic_have_xrc_domains=$opal_check_openib_have_xrc_domains
+ common_verbs_usnic_have_opensm_devel=$opal_check_openib_have_opensm_devel
- # First check for the ABORT tag
- line="`$GREP ABORT= $infile | cut -d= -f2-`"
- if test -n "$line" && test "$line" != "no"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component configure script told me to abort" >&5
-$as_echo "$as_me: WARNING: MCA component configure script told me to abort" >&2;}
- as_fn_error $? "cannot continue" "$LINENO" 5
- fi
+ if test "$opal_check_openib_happy" = "yes"; then :
+ common_verbs_usnic_CPPFLAGS="$common_verbs_usnic_CPPFLAGS $opal_check_openib_CPPFLAGS"
+ common_verbs_usnic_LDFLAGS="$common_verbs_usnic_LDFLAGS $opal_check_openib_LDFLAGS"
+ common_verbs_usnic_LIBS="$common_verbs_usnic_LIBS $opal_check_openib_LIBS"
+ common_verbs_usnic_happy=1
+else
+ if test "$opal_want_verbs" = "yes"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Verbs support requested (via --with-verbs) but not found." >&5
+$as_echo "$as_me: WARNING: Verbs support requested (via --with-verbs) but not found." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&5
+$as_echo "$as_me: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&2;}
+ as_fn_error $? "Aborting." "$LINENO" 5
+fi
+ common_verbs_usnic_happy=0
+fi
- line="`$GREP WRAPPER_EXTRA_LDFLAGS= $infile | cut -d= -f2-`"
- eval "line=$line"
- if test -n "$line"; then
- allocator_all_components_WRAPPER_EXTRA_LDFLAGS="$line"
- fi
- line="`$GREP WRAPPER_EXTRA_LIBS= $infile | cut -d= -f2-`"
- eval "line=$line"
- if test -n "$line"; then
- allocator_all_components_WRAPPER_EXTRA_LIBS="$line"
- fi
- fi
+fi
+
+ if test $common_verbs_usnic_happy -eq 1; then :
+ ac_fn_c_check_member "$LINENO" "struct ibv_device" "ops" "ac_cv_member_struct_ibv_device_ops" "#include
+"
+if test "x$ac_cv_member_struct_ibv_device_ops" = xyes; then :
+
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --with-verbs-usnic specified, but the verbs.h does not" >&5
+$as_echo "$as_me: WARNING: --with-verbs-usnic specified, but the verbs.h does not" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: have the required member fields. It is highly likely" >&5
+$as_echo "$as_me: WARNING: have the required member fields. It is highly likely" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: that you do not need --with-verbs-usnic. Try configuring" >&5
+$as_echo "$as_me: WARNING: that you do not need --with-verbs-usnic. Try configuring" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: and building Open MPI without it; if you get warnings" >&5
+$as_echo "$as_me: WARNING: and building Open MPI without it; if you get warnings" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: about usnic IB devices anyway, please let us know." >&5
+$as_echo "$as_me: WARNING: about usnic IB devices anyway, please let us know." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Since you asked for --with-verbs-usnic and we cannot" >&5
+$as_echo "$as_me: WARNING: Since you asked for --with-verbs-usnic and we cannot" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: deliver it, configure will now abort." >&5
+$as_echo "$as_me: WARNING: deliver it, configure will now abort." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+
+fi
+
+
+fi
+
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_COMMON_VERBS_USNIC_HAPPY $common_verbs_usnic_happy
+_ACEOF
+
+
+ if test $common_verbs_usnic_happy -eq 1; then :
+ should_build=$should_build
+else
+ should_build=0
+fi
+
+ # substitute in the things needed to build openib
+
+
+
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+
+ if test "$should_build" = "1"; then :
+
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/allocator/$component/post_configure.sh"
+ infile="$srcdir/opal/mca/common/verbs_usnic/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components $component"
+ all_components="$all_components verbs_usnic"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components $component"
+ dso_components="$dso_components verbs_usnic"
else
- if test "allocator" = "common"; then
+ if test "common" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/allocator/$component/lib${OPAL_LIB_PREFIX}mca_allocator_$component.la $static_ltlibs"
+ static_ltlibs="mca/common/verbs_usnic/lib${OPAL_LIB_PREFIX}mca_common_verbs_usnic.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/allocator/$component/libmca_allocator_$component.la $static_ltlibs"
+ static_ltlibs="mca/common/verbs_usnic/libmca_common_verbs_usnic.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_allocator_$component_component;" >> $outfile.extern
- echo " &mca_allocator_$component_component, " >> $outfile.struct
- static_components="$static_components $component"
+ echo "extern const mca_base_component_t mca_common_verbs_usnic_component;" >> $outfile.extern
+ echo " &mca_common_verbs_usnic_component, " >> $outfile.struct
+ static_components="$static_components verbs_usnic"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:$component can compile" >&5
-$as_echo_n "checking if MCA component allocator:$component can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:verbs_usnic can compile" >&5
+$as_echo_n "checking if MCA component common:verbs_usnic can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_allocator" = "$component" ; then
+ if test "$DIRECT_common" = "verbs_usnic" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_allocator_DIRECT_CALL_HEADER=$line"
+ str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** allocator component $component was supposed to be direct-called, but
+as_fn_error $? "*** common component verbs_usnic was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -105959,8 +106225,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_allocator" = "$component" ; then
-as_fn_error $? "*** allocator component $component was supposed to be direct-called, but
+ if test "$DIRECT_common" = "verbs_usnic" ; then
+as_fn_error $? "*** common component verbs_usnic was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -105975,8 +106241,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- str="line=\$allocator_$component_WRAPPER_EXTRA_LDFLAGS"
- eval "$str"
+ if test "$common_verbs_usnic_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -106016,7 +106281,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $line; do
+ for arg in $common_verbs_usnic_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -106056,8 +106321,8 @@
unset $opal_var
done
-str="line=\$allocator_$component_WRAPPER_EXTRA_LIBS"
- eval "$str"
+
+else
@@ -106097,21 +106362,21 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $line; do
+ for arg in $common_verbs_usnic_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
+ for val in ${mca_wrapper_extra_ldflags}; do
if test "x$val" = "x$arg"; then :
opal_append=0
fi
done
fi
if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
fi
done
@@ -106138,276 +106403,8 @@
done
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
-
-
- else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:$component can compile" >&5
-$as_echo_n "checking if MCA component allocator:$component can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_allocator" = "$component" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"$component\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"$component\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- if test ! -z "$DIRECT_allocator" ; then
- if test "$DIRECT_allocator" = "$component" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"$component\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"$component\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
-
- fi
- fi
- done
-
-fi
-
- MCA_opal_allocator_ALL_COMPONENTS="$all_components"
- MCA_opal_allocator_STATIC_COMPONENTS="$static_components"
- MCA_opal_allocator_DSO_COMPONENTS="$dso_components"
- MCA_opal_allocator_STATIC_LTLIBS="$static_ltlibs"
-
-
-
-
-
-
-
- MCA_opal_allocator_ALL_SUBDIRS=
- for item in $all_components ; do
- MCA_opal_allocator_ALL_SUBDIRS="$MCA_opal_allocator_ALL_SUBDIRS mca/allocator/$item"
- done
-
-
-
- MCA_opal_allocator_STATIC_SUBDIRS=
- for item in $static_components ; do
- MCA_opal_allocator_STATIC_SUBDIRS="$MCA_opal_allocator_STATIC_SUBDIRS mca/allocator/$item"
- done
-
-
-
- MCA_opal_allocator_DSO_SUBDIRS=
- for item in $dso_components ; do
- MCA_opal_allocator_DSO_SUBDIRS="$MCA_opal_allocator_DSO_SUBDIRS mca/allocator/$item"
- done
-
-
-
- # Create the final .h file that will be included in the type's
- # top-level glue. This lists all the static components. We don't
- # need to do this for "common".
- if test "allocator" != "common"; then
- cat > $outfile < /dev/null 2>&1
- if test "$?" != "0"; then
- mv $outfile $outfile_real
- else
- rm -f $outfile
- fi
- fi
- rm -f $outfile.struct $outfile.extern
-
- unset all_components static_components dso_components outfile outfile_real
-
- MCA_opal_FRAMEWORKS="$MCA_opal_FRAMEWORKS backtrace"
- MCA_opal_FRAMEWORKS_SUBDIRS="$MCA_opal_FRAMEWORKS_SUBDIRS mca/backtrace"
- MCA_opal_FRAMEWORK_COMPONENT_ALL_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_ALL_SUBDIRS \$(MCA_opal_backtrace_ALL_SUBDIRS)"
- MCA_opal_FRAMEWORK_COMPONENT_DSO_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_DSO_SUBDIRS \$(MCA_opal_backtrace_DSO_SUBDIRS)"
- MCA_opal_FRAMEWORK_COMPONENT_STATIC_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_STATIC_SUBDIRS \$(MCA_opal_backtrace_STATIC_SUBDIRS)"
- MCA_opal_FRAMEWORK_LIBS="$MCA_opal_FRAMEWORK_LIBS mca/backtrace/libmca_backtrace.la"
- MCA_opal_FRAMEWORK_LIBS="$MCA_opal_FRAMEWORK_LIBS \$(MCA_opal_backtrace_STATIC_LTLIBS)"
-
- opal_show_subsubtitle "Configuring MCA framework backtrace"
-
-
-
-
- # setup for framework
- all_components=
- static_components=
- dso_components=
- static_ltlibs=
-
- # Ensure that the directory where the #include file is to live
- # exists. Need to do this for VPATH builds, because the directory
- # may not exist yet. For the "common" type, it's not really a
- # component, so it doesn't have a base.
- outdir=opal/mca/backtrace/base
- as_dir=$outdir; as_fn_mkdir_p
-
- # emit Makefile rule
- ac_config_files="$ac_config_files opal/mca/backtrace/Makefile"
-
-
- # remove any previously generated #include files
- outfile_real=$outdir/static-components.h
- outfile=$outfile_real.new
- rm -f $outfile $outfile.struct $outfile.extern
- touch $outfile.struct $outfile.extern
-
- # print some nice messages about what we're about to do...
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for no configure components in framework backtrace" >&5
-$as_echo_n "checking for no configure components in framework backtrace... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5
-$as_echo "" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for m4 configure components in framework backtrace" >&5
-$as_echo_n "checking for m4 configure components in framework backtrace... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: execinfo, none, printstack" >&5
-$as_echo "execinfo, none, printstack" >&6; }
-
- # If there are components in the no configure list, but we're
- # doing one of the "special" selection logics, abort with a
- # reasonable message.
-
-
-
- # run the configure logic for the no-config components
-
-
- # configure components that use built-in configuration scripts
-
-
-
-
-
-
- best_mca_component_priority=0
- components_looking_for_succeed=1
- components_last_result=0
-
-
- opal_show_subsubsubtitle "MCA component backtrace:execinfo (m4 configuration macro, priority 30)"
-
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
-
-
-
- component_path="$srcdir/opal/mca/backtrace/execinfo"
- want_component=0
-
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_backtrace" ; then
- if test "$DIRECT_backtrace" = "execinfo" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
- fi
-
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_backtrace" = "1"; then :
- want_component=0
-fi
- if test "$DISABLE_backtrace_execinfo" = "1"; then :
- want_component=0
-fi
-
- if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
-else
- should_build=0
-fi
-
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component backtrace:execinfo compile mode" >&5
-$as_echo_n "checking for MCA component backtrace:execinfo compile mode... " >&6; }
- compile_mode="static"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
-
-
- # try to configure the component
-
- ac_config_files="$ac_config_files opal/mca/backtrace/execinfo/Makefile"
-
-
- for ac_header in execinfo.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "execinfo.h" "ac_cv_header_execinfo_h" "$ac_includes_default"
-if test "x$ac_cv_header_execinfo_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_EXECINFO_H 1
-_ACEOF
-
fi
-
-done
-
- # FreeBSD has backtrace in -lexecinfo, usually in libc
-
-
+ if test "$common_verbs_usnic_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -106420,7 +106417,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in LIBS_save add; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -106439,71 +106436,56 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"LIBS_save add\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
- LIBS_save=$LIBS
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing backtrace" >&5
-$as_echo_n "checking for library containing backtrace... " >&6; }
-if ${ac_cv_search_backtrace+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char backtrace ();
-int
-main ()
-{
-return backtrace ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' execinfo; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_backtrace=$ac_res
+ for arg in $common_verbs_usnic_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_backtrace+:} false; then :
- break
+ done
fi
-done
-if ${ac_cv_search_backtrace+:} false; then :
-
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- ac_cv_search_backtrace=no
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_backtrace" >&5
-$as_echo "$ac_cv_search_backtrace" >&6; }
-ac_res=$ac_cv_search_backtrace
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- # Found it! See if anything was added to LIBS
- add=`printf '%s\n' "$LIBS" | sed -e "s/$LIBS_save$//"`
- if test -n "$add"; then :
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+else
@@ -106543,21 +106525,21 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $add; do
+ for arg in $common_verbs_usnic_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${backtrace_execinfo_LIBS}; do
+ for val in ${mca_wrapper_extra_libs}; do
if test "x$val" = "x$arg"; then :
opal_append=0
fi
done
fi
if test "$opal_append" = "1"; then :
- if test -z "$backtrace_execinfo_LIBS"; then :
- backtrace_execinfo_LIBS=$arg
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- backtrace_execinfo_LIBS="$backtrace_execinfo_LIBS $arg"
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
fi
fi
done
@@ -106585,119 +106567,16 @@
fi
- backtrace_execinfo_have_backtrace=1
- backtrace_execinfo_happy="yes"
-else
- backtrace_execinfo_have_backtrace=0
- backtrace_execinfo_happy="no"
-fi
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_BACKTRACE_EXECINFO $backtrace_execinfo_have_backtrace
-_ACEOF
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-
- if test "$backtrace_execinfo_happy" = "yes"; then :
- should_build=$should_build
-else
- should_build=0
-fi
-
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
-
- if test "$should_build" = "1"; then :
-
-
-
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/backtrace/execinfo/post_configure.sh"
-
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components execinfo"
-
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components execinfo"
- else
- if test "backtrace" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/backtrace/execinfo/lib${OPAL_LIB_PREFIX}mca_backtrace_execinfo.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/backtrace/execinfo/libmca_backtrace_execinfo.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_backtrace_execinfo_component;" >> $outfile.extern
- echo " &mca_backtrace_execinfo_component, " >> $outfile.struct
- static_components="$static_components execinfo"
- fi
-
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:execinfo can compile" >&5
-$as_echo_n "checking if MCA component backtrace:execinfo can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_backtrace" = "execinfo" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_backtrace_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** backtrace component execinfo was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_backtrace" = "execinfo" ; then
-as_fn_error $? "*** backtrace component execinfo was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
fi
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$backtrace_execinfo_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ if test "$common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=0
+ if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
+ if test "$with_devel_headers" = "yes"; then :
@@ -106737,21 +106616,21 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_execinfo_LDFLAGS; do
+ for arg in $common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
+ for val in ${mca_wrapper_extra_cppflags}; do
if test "x$val" = "x$arg"; then :
opal_append=0
fi
done
fi
if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+ if test -z "$mca_wrapper_extra_cppflags"; then :
+ mca_wrapper_extra_cppflags=$arg
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
fi
fi
done
@@ -106778,89 +106657,185 @@
done
+fi
else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS ($common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS ($common_verbs_usnic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+fi
+fi
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:verbs_usnic can compile" >&5
+$as_echo_n "checking if MCA component common:verbs_usnic can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_common" = "verbs_usnic" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"verbs_usnic\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"verbs_usnic\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ if test ! -z "$DIRECT_common" ; then
+ if test "$DIRECT_common" = "verbs_usnic" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"verbs_usnic\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"verbs_usnic\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- done
+ fi
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+ # add component to all component list
+ all_components="$all_components verbs_usnic"
+fi
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_execinfo_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
+ # set the AM_CONDITIONAL on how we should build
+ if test "$compile_mode" = "dso"; then :
+ BUILD_opal_common_verbs_usnic_DSO=1
+else
+ BUILD_opal_common_verbs_usnic_DSO=0
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+ if test "$BUILD_opal_common_verbs_usnic_DSO" = "1"; then
+ MCA_BUILD_opal_common_verbs_usnic_DSO_TRUE=
+ MCA_BUILD_opal_common_verbs_usnic_DSO_FALSE='#'
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ MCA_BUILD_opal_common_verbs_usnic_DSO_TRUE='#'
+ MCA_BUILD_opal_common_verbs_usnic_DSO_FALSE=
fi
+
+
+ if test "$should_build" = "1"; then :
+ components_last_result=1
+else
+ components_last_result=0
fi
- done
+ unset compile_mode
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ # configure components that provide their own configure script.
+ # It would be really hard to run these for "find first that
+ # works", so we don't :)
+
+
+
+ if test "1" != "0"; then :
+
+ for component_path in $srcdir/opal/mca/common/* ; do
+ component="`basename $component_path`"
+ if test -d $component_path && test -x $component_path/configure ; then
+ opal_show_subsubsubtitle "MCA component common:$component (need to configure)"
+
+ opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: before, should_build="
+
+
+
+ component_path="$srcdir/opal/mca/common/$component"
+ want_component=0
+
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
+ fi
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_common" ; then
+ if test "$DIRECT_common" = "$component" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
+ fi
+ fi
+
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_common" = "1"; then :
+ want_component=0
+fi
+ str="DISABLED_COMPONENT_CHECK=\$DISABLE_common_$component"
+ eval $str
+ if test "$DISABLED_COMPONENT_CHECK" = "1" ; then
+ want_component=0
+ fi
+
+ if test "$want_component" = "1"; then :
+ should_build=1
+else
+ should_build=0
fi
- if test "$backtrace_execinfo_WRAPPER_EXTRA_LIBS" = ""; then :
+
+
+ SHARED_FRAMEWORK="$DSO_common"
+ str="SHARED_COMPONENT=\$DSO_common_$component"
+ eval $str
+
+ STATIC_FRAMEWORK="$STATIC_common"
+ str="STATIC_COMPONENT=\$STATIC_common_$component"
+ eval $str
+
+ shared_mode_override=static
+
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component common:$component compile mode" >&5
+$as_echo_n "checking for MCA component common:$component compile mode... " >&6; }
+ if test "$DIRECT_common" = "$component" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
+
+ opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: after, should_build=$should_build"
+
+ if test "$should_build" = "1" ; then
@@ -106873,7 +106848,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in subdir_parent sub_configure subdir_dir subdir_srcdir subdir_cache_file subdir_args subdir_dots total_dir dir_part temp; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -106892,7 +106867,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"subdir_parent sub_configure subdir_dir subdir_srcdir subdir_cache_file subdir_args subdir_dots total_dir dir_part temp\""
eval $opal_str
unset opal_str
@@ -106900,24 +106875,129 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_execinfo_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
+#
+# Invoke configure in a specific subdirectory.
+#
+# opal/mca/common/$component is the directory to invoke in
+# $opal_subdir_args is the list of arguments to pass
+# should_build=1 is actions to execute upon success
+# should_build=0 is actions to execute upon failure
+#
+subdir_dir="opal/mca/common/$component"
+subdir_args="$opal_subdir_args"
+subdir_success="should_build=1"
+subdir_failure="should_build=0"
+
+#
+# Sanity checks
+#
+
+if test "$subdir_dir" != ":" && test -d $srcdir/$subdir_dir; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: OPAL configuring in $subdir_dir" >&5
+$as_echo "$as_me: OPAL configuring in $subdir_dir" >&6;}
+
+ #
+ # Gotta check where srcdir is for VPATH builds. If srcdir is not
+ # ., then we need to mkdir the subdir. Otherwise, we can just cd
+ # into it.
+ #
+
+ case $srcdir in
+ .)
+ ;;
+ *)
+ { case $subdir_dir in
+ [\\/]* | ?:[\\/]* ) total_dir=;;
+ *) total_dir=.;;
+ esac
+ temp=$subdir_dir
+ for dir_part in `IFS='/\\'; set X $temp; shift; echo "$@"`; do
+ case $dir_part in
+ # Skip DOS drivespec
+ ?:) total_dir=$dir_part ;;
+ *) total_dir=$total_dir/$dir_part
+ test -d "$total_dir" ||
+ mkdir "$total_dir" ||
+ as_fn_error $? "cannot create $subdir_dir" "$LINENO" 5
+ ;;
+ esac
+ done; }
+
+ if test -d ./$subdir_dir; then :;
+ else
+ as_fn_error $? "cannot create \`pwd\`/$subdir_dir" "$LINENO" 5
+ fi
+ ;;
+ esac
+
+ #
+ # Move into the target directory
+ #
+
+ subdir_parent=`pwd`
+ cd $subdir_dir
+
+ #
+ # Make a "../" for each directory in $subdir_dir.
+ #
+
+ subdir_dots=`echo $subdir_dir | sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
+ #
+ # Construct the --srcdir argument
+ #
+
+ case $srcdir in
+ .)
+ # In place
+ subdir_srcdir="$srcdir"
+ ;;
+ [\\/]* | ?:[\\/]* )
+ # Absolute path
+ subdir_srcdir="$srcdir/$subdir_dir"
+ ;;
+ *)
+ # Relative path
+ subdir_srcdir="$subdir_dots$srcdir/$subdir_dir"
+ ;;
+ esac
+
+ #
+ # Construct the --cache-file argument
+ #
+
+ # BWB - subdir caching is a pain since we change CFLAGS and all that.
+ # Just disable it for now
+ subdir_cache_file="/dev/null"
+
+ #
+ # Invoke the configure script in the subdirectory
+ #
+
+ sub_configure="$SHELL '$subdir_srcdir/configure'"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: running $sub_configure $subdir_args --cache-file=$subdir_cache_file --srcdir=$subdir_srcdir --disable-option-checking" >&5
+$as_echo "$as_me: running $sub_configure $subdir_args --cache-file=$subdir_cache_file --srcdir=$subdir_srcdir --disable-option-checking" >&6;}
+ eval "$sub_configure $subdir_args \
+ --cache-file=\"\$subdir_cache_file\" --srcdir=\"$subdir_srcdir\" --disable-option-checking"
+ if test "$?" = "0"; then
+ eval $subdir_success
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $sub_configure succeeded for $subdir_dir" >&5
+$as_echo "$as_me: $sub_configure succeeded for $subdir_dir" >&6;}
+ else
+ eval $subdir_failure
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $sub_configure *failed* for $subdir_dir" >&5
+$as_echo "$as_me: $sub_configure *failed* for $subdir_dir" >&6;}
+ fi
+
+ #
+ # Go back to the topdir
+ #
+
+ cd $subdir_parent
fi
- done
+
+#
+# Clean up
+#
# Unwind the index
@@ -106940,8 +107020,105 @@
unset $opal_var
done
+ opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: after subdir, should_build=$should_build"
+ fi
-else
+ if test "$should_build" = "1" ; then
+ # do some extra work to pass flags back from the
+ # top-level configure, the way a configure.m4
+ # component would.
+ infile="$srcdir/opal/mca/common/all_components/post_configure.sh"
+ if test -f $infile; then
+
+ # First check for the ABORT tag
+ line="`$GREP ABORT= $infile | cut -d= -f2-`"
+ if test -n "$line" && test "$line" != "no"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component configure script told me to abort" >&5
+$as_echo "$as_me: WARNING: MCA component configure script told me to abort" >&2;}
+ as_fn_error $? "cannot continue" "$LINENO" 5
+ fi
+
+ line="`$GREP WRAPPER_EXTRA_LDFLAGS= $infile | cut -d= -f2-`"
+ eval "line=$line"
+ if test -n "$line"; then
+ common_all_components_WRAPPER_EXTRA_LDFLAGS="$line"
+ fi
+ line="`$GREP WRAPPER_EXTRA_LIBS= $infile | cut -d= -f2-`"
+ eval "line=$line"
+ if test -n "$line"; then
+ common_all_components_WRAPPER_EXTRA_LIBS="$line"
+ fi
+ fi
+
+
+
+
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/common/$component/post_configure.sh"
+
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components $component"
+
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components $component"
+ else
+ if test "common" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/common/$component/lib${OPAL_LIB_PREFIX}mca_common_$component.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/common/$component/libmca_common_$component.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_common_$component_component;" >> $outfile.extern
+ echo " &mca_common_$component_component, " >> $outfile.struct
+ static_components="$static_components $component"
+ fi
+
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:$component can compile" >&5
+$as_echo_n "checking if MCA component common:$component can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_common" = "$component" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_common_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** common component $component was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_common" = "$component" ; then
+as_fn_error $? "*** common component $component was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ str="line=\$common_$component_WRAPPER_EXTRA_LDFLAGS"
+ eval "$str"
@@ -106981,21 +107158,21 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_execinfo_WRAPPER_EXTRA_LIBS; do
+ for arg in $line; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
+ for val in ${mca_wrapper_extra_ldflags}; do
if test "x$val" = "x$arg"; then :
opal_append=0
fi
done
fi
if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
fi
done
@@ -107021,18 +107198,8 @@
unset $opal_var
done
-
-fi
-
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=1
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
+str="line=\$common_$component_WRAPPER_EXTRA_LIBS"
+ eval "$str"
@@ -107072,21 +107239,21 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $line; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
+ for val in ${mca_wrapper_extra_libs}; do
if test "x$val" = "x$arg"; then :
opal_append=0
fi
done
fi
if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
fi
fi
done
@@ -107113,82 +107280,179 @@
done
-fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS ($backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS ($backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
-fi
-fi
+ fi
-else
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:execinfo can compile" >&5
-$as_echo_n "checking if MCA component backtrace:execinfo can compile... " >&6; }
+
+ else
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component common:$component can compile" >&5
+$as_echo_n "checking if MCA component common:$component can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_backtrace" = "execinfo" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"execinfo\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"execinfo\" failed to configure properly" >&2;}
+ if test "$with_common" = "$component" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"$component\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"$component\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- if test ! -z "$DIRECT_backtrace" ; then
- if test "$DIRECT_backtrace" = "execinfo" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"execinfo\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"execinfo\" failed to configure properly" >&2;}
+ if test ! -z "$DIRECT_common" ; then
+ if test "$DIRECT_common" = "$component" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"$component\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"$component\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
fi
- # add component to all component list
- all_components="$all_components execinfo"
+ fi
+ fi
+ done
+
fi
+ MCA_opal_common_ALL_COMPONENTS="$all_components"
+ MCA_opal_common_STATIC_COMPONENTS="$static_components"
+ MCA_opal_common_DSO_COMPONENTS="$dso_components"
+ MCA_opal_common_STATIC_LTLIBS="$static_ltlibs"
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_backtrace_execinfo_DSO=1
-else
- BUILD_opal_backtrace_execinfo_DSO=0
-fi
- if test "$BUILD_opal_backtrace_execinfo_DSO" = "1"; then
- MCA_BUILD_opal_backtrace_execinfo_DSO_TRUE=
- MCA_BUILD_opal_backtrace_execinfo_DSO_FALSE='#'
-else
- MCA_BUILD_opal_backtrace_execinfo_DSO_TRUE='#'
- MCA_BUILD_opal_backtrace_execinfo_DSO_FALSE=
-fi
- if test "$should_build" = "1"; then :
- components_last_result=1
-else
- components_last_result=0
-fi
- unset compile_mode
- if test $components_last_result -eq 1; then :
- components_looking_for_succeed=0
-fi
+
+ MCA_opal_common_ALL_SUBDIRS=
+ for item in $all_components ; do
+ MCA_opal_common_ALL_SUBDIRS="$MCA_opal_common_ALL_SUBDIRS mca/common/$item"
+ done
- opal_show_subsubsubtitle "MCA component backtrace:printstack (m4 configuration macro, priority 30)"
+ MCA_opal_common_STATIC_SUBDIRS=
+ for item in $static_components ; do
+ MCA_opal_common_STATIC_SUBDIRS="$MCA_opal_common_STATIC_SUBDIRS mca/common/$item"
+ done
+
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+ MCA_opal_common_DSO_SUBDIRS=
+ for item in $dso_components ; do
+ MCA_opal_common_DSO_SUBDIRS="$MCA_opal_common_DSO_SUBDIRS mca/common/$item"
+ done
- component_path="$srcdir/opal/mca/backtrace/printstack"
+
+ # Create the final .h file that will be included in the type's
+ # top-level glue. This lists all the static components. We don't
+ # need to do this for "common".
+ if test "common" != "common"; then
+ cat > $outfile < /dev/null 2>&1
+ if test "$?" != "0"; then
+ mv $outfile $outfile_real
+ else
+ rm -f $outfile
+ fi
+ fi
+ rm -f $outfile.struct $outfile.extern
+
+ unset all_components static_components dso_components outfile outfile_real
+
+ MCA_opal_FRAMEWORKS="$MCA_opal_FRAMEWORKS allocator"
+ MCA_opal_FRAMEWORKS_SUBDIRS="$MCA_opal_FRAMEWORKS_SUBDIRS mca/allocator"
+ MCA_opal_FRAMEWORK_COMPONENT_ALL_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_ALL_SUBDIRS \$(MCA_opal_allocator_ALL_SUBDIRS)"
+ MCA_opal_FRAMEWORK_COMPONENT_DSO_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_DSO_SUBDIRS \$(MCA_opal_allocator_DSO_SUBDIRS)"
+ MCA_opal_FRAMEWORK_COMPONENT_STATIC_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_STATIC_SUBDIRS \$(MCA_opal_allocator_STATIC_SUBDIRS)"
+ MCA_opal_FRAMEWORK_LIBS="$MCA_opal_FRAMEWORK_LIBS mca/allocator/libmca_allocator.la"
+ MCA_opal_FRAMEWORK_LIBS="$MCA_opal_FRAMEWORK_LIBS \$(MCA_opal_allocator_STATIC_LTLIBS)"
+
+ opal_show_subsubtitle "Configuring MCA framework allocator"
+
+
+
+
+ # setup for framework
+ all_components=
+ static_components=
+ dso_components=
+ static_ltlibs=
+
+ # Ensure that the directory where the #include file is to live
+ # exists. Need to do this for VPATH builds, because the directory
+ # may not exist yet. For the "common" type, it's not really a
+ # component, so it doesn't have a base.
+ outdir=opal/mca/allocator/base
+ as_dir=$outdir; as_fn_mkdir_p
+
+ # emit Makefile rule
+ ac_config_files="$ac_config_files opal/mca/allocator/Makefile"
+
+
+ # remove any previously generated #include files
+ outfile_real=$outdir/static-components.h
+ outfile=$outfile_real.new
+ rm -f $outfile $outfile.struct $outfile.extern
+ touch $outfile.struct $outfile.extern
+
+ # print some nice messages about what we're about to do...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for no configure components in framework allocator" >&5
+$as_echo_n "checking for no configure components in framework allocator... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: basic, bucket" >&5
+$as_echo "basic, bucket" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for m4 configure components in framework allocator" >&5
+$as_echo_n "checking for m4 configure components in framework allocator... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5
+$as_echo "" >&6; }
+
+ # If there are components in the no configure list, but we're
+ # doing one of the "special" selection logics, abort with a
+ # reasonable message.
+
+
+
+ # run the configure logic for the no-config components
+
+ opal_show_subsubsubtitle "MCA component allocator:basic (no configuration)"
+
+ opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: before, should_build=1"
+
+
+
+ component_path="$srcdir/opal/mca/allocator/basic"
want_component=0
# build if:
@@ -107220,8 +107484,8 @@
fi
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_backtrace" ; then
- if test "$DIRECT_backtrace" = "printstack" ; then
+ if test ! -z "$DIRECT_allocator" ; then
+ if test "$DIRECT_allocator" = "basic" ; then
want_component=1
else
want_component=0
@@ -107230,114 +107494,99 @@
fi
# if we were explicitly disabled, don't build :)
- if test "$DISABLE_backtrace" = "1"; then :
+ if test "$DISABLE_allocator" = "1"; then :
want_component=0
fi
- if test "$DISABLE_backtrace_printstack" = "1"; then :
+ if test "$DISABLE_allocator_basic" = "1"; then :
want_component=0
fi
if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
+ should_build=1
else
should_build=0
fi
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component backtrace:printstack compile mode" >&5
-$as_echo_n "checking for MCA component backtrace:printstack compile mode... " >&6; }
- compile_mode="static"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
-
-
- # try to configure the component
-
- ac_config_files="$ac_config_files opal/mca/backtrace/printstack/Makefile"
-
-
- for ac_header in ucontext.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucontext.h" "ac_cv_header_ucontext_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucontext_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_UCONTEXT_H 1
-_ACEOF
-fi
+ SHARED_FRAMEWORK="$DSO_allocator"
+ SHARED_COMPONENT="$DSO_allocator_basic"
-done
+ STATIC_FRAMEWORK="$STATIC_allocator"
+ STATIC_COMPONENT="$STATIC_allocator_basic"
- # FreeBSD has backtrace in -lexecinfo, usually in libc
- for ac_func in printstack
-do :
- ac_fn_c_check_func "$LINENO" "printstack" "ac_cv_func_printstack"
-if test "x$ac_cv_func_printstack" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_PRINTSTACK 1
-_ACEOF
- backtrace_printstack_happy="yes"
-else
- backtrace_printstack_happy="no"
-fi
-done
+ shared_mode_override=static
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
+ fi
- if test "$backtrace_printstack_happy" = "yes"; then :
- should_build=$should_build
-else
- should_build=0
-fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component allocator:basic compile mode" >&5
+$as_echo_n "checking for MCA component allocator:basic compile mode... " >&6; }
+ if test "$DIRECT_allocator" = "basic" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+ opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: after, should_build=$should_build"
- if test "$should_build" = "1"; then :
+ if test "$should_build" = "1" ; then
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/backtrace/printstack/post_configure.sh"
+ infile="$srcdir/opal/mca/allocator/basic/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components printstack"
+ all_components="$all_components basic"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components printstack"
+ dso_components="$dso_components basic"
else
- if test "backtrace" = "common"; then
+ if test "allocator" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/backtrace/printstack/lib${OPAL_LIB_PREFIX}mca_backtrace_printstack.la $static_ltlibs"
+ static_ltlibs="mca/allocator/basic/lib${OPAL_LIB_PREFIX}mca_allocator_basic.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/backtrace/printstack/libmca_backtrace_printstack.la $static_ltlibs"
+ static_ltlibs="mca/allocator/basic/libmca_allocator_basic.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_backtrace_printstack_component;" >> $outfile.extern
- echo " &mca_backtrace_printstack_component, " >> $outfile.struct
- static_components="$static_components printstack"
+ echo "extern const mca_base_component_t mca_allocator_basic_component;" >> $outfile.extern
+ echo " &mca_allocator_basic_component, " >> $outfile.struct
+ static_components="$static_components basic"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:printstack can compile" >&5
-$as_echo_n "checking if MCA component backtrace:printstack can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:basic can compile" >&5
+$as_echo_n "checking if MCA component allocator:basic can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_backtrace" = "printstack" ; then
+ if test "$DIRECT_allocator" = "basic" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_backtrace_DIRECT_CALL_HEADER=$line"
+ str="MCA_opal_allocator_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** backtrace component printstack was supposed to be direct-called, but
+as_fn_error $? "*** allocator component basic was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -107345,8 +107594,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_backtrace" = "printstack" ; then
-as_fn_error $? "*** backtrace component printstack was supposed to be direct-called, but
+ if test "$DIRECT_allocator" = "basic" ; then
+as_fn_error $? "*** allocator component basic was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -107361,7 +107610,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- if test "$backtrace_printstack_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$allocator_basic_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -107401,7 +107650,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_printstack_LDFLAGS; do
+ for arg in $allocator_basic_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -107482,7 +107731,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_printstack_WRAPPER_EXTRA_LDFLAGS; do
+ for arg in $allocator_basic_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -107524,7 +107773,7 @@
fi
- if test "$backtrace_printstack_WRAPPER_EXTRA_LIBS" = ""; then :
+ if test "$allocator_basic_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -107564,7 +107813,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_printstack_LIBS; do
+ for arg in $allocator_basic_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -107645,7 +107894,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_printstack_WRAPPER_EXTRA_LIBS; do
+ for arg in $allocator_basic_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -107693,8 +107942,8 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=1
+ if test "$allocator_basic_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=0
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -107736,7 +107985,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $allocator_basic_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -107779,80 +108028,69 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS ($backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS ($backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring allocator_basic_WRAPPER_EXTRA_CPPFLAGS ($allocator_basic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring allocator_basic_WRAPPER_EXTRA_CPPFLAGS ($allocator_basic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
-else
+ else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:printstack can compile" >&5
-$as_echo_n "checking if MCA component backtrace:printstack can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:basic can compile" >&5
+$as_echo_n "checking if MCA component allocator:basic can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_backtrace" = "printstack" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"printstack\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"printstack\" failed to configure properly" >&2;}
+ if test "$with_allocator" = "basic" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"basic\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"basic\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- if test ! -z "$DIRECT_backtrace" ; then
- if test "$DIRECT_backtrace" = "printstack" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"printstack\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"printstack\" failed to configure properly" >&2;}
+ if test ! -z "$DIRECT_allocator" ; then
+ if test "$DIRECT_allocator" = "basic" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"basic\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"basic\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
fi
- # add component to all component list
- all_components="$all_components printstack"
-fi
-
-
+ # add component to all component list
+ all_components="$all_components basic"
+ fi
# set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_backtrace_printstack_DSO=1
-else
- BUILD_opal_backtrace_printstack_DSO=0
-fi
- if test "$BUILD_opal_backtrace_printstack_DSO" = "1"; then
- MCA_BUILD_opal_backtrace_printstack_DSO_TRUE=
- MCA_BUILD_opal_backtrace_printstack_DSO_FALSE='#'
-else
- MCA_BUILD_opal_backtrace_printstack_DSO_TRUE='#'
- MCA_BUILD_opal_backtrace_printstack_DSO_FALSE=
-fi
-
-
- if test "$should_build" = "1"; then :
- components_last_result=1
+ if test "$compile_mode" = "dso" ; then
+ BUILD_opal_allocator_basic_DSO=1
+ else
+ BUILD_opal_allocator_basic_DSO=0
+ fi
+ if test "$BUILD_opal_allocator_basic_DSO" = "1"; then
+ MCA_BUILD_opal_allocator_basic_DSO_TRUE=
+ MCA_BUILD_opal_allocator_basic_DSO_FALSE='#'
else
- components_last_result=0
+ MCA_BUILD_opal_allocator_basic_DSO_TRUE='#'
+ MCA_BUILD_opal_allocator_basic_DSO_FALSE=
fi
- unset compile_mode
- if test $components_last_result -eq 1; then :
- components_looking_for_succeed=0
-fi
+ ac_config_files="$ac_config_files opal/mca/allocator/basic/Makefile"
+ unset compile_mode
- opal_show_subsubsubtitle "MCA component backtrace:none (m4 configuration macro, priority 0)"
+ opal_show_subsubsubtitle "MCA component allocator:bucket (no configuration)"
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+ opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: before, should_build=1"
- component_path="$srcdir/opal/mca/backtrace/none"
+ component_path="$srcdir/opal/mca/allocator/bucket"
want_component=0
# build if:
@@ -107884,8 +108122,8 @@
fi
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_backtrace" ; then
- if test "$DIRECT_backtrace" = "none" ; then
+ if test ! -z "$DIRECT_allocator" ; then
+ if test "$DIRECT_allocator" = "bucket" ; then
want_component=1
else
want_component=0
@@ -107894,81 +108132,99 @@
fi
# if we were explicitly disabled, don't build :)
- if test "$DISABLE_backtrace" = "1"; then :
+ if test "$DISABLE_allocator" = "1"; then :
want_component=0
fi
- if test "$DISABLE_backtrace_none" = "1"; then :
+ if test "$DISABLE_allocator_bucket" = "1"; then :
want_component=0
fi
if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
+ should_build=1
else
should_build=0
fi
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component backtrace:none compile mode" >&5
-$as_echo_n "checking for MCA component backtrace:none compile mode... " >&6; }
- compile_mode="static"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
+ SHARED_FRAMEWORK="$DSO_allocator"
+ SHARED_COMPONENT="$DSO_allocator_bucket"
+ STATIC_FRAMEWORK="$STATIC_allocator"
+ STATIC_COMPONENT="$STATIC_allocator_bucket"
- # try to configure the component
+ shared_mode_override=static
- ac_config_files="$ac_config_files opal/mca/backtrace/none/Makefile"
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component allocator:bucket compile mode" >&5
+$as_echo_n "checking for MCA component allocator:bucket compile mode... " >&6; }
+ if test "$DIRECT_allocator" = "bucket" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+ opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: after, should_build=$should_build"
- if test "$should_build" = "1"; then :
+ if test "$should_build" = "1" ; then
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/backtrace/none/post_configure.sh"
+ infile="$srcdir/opal/mca/allocator/bucket/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components none"
+ all_components="$all_components bucket"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components none"
+ dso_components="$dso_components bucket"
else
- if test "backtrace" = "common"; then
+ if test "allocator" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/backtrace/none/lib${OPAL_LIB_PREFIX}mca_backtrace_none.la $static_ltlibs"
+ static_ltlibs="mca/allocator/bucket/lib${OPAL_LIB_PREFIX}mca_allocator_bucket.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/backtrace/none/libmca_backtrace_none.la $static_ltlibs"
+ static_ltlibs="mca/allocator/bucket/libmca_allocator_bucket.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_backtrace_none_component;" >> $outfile.extern
- echo " &mca_backtrace_none_component, " >> $outfile.struct
- static_components="$static_components none"
+ echo "extern const mca_base_component_t mca_allocator_bucket_component;" >> $outfile.extern
+ echo " &mca_allocator_bucket_component, " >> $outfile.struct
+ static_components="$static_components bucket"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:none can compile" >&5
-$as_echo_n "checking if MCA component backtrace:none can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:bucket can compile" >&5
+$as_echo_n "checking if MCA component allocator:bucket can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_backtrace" = "none" ; then
+ if test "$DIRECT_allocator" = "bucket" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_backtrace_DIRECT_CALL_HEADER=$line"
+ str="MCA_opal_allocator_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** backtrace component none was supposed to be direct-called, but
+as_fn_error $? "*** allocator component bucket was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -107976,8 +108232,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_backtrace" = "none" ; then
-as_fn_error $? "*** backtrace component none was supposed to be direct-called, but
+ if test "$DIRECT_allocator" = "bucket" ; then
+as_fn_error $? "*** allocator component bucket was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -107992,7 +108248,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- if test "$backtrace_none_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$allocator_bucket_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -108032,7 +108288,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_none_LDFLAGS; do
+ for arg in $allocator_bucket_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -108113,7 +108369,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_none_WRAPPER_EXTRA_LDFLAGS; do
+ for arg in $allocator_bucket_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -108155,7 +108411,7 @@
fi
- if test "$backtrace_none_WRAPPER_EXTRA_LIBS" = ""; then :
+ if test "$allocator_bucket_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -108195,7 +108451,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_none_LIBS; do
+ for arg in $allocator_bucket_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -108276,7 +108532,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_none_WRAPPER_EXTRA_LIBS; do
+ for arg in $allocator_bucket_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -108324,8 +108580,8 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$backtrace_none_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=1
+ if test "$allocator_bucket_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=0
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -108367,7 +108623,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $backtrace_none_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $allocator_bucket_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -108410,106 +108666,696 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring backtrace_none_WRAPPER_EXTRA_CPPFLAGS ($backtrace_none_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring backtrace_none_WRAPPER_EXTRA_CPPFLAGS ($backtrace_none_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring allocator_bucket_WRAPPER_EXTRA_CPPFLAGS ($allocator_bucket_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring allocator_bucket_WRAPPER_EXTRA_CPPFLAGS ($allocator_bucket_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
-else
+ else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:none can compile" >&5
-$as_echo_n "checking if MCA component backtrace:none can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:bucket can compile" >&5
+$as_echo_n "checking if MCA component allocator:bucket can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_backtrace" = "none" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"none\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"none\" failed to configure properly" >&2;}
+ if test "$with_allocator" = "bucket" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"bucket\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"bucket\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- if test ! -z "$DIRECT_backtrace" ; then
- if test "$DIRECT_backtrace" = "none" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"none\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"none\" failed to configure properly" >&2;}
+ if test ! -z "$DIRECT_allocator" ; then
+ if test "$DIRECT_allocator" = "bucket" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"bucket\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"bucket\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
fi
- # add component to all component list
- all_components="$all_components none"
-fi
-
-
+ # add component to all component list
+ all_components="$all_components bucket"
+ fi
# set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_backtrace_none_DSO=1
+ if test "$compile_mode" = "dso" ; then
+ BUILD_opal_allocator_bucket_DSO=1
+ else
+ BUILD_opal_allocator_bucket_DSO=0
+ fi
+ if test "$BUILD_opal_allocator_bucket_DSO" = "1"; then
+ MCA_BUILD_opal_allocator_bucket_DSO_TRUE=
+ MCA_BUILD_opal_allocator_bucket_DSO_FALSE='#'
else
- BUILD_opal_backtrace_none_DSO=0
+ MCA_BUILD_opal_allocator_bucket_DSO_TRUE='#'
+ MCA_BUILD_opal_allocator_bucket_DSO_FALSE=
fi
- if test "$BUILD_opal_backtrace_none_DSO" = "1"; then
- MCA_BUILD_opal_backtrace_none_DSO_TRUE=
- MCA_BUILD_opal_backtrace_none_DSO_FALSE='#'
+
+
+ ac_config_files="$ac_config_files opal/mca/allocator/bucket/Makefile"
+
+
+ unset compile_mode
+
+
+ # configure components that use built-in configuration scripts
+
+
+
+ best_mca_component_priority=0
+ components_looking_for_succeed=1
+ components_last_result=0
+
+
+ # configure components that provide their own configure script.
+ # It would be really hard to run these for "find first that
+ # works", so we don't :)
+
+
+
+ if test "1" != "0"; then :
+
+ for component_path in $srcdir/opal/mca/allocator/* ; do
+ component="`basename $component_path`"
+ if test -d $component_path && test -x $component_path/configure ; then
+ opal_show_subsubsubtitle "MCA component allocator:$component (need to configure)"
+
+ opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: before, should_build="
+
+
+
+ component_path="$srcdir/opal/mca/allocator/$component"
+ want_component=0
+
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
+ fi
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_allocator" ; then
+ if test "$DIRECT_allocator" = "$component" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
+ fi
+ fi
+
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_allocator" = "1"; then :
+ want_component=0
+fi
+ str="DISABLED_COMPONENT_CHECK=\$DISABLE_allocator_$component"
+ eval $str
+ if test "$DISABLED_COMPONENT_CHECK" = "1" ; then
+ want_component=0
+ fi
+
+ if test "$want_component" = "1"; then :
+ should_build=1
else
- MCA_BUILD_opal_backtrace_none_DSO_TRUE='#'
- MCA_BUILD_opal_backtrace_none_DSO_FALSE=
+ should_build=0
fi
- if test "$should_build" = "1"; then :
- components_last_result=1
+ SHARED_FRAMEWORK="$DSO_allocator"
+ str="SHARED_COMPONENT=\$DSO_allocator_$component"
+ eval $str
+
+ STATIC_FRAMEWORK="$STATIC_allocator"
+ str="STATIC_COMPONENT=\$STATIC_allocator_$component"
+ eval $str
+
+ shared_mode_override=static
+
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component allocator:$component compile mode" >&5
+$as_echo_n "checking for MCA component allocator:$component compile mode... " >&6; }
+ if test "$DIRECT_allocator" = "$component" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
+
+ opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: after, should_build=$should_build"
+
+ if test "$should_build" = "1" ; then
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in subdir_parent sub_configure subdir_dir subdir_srcdir subdir_cache_file subdir_args subdir_dots total_dir dir_part temp; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"subdir_parent sub_configure subdir_dir subdir_srcdir subdir_cache_file subdir_args subdir_dots total_dir dir_part temp\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+#
+# Invoke configure in a specific subdirectory.
+#
+# opal/mca/allocator/$component is the directory to invoke in
+# $opal_subdir_args is the list of arguments to pass
+# should_build=1 is actions to execute upon success
+# should_build=0 is actions to execute upon failure
+#
+subdir_dir="opal/mca/allocator/$component"
+subdir_args="$opal_subdir_args"
+subdir_success="should_build=1"
+subdir_failure="should_build=0"
+
+#
+# Sanity checks
+#
+
+if test "$subdir_dir" != ":" && test -d $srcdir/$subdir_dir; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: OPAL configuring in $subdir_dir" >&5
+$as_echo "$as_me: OPAL configuring in $subdir_dir" >&6;}
+
+ #
+ # Gotta check where srcdir is for VPATH builds. If srcdir is not
+ # ., then we need to mkdir the subdir. Otherwise, we can just cd
+ # into it.
+ #
+
+ case $srcdir in
+ .)
+ ;;
+ *)
+ { case $subdir_dir in
+ [\\/]* | ?:[\\/]* ) total_dir=;;
+ *) total_dir=.;;
+ esac
+ temp=$subdir_dir
+ for dir_part in `IFS='/\\'; set X $temp; shift; echo "$@"`; do
+ case $dir_part in
+ # Skip DOS drivespec
+ ?:) total_dir=$dir_part ;;
+ *) total_dir=$total_dir/$dir_part
+ test -d "$total_dir" ||
+ mkdir "$total_dir" ||
+ as_fn_error $? "cannot create $subdir_dir" "$LINENO" 5
+ ;;
+ esac
+ done; }
+
+ if test -d ./$subdir_dir; then :;
+ else
+ as_fn_error $? "cannot create \`pwd\`/$subdir_dir" "$LINENO" 5
+ fi
+ ;;
+ esac
+
+ #
+ # Move into the target directory
+ #
+
+ subdir_parent=`pwd`
+ cd $subdir_dir
+
+ #
+ # Make a "../" for each directory in $subdir_dir.
+ #
+
+ subdir_dots=`echo $subdir_dir | sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
+ #
+ # Construct the --srcdir argument
+ #
+
+ case $srcdir in
+ .)
+ # In place
+ subdir_srcdir="$srcdir"
+ ;;
+ [\\/]* | ?:[\\/]* )
+ # Absolute path
+ subdir_srcdir="$srcdir/$subdir_dir"
+ ;;
+ *)
+ # Relative path
+ subdir_srcdir="$subdir_dots$srcdir/$subdir_dir"
+ ;;
+ esac
+
+ #
+ # Construct the --cache-file argument
+ #
+
+ # BWB - subdir caching is a pain since we change CFLAGS and all that.
+ # Just disable it for now
+ subdir_cache_file="/dev/null"
+
+ #
+ # Invoke the configure script in the subdirectory
+ #
+
+ sub_configure="$SHELL '$subdir_srcdir/configure'"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: running $sub_configure $subdir_args --cache-file=$subdir_cache_file --srcdir=$subdir_srcdir --disable-option-checking" >&5
+$as_echo "$as_me: running $sub_configure $subdir_args --cache-file=$subdir_cache_file --srcdir=$subdir_srcdir --disable-option-checking" >&6;}
+ eval "$sub_configure $subdir_args \
+ --cache-file=\"\$subdir_cache_file\" --srcdir=\"$subdir_srcdir\" --disable-option-checking"
+ if test "$?" = "0"; then
+ eval $subdir_success
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $sub_configure succeeded for $subdir_dir" >&5
+$as_echo "$as_me: $sub_configure succeeded for $subdir_dir" >&6;}
+ else
+ eval $subdir_failure
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $sub_configure *failed* for $subdir_dir" >&5
+$as_echo "$as_me: $sub_configure *failed* for $subdir_dir" >&6;}
+ fi
+
+ #
+ # Go back to the topdir
+ #
+
+ cd $subdir_parent
+fi
+
+#
+# Clean up
+#
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+ opal_show_verbose "OPAL_MCA_ALL_CONFIG_COMPONENTS: after subdir, should_build=$should_build"
+ fi
+
+ if test "$should_build" = "1" ; then
+ # do some extra work to pass flags back from the
+ # top-level configure, the way a configure.m4
+ # component would.
+ infile="$srcdir/opal/mca/allocator/all_components/post_configure.sh"
+ if test -f $infile; then
+
+ # First check for the ABORT tag
+ line="`$GREP ABORT= $infile | cut -d= -f2-`"
+ if test -n "$line" && test "$line" != "no"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component configure script told me to abort" >&5
+$as_echo "$as_me: WARNING: MCA component configure script told me to abort" >&2;}
+ as_fn_error $? "cannot continue" "$LINENO" 5
+ fi
+
+ line="`$GREP WRAPPER_EXTRA_LDFLAGS= $infile | cut -d= -f2-`"
+ eval "line=$line"
+ if test -n "$line"; then
+ allocator_all_components_WRAPPER_EXTRA_LDFLAGS="$line"
+ fi
+ line="`$GREP WRAPPER_EXTRA_LIBS= $infile | cut -d= -f2-`"
+ eval "line=$line"
+ if test -n "$line"; then
+ allocator_all_components_WRAPPER_EXTRA_LIBS="$line"
+ fi
+ fi
+
+
+
+
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/allocator/$component/post_configure.sh"
+
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components $component"
+
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components $component"
+ else
+ if test "allocator" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/allocator/$component/lib${OPAL_LIB_PREFIX}mca_allocator_$component.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/allocator/$component/libmca_allocator_$component.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_allocator_$component_component;" >> $outfile.extern
+ echo " &mca_allocator_$component_component, " >> $outfile.struct
+ static_components="$static_components $component"
+ fi
+
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:$component can compile" >&5
+$as_echo_n "checking if MCA component allocator:$component can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_allocator" = "$component" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_allocator_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** allocator component $component was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_allocator" = "$component" ; then
+as_fn_error $? "*** allocator component $component was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ str="line=\$allocator_$component_WRAPPER_EXTRA_LDFLAGS"
+ eval "$str"
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $line; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- components_last_result=0
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
fi
+ done
- unset compile_mode
- if test $components_last_result -eq 1; then :
- components_looking_for_succeed=0
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+str="line=\$allocator_$component_WRAPPER_EXTRA_LIBS"
+ eval "$str"
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $line; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # configure components that provide their own configure script.
- # It would be really hard to run these for "find first that
- # works", so we don't :)
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- MCA_opal_backtrace_ALL_COMPONENTS="$all_components"
- MCA_opal_backtrace_STATIC_COMPONENTS="$static_components"
- MCA_opal_backtrace_DSO_COMPONENTS="$dso_components"
- MCA_opal_backtrace_STATIC_LTLIBS="$static_ltlibs"
+ fi
+
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component allocator:$component can compile" >&5
+$as_echo_n "checking if MCA component allocator:$component can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_allocator" = "$component" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"$component\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"$component\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ if test ! -z "$DIRECT_allocator" ; then
+ if test "$DIRECT_allocator" = "$component" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"$component\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"$component\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ fi
- MCA_opal_backtrace_ALL_SUBDIRS=
+ fi
+ fi
+ done
+
+fi
+
+ MCA_opal_allocator_ALL_COMPONENTS="$all_components"
+ MCA_opal_allocator_STATIC_COMPONENTS="$static_components"
+ MCA_opal_allocator_DSO_COMPONENTS="$dso_components"
+ MCA_opal_allocator_STATIC_LTLIBS="$static_ltlibs"
+
+
+
+
+
+
+
+ MCA_opal_allocator_ALL_SUBDIRS=
for item in $all_components ; do
- MCA_opal_backtrace_ALL_SUBDIRS="$MCA_opal_backtrace_ALL_SUBDIRS mca/backtrace/$item"
+ MCA_opal_allocator_ALL_SUBDIRS="$MCA_opal_allocator_ALL_SUBDIRS mca/allocator/$item"
done
- MCA_opal_backtrace_STATIC_SUBDIRS=
+ MCA_opal_allocator_STATIC_SUBDIRS=
for item in $static_components ; do
- MCA_opal_backtrace_STATIC_SUBDIRS="$MCA_opal_backtrace_STATIC_SUBDIRS mca/backtrace/$item"
+ MCA_opal_allocator_STATIC_SUBDIRS="$MCA_opal_allocator_STATIC_SUBDIRS mca/allocator/$item"
done
- MCA_opal_backtrace_DSO_SUBDIRS=
+ MCA_opal_allocator_DSO_SUBDIRS=
for item in $dso_components ; do
- MCA_opal_backtrace_DSO_SUBDIRS="$MCA_opal_backtrace_DSO_SUBDIRS mca/backtrace/$item"
+ MCA_opal_allocator_DSO_SUBDIRS="$MCA_opal_allocator_DSO_SUBDIRS mca/allocator/$item"
done
@@ -108517,7 +109363,7 @@
# Create the final .h file that will be included in the type's
# top-level glue. This lists all the static components. We don't
# need to do this for "common".
- if test "backtrace" != "common"; then
+ if test "allocator" != "common"; then
cat > $outfile <&5
-$as_echo_n "checking for no configure components in framework btl... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: self" >&5
-$as_echo "self" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for m4 configure components in framework btl" >&5
-$as_echo_n "checking for m4 configure components in framework btl... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: openib, portals4, sm, smcuda, tcp, uct, ugni, usnic, vader" >&5
-$as_echo "openib, portals4, sm, smcuda, tcp, uct, ugni, usnic, vader" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for no configure components in framework backtrace" >&5
+$as_echo_n "checking for no configure components in framework backtrace... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5
+$as_echo "" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for m4 configure components in framework backtrace" >&5
+$as_echo_n "checking for m4 configure components in framework backtrace... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: execinfo, none, printstack" >&5
+$as_echo "execinfo, none, printstack" >&6; }
# If there are components in the no configure list, but we're
# doing one of the "special" selection logics, abort with a
@@ -108608,13 +109454,26 @@
# run the configure logic for the no-config components
- opal_show_subsubsubtitle "MCA component btl:self (no configuration)"
- opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: before, should_build=1"
+ # configure components that use built-in configuration scripts
- component_path="$srcdir/opal/mca/btl/self"
+
+
+
+ best_mca_component_priority=0
+ components_looking_for_succeed=1
+ components_last_result=0
+
+
+ opal_show_subsubsubtitle "MCA component backtrace:execinfo (m4 configuration macro, priority 30)"
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+
+
+
+ component_path="$srcdir/opal/mca/backtrace/execinfo"
want_component=0
# build if:
@@ -108646,8 +109505,8 @@
fi
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "self" ; then
+ if test ! -z "$DIRECT_backtrace" ; then
+ if test "$DIRECT_backtrace" = "execinfo" ; then
want_component=1
else
want_component=0
@@ -108656,99 +109515,315 @@
fi
# if we were explicitly disabled, don't build :)
- if test "$DISABLE_btl" = "1"; then :
+ if test "$DISABLE_backtrace" = "1"; then :
want_component=0
fi
- if test "$DISABLE_btl_self" = "1"; then :
+ if test "$DISABLE_backtrace_execinfo" = "1"; then :
want_component=0
fi
if test "$want_component" = "1"; then :
- should_build=1
+ should_build=$components_looking_for_succeed
else
should_build=0
fi
+ # Allow the component to override the build mode if it really wants to.
+ # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_self"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component backtrace:execinfo compile mode" >&5
+$as_echo_n "checking for MCA component backtrace:execinfo compile mode... " >&6; }
+ compile_mode="static"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
- STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_self"
- shared_mode_override=static
+ # try to configure the component
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
+ ac_config_files="$ac_config_files opal/mca/backtrace/execinfo/Makefile"
+
+
+ for ac_header in execinfo.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "execinfo.h" "ac_cv_header_execinfo_h" "$ac_includes_default"
+if test "x$ac_cv_header_execinfo_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_EXECINFO_H 1
+_ACEOF
+
+fi
+
+done
+
+ # FreeBSD has backtrace in -lexecinfo, usually in libc
+
+
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:self compile mode" >&5
-$as_echo_n "checking for MCA component btl:self compile mode... " >&6; }
- if test "$DIRECT_btl" = "self" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in LIBS_save add; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"LIBS_save add\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+ LIBS_save=$LIBS
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing backtrace" >&5
+$as_echo_n "checking for library containing backtrace... " >&6; }
+if ${ac_cv_search_backtrace+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char backtrace ();
+int
+main ()
+{
+return backtrace ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' execinfo; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_backtrace=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_backtrace+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_backtrace+:} false; then :
+
+else
+ ac_cv_search_backtrace=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_backtrace" >&5
+$as_echo "$ac_cv_search_backtrace" >&6; }
+ac_res=$ac_cv_search_backtrace
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ # Found it! See if anything was added to LIBS
+ add=`printf '%s\n' "$LIBS" | sed -e "s/$LIBS_save$//"`
+ if test -n "$add"; then :
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
- opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: after, should_build=$should_build"
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $add; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${backtrace_execinfo_LIBS}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$backtrace_execinfo_LIBS"; then :
+ backtrace_execinfo_LIBS=$arg
+else
+ backtrace_execinfo_LIBS="$backtrace_execinfo_LIBS $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+fi
+ backtrace_execinfo_have_backtrace=1
+ backtrace_execinfo_happy="yes"
+else
+ backtrace_execinfo_have_backtrace=0
+ backtrace_execinfo_happy="no"
+fi
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_BACKTRACE_EXECINFO $backtrace_execinfo_have_backtrace
+_ACEOF
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
- if test "$should_build" = "1" ; then
+
+ if test "$backtrace_execinfo_happy" = "yes"; then :
+ should_build=$should_build
+else
+ should_build=0
+fi
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+
+ if test "$should_build" = "1"; then :
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/btl/self/post_configure.sh"
+ infile="$srcdir/opal/mca/backtrace/execinfo/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components self"
+ all_components="$all_components execinfo"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components self"
+ dso_components="$dso_components execinfo"
else
- if test "btl" = "common"; then
+ if test "backtrace" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/btl/self/lib${OPAL_LIB_PREFIX}mca_btl_self.la $static_ltlibs"
+ static_ltlibs="mca/backtrace/execinfo/lib${OPAL_LIB_PREFIX}mca_backtrace_execinfo.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/self/libmca_btl_self.la $static_ltlibs"
+ static_ltlibs="mca/backtrace/execinfo/libmca_backtrace_execinfo.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_btl_self_component;" >> $outfile.extern
- echo " &mca_btl_self_component, " >> $outfile.struct
- static_components="$static_components self"
+ echo "extern const mca_base_component_t mca_backtrace_execinfo_component;" >> $outfile.extern
+ echo " &mca_backtrace_execinfo_component, " >> $outfile.struct
+ static_components="$static_components execinfo"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:self can compile" >&5
-$as_echo_n "checking if MCA component btl:self can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:execinfo can compile" >&5
+$as_echo_n "checking if MCA component backtrace:execinfo can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_btl" = "self" ; then
+ if test "$DIRECT_backtrace" = "execinfo" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
+ str="MCA_opal_backtrace_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** btl component self was supposed to be direct-called, but
+as_fn_error $? "*** backtrace component execinfo was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -108756,8 +109831,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "self" ; then
-as_fn_error $? "*** btl component self was supposed to be direct-called, but
+ if test "$DIRECT_backtrace" = "execinfo" ; then
+as_fn_error $? "*** backtrace component execinfo was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -108772,7 +109847,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- if test "$btl_self_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$backtrace_execinfo_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -108812,7 +109887,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_self_LDFLAGS; do
+ for arg in $backtrace_execinfo_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -108893,7 +109968,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_self_WRAPPER_EXTRA_LDFLAGS; do
+ for arg in $backtrace_execinfo_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -108935,7 +110010,7 @@
fi
- if test "$btl_self_WRAPPER_EXTRA_LIBS" = ""; then :
+ if test "$backtrace_execinfo_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -108975,7 +110050,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_self_LIBS; do
+ for arg in $backtrace_execinfo_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -109056,7 +110131,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_self_WRAPPER_EXTRA_LIBS; do
+ for arg in $backtrace_execinfo_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -109104,8 +110179,8 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$btl_self_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
+ if test "$backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=1
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -109147,7 +110222,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_self_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -109190,79 +110265,80 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_self_WRAPPER_EXTRA_CPPFLAGS ($btl_self_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_self_WRAPPER_EXTRA_CPPFLAGS ($btl_self_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS ($backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS ($backtrace_execinfo_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
- else
+else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:self can compile" >&5
-$as_echo_n "checking if MCA component btl:self can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:execinfo can compile" >&5
+$as_echo_n "checking if MCA component backtrace:execinfo can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_btl" = "self" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"self\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"self\" failed to configure properly" >&2;}
+ if test "$with_backtrace" = "execinfo" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"execinfo\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"execinfo\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "self" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"self\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"self\" failed to configure properly" >&2;}
+ if test ! -z "$DIRECT_backtrace" ; then
+ if test "$DIRECT_backtrace" = "execinfo" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"execinfo\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"execinfo\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
fi
- # add component to all component list
- all_components="$all_components self"
- fi
+ # add component to all component list
+ all_components="$all_components execinfo"
+fi
+
+
# set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso" ; then
- BUILD_opal_btl_self_DSO=1
- else
- BUILD_opal_btl_self_DSO=0
- fi
- if test "$BUILD_opal_btl_self_DSO" = "1"; then
- MCA_BUILD_opal_btl_self_DSO_TRUE=
- MCA_BUILD_opal_btl_self_DSO_FALSE='#'
+ if test "$compile_mode" = "dso"; then :
+ BUILD_opal_backtrace_execinfo_DSO=1
else
- MCA_BUILD_opal_btl_self_DSO_TRUE='#'
- MCA_BUILD_opal_btl_self_DSO_FALSE=
+ BUILD_opal_backtrace_execinfo_DSO=0
+fi
+ if test "$BUILD_opal_backtrace_execinfo_DSO" = "1"; then
+ MCA_BUILD_opal_backtrace_execinfo_DSO_TRUE=
+ MCA_BUILD_opal_backtrace_execinfo_DSO_FALSE='#'
+else
+ MCA_BUILD_opal_backtrace_execinfo_DSO_TRUE='#'
+ MCA_BUILD_opal_backtrace_execinfo_DSO_FALSE=
fi
- ac_config_files="$ac_config_files opal/mca/btl/self/Makefile"
-
+ if test "$should_build" = "1"; then :
+ components_last_result=1
+else
+ components_last_result=0
+fi
unset compile_mode
+ if test $components_last_result -eq 1; then :
+ components_looking_for_succeed=0
+fi
- # configure components that use built-in configuration scripts
-
-
-
- best_mca_component_priority=0
- components_looking_for_succeed=1
- components_last_result=0
- opal_show_subsubsubtitle "MCA component btl:openib (m4 configuration macro)"
+ opal_show_subsubsubtitle "MCA component backtrace:printstack (m4 configuration macro, priority 30)"
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- component_path="$srcdir/opal/mca/btl/openib"
+ component_path="$srcdir/opal/mca/backtrace/printstack"
want_component=0
# build if:
@@ -109294,8 +110370,8 @@
fi
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "openib" ; then
+ if test ! -z "$DIRECT_backtrace" ; then
+ if test "$DIRECT_backtrace" = "printstack" ; then
want_component=1
else
want_component=0
@@ -109304,10 +110380,10 @@
fi
# if we were explicitly disabled, don't build :)
- if test "$DISABLE_btl" = "1"; then :
+ if test "$DISABLE_backtrace" = "1"; then :
want_component=0
fi
- if test "$DISABLE_btl_openib" = "1"; then :
+ if test "$DISABLE_backtrace_printstack" = "1"; then :
want_component=0
fi
@@ -109320,43 +110396,122 @@
# Allow the component to override the build mode if it really wants to.
# It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_openib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component backtrace:printstack compile mode" >&5
+$as_echo_n "checking for MCA component backtrace:printstack compile mode... " >&6; }
+ compile_mode="static"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
- STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_openib"
- shared_mode_override=static
+ # try to configure the component
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+ ac_config_files="$ac_config_files opal/mca/backtrace/printstack/Makefile"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:openib compile mode" >&5
-$as_echo_n "checking for MCA component btl:openib compile mode... " >&6; }
- if test "$DIRECT_btl" = "openib" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
+
+ for ac_header in ucontext.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucontext.h" "ac_cv_header_ucontext_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucontext_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_UCONTEXT_H 1
+_ACEOF
+
+fi
+
+done
+
+ # FreeBSD has backtrace in -lexecinfo, usually in libc
+ for ac_func in printstack
+do :
+ ac_fn_c_check_func "$LINENO" "printstack" "ac_cv_func_printstack"
+if test "x$ac_cv_func_printstack" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_PRINTSTACK 1
+_ACEOF
+ backtrace_printstack_happy="yes"
+else
+ backtrace_printstack_happy="no"
+fi
+done
+
+
+ if test "$backtrace_printstack_happy" = "yes"; then :
+ should_build=$should_build
+else
+ should_build=0
+fi
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+
+ if test "$should_build" = "1"; then :
+
+
+
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/backtrace/printstack/post_configure.sh"
+
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components printstack"
+
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components printstack"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
+ if test "backtrace" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/backtrace/printstack/lib${OPAL_LIB_PREFIX}mca_backtrace_printstack.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/backtrace/printstack/libmca_backtrace_printstack.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_backtrace_printstack_component;" >> $outfile.extern
+ echo " &mca_backtrace_printstack_component, " >> $outfile.struct
+ static_components="$static_components printstack"
fi
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:printstack can compile" >&5
+$as_echo_n "checking if MCA component backtrace:printstack can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
- # try to configure the component
-
- ac_config_files="$ac_config_files opal/mca/btl/openib/Makefile"
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_backtrace" = "printstack" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_backtrace_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** backtrace component printstack was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_backtrace" = "printstack" ; then
+as_fn_error $? "*** backtrace component printstack was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ if test "$backtrace_printstack_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -109369,7 +110524,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in cpcs btl_openib_LDFLAGS_save btl_openib_LIBS_save; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -109388,15 +110543,56 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"cpcs btl_openib_LDFLAGS_save btl_openib_LIBS_save\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
- cpcs="oob"
+ for arg in $backtrace_printstack_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
+else
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+else
@@ -109409,7 +110605,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in btl_openib_msg; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -109428,7 +110624,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"btl_openib_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -109436,99 +110632,49 @@
opal_scope_index=`expr $opal_scope_index + 1`
- # Setup the --with switches to allow users to specify where
- # verbs stuff lives.
-
-
- if test -z "$opal_check_openib_happy" ; then
- #
- # Add padding to OpenIB header
- #
- # Check whether --enable-openib-control-hdr-padding was given.
-if test "${enable_openib_control_hdr_padding+set}" = set; then :
- enableval=$enable_openib_control_hdr_padding;
+ for arg in $backtrace_printstack_WRAPPER_EXTRA_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if want to add padding to the openib BTL control header" >&5
-$as_echo_n "checking if want to add padding to the openib BTL control header... " >&6; }
- if test "$enable_openib_control_hdr_padding" = "yes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- ompi_openib_pad_hdr=1
- elif test "$enable_openib_control_hdr_padding" = "no"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- ompi_openib_pad_hdr=0
- else
- #
- # Enable padding for SPARC platforms by default because the
- # btl will segv otherwise. Keep padding disabled for other
- # platforms since there are some performance implications with
- # padding on for those platforms.
- #
- case "${host}" in
- sparc*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (enabled by default on SPARC)" >&5
-$as_echo "yes (enabled by default on SPARC)" >&6; }
- ompi_openib_pad_hdr=1
- ;;
- *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- ompi_openib_pad_hdr=0
- ;;
- esac
- fi
-
-cat >>confdefs.h <<_ACEOF
-#define OPAL_OPENIB_PAD_HDR $ompi_openib_pad_hdr
-_ACEOF
-
-
- if test "$opal_want_verbs" = "no"; then :
- opal_check_openib_happy="no"
-else
- opal_check_openib_happy="yes"
+ done
fi
-
- ompi_check_openib_btl_openib_save_CPPFLAGS="$CPPFLAGS"
- ompi_check_openib_btl_openib_save_LDFLAGS="$LDFLAGS"
- ompi_check_openib_btl_openib_save_LIBS="$LIBS"
-
- if test "$opal_check_openib_happy" = "yes"; then :
- for ac_header in fcntl.h sys/poll.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: fcntl.h sys/poll.h not found. Can not build component." >&5
-$as_echo "$as_me: WARNING: fcntl.h sys/poll.h not found. Can not build component." >&2;}
- opal_check_openib_happy="no"
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
-
-done
-
fi
+ done
- if test "$opal_check_openib_happy" = "yes"; then :
- opal_check_package_opal_check_openib_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_opal_check_openib_save_LDFLAGS="$LDFLAGS"
- opal_check_package_opal_check_openib_save_LIBS="$LIBS"
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- opal_check_package_opal_check_openib_orig_CPPFLAGS="$opal_check_openib_CPPFLAGS"
- opal_check_package_opal_check_openib_orig_LDFLAGS="$opal_check_openib_LDFLAGS"
- opal_check_package_opal_check_openib_orig_LIBS="$opal_check_openib_LIBS"
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+
+fi
+ if test "$backtrace_printstack_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -109541,7 +110687,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in dir_prefix; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -109560,7 +110706,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -109568,357 +110714,48 @@
opal_scope_index=`expr $opal_scope_index + 1`
- # so this sucks, but there's no way to get through the progression
- # of header includes without killing off the cache variable and trying
- # again...
- unset ac_cv_header_infiniband_verbs_h
-
- # get rid of the trailing slash(es)
- dir_prefix=$(echo $opal_verbs_dir | sed -e 'sX/*$XXg')
- opal_check_package_header_happy="no"
- if test "$dir_prefix" = "/usr" || \
- test "$dir_prefix" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
-$as_echo "looking for header without includes" >&6; }
- for ac_header in infiniband/verbs.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "infiniband/verbs.h" "ac_cv_header_infiniband_verbs_h" "$ac_includes_default"
-if test "x$ac_cv_header_infiniband_verbs_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_INFINIBAND_VERBS_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
-fi
-
-done
-
- if test "$opal_check_package_header_happy" = "no"; then :
- # no go on the as is - reset the cache and try again
- unset ac_cv_header_infiniband_verbs_h
-fi
-fi
-
- if test "$opal_check_package_header_happy" = "no"; then :
- if test "$dir_prefix" != ""; then :
- opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$dir_prefix/include"
- CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
-fi
- for ac_header in infiniband/verbs.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "infiniband/verbs.h" "ac_cv_header_infiniband_verbs_h" "$ac_includes_default"
-if test "x$ac_cv_header_infiniband_verbs_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_INFINIBAND_VERBS_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
-fi
-
-done
-
- if test "$opal_check_package_header_happy" = "yes"; then :
-
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
-
-
- # see comment above
- unset ac_cv_search_ibv_open_device
- opal_check_package_lib_happy="no"
- if test "$opal_verbs_libdir" != ""; then :
- # libdir was specified - search only there
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_verbs_libdir"
- LDFLAGS="$LDFLAGS -L$opal_verbs_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ibv_open_device ();
-int
-main ()
-{
-return ibv_open_device ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ibverbs; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ibv_open_device+:} false; then :
-
-else
- ac_cv_search_ibv_open_device=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
-
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
-fi
-else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$opal_verbs_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ibv_open_device ();
-int
-main ()
-{
-return ibv_open_device ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ibverbs; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ibv_open_device+:} false; then :
-
-else
- ac_cv_search_ibv_open_device=no
+ for arg in $backtrace_printstack_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ done
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- opal_check_package_lib_happy="no"
-fi
-
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
fi
fi
+ done
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
-$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ibv_open_device ();
-int
-main ()
-{
-return ibv_open_device ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ibverbs; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ibv_open_device+:} false; then :
-else
- ac_cv_search_ibv_open_device=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
-fi
-fi
-fi
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib64"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
-$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ibv_open_device ();
-int
-main ()
-{
-return ibv_open_device ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ibverbs; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ibv_open_device+:} false; then :
else
- ac_cv_search_ibv_open_device=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
-
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
-fi
-fi
-fi
-fi
-
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # libnl v1 and libnl3 are known to *not* coexist
- # harmoniously in the same process. Check to see if this
- # new package will introduce such a conflict.
@@ -109931,7 +110768,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_libnl_sane; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -109950,16 +110787,66 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
- opal_libnl_sane=1
- case $host in
- *linux*)
+
+ for arg in $backtrace_printstack_WRAPPER_EXTRA_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+fi
+
+ fi
+
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ if test "$backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=1
+ if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
+ if test "$with_devel_headers" = "yes"; then :
@@ -109972,7 +110859,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -109991,7 +110878,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -109999,276 +110886,320 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ for arg in $backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_cppflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_cppflags"; then :
+ mca_wrapper_extra_cppflags=$arg
+else
+ mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
+fi
+fi
+ done
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libibverbs requires libnl v1 or v3" >&5
-$as_echo_n "checking if libibverbs requires libnl v1 or v3... " >&6; }
- cat > conftest_c.$ac_ext << EOF
-extern void ibv_open_device (void);
-int main(int argc, char *argv[]) {
- ibv_open_device ();
- return 0;
-}
-EOF
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- this_requires_v1=0
- this_requires_v3=0
- result_msg=
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
-# 1 is the command
-# 2 is actions to do if success
-# 3 is actions to do if fail
-echo "configure:110026: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
-opal_status=$?
-# 1 is the message
-# 2 is whether to put a prefix or not
-if test -n "1"; then
- echo "configure:110033: \$? = $opal_status" >&5
-else
- echo \$? = $opal_status >&5
fi
-if test "$opal_status" = "0"; then
- unset opal_status
- ldd_output=`ldd conftest`
- if echo $ldd_output | grep -q libnl-3.so; then :
- this_requires_v3=1
- result_msg="v3"
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS ($backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS ($backtrace_printstack_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
- if echo $ldd_output | grep -q libnl.so; then :
- this_requires_v1=1
- result_msg="v1 $result_msg"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
-$as_echo "$result_msg" >&6; }
else
- unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ibverbs" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ibverbs" >&2;}
-fi
-
- # Assume that our configuration is sane; this may get reset below
- libnl_sane=1
-
- # Note: in all the checks below, only add this library to the list
- # of libraries (for v1 or v3 as relevant) if we do not fail.
- # I.e., assume that a higher level will refuse to use this library
- # if we return failure.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:printstack can compile" >&5
+$as_echo_n "checking if MCA component backtrace:printstack can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
- # Does this library require both v1 and v3? If so, fail.
- if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&2;}
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_backtrace" = "printstack" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"printstack\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"printstack\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ if test ! -z "$DIRECT_backtrace" ; then
+ if test "$DIRECT_backtrace" = "printstack" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"printstack\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"printstack\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ fi
- libnl_sane=0
+ # add component to all component list
+ all_components="$all_components printstack"
fi
- # Does this library require v1, but some prior library required
- # v3? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
- if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- libnl_sane=0
+ # set the AM_CONDITIONAL on how we should build
+ if test "$compile_mode" = "dso"; then :
+ BUILD_opal_backtrace_printstack_DSO=1
else
- opal_libnlv1_libs="$opal_libnlv1_libs ibverbs"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv1_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv1_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ BUILD_opal_backtrace_printstack_DSO=0
+fi
+ if test "$BUILD_opal_backtrace_printstack_DSO" = "1"; then
+ MCA_BUILD_opal_backtrace_printstack_DSO_TRUE=
+ MCA_BUILD_opal_backtrace_printstack_DSO_FALSE='#'
+else
+ MCA_BUILD_opal_backtrace_printstack_DSO_TRUE='#'
+ MCA_BUILD_opal_backtrace_printstack_DSO_FALSE=
+fi
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ if test "$should_build" = "1"; then :
+ components_last_result=1
+else
+ components_last_result=0
+fi
- # Check the ending condition
+ unset compile_mode
- opal_done="`expr $opal_i \>= $opal_count`"
+ if test $components_last_result -eq 1; then :
+ components_looking_for_succeed=0
+fi
- # Increment the counter
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
+ opal_show_subsubsubtitle "MCA component backtrace:none (m4 configuration macro, priority 0)"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
- fi
-done
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
-# Take all the items in the "array" and assemble them back into a
-# single variable
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ component_path="$srcdir/opal/mca/backtrace/none"
+ want_component=0
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
-
-# Done; do the assignment
-
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
-
-# Clean up
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
+ fi
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_backtrace" ; then
+ if test "$DIRECT_backtrace" = "none" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
+ fi
+ fi
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=1
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_backtrace" = "1"; then :
+ want_component=0
fi
-
+ if test "$DISABLE_backtrace_none" = "1"; then :
+ want_component=0
fi
- # Does this library require v3, but some prior library required
- # v1? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
- if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
-
- libnl_sane=0
+ if test "$want_component" = "1"; then :
+ should_build=$components_looking_for_succeed
else
- opal_libnlv3_libs="$opal_libnlv3_libs ibverbs"
+ should_build=0
+fi
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv3_libs
+ # Allow the component to override the build mode if it really wants to.
+ # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
-# Go through each item in the variable and only keep the unique ones
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component backtrace:none compile mode" >&5
+$as_echo_n "checking for MCA component backtrace:none compile mode... " >&6; }
+ compile_mode="static"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
-opal_count=0
-for val in ${opal_libnlv3_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
- # Loop over every token we've seen so far
+ # try to configure the component
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ ac_config_files="$ac_config_files opal/mca/backtrace/none/Makefile"
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
- # Check the ending condition
+ if test "$should_build" = "1"; then :
- opal_done="`expr $opal_i \>= $opal_count`"
- # Increment the counter
- opal_i="`expr $opal_i + 1`"
- done
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/backtrace/none/post_configure.sh"
- # If we didn't find the token, add it to the "array"
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components none"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components none"
else
- opal_i="`expr $opal_i - 1`"
+ if test "backtrace" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/backtrace/none/lib${OPAL_LIB_PREFIX}mca_backtrace_none.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/backtrace/none/libmca_backtrace_none.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_backtrace_none_component;" >> $outfile.extern
+ echo " &mca_backtrace_none_component, " >> $outfile.struct
+ static_components="$static_components none"
fi
-done
-# Take all the items in the "array" and assemble them back into a
-# single variable
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:none can compile" >&5
+$as_echo_n "checking if MCA component backtrace:none can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_backtrace" = "none" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_backtrace_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** backtrace component none was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_backtrace" = "none" ; then
+as_fn_error $? "*** backtrace component none was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ if test "$backtrace_none_WRAPPER_EXTRA_LDFLAGS" = ""; then :
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
-# Done; do the assignment
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
-# Clean up
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=3
-fi
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-fi
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
- rm -f conftest conftest_c.$ac_ext
- opal_libnl_sane=$libnl_sane
+ for arg in $backtrace_none_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
+else
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
# Unwind the index
@@ -110292,10 +111223,65 @@
done
- ;;
- esac
+else
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $backtrace_none_WRAPPER_EXTRA_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
+else
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
- opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -110318,332 +111304,89 @@
done
- if test $opal_check_package_libnl_check_ok -eq 0; then :
- opal_check_package_lib_happy=no
-fi
-
-fi
-
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ibv_open_device" != "no" &&
- test "$ac_cv_search_ibv_open_device" != "none required"; then :
- opal_check_openib_LIBS="$ac_cv_search_ibv_open_device "
-else
- opal_check_openib_LIBS=""
-fi
- opal_check_package_happy="yes"
-else
- opal_check_package_happy="no"
fi
+ if test "$backtrace_none_WRAPPER_EXTRA_LIBS" = ""; then :
-else
- opal_check_package_happy="no"
-fi
-else
-
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
- # see comment above
- unset ac_cv_search_ibv_open_device
- opal_check_package_lib_happy="no"
- if test "$opal_verbs_libdir" != ""; then :
- # libdir was specified - search only there
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_verbs_libdir"
- LDFLAGS="$LDFLAGS -L$opal_verbs_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ibv_open_device ();
-int
-main ()
-{
-return ibv_open_device ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ibverbs; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ibv_open_device+:} false; then :
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-else
- ac_cv_search_ibv_open_device=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
-fi
-else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$opal_verbs_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ibv_open_device ();
-int
-main ()
-{
-return ibv_open_device ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ibverbs; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ibv_open_device+:} false; then :
-else
- ac_cv_search_ibv_open_device=no
+ for arg in $backtrace_none_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ done
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- opal_check_package_lib_happy="no"
-fi
-
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
fi
fi
+ done
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
-$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ibv_open_device ();
-int
-main ()
-{
-return ibv_open_device ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ibverbs; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ibv_open_device+:} false; then :
-else
- ac_cv_search_ibv_open_device=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
-fi
-fi
-fi
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib64"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
-$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
-$as_echo_n "checking for library containing ibv_open_device... " >&6; }
-if ${ac_cv_search_ibv_open_device+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ibv_open_device ();
-int
-main ()
-{
-return ibv_open_device ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ibverbs; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ibv_open_device=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ibv_open_device+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ibv_open_device+:} false; then :
else
- ac_cv_search_ibv_open_device=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
-$as_echo "$ac_cv_search_ibv_open_device" >&6; }
-ac_res=$ac_cv_search_ibv_open_device
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
-
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- unset ac_cv_search_ibv_open_device
-fi
-fi
-fi
-fi
-
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # libnl v1 and libnl3 are known to *not* coexist
- # harmoniously in the same process. Check to see if this
- # new package will introduce such a conflict.
@@ -110656,7 +111399,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_libnl_sane; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -110675,16 +111418,66 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
- opal_libnl_sane=1
- case $host in
- *linux*)
+
+ for arg in $backtrace_none_WRAPPER_EXTRA_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+fi
+
+ fi
+
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ if test "$backtrace_none_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=1
+ if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
+ if test "$with_devel_headers" = "yes"; then :
@@ -110697,7 +111490,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -110716,7 +111509,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -110724,347 +111517,469 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ for arg in $backtrace_none_WRAPPER_EXTRA_CPPFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_cppflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_cppflags"; then :
+ mca_wrapper_extra_cppflags=$arg
+else
+ mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
+fi
+fi
+ done
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libibverbs requires libnl v1 or v3" >&5
-$as_echo_n "checking if libibverbs requires libnl v1 or v3... " >&6; }
- cat > conftest_c.$ac_ext << EOF
-extern void ibv_open_device (void);
-int main(int argc, char *argv[]) {
- ibv_open_device ();
- return 0;
-}
-EOF
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- this_requires_v1=0
- this_requires_v3=0
- result_msg=
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
-# 1 is the command
-# 2 is actions to do if success
-# 3 is actions to do if fail
-echo "configure:110751: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
-opal_status=$?
-# 1 is the message
-# 2 is whether to put a prefix or not
-if test -n "1"; then
- echo "configure:110758: \$? = $opal_status" >&5
-else
- echo \$? = $opal_status >&5
fi
-if test "$opal_status" = "0"; then
- unset opal_status
- ldd_output=`ldd conftest`
- if echo $ldd_output | grep -q libnl-3.so; then :
- this_requires_v3=1
- result_msg="v3"
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring backtrace_none_WRAPPER_EXTRA_CPPFLAGS ($backtrace_none_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring backtrace_none_WRAPPER_EXTRA_CPPFLAGS ($backtrace_none_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
- if echo $ldd_output | grep -q libnl.so; then :
- this_requires_v1=1
- result_msg="v1 $result_msg"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
-$as_echo "$result_msg" >&6; }
else
- unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ibverbs" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ibverbs" >&2;}
-
-fi
- # Assume that our configuration is sane; this may get reset below
- libnl_sane=1
-
- # Note: in all the checks below, only add this library to the list
- # of libraries (for v1 or v3 as relevant) if we do not fail.
- # I.e., assume that a higher level will refuse to use this library
- # if we return failure.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component backtrace:none can compile" >&5
+$as_echo_n "checking if MCA component backtrace:none can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
- # Does this library require both v1 and v3? If so, fail.
- if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&2;}
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_backtrace" = "none" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"none\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"none\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ if test ! -z "$DIRECT_backtrace" ; then
+ if test "$DIRECT_backtrace" = "none" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"none\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"none\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ fi
- libnl_sane=0
+ # add component to all component list
+ all_components="$all_components none"
fi
- # Does this library require v1, but some prior library required
- # v3? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
- if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- libnl_sane=0
+ # set the AM_CONDITIONAL on how we should build
+ if test "$compile_mode" = "dso"; then :
+ BUILD_opal_backtrace_none_DSO=1
else
- opal_libnlv1_libs="$opal_libnlv1_libs ibverbs"
+ BUILD_opal_backtrace_none_DSO=0
+fi
+ if test "$BUILD_opal_backtrace_none_DSO" = "1"; then
+ MCA_BUILD_opal_backtrace_none_DSO_TRUE=
+ MCA_BUILD_opal_backtrace_none_DSO_FALSE='#'
+else
+ MCA_BUILD_opal_backtrace_none_DSO_TRUE='#'
+ MCA_BUILD_opal_backtrace_none_DSO_FALSE=
+fi
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv1_libs
-# Go through each item in the variable and only keep the unique ones
+ if test "$should_build" = "1"; then :
+ components_last_result=1
+else
+ components_last_result=0
+fi
-opal_count=0
-for val in ${opal_libnlv1_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
+ unset compile_mode
- # Loop over every token we've seen so far
+ if test $components_last_result -eq 1; then :
+ components_looking_for_succeed=0
+fi
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ # configure components that provide their own configure script.
+ # It would be really hard to run these for "find first that
+ # works", so we don't :)
- # Check the ending condition
- opal_done="`expr $opal_i \>= $opal_count`"
+ MCA_opal_backtrace_ALL_COMPONENTS="$all_components"
+ MCA_opal_backtrace_STATIC_COMPONENTS="$static_components"
+ MCA_opal_backtrace_DSO_COMPONENTS="$dso_components"
+ MCA_opal_backtrace_STATIC_LTLIBS="$static_ltlibs"
- # Increment the counter
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
- fi
-done
-# Take all the items in the "array" and assemble them back into a
-# single variable
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ MCA_opal_backtrace_ALL_SUBDIRS=
+ for item in $all_components ; do
+ MCA_opal_backtrace_ALL_SUBDIRS="$MCA_opal_backtrace_ALL_SUBDIRS mca/backtrace/$item"
+ done
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
-# Done; do the assignment
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ MCA_opal_backtrace_STATIC_SUBDIRS=
+ for item in $static_components ; do
+ MCA_opal_backtrace_STATIC_SUBDIRS="$MCA_opal_backtrace_STATIC_SUBDIRS mca/backtrace/$item"
+ done
-# Clean up
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=1
-fi
-fi
+ MCA_opal_backtrace_DSO_SUBDIRS=
+ for item in $dso_components ; do
+ MCA_opal_backtrace_DSO_SUBDIRS="$MCA_opal_backtrace_DSO_SUBDIRS mca/backtrace/$item"
+ done
- # Does this library require v3, but some prior library required
- # v1? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
- if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- libnl_sane=0
-else
- opal_libnlv3_libs="$opal_libnlv3_libs ibverbs"
+ # Create the final .h file that will be included in the type's
+ # top-level glue. This lists all the static components. We don't
+ # need to do this for "common".
+ if test "backtrace" != "common"; then
+ cat > $outfile < /dev/null 2>&1
+ if test "$?" != "0"; then
+ mv $outfile $outfile_real
+ else
+ rm -f $outfile
+ fi
+ fi
+ rm -f $outfile.struct $outfile.extern
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ unset all_components static_components dso_components outfile outfile_real
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
+ MCA_opal_FRAMEWORKS="$MCA_opal_FRAMEWORKS btl"
+ MCA_opal_FRAMEWORKS_SUBDIRS="$MCA_opal_FRAMEWORKS_SUBDIRS mca/btl"
+ MCA_opal_FRAMEWORK_COMPONENT_ALL_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_ALL_SUBDIRS \$(MCA_opal_btl_ALL_SUBDIRS)"
+ MCA_opal_FRAMEWORK_COMPONENT_DSO_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_DSO_SUBDIRS \$(MCA_opal_btl_DSO_SUBDIRS)"
+ MCA_opal_FRAMEWORK_COMPONENT_STATIC_SUBDIRS="$MCA_opal_FRAMEWORK_COMPONENT_STATIC_SUBDIRS \$(MCA_opal_btl_STATIC_SUBDIRS)"
+ MCA_opal_FRAMEWORK_LIBS="$MCA_opal_FRAMEWORK_LIBS mca/btl/libmca_btl.la"
+ MCA_opal_FRAMEWORK_LIBS="$MCA_opal_FRAMEWORK_LIBS \$(MCA_opal_btl_STATIC_LTLIBS)"
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ opal_show_subsubtitle "Configuring MCA framework btl"
- # Check the ending condition
- opal_done="`expr $opal_i \>= $opal_count`"
- # Increment the counter
- opal_i="`expr $opal_i + 1`"
- done
+ # setup for framework
+ all_components=
+ static_components=
+ dso_components=
+ static_ltlibs=
- # If we didn't find the token, add it to the "array"
+ # Ensure that the directory where the #include file is to live
+ # exists. Need to do this for VPATH builds, because the directory
+ # may not exist yet. For the "common" type, it's not really a
+ # component, so it doesn't have a base.
+ outdir=opal/mca/btl/base
+ as_dir=$outdir; as_fn_mkdir_p
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
- fi
-done
+ # emit Makefile rule
+ ac_config_files="$ac_config_files opal/mca/btl/Makefile"
-# Take all the items in the "array" and assemble them back into a
-# single variable
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
+ # remove any previously generated #include files
+ outfile_real=$outdir/static-components.h
+ outfile=$outfile_real.new
+ rm -f $outfile $outfile.struct $outfile.extern
+ touch $outfile.struct $outfile.extern
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # print some nice messages about what we're about to do...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for no configure components in framework btl" >&5
+$as_echo_n "checking for no configure components in framework btl... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: self" >&5
+$as_echo "self" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for m4 configure components in framework btl" >&5
+$as_echo_n "checking for m4 configure components in framework btl... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ofi, openib, portals4, sm, smcuda, tcp, uct, ugni, usnic, vader" >&5
+$as_echo "ofi, openib, portals4, sm, smcuda, tcp, uct, ugni, usnic, vader" >&6; }
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
+ # If there are components in the no configure list, but we're
+ # doing one of the "special" selection logics, abort with a
+ # reasonable message.
-# Done; do the assignment
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
-# Clean up
+ # run the configure logic for the no-config components
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=3
+ opal_show_subsubsubtitle "MCA component btl:self (no configuration)"
+
+ opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: before, should_build=1"
+
+
+
+ component_path="$srcdir/opal/mca/btl/self"
+ want_component=0
+
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
+ fi
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_btl" ; then
+ if test "$DIRECT_btl" = "self" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
+ fi
+ fi
+
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_btl" = "1"; then :
+ want_component=0
+fi
+ if test "$DISABLE_btl_self" = "1"; then :
+ want_component=0
fi
+ if test "$want_component" = "1"; then :
+ should_build=1
+else
+ should_build=0
fi
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
- rm -f conftest conftest_c.$ac_ext
+ SHARED_FRAMEWORK="$DSO_btl"
+ SHARED_COMPONENT="$DSO_btl_self"
- opal_libnl_sane=$libnl_sane
+ STATIC_FRAMEWORK="$STATIC_btl"
+ STATIC_COMPONENT="$STATIC_btl_self"
+ shared_mode_override=static
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:self compile mode" >&5
+$as_echo_n "checking for MCA component btl:self compile mode... " >&6; }
+ if test "$DIRECT_btl" = "self" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ opal_show_verbose "OPAL_MCA_NO_CONFIG_COMPONENT: after, should_build=$should_build"
+ if test "$should_build" = "1" ; then
- ;;
- esac
- opal_check_package_libnl_check_ok=$opal_libnl_sane
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/btl/self/post_configure.sh"
+
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components self"
+
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components self"
+ else
+ if test "btl" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/btl/self/lib${OPAL_LIB_PREFIX}mca_btl_self.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/btl/self/libmca_btl_self.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_btl_self_component;" >> $outfile.extern
+ echo " &mca_btl_self_component, " >> $outfile.struct
+ static_components="$static_components self"
fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:self can compile" >&5
+$as_echo_n "checking if MCA component btl:self can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_btl" = "self" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** btl component self was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_btl" = "self" ; then
+as_fn_error $? "*** btl component self was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ if test "$btl_self_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
done
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
- if test $opal_check_package_libnl_check_ok -eq 0; then :
- opal_check_package_lib_happy=no
-fi
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-fi
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ibv_open_device" != "no" &&
- test "$ac_cv_search_ibv_open_device" != "none required"; then :
- opal_check_openib_LIBS="$ac_cv_search_ibv_open_device "
-else
- opal_check_openib_LIBS=""
+ for arg in $btl_self_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
- opal_check_package_happy="yes"
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- opal_check_package_happy="no"
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
-
-
fi
- unset opal_check_package_header_happy
+ done
# Unwind the index
@@ -111088,463 +112003,261 @@
done
-
- if test "$opal_check_package_happy" = "yes"; then :
- opal_check_openib_happy="yes"
else
- opal_check_openib_CPPFLAGS="$opal_check_package_opal_check_openib_orig_CPPFLAGS"
- opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
- opal_check_openib_LIBS="$opal_check_package_opal_check_openib_orig_LIBS"
- opal_check_openib_happy="no"
-fi
-
- CPPFLAGS="$opal_check_package_opal_check_openib_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
- LIBS="$opal_check_package_opal_check_openib_save_LIBS"
-fi
- CPPFLAGS="$CPPFLAGS $opal_check_openib_CPPFLAGS"
- LDFLAGS="$LDFLAGS $opal_check_openib_LDFLAGS"
- LIBS="$LIBS $opal_check_openib_LIBS"
- if test "$opal_check_openib_happy" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking number of arguments to ibv_create_cq" >&5
-$as_echo_n "checking number of arguments to ibv_create_cq... " >&6; }
-if ${ompi_cv_func_ibv_create_cq_args+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include
-int
-main ()
-{
-ibv_create_cq(NULL, 0, NULL, NULL, 0);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ompi_cv_func_ibv_create_cq_args=5
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include
-int
-main ()
-{
-ibv_create_cq(NULL, 0, NULL);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ompi_cv_func_ibv_create_cq_args=3
-else
- ompi_cv_func_ibv_create_cq_args="unknown"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_cv_func_ibv_create_cq_args" >&5
-$as_echo "$ompi_cv_func_ibv_create_cq_args" >&6; }
- if test "$ompi_cv_func_ibv_create_cq_args" = "unknown"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Can not determine number of args to ibv_create_cq." >&5
-$as_echo "$as_me: WARNING: Can not determine number of args to ibv_create_cq." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Not building component." >&5
-$as_echo "$as_me: WARNING: Not building component." >&2;}
- opal_check_openib_happy="no"
-else
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
-cat >>confdefs.h <<_ACEOF
-#define OPAL_IBV_CREATE_CQ_ARGS $ompi_cv_func_ibv_create_cq_args
-_ACEOF
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
-fi
-fi
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
- #
- # OpenIB dynamic SL
- #
- # Check whether --enable-openib-dynamic-sl was given.
-if test "${enable_openib_dynamic_sl+set}" = set; then :
- enableval=$enable_openib_dynamic_sl;
-fi
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
- # Set these up so that we can do an AC_DEFINE below
- # (unconditionally)
- opal_check_openib_have_xrc=0
- opal_check_openib_have_xrc_domains=0
- opal_check_openib_have_opensm_devel=0
- # If we have the openib stuff available, find out what we've got
- if test "$opal_check_openib_happy" = "yes"; then :
- ac_fn_c_check_decl "$LINENO" "IBV_EVENT_CLIENT_REREGISTER" "ac_cv_have_decl_IBV_EVENT_CLIENT_REREGISTER" "#include
-"
-if test "x$ac_cv_have_decl_IBV_EVENT_CLIENT_REREGISTER" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+ for arg in $btl_self_WRAPPER_EXTRA_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_EVENT_CLIENT_REREGISTER $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "IBV_ACCESS_SO" "ac_cv_have_decl_IBV_ACCESS_SO" "#include
-"
-if test "x$ac_cv_have_decl_IBV_ACCESS_SO" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+ done
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_ACCESS_SO $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "IBV_ATOMIC_HCA" "ac_cv_have_decl_IBV_ATOMIC_HCA" "#include
-"
-if test "x$ac_cv_have_decl_IBV_ATOMIC_HCA" = xyes; then :
- ac_have_decl=1
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- ac_have_decl=0
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_ATOMIC_HCA $ac_have_decl
-_ACEOF
-
- for ac_func in ibv_get_device_list ibv_resize_cq
-do :
- as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
fi
-done
-
+ done
- # struct ibv_device.transport_type was added in OFED v1.2
- ac_fn_c_check_member "$LINENO" "struct ibv_device" "transport_type" "ac_cv_member_struct_ibv_device_transport_type" "#include
-"
-if test "x$ac_cv_member_struct_ibv_device_transport_type" = xyes; then :
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_IBV_DEVICE_TRANSPORT_TYPE 1
-_ACEOF
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
-fi
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- # We have to check functions both exits *and* are declared
- # since some distro ship broken ibverbs devel headers
- # IBV_DEVICE_XRC is common to all OFED versions
- # ibv_create_xrc_rcv_qp was added in OFED 1.3
- # ibv_cmd_open_xrcd (aka XRC Domains) was added in OFED 3.12
- if test "$enable_connectx_xrc" = "yes"; then
- ac_fn_c_check_decl "$LINENO" "IBV_DEVICE_XRC" "ac_cv_have_decl_IBV_DEVICE_XRC" "#include
-"
-if test "x$ac_cv_have_decl_IBV_DEVICE_XRC" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
fi
+ if test "$btl_self_WRAPPER_EXTRA_LIBS" = ""; then :
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_DEVICE_XRC $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
- opal_check_openib_have_xrc=1
- opal_check_openib_have_xrc_domains=1
-fi
- fi
- if test "$enable_connectx_xrc" = "yes" \
- && test $opal_check_openib_have_xrc -eq 1; then
- ac_fn_c_check_decl "$LINENO" "ibv_create_xrc_rcv_qp" "ac_cv_have_decl_ibv_create_xrc_rcv_qp" "#include
-"
-if test "x$ac_cv_have_decl_ibv_create_xrc_rcv_qp" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_CREATE_XRC_RCV_QP $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
- for ac_func in ibv_create_xrc_rcv_qp
-do :
- ac_fn_c_check_func "$LINENO" "ibv_create_xrc_rcv_qp" "ac_cv_func_ibv_create_xrc_rcv_qp"
-if test "x$ac_cv_func_ibv_create_xrc_rcv_qp" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_IBV_CREATE_XRC_RCV_QP 1
-_ACEOF
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
-else
- opal_check_openib_have_xrc=0
-fi
-done
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
-else
- opal_check_openib_have_xrc=0
-fi
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
- fi
- if test "$enable_connectx_xrc" = "yes" \
- && test $opal_check_openib_have_xrc_domains -eq 1; then
- ac_fn_c_check_decl "$LINENO" "ibv_cmd_open_xrcd" "ac_cv_have_decl_ibv_cmd_open_xrcd" "#include
-"
-if test "x$ac_cv_have_decl_ibv_cmd_open_xrcd" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_CMD_OPEN_XRCD $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
- ac_fn_c_check_decl "$LINENO" "IBV_SRQT_XRC" "ac_cv_have_decl_IBV_SRQT_XRC" "#include
-"
-if test "x$ac_cv_have_decl_IBV_SRQT_XRC" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_SRQT_XRC $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
- for ac_func in ibv_cmd_open_xrcd
-do :
- ac_fn_c_check_func "$LINENO" "ibv_cmd_open_xrcd" "ac_cv_func_ibv_cmd_open_xrcd"
-if test "x$ac_cv_func_ibv_cmd_open_xrcd" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_IBV_CMD_OPEN_XRCD 1
-_ACEOF
-else
- opal_check_openib_have_xrc_domains=0
+ for arg in $btl_self_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-done
-
-else
- opal_check_openib_have_xrc_domains=0
+ done
fi
-
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- opal_check_openib_have_xrc_domains=0
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
fi
+ done
- # XRC and XRC Domains should be considered as exclusive
- if test "$opal_check_openib_have_xrc" -eq 1 && \
- test "$opal_check_openib_have_xrc_domains" -eq 1; then
- opal_check_openib_have_xrc=0
- fi
- fi
- if test "no" != "$enable_openib_dynamic_sl"; then
- # We need ib_types.h file, which is installed with opensm-devel
- # package. However, ib_types.h has a bad include directive,
- # which will cause AC_CHECK_HEADER to fail.
- # So instead, we will look for another file that is also
- # installed as part of opensm-devel package and included in
- # ib_types.h, but it doesn't include any other IB-related files.
- ac_fn_c_check_header_mongrel "$LINENO" "infiniband/complib/cl_types_osd.h" "ac_cv_header_infiniband_complib_cl_types_osd_h" "$ac_includes_default"
-if test "x$ac_cv_header_infiniband_complib_cl_types_osd_h" = xyes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cl_map_init in -losmcomp" >&5
-$as_echo_n "checking for cl_map_init in -losmcomp... " >&6; }
-if ${ac_cv_lib_osmcomp_cl_map_init+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-losmcomp $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char cl_map_init ();
-int
-main ()
-{
-return cl_map_init ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_osmcomp_cl_map_init=yes
-else
- ac_cv_lib_osmcomp_cl_map_init=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_osmcomp_cl_map_init" >&5
-$as_echo "$ac_cv_lib_osmcomp_cl_map_init" >&6; }
-if test "x$ac_cv_lib_osmcomp_cl_map_init" = xyes; then :
- opal_check_openib_have_opensm_devel=1
-fi
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
-fi
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- # Abort if dynamic SL support was explicitly requested but opensm-devel
- # package wasn't found. Otherwise, OMPI will be built w/o dynamic SL.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if can use dynamic SL support" >&5
-$as_echo_n "checking if can use dynamic SL support... " >&6; }
- if test "$opal_check_openib_have_opensm_devel" = "1"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- if test "$enable_openib_dynamic_sl" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-openib-dynamic-sl was specified but the" >&5
-$as_echo "$as_me: WARNING: --enable-openib-dynamic-sl was specified but the" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: appropriate header/library files could not be found" >&5
-$as_echo "$as_me: WARNING: appropriate header/library files could not be found" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please install opensm-devel if you need dynamic SL support" >&5
-$as_echo "$as_me: WARNING: Please install opensm-devel if you need dynamic SL support" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-fi
-fi
- fi
- # Check support for RDMAoE devices
- btl_openib_have_rdmaoe=0
- ac_fn_c_check_decl "$LINENO" "IBV_LINK_LAYER_ETHERNET" "ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" "#include
-"
-if test "x$ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_LINK_LAYER_ETHERNET $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
- btl_openib_have_rdmaoe=1
-fi
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if RDMAoE support is enabled" >&5
-$as_echo_n "checking if RDMAoE support is enabled... " >&6; }
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_RDMAOE $btl_openib_have_rdmaoe
-_ACEOF
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
- if test "1" = "$btl_openib_have_rdmaoe"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+ for arg in $btl_self_WRAPPER_EXTRA_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
- # Check to see if works. It is known to
- # create problems on some platforms with some compilers (e.g.,
- # RHEL4U3 with the PGI 32 bit compiler). Use undocumented (in AC
- # 2.63) feature of AC_CHECK_HEADERS: if you explicitly pass in
- # AC_INCLUDES_DEFAULT as the 4th arg to AC_CHECK_HEADERS, the test
- # will fail if the header is present but not compilable, *but it
- # will not print the big scary warning*. See
- # http://lists.gnu.org/archive/html/autoconf/2008-10/msg00143.html.
- if test "$opal_check_openib_happy" = "yes"; then :
- for ac_header in infiniband/driver.h
-do :
- ac_fn_c_check_header_compile "$LINENO" "infiniband/driver.h" "ac_cv_header_infiniband_driver_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_infiniband_driver_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_INFINIBAND_DRIVER_H 1
-_ACEOF
-
+ done
fi
-
-done
-
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
fi
+fi
+ done
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ConnectX XRC support is enabled" >&5
-$as_echo_n "checking if ConnectX XRC support is enabled... " >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_CONNECTX_XRC $opal_check_openib_have_xrc
-_ACEOF
-
- if test "1" = "$opal_check_openib_have_xrc"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ConnectIB XRC support is enabled" >&5
-$as_echo_n "checking if ConnectIB XRC support is enabled... " >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_CONNECTX_XRC_DOMAINS $opal_check_openib_have_xrc_domains
-_ACEOF
- if test "1" = "$opal_check_openib_have_xrc_domains"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if dynamic SL is enabled" >&5
-$as_echo_n "checking if dynamic SL is enabled... " >&6; }
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
-cat >>confdefs.h <<_ACEOF
-#define OPAL_ENABLE_DYNAMIC_SL $opal_check_openib_have_opensm_devel
-_ACEOF
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- if test "1" = "$opal_check_openib_have_opensm_devel"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- btl_openib_LIBS="-losmcomp $btl_openib_LIBS"
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
- if test -z "$opal_verbs_dir"; then :
- openib_include_dir="/usr/include"
-else
- openib_include_dir="$opal_verbs_dir/include"
fi
- opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$openib_include_dir/infiniband"
- CPPFLAGS="$ompi_check_openib_btl_openib_save_CPPFLAGS"
- LDFLAGS="$ompi_check_openib_btl_openib_save_LDFLAGS"
- LIBS="$ompi_check_openib_btl_openib_save_LIBS"
+ fi
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ if test "$btl_self_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=0
+ if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
+ if test "$with_devel_headers" = "yes"; then :
@@ -111557,7 +112270,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -111576,7 +112289,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -111584,20 +112297,24 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="OpenFabrics Verbs: $opal_check_openib_happy"
- ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
-
- if test -z "$ompi_summary_section_current" ; then
- if test -z "$ompi_summary_sections" ; then
- ompi_summary_sections=$ompi_summary_section
- else
- ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
- fi
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
- else
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
- fi
+ for arg in $btl_self_WRAPPER_EXTRA_CPPFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_cppflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_cppflags"; then :
+ mca_wrapper_extra_cppflags=$arg
+else
+ mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
+fi
+fi
+ done
# Unwind the index
@@ -111621,200 +112338,172 @@
done
+fi
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_self_WRAPPER_EXTRA_CPPFLAGS ($btl_self_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring btl_self_WRAPPER_EXTRA_CPPFLAGS ($btl_self_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+fi
+fi
+ else
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:self can compile" >&5
+$as_echo_n "checking if MCA component btl:self can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_btl" = "self" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"self\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"self\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ if test ! -z "$DIRECT_btl" ; then
+ if test "$DIRECT_btl" = "self" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"self\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"self\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ fi
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ # add component to all component list
+ all_components="$all_components self"
+ fi
+ # set the AM_CONDITIONAL on how we should build
+ if test "$compile_mode" = "dso" ; then
+ BUILD_opal_btl_self_DSO=1
+ else
+ BUILD_opal_btl_self_DSO=0
fi
+ if test "$BUILD_opal_btl_self_DSO" = "1"; then
+ MCA_BUILD_opal_btl_self_DSO_TRUE=
+ MCA_BUILD_opal_btl_self_DSO_FALSE='#'
+else
+ MCA_BUILD_opal_btl_self_DSO_TRUE='#'
+ MCA_BUILD_opal_btl_self_DSO_FALSE=
+fi
- btl_openib_have_xrc=$opal_check_openib_have_xrc
- btl_openib_have_xrc_domains=$opal_check_openib_have_xrc_domains
- btl_openib_have_opensm_devel=$opal_check_openib_have_opensm_devel
- if test "$opal_check_openib_happy" = "yes"; then :
- btl_openib_CPPFLAGS="$btl_openib_CPPFLAGS $opal_check_openib_CPPFLAGS"
- btl_openib_LDFLAGS="$btl_openib_LDFLAGS $opal_check_openib_LDFLAGS"
- btl_openib_LIBS="$btl_openib_LIBS $opal_check_openib_LIBS"
- btl_openib_happy="yes"
+ ac_config_files="$ac_config_files opal/mca/btl/self/Makefile"
- btl_openib_have_udcm=0
- btl_openib_have_rdmacm=0
+ unset compile_mode
- ompi_check_openib_btl_openib_save_CPPFLAGS="$CPPFLAGS"
- ompi_check_openib_btl_openib_save_LDFLAGS="$LDFLAGS"
- ompi_check_openib_btl_openib_save_LIBS="$LIBS"
- # add back in all the InfiniBand flags so that these tests might work...
- CPPFLAGS="$CPPFLAGS $btl_openib_CPPFLAGS"
- LDFLAGS="$LDFLAGS $btl_openib_LDFLAGS"
- LIBS="$LIBS $btl_openib_LIBS"
+ # configure components that use built-in configuration scripts
- if test "$opal_check_openib_happy" = "yes"; then :
- # Do we have a recent enough RDMA CM? Need to have the
- # rdma_get_peer_addr (inline) function (originally appeared
- # in OFED v1.3).
- if test "$enable_openib_rdmacm" != "no"; then
- for ac_header in rdma/rdma_cma.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "rdma/rdma_cma.h" "ac_cv_header_rdma_rdma_cma_h" "$ac_includes_default"
-if test "x$ac_cv_header_rdma_rdma_cma_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_RDMA_RDMA_CMA_H 1
-_ACEOF
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for rdma_create_id in -lrdmacm" >&5
-$as_echo_n "checking for rdma_create_id in -lrdmacm... " >&6; }
-if ${ac_cv_lib_rdmacm_rdma_create_id+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lrdmacm $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char rdma_create_id ();
-int
-main ()
-{
-return rdma_create_id ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_rdmacm_rdma_create_id=yes
-else
- ac_cv_lib_rdmacm_rdma_create_id=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rdmacm_rdma_create_id" >&5
-$as_echo "$ac_cv_lib_rdmacm_rdma_create_id" >&6; }
-if test "x$ac_cv_lib_rdmacm_rdma_create_id" = xyes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for rdma_get_peer_addr" >&5
-$as_echo_n "checking for rdma_get_peer_addr... " >&6; }
- btl_openib_msg=no
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include "rdma/rdma_cma.h"
-int
-main ()
-{
-void *ret = (void*) rdma_get_peer_addr((struct rdma_cm_id*)0);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- btl_openib_have_rdmacm=1
- btl_openib_msg=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $btl_openib_msg" >&5
-$as_echo "$btl_openib_msg" >&6; }
-fi
+ best_mca_component_priority=0
+ components_looking_for_succeed=1
+ components_last_result=0
-fi
-done
+ opal_show_subsubsubtitle "MCA component btl:ofi (m4 configuration macro)"
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- if test "1" = "$btl_openib_have_rdmacm"; then
- btl_openib_LIBS="-lrdmacm $btl_openib_LIBS"
- else
- if test "$enable_openib_rdmacm" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-openib-rdmacm was specified but the" >&5
-$as_echo "$as_me: WARNING: --enable-openib-rdmacm was specified but the" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: appropriate files could not be found" >&5
-$as_echo "$as_me: WARNING: appropriate files could not be found" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please install librdmacm and librdmacm-devel or disable rdmacm support" >&5
-$as_echo "$as_me: WARNING: Please install librdmacm and librdmacm-devel or disable rdmacm support" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-fi
- fi
- fi
- # is udcm enabled
- if test "$enable_openib_udcm" = "yes"; then
- btl_openib_have_udcm=1
- fi
-fi
+ component_path="$srcdir/opal/mca/btl/ofi"
+ want_component=0
- CPPFLAGS="$ompi_check_openib_btl_openib_save_CPPFLAGS"
- LDFLAGS="$ompi_check_openib_btl_openib_save_LDFLAGS"
- LIBS="$ompi_check_openib_btl_openib_save_LIBS"
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
+ fi
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_btl" ; then
+ if test "$DIRECT_btl" = "ofi" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
+ fi
+ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if UD CM is enabled" >&5
-$as_echo_n "checking if UD CM is enabled... " >&6; }
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_btl" = "1"; then :
+ want_component=0
+fi
+ if test "$DISABLE_btl_ofi" = "1"; then :
+ want_component=0
+fi
-cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_UDCM $btl_openib_have_udcm
-_ACEOF
+ if test "$want_component" = "1"; then :
+ should_build=$components_looking_for_succeed
+else
+ should_build=0
+fi
- if test "1" = "$btl_openib_have_udcm"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
+ # Allow the component to override the build mode if it really wants to.
+ # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OpenFabrics RDMACM support is enabled" >&5
-$as_echo_n "checking if OpenFabrics RDMACM support is enabled... " >&6; }
+ SHARED_FRAMEWORK="$DSO_btl"
+ SHARED_COMPONENT="$DSO_btl_ofi"
-cat >>confdefs.h <<_ACEOF
-#define OPAL_HAVE_RDMACM $btl_openib_have_rdmacm
-_ACEOF
+ STATIC_FRAMEWORK="$STATIC_btl"
+ STATIC_COMPONENT="$STATIC_btl_ofi"
- if test "1" = "$btl_openib_have_rdmacm"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ shared_mode_override=static
+
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ compile_mode="static"
fi
-else
- if test "$opal_want_verbs" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Verbs support requested (via --with-verbs) but not found." >&5
-$as_echo "$as_me: WARNING: Verbs support requested (via --with-verbs) but not found." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&5
-$as_echo "$as_me: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&2;}
- as_fn_error $? "Aborting." "$LINENO" 5
-fi
- btl_openib_happy="no"
-fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:ofi compile mode" >&5
+$as_echo_n "checking for MCA component btl:ofi compile mode... " >&6; }
+ if test "$DIRECT_btl" = "ofi" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
+ # try to configure the component
@@ -111827,7 +112516,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in have_struct_ibv_exp_send_wr; do
+ for opal_var in opal_btl_ofi_happy CPPFLAGS_save; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -111846,7 +112535,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"have_struct_ibv_exp_send_wr\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_btl_ofi_happy CPPFLAGS_save\""
eval $opal_str
unset opal_str
@@ -111854,342 +112543,134 @@
opal_scope_index=`expr $opal_scope_index + 1`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether expanded verbs are available" >&5
-$as_echo_n "checking whether expanded verbs are available... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include
-int
-main ()
-{
-struct ibv_exp_send_wr;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- have_struct_ibv_exp_send_wr=1
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- have_struct_ibv_exp_send_wr=0
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_config_files="$ac_config_files opal/mca/btl/ofi/Makefile"
-cat >>confdefs.h <<_ACEOF
-#define HAVE_EXP_VERBS $have_struct_ibv_exp_send_wr
-_ACEOF
+ # Check for OFI
- ac_fn_c_check_decl "$LINENO" "IBV_EXP_ATOMIC_HCA_REPLY_BE" "ac_cv_have_decl_IBV_EXP_ATOMIC_HCA_REPLY_BE" "#include
-"
-if test "x$ac_cv_have_decl_IBV_EXP_ATOMIC_HCA_REPLY_BE" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
+ # Check for OFI libfabric. Note that $opal_ofi_happy is used in
+ # other configure.m4's to know if OFI/libfabric configured
+ # successfully. We only need to run the back-end checks once, but
+ # at least emit a "checking..." statement each subsequent time
+ # this macro is invoked so that configure's stdout has
+ # sensible/logical output.
+ if test -z "$opal_ofi_happy"; then :
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_EXP_ATOMIC_HCA_REPLY_BE $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "IBV_EXP_QP_CREATE_ATOMIC_BE_REPLY" "ac_cv_have_decl_IBV_EXP_QP_CREATE_ATOMIC_BE_REPLY" "#include
-"
-if test "x$ac_cv_have_decl_IBV_EXP_QP_CREATE_ATOMIC_BE_REPLY" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
+ # Add --with options
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_EXP_QP_CREATE_ATOMIC_BE_REPLY $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ibv_exp_create_qp" "ac_cv_have_decl_ibv_exp_create_qp" "#include
-"
-if test "x$ac_cv_have_decl_ibv_exp_create_qp" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+# Check whether --with-libfabric was given.
+if test "${with_libfabric+set}" = set; then :
+ withval=$with_libfabric;
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_EXP_CREATE_QP $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ibv_exp_query_device" "ac_cv_have_decl_ibv_exp_query_device" "#include
-"
-if test "x$ac_cv_have_decl_ibv_exp_query_device" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_EXP_QUERY_DEVICE $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "IBV_EXP_QP_INIT_ATTR_ATOMICS_ARG" "ac_cv_have_decl_IBV_EXP_QP_INIT_ATTR_ATOMICS_ARG" "#include
-"
-if test "x$ac_cv_have_decl_IBV_EXP_QP_INIT_ATTR_ATOMICS_ARG" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
+# Check whether --with-libfabric-libdir was given.
+if test "${with_libfabric_libdir+set}" = set; then :
+ withval=$with_libfabric_libdir;
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_IBV_EXP_QP_INIT_ATTR_ATOMICS_ARG $ac_have_decl
-_ACEOF
-
- ac_fn_c_check_member "$LINENO" "struct ibv_exp_device_attr" "ext_atom" "ac_cv_member_struct_ibv_exp_device_attr_ext_atom" "#include
-"
-if test "x$ac_cv_member_struct_ibv_exp_device_attr_ext_atom" = xyes; then :
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_IBV_EXP_DEVICE_ATTR_EXT_ATOM 1
-_ACEOF
+# Check whether --with-ofi was given.
+if test "${with_ofi+set}" = set; then :
+ withval=$with_ofi;
fi
-ac_fn_c_check_member "$LINENO" "struct ibv_exp_device_attr" "exp_atomic_cap" "ac_cv_member_struct_ibv_exp_device_attr_exp_atomic_cap" "#include
-"
-if test "x$ac_cv_member_struct_ibv_exp_device_attr_exp_atomic_cap" = xyes; then :
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_IBV_EXP_DEVICE_ATTR_EXP_ATOMIC_CAP 1
-_ACEOF
+# Check whether --with-ofi-libdir was given.
+if test "${with_ofi_libdir+set}" = set; then :
+ withval=$with_ofi_libdir;
fi
- if test '$have_struct_ibv_exp_send_wr' = 1; then :
- btl_openib
-fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ if test "$with_ofi" = ""; then
+ with_ofi=$with_libfabric
fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-
- if test "$btl_openib_happy" = "yes"; then :
- # With the new openib flags, look for ibv_fork_init
- btl_openib_LDFLAGS_save="$LDFLAGS"
- btl_openib_LIBS_save="$LIBS"
- LDFLAGS="$LDFLAGS $btl_openib_LDFLAGS"
- LIBS="$LIBS $btl_openib_LIBS"
- for ac_func in ibv_fork_init
-do :
- ac_fn_c_check_func "$LINENO" "ibv_fork_init" "ac_cv_func_ibv_fork_init"
-if test "x$ac_cv_func_ibv_fork_init" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_IBV_FORK_INIT 1
-_ACEOF
+ if test "$with_ofi_libdir" = ""; then
+ with_ofi_libdir=$with_libfabric_libdir
+ fi
-fi
-done
+ # Sanity check the --with values
- LDFLAGS="$btl_openib_LDFLAGS_save"
- LIBS="$btl_openib_LIBS_save"
- should_build=$should_build
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ofi value" >&5
+$as_echo_n "checking --with-ofi value... " >&6; }
+ if test "$with_ofi" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ofi)" >&5
+$as_echo "simple no (specified --without-ofi)" >&6; }
else
- should_build=0
-fi
-
- if test "$btl_openib_happy" = "yes"; then :
- if test "x$btl_openib_have_xrc" = "x1"; then
- cpcs="$cpcs xoob"
- fi
- if test "x$btl_openib_have_rdmacm" = "x1"; then
- cpcs="$cpcs rdmacm"
- if test "$enable_openib_rdmacm_ibaddr" = "yes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking IB addressing" >&5
-$as_echo_n "checking IB addressing... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include
- #ifdef AF_IB
- yes
- #endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then :
-
- for ac_header in rdma/rsocket.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "rdma/rsocket.h" "ac_cv_header_rdma_rsocket_h" "$ac_includes_default"
-if test "x$ac_cv_header_rdma_rsocket_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_RDMA_RSOCKET_H 1
-_ACEOF
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define BTL_OPENIB_RDMACM_IB_ADDR 1" >>confdefs.h
-
-
+ if test "$with_ofi" = "yes" || test "x$with_ofi" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
+$as_echo "simple ok (unspecified value)" >&6; }
else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define BTL_OPENIB_RDMACM_IB_ADDR 0" >>confdefs.h
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: There is no IB_AF addressing support by lib rdmacm." >&5
-$as_echo "$as_me: WARNING: There is no IB_AF addressing support by lib rdmacm." >&2;}
-
-
-fi
-
-done
-
+ if test ! -d "$with_ofi"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ofi not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_ofi not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define BTL_OPENIB_RDMACM_IB_ADDR 0" >>confdefs.h
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: There is no IB_AF addressing support by lib rdmacm." >&5
-$as_echo "$as_me: WARNING: There is no IB_AF addressing support by lib rdmacm." >&2;}
+ if test "x`ls $with_ofi/include/rdma/fabric.h 2> /dev/null`" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ofi/include/rdma/fabric.h not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_ofi/include/rdma/fabric.h not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ofi)" >&5
+$as_echo "sanity check ok ($with_ofi)" >&6; }
fi
-rm -f conftest*
-
- else
-$as_echo "#define BTL_OPENIB_RDMACM_IB_ADDR 0" >>confdefs.h
- fi
- fi
- if test "x$btl_openib_have_udcm" = "x1"; then
- cpcs="$cpcs udcm"
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking which openib btl cpcs will be built" >&5
-$as_echo_n "checking which openib btl cpcs will be built... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cpcs" >&5
-$as_echo "$cpcs" >&6; }
fi
- # make sure that CUDA-aware checks have been done
-
-
- # substitute in the things needed to build openib
-
-
-
-
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+fi
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+fi
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
- if test "$should_build" = "1"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ofi-libdir value" >&5
+$as_echo_n "checking --with-ofi-libdir value... " >&6; }
+ if test "$with_ofi_libdir" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ofi-libdir)" >&5
+$as_echo "simple no (specified --without-ofi-libdir)" >&6; }
+else
+ if test "$with_ofi_libdir" = "yes" || test "x$with_ofi_libdir" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
+$as_echo "simple ok (unspecified value)" >&6; }
+else
+ if test ! -d "$with_ofi_libdir"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ofi_libdir not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_ofi_libdir not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ if test "x`ls $with_ofi_libdir/libfabric.* 2> /dev/null`" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ofi_libdir/libfabric.* not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_ofi_libdir/libfabric.* not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ofi_libdir)" >&5
+$as_echo "sanity check ok ($with_ofi_libdir)" >&6; }
+fi
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/btl/openib/post_configure.sh"
+fi
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components openib"
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components openib"
- else
- if test "btl" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/btl/openib/lib${OPAL_LIB_PREFIX}mca_btl_openib.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/openib/libmca_btl_openib.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_btl_openib_component;" >> $outfile.extern
- echo " &mca_btl_openib_component, " >> $outfile.struct
- static_components="$static_components openib"
- fi
+fi
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:openib can compile" >&5
-$as_echo_n "checking if MCA component btl:openib can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_btl" = "openib" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** btl component openib was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "openib" ; then
-as_fn_error $? "*** btl component openib was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+fi
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$btl_openib_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -112202,7 +112683,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_check_ofi_save_CPPFLAGS opal_check_ofi_save_LDFLAGS opal_check_ofi_save_LIBS opal_check_fi_info_pci; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -112221,56 +112702,55 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_check_ofi_save_CPPFLAGS opal_check_ofi_save_LDFLAGS opal_check_ofi_save_LIBS opal_check_fi_info_pci\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
+ opal_check_ofi_save_CPPFLAGS=$CPPFLAGS
+ opal_check_ofi_save_LDFLAGS=$LDFLAGS
+ opal_check_ofi_save_LIBS=$LIBS
+ opal_check_fi_info_pci=0
- for arg in $btl_openib_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
+ opal_ofi_happy=yes
+ if test "$with_ofi" = "no"; then :
+ opal_ofi_happy=no
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+
+ if test $opal_ofi_happy = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking looking for OFI libfabric in" >&5
+$as_echo_n "checking looking for OFI libfabric in... " >&6; }
+ if test "$with_ofi" != "yes"; then :
+ opal_ofi_dir=$with_ofi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ($opal_ofi_dir)" >&5
+$as_echo "($opal_ofi_dir)" >&6; }
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: (default search paths)" >&5
+$as_echo "(default search paths)" >&6; }
fi
+ if test ! -z "$with_ofi_libdir" && \
+ test "$with_ofi_libdir" != "yes"; then :
+ opal_ofi_libdir=$with_ofi_libdir
fi
- done
+fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ if test $opal_ofi_happy = yes; then :
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ opal_check_package_opal_ofi_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_opal_ofi_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_opal_ofi_save_LIBS="$LIBS"
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ opal_check_package_opal_ofi_orig_CPPFLAGS="$opal_ofi_CPPFLAGS"
+ opal_check_package_opal_ofi_orig_LDFLAGS="$opal_ofi_LDFLAGS"
+ opal_check_package_opal_ofi_orig_LIBS="$opal_ofi_LIBS"
-else
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
@@ -112283,7 +112763,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in dir_prefix; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -112302,7 +112782,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
eval $opal_str
unset opal_str
@@ -112310,49 +112790,357 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_openib_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+ # so this sucks, but there's no way to get through the progression
+ # of header includes without killing off the cache variable and trying
+ # again...
+ unset ac_cv_header_rdma_fabric_h
+
+ # get rid of the trailing slash(es)
+ dir_prefix=$(echo $opal_ofi_dir | sed -e 'sX/*$XXg')
+ opal_check_package_header_happy="no"
+ if test "$dir_prefix" = "/usr" || \
+ test "$dir_prefix" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
+$as_echo "looking for header without includes" >&6; }
+ for ac_header in rdma/fabric.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rdma/fabric.h" "ac_cv_header_rdma_fabric_h" "$ac_includes_default"
+if test "x$ac_cv_header_rdma_fabric_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RDMA_FABRIC_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
fi
- done
+
+done
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ # no go on the as is - reset the cache and try again
+ unset ac_cv_header_rdma_fabric_h
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+fi
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ if test "$dir_prefix" != ""; then :
+ opal_ofi_CPPFLAGS="$opal_ofi_CPPFLAGS -I$dir_prefix/include"
+ CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+fi
+ for ac_header in rdma/fabric.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rdma/fabric.h" "ac_cv_header_rdma_fabric_h" "$ac_includes_default"
+if test "x$ac_cv_header_rdma_fabric_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RDMA_FABRIC_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
+fi
+
+done
+
+ if test "$opal_check_package_header_happy" = "yes"; then :
+
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
+
+
+ # see comment above
+ unset ac_cv_search_fi_getinfo
+ opal_check_package_lib_happy="no"
+ if test "$opal_ofi_libdir" != ""; then :
+ # libdir was specified - search only there
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_ofi_libdir"
+ LDFLAGS="$LDFLAGS -L$opal_ofi_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fi_getinfo ();
+int
+main ()
+{
+return fi_getinfo ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' fabric; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fi_getinfo=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fi_getinfo+:} false; then :
+ break
fi
+done
+if ${ac_cv_search_fi_getinfo+:} false; then :
+
+else
+ ac_cv_search_fi_getinfo=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
fi
- done
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
+fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir="$opal_ofi_dir"
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fi_getinfo ();
+int
+main ()
+{
+return fi_getinfo ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' fabric; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fi_getinfo=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fi_getinfo+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_fi_getinfo+:} false; then :
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+else
+ ac_cv_search_fi_getinfo=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
+$as_echo "looking for library in lib" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fi_getinfo ();
+int
+main ()
+{
+return fi_getinfo ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' fabric; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fi_getinfo=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fi_getinfo+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_fi_getinfo+:} false; then :
+else
+ ac_cv_search_fi_getinfo=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
- if test "$btl_openib_WRAPPER_EXTRA_LIBS" = ""; then :
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib64"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
+$as_echo "looking for library in lib64" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char fi_getinfo ();
+int
+main ()
+{
+return fi_getinfo ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' fabric; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_fi_getinfo=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_fi_getinfo+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_fi_getinfo+:} false; then :
+
+else
+ ac_cv_search_fi_getinfo=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
+fi
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # libnl v1 and libnl3 are known to *not* coexist
+ # harmoniously in the same process. Check to see if this
+ # new package will introduce such a conflict.
@@ -112365,7 +113153,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_libnl_sane; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -112384,56 +113172,16 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
-
- for arg in $btl_openib_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-else
+ opal_libnl_sane=1
+ case $host in
+ *linux*)
@@ -112446,7 +113194,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -112465,7 +113213,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
eval $opal_str
unset opal_str
@@ -112473,546 +113221,349 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_openib_WRAPPER_EXTRA_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-fi
-
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$btl_openib_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libfabric requires libnl v1 or v3" >&5
+$as_echo_n "checking if libfabric requires libnl v1 or v3... " >&6; }
+ cat > conftest_c.$ac_ext << EOF
+extern void fi_getinfo (void);
+int main(int argc, char *argv[]) {
+ fi_getinfo ();
+ return 0;
+}
+EOF
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ this_requires_v1=0
+ this_requires_v3=0
+ result_msg=
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:113248: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS 1>&5 2>&1
+opal_status=$?
- for arg in $btl_openib_WRAPPER_EXTRA_CPPFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:113255: \$? = $opal_status" >&5
else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
+ echo \$? = $opal_status >&5
fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_openib_WRAPPER_EXTRA_CPPFLAGS ($btl_openib_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_openib_WRAPPER_EXTRA_CPPFLAGS ($btl_openib_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+if test "$opal_status" = "0"; then
+ unset opal_status
+ ldd_output=`ldd conftest`
+ if echo $ldd_output | grep -q libnl-3.so; then :
+ this_requires_v3=1
+ result_msg="v3"
fi
+ if echo $ldd_output | grep -q libnl.so; then :
+ this_requires_v1=1
+ result_msg="v1 $result_msg"
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
+$as_echo "$result_msg" >&6; }
else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib fabric" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib fabric" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:openib can compile" >&5
-$as_echo_n "checking if MCA component btl:openib can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_btl" = "openib" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"openib\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"openib\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "openib" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"openib\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"openib\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
-
- # add component to all component list
- all_components="$all_components openib"
fi
+ # Assume that our configuration is sane; this may get reset below
+ libnl_sane=1
- if test $should_build -eq 1 && test "x$btl_openib_have_xrc" = "x1"; then
- MCA_btl_openib_have_xrc_TRUE=
- MCA_btl_openib_have_xrc_FALSE='#'
-else
- MCA_btl_openib_have_xrc_TRUE='#'
- MCA_btl_openib_have_xrc_FALSE=
-fi
+ # Note: in all the checks below, only add this library to the list
+ # of libraries (for v1 or v3 as relevant) if we do not fail.
+ # I.e., assume that a higher level will refuse to use this library
+ # if we return failure.
- if test $should_build -eq 1 && test "x$btl_openib_have_rdmacm" = "x1"; then
- MCA_btl_openib_have_rdmacm_TRUE=
- MCA_btl_openib_have_rdmacm_FALSE='#'
-else
- MCA_btl_openib_have_rdmacm_TRUE='#'
- MCA_btl_openib_have_rdmacm_FALSE=
-fi
+ # Does this library require both v1 and v3? If so, fail.
+ if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&2;}
- if test $should_build -eq 1 && test "x$btl_openib_have_opensm_devel" = "x1"; then
- MCA_btl_openib_have_dynamic_sl_TRUE=
- MCA_btl_openib_have_dynamic_sl_FALSE='#'
-else
- MCA_btl_openib_have_dynamic_sl_TRUE='#'
- MCA_btl_openib_have_dynamic_sl_FALSE=
-fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
- if test $should_build -eq 1 && test "x$btl_openib_have_udcm" = "x1"; then
- MCA_btl_openib_have_udcm_TRUE=
- MCA_btl_openib_have_udcm_FALSE='#'
-else
- MCA_btl_openib_have_udcm_TRUE='#'
- MCA_btl_openib_have_udcm_FALSE=
+ libnl_sane=0
fi
+ # Does this library require v1, but some prior library required
+ # v3? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
+ if test $opal_libnl_version -eq 3; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_btl_openib_DSO=1
-else
- BUILD_opal_btl_openib_DSO=0
-fi
- if test "$BUILD_opal_btl_openib_DSO" = "1"; then
- MCA_BUILD_opal_btl_openib_DSO_TRUE=
- MCA_BUILD_opal_btl_openib_DSO_FALSE='#'
+ libnl_sane=0
else
- MCA_BUILD_opal_btl_openib_DSO_TRUE='#'
- MCA_BUILD_opal_btl_openib_DSO_FALSE=
-fi
+ opal_libnlv1_libs="$opal_libnlv1_libs fabric"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv1_libs
- if test "$should_build" = "1"; then :
- components_last_result=1
-else
- components_last_result=0
-fi
+# Go through each item in the variable and only keep the unique ones
- unset compile_mode
+opal_count=0
+for val in ${opal_libnlv1_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
+ # Loop over every token we've seen so far
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- opal_show_subsubsubtitle "MCA component btl:portals4 (m4 configuration macro)"
+ # Check the ending condition
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+ opal_done="`expr $opal_i \>= $opal_count`"
+ # Increment the counter
+ opal_i="`expr $opal_i + 1`"
+ done
- component_path="$srcdir/opal/mca/btl/portals4"
- want_component=0
+ # If we didn't find the token, add it to the "array"
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "portals4" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_btl" = "1"; then :
- want_component=0
-fi
- if test "$DISABLE_btl_portals4" = "1"; then :
- want_component=0
-fi
+# Take all the items in the "array" and assemble them back into a
+# single variable
- if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
-else
- should_build=0
-fi
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
- SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_portals4"
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
- STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_portals4"
+# Done; do the assignment
- shared_mode_override=static
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+# Clean up
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:portals4 compile mode" >&5
-$as_echo_n "checking for MCA component btl:portals4 compile mode... " >&6; }
- if test "$DIRECT_btl" = "portals4" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
- fi
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=1
+fi
+fi
- # try to configure the component
+ # Does this library require v3, but some prior library required
+ # v1? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
+ if test $opal_libnl_version -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&2;}
- ac_config_files="$ac_config_files opal/mca/btl/portals4/Makefile"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
+ libnl_sane=0
+else
+ opal_libnlv3_libs="$opal_libnlv3_libs fabric"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv3_libs
- if test -z "$ompi_check_portals4_happy" ; then
+# Go through each item in the variable and only keep the unique ones
-# Check whether --with-portals4 was given.
-if test "${with_portals4+set}" = set; then :
- withval=$with_portals4;
-fi
+opal_count=0
+for val in ${opal_libnlv3_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
+ # Loop over every token we've seen so far
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-portals4 value" >&5
-$as_echo_n "checking --with-portals4 value... " >&6; }
- if test "$with_portals4" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-portals4)" >&5
-$as_echo "simple no (specified --without-portals4)" >&6; }
-else
- if test "$with_portals4" = "yes" || test "x$with_portals4" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
-$as_echo "simple ok (unspecified value)" >&6; }
-else
- if test ! -d "$with_portals4"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_portals4 not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_portals4 not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- if test "x`ls $with_portals4/include/portals4.h 2> /dev/null`" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_portals4/include/portals4.h not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_portals4/include/portals4.h not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_portals4)" >&5
-$as_echo "sanity check ok ($with_portals4)" >&6; }
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
-fi
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
-fi
+ # Check the ending condition
+ opal_done="`expr $opal_i \>= $opal_count`"
-fi
+ # Increment the counter
+ opal_i="`expr $opal_i + 1`"
+ done
-fi
+ # If we didn't find the token, add it to the "array"
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
+ fi
+done
-# Check whether --with-portals4-libdir was given.
-if test "${with_portals4_libdir+set}" = set; then :
- withval=$with_portals4_libdir;
-fi
+# Take all the items in the "array" and assemble them back into a
+# single variable
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-portals4-libdir value" >&5
-$as_echo_n "checking --with-portals4-libdir value... " >&6; }
- if test "$with_portals4_libdir" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-portals4-libdir)" >&5
-$as_echo "simple no (specified --without-portals4-libdir)" >&6; }
-else
- if test "$with_portals4_libdir" = "yes" || test "x$with_portals4_libdir" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
-$as_echo "simple ok (unspecified value)" >&6; }
-else
- if test ! -d "$with_portals4_libdir"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_portals4_libdir not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_portals4_libdir not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- if test "x`ls $with_portals4_libdir/libportals.* 2> /dev/null`" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_portals4_libdir/libportals.* not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_portals4_libdir/libportals.* not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_portals4_libdir)" >&5
-$as_echo "sanity check ok ($with_portals4_libdir)" >&6; }
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
-fi
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
+# Done; do the assignment
-fi
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
+# Clean up
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=3
fi
-
fi
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ompi_check_portals4_btl_portals4_save_CPPFLAGS="$CPPFLAGS"
- ompi_check_portals4_btl_portals4_save_LDFLAGS="$LDFLAGS"
- ompi_check_portals4_btl_portals4_save_LIBS="$LIBS"
-
- if test "$with_portals4" != "no"; then :
- if test ! -z "$with_portals4" && test "$with_portals4" != "yes"; then :
- ompi_check_portals4_dir="$with_portals4"
-fi
- if test ! -z "$with_portals4_libdir" && test "$with_portals4_libdir" != "yes"; then :
- ompi_check_portals4_libdir="$with_portals4_libdir"
-fi
-
+ rm -f conftest conftest_c.$ac_ext
- opal_check_package_opal_check_portals4_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_opal_check_portals4_save_LDFLAGS="$LDFLAGS"
- opal_check_package_opal_check_portals4_save_LIBS="$LIBS"
+ opal_libnl_sane=$libnl_sane
- opal_check_package_opal_check_portals4_orig_CPPFLAGS="$opal_check_portals4_CPPFLAGS"
- opal_check_package_opal_check_portals4_orig_LDFLAGS="$opal_check_portals4_LDFLAGS"
- opal_check_package_opal_check_portals4_orig_LIBS="$opal_check_portals4_LIBS"
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+ ;;
+ esac
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in dir_prefix; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ opal_check_package_libnl_check_ok=$opal_libnl_sane
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- # so this sucks, but there's no way to get through the progression
- # of header includes without killing off the cache variable and trying
- # again...
- unset ac_cv_header_portals4_h
- # get rid of the trailing slash(es)
- dir_prefix=$(echo $ompi_check_portals4_dir | sed -e 'sX/*$XXg')
- opal_check_package_header_happy="no"
- if test "$dir_prefix" = "/usr" || \
- test "$dir_prefix" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
-$as_echo "looking for header without includes" >&6; }
- for ac_header in portals4.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "portals4.h" "ac_cv_header_portals4_h" "$ac_includes_default"
-if test "x$ac_cv_header_portals4_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_PORTALS4_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
+ if test $opal_check_package_libnl_check_ok -eq 0; then :
+ opal_check_package_lib_happy=no
fi
-done
-
- if test "$opal_check_package_header_happy" = "no"; then :
- # no go on the as is - reset the cache and try again
- unset ac_cv_header_portals4_h
-fi
fi
- if test "$opal_check_package_header_happy" = "no"; then :
- if test "$dir_prefix" != ""; then :
- opal_check_portals4_CPPFLAGS="$opal_check_portals4_CPPFLAGS -I$dir_prefix/include"
- CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
+ if test "$ac_cv_search_fi_getinfo" != "no" &&
+ test "$ac_cv_search_fi_getinfo" != "none required"; then :
+ opal_ofi_LIBS="$ac_cv_search_fi_getinfo "
+else
+ opal_ofi_LIBS=""
fi
- for ac_header in portals4.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "portals4.h" "ac_cv_header_portals4_h" "$ac_includes_default"
-if test "x$ac_cv_header_portals4_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_PORTALS4_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
+ opal_check_package_happy="yes"
+else
+ opal_check_package_happy="no"
fi
-done
- if test "$opal_check_package_header_happy" = "yes"; then :
+else
+ opal_check_package_happy="no"
+fi
+else
# This is stolen from autoconf to peek under the covers to get the
# cache variable for the library check. one should not copy this
@@ -113020,15 +113571,15 @@
# see comment above
- unset ac_cv_search_PtlLEAppend
+ unset ac_cv_search_fi_getinfo
opal_check_package_lib_happy="no"
- if test "$ompi_check_portals4_libdir" != ""; then :
+ if test "$opal_ofi_libdir" != ""; then :
# libdir was specified - search only there
- opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$ompi_check_portals4_libdir"
- LDFLAGS="$LDFLAGS -L$ompi_check_portals4_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
-$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_ofi_libdir"
+ LDFLAGS="$LDFLAGS -L$opal_ofi_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -113041,16 +113592,16 @@
#ifdef __cplusplus
extern "C"
#endif
-char PtlLEAppend ();
+char fi_getinfo ();
int
main ()
{
-return PtlLEAppend ();
+return fi_getinfo ();
;
return 0;
}
_ACEOF
-for ac_lib in '' portals; do
+for ac_lib in '' fabric; do
if test -z "$ac_lib"; then
ac_res="none required"
else
@@ -113058,25 +113609,25 @@
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_PtlLEAppend=$ac_res
+ ac_cv_search_fi_getinfo=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_PtlLEAppend+:} false; then :
+ if ${ac_cv_search_fi_getinfo+:} false; then :
break
fi
done
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
- ac_cv_search_PtlLEAppend=no
+ ac_cv_search_fi_getinfo=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
-$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
-ac_res=$ac_cv_search_PtlLEAppend
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -113085,22 +113636,22 @@
fi
if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- unset ac_cv_search_PtlLEAppend
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
else
# libdir was not specified - go through search path
- opal_check_package_libdir="$ompi_check_portals4_dir"
+ opal_check_package_libdir="$opal_ofi_dir"
if test "$opal_check_package_libdir" = "" || \
test "$opal_check_package_libdir" = "/usr" || \
test "$opal_check_package_libdir" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
-$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -113113,16 +113664,16 @@
#ifdef __cplusplus
extern "C"
#endif
-char PtlLEAppend ();
+char fi_getinfo ();
int
main ()
{
-return PtlLEAppend ();
+return fi_getinfo ();
;
return 0;
}
_ACEOF
-for ac_lib in '' portals; do
+for ac_lib in '' fabric; do
if test -z "$ac_lib"; then
ac_res="none required"
else
@@ -113130,25 +113681,25 @@
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_PtlLEAppend=$ac_res
+ ac_cv_search_fi_getinfo=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_PtlLEAppend+:} false; then :
+ if ${ac_cv_search_fi_getinfo+:} false; then :
break
fi
done
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
- ac_cv_search_PtlLEAppend=no
+ ac_cv_search_fi_getinfo=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
-$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
-ac_res=$ac_cv_search_PtlLEAppend
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -113158,21 +113709,21 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- unset ac_cv_search_PtlLEAppend
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$opal_check_package_libdir/lib"
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
-$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -113185,16 +113736,16 @@
#ifdef __cplusplus
extern "C"
#endif
-char PtlLEAppend ();
+char fi_getinfo ();
int
main ()
{
-return PtlLEAppend ();
+return fi_getinfo ();
;
return 0;
}
_ACEOF
-for ac_lib in '' portals; do
+for ac_lib in '' fabric; do
if test -z "$ac_lib"; then
ac_res="none required"
else
@@ -113202,25 +113753,25 @@
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_PtlLEAppend=$ac_res
+ ac_cv_search_fi_getinfo=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_PtlLEAppend+:} false; then :
+ if ${ac_cv_search_fi_getinfo+:} false; then :
break
fi
done
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
- ac_cv_search_PtlLEAppend=no
+ ac_cv_search_fi_getinfo=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
-$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
-ac_res=$ac_cv_search_PtlLEAppend
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -113230,22 +113781,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- unset ac_cv_search_PtlLEAppend
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$opal_check_package_libdir/lib64"
+ opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
-$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
+$as_echo_n "checking for library containing fi_getinfo... " >&6; }
+if ${ac_cv_search_fi_getinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -113258,16 +113809,16 @@
#ifdef __cplusplus
extern "C"
#endif
-char PtlLEAppend ();
+char fi_getinfo ();
int
main ()
{
-return PtlLEAppend ();
+return fi_getinfo ();
;
return 0;
}
_ACEOF
-for ac_lib in '' portals; do
+for ac_lib in '' fabric; do
if test -z "$ac_lib"; then
ac_res="none required"
else
@@ -113275,25 +113826,25 @@
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_PtlLEAppend=$ac_res
+ ac_cv_search_fi_getinfo=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_PtlLEAppend+:} false; then :
+ if ${ac_cv_search_fi_getinfo+:} false; then :
break
fi
done
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+if ${ac_cv_search_fi_getinfo+:} false; then :
else
- ac_cv_search_PtlLEAppend=no
+ ac_cv_search_fi_getinfo=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
-$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
-ac_res=$ac_cv_search_PtlLEAppend
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
+$as_echo "$ac_cv_search_fi_getinfo" >&6; }
+ac_res=$ac_cv_search_fi_getinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -113303,9 +113854,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- unset ac_cv_search_PtlLEAppend
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ unset ac_cv_search_fi_getinfo
fi
fi
fi
@@ -113402,12 +113953,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libportals requires libnl v1 or v3" >&5
-$as_echo_n "checking if libportals requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libfabric requires libnl v1 or v3" >&5
+$as_echo_n "checking if libfabric requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void PtlLEAppend (void);
+extern void fi_getinfo (void);
int main(int argc, char *argv[]) {
- PtlLEAppend ();
+ fi_getinfo ();
return 0;
}
EOF
@@ -113419,14 +113970,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:113422: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lportals $LIBS $opal_check_portals4_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lportals $LIBS $opal_check_portals4_LIBS 1>&5 2>&1
+echo "configure:113973: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:113429: \$? = $opal_status" >&5
+ echo "configure:113980: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -113446,8 +113997,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib portals" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib portals" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib fabric" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib fabric" >&2;}
fi
@@ -113461,15 +114012,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libportals links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libportals links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
libnl_sane=0
fi
@@ -113478,19 +114029,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas portals requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas portals requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs portals"
+ opal_libnlv1_libs="$opal_libnlv1_libs fabric"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -113569,19 +114120,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libportals requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libportals requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs portals"
+ opal_libnlv3_libs="$opal_libnlv3_libs fabric"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -113722,11 +114273,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_PtlLEAppend" != "no" &&
- test "$ac_cv_search_PtlLEAppend" != "none required"; then :
- opal_check_portals4_LIBS="$ac_cv_search_PtlLEAppend "
+ if test "$ac_cv_search_fi_getinfo" != "no" &&
+ test "$ac_cv_search_fi_getinfo" != "none required"; then :
+ opal_ofi_LIBS="$ac_cv_search_fi_getinfo "
else
- opal_check_portals4_LIBS=""
+ opal_ofi_LIBS=""
fi
opal_check_package_happy="yes"
else
@@ -113734,353 +114285,114 @@
fi
-else
- opal_check_package_happy="no"
fi
-else
+ unset opal_check_package_header_happy
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # see comment above
- unset ac_cv_search_PtlLEAppend
- opal_check_package_lib_happy="no"
- if test "$ompi_check_portals4_libdir" != ""; then :
- # libdir was specified - search only there
- opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$ompi_check_portals4_libdir"
- LDFLAGS="$LDFLAGS -L$ompi_check_portals4_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
-$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
-if ${ac_cv_search_PtlLEAppend+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char PtlLEAppend ();
-int
-main ()
-{
-return PtlLEAppend ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' portals; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_PtlLEAppend=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_PtlLEAppend+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+
+ if test "$opal_check_package_happy" = "yes"; then :
else
- ac_cv_search_PtlLEAppend=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
-$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
-ac_res=$ac_cv_search_PtlLEAppend
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
+ opal_ofi_CPPFLAGS="$opal_check_package_opal_ofi_orig_CPPFLAGS"
+ opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
+ opal_ofi_LIBS="$opal_check_package_opal_ofi_orig_LIBS"
+ opal_ofi_happy=no
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- unset ac_cv_search_PtlLEAppend
+ CPPFLAGS="$opal_check_package_opal_ofi_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
+ LIBS="$opal_check_package_opal_ofi_save_LIBS"
+
fi
-else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$ompi_check_portals4_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
-$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
-if ${ac_cv_search_PtlLEAppend+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char PtlLEAppend ();
-int
-main ()
-{
-return PtlLEAppend ();
- ;
- return 0;
-}
+ CPPFLAGS="$CPPFLAGS $opal_ofi_CPPFLAGS"
+
+ if test $opal_ofi_happy = yes; then :
+ for ac_header in rdma/fi_ext.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rdma/fi_ext.h" "ac_cv_header_rdma_fi_ext_h" "$ac_includes_default"
+if test "x$ac_cv_header_rdma_fi_ext_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RDMA_FI_EXT_H 1
_ACEOF
-for ac_lib in '' portals; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_PtlLEAppend=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_PtlLEAppend+:} false; then :
- break
+
fi
+
done
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+
+ ac_fn_c_check_member "$LINENO" "struct fi_info" "nic" "ac_cv_member_struct_fi_info_nic" "#include
+"
+if test "x$ac_cv_member_struct_fi_info_nic" = xyes; then :
+ opal_check_fi_info_pci=1
else
- ac_cv_search_PtlLEAppend=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
-$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
-ac_res=$ac_cv_search_PtlLEAppend
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
+ opal_check_fi_info_pci=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- unset ac_cv_search_PtlLEAppend
-fi
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$opal_check_package_libdir/lib"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
-$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
-$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
-if ${ac_cv_search_PtlLEAppend+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char PtlLEAppend ();
-int
-main ()
-{
-return PtlLEAppend ();
- ;
- return 0;
-}
+cat >>confdefs.h <<_ACEOF
+#define OPAL_OFI_PCI_DATA_AVAILABLE $opal_check_fi_info_pci
_ACEOF
-for ac_lib in '' portals; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_PtlLEAppend=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_PtlLEAppend+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_PtlLEAppend+:} false; then :
+
+ ac_fn_c_check_decl "$LINENO" "PMIX_PACKAGE_RANK" "ac_cv_have_decl_PMIX_PACKAGE_RANK" "#include
+"
+if test "x$ac_cv_have_decl_PMIX_PACKAGE_RANK" = xyes; then :
+ ac_have_decl=1
else
- ac_cv_search_PtlLEAppend=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
-$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
-ac_res=$ac_cv_search_PtlLEAppend
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
+ ac_have_decl=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- unset ac_cv_search_PtlLEAppend
-fi
-fi
-fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_PMIX_PACKAGE_RANK $ac_have_decl
+_ACEOF
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$opal_check_package_libdir/lib64"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
-$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
-$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
-if ${ac_cv_search_PtlLEAppend+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
+ ac_fn_c_check_type "$LINENO" "struct fi_ops_mem_monitor" "ac_cv_type_struct_fi_ops_mem_monitor" "#ifdef HAVE_RDMA_FI_EXT_H
+#include
#endif
-char PtlLEAppend ();
-int
-main ()
-{
-return PtlLEAppend ();
- ;
- return 0;
-}
+"
+if test "x$ac_cv_type_struct_fi_ops_mem_monitor" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_FI_OPS_MEM_MONITOR 1
_ACEOF
-for ac_lib in '' portals; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_PtlLEAppend=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_PtlLEAppend+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_PtlLEAppend+:} false; then :
-else
- ac_cv_search_PtlLEAppend=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
-$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
-ac_res=$ac_cv_search_PtlLEAppend
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- unset ac_cv_search_PtlLEAppend
-fi
fi
-fi
-fi
-
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # libnl v1 and libnl3 are known to *not* coexist
- # harmoniously in the same process. Check to see if this
- # new package will introduce such a conflict.
-
+fi
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+ CPPFLAGS=$opal_check_ofi_save_CPPFLAGS
+ LDFLAGS=$opal_check_ofi_save_LDFLAGS
+ LIBS=$opal_check_ofi_save_LIBS
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_libnl_sane; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
- eval $opal_str
- unset opal_str
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
- opal_libnl_sane=1
- case $host in
- *linux*)
@@ -114093,7 +114405,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -114112,7 +114424,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
eval $opal_str
unset opal_str
@@ -114120,276 +114432,20 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libportals requires libnl v1 or v3" >&5
-$as_echo_n "checking if libportals requires libnl v1 or v3... " >&6; }
- cat > conftest_c.$ac_ext << EOF
-extern void PtlLEAppend (void);
-int main(int argc, char *argv[]) {
- PtlLEAppend ();
- return 0;
-}
-EOF
-
- this_requires_v1=0
- this_requires_v3=0
- result_msg=
-
-# 1 is the command
-# 2 is actions to do if success
-# 3 is actions to do if fail
-echo "configure:114147: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lportals $LIBS $opal_check_portals4_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lportals $LIBS $opal_check_portals4_LIBS 1>&5 2>&1
-opal_status=$?
-
-# 1 is the message
-# 2 is whether to put a prefix or not
-if test -n "1"; then
- echo "configure:114154: \$? = $opal_status" >&5
-else
- echo \$? = $opal_status >&5
-fi
-if test "$opal_status" = "0"; then
- unset opal_status
- ldd_output=`ldd conftest`
- if echo $ldd_output | grep -q libnl-3.so; then :
- this_requires_v3=1
- result_msg="v3"
-fi
- if echo $ldd_output | grep -q libnl.so; then :
- this_requires_v1=1
- result_msg="v1 $result_msg"
-fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
-$as_echo "$result_msg" >&6; }
-
-else
- unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib portals" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib portals" >&2;}
-
-fi
-
- # Assume that our configuration is sane; this may get reset below
- libnl_sane=1
-
- # Note: in all the checks below, only add this library to the list
- # of libraries (for v1 or v3 as relevant) if we do not fail.
- # I.e., assume that a higher level will refuse to use this library
- # if we return failure.
-
- # Does this library require both v1 and v3? If so, fail.
- if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libportals links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libportals links to both libnl and libnl-3." >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
-
- libnl_sane=0
-fi
-
- # Does this library require v1, but some prior library required
- # v3? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
- if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas portals requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas portals requires libnl" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv1_libs="$opal_libnlv1_libs portals"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv1_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv1_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
-
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
-
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
-
- # Check the ending condition
-
- opal_done="`expr $opal_i \>= $opal_count`"
-
- # Increment the counter
-
- opal_i="`expr $opal_i + 1`"
- done
-
- # If we didn't find the token, add it to the "array"
-
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
- fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
-
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
-
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
-
-# Done; do the assignment
-
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
-
-# Clean up
-
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=1
-fi
-
-fi
-
- # Does this library require v3, but some prior library required
- # v1? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
- if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libportals requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libportals requires libnl-3" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv3_libs="$opal_libnlv3_libs portals"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv3_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv3_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
-
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
-
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
-
- # Check the ending condition
-
- opal_done="`expr $opal_i \>= $opal_count`"
-
- # Increment the counter
-
- opal_i="`expr $opal_i + 1`"
- done
-
- # If we didn't find the token, add it to the "array"
+ ompi_summary_section=$(echo Transports | tr ' ' '_')
+ ompi_summary_line="OpenFabrics OFI Libfabric: $opal_ofi_happy"
+ ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
+ if test -z "$ompi_summary_section_current" ; then
+ if test -z "$ompi_summary_sections" ; then
+ ompi_summary_sections=$ompi_summary_section
+ else
+ ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
+ fi
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
else
- opal_i="`expr $opal_i - 1`"
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
-
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
-
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
-
-# Done; do the assignment
-
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
-
-# Clean up
-
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=3
-fi
-
-fi
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- rm -f conftest conftest_c.$ac_ext
-
- opal_libnl_sane=$libnl_sane
# Unwind the index
@@ -114413,10 +114469,7 @@
done
- ;;
- esac
- opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -114439,180 +114492,42 @@
done
- if test $opal_check_package_libnl_check_ok -eq 0; then :
- opal_check_package_lib_happy=no
-fi
-
-fi
-
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_PtlLEAppend" != "no" &&
- test "$ac_cv_search_PtlLEAppend" != "none required"; then :
- opal_check_portals4_LIBS="$ac_cv_search_PtlLEAppend "
-else
- opal_check_portals4_LIBS=""
-fi
- opal_check_package_happy="yes"
-else
- opal_check_package_happy="no"
-fi
-
-
+ if test $opal_ofi_happy = no; then :
+ if test -n "$with_ofi" && test "$with_ofi" != "no"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OFI libfabric support requested (via --with-ofi or --with-libfabric), but not found." >&5
+$as_echo "$as_me: WARNING: OFI libfabric support requested (via --with-ofi or --with-libfabric), but not found." >&2;}
+ as_fn_error $? "Cannot continue." "$LINENO" 5
fi
- unset opal_check_package_header_happy
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
- if test "$opal_check_package_happy" = "yes"; then :
- ompi_check_portals4_happy="yes"
-else
- opal_check_portals4_CPPFLAGS="$opal_check_package_opal_check_portals4_orig_CPPFLAGS"
- opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
- opal_check_portals4_LIBS="$opal_check_package_opal_check_portals4_orig_LIBS"
- ompi_check_portals4_happy="no"
fi
- CPPFLAGS="$opal_check_package_opal_check_portals4_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
- LIBS="$opal_check_package_opal_check_portals4_save_LIBS"
-
else
- ompi_check_portals4_happy="no"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OFI libfabric is available" >&5
+$as_echo_n "checking if OFI libfabric is available... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $opal_ofi_happy" >&5
+$as_echo "$opal_ofi_happy" >&6; }
fi
- CPPFLAGS="$ompi_check_portals4_btl_portals4_save_CPPFLAGS"
- LDFLAGS="$ompi_check_portals4_btl_portals4_save_LDFLAGS"
- LIBS="$ompi_check_portals4_btl_portals4_save_LIBS"
-
- max_md_size=0
-
-# Check whether --with-portals4-max-md-size was given.
-if test "${with_portals4_max_md_size+set}" = set; then :
- withval=$with_portals4_max_md_size;
-fi
- if test "$with_portals4_max_md_size" = "yes" || test "$with_portals4_max_md_size" = "no"; then :
- as_fn_error $? "--with-portals4-max-md-size requires an integer argument" "$LINENO" 5
-else
- if test -n "$with_portals4_max_md_size"; then :
- max_md_size="$with_portals4_max_md_size"
-fi
+ opal_btl_ofi_happy=0
+ if test "$opal_ofi_happy" = "yes"; then :
+ CPPFLAGS_save=$CPPFLAGS
+ CPPFLAGS="$opal_ofi_CPPFLAGS $CPPFLAGS"
+ ac_fn_c_check_decl "$LINENO" "FI_MR_VIRT_ADDR" "ac_cv_have_decl_FI_MR_VIRT_ADDR" "#include
+"
+if test "x$ac_cv_have_decl_FI_MR_VIRT_ADDR" = xyes; then :
+ opal_btl_ofi_happy=1
fi
-cat >>confdefs.h <<_ACEOF
-#define OPAL_PORTALS4_MAX_MD_SIZE $max_md_size
-_ACEOF
-
-
- max_va_size=0
-
-# Check whether --with-portals4-max-va-size was given.
-if test "${with_portals4_max_va_size+set}" = set; then :
- withval=$with_portals4_max_va_size;
+ CPPFLAGS=$CPPFLAGS_save
fi
-
- if test "$with_portals4_max_va_size" = "yes" || test "$with_portals4_max_va_size" = "no"; then :
- as_fn_error $? "--with-portals4-max-va-size requires an integer argument" "$LINENO" 5
+ if test $opal_btl_ofi_happy -eq 1; then :
+ should_build=$should_build
else
- if test -n "$with_portals4_max_va_size"; then :
- max_va_size="$with_portals4_max_va_size"
-fi
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define OPAL_PORTALS4_MAX_VA_SIZE $max_va_size
-_ACEOF
-
-
- if (test $max_md_size -eq 0 && test $max_va_size -ne 0 ) || (test $max_md_size -ne 0 && test $max_va_size -eq 0 ); then :
- as_fn_error $? "If either --with-portals4-max-md-size or --with-portals4-max-va-size is set, both must be set." "$LINENO" 5
-fi
- if test $max_md_size -ge $max_va_size; then :
- max_md_size=0
- max_va_size=0
-fi
- if test $max_md_size -ne 0 && test $max_va_size -ne 0; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: Portals 4 address space size: $max_md_size, $max_va_size" >&5
-$as_echo "$as_me: Portals 4 address space size: $max_md_size, $max_va_size" >&6;}
+ should_build=0
fi
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="Portals4: $ompi_check_portals4_happy"
- ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
-
- if test -z "$ompi_summary_section_current" ; then
- if test -z "$ompi_summary_sections" ; then
- ompi_summary_sections=$ompi_summary_section
- else
- ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
- fi
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
- else
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
- fi
-
-
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
opal_scope_test=`expr $opal_scope_index \> 0`
@@ -114634,69 +114549,6 @@
done
- fi
-
- if test "$ompi_check_portals4_happy" = "yes"; then :
- btl_portals4_LDFLAGS="$btl_portals4_LDFLAGS $opal_check_portals4_LDFLAGS"
- btl_portals4_CPPFLAGS="$btl_portals4_CPPFLAGS $opal_check_portals4_CPPFLAGS"
- btl_portals4_LIBS="$btl_portals4_LIBS $opal_check_portals4_LIBS"
- btl_portals4_happy="yes"
-else
- if test ! -z "$with_portals4" && test "$with_portals4" != "no"; then :
- as_fn_error $? "Portals4 support requested but not found. Aborting" "$LINENO" 5
-fi
- btl_portals4_happy="no"
-fi
-
-
- if test "$btl_portals4_happy" = "yes"; then :
- btl_portals4_WRAPPER_EXTRA_LDFLAGS="$btl_portals4_LDFLAGS"
- btl_portals4_WRAPPER_EXTRA_LIBS="$btl_portals4_LIBS"
- should_build=$should_build
-else
- should_build=0
-fi
-
- # need to propogate CPPFLAGS to all of OPAL
- if test "$DIRECT_btl" = "portals4"; then :
- CPPFLAGS="$CPPFLAGS $btl_portals4_CPPFLAGS"
-fi
-
- # Check whether --enable-btl-portals4-flow-control was given.
-if test "${enable_btl_portals4_flow_control+set}" = set; then :
- enableval=$enable_btl_portals4_flow_control;
-fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable flow control" >&5
-$as_echo_n "checking whether to enable flow control... " >&6; }
- if test "$enable_btl_portals4_flow_control" != "no"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- btl_portals4_flow_control_enabled=1
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- btl_portals4_flow_control_enabled=0
- fi
-
-cat >>confdefs.h <<_ACEOF
-#define OPAL_BTL_PORTALS4_FLOW_CONTROL $btl_portals4_flow_control_enabled
-_ACEOF
-
- if test "$btl_portals4_flow_control_enabled" = "1"; then
- OPAL_BTL_PORTALS4_FLOW_CONTROL_TRUE=
- OPAL_BTL_PORTALS4_FLOW_CONTROL_FALSE='#'
-else
- OPAL_BTL_PORTALS4_FLOW_CONTROL_TRUE='#'
- OPAL_BTL_PORTALS4_FLOW_CONTROL_FALSE=
-fi
-
-
- # substitute in the things needed to build portals4
-
-
-
-
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
if test "$should_build" = "1"; then :
@@ -114705,45 +114557,45 @@
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/btl/portals4/post_configure.sh"
+ infile="$srcdir/opal/mca/btl/ofi/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components portals4"
+ all_components="$all_components ofi"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components portals4"
+ dso_components="$dso_components ofi"
else
if test "btl" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/btl/portals4/lib${OPAL_LIB_PREFIX}mca_btl_portals4.la $static_ltlibs"
+ static_ltlibs="mca/btl/ofi/lib${OPAL_LIB_PREFIX}mca_btl_ofi.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/portals4/libmca_btl_portals4.la $static_ltlibs"
+ static_ltlibs="mca/btl/ofi/libmca_btl_ofi.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_btl_portals4_component;" >> $outfile.extern
- echo " &mca_btl_portals4_component, " >> $outfile.struct
- static_components="$static_components portals4"
+ echo "extern const mca_base_component_t mca_btl_ofi_component;" >> $outfile.extern
+ echo " &mca_btl_ofi_component, " >> $outfile.struct
+ static_components="$static_components ofi"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:portals4 can compile" >&5
-$as_echo_n "checking if MCA component btl:portals4 can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:ofi can compile" >&5
+$as_echo_n "checking if MCA component btl:ofi can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_btl" = "portals4" ; then
+ if test "$DIRECT_btl" = "ofi" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** btl component portals4 was supposed to be direct-called, but
+as_fn_error $? "*** btl component ofi was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -114751,8 +114603,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "portals4" ; then
-as_fn_error $? "*** btl component portals4 was supposed to be direct-called, but
+ if test "$DIRECT_btl" = "ofi" ; then
+as_fn_error $? "*** btl component ofi was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -114767,7 +114619,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- if test "$btl_portals4_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$btl_ofi_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -114807,7 +114659,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_portals4_LDFLAGS; do
+ for arg in $btl_ofi_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -114888,7 +114740,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_portals4_WRAPPER_EXTRA_LDFLAGS; do
+ for arg in $btl_ofi_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -114930,7 +114782,7 @@
fi
- if test "$btl_portals4_WRAPPER_EXTRA_LIBS" = ""; then :
+ if test "$btl_ofi_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -114970,7 +114822,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_portals4_LIBS; do
+ for arg in $btl_ofi_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -115051,7 +114903,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_portals4_WRAPPER_EXTRA_LIBS; do
+ for arg in $btl_ofi_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -115099,7 +114951,7 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$btl_portals4_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ if test "$btl_ofi_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
stop_at_first=0
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -115142,7 +114994,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_portals4_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $btl_ofi_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -115185,32 +115037,32 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_portals4_WRAPPER_EXTRA_CPPFLAGS ($btl_portals4_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_portals4_WRAPPER_EXTRA_CPPFLAGS ($btl_portals4_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_ofi_WRAPPER_EXTRA_CPPFLAGS ($btl_ofi_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring btl_ofi_WRAPPER_EXTRA_CPPFLAGS ($btl_ofi_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:portals4 can compile" >&5
-$as_echo_n "checking if MCA component btl:portals4 can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:ofi can compile" >&5
+$as_echo_n "checking if MCA component btl:ofi can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_btl" = "portals4" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"portals4\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"portals4\" failed to configure properly" >&2;}
+ if test "$with_btl" = "ofi" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ofi\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"ofi\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "portals4" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"portals4\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"portals4\" failed to configure properly" >&2;}
+ if test "$DIRECT_btl" = "ofi" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ofi\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"ofi\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
@@ -115218,23 +115070,23 @@
fi
# add component to all component list
- all_components="$all_components portals4"
+ all_components="$all_components ofi"
fi
# set the AM_CONDITIONAL on how we should build
if test "$compile_mode" = "dso"; then :
- BUILD_opal_btl_portals4_DSO=1
+ BUILD_opal_btl_ofi_DSO=1
else
- BUILD_opal_btl_portals4_DSO=0
+ BUILD_opal_btl_ofi_DSO=0
fi
- if test "$BUILD_opal_btl_portals4_DSO" = "1"; then
- MCA_BUILD_opal_btl_portals4_DSO_TRUE=
- MCA_BUILD_opal_btl_portals4_DSO_FALSE='#'
+ if test "$BUILD_opal_btl_ofi_DSO" = "1"; then
+ MCA_BUILD_opal_btl_ofi_DSO_TRUE=
+ MCA_BUILD_opal_btl_ofi_DSO_FALSE='#'
else
- MCA_BUILD_opal_btl_portals4_DSO_TRUE='#'
- MCA_BUILD_opal_btl_portals4_DSO_FALSE=
+ MCA_BUILD_opal_btl_ofi_DSO_TRUE='#'
+ MCA_BUILD_opal_btl_ofi_DSO_FALSE=
fi
@@ -115250,13 +115102,13 @@
- opal_show_subsubsubtitle "MCA component btl:sm (m4 configuration macro)"
+ opal_show_subsubsubtitle "MCA component btl:openib (m4 configuration macro)"
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- component_path="$srcdir/opal/mca/btl/sm"
+ component_path="$srcdir/opal/mca/btl/openib"
want_component=0
# build if:
@@ -115289,7 +115141,7 @@
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "sm" ; then
+ if test "$DIRECT_btl" = "openib" ; then
want_component=1
else
want_component=0
@@ -115301,7 +115153,7 @@
if test "$DISABLE_btl" = "1"; then :
want_component=0
fi
- if test "$DISABLE_btl_sm" = "1"; then :
+ if test "$DISABLE_btl_openib" = "1"; then :
want_component=0
fi
@@ -115315,10 +115167,10 @@
# It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_sm"
+ SHARED_COMPONENT="$DSO_btl_openib"
STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_sm"
+ STATIC_COMPONENT="$STATIC_btl_openib"
shared_mode_override=static
@@ -115336,9 +115188,9 @@
compile_mode="static"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:sm compile mode" >&5
-$as_echo_n "checking for MCA component btl:sm compile mode... " >&6; }
- if test "$DIRECT_btl" = "sm" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:openib compile mode" >&5
+$as_echo_n "checking for MCA component btl:openib compile mode... " >&6; }
+ if test "$DIRECT_btl" = "openib" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
$as_echo "$compile_mode - direct" >&6; }
else
@@ -115349,80 +115201,8 @@
# try to configure the component
- ac_config_files="$ac_config_files opal/mca/btl/sm/Makefile"
-
-
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
-
- if test "$should_build" = "1"; then :
-
-
-
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/btl/sm/post_configure.sh"
-
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components sm"
-
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components sm"
- else
- if test "btl" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/btl/sm/lib${OPAL_LIB_PREFIX}mca_btl_sm.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/sm/libmca_btl_sm.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_btl_sm_component;" >> $outfile.extern
- echo " &mca_btl_sm_component, " >> $outfile.struct
- static_components="$static_components sm"
- fi
-
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:sm can compile" >&5
-$as_echo_n "checking if MCA component btl:sm can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_btl" = "sm" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** btl component sm was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "sm" ; then
-as_fn_error $? "*** btl component sm was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+ ac_config_files="$ac_config_files opal/mca/btl/openib/Makefile"
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$btl_sm_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -115435,7 +115215,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in cpcs btl_openib_LDFLAGS_save btl_openib_LIBS_save; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -115454,56 +115234,15 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"cpcs btl_openib_LDFLAGS_save btl_openib_LIBS_save\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
+ cpcs="oob"
- for arg in $btl_sm_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-else
@@ -115516,7 +115255,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in btl_openib_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -115535,7 +115274,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"btl_openib_msg\""
eval $opal_str
unset opal_str
@@ -115543,49 +115282,99 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_sm_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ # Setup the --with switches to allow users to specify where
+ # verbs stuff lives.
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ if test -z "$opal_check_openib_happy" ; then
+ #
+ # Add padding to OpenIB header
+ #
+ # Check whether --enable-openib-control-hdr-padding was given.
+if test "${enable_openib_control_hdr_padding+set}" = set; then :
+ enableval=$enable_openib_control_hdr_padding;
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if want to add padding to the openib BTL control header" >&5
+$as_echo_n "checking if want to add padding to the openib BTL control header... " >&6; }
+ if test "$enable_openib_control_hdr_padding" = "yes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ ompi_openib_pad_hdr=1
+ elif test "$enable_openib_control_hdr_padding" = "no"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ ompi_openib_pad_hdr=0
+ else
+ #
+ # Enable padding for SPARC platforms by default because the
+ # btl will segv otherwise. Keep padding disabled for other
+ # platforms since there are some performance implications with
+ # padding on for those platforms.
+ #
+ case "${host}" in
+ sparc*)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (enabled by default on SPARC)" >&5
+$as_echo "yes (enabled by default on SPARC)" >&6; }
+ ompi_openib_pad_hdr=1
+ ;;
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ ompi_openib_pad_hdr=0
+ ;;
+ esac
+ fi
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_OPENIB_PAD_HDR $ompi_openib_pad_hdr
+_ACEOF
+ if test "$opal_want_verbs" = "no"; then :
+ opal_check_openib_happy="no"
+else
+ opal_check_openib_happy="yes"
fi
- if test "$btl_sm_WRAPPER_EXTRA_LIBS" = ""; then :
+
+ ompi_check_openib_btl_openib_save_CPPFLAGS="$CPPFLAGS"
+ ompi_check_openib_btl_openib_save_LDFLAGS="$LDFLAGS"
+ ompi_check_openib_btl_openib_save_LIBS="$LIBS"
+
+ if test "$opal_check_openib_happy" = "yes"; then :
+ for ac_header in fcntl.h sys/poll.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: fcntl.h sys/poll.h not found. Can not build component." >&5
+$as_echo "$as_me: WARNING: fcntl.h sys/poll.h not found. Can not build component." >&2;}
+ opal_check_openib_happy="no"
+fi
+
+done
+
+fi
+
+ if test "$opal_check_openib_happy" = "yes"; then :
+
+ opal_check_package_opal_check_openib_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_opal_check_openib_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_opal_check_openib_save_LIBS="$LIBS"
+
+ opal_check_package_opal_check_openib_orig_CPPFLAGS="$opal_check_openib_CPPFLAGS"
+ opal_check_package_opal_check_openib_orig_LDFLAGS="$opal_check_openib_LDFLAGS"
+ opal_check_package_opal_check_openib_orig_LIBS="$opal_check_openib_LIBS"
+
+
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
@@ -115598,7 +115387,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in dir_prefix; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -115617,7 +115406,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
eval $opal_str
unset opal_str
@@ -115625,48 +115414,357 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_sm_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+ # so this sucks, but there's no way to get through the progression
+ # of header includes without killing off the cache variable and trying
+ # again...
+ unset ac_cv_header_infiniband_verbs_h
+
+ # get rid of the trailing slash(es)
+ dir_prefix=$(echo $opal_verbs_dir | sed -e 'sX/*$XXg')
+ opal_check_package_header_happy="no"
+ if test "$dir_prefix" = "/usr" || \
+ test "$dir_prefix" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
+$as_echo "looking for header without includes" >&6; }
+ for ac_header in infiniband/verbs.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "infiniband/verbs.h" "ac_cv_header_infiniband_verbs_h" "$ac_includes_default"
+if test "x$ac_cv_header_infiniband_verbs_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_INFINIBAND_VERBS_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
fi
- done
+
+done
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ # no go on the as is - reset the cache and try again
+ unset ac_cv_header_infiniband_verbs_h
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
+fi
+
+ if test "$opal_check_package_header_happy" = "no"; then :
+ if test "$dir_prefix" != ""; then :
+ opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$dir_prefix/include"
+ CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+fi
+ for ac_header in infiniband/verbs.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "infiniband/verbs.h" "ac_cv_header_infiniband_verbs_h" "$ac_includes_default"
+if test "x$ac_cv_header_infiniband_verbs_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_INFINIBAND_VERBS_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
+fi
+
+done
+
+ if test "$opal_check_package_header_happy" = "yes"; then :
+
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
+
+
+ # see comment above
+ unset ac_cv_search_ibv_open_device
+ opal_check_package_lib_happy="no"
+ if test "$opal_verbs_libdir" != ""; then :
+ # libdir was specified - search only there
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_verbs_libdir"
+ LDFLAGS="$LDFLAGS -L$opal_verbs_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
fi
- done
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir="$opal_verbs_dir"
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
+$as_echo "looking for library in lib" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
+
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib64"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
+$as_echo "looking for library in lib64" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+fi
+fi
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # libnl v1 and libnl3 are known to *not* coexist
+ # harmoniously in the same process. Check to see if this
+ # new package will introduce such a conflict.
@@ -115679,7 +115777,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_libnl_sane; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -115698,66 +115796,16 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
-
- for arg in $btl_sm_WRAPPER_EXTRA_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-fi
-
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$btl_sm_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
+ opal_libnl_sane=1
+ case $host in
+ *linux*)
@@ -115770,7 +115818,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -115789,7 +115837,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
eval $opal_str
unset opal_str
@@ -115797,355 +115845,276 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_sm_WRAPPER_EXTRA_CPPFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
-else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
-fi
-fi
- done
-
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libibverbs requires libnl v1 or v3" >&5
+$as_echo_n "checking if libibverbs requires libnl v1 or v3... " >&6; }
+ cat > conftest_c.$ac_ext << EOF
+extern void ibv_open_device (void);
+int main(int argc, char *argv[]) {
+ ibv_open_device ();
+ return 0;
+}
+EOF
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ this_requires_v1=0
+ this_requires_v3=0
+ result_msg=
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:115872: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
+opal_status=$?
-fi
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:115879: \$? = $opal_status" >&5
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_sm_WRAPPER_EXTRA_CPPFLAGS ($btl_sm_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_sm_WRAPPER_EXTRA_CPPFLAGS ($btl_sm_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ echo \$? = $opal_status >&5
+fi
+if test "$opal_status" = "0"; then
+ unset opal_status
+ ldd_output=`ldd conftest`
+ if echo $ldd_output | grep -q libnl-3.so; then :
+ this_requires_v3=1
+ result_msg="v3"
fi
+ if echo $ldd_output | grep -q libnl.so; then :
+ this_requires_v1=1
+ result_msg="v1 $result_msg"
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
+$as_echo "$result_msg" >&6; }
else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ibverbs" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ibverbs" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:sm can compile" >&5
-$as_echo_n "checking if MCA component btl:sm can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+fi
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_btl" = "sm" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"sm\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"sm\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ # Assume that our configuration is sane; this may get reset below
+ libnl_sane=1
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "sm" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"sm\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"sm\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
+ # Note: in all the checks below, only add this library to the list
+ # of libraries (for v1 or v3 as relevant) if we do not fail.
+ # I.e., assume that a higher level will refuse to use this library
+ # if we return failure.
- # add component to all component list
- all_components="$all_components sm"
+ # Does this library require both v1 and v3? If so, fail.
+ if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&2;}
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+
+ libnl_sane=0
fi
+ # Does this library require v1, but some prior library required
+ # v3? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
+ if test $opal_libnl_version -eq 3; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_btl_sm_DSO=1
-else
- BUILD_opal_btl_sm_DSO=0
-fi
- if test "$BUILD_opal_btl_sm_DSO" = "1"; then
- MCA_BUILD_opal_btl_sm_DSO_TRUE=
- MCA_BUILD_opal_btl_sm_DSO_FALSE='#'
+ libnl_sane=0
else
- MCA_BUILD_opal_btl_sm_DSO_TRUE='#'
- MCA_BUILD_opal_btl_sm_DSO_FALSE=
-fi
+ opal_libnlv1_libs="$opal_libnlv1_libs ibverbs"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv1_libs
- if test "$should_build" = "1"; then :
- components_last_result=1
-else
- components_last_result=0
-fi
+# Go through each item in the variable and only keep the unique ones
- unset compile_mode
+opal_count=0
+for val in ${opal_libnlv1_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
+ # Loop over every token we've seen so far
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- opal_show_subsubsubtitle "MCA component btl:smcuda (m4 configuration macro)"
+ # Check the ending condition
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+ opal_done="`expr $opal_i \>= $opal_count`"
+ # Increment the counter
+ opal_i="`expr $opal_i + 1`"
+ done
- component_path="$srcdir/opal/mca/btl/smcuda"
- want_component=0
+ # If we didn't find the token, add it to the "array"
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "smcuda" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_btl" = "1"; then :
- want_component=0
-fi
- if test "$DISABLE_btl_smcuda" = "1"; then :
- want_component=0
-fi
+# Take all the items in the "array" and assemble them back into a
+# single variable
- if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
-else
- should_build=0
-fi
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
- SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_smcuda"
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
- STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_smcuda"
+# Done; do the assignment
- shared_mode_override=static
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+# Clean up
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:smcuda compile mode" >&5
-$as_echo_n "checking for MCA component btl:smcuda compile mode... " >&6; }
- if test "$DIRECT_btl" = "smcuda" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
- fi
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=1
+fi
+fi
- # try to configure the component
+ # Does this library require v3, but some prior library required
+ # v1? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
+ if test $opal_libnl_version -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&2;}
- ac_config_files="$ac_config_files opal/mca/btl/smcuda/Makefile"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+ libnl_sane=0
+else
+ opal_libnlv3_libs="$opal_libnlv3_libs ibverbs"
- # make sure that CUDA-aware checks have been done
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv3_libs
+# Go through each item in the variable and only keep the unique ones
- # Only build if CUDA support is available
- if test "x$CUDA_SUPPORT" = "x1"; then :
- should_build=$should_build
-else
- should_build=0
-fi
+opal_count=0
+for val in ${opal_libnlv3_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
+ # Loop over every token we've seen so far
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- if test "$should_build" = "1"; then :
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
+ # Check the ending condition
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/btl/smcuda/post_configure.sh"
+ opal_done="`expr $opal_i \>= $opal_count`"
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components smcuda"
+ # Increment the counter
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components smcuda"
- else
- if test "btl" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/btl/smcuda/lib${OPAL_LIB_PREFIX}mca_btl_smcuda.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/smcuda/libmca_btl_smcuda.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_btl_smcuda_component;" >> $outfile.extern
- echo " &mca_btl_smcuda_component, " >> $outfile.struct
- static_components="$static_components smcuda"
- fi
+ opal_i="`expr $opal_i + 1`"
+ done
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:smcuda can compile" >&5
-$as_echo_n "checking if MCA component btl:smcuda can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ # If we didn't find the token, add it to the "array"
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_btl" = "smcuda" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** btl component smcuda was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "smcuda" ; then
-as_fn_error $? "*** btl component smcuda was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$btl_smcuda_WRAPPER_EXTRA_LDFLAGS" = ""; then :
-
-
+# Take all the items in the "array" and assemble them back into a
+# single variable
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+# Done; do the assignment
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
+# Clean up
- for arg in $btl_smcuda_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=3
fi
+
fi
- done
+
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ rm -f conftest conftest_c.$ac_ext
+
+ opal_libnl_sane=$libnl_sane
# Unwind the index
@@ -116169,170 +116138,358 @@
done
-else
-
+ ;;
+ esac
+ opal_check_package_libnl_check_ok=$opal_libnl_sane
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
eval $opal_str
- unset opal_str
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- for arg in $btl_smcuda_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+ if test $opal_check_package_libnl_check_ok -eq 0; then :
+ opal_check_package_lib_happy=no
fi
- done
+
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
+ if test "$ac_cv_search_ibv_open_device" != "no" &&
+ test "$ac_cv_search_ibv_open_device" != "none required"; then :
+ opal_check_openib_LIBS="$ac_cv_search_ibv_open_device "
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ opal_check_openib_LIBS=""
fi
+ opal_check_package_happy="yes"
+else
+ opal_check_package_happy="no"
fi
- done
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+else
+ opal_check_package_happy="no"
+fi
+else
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ # see comment above
+ unset ac_cv_search_ibv_open_device
+ opal_check_package_lib_happy="no"
+ if test "$opal_verbs_libdir" != ""; then :
+ # libdir was specified - search only there
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_verbs_libdir"
+ LDFLAGS="$LDFLAGS -L$opal_verbs_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
fi
- if test "$btl_smcuda_WRAPPER_EXTRA_LIBS" = ""; then :
-
-
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir="$opal_verbs_dir"
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
+$as_echo "looking for library in lib" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- for arg in $btl_smcuda_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
fi
- done
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
+
else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+ ac_cv_search_ibv_open_device=no
fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
fi
- done
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+fi
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ opal_check_openib_LDFLAGS="$opal_check_openib_LDFLAGS -L$opal_check_package_libdir/lib64"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
+$as_echo "looking for library in lib64" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ibv_open_device" >&5
+$as_echo_n "checking for library containing ibv_open_device... " >&6; }
+if ${ac_cv_search_ibv_open_device+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ibv_open_device ();
+int
+main ()
+{
+return ibv_open_device ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ibverbs; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ibv_open_device=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ibv_open_device+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ibv_open_device+:} false; then :
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+else
+ ac_cv_search_ibv_open_device=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ibv_open_device" >&5
+$as_echo "$ac_cv_search_ibv_open_device" >&6; }
+ac_res=$ac_cv_search_ibv_open_device
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ unset ac_cv_search_ibv_open_device
+fi
+fi
+fi
+fi
-else
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # libnl v1 and libnl3 are known to *not* coexist
+ # harmoniously in the same process. Check to see if this
+ # new package will introduce such a conflict.
@@ -116345,7 +116502,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_libnl_sane; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -116364,66 +116521,16 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
-
- for arg in $btl_smcuda_WRAPPER_EXTRA_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-fi
-
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$btl_smcuda_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
+ opal_libnl_sane=1
+ case $host in
+ *linux*)
@@ -116436,7 +116543,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -116455,7 +116562,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
eval $opal_str
unset opal_str
@@ -116463,290 +116570,303 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_smcuda_WRAPPER_EXTRA_CPPFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
-else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
-fi
-fi
- done
-
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libibverbs requires libnl v1 or v3" >&5
+$as_echo_n "checking if libibverbs requires libnl v1 or v3... " >&6; }
+ cat > conftest_c.$ac_ext << EOF
+extern void ibv_open_device (void);
+int main(int argc, char *argv[]) {
+ ibv_open_device ();
+ return 0;
+}
+EOF
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ this_requires_v1=0
+ this_requires_v3=0
+ result_msg=
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:116597: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -libverbs $LIBS $opal_check_openib_LIBS 1>&5 2>&1
+opal_status=$?
-fi
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:116604: \$? = $opal_status" >&5
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_smcuda_WRAPPER_EXTRA_CPPFLAGS ($btl_smcuda_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_smcuda_WRAPPER_EXTRA_CPPFLAGS ($btl_smcuda_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ echo \$? = $opal_status >&5
+fi
+if test "$opal_status" = "0"; then
+ unset opal_status
+ ldd_output=`ldd conftest`
+ if echo $ldd_output | grep -q libnl-3.so; then :
+ this_requires_v3=1
+ result_msg="v3"
fi
+ if echo $ldd_output | grep -q libnl.so; then :
+ this_requires_v1=1
+ result_msg="v1 $result_msg"
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
+$as_echo "$result_msg" >&6; }
else
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ibverbs" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ibverbs" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:smcuda can compile" >&5
-$as_echo_n "checking if MCA component btl:smcuda can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+fi
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_btl" = "smcuda" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"smcuda\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"smcuda\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ # Assume that our configuration is sane; this may get reset below
+ libnl_sane=1
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "smcuda" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"smcuda\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"smcuda\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
+ # Note: in all the checks below, only add this library to the list
+ # of libraries (for v1 or v3 as relevant) if we do not fail.
+ # I.e., assume that a higher level will refuse to use this library
+ # if we return failure.
- # add component to all component list
- all_components="$all_components smcuda"
+ # Does this library require both v1 and v3? If so, fail.
+ if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libibverbs links to both libnl and libnl-3." >&2;}
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+
+ libnl_sane=0
fi
+ # Does this library require v1, but some prior library required
+ # v3? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
+ if test $opal_libnl_version -eq 3; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ibverbs requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_btl_smcuda_DSO=1
-else
- BUILD_opal_btl_smcuda_DSO=0
-fi
- if test "$BUILD_opal_btl_smcuda_DSO" = "1"; then
- MCA_BUILD_opal_btl_smcuda_DSO_TRUE=
- MCA_BUILD_opal_btl_smcuda_DSO_FALSE='#'
+ libnl_sane=0
else
- MCA_BUILD_opal_btl_smcuda_DSO_TRUE='#'
- MCA_BUILD_opal_btl_smcuda_DSO_FALSE=
-fi
+ opal_libnlv1_libs="$opal_libnlv1_libs ibverbs"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv1_libs
- if test "$should_build" = "1"; then :
- components_last_result=1
-else
- components_last_result=0
-fi
+# Go through each item in the variable and only keep the unique ones
- unset compile_mode
+opal_count=0
+for val in ${opal_libnlv1_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
+ # Loop over every token we've seen so far
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- opal_show_subsubsubtitle "MCA component btl:tcp (m4 configuration macro)"
+ # Check the ending condition
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
+ opal_done="`expr $opal_i \>= $opal_count`"
+ # Increment the counter
+ opal_i="`expr $opal_i + 1`"
+ done
- component_path="$srcdir/opal/mca/btl/tcp"
- want_component=0
+ # If we didn't find the token, add it to the "array"
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "tcp" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
fi
+done
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_btl" = "1"; then :
- want_component=0
+# Take all the items in the "array" and assemble them back into a
+# single variable
+
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
+
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
+
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
+
+# Done; do the assignment
+
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
+
+# Clean up
+
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=1
fi
- if test "$DISABLE_btl_tcp" = "1"; then :
- want_component=0
+
fi
- if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
+ # Does this library require v3, but some prior library required
+ # v1? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
+ if test $opal_libnl_version -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libibverbs requires libnl-3" >&2;}
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libibverbs (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libibverbs (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libibverbs." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libibverbs." >&2;}
+
+ libnl_sane=0
else
- should_build=0
-fi
+ opal_libnlv3_libs="$opal_libnlv3_libs ibverbs"
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv3_libs
- SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_tcp"
+# Go through each item in the variable and only keep the unique ones
- STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_tcp"
+opal_count=0
+for val in ${opal_libnlv3_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
- shared_mode_override=static
+ # Loop over every token we've seen so far
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:tcp compile mode" >&5
-$as_echo_n "checking for MCA component btl:tcp compile mode... " >&6; }
- if test "$DIRECT_btl" = "tcp" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
+
+ # Check the ending condition
+
+ opal_done="`expr $opal_i \>= $opal_count`"
+
+ # Increment the counter
+
+ opal_i="`expr $opal_i + 1`"
+ done
+
+ # If we didn't find the token, add it to the "array"
+
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
+ opal_i="`expr $opal_i - 1`"
fi
+done
+# Take all the items in the "array" and assemble them back into a
+# single variable
- # try to configure the component
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- ac_config_files="$ac_config_files opal/mca/btl/tcp/Makefile"
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
- # check for sockaddr_in (a good sign we have TCP)
- ac_fn_c_check_type "$LINENO" "struct sockaddr_in" "ac_cv_type_struct_sockaddr_in" "$ac_includes_default
-#ifdef HAVE_NETINET_IN_H
-#include
-#endif
+# Done; do the assignment
-"
-if test "x$ac_cv_type_struct_sockaddr_in" = xyes; then :
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_SOCKADDR_IN 1
-_ACEOF
+# Clean up
-opal_btl_tcp_happy=yes
- should_build=$should_build
-else
- opal_btl_tcp_happy=no
- should_build=0
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=3
fi
+fi
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ rm -f conftest conftest_c.$ac_ext
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+ opal_libnl_sane=$libnl_sane
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="TCP: $opal_btl_tcp_happy"
- ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
- if test -z "$ompi_summary_section_current" ; then
- if test -z "$ompi_summary_sections" ; then
- ompi_summary_sections=$ompi_summary_section
- else
- ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
- fi
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
- else
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
- fi
+ ;;
+ esac
+ opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -116769,78 +116889,508 @@
done
+ if test $opal_check_package_libnl_check_ok -eq 0; then :
+ opal_check_package_lib_happy=no
+fi
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
-
- if test "$should_build" = "1"; then :
+fi
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
+ if test "$ac_cv_search_ibv_open_device" != "no" &&
+ test "$ac_cv_search_ibv_open_device" != "none required"; then :
+ opal_check_openib_LIBS="$ac_cv_search_ibv_open_device "
+else
+ opal_check_openib_LIBS=""
+fi
+ opal_check_package_happy="yes"
+else
+ opal_check_package_happy="no"
+fi
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/btl/tcp/post_configure.sh"
+fi
+ unset opal_check_package_header_happy
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components tcp"
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components tcp"
- else
- if test "btl" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/btl/tcp/lib${OPAL_LIB_PREFIX}mca_btl_tcp.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/tcp/libmca_btl_tcp.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_btl_tcp_component;" >> $outfile.extern
- echo " &mca_btl_tcp_component, " >> $outfile.struct
- static_components="$static_components tcp"
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:tcp can compile" >&5
-$as_echo_n "checking if MCA component btl:tcp can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_btl" = "tcp" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** btl component tcp was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "tcp" ; then
-as_fn_error $? "*** btl component tcp was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+
+ if test "$opal_check_package_happy" = "yes"; then :
+ opal_check_openib_happy="yes"
+else
+ opal_check_openib_CPPFLAGS="$opal_check_package_opal_check_openib_orig_CPPFLAGS"
+ opal_check_openib_LDFLAGS="$opal_check_package_opal_check_openib_orig_LDFLAGS"
+ opal_check_openib_LIBS="$opal_check_package_opal_check_openib_orig_LIBS"
+ opal_check_openib_happy="no"
+fi
+
+ CPPFLAGS="$opal_check_package_opal_check_openib_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_opal_check_openib_save_LDFLAGS"
+ LIBS="$opal_check_package_opal_check_openib_save_LIBS"
+
+fi
+
+ CPPFLAGS="$CPPFLAGS $opal_check_openib_CPPFLAGS"
+ LDFLAGS="$LDFLAGS $opal_check_openib_LDFLAGS"
+ LIBS="$LIBS $opal_check_openib_LIBS"
+
+ if test "$opal_check_openib_happy" = "yes"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking number of arguments to ibv_create_cq" >&5
+$as_echo_n "checking number of arguments to ibv_create_cq... " >&6; }
+if ${ompi_cv_func_ibv_create_cq_args+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
+int
+main ()
+{
+ibv_create_cq(NULL, 0, NULL, NULL, 0);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ompi_cv_func_ibv_create_cq_args=5
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
+int
+main ()
+{
+ibv_create_cq(NULL, 0, NULL);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ompi_cv_func_ibv_create_cq_args=3
+else
+ ompi_cv_func_ibv_create_cq_args="unknown"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_cv_func_ibv_create_cq_args" >&5
+$as_echo "$ompi_cv_func_ibv_create_cq_args" >&6; }
+ if test "$ompi_cv_func_ibv_create_cq_args" = "unknown"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Can not determine number of args to ibv_create_cq." >&5
+$as_echo "$as_me: WARNING: Can not determine number of args to ibv_create_cq." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Not building component." >&5
+$as_echo "$as_me: WARNING: Not building component." >&2;}
+ opal_check_openib_happy="no"
+else
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_IBV_CREATE_CQ_ARGS $ompi_cv_func_ibv_create_cq_args
+_ACEOF
+
+fi
+fi
+
+ #
+ # OpenIB dynamic SL
+ #
+ # Check whether --enable-openib-dynamic-sl was given.
+if test "${enable_openib_dynamic_sl+set}" = set; then :
+ enableval=$enable_openib_dynamic_sl;
+fi
+
+
+ # Set these up so that we can do an AC_DEFINE below
+ # (unconditionally)
+ opal_check_openib_have_xrc=0
+ opal_check_openib_have_xrc_domains=0
+ opal_check_openib_have_opensm_devel=0
+
+ # If we have the openib stuff available, find out what we've got
+ if test "$opal_check_openib_happy" = "yes"; then :
+ ac_fn_c_check_decl "$LINENO" "IBV_EVENT_CLIENT_REREGISTER" "ac_cv_have_decl_IBV_EVENT_CLIENT_REREGISTER" "#include
+"
+if test "x$ac_cv_have_decl_IBV_EVENT_CLIENT_REREGISTER" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_EVENT_CLIENT_REREGISTER $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IBV_ACCESS_SO" "ac_cv_have_decl_IBV_ACCESS_SO" "#include
+"
+if test "x$ac_cv_have_decl_IBV_ACCESS_SO" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_ACCESS_SO $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IBV_ATOMIC_HCA" "ac_cv_have_decl_IBV_ATOMIC_HCA" "#include
+"
+if test "x$ac_cv_have_decl_IBV_ATOMIC_HCA" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_ATOMIC_HCA $ac_have_decl
+_ACEOF
+
+ for ac_func in ibv_get_device_list ibv_resize_cq
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+ # struct ibv_device.transport_type was added in OFED v1.2
+ ac_fn_c_check_member "$LINENO" "struct ibv_device" "transport_type" "ac_cv_member_struct_ibv_device_transport_type" "#include
+"
+if test "x$ac_cv_member_struct_ibv_device_transport_type" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_IBV_DEVICE_TRANSPORT_TYPE 1
+_ACEOF
+
+
+fi
+
+
+ # We have to check functions both exits *and* are declared
+ # since some distro ship broken ibverbs devel headers
+ # IBV_DEVICE_XRC is common to all OFED versions
+ # ibv_create_xrc_rcv_qp was added in OFED 1.3
+ # ibv_cmd_open_xrcd (aka XRC Domains) was added in OFED 3.12
+ if test "$enable_connectx_xrc" = "yes"; then
+ ac_fn_c_check_decl "$LINENO" "IBV_DEVICE_XRC" "ac_cv_have_decl_IBV_DEVICE_XRC" "#include
+"
+if test "x$ac_cv_have_decl_IBV_DEVICE_XRC" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_DEVICE_XRC $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ opal_check_openib_have_xrc=1
+ opal_check_openib_have_xrc_domains=1
+fi
+
+ fi
+ if test "$enable_connectx_xrc" = "yes" \
+ && test $opal_check_openib_have_xrc -eq 1; then
+ ac_fn_c_check_decl "$LINENO" "ibv_create_xrc_rcv_qp" "ac_cv_have_decl_ibv_create_xrc_rcv_qp" "#include
+"
+if test "x$ac_cv_have_decl_ibv_create_xrc_rcv_qp" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_CREATE_XRC_RCV_QP $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ for ac_func in ibv_create_xrc_rcv_qp
+do :
+ ac_fn_c_check_func "$LINENO" "ibv_create_xrc_rcv_qp" "ac_cv_func_ibv_create_xrc_rcv_qp"
+if test "x$ac_cv_func_ibv_create_xrc_rcv_qp" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_IBV_CREATE_XRC_RCV_QP 1
+_ACEOF
+
+else
+ opal_check_openib_have_xrc=0
+fi
+done
+
+else
+ opal_check_openib_have_xrc=0
+fi
+
+ fi
+ if test "$enable_connectx_xrc" = "yes" \
+ && test $opal_check_openib_have_xrc_domains -eq 1; then
+ ac_fn_c_check_decl "$LINENO" "ibv_cmd_open_xrcd" "ac_cv_have_decl_ibv_cmd_open_xrcd" "#include
+"
+if test "x$ac_cv_have_decl_ibv_cmd_open_xrcd" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_CMD_OPEN_XRCD $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ ac_fn_c_check_decl "$LINENO" "IBV_SRQT_XRC" "ac_cv_have_decl_IBV_SRQT_XRC" "#include
+"
+if test "x$ac_cv_have_decl_IBV_SRQT_XRC" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_SRQT_XRC $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ for ac_func in ibv_cmd_open_xrcd
+do :
+ ac_fn_c_check_func "$LINENO" "ibv_cmd_open_xrcd" "ac_cv_func_ibv_cmd_open_xrcd"
+if test "x$ac_cv_func_ibv_cmd_open_xrcd" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_IBV_CMD_OPEN_XRCD 1
+_ACEOF
+
+else
+ opal_check_openib_have_xrc_domains=0
+fi
+done
+
+else
+ opal_check_openib_have_xrc_domains=0
+fi
+
+else
+ opal_check_openib_have_xrc_domains=0
+fi
+
+ # XRC and XRC Domains should be considered as exclusive
+ if test "$opal_check_openib_have_xrc" -eq 1 && \
+ test "$opal_check_openib_have_xrc_domains" -eq 1; then
+ opal_check_openib_have_xrc=0
+ fi
+ fi
+
+ if test "no" != "$enable_openib_dynamic_sl"; then
+ # We need ib_types.h file, which is installed with opensm-devel
+ # package. However, ib_types.h has a bad include directive,
+ # which will cause AC_CHECK_HEADER to fail.
+ # So instead, we will look for another file that is also
+ # installed as part of opensm-devel package and included in
+ # ib_types.h, but it doesn't include any other IB-related files.
+ ac_fn_c_check_header_mongrel "$LINENO" "infiniband/complib/cl_types_osd.h" "ac_cv_header_infiniband_complib_cl_types_osd_h" "$ac_includes_default"
+if test "x$ac_cv_header_infiniband_complib_cl_types_osd_h" = xyes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cl_map_init in -losmcomp" >&5
+$as_echo_n "checking for cl_map_init in -losmcomp... " >&6; }
+if ${ac_cv_lib_osmcomp_cl_map_init+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-losmcomp $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char cl_map_init ();
+int
+main ()
+{
+return cl_map_init ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_osmcomp_cl_map_init=yes
+else
+ ac_cv_lib_osmcomp_cl_map_init=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_osmcomp_cl_map_init" >&5
+$as_echo "$ac_cv_lib_osmcomp_cl_map_init" >&6; }
+if test "x$ac_cv_lib_osmcomp_cl_map_init" = xyes; then :
+ opal_check_openib_have_opensm_devel=1
+fi
+
+fi
+
+
+ # Abort if dynamic SL support was explicitly requested but opensm-devel
+ # package wasn't found. Otherwise, OMPI will be built w/o dynamic SL.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if can use dynamic SL support" >&5
+$as_echo_n "checking if can use dynamic SL support... " >&6; }
+ if test "$opal_check_openib_have_opensm_devel" = "1"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ if test "$enable_openib_dynamic_sl" = "yes"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-openib-dynamic-sl was specified but the" >&5
+$as_echo "$as_me: WARNING: --enable-openib-dynamic-sl was specified but the" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: appropriate header/library files could not be found" >&5
+$as_echo "$as_me: WARNING: appropriate header/library files could not be found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please install opensm-devel if you need dynamic SL support" >&5
+$as_echo "$as_me: WARNING: Please install opensm-devel if you need dynamic SL support" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+fi
+fi
+ fi
+
+
+ # Check support for RDMAoE devices
+ btl_openib_have_rdmaoe=0
+ ac_fn_c_check_decl "$LINENO" "IBV_LINK_LAYER_ETHERNET" "ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" "#include
+"
+if test "x$ac_cv_have_decl_IBV_LINK_LAYER_ETHERNET" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_LINK_LAYER_ETHERNET $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+ btl_openib_have_rdmaoe=1
+fi
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if RDMAoE support is enabled" >&5
+$as_echo_n "checking if RDMAoE support is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_RDMAOE $btl_openib_have_rdmaoe
+_ACEOF
+
+ if test "1" = "$btl_openib_have_rdmaoe"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+
+fi
+
+ # Check to see if works. It is known to
+ # create problems on some platforms with some compilers (e.g.,
+ # RHEL4U3 with the PGI 32 bit compiler). Use undocumented (in AC
+ # 2.63) feature of AC_CHECK_HEADERS: if you explicitly pass in
+ # AC_INCLUDES_DEFAULT as the 4th arg to AC_CHECK_HEADERS, the test
+ # will fail if the header is present but not compilable, *but it
+ # will not print the big scary warning*. See
+ # http://lists.gnu.org/archive/html/autoconf/2008-10/msg00143.html.
+ if test "$opal_check_openib_happy" = "yes"; then :
+ for ac_header in infiniband/driver.h
+do :
+ ac_fn_c_check_header_compile "$LINENO" "infiniband/driver.h" "ac_cv_header_infiniband_driver_h" "$ac_includes_default
+"
+if test "x$ac_cv_header_infiniband_driver_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_INFINIBAND_DRIVER_H 1
+_ACEOF
+
+fi
+
+done
+
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ConnectX XRC support is enabled" >&5
+$as_echo_n "checking if ConnectX XRC support is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_CONNECTX_XRC $opal_check_openib_have_xrc
+_ACEOF
+
+ if test "1" = "$opal_check_openib_have_xrc"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ConnectIB XRC support is enabled" >&5
+$as_echo_n "checking if ConnectIB XRC support is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_CONNECTX_XRC_DOMAINS $opal_check_openib_have_xrc_domains
+_ACEOF
+
+ if test "1" = "$opal_check_openib_have_xrc_domains"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if dynamic SL is enabled" >&5
+$as_echo_n "checking if dynamic SL is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_ENABLE_DYNAMIC_SL $opal_check_openib_have_opensm_devel
+_ACEOF
+
+ if test "1" = "$opal_check_openib_have_opensm_devel"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ btl_openib_LIBS="-losmcomp $btl_openib_LIBS"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+ if test -z "$opal_verbs_dir"; then :
+ openib_include_dir="/usr/include"
+else
+ openib_include_dir="$opal_verbs_dir/include"
+fi
+ opal_check_openib_CPPFLAGS="$opal_check_openib_CPPFLAGS -I$openib_include_dir/infiniband"
+
+ CPPFLAGS="$ompi_check_openib_btl_openib_save_CPPFLAGS"
+ LDFLAGS="$ompi_check_openib_btl_openib_save_LDFLAGS"
+ LIBS="$ompi_check_openib_btl_openib_save_LIBS"
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$btl_tcp_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -116853,7 +117403,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -116872,7 +117422,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
eval $opal_str
unset opal_str
@@ -116880,26 +117430,45 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_tcp_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
-fi
+ ompi_summary_section=$(echo Transports | tr ' ' '_')
+ ompi_summary_line="OpenFabrics Verbs: $opal_check_openib_happy"
+ ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
+
+ if test -z "$ompi_summary_section_current" ; then
+ if test -z "$ompi_summary_sections" ; then
+ ompi_summary_sections=$ompi_summary_section
+ else
+ ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
+ fi
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
+ else
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
+ fi
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
done
+
+
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
opal_scope_test=`expr $opal_scope_index \> 0`
@@ -116920,8 +117489,178 @@
unset $opal_var
done
+ fi
+
+ btl_openib_have_xrc=$opal_check_openib_have_xrc
+ btl_openib_have_xrc_domains=$opal_check_openib_have_xrc_domains
+ btl_openib_have_opensm_devel=$opal_check_openib_have_opensm_devel
+
+ if test "$opal_check_openib_happy" = "yes"; then :
+ btl_openib_CPPFLAGS="$btl_openib_CPPFLAGS $opal_check_openib_CPPFLAGS"
+ btl_openib_LDFLAGS="$btl_openib_LDFLAGS $opal_check_openib_LDFLAGS"
+ btl_openib_LIBS="$btl_openib_LIBS $opal_check_openib_LIBS"
+ btl_openib_happy="yes"
+
+
+ btl_openib_have_udcm=0
+ btl_openib_have_rdmacm=0
+
+ ompi_check_openib_btl_openib_save_CPPFLAGS="$CPPFLAGS"
+ ompi_check_openib_btl_openib_save_LDFLAGS="$LDFLAGS"
+ ompi_check_openib_btl_openib_save_LIBS="$LIBS"
+
+ # add back in all the InfiniBand flags so that these tests might work...
+ CPPFLAGS="$CPPFLAGS $btl_openib_CPPFLAGS"
+ LDFLAGS="$LDFLAGS $btl_openib_LDFLAGS"
+ LIBS="$LIBS $btl_openib_LIBS"
+
+ if test "$opal_check_openib_happy" = "yes"; then :
+ # Do we have a recent enough RDMA CM? Need to have the
+ # rdma_get_peer_addr (inline) function (originally appeared
+ # in OFED v1.3).
+ if test "$enable_openib_rdmacm" != "no"; then
+ for ac_header in rdma/rdma_cma.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rdma/rdma_cma.h" "ac_cv_header_rdma_rdma_cma_h" "$ac_includes_default"
+if test "x$ac_cv_header_rdma_rdma_cma_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RDMA_RDMA_CMA_H 1
+_ACEOF
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for rdma_create_id in -lrdmacm" >&5
+$as_echo_n "checking for rdma_create_id in -lrdmacm... " >&6; }
+if ${ac_cv_lib_rdmacm_rdma_create_id+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lrdmacm $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char rdma_create_id ();
+int
+main ()
+{
+return rdma_create_id ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_rdmacm_rdma_create_id=yes
+else
+ ac_cv_lib_rdmacm_rdma_create_id=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rdmacm_rdma_create_id" >&5
+$as_echo "$ac_cv_lib_rdmacm_rdma_create_id" >&6; }
+if test "x$ac_cv_lib_rdmacm_rdma_create_id" = xyes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for rdma_get_peer_addr" >&5
+$as_echo_n "checking for rdma_get_peer_addr... " >&6; }
+ btl_openib_msg=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include "rdma/rdma_cma.h"
+
+int
+main ()
+{
+void *ret = (void*) rdma_get_peer_addr((struct rdma_cm_id*)0);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ btl_openib_have_rdmacm=1
+ btl_openib_msg=yes
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $btl_openib_msg" >&5
+$as_echo "$btl_openib_msg" >&6; }
+fi
+
+fi
+
+done
+
+
+ if test "1" = "$btl_openib_have_rdmacm"; then
+ btl_openib_LIBS="-lrdmacm $btl_openib_LIBS"
+ else
+ if test "$enable_openib_rdmacm" = "yes"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-openib-rdmacm was specified but the" >&5
+$as_echo "$as_me: WARNING: --enable-openib-rdmacm was specified but the" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: appropriate files could not be found" >&5
+$as_echo "$as_me: WARNING: appropriate files could not be found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please install librdmacm and librdmacm-devel or disable rdmacm support" >&5
+$as_echo "$as_me: WARNING: Please install librdmacm and librdmacm-devel or disable rdmacm support" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+fi
+ fi
+ fi
+
+ # is udcm enabled
+ if test "$enable_openib_udcm" = "yes"; then
+ btl_openib_have_udcm=1
+ fi
+
+fi
+
+ CPPFLAGS="$ompi_check_openib_btl_openib_save_CPPFLAGS"
+ LDFLAGS="$ompi_check_openib_btl_openib_save_LDFLAGS"
+ LIBS="$ompi_check_openib_btl_openib_save_LIBS"
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if UD CM is enabled" >&5
+$as_echo_n "checking if UD CM is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_UDCM $btl_openib_have_udcm
+_ACEOF
+
+ if test "1" = "$btl_openib_have_udcm"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OpenFabrics RDMACM support is enabled" >&5
+$as_echo_n "checking if OpenFabrics RDMACM support is enabled... " >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_HAVE_RDMACM $btl_openib_have_rdmacm
+_ACEOF
+
+ if test "1" = "$btl_openib_have_rdmacm"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
else
+ if test "$opal_want_verbs" = "yes"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Verbs support requested (via --with-verbs) but not found." >&5
+$as_echo "$as_me: WARNING: Verbs support requested (via --with-verbs) but not found." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&5
+$as_echo "$as_me: WARNING: If you are using libibverbs v1.0 (i.e., OFED v1.0 or v1.1), you *MUST* have both the libsysfs headers and libraries installed. Later versions of libibverbs do not require libsysfs." >&2;}
+ as_fn_error $? "Aborting." "$LINENO" 5
+fi
+ btl_openib_happy="no"
+fi
+
+
@@ -116934,7 +117673,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in have_struct_ibv_exp_send_wr; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -116953,7 +117692,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"have_struct_ibv_exp_send_wr\""
eval $opal_str
unset opal_str
@@ -116961,25 +117700,115 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_tcp_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether expanded verbs are available" >&5
+$as_echo_n "checking whether expanded verbs are available... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
+int
+main ()
+{
+struct ibv_exp_send_wr;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ have_struct_ibv_exp_send_wr=1
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ have_struct_ibv_exp_send_wr=0
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
- done
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_EXP_VERBS $have_struct_ibv_exp_send_wr
+_ACEOF
+
+ ac_fn_c_check_decl "$LINENO" "IBV_EXP_ATOMIC_HCA_REPLY_BE" "ac_cv_have_decl_IBV_EXP_ATOMIC_HCA_REPLY_BE" "#include
+"
+if test "x$ac_cv_have_decl_IBV_EXP_ATOMIC_HCA_REPLY_BE" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_EXP_ATOMIC_HCA_REPLY_BE $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IBV_EXP_QP_CREATE_ATOMIC_BE_REPLY" "ac_cv_have_decl_IBV_EXP_QP_CREATE_ATOMIC_BE_REPLY" "#include
+"
+if test "x$ac_cv_have_decl_IBV_EXP_QP_CREATE_ATOMIC_BE_REPLY" = xyes; then :
+ ac_have_decl=1
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_EXP_QP_CREATE_ATOMIC_BE_REPLY $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ibv_exp_create_qp" "ac_cv_have_decl_ibv_exp_create_qp" "#include
+"
+if test "x$ac_cv_have_decl_ibv_exp_create_qp" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_EXP_CREATE_QP $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ibv_exp_query_device" "ac_cv_have_decl_ibv_exp_query_device" "#include
+"
+if test "x$ac_cv_have_decl_ibv_exp_query_device" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
- done
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_EXP_QUERY_DEVICE $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "IBV_EXP_QP_INIT_ATTR_ATOMICS_ARG" "ac_cv_have_decl_IBV_EXP_QP_INIT_ATTR_ATOMICS_ARG" "#include
+"
+if test "x$ac_cv_have_decl_IBV_EXP_QP_INIT_ATTR_ATOMICS_ARG" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_IBV_EXP_QP_INIT_ATTR_ATOMICS_ARG $ac_have_decl
+_ACEOF
+
+ ac_fn_c_check_member "$LINENO" "struct ibv_exp_device_attr" "ext_atom" "ac_cv_member_struct_ibv_exp_device_attr_ext_atom" "#include
+"
+if test "x$ac_cv_member_struct_ibv_exp_device_attr_ext_atom" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_IBV_EXP_DEVICE_ATTR_EXT_ATOM 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct ibv_exp_device_attr" "exp_atomic_cap" "ac_cv_member_struct_ibv_exp_device_attr_exp_atomic_cap" "#include
+"
+if test "x$ac_cv_member_struct_ibv_exp_device_attr_exp_atomic_cap" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_IBV_EXP_DEVICE_ATTR_EXP_ATOMIC_CAP 1
+_ACEOF
+
+
+fi
+
+ if test '$have_struct_ibv_exp_send_wr' = 1; then :
+ btl_openib
+fi
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -117002,8 +117831,211 @@
done
+
+ if test "$btl_openib_happy" = "yes"; then :
+ # With the new openib flags, look for ibv_fork_init
+ btl_openib_LDFLAGS_save="$LDFLAGS"
+ btl_openib_LIBS_save="$LIBS"
+ LDFLAGS="$LDFLAGS $btl_openib_LDFLAGS"
+ LIBS="$LIBS $btl_openib_LIBS"
+ for ac_func in ibv_fork_init
+do :
+ ac_fn_c_check_func "$LINENO" "ibv_fork_init" "ac_cv_func_ibv_fork_init"
+if test "x$ac_cv_func_ibv_fork_init" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_IBV_FORK_INIT 1
+_ACEOF
+
+fi
+done
+
+ LDFLAGS="$btl_openib_LDFLAGS_save"
+ LIBS="$btl_openib_LIBS_save"
+ should_build=$should_build
+else
+ should_build=0
fi
- if test "$btl_tcp_WRAPPER_EXTRA_LIBS" = ""; then :
+
+ if test "$btl_openib_happy" = "yes"; then :
+ if test "x$btl_openib_have_xrc" = "x1"; then
+ cpcs="$cpcs xoob"
+ fi
+ if test "x$btl_openib_have_rdmacm" = "x1"; then
+ cpcs="$cpcs rdmacm"
+ if test "$enable_openib_rdmacm_ibaddr" = "yes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking IB addressing" >&5
+$as_echo_n "checking IB addressing... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #include
+ #ifdef AF_IB
+ yes
+ #endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "yes" >/dev/null 2>&1; then :
+
+ for ac_header in rdma/rsocket.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "rdma/rsocket.h" "ac_cv_header_rdma_rsocket_h" "$ac_includes_default"
+if test "x$ac_cv_header_rdma_rsocket_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_RDMA_RSOCKET_H 1
+_ACEOF
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+$as_echo "#define BTL_OPENIB_RDMACM_IB_ADDR 1" >>confdefs.h
+
+
+else
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+$as_echo "#define BTL_OPENIB_RDMACM_IB_ADDR 0" >>confdefs.h
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: There is no IB_AF addressing support by lib rdmacm." >&5
+$as_echo "$as_me: WARNING: There is no IB_AF addressing support by lib rdmacm." >&2;}
+
+
+fi
+
+done
+
+else
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+$as_echo "#define BTL_OPENIB_RDMACM_IB_ADDR 0" >>confdefs.h
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: There is no IB_AF addressing support by lib rdmacm." >&5
+$as_echo "$as_me: WARNING: There is no IB_AF addressing support by lib rdmacm." >&2;}
+
+fi
+rm -f conftest*
+
+ else
+
+$as_echo "#define BTL_OPENIB_RDMACM_IB_ADDR 0" >>confdefs.h
+
+ fi
+ fi
+ if test "x$btl_openib_have_udcm" = "x1"; then
+ cpcs="$cpcs udcm"
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking which openib btl cpcs will be built" >&5
+$as_echo_n "checking which openib btl cpcs will be built... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cpcs" >&5
+$as_echo "$cpcs" >&6; }
+fi
+
+ # make sure that CUDA-aware checks have been done
+
+
+ # substitute in the things needed to build openib
+
+
+
+
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+
+ if test "$should_build" = "1"; then :
+
+
+
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/btl/openib/post_configure.sh"
+
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components openib"
+
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components openib"
+ else
+ if test "btl" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/btl/openib/lib${OPAL_LIB_PREFIX}mca_btl_openib.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/btl/openib/libmca_btl_openib.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_btl_openib_component;" >> $outfile.extern
+ echo " &mca_btl_openib_component, " >> $outfile.struct
+ static_components="$static_components openib"
+ fi
+
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:openib can compile" >&5
+$as_echo_n "checking if MCA component btl:openib can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_btl" = "openib" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** btl component openib was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_btl" = "openib" ; then
+as_fn_error $? "*** btl component openib was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ if test "$btl_openib_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -117043,21 +118075,21 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_tcp_LIBS; do
+ for arg in $btl_openib_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
+ for val in ${mca_wrapper_extra_ldflags}; do
if test "x$val" = "x$arg"; then :
opal_append=0
fi
done
fi
if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
fi
done
@@ -117124,11 +118156,174 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_tcp_WRAPPER_EXTRA_LIBS; do
+ for arg in $btl_openib_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
+else
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+fi
+ if test "$btl_openib_WRAPPER_EXTRA_LIBS" = ""; then :
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $btl_openib_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+else
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $btl_openib_WRAPPER_EXTRA_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
if test "x$val" = "x$arg"; then :
opal_append=0
fi
@@ -117172,7 +118367,7 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$btl_tcp_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ if test "$btl_openib_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
stop_at_first=0
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -117215,7 +118410,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_tcp_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $btl_openib_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -117258,32 +118453,32 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_tcp_WRAPPER_EXTRA_CPPFLAGS ($btl_tcp_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_tcp_WRAPPER_EXTRA_CPPFLAGS ($btl_tcp_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_openib_WRAPPER_EXTRA_CPPFLAGS ($btl_openib_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring btl_openib_WRAPPER_EXTRA_CPPFLAGS ($btl_openib_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:tcp can compile" >&5
-$as_echo_n "checking if MCA component btl:tcp can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:openib can compile" >&5
+$as_echo_n "checking if MCA component btl:openib can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_btl" = "tcp" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"tcp\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"tcp\" failed to configure properly" >&2;}
+ if test "$with_btl" = "openib" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"openib\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"openib\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "tcp" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"tcp\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"tcp\" failed to configure properly" >&2;}
+ if test "$DIRECT_btl" = "openib" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"openib\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"openib\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
@@ -117291,23 +118486,56 @@
fi
# add component to all component list
- all_components="$all_components tcp"
+ all_components="$all_components openib"
+fi
+
+
+ if test $should_build -eq 1 && test "x$btl_openib_have_xrc" = "x1"; then
+ MCA_btl_openib_have_xrc_TRUE=
+ MCA_btl_openib_have_xrc_FALSE='#'
+else
+ MCA_btl_openib_have_xrc_TRUE='#'
+ MCA_btl_openib_have_xrc_FALSE=
+fi
+
+ if test $should_build -eq 1 && test "x$btl_openib_have_rdmacm" = "x1"; then
+ MCA_btl_openib_have_rdmacm_TRUE=
+ MCA_btl_openib_have_rdmacm_FALSE='#'
+else
+ MCA_btl_openib_have_rdmacm_TRUE='#'
+ MCA_btl_openib_have_rdmacm_FALSE=
+fi
+
+ if test $should_build -eq 1 && test "x$btl_openib_have_opensm_devel" = "x1"; then
+ MCA_btl_openib_have_dynamic_sl_TRUE=
+ MCA_btl_openib_have_dynamic_sl_FALSE='#'
+else
+ MCA_btl_openib_have_dynamic_sl_TRUE='#'
+ MCA_btl_openib_have_dynamic_sl_FALSE=
+fi
+
+ if test $should_build -eq 1 && test "x$btl_openib_have_udcm" = "x1"; then
+ MCA_btl_openib_have_udcm_TRUE=
+ MCA_btl_openib_have_udcm_FALSE='#'
+else
+ MCA_btl_openib_have_udcm_TRUE='#'
+ MCA_btl_openib_have_udcm_FALSE=
fi
# set the AM_CONDITIONAL on how we should build
if test "$compile_mode" = "dso"; then :
- BUILD_opal_btl_tcp_DSO=1
+ BUILD_opal_btl_openib_DSO=1
else
- BUILD_opal_btl_tcp_DSO=0
+ BUILD_opal_btl_openib_DSO=0
fi
- if test "$BUILD_opal_btl_tcp_DSO" = "1"; then
- MCA_BUILD_opal_btl_tcp_DSO_TRUE=
- MCA_BUILD_opal_btl_tcp_DSO_FALSE='#'
+ if test "$BUILD_opal_btl_openib_DSO" = "1"; then
+ MCA_BUILD_opal_btl_openib_DSO_TRUE=
+ MCA_BUILD_opal_btl_openib_DSO_FALSE='#'
else
- MCA_BUILD_opal_btl_tcp_DSO_TRUE='#'
- MCA_BUILD_opal_btl_tcp_DSO_FALSE=
+ MCA_BUILD_opal_btl_openib_DSO_TRUE='#'
+ MCA_BUILD_opal_btl_openib_DSO_FALSE=
fi
@@ -117323,13 +118551,13 @@
- opal_show_subsubsubtitle "MCA component btl:uct (m4 configuration macro)"
+ opal_show_subsubsubtitle "MCA component btl:portals4 (m4 configuration macro)"
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- component_path="$srcdir/opal/mca/btl/uct"
+ component_path="$srcdir/opal/mca/btl/portals4"
want_component=0
# build if:
@@ -117362,7 +118590,7 @@
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "uct" ; then
+ if test "$DIRECT_btl" = "portals4" ; then
want_component=1
else
want_component=0
@@ -117374,7 +118602,7 @@
if test "$DISABLE_btl" = "1"; then :
want_component=0
fi
- if test "$DISABLE_btl_uct" = "1"; then :
+ if test "$DISABLE_btl_portals4" = "1"; then :
want_component=0
fi
@@ -117388,10 +118616,10 @@
# It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_uct"
+ SHARED_COMPONENT="$DSO_btl_portals4"
STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_uct"
+ STATIC_COMPONENT="$STATIC_btl_portals4"
shared_mode_override=static
@@ -117409,9 +118637,9 @@
compile_mode="static"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:uct compile mode" >&5
-$as_echo_n "checking for MCA component btl:uct compile mode... " >&6; }
- if test "$DIRECT_btl" = "uct" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:portals4 compile mode" >&5
+$as_echo_n "checking for MCA component btl:portals4 compile mode... " >&6; }
+ if test "$DIRECT_btl" = "portals4" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
$as_echo "$compile_mode - direct" >&6; }
else
@@ -117422,82 +118650,44 @@
# try to configure the component
- ac_config_files="$ac_config_files opal/mca/btl/uct/Makefile"
-
-
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_check_ucx_dir; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_check_ucx_dir\""
- eval $opal_str
- unset opal_str
+ ac_config_files="$ac_config_files opal/mca/btl/portals4/Makefile"
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
- if test -z "$ompi_check_ucx_happy"; then :
+ if test -z "$ompi_check_portals4_happy" ; then
-# Check whether --with-ucx was given.
-if test "${with_ucx+set}" = set; then :
- withval=$with_ucx;
+# Check whether --with-portals4 was given.
+if test "${with_portals4+set}" = set; then :
+ withval=$with_portals4;
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ucx value" >&5
-$as_echo_n "checking --with-ucx value... " >&6; }
- if test "$with_ucx" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ucx)" >&5
-$as_echo "simple no (specified --without-ucx)" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-portals4 value" >&5
+$as_echo_n "checking --with-portals4 value... " >&6; }
+ if test "$with_portals4" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-portals4)" >&5
+$as_echo "simple no (specified --without-portals4)" >&6; }
else
- if test "$with_ucx" = "yes" || test "x$with_ucx" = "x"; then :
+ if test "$with_portals4" = "yes" || test "x$with_portals4" = "x"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
$as_echo "simple ok (unspecified value)" >&6; }
else
- if test ! -d "$with_ucx"; then :
+ if test ! -d "$with_portals4"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ucx not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_ucx not found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_portals4 not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_portals4 not found" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
else
- if test "x`ls $with_ucx/include/ucp/api/ucp.h 2> /dev/null`" = "x"; then :
+ if test "x`ls $with_portals4/include/portals4.h 2> /dev/null`" = "x"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ucx/include/ucp/api/ucp.h not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_ucx/include/ucp/api/ucp.h not found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_portals4/include/portals4.h not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_portals4/include/portals4.h not found" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ucx)" >&5
-$as_echo "sanity check ok ($with_ucx)" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_portals4)" >&5
+$as_echo "sanity check ok ($with_portals4)" >&6; }
fi
@@ -117511,38 +118701,38 @@
fi
-# Check whether --with-ucx-libdir was given.
-if test "${with_ucx_libdir+set}" = set; then :
- withval=$with_ucx_libdir;
+# Check whether --with-portals4-libdir was given.
+if test "${with_portals4_libdir+set}" = set; then :
+ withval=$with_portals4_libdir;
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ucx-libdir value" >&5
-$as_echo_n "checking --with-ucx-libdir value... " >&6; }
- if test "$with_ucx_libdir" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ucx-libdir)" >&5
-$as_echo "simple no (specified --without-ucx-libdir)" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-portals4-libdir value" >&5
+$as_echo_n "checking --with-portals4-libdir value... " >&6; }
+ if test "$with_portals4_libdir" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-portals4-libdir)" >&5
+$as_echo "simple no (specified --without-portals4-libdir)" >&6; }
else
- if test "$with_ucx_libdir" = "yes" || test "x$with_ucx_libdir" = "x"; then :
+ if test "$with_portals4_libdir" = "yes" || test "x$with_portals4_libdir" = "x"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
$as_echo "simple ok (unspecified value)" >&6; }
else
- if test ! -d "$with_ucx_libdir"; then :
+ if test ! -d "$with_portals4_libdir"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ucx_libdir not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_ucx_libdir not found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_portals4_libdir not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_portals4_libdir not found" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
else
- if test "x`ls $with_ucx_libdir/libucp.* 2> /dev/null`" = "x"; then :
+ if test "x`ls $with_portals4_libdir/libportals.* 2> /dev/null`" = "x"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ucx_libdir/libucp.* not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_ucx_libdir/libucp.* not found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_portals4_libdir/libportals.* not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_portals4_libdir/libportals.* not found" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ucx_libdir)" >&5
-$as_echo "sanity check ok ($with_ucx_libdir)" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_portals4_libdir)" >&5
+$as_echo "sanity check ok ($with_portals4_libdir)" >&6; }
fi
@@ -117556,113 +118746,26 @@
fi
- if test "$with_ucx" != "no"; then :
- if test -n "$with_ucx" && test "$with_ucx" != "yes"; then :
- ompi_check_ucx_dir="$with_ucx"
-else
-
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ucx" >&5
-$as_echo_n "checking for ucx... " >&6; }
+ ompi_check_portals4_btl_portals4_save_CPPFLAGS="$CPPFLAGS"
+ ompi_check_portals4_btl_portals4_save_LDFLAGS="$LDFLAGS"
+ ompi_check_portals4_btl_portals4_save_LIBS="$LIBS"
-if test -n "$ucx_CFLAGS"; then
- pkg_cv_ucx_CFLAGS="$ucx_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
- ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_ucx_CFLAGS=`$PKG_CONFIG --cflags "ucx" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$ucx_LIBS"; then
- pkg_cv_ucx_LIBS="$ucx_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
- ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_ucx_LIBS=`$PKG_CONFIG --libs "ucx" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$ucx_STATIC_LIBS"; then
- pkg_cv_ucx_STATIC_LIBS="$ucx_STATIC_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
- ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_ucx_STATIC_LIBS=`$PKG_CONFIG --libs --static "ucx" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
+ if test "$with_portals4" != "no"; then :
+ if test ! -z "$with_portals4" && test "$with_portals4" != "yes"; then :
+ ompi_check_portals4_dir="$with_portals4"
fi
-
-
-
-if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
+ if test ! -z "$with_portals4_libdir" && test "$with_portals4_libdir" != "yes"; then :
+ ompi_check_portals4_libdir="$with_portals4_libdir"
fi
- if test $_pkg_short_errors_supported = yes; then
- ucx_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "ucx" 2>&1`
- else
- ucx_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "ucx" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$ucx_PKG_ERRORS" >&5
- true
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- true
-else
- ucx_CFLAGS=$pkg_cv_ucx_CFLAGS
- ucx_LIBS=$pkg_cv_ucx_LIBS
- ucx_STATIC_LIBS=$pkg_cv_ucx_STATIC_LIBS
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- ompi_check_ucx_dir=`$PKG_CONFIG --variable=prefix ucx`
- if test "$ompi_check_ucx_dir" = "/usr"; then :
- ompi_check_ucx_dir=
-fi
-fi
-fi
- ompi_check_ucx_happy="no"
- if test -z "$ompi_check_ucx_dir"; then :
- opal_check_package_ompi_check_ucx_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_ompi_check_ucx_save_LDFLAGS="$LDFLAGS"
- opal_check_package_ompi_check_ucx_save_LIBS="$LIBS"
+ opal_check_package_opal_check_portals4_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_opal_check_portals4_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_opal_check_portals4_save_LIBS="$LIBS"
- opal_check_package_ompi_check_ucx_orig_CPPFLAGS="$ompi_check_ucx_CPPFLAGS"
- opal_check_package_ompi_check_ucx_orig_LDFLAGS="$ompi_check_ucx_LDFLAGS"
- opal_check_package_ompi_check_ucx_orig_LIBS="$ompi_check_ucx_LIBS"
+ opal_check_package_opal_check_portals4_orig_CPPFLAGS="$opal_check_portals4_CPPFLAGS"
+ opal_check_package_opal_check_portals4_orig_LDFLAGS="$opal_check_portals4_LDFLAGS"
+ opal_check_package_opal_check_portals4_orig_LIBS="$opal_check_portals4_LIBS"
# This is stolen from autoconf to peek under the covers to get the
@@ -117710,22 +118813,22 @@
# so this sucks, but there's no way to get through the progression
# of header includes without killing off the cache variable and trying
# again...
- unset ac_cv_header_ucp_api_ucp_h
+ unset ac_cv_header_portals4_h
# get rid of the trailing slash(es)
- dir_prefix=$(echo | sed -e 'sX/*$XXg')
+ dir_prefix=$(echo $ompi_check_portals4_dir | sed -e 'sX/*$XXg')
opal_check_package_header_happy="no"
if test "$dir_prefix" = "/usr" || \
test "$dir_prefix" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
$as_echo "looking for header without includes" >&6; }
- for ac_header in ucp/api/ucp.h
+ for ac_header in portals4.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
+ ac_fn_c_check_header_mongrel "$LINENO" "portals4.h" "ac_cv_header_portals4_h" "$ac_includes_default"
+if test "x$ac_cv_header_portals4_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define HAVE_UCP_API_UCP_H 1
+#define HAVE_PORTALS4_H 1
_ACEOF
opal_check_package_header_happy="yes"
fi
@@ -117734,21 +118837,21 @@
if test "$opal_check_package_header_happy" = "no"; then :
# no go on the as is - reset the cache and try again
- unset ac_cv_header_ucp_api_ucp_h
+ unset ac_cv_header_portals4_h
fi
fi
if test "$opal_check_package_header_happy" = "no"; then :
if test "$dir_prefix" != ""; then :
- ompi_check_ucx_CPPFLAGS="$ompi_check_ucx_CPPFLAGS -I$dir_prefix/include"
+ opal_check_portals4_CPPFLAGS="$opal_check_portals4_CPPFLAGS -I$dir_prefix/include"
CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
fi
- for ac_header in ucp/api/ucp.h
+ for ac_header in portals4.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
+ ac_fn_c_check_header_mongrel "$LINENO" "portals4.h" "ac_cv_header_portals4_h" "$ac_includes_default"
+if test "x$ac_cv_header_portals4_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define HAVE_UCP_API_UCP_H 1
+#define HAVE_PORTALS4_H 1
_ACEOF
opal_check_package_header_happy="yes"
fi
@@ -117763,15 +118866,15 @@
# see comment above
- unset ac_cv_search_ucp_cleanup
+ unset ac_cv_search_PtlLEAppend
opal_check_package_lib_happy="no"
- if test "" != ""; then :
+ if test "$ompi_check_portals4_libdir" != ""; then :
# libdir was specified - search only there
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L"
- LDFLAGS="$LDFLAGS -L"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$ompi_check_portals4_libdir"
+ LDFLAGS="$LDFLAGS -L$ompi_check_portals4_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
+$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
+if ${ac_cv_search_PtlLEAppend+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -117784,42 +118887,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char PtlLEAppend ();
int
main ()
{
-return ucp_cleanup ();
+return PtlLEAppend ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' portals; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_PtlLEAppend=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_PtlLEAppend+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_PtlLEAppend+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_PtlLEAppend=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
+$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
+ac_res=$ac_cv_search_PtlLEAppend
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -117828,22 +118931,22 @@
fi
if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ unset ac_cv_search_PtlLEAppend
fi
else
# libdir was not specified - go through search path
- opal_check_package_libdir=""
+ opal_check_package_libdir="$ompi_check_portals4_dir"
if test "$opal_check_package_libdir" = "" || \
test "$opal_check_package_libdir" = "/usr" || \
test "$opal_check_package_libdir" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
+$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
+if ${ac_cv_search_PtlLEAppend+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -117856,42 +118959,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char PtlLEAppend ();
int
main ()
{
-return ucp_cleanup ();
+return PtlLEAppend ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' portals; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_PtlLEAppend=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_PtlLEAppend+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_PtlLEAppend+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_PtlLEAppend=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
+$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
+ac_res=$ac_cv_search_PtlLEAppend
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -117901,21 +119004,21 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ unset ac_cv_search_PtlLEAppend
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
+ opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
+$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
+if ${ac_cv_search_PtlLEAppend+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -117928,42 +119031,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char PtlLEAppend ();
int
main ()
{
-return ucp_cleanup ();
+return PtlLEAppend ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' portals; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_PtlLEAppend=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_PtlLEAppend+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_PtlLEAppend+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_PtlLEAppend=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
+$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
+ac_res=$ac_cv_search_PtlLEAppend
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -117973,22 +119076,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ unset ac_cv_search_PtlLEAppend
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
+ opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
+$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
+if ${ac_cv_search_PtlLEAppend+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -118001,42 +119104,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char PtlLEAppend ();
int
main ()
{
-return ucp_cleanup ();
+return PtlLEAppend ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' portals; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_PtlLEAppend=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_PtlLEAppend+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_PtlLEAppend+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_PtlLEAppend=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
+$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
+ac_res=$ac_cv_search_PtlLEAppend
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -118046,9 +119149,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ unset ac_cv_search_PtlLEAppend
fi
fi
fi
@@ -118145,12 +119248,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
-$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libportals requires libnl v1 or v3" >&5
+$as_echo_n "checking if libportals requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void ucp_cleanup (void);
+extern void PtlLEAppend (void);
int main(int argc, char *argv[]) {
- ucp_cleanup ();
+ PtlLEAppend ();
return 0;
}
EOF
@@ -118162,14 +119265,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:118165: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
+echo "configure:119268: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lportals $LIBS $opal_check_portals4_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lportals $LIBS $opal_check_portals4_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:118172: \$? = $opal_status" >&5
+ echo "configure:119275: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -118189,8 +119292,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib portals" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib portals" >&2;}
fi
@@ -118204,15 +119307,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libportals links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libportals links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
libnl_sane=0
fi
@@ -118221,19 +119324,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas portals requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas portals requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs ucp"
+ opal_libnlv1_libs="$opal_libnlv1_libs portals"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -118312,19 +119415,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libportals requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libportals requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs ucp"
+ opal_libnlv3_libs="$opal_libnlv3_libs portals"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -118465,11 +119568,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ucp_cleanup" != "no" &&
- test "$ac_cv_search_ucp_cleanup" != "none required"; then :
- ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
+ if test "$ac_cv_search_PtlLEAppend" != "no" &&
+ test "$ac_cv_search_PtlLEAppend" != "none required"; then :
+ opal_check_portals4_LIBS="$ac_cv_search_PtlLEAppend "
else
- ompi_check_ucx_LIBS="-luct -lucm -lucs"
+ opal_check_portals4_LIBS=""
fi
opal_check_package_happy="yes"
else
@@ -118488,15 +119591,15 @@
# see comment above
- unset ac_cv_search_ucp_cleanup
+ unset ac_cv_search_PtlLEAppend
opal_check_package_lib_happy="no"
- if test "" != ""; then :
+ if test "$ompi_check_portals4_libdir" != ""; then :
# libdir was specified - search only there
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L"
- LDFLAGS="$LDFLAGS -L"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$ompi_check_portals4_libdir"
+ LDFLAGS="$LDFLAGS -L$ompi_check_portals4_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
+$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
+if ${ac_cv_search_PtlLEAppend+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -118509,42 +119612,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char PtlLEAppend ();
int
main ()
{
-return ucp_cleanup ();
+return PtlLEAppend ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' portals; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_PtlLEAppend=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_PtlLEAppend+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_PtlLEAppend+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_PtlLEAppend=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
+$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
+ac_res=$ac_cv_search_PtlLEAppend
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -118553,22 +119656,22 @@
fi
if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ unset ac_cv_search_PtlLEAppend
fi
else
# libdir was not specified - go through search path
- opal_check_package_libdir=""
+ opal_check_package_libdir="$ompi_check_portals4_dir"
if test "$opal_check_package_libdir" = "" || \
test "$opal_check_package_libdir" = "/usr" || \
test "$opal_check_package_libdir" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
+$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
+if ${ac_cv_search_PtlLEAppend+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -118581,42 +119684,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char PtlLEAppend ();
int
main ()
{
-return ucp_cleanup ();
+return PtlLEAppend ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' portals; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_PtlLEAppend=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_PtlLEAppend+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_PtlLEAppend+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_PtlLEAppend=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
+$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
+ac_res=$ac_cv_search_PtlLEAppend
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -118626,21 +119729,21 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ unset ac_cv_search_PtlLEAppend
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
+ opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
+$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
+if ${ac_cv_search_PtlLEAppend+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -118653,42 +119756,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char PtlLEAppend ();
int
main ()
{
-return ucp_cleanup ();
+return PtlLEAppend ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' portals; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_PtlLEAppend=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_PtlLEAppend+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_PtlLEAppend+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_PtlLEAppend=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
+$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
+ac_res=$ac_cv_search_PtlLEAppend
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -118698,22 +119801,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ unset ac_cv_search_PtlLEAppend
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
+ opal_check_portals4_LDFLAGS="$opal_check_portals4_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing PtlLEAppend" >&5
+$as_echo_n "checking for library containing PtlLEAppend... " >&6; }
+if ${ac_cv_search_PtlLEAppend+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -118726,42 +119829,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char ucp_cleanup ();
+char PtlLEAppend ();
int
main ()
{
-return ucp_cleanup ();
+return PtlLEAppend ();
;
return 0;
}
_ACEOF
-for ac_lib in '' ucp; do
+for ac_lib in '' portals; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ ac_cv_search_PtlLEAppend=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if ${ac_cv_search_PtlLEAppend+:} false; then :
break
fi
done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+if ${ac_cv_search_PtlLEAppend+:} false; then :
else
- ac_cv_search_ucp_cleanup=no
+ ac_cv_search_PtlLEAppend=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_PtlLEAppend" >&5
+$as_echo "$ac_cv_search_PtlLEAppend" >&6; }
+ac_res=$ac_cv_search_PtlLEAppend
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -118771,9 +119874,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ unset ac_cv_search_PtlLEAppend
fi
fi
fi
@@ -118870,12 +119973,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
-$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libportals requires libnl v1 or v3" >&5
+$as_echo_n "checking if libportals requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void ucp_cleanup (void);
+extern void PtlLEAppend (void);
int main(int argc, char *argv[]) {
- ucp_cleanup ();
+ PtlLEAppend ();
return 0;
}
EOF
@@ -118887,14 +119990,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:118890: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
+echo "configure:119993: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lportals $LIBS $opal_check_portals4_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lportals $LIBS $opal_check_portals4_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:118897: \$? = $opal_status" >&5
+ echo "configure:120000: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -118914,8 +120017,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib portals" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib portals" >&2;}
fi
@@ -118929,15 +120032,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libportals links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libportals links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
libnl_sane=0
fi
@@ -118946,19 +120049,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas portals requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas portals requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs ucp"
+ opal_libnlv1_libs="$opal_libnlv1_libs portals"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -119037,19 +120140,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libportals requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libportals requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libportals (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libportals (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libportals." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libportals." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs ucp"
+ opal_libnlv3_libs="$opal_libnlv3_libs portals"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -119190,11 +120293,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ucp_cleanup" != "no" &&
- test "$ac_cv_search_ucp_cleanup" != "none required"; then :
- ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
+ if test "$ac_cv_search_PtlLEAppend" != "no" &&
+ test "$ac_cv_search_PtlLEAppend" != "none required"; then :
+ opal_check_portals4_LIBS="$ac_cv_search_PtlLEAppend "
else
- ompi_check_ucx_LIBS="-luct -lucm -lucs"
+ opal_check_portals4_LIBS=""
fi
opal_check_package_happy="yes"
else
@@ -119229,81 +120332,83 @@
if test "$opal_check_package_happy" = "yes"; then :
- ompi_check_ucx_happy="yes"
+ ompi_check_portals4_happy="yes"
else
- ompi_check_ucx_CPPFLAGS="$opal_check_package_ompi_check_ucx_orig_CPPFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- ompi_check_ucx_LIBS="$opal_check_package_ompi_check_ucx_orig_LIBS"
- ompi_check_ucx_happy="no"
+ opal_check_portals4_CPPFLAGS="$opal_check_package_opal_check_portals4_orig_CPPFLAGS"
+ opal_check_portals4_LDFLAGS="$opal_check_package_opal_check_portals4_orig_LDFLAGS"
+ opal_check_portals4_LIBS="$opal_check_package_opal_check_portals4_orig_LIBS"
+ ompi_check_portals4_happy="no"
fi
- CPPFLAGS="$opal_check_package_ompi_check_ucx_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- LIBS="$opal_check_package_ompi_check_ucx_save_LIBS"
-
- if test "$ompi_check_ucx_happy" = yes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for UCX version compatibility" >&5
-$as_echo_n "checking for UCX version compatibility... " >&6; }
-
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include
-int
-main ()
-{
+ CPPFLAGS="$opal_check_package_opal_check_portals4_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_opal_check_portals4_save_LDFLAGS"
+ LIBS="$opal_check_package_opal_check_portals4_save_LIBS"
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ompi_check_ucx_happy="yes"
else
- ompi_check_ucx_happy="no"
+ ompi_check_portals4_happy="no"
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_check_ucx_happy" >&5
-$as_echo "$ompi_check_ucx_happy" >&6; }
-fi
- if test "$ompi_check_ucx_happy" = "no"; then :
- ompi_check_ucx_dir=/opt/ucx
-fi
+ CPPFLAGS="$ompi_check_portals4_btl_portals4_save_CPPFLAGS"
+ LDFLAGS="$ompi_check_portals4_btl_portals4_save_LDFLAGS"
+ LIBS="$ompi_check_portals4_btl_portals4_save_LIBS"
+
+ max_md_size=0
+
+# Check whether --with-portals4-max-md-size was given.
+if test "${with_portals4_max_md_size+set}" = set; then :
+ withval=$with_portals4_max_md_size;
fi
- if test "$ompi_check_ucx_happy" != yes; then :
- if test -n "$with_ucx_libdir"; then :
- ompi_check_ucx_libdir="$with_ucx_libdir"
-else
- files=`ls $ompi_check_ucx_dir/lib64/libucp.* 2> /dev/null | wc -l`
- if test "$files" -gt 0; then :
- ompi_check_ucx_libdir=$ompi_check_ucx_dir/lib64
+
+ if test "$with_portals4_max_md_size" = "yes" || test "$with_portals4_max_md_size" = "no"; then :
+ as_fn_error $? "--with-portals4-max-md-size requires an integer argument" "$LINENO" 5
else
- ompi_check_ucx_libdir=$ompi_check_ucx_dir/lib
+ if test -n "$with_portals4_max_md_size"; then :
+ max_md_size="$with_portals4_max_md_size"
fi
fi
- ompi_check_ucx_btl_uct_save_CPPFLAGS="$CPPFLAGS"
- ompi_check_ucx_btl_uct_save_LDFLAGS="$LDFLAGS"
- ompi_check_ucx_btl_uct_save_LIBS="$LIBS"
-
+cat >>confdefs.h <<_ACEOF
+#define OPAL_PORTALS4_MAX_MD_SIZE $max_md_size
+_ACEOF
- opal_check_package_ompi_check_ucx_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_ompi_check_ucx_save_LDFLAGS="$LDFLAGS"
- opal_check_package_ompi_check_ucx_save_LIBS="$LIBS"
- opal_check_package_ompi_check_ucx_orig_CPPFLAGS="$ompi_check_ucx_CPPFLAGS"
- opal_check_package_ompi_check_ucx_orig_LDFLAGS="$ompi_check_ucx_LDFLAGS"
- opal_check_package_ompi_check_ucx_orig_LIBS="$ompi_check_ucx_LIBS"
+ max_va_size=0
+# Check whether --with-portals4-max-va-size was given.
+if test "${with_portals4_max_va_size+set}" = set; then :
+ withval=$with_portals4_max_va_size;
+fi
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ if test "$with_portals4_max_va_size" = "yes" || test "$with_portals4_max_va_size" = "no"; then :
+ as_fn_error $? "--with-portals4-max-va-size requires an integer argument" "$LINENO" 5
+else
+ if test -n "$with_portals4_max_va_size"; then :
+ max_va_size="$with_portals4_max_va_size"
+fi
+fi
+cat >>confdefs.h <<_ACEOF
+#define OPAL_PORTALS4_MAX_VA_SIZE $max_va_size
+_ACEOF
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
+ if (test $max_md_size -eq 0 && test $max_va_size -ne 0 ) || (test $max_md_size -ne 0 && test $max_va_size -eq 0 ); then :
+ as_fn_error $? "If either --with-portals4-max-md-size or --with-portals4-max-va-size is set, both must be set." "$LINENO" 5
+fi
+ if test $max_md_size -ge $max_va_size; then :
+ max_md_size=0
+ max_va_size=0
+fi
+ if test $max_md_size -ne 0 && test $max_va_size -ne 0; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: Portals 4 address space size: $max_md_size, $max_va_size" >&5
+$as_echo "$as_me: Portals 4 address space size: $max_md_size, $max_va_size" >&6;}
+fi
+
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
opal_scope_index=1
fi
@@ -119311,7 +120416,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in dir_prefix; do
+ for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -119330,7 +120435,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
+ opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
eval $opal_str
unset opal_str
@@ -119338,357 +120443,177 @@
opal_scope_index=`expr $opal_scope_index + 1`
- # so this sucks, but there's no way to get through the progression
- # of header includes without killing off the cache variable and trying
- # again...
- unset ac_cv_header_ucp_api_ucp_h
-
- # get rid of the trailing slash(es)
- dir_prefix=$(echo $ompi_check_ucx_dir | sed -e 'sX/*$XXg')
- opal_check_package_header_happy="no"
- if test "$dir_prefix" = "/usr" || \
- test "$dir_prefix" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
-$as_echo "looking for header without includes" >&6; }
- for ac_header in ucp/api/ucp.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_UCP_API_UCP_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
-fi
+ ompi_summary_section=$(echo Transports | tr ' ' '_')
+ ompi_summary_line="Portals4: $ompi_check_portals4_happy"
+ ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
-done
+ if test -z "$ompi_summary_section_current" ; then
+ if test -z "$ompi_summary_sections" ; then
+ ompi_summary_sections=$ompi_summary_section
+ else
+ ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
+ fi
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
+ else
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
+ fi
- if test "$opal_check_package_header_happy" = "no"; then :
- # no go on the as is - reset the cache and try again
- unset ac_cv_header_ucp_api_ucp_h
-fi
-fi
- if test "$opal_check_package_header_happy" = "no"; then :
- if test "$dir_prefix" != ""; then :
- ompi_check_ucx_CPPFLAGS="$ompi_check_ucx_CPPFLAGS -I$dir_prefix/include"
- CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
-fi
- for ac_header in ucp/api/ucp.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
-if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_UCP_API_UCP_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
-fi
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
-done
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- if test "$opal_check_package_header_happy" = "yes"; then :
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ fi
- # see comment above
- unset ac_cv_search_ucp_cleanup
- opal_check_package_lib_happy="no"
- if test "$ompi_check_ucx_libdir" != ""; then :
- # libdir was specified - search only there
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$ompi_check_ucx_libdir"
- LDFLAGS="$LDFLAGS -L$ompi_check_ucx_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
+ if test "$ompi_check_portals4_happy" = "yes"; then :
+ btl_portals4_LDFLAGS="$btl_portals4_LDFLAGS $opal_check_portals4_LDFLAGS"
+ btl_portals4_CPPFLAGS="$btl_portals4_CPPFLAGS $opal_check_portals4_CPPFLAGS"
+ btl_portals4_LIBS="$btl_portals4_LIBS $opal_check_portals4_LIBS"
+ btl_portals4_happy="yes"
else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
+ if test ! -z "$with_portals4" && test "$with_portals4" != "no"; then :
+ as_fn_error $? "Portals4 support requested but not found. Aborting" "$LINENO" 5
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
+ btl_portals4_happy="no"
fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+
+ if test "$btl_portals4_happy" = "yes"; then :
+ btl_portals4_WRAPPER_EXTRA_LDFLAGS="$btl_portals4_LDFLAGS"
+ btl_portals4_WRAPPER_EXTRA_LIBS="$btl_portals4_LIBS"
+ should_build=$should_build
else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ should_build=0
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
+
+ # need to propogate CPPFLAGS to all of OPAL
+ if test "$DIRECT_btl" = "portals4"; then :
+ CPPFLAGS="$CPPFLAGS $btl_portals4_CPPFLAGS"
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
+ # Check whether --enable-btl-portals4-flow-control was given.
+if test "${enable_btl_portals4_flow_control+set}" = set; then :
+ enableval=$enable_btl_portals4_flow_control;
fi
-else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$ompi_check_ucx_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable flow control" >&5
+$as_echo_n "checking whether to enable flow control... " >&6; }
+ if test "$enable_btl_portals4_flow_control" != "no"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ btl_portals4_flow_control_enabled=1
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ btl_portals4_flow_control_enabled=0
+ fi
+
+cat >>confdefs.h <<_ACEOF
+#define OPAL_BTL_PORTALS4_FLOW_CONTROL $btl_portals4_flow_control_enabled
_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if test "$btl_portals4_flow_control_enabled" = "1"; then
+ OPAL_BTL_PORTALS4_FLOW_CONTROL_TRUE=
+ OPAL_BTL_PORTALS4_FLOW_CONTROL_FALSE='#'
else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
+ OPAL_BTL_PORTALS4_FLOW_CONTROL_TRUE='#'
+ OPAL_BTL_PORTALS4_FLOW_CONTROL_FALSE=
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
-$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ # substitute in the things needed to build portals4
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
-else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
-$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ if test "$should_build" = "1"; then :
-else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
-fi
-fi
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # libnl v1 and libnl3 are known to *not* coexist
- # harmoniously in the same process. Check to see if this
- # new package will introduce such a conflict.
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/btl/portals4/post_configure.sh"
+
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components portals4"
+
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components portals4"
+ else
+ if test "btl" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/btl/portals4/lib${OPAL_LIB_PREFIX}mca_btl_portals4.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/btl/portals4/libmca_btl_portals4.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_btl_portals4_component;" >> $outfile.extern
+ echo " &mca_btl_portals4_component, " >> $outfile.struct
+ static_components="$static_components portals4"
+ fi
+
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:portals4 can compile" >&5
+$as_echo_n "checking if MCA component btl:portals4 can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_btl" = "portals4" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** btl component portals4 was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_btl" = "portals4" ; then
+as_fn_error $? "*** btl component portals4 was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ if test "$btl_portals4_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -119701,7 +120626,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_libnl_sane; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -119720,16 +120645,56 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
- opal_libnl_sane=1
- case $host in
- *linux*)
+
+ for arg in $btl_portals4_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
+else
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+else
@@ -119742,7 +120707,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -119761,7 +120726,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -119769,276 +120734,187 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
-$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
- cat > conftest_c.$ac_ext << EOF
-extern void ucp_cleanup (void);
-int main(int argc, char *argv[]) {
- ucp_cleanup ();
- return 0;
-}
-EOF
-
- this_requires_v1=0
- this_requires_v3=0
- result_msg=
-
-# 1 is the command
-# 2 is actions to do if success
-# 3 is actions to do if fail
-echo "configure:119796: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
-opal_status=$?
-
-# 1 is the message
-# 2 is whether to put a prefix or not
-if test -n "1"; then
- echo "configure:119803: \$? = $opal_status" >&5
-else
- echo \$? = $opal_status >&5
-fi
-if test "$opal_status" = "0"; then
- unset opal_status
- ldd_output=`ldd conftest`
- if echo $ldd_output | grep -q libnl-3.so; then :
- this_requires_v3=1
- result_msg="v3"
+ for arg in $btl_portals4_WRAPPER_EXTRA_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
- if echo $ldd_output | grep -q libnl.so; then :
- this_requires_v1=1
- result_msg="v1 $result_msg"
+ done
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
-$as_echo "$result_msg" >&6; }
-
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
-
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
-
- # Assume that our configuration is sane; this may get reset below
- libnl_sane=1
-
- # Note: in all the checks below, only add this library to the list
- # of libraries (for v1 or v3 as relevant) if we do not fail.
- # I.e., assume that a higher level will refuse to use this library
- # if we return failure.
-
- # Does this library require both v1 and v3? If so, fail.
- if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
fi
+ done
- # Does this library require v1, but some prior library required
- # v3? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
- if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv1_libs="$opal_libnlv1_libs ucp"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv1_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv1_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- # Check the ending condition
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- opal_done="`expr $opal_i \>= $opal_count`"
- # Increment the counter
+fi
+ if test "$btl_portals4_WRAPPER_EXTRA_LIBS" = ""; then :
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-# Done; do the assignment
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-# Clean up
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=1
+ for arg in $btl_portals4_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
+ done
fi
-
- # Does this library require v3, but some prior library required
- # v1? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
- if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
else
- opal_libnlv3_libs="$opal_libnlv3_libs ucp"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv3_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv3_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
- # Check the ending condition
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
- opal_done="`expr $opal_i \>= $opal_count`"
- # Increment the counter
+else
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-# Done; do the assignment
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-# Clean up
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=3
+ for arg in $btl_portals4_WRAPPER_EXTRA_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
+ done
fi
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- rm -f conftest conftest_c.$ac_ext
-
- opal_libnl_sane=$libnl_sane
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
# Unwind the index
@@ -120062,10 +120938,75 @@
done
- ;;
- esac
+fi
+
+ fi
+
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ if test "$btl_portals4_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=0
+ if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
+ if test "$with_devel_headers" = "yes"; then :
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $btl_portals4_WRAPPER_EXTRA_CPPFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_cppflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_cppflags"; then :
+ mca_wrapper_extra_cppflags=$arg
+else
+ mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
+fi
+fi
+ done
- opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -120088,332 +121029,246 @@
done
- if test $opal_check_package_libnl_check_ok -eq 0; then :
- opal_check_package_lib_happy=no
-fi
-
fi
-
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ucp_cleanup" != "no" &&
- test "$ac_cv_search_ucp_cleanup" != "none required"; then :
- ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
else
- ompi_check_ucx_LIBS="-luct -lucm -lucs"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_portals4_WRAPPER_EXTRA_CPPFLAGS ($btl_portals4_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring btl_portals4_WRAPPER_EXTRA_CPPFLAGS ($btl_portals4_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
- opal_check_package_happy="yes"
-else
- opal_check_package_happy="no"
fi
-
else
- opal_check_package_happy="no"
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:portals4 can compile" >&5
+$as_echo_n "checking if MCA component btl:portals4 can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_btl" = "portals4" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"portals4\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"portals4\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ if test ! -z "$DIRECT_btl" ; then
+ if test "$DIRECT_btl" = "portals4" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"portals4\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"portals4\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ fi
+
+ # add component to all component list
+ all_components="$all_components portals4"
fi
-else
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
- # see comment above
- unset ac_cv_search_ucp_cleanup
- opal_check_package_lib_happy="no"
- if test "$ompi_check_ucx_libdir" != ""; then :
- # libdir was specified - search only there
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$ompi_check_ucx_libdir"
- LDFLAGS="$LDFLAGS -L$ompi_check_ucx_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
+ # set the AM_CONDITIONAL on how we should build
+ if test "$compile_mode" = "dso"; then :
+ BUILD_opal_btl_portals4_DSO=1
else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
+ BUILD_opal_btl_portals4_DSO=0
fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
-
+ if test "$BUILD_opal_btl_portals4_DSO" = "1"; then
+ MCA_BUILD_opal_btl_portals4_DSO_TRUE=
+ MCA_BUILD_opal_btl_portals4_DSO_FALSE='#'
else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ MCA_BUILD_opal_btl_portals4_DSO_TRUE='#'
+ MCA_BUILD_opal_btl_portals4_DSO_FALSE=
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+
+
+ if test "$should_build" = "1"; then :
+ components_last_result=1
else
- opal_check_package_lib_happy="no"
+ components_last_result=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$ompi_check_ucx_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ unset compile_mode
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
-else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
-$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ opal_show_subsubsubtitle "MCA component btl:sm (m4 configuration macro)"
-else
- ac_cv_search_ucp_cleanup=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
-fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
-$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
-$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
-if ${ac_cv_search_ucp_cleanup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char ucp_cleanup ();
-int
-main ()
-{
-return ucp_cleanup ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' ucp; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_ucp_cleanup=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_ucp_cleanup+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_ucp_cleanup+:} false; then :
+ component_path="$srcdir/opal/mca/btl/sm"
+ want_component=0
-else
- ac_cv_search_ucp_cleanup=no
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
+ fi
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_btl" ; then
+ if test "$DIRECT_btl" = "sm" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
+ fi
+ fi
+
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_btl" = "1"; then :
+ want_component=0
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+ if test "$DISABLE_btl_sm" = "1"; then :
+ want_component=0
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
-$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
-ac_res=$ac_cv_search_ucp_cleanup
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+
+ if test "$want_component" = "1"; then :
+ should_build=$components_looking_for_succeed
else
- opal_check_package_lib_happy="no"
+ should_build=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- unset ac_cv_search_ucp_cleanup
-fi
-fi
-fi
-fi
+ # Allow the component to override the build mode if it really wants to.
+ # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # libnl v1 and libnl3 are known to *not* coexist
- # harmoniously in the same process. Check to see if this
- # new package will introduce such a conflict.
+ SHARED_FRAMEWORK="$DSO_btl"
+ SHARED_COMPONENT="$DSO_btl_sm"
+
+ STATIC_FRAMEWORK="$STATIC_btl"
+ STATIC_COMPONENT="$STATIC_btl_sm"
+
+ shared_mode_override=static
+
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
+ else
+ compile_mode="static"
+ fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:sm compile mode" >&5
+$as_echo_n "checking for MCA component btl:sm compile mode... " >&6; }
+ if test "$DIRECT_btl" = "sm" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
+ fi
+
+
+ # try to configure the component
+
+ ac_config_files="$ac_config_files opal/mca/btl/sm/Makefile"
+
+
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+
+ if test "$should_build" = "1"; then :
+
+
+
+ # See if it dropped an output file for us to pick up some
+ # shell variables in.
+ infile="$srcdir/opal/mca/btl/sm/post_configure.sh"
+
+ # Add this subdir to the mast list of all MCA component subdirs
+ all_components="$all_components sm"
+
+ if test "$compile_mode" = "dso" ; then
+ dso_components="$dso_components sm"
+ else
+ if test "btl" = "common"; then
+ # Static libraries in "common" frameworks are installed, and
+ # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
+ # set.
+ static_ltlibs="mca/btl/sm/lib${OPAL_LIB_PREFIX}mca_btl_sm.la $static_ltlibs"
+ else
+ # Other frameworks do not have to obey the
+ # $FRAMEWORK_LIB_PREFIX prefix.
+ static_ltlibs="mca/btl/sm/libmca_btl_sm.la $static_ltlibs"
+ fi
+ echo "extern const mca_base_component_t mca_btl_sm_component;" >> $outfile.extern
+ echo " &mca_btl_sm_component, " >> $outfile.struct
+ static_components="$static_components sm"
+ fi
+
+ # Output pretty results
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:sm can compile" >&5
+$as_echo_n "checking if MCA component btl:sm can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+ if test -f $infile; then
+ # check for direct call header to include. This will be
+ # AC_SUBSTed later.
+ if test "$DIRECT_btl" = "sm" ; then
+ if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
+ line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
+ str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
+ eval $str
+ else
+as_fn_error $? "*** btl component sm was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+ else
+ # were we supposed to have found something in the
+ # post_configure.sh, but the file didn't exist?
+ if test "$DIRECT_btl" = "sm" ; then
+as_fn_error $? "*** btl component sm was supposed to be direct-called, but
+*** does not appear to support direct calling.
+*** Aborting" "$LINENO" 5
+ fi
+ fi
+
+ # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
+ # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
+ # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
+ # component didn't have it's own configure script (in which case,
+ # we know it didn't set LDFLAGS and LIBS because it can't) Don't
+ # have to do this if the component is building dynamically,
+ # because it will link against these (without a dependency from
+ # libmpi.so to these flags)
+ if test "$compile_mode" = "static"; then
+ if test "$btl_sm_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -120426,7 +121281,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_libnl_sane; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -120445,16 +121300,56 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
- opal_libnl_sane=1
- case $host in
- *linux*)
+
+ for arg in $btl_sm_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
+else
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+fi
+fi
+ done
+
+
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+else
@@ -120467,7 +121362,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ for opal_var in opal_tmp opal_append; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -120486,7 +121381,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
eval $opal_str
unset opal_str
@@ -120494,276 +121389,106 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
-$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
- cat > conftest_c.$ac_ext << EOF
-extern void ucp_cleanup (void);
-int main(int argc, char *argv[]) {
- ucp_cleanup ();
- return 0;
-}
-EOF
-
- this_requires_v1=0
- this_requires_v3=0
- result_msg=
-
-# 1 is the command
-# 2 is actions to do if success
-# 3 is actions to do if fail
-echo "configure:120521: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
-opal_status=$?
-
-# 1 is the message
-# 2 is whether to put a prefix or not
-if test -n "1"; then
- echo "configure:120528: \$? = $opal_status" >&5
-else
- echo \$? = $opal_status >&5
-fi
-if test "$opal_status" = "0"; then
- unset opal_status
- ldd_output=`ldd conftest`
- if echo $ldd_output | grep -q libnl-3.so; then :
- this_requires_v3=1
- result_msg="v3"
+ for arg in $btl_sm_WRAPPER_EXTRA_LDFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_ldflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
- if echo $ldd_output | grep -q libnl.so; then :
- this_requires_v1=1
- result_msg="v1 $result_msg"
+ done
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
-$as_echo "$result_msg" >&6; }
-
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_ldflags"; then :
+ mca_wrapper_extra_ldflags=$arg
else
- unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
-
+ mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
fi
-
- # Assume that our configuration is sane; this may get reset below
- libnl_sane=1
-
- # Note: in all the checks below, only add this library to the list
- # of libraries (for v1 or v3 as relevant) if we do not fail.
- # I.e., assume that a higher level will refuse to use this library
- # if we return failure.
-
- # Does this library require both v1 and v3? If so, fail.
- if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
fi
-
- # Does this library require v1, but some prior library required
- # v3? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
- if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv1_libs="$opal_libnlv1_libs ucp"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv1_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv1_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
-
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
-
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
-
- # Check the ending condition
-
- opal_done="`expr $opal_i \>= $opal_count`"
-
- # Increment the counter
-
- opal_i="`expr $opal_i + 1`"
done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
-
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
-
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
-# Done; do the assignment
-
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
-# Clean up
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=1
-fi
fi
+ if test "$btl_sm_WRAPPER_EXTRA_LIBS" = ""; then :
- # Does this library require v3, but some prior library required
- # v1? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
- if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv3_libs="$opal_libnlv3_libs ucp"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv3_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv3_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
-
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
-
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
-
- # Check the ending condition
-
- opal_done="`expr $opal_i \>= $opal_count`"
-
- # Increment the counter
-
- opal_i="`expr $opal_i + 1`"
- done
- # If we didn't find the token, add it to the "array"
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
-# Done; do the assignment
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
-# Clean up
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=3
+ for arg in $btl_sm_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
-
+ done
fi
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- rm -f conftest conftest_c.$ac_ext
-
- opal_libnl_sane=$libnl_sane
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
# Unwind the index
@@ -120787,10 +121512,65 @@
done
- ;;
- esac
+else
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $btl_sm_WRAPPER_EXTRA_LIBS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_libs}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
+fi
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_libs"; then :
+ mca_wrapper_extra_libs=$arg
+else
+ mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+fi
+fi
+ done
- opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -120813,28 +121593,74 @@
done
- if test $opal_check_package_libnl_check_ok -eq 0; then :
- opal_check_package_lib_happy=no
fi
-fi
+ fi
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_ucp_cleanup" != "no" &&
- test "$ac_cv_search_ucp_cleanup" != "none required"; then :
- ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
-else
- ompi_check_ucx_LIBS="-luct -lucm -lucs"
+ # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
+ # component can never be used in a STOP_AT_FIRST framework, we
+ # don't have to implement the else clause in the literal check...
+ if test "$btl_sm_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ stop_at_first=0
+ if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
+ if test "$with_devel_headers" = "yes"; then :
+
+
+
+ # Is the private index set? If not, set it.
+ if test "x$opal_scope_index" = "x"; then
+ opal_scope_index=1
+ fi
+
+ # First, check to see if any of these variables are already set.
+ # This is a simple sanity check to ensure we're not already
+ # overwriting pre-existing variables (that have a non-empty
+ # value). It's not a perfect check, but at least it's something.
+ for opal_var in opal_tmp opal_append; do
+ opal_str="opal_str=\"\$$opal_var\""
+ eval $opal_str
+
+ if test "x$opal_str" != "x"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
+$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
+$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ done
+
+ # Ok, we passed the simple sanity check. Save all these names so
+ # that we can unset them at the end of the scope.
+ opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ eval $opal_str
+ unset opal_str
+
+ env | grep opal_scope
+ opal_scope_index=`expr $opal_scope_index + 1`
+
+
+ for arg in $btl_sm_WRAPPER_EXTRA_CPPFLAGS; do
+ opal_tmp=`echo $arg | cut -c1-2`
+ opal_append=1
+ if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
+ for val in ${mca_wrapper_extra_cppflags}; do
+ if test "x$val" = "x$arg"; then :
+ opal_append=0
fi
- opal_check_package_happy="yes"
+ done
+fi
+ if test "$opal_append" = "1"; then :
+ if test -z "$mca_wrapper_extra_cppflags"; then :
+ mca_wrapper_extra_cppflags=$arg
else
- opal_check_package_happy="no"
+ mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
fi
-
-
fi
- unset opal_check_package_header_happy
+ done
# Unwind the index
@@ -120858,571 +121684,185 @@
done
-
- if test "$opal_check_package_happy" = "yes"; then :
- ompi_check_ucx_happy="yes"
+fi
else
- ompi_check_ucx_CPPFLAGS="$opal_check_package_ompi_check_ucx_orig_CPPFLAGS"
- ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
- ompi_check_ucx_LIBS="$opal_check_package_ompi_check_ucx_orig_LIBS"
- ompi_check_ucx_happy="no"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_sm_WRAPPER_EXTRA_CPPFLAGS ($btl_sm_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring btl_sm_WRAPPER_EXTRA_CPPFLAGS ($btl_sm_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+fi
fi
- CPPFLAGS="$opal_check_package_ompi_check_ucx_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
- LIBS="$opal_check_package_ompi_check_ucx_save_LIBS"
-
+else
- CPPFLAGS="$ompi_check_ucx_btl_uct_save_CPPFLAGS"
- LDFLAGS="$ompi_check_ucx_btl_uct_save_LDFLAGS"
- LIBS="$ompi_check_ucx_btl_uct_save_LIBS"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:sm can compile" >&5
+$as_echo_n "checking if MCA component btl:sm can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
- if test "$ompi_check_ucx_happy" = yes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for UCX version compatibility" >&5
-$as_echo_n "checking for UCX version compatibility... " >&6; }
+ # If this component was requested as the default for this
+ # type, then abort.
+ if test "$with_btl" = "sm" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"sm\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"sm\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- old_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include
-int
-main ()
-{
+ if test ! -z "$DIRECT_btl" ; then
+ if test "$DIRECT_btl" = "sm" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"sm\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"sm\" failed to configure properly" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
+$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
+ fi
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ompi_check_ucx_happy="yes"
-else
- ompi_check_ucx_happy="no"
+ # add component to all component list
+ all_components="$all_components sm"
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_check_ucx_happy" >&5
-$as_echo "$ompi_check_ucx_happy" >&6; }
- CPPFLAGS=$old_CPPFLAGS
-fi
-fi
- old_CPPFLAGS="$CPPFLAGS"
- if test -n "$ompi_check_ucx_dir"; then :
- CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"
-fi
- ac_fn_c_check_decl "$LINENO" "ucp_tag_send_nbr" "ac_cv_have_decl_ucp_tag_send_nbr" "#include
-"
-if test "x$ac_cv_have_decl_ucp_tag_send_nbr" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_TAG_SEND_NBR $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
-
-$as_echo "#define HAVE_UCP_TAG_SEND_NBR 1" >>confdefs.h
-
-fi
-
- ac_fn_c_check_decl "$LINENO" "ucp_ep_flush_nb" "ac_cv_have_decl_ucp_ep_flush_nb" "#include
-"
-if test "x$ac_cv_have_decl_ucp_ep_flush_nb" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_EP_FLUSH_NB $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ucp_worker_flush_nb" "ac_cv_have_decl_ucp_worker_flush_nb" "#include
-"
-if test "x$ac_cv_have_decl_ucp_worker_flush_nb" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_WORKER_FLUSH_NB $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ucp_request_check_status" "ac_cv_have_decl_ucp_request_check_status" "#include
-"
-if test "x$ac_cv_have_decl_ucp_request_check_status" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_REQUEST_CHECK_STATUS $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ucp_put_nb" "ac_cv_have_decl_ucp_put_nb" "#include
-"
-if test "x$ac_cv_have_decl_ucp_put_nb" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_PUT_NB $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "ucp_get_nb" "ac_cv_have_decl_ucp_get_nb" "#include
-"
-if test "x$ac_cv_have_decl_ucp_get_nb" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_GET_NB $ac_have_decl
-_ACEOF
-
- ac_fn_c_check_decl "$LINENO" "ucm_test_events" "ac_cv_have_decl_ucm_test_events" "#include
-"
-if test "x$ac_cv_have_decl_ucm_test_events" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCM_TEST_EVENTS $ac_have_decl
-_ACEOF
-
- ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_AND" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_AND" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_AND" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_POST_OP_AND $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_OR" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_OR" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_OR" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_POST_OP_OR $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_XOR" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_XOR" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_XOR" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_POST_OP_XOR $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FAND" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FAND" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FAND" = xyes; then :
- ac_have_decl=1
+ # set the AM_CONDITIONAL on how we should build
+ if test "$compile_mode" = "dso"; then :
+ BUILD_opal_btl_sm_DSO=1
else
- ac_have_decl=0
+ BUILD_opal_btl_sm_DSO=0
fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FAND $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FOR" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FOR" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FOR" = xyes; then :
- ac_have_decl=1
+ if test "$BUILD_opal_btl_sm_DSO" = "1"; then
+ MCA_BUILD_opal_btl_sm_DSO_TRUE=
+ MCA_BUILD_opal_btl_sm_DSO_FALSE='#'
else
- ac_have_decl=0
+ MCA_BUILD_opal_btl_sm_DSO_TRUE='#'
+ MCA_BUILD_opal_btl_sm_DSO_FALSE=
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FOR $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FXOR" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FXOR" "#include
-"
-if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FXOR" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FXOR $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" "ac_cv_have_decl_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" "#include
-"
-if test "x$ac_cv_have_decl_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" = xyes; then :
- ac_have_decl=1
+ if test "$should_build" = "1"; then :
+ components_last_result=1
else
- ac_have_decl=0
+ components_last_result=0
fi
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN $ac_have_decl
-_ACEOF
-
- ac_fn_c_check_decl "$LINENO" "UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" "ac_cv_have_decl_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" "#include
-"
-if test "x$ac_cv_have_decl_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
+ unset compile_mode
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
-$as_echo "#define HAVE_UCP_WORKER_ADDRESS_FLAGS 1" >>confdefs.h
-fi
- CPPFLAGS=$old_CPPFLAGS
+ opal_show_subsubsubtitle "MCA component btl:smcuda (m4 configuration macro)"
+ opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ component_path="$srcdir/opal/mca/btl/smcuda"
+ want_component=0
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ # build if:
+ # - the component type is direct and we are that component
+ # - there is no opal_ignore file
+ # - there is an opal_ignore, but there is an empty opal_unignore
+ # - there is an opal_ignore, but username is in opal_unignore
+ if test -d $component_path ; then
+ # decide if we want the component to be built or not. This
+ # is spread out because some of the logic is a little complex
+ # and test's syntax isn't exactly the greatest. We want to
+ # build the component by default.
+ want_component=1
+ if test -f $component_path/.opal_ignore ; then
+ # If there is an opal_ignore file, don't build
+ # the component. Note that this decision can be
+ # overridden by the unignore logic below.
+ want_component=0
fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="Open UCX: $ompi_check_ucx_happy"
- ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
-
- if test -z "$ompi_summary_section_current" ; then
- if test -z "$ompi_summary_sections" ; then
- ompi_summary_sections=$ompi_summary_section
- else
- ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
+ if test -f $component_path/.opal_unignore ; then
+ # if there is an empty opal_unignore, that is
+ # equivalent to having your userid in the unignore file.
+ # If userid is in the file, unignore the ignore file.
+ if test ! -s $component_path/.opal_unignore ; then
+ want_component=1
+ elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
+ want_component=1
+ fi
+ fi
+ # if this component type is direct and we are not it, we don't want
+ # to be built. Otherwise, we do want to be built.
+ if test ! -z "$DIRECT_btl" ; then
+ if test "$DIRECT_btl" = "smcuda" ; then
+ want_component=1
+ else
+ want_component=0
+ fi
fi
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
- else
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
- fi
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
+ # if we were explicitly disabled, don't build :)
+ if test "$DISABLE_btl" = "1"; then :
+ want_component=0
fi
+ if test "$DISABLE_btl_smcuda" = "1"; then :
+ want_component=0
fi
- if test "$ompi_check_ucx_happy" = "yes"; then :
- btl_uct_CPPFLAGS="$btl_uct_CPPFLAGS $ompi_check_ucx_CPPFLAGS"
- btl_uct_LDFLAGS="$btl_uct_LDFLAGS $ompi_check_ucx_LDFLAGS"
- btl_uct_LIBS="$btl_uct_LIBS $ompi_check_ucx_LIBS"
-
-$as_echo "#define HAVE_UCX 1" >>confdefs.h
-
- btl_uct_happy="yes"
+ if test "$want_component" = "1"; then :
+ should_build=$components_looking_for_succeed
else
- if test ! -z "$with_ucx" && test "$with_ucx" != "no"; then :
- as_fn_error $? "UCX support requested but not found. Aborting" "$LINENO" 5
-fi
-
-$as_echo "#define HAVE_UCX 0" >>confdefs.h
-
- btl_uct_happy="no"
+ should_build=0
fi
+ # Allow the component to override the build mode if it really wants to.
+ # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ SHARED_FRAMEWORK="$DSO_btl"
+ SHARED_COMPONENT="$DSO_btl_smcuda"
+ STATIC_FRAMEWORK="$STATIC_btl"
+ STATIC_COMPONENT="$STATIC_btl_smcuda"
- # Check whether --enable-uct-version-check was given.
-if test "${enable_uct_version_check+set}" = set; then :
- enableval=$enable_uct_version_check;
-fi
+ shared_mode_override=static
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking check uct version" >&5
-$as_echo_n "checking check uct version... " >&6; }
- if test "$enable_uct_version_check" != "no"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+ # Setup for either shared or static
+ if test "$STATIC_FRAMEWORK" = "1" || \
+ test "$STATIC_COMPONENT" = "1" || \
+ test "$STATIC_all" = "1" ; then
+ compile_mode="static"
+ elif test "$shared_mode_override" = "dso" || \
+ test "$SHARED_FRAMEWORK" = "1" || \
+ test "$SHARED_COMPONENT" = "1" || \
+ test "$DSO_all" = "1"; then
+ compile_mode="dso"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
-
- max_allowed_uct_major=1
- max_allowed_uct_minor=7
- if test "$btl_uct_happy" = "yes" && test "$enable_uct_version_check" != "no"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking UCT version compatibility" >&5
-$as_echo_n "checking UCT version compatibility... " >&6; }
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in CPPFLAGS_save; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"CPPFLAGS_save\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
- CPPFLAGS_save="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $btl_uct_CPPFLAGS"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include
- #if (UCT_VERNO_MAJOR > $max_allowed_uct_major)
- #error "UCT MAJOR VERNO > $max_allowed_uct_major"
- #endif
- #if (UCT_VERNO_MINOR > $max_allowed_uct_minor)
- #error "UCT MINOR VERNO > $max_allowed_uct_minor"
- #endif
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: UCT version compatible" >&5
-$as_echo "UCT version compatible" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: UCT version not compatible - need UCX $max_allowed_uct_major.$max_allowed_uct_minor or older" >&5
-$as_echo "UCT version not compatible - need UCX $max_allowed_uct_major.$max_allowed_uct_minor or older" >&6; }
- btl_uct_happy="no"
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
- CPPFLAGS="$CPPFLAGS_save"
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
+ compile_mode="static"
fi
- if test "$btl_uct_happy" = "yes" ; then
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:smcuda compile mode" >&5
+$as_echo_n "checking for MCA component btl:smcuda compile mode... " >&6; }
+ if test "$DIRECT_btl" = "smcuda" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
+$as_echo "$compile_mode - direct" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
+$as_echo "$compile_mode" >&6; }
fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in CPPFLAGS_save; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"CPPFLAGS_save\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- CPPFLAGS_save="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $btl_uct_CPPFLAGS"
-
- ac_fn_c_check_decl "$LINENO" "UCT_PROGRESS_THREAD_SAFE" "ac_cv_have_decl_UCT_PROGRESS_THREAD_SAFE" "#include
-"
-if test "x$ac_cv_have_decl_UCT_PROGRESS_THREAD_SAFE" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCT_PROGRESS_THREAD_SAFE $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "UCT_CB_FLAG_SYNC" "ac_cv_have_decl_UCT_CB_FLAG_SYNC" "#include
-"
-if test "x$ac_cv_have_decl_UCT_CB_FLAG_SYNC" = xyes; then :
- ac_have_decl=1
-else
- ac_have_decl=0
-fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_UCT_CB_FLAG_SYNC $ac_have_decl
-_ACEOF
-
- CPPFLAGS="$CPPFLAGS_save"
+ # try to configure the component
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ ac_config_files="$ac_config_files opal/mca/btl/smcuda/Makefile"
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ # make sure that CUDA-aware checks have been done
- fi
- if test "$btl_uct_happy" = "yes"; then :
+ # Only build if CUDA support is available
+ if test "x$CUDA_SUPPORT" = "x1"; then :
should_build=$should_build
- btl_uct_LIBS="$btl_uct_LIBS -luct"
-
else
should_build=0
fi
- # substitute in the things needed to build ucx
-
-
-
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
@@ -121432,45 +121872,45 @@
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/btl/uct/post_configure.sh"
+ infile="$srcdir/opal/mca/btl/smcuda/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components uct"
+ all_components="$all_components smcuda"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components uct"
+ dso_components="$dso_components smcuda"
else
if test "btl" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/btl/uct/lib${OPAL_LIB_PREFIX}mca_btl_uct.la $static_ltlibs"
+ static_ltlibs="mca/btl/smcuda/lib${OPAL_LIB_PREFIX}mca_btl_smcuda.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/uct/libmca_btl_uct.la $static_ltlibs"
+ static_ltlibs="mca/btl/smcuda/libmca_btl_smcuda.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_btl_uct_component;" >> $outfile.extern
- echo " &mca_btl_uct_component, " >> $outfile.struct
- static_components="$static_components uct"
+ echo "extern const mca_base_component_t mca_btl_smcuda_component;" >> $outfile.extern
+ echo " &mca_btl_smcuda_component, " >> $outfile.struct
+ static_components="$static_components smcuda"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:uct can compile" >&5
-$as_echo_n "checking if MCA component btl:uct can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:smcuda can compile" >&5
+$as_echo_n "checking if MCA component btl:smcuda can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_btl" = "uct" ; then
+ if test "$DIRECT_btl" = "smcuda" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** btl component uct was supposed to be direct-called, but
+as_fn_error $? "*** btl component smcuda was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -121478,8 +121918,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "uct" ; then
-as_fn_error $? "*** btl component uct was supposed to be direct-called, but
+ if test "$DIRECT_btl" = "smcuda" ; then
+as_fn_error $? "*** btl component smcuda was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -121494,7 +121934,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- if test "$btl_uct_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$btl_smcuda_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -121534,7 +121974,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_uct_LDFLAGS; do
+ for arg in $btl_smcuda_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -121615,7 +122055,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_uct_WRAPPER_EXTRA_LDFLAGS; do
+ for arg in $btl_smcuda_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -121657,7 +122097,7 @@
fi
- if test "$btl_uct_WRAPPER_EXTRA_LIBS" = ""; then :
+ if test "$btl_smcuda_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -121697,7 +122137,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_uct_LIBS; do
+ for arg in $btl_smcuda_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -121778,7 +122218,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_uct_WRAPPER_EXTRA_LIBS; do
+ for arg in $btl_smcuda_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -121826,7 +122266,7 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$btl_uct_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ if test "$btl_smcuda_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
stop_at_first=0
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -121869,7 +122309,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_uct_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $btl_smcuda_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -121912,32 +122352,32 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_uct_WRAPPER_EXTRA_CPPFLAGS ($btl_uct_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_uct_WRAPPER_EXTRA_CPPFLAGS ($btl_uct_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_smcuda_WRAPPER_EXTRA_CPPFLAGS ($btl_smcuda_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring btl_smcuda_WRAPPER_EXTRA_CPPFLAGS ($btl_smcuda_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:uct can compile" >&5
-$as_echo_n "checking if MCA component btl:uct can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:smcuda can compile" >&5
+$as_echo_n "checking if MCA component btl:smcuda can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_btl" = "uct" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"uct\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"uct\" failed to configure properly" >&2;}
+ if test "$with_btl" = "smcuda" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"smcuda\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"smcuda\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "uct" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"uct\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"uct\" failed to configure properly" >&2;}
+ if test "$DIRECT_btl" = "smcuda" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"smcuda\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"smcuda\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
@@ -121945,23 +122385,23 @@
fi
# add component to all component list
- all_components="$all_components uct"
+ all_components="$all_components smcuda"
fi
# set the AM_CONDITIONAL on how we should build
if test "$compile_mode" = "dso"; then :
- BUILD_opal_btl_uct_DSO=1
+ BUILD_opal_btl_smcuda_DSO=1
else
- BUILD_opal_btl_uct_DSO=0
+ BUILD_opal_btl_smcuda_DSO=0
fi
- if test "$BUILD_opal_btl_uct_DSO" = "1"; then
- MCA_BUILD_opal_btl_uct_DSO_TRUE=
- MCA_BUILD_opal_btl_uct_DSO_FALSE='#'
+ if test "$BUILD_opal_btl_smcuda_DSO" = "1"; then
+ MCA_BUILD_opal_btl_smcuda_DSO_TRUE=
+ MCA_BUILD_opal_btl_smcuda_DSO_FALSE='#'
else
- MCA_BUILD_opal_btl_uct_DSO_TRUE='#'
- MCA_BUILD_opal_btl_uct_DSO_FALSE=
+ MCA_BUILD_opal_btl_smcuda_DSO_TRUE='#'
+ MCA_BUILD_opal_btl_smcuda_DSO_FALSE=
fi
@@ -121977,13 +122417,13 @@
- opal_show_subsubsubtitle "MCA component btl:ugni (m4 configuration macro)"
+ opal_show_subsubsubtitle "MCA component btl:tcp (m4 configuration macro)"
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- component_path="$srcdir/opal/mca/btl/ugni"
+ component_path="$srcdir/opal/mca/btl/tcp"
want_component=0
# build if:
@@ -122016,7 +122456,7 @@
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "ugni" ; then
+ if test "$DIRECT_btl" = "tcp" ; then
want_component=1
else
want_component=0
@@ -122028,7 +122468,7 @@
if test "$DISABLE_btl" = "1"; then :
want_component=0
fi
- if test "$DISABLE_btl_ugni" = "1"; then :
+ if test "$DISABLE_btl_tcp" = "1"; then :
want_component=0
fi
@@ -122042,10 +122482,10 @@
# It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_ugni"
+ SHARED_COMPONENT="$DSO_btl_tcp"
STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_ugni"
+ STATIC_COMPONENT="$STATIC_btl_tcp"
shared_mode_override=static
@@ -122063,9 +122503,9 @@
compile_mode="static"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:ugni compile mode" >&5
-$as_echo_n "checking for MCA component btl:ugni compile mode... " >&6; }
- if test "$DIRECT_btl" = "ugni" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:tcp compile mode" >&5
+$as_echo_n "checking for MCA component btl:tcp compile mode... " >&6; }
+ if test "$DIRECT_btl" = "tcp" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
$as_echo "$compile_mode - direct" >&6; }
else
@@ -122076,137 +122516,27 @@
# try to configure the component
- ac_config_files="$ac_config_files opal/mca/btl/ugni/Makefile"
-
-
-
- if test -z "$opal_check_ugni_happy" ; then
-
-# Check whether --with-ugni was given.
-if test "${with_ugni+set}" = set; then :
- withval=$with_ugni;
-fi
-
-
- opal_check_ugni_happy="no"
-
- if test "$with_ugni" = "no"; then :
- opal_check_ugni_happy="no"
-else
-
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CRAY_UGNI" >&5
-$as_echo_n "checking for CRAY_UGNI... " >&6; }
-
-if test -n "$CRAY_UGNI_CFLAGS"; then
- pkg_cv_CRAY_UGNI_CFLAGS="$CRAY_UGNI_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cray-ugni\""; } >&5
- ($PKG_CONFIG --exists --print-errors "cray-ugni") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_CRAY_UGNI_CFLAGS=`$PKG_CONFIG --cflags "cray-ugni" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$CRAY_UGNI_LIBS"; then
- pkg_cv_CRAY_UGNI_LIBS="$CRAY_UGNI_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cray-ugni\""; } >&5
- ($PKG_CONFIG --exists --print-errors "cray-ugni") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_CRAY_UGNI_LIBS=`$PKG_CONFIG --libs "cray-ugni" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi
- if test $_pkg_short_errors_supported = yes; then
- CRAY_UGNI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "cray-ugni" 2>&1`
- else
- CRAY_UGNI_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "cray-ugni" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$CRAY_UGNI_PKG_ERRORS" >&5
-
- opal_check_ugni_happy="no"
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- opal_check_ugni_happy="no"
-else
- CRAY_UGNI_CFLAGS=$pkg_cv_CRAY_UGNI_CFLAGS
- CRAY_UGNI_LIBS=$pkg_cv_CRAY_UGNI_LIBS
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- opal_check_ugni_happy="yes"
-fi
-fi
-
- opal_check_ugni_btl_ugni_save_CPPFLAGS="$CPPFLAGS"
- opal_check_ugni_btl_ugni_save_LIBS="$LIBS"
-
- if test "$opal_check_ugni_happy" = "yes" ; then
- CPPFLAGS="$CPPFLAGS $CRAY_UGNI_CFLAGS"
- LIBS="$LIBS $CRAY_UGNI_LIBS"
-# echo "+++++++++++++++++++++++CPPFLAGS",$CPPFLAGS
-# echo "+++++++++++++++++++++++LDFLAGSS",$LDFLAGS
-# echo "+++++++++++++++++++++++1_CPPFLAGS",$btl_ugni_CPPFLAGS
-# echo "+++++++++++++++++++++++1_LDFLAGSS",$btl_ugni_LDFLAGS
-
-# sanity checks
+ ac_config_files="$ac_config_files opal/mca/btl/tcp/Makefile"
- ac_fn_c_check_header_mongrel "$LINENO" "gni_pub.h" "ac_cv_header_gni_pub_h" "$ac_includes_default"
-if test "x$ac_cv_header_gni_pub_h" = xyes; then :
-else
- as_fn_error $? "'gni_pub.h not found.'" "$LINENO" 5
-fi
+ # check for sockaddr_in (a good sign we have TCP)
+ ac_fn_c_check_type "$LINENO" "struct sockaddr_in" "ac_cv_type_struct_sockaddr_in" "$ac_includes_default
+#ifdef HAVE_NETINET_IN_H
+#include
+#endif
+"
+if test "x$ac_cv_type_struct_sockaddr_in" = xyes; then :
- for ac_func in GNI_GetJobResInfo
-do :
- ac_fn_c_check_func "$LINENO" "GNI_GetJobResInfo" "ac_cv_func_GNI_GetJobResInfo"
-if test "x$ac_cv_func_GNI_GetJobResInfo" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_GNI_GETJOBRESINFO 1
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_SOCKADDR_IN 1
_ACEOF
-fi
-done
-
-
- CPPFLAGS="$opal_check_ugni_btl_ugni_save_CPPFLAGS"
- LIBS="$opal_check_ugni_btl_ugni_save_LIBS"
- fi
-
- if test "$opal_check_ugni_happy" = "yes" && test "$enable_progress_threads" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: GNI driver does not currently support progress threads. Disabling." >&5
-$as_echo "$as_me: WARNING: GNI driver does not currently support progress threads. Disabling." >&2;}
- opal_check_ugni_happy="no"
+opal_btl_tcp_happy=yes
+ should_build=$should_build
+else
+ opal_btl_tcp_happy=no
+ should_build=0
fi
@@ -122249,7 +122579,7 @@
ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="Cray uGNI (Gemini/Aries): $opal_check_ugni_happy"
+ ompi_summary_line="TCP: $opal_btl_tcp_happy"
ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
if test -z "$ompi_summary_section_current" ; then
@@ -122285,31 +122615,6 @@
done
- fi
-
- if test "$opal_check_ugni_happy" = "yes"; then :
- btl_ugni_CPPFLAGS="$btl_ugni_CPPFLAGS $CRAY_UGNI_CFLAGS"
- btl_ugni_LIBS="$btl_ugni_LIBS $CRAY_UGNI_LIBS"
- btl_ugni_happy="yes"
-else
- if test ! -z "$with_ugni" && test "$with_ugni" != "no"; then :
- as_fn_error $? "GNI support requested but not found. Cannot continue." "$LINENO" 5
-fi
- btl_ugni_happy="no"
-fi
-
-
-
- if test "$btl_ugni_happy" = "yes"; then :
- should_build=$should_build
-else
- should_build=0
-fi
-
- # substitute in the things needed to build ugni
-
-
-
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
@@ -122319,45 +122624,45 @@
# See if it dropped an output file for us to pick up some
# shell variables in.
- infile="$srcdir/opal/mca/btl/ugni/post_configure.sh"
+ infile="$srcdir/opal/mca/btl/tcp/post_configure.sh"
# Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components ugni"
+ all_components="$all_components tcp"
if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components ugni"
+ dso_components="$dso_components tcp"
else
if test "btl" = "common"; then
# Static libraries in "common" frameworks are installed, and
# therefore must obey the $FRAMEWORK_LIB_PREFIX that was
# set.
- static_ltlibs="mca/btl/ugni/lib${OPAL_LIB_PREFIX}mca_btl_ugni.la $static_ltlibs"
+ static_ltlibs="mca/btl/tcp/lib${OPAL_LIB_PREFIX}mca_btl_tcp.la $static_ltlibs"
else
# Other frameworks do not have to obey the
# $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/ugni/libmca_btl_ugni.la $static_ltlibs"
+ static_ltlibs="mca/btl/tcp/libmca_btl_tcp.la $static_ltlibs"
fi
- echo "extern const mca_base_component_t mca_btl_ugni_component;" >> $outfile.extern
- echo " &mca_btl_ugni_component, " >> $outfile.struct
- static_components="$static_components ugni"
+ echo "extern const mca_base_component_t mca_btl_tcp_component;" >> $outfile.extern
+ echo " &mca_btl_tcp_component, " >> $outfile.struct
+ static_components="$static_components tcp"
fi
# Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:ugni can compile" >&5
-$as_echo_n "checking if MCA component btl:ugni can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:tcp can compile" >&5
+$as_echo_n "checking if MCA component btl:tcp can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
if test -f $infile; then
# check for direct call header to include. This will be
# AC_SUBSTed later.
- if test "$DIRECT_btl" = "ugni" ; then
+ if test "$DIRECT_btl" = "tcp" ; then
if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
eval $str
else
-as_fn_error $? "*** btl component ugni was supposed to be direct-called, but
+as_fn_error $? "*** btl component tcp was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -122365,8 +122670,8 @@
else
# were we supposed to have found something in the
# post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "ugni" ; then
-as_fn_error $? "*** btl component ugni was supposed to be direct-called, but
+ if test "$DIRECT_btl" = "tcp" ; then
+as_fn_error $? "*** btl component tcp was supposed to be direct-called, but
*** does not appear to support direct calling.
*** Aborting" "$LINENO" 5
fi
@@ -122381,7 +122686,7 @@
# because it will link against these (without a dependency from
# libmpi.so to these flags)
if test "$compile_mode" = "static"; then
- if test "$btl_ugni_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$btl_tcp_WRAPPER_EXTRA_LDFLAGS" = ""; then :
@@ -122421,7 +122726,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_ugni_LDFLAGS; do
+ for arg in $btl_tcp_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -122502,7 +122807,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_ugni_WRAPPER_EXTRA_LDFLAGS; do
+ for arg in $btl_tcp_WRAPPER_EXTRA_LDFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -122544,7 +122849,7 @@
fi
- if test "$btl_ugni_WRAPPER_EXTRA_LIBS" = ""; then :
+ if test "$btl_tcp_WRAPPER_EXTRA_LIBS" = ""; then :
@@ -122584,7 +122889,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_ugni_LIBS; do
+ for arg in $btl_tcp_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -122665,7 +122970,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_ugni_WRAPPER_EXTRA_LIBS; do
+ for arg in $btl_tcp_WRAPPER_EXTRA_LIBS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -122713,7 +123018,7 @@
# if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
# component can never be used in a STOP_AT_FIRST framework, we
# don't have to implement the else clause in the literal check...
- if test "$btl_ugni_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
+ if test "$btl_tcp_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
stop_at_first=0
if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
if test "$with_devel_headers" = "yes"; then :
@@ -122756,7 +123061,7 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_ugni_WRAPPER_EXTRA_CPPFLAGS; do
+ for arg in $btl_tcp_WRAPPER_EXTRA_CPPFLAGS; do
opal_tmp=`echo $arg | cut -c1-2`
opal_append=1
if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
@@ -122799,32 +123104,32 @@
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_ugni_WRAPPER_EXTRA_CPPFLAGS ($btl_ugni_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_ugni_WRAPPER_EXTRA_CPPFLAGS ($btl_ugni_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_tcp_WRAPPER_EXTRA_CPPFLAGS ($btl_tcp_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
+$as_echo "$as_me: WARNING: ignoring btl_tcp_WRAPPER_EXTRA_CPPFLAGS ($btl_tcp_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
fi
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:ugni can compile" >&5
-$as_echo_n "checking if MCA component btl:ugni can compile... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:tcp can compile" >&5
+$as_echo_n "checking if MCA component btl:tcp can compile... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
# If this component was requested as the default for this
# type, then abort.
- if test "$with_btl" = "ugni" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ugni\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"ugni\" failed to configure properly" >&2;}
+ if test "$with_btl" = "tcp" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"tcp\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"tcp\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
fi
if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "ugni" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"ugni\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"ugni\" failed to configure properly" >&2;}
+ if test "$DIRECT_btl" = "tcp" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"tcp\" failed to configure properly" >&5
+$as_echo "$as_me: WARNING: MCA component \"tcp\" failed to configure properly" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
@@ -122832,23 +123137,23 @@
fi
# add component to all component list
- all_components="$all_components ugni"
+ all_components="$all_components tcp"
fi
# set the AM_CONDITIONAL on how we should build
if test "$compile_mode" = "dso"; then :
- BUILD_opal_btl_ugni_DSO=1
+ BUILD_opal_btl_tcp_DSO=1
else
- BUILD_opal_btl_ugni_DSO=0
+ BUILD_opal_btl_tcp_DSO=0
fi
- if test "$BUILD_opal_btl_ugni_DSO" = "1"; then
- MCA_BUILD_opal_btl_ugni_DSO_TRUE=
- MCA_BUILD_opal_btl_ugni_DSO_FALSE='#'
+ if test "$BUILD_opal_btl_tcp_DSO" = "1"; then
+ MCA_BUILD_opal_btl_tcp_DSO_TRUE=
+ MCA_BUILD_opal_btl_tcp_DSO_FALSE='#'
else
- MCA_BUILD_opal_btl_ugni_DSO_TRUE='#'
- MCA_BUILD_opal_btl_ugni_DSO_FALSE=
+ MCA_BUILD_opal_btl_tcp_DSO_TRUE='#'
+ MCA_BUILD_opal_btl_tcp_DSO_FALSE=
fi
@@ -122864,13 +123169,13 @@
- opal_show_subsubsubtitle "MCA component btl:usnic (m4 configuration macro)"
+ opal_show_subsubsubtitle "MCA component btl:uct (m4 configuration macro)"
opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
- component_path="$srcdir/opal/mca/btl/usnic"
+ component_path="$srcdir/opal/mca/btl/uct"
want_component=0
# build if:
@@ -122903,7 +123208,7 @@
# if this component type is direct and we are not it, we don't want
# to be built. Otherwise, we do want to be built.
if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "usnic" ; then
+ if test "$DIRECT_btl" = "uct" ; then
want_component=1
else
want_component=0
@@ -122915,7 +123220,7 @@
if test "$DISABLE_btl" = "1"; then :
want_component=0
fi
- if test "$DISABLE_btl_usnic" = "1"; then :
+ if test "$DISABLE_btl_uct" = "1"; then :
want_component=0
fi
@@ -122929,10 +123234,10 @@
# It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_usnic"
+ SHARED_COMPONENT="$DSO_btl_uct"
STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_usnic"
+ STATIC_COMPONENT="$STATIC_btl_uct"
shared_mode_override=static
@@ -122950,9 +123255,9 @@
compile_mode="static"
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:usnic compile mode" >&5
-$as_echo_n "checking for MCA component btl:usnic compile mode... " >&6; }
- if test "$DIRECT_btl" = "usnic" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:uct compile mode" >&5
+$as_echo_n "checking for MCA component btl:uct compile mode... " >&6; }
+ if test "$DIRECT_btl" = "uct" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
$as_echo "$compile_mode - direct" >&6; }
else
@@ -122963,23 +123268,9 @@
# try to configure the component
- ac_config_files="$ac_config_files opal/mca/btl/usnic/Makefile"
-
-
-
-# Check whether --with-usnic was given.
-if test "${with_usnic+set}" = set; then :
- withval=$with_usnic;
-fi
+ ac_config_files="$ac_config_files opal/mca/btl/uct/Makefile"
- # If --without-usnic was specified, then gracefully exit.
- # Otherwise, do the rest of the config.
- if test "x$with_usnic" = "xno"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --without-usnic specified; skipping usnic BTL" >&5
-$as_echo "$as_me: WARNING: --without-usnic specified; skipping usnic BTL" >&2;}
- should_build=0
-else
@@ -122992,7 +123283,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in unit_tests; do
+ for opal_var in ompi_check_ucx_dir; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -123011,7 +123302,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"unit_tests\""
+ opal_str="opal_scope_$opal_scope_index=\"ompi_check_ucx_dir\""
eval $opal_str
unset opal_str
@@ -123019,170 +123310,85 @@
opal_scope_index=`expr $opal_scope_index + 1`
- # see README.test for information about this scheme
- # Check whether --enable-opal-btl-usnic-unit-tests was given.
-if test "${enable_opal_btl_usnic_unit_tests+set}" = set; then :
- enableval=$enable_opal_btl_usnic_unit_tests;
-fi
+ if test -z "$ompi_check_ucx_happy"; then :
- if test "X$enable_opal_btl_usnic_unit_tests" = "Xyes"; then :
- unit_tests=1
- { $as_echo "$as_me:${as_lineno-$LINENO}: enabling usnic BTL unit tests" >&5
-$as_echo "$as_me: enabling usnic BTL unit tests" >&6;}
-else
- unit_tests=0
+# Check whether --with-ucx was given.
+if test "${with_ucx+set}" = set; then :
+ withval=$with_ucx;
fi
-cat >>confdefs.h <<_ACEOF
-#define OPAL_BTL_USNIC_UNIT_TESTS $unit_tests
-_ACEOF
- unset unit_tests
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ucx value" >&5
+$as_echo_n "checking --with-ucx value... " >&6; }
+ if test "$with_ucx" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ucx)" >&5
+$as_echo "simple no (specified --without-ucx)" >&6; }
+else
+ if test "$with_ucx" = "yes" || test "x$with_ucx" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
+$as_echo "simple ok (unspecified value)" >&6; }
+else
+ if test ! -d "$with_ucx"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ucx not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_ucx not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ if test "x`ls $with_ucx/include/ucp/api/ucp.h 2> /dev/null`" = "x"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
+$as_echo "not found" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ucx/include/ucp/api/ucp.h not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_ucx/include/ucp/api/ucp.h not found" >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ucx)" >&5
+$as_echo "sanity check ok ($with_ucx)" >&6; }
- # The current logic in btl_usnic_compat.h checks the OPAL version as a
- # proxy for the top-level OPAL version. Unfortunately this does the wrong
- # thing for other top-level projects that might use the usnic BTL, such as
- # ORCM. ORCM's versioning is totally unrelated to OPAL's. As a short term
- # workaround, just disqualify ourselves if the OPAL version seems too old.
- # In the longer term we should be doing something else, like versioning
- # OPAL and OPAL separately.
- opal_btl_usnic_happy=yes
- if test "$OPAL_MAJOR_VERSION" -eq "1" && \
- test "$OPAL_MINOR_VERSION" -lt "7"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: OPAL version appears to be too old, disabling the usnic BTL" >&5
-$as_echo "$as_me: OPAL version appears to be too old, disabling the usnic BTL" >&6;}
- opal_btl_usnic_happy=no
fi
- # We only want to build on 64 bit Linux.
- if test "$opal_btl_usnic_happy" = "yes"; then :
- # The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void *" >&5
-$as_echo_n "checking size of void *... " >&6; }
-if ${ac_cv_sizeof_void_p+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void *))" "ac_cv_sizeof_void_p" "$ac_includes_default"; then :
-else
- if test "$ac_cv_type_void_p" = yes; then
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (void *)
-See \`config.log' for more details" "$LINENO" 5; }
- else
- ac_cv_sizeof_void_p=0
- fi
fi
+
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_void_p" >&5
-$as_echo "$ac_cv_sizeof_void_p" >&6; }
+fi
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_VOID_P $ac_cv_sizeof_void_p
-_ACEOF
+# Check whether --with-ucx-libdir was given.
+if test "${with_ucx_libdir+set}" = set; then :
+ withval=$with_ucx_libdir;
+fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64 bit Linux" >&5
-$as_echo_n "checking for 64 bit Linux... " >&6; }
- case $host_os in
- *linux*)
- if test $ac_cv_sizeof_void_p -eq 8; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ucx-libdir value" >&5
+$as_echo_n "checking --with-ucx-libdir value... " >&6; }
+ if test "$with_ucx_libdir" = "no" ; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ucx-libdir)" >&5
+$as_echo "simple no (specified --without-ucx-libdir)" >&6; }
else
- opal_btl_usnic_happy=no
-fi
- ;;
- *)
- opal_btl_usnic_happy=no
- ;;
- esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $opal_btl_usnic_happy" >&5
-$as_echo "$opal_btl_usnic_happy" >&6; }
-
-fi
-
- if test "$opal_btl_usnic_happy" = "yes"; then :
- # The usnic BTL requires OFI libfabric support
-
- # Check for OFI libfabric. Note that $opal_ofi_happy is used in
- # other configure.m4's to know if OFI/libfabric configured
- # successfully. We only need to run the back-end checks once, but
- # at least emit a "checking..." statement each subsequent time
- # this macro is invoked so that configure's stdout has
- # sensible/logical output.
- if test -z "$opal_ofi_happy"; then :
-
- # Add --with options
-
-# Check whether --with-libfabric was given.
-if test "${with_libfabric+set}" = set; then :
- withval=$with_libfabric;
-fi
-
-
-# Check whether --with-libfabric-libdir was given.
-if test "${with_libfabric_libdir+set}" = set; then :
- withval=$with_libfabric_libdir;
-fi
-
-
-
-# Check whether --with-ofi was given.
-if test "${with_ofi+set}" = set; then :
- withval=$with_ofi;
-fi
-
-
-
-# Check whether --with-ofi-libdir was given.
-if test "${with_ofi_libdir+set}" = set; then :
- withval=$with_ofi_libdir;
-fi
-
-
- if test "$with_ofi" = ""; then
- with_ofi=$with_libfabric
- fi
-
- if test "$with_ofi_libdir" = ""; then
- with_ofi_libdir=$with_libfabric_libdir
- fi
-
- # Sanity check the --with values
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ofi value" >&5
-$as_echo_n "checking --with-ofi value... " >&6; }
- if test "$with_ofi" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ofi)" >&5
-$as_echo "simple no (specified --without-ofi)" >&6; }
-else
- if test "$with_ofi" = "yes" || test "x$with_ofi" = "x"; then :
+ if test "$with_ucx_libdir" = "yes" || test "x$with_ucx_libdir" = "x"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
$as_echo "simple ok (unspecified value)" >&6; }
else
- if test ! -d "$with_ofi"; then :
+ if test ! -d "$with_ucx_libdir"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ofi not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_ofi not found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ucx_libdir not found" >&5
+$as_echo "$as_me: WARNING: Directory $with_ucx_libdir not found" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
else
- if test "x`ls $with_ofi/include/rdma/fabric.h 2> /dev/null`" = "x"; then :
+ if test "x`ls $with_ucx_libdir/libucp.* 2> /dev/null`" = "x"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ofi/include/rdma/fabric.h not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_ofi/include/rdma/fabric.h not found" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ucx_libdir/libucp.* not found" >&5
+$as_echo "$as_me: WARNING: Expected file $with_ucx_libdir/libucp.* not found" >&2;}
as_fn_error $? "Cannot continue" "$LINENO" 5
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ofi)" >&5
-$as_echo "sanity check ok ($with_ofi)" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ucx_libdir)" >&5
+$as_echo "sanity check ok ($with_ucx_libdir)" >&6; }
fi
@@ -123196,118 +123402,113 @@
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-ofi-libdir value" >&5
-$as_echo_n "checking --with-ofi-libdir value... " >&6; }
- if test "$with_ofi_libdir" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-ofi-libdir)" >&5
-$as_echo "simple no (specified --without-ofi-libdir)" >&6; }
-else
- if test "$with_ofi_libdir" = "yes" || test "x$with_ofi_libdir" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
-$as_echo "simple ok (unspecified value)" >&6; }
+ if test "$with_ucx" != "no"; then :
+ if test -n "$with_ucx" && test "$with_ucx" != "yes"; then :
+ ompi_check_ucx_dir="$with_ucx"
else
- if test ! -d "$with_ofi_libdir"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_ofi_libdir not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_ofi_libdir not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ucx" >&5
+$as_echo_n "checking for ucx... " >&6; }
+
+if test -n "$ucx_CFLAGS"; then
+ pkg_cv_ucx_CFLAGS="$ucx_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ucx_CFLAGS=`$PKG_CONFIG --cflags "ucx" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
else
- if test "x`ls $with_ofi_libdir/libfabric.* 2> /dev/null`" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_ofi_libdir/libfabric.* not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_ofi_libdir/libfabric.* not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$ucx_LIBS"; then
+ pkg_cv_ucx_LIBS="$ucx_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ucx_LIBS=`$PKG_CONFIG --libs "ucx" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_ofi_libdir)" >&5
-$as_echo "sanity check ok ($with_ofi_libdir)" >&6; }
-
+ pkg_failed=yes
fi
-
-
+ else
+ pkg_failed=untried
fi
-
-
+if test -n "$ucx_STATIC_LIBS"; then
+ pkg_cv_ucx_STATIC_LIBS="$ucx_STATIC_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ucx\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "ucx") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ucx_STATIC_LIBS=`$PKG_CONFIG --libs --static "ucx" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
fi
-
-
+ else
+ pkg_failed=untried
fi
+if test $pkg_failed = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_check_ofi_save_CPPFLAGS opal_check_ofi_save_LDFLAGS opal_check_ofi_save_LIBS; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_check_ofi_save_CPPFLAGS opal_check_ofi_save_LDFLAGS opal_check_ofi_save_LIBS\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
- opal_check_ofi_save_CPPFLAGS=$CPPFLAGS
- opal_check_ofi_save_LDFLAGS=$LDFLAGS
- opal_check_ofi_save_LIBS=$LIBS
-
- opal_ofi_happy=yes
- if test "$with_ofi" = "no"; then :
- opal_ofi_happy=no
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
fi
+ if test $_pkg_short_errors_supported = yes; then
+ ucx_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "ucx" 2>&1`
+ else
+ ucx_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "ucx" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$ucx_PKG_ERRORS" >&5
- if test $opal_ofi_happy = yes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking looking for OFI libfabric in" >&5
-$as_echo_n "checking looking for OFI libfabric in... " >&6; }
- if test "$with_ofi" != "yes"; then :
- opal_ofi_dir=$with_ofi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ($opal_ofi_dir)" >&5
-$as_echo "($opal_ofi_dir)" >&6; }
+ true
+elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ true
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: (default search paths)" >&5
-$as_echo "(default search paths)" >&6; }
+ ucx_CFLAGS=$pkg_cv_ucx_CFLAGS
+ ucx_LIBS=$pkg_cv_ucx_LIBS
+ ucx_STATIC_LIBS=$pkg_cv_ucx_STATIC_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ ompi_check_ucx_dir=`$PKG_CONFIG --variable=prefix ucx`
+ if test "$ompi_check_ucx_dir" = "/usr"; then :
+ ompi_check_ucx_dir=
fi
- if test ! -z "$with_ofi_libdir" && \
- test "$with_ofi_libdir" != "yes"; then :
- opal_ofi_libdir=$with_ofi_libdir
fi
-
fi
+ ompi_check_ucx_happy="no"
+ if test -z "$ompi_check_ucx_dir"; then :
- if test $opal_ofi_happy = yes; then :
-
- opal_check_package_opal_ofi_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_opal_ofi_save_LDFLAGS="$LDFLAGS"
- opal_check_package_opal_ofi_save_LIBS="$LIBS"
+ opal_check_package_ompi_check_ucx_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_ompi_check_ucx_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_ompi_check_ucx_save_LIBS="$LIBS"
- opal_check_package_opal_ofi_orig_CPPFLAGS="$opal_ofi_CPPFLAGS"
- opal_check_package_opal_ofi_orig_LDFLAGS="$opal_ofi_LDFLAGS"
- opal_check_package_opal_ofi_orig_LIBS="$opal_ofi_LIBS"
+ opal_check_package_ompi_check_ucx_orig_CPPFLAGS="$ompi_check_ucx_CPPFLAGS"
+ opal_check_package_ompi_check_ucx_orig_LDFLAGS="$ompi_check_ucx_LDFLAGS"
+ opal_check_package_ompi_check_ucx_orig_LIBS="$ompi_check_ucx_LIBS"
# This is stolen from autoconf to peek under the covers to get the
@@ -123355,22 +123556,22 @@
# so this sucks, but there's no way to get through the progression
# of header includes without killing off the cache variable and trying
# again...
- unset ac_cv_header_rdma_fabric_h
+ unset ac_cv_header_ucp_api_ucp_h
# get rid of the trailing slash(es)
- dir_prefix=$(echo $opal_ofi_dir | sed -e 'sX/*$XXg')
+ dir_prefix=$(echo | sed -e 'sX/*$XXg')
opal_check_package_header_happy="no"
if test "$dir_prefix" = "/usr" || \
test "$dir_prefix" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
$as_echo "looking for header without includes" >&6; }
- for ac_header in rdma/fabric.h
+ for ac_header in ucp/api/ucp.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "rdma/fabric.h" "ac_cv_header_rdma_fabric_h" "$ac_includes_default"
-if test "x$ac_cv_header_rdma_fabric_h" = xyes; then :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define HAVE_RDMA_FABRIC_H 1
+#define HAVE_UCP_API_UCP_H 1
_ACEOF
opal_check_package_header_happy="yes"
fi
@@ -123379,21 +123580,21 @@
if test "$opal_check_package_header_happy" = "no"; then :
# no go on the as is - reset the cache and try again
- unset ac_cv_header_rdma_fabric_h
+ unset ac_cv_header_ucp_api_ucp_h
fi
fi
if test "$opal_check_package_header_happy" = "no"; then :
if test "$dir_prefix" != ""; then :
- opal_ofi_CPPFLAGS="$opal_ofi_CPPFLAGS -I$dir_prefix/include"
+ ompi_check_ucx_CPPFLAGS="$ompi_check_ucx_CPPFLAGS -I$dir_prefix/include"
CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
fi
- for ac_header in rdma/fabric.h
+ for ac_header in ucp/api/ucp.h
do :
- ac_fn_c_check_header_mongrel "$LINENO" "rdma/fabric.h" "ac_cv_header_rdma_fabric_h" "$ac_includes_default"
-if test "x$ac_cv_header_rdma_fabric_h" = xyes; then :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define HAVE_RDMA_FABRIC_H 1
+#define HAVE_UCP_API_UCP_H 1
_ACEOF
opal_check_package_header_happy="yes"
fi
@@ -123408,15 +123609,15 @@
# see comment above
- unset ac_cv_search_fi_getinfo
+ unset ac_cv_search_ucp_cleanup
opal_check_package_lib_happy="no"
- if test "$opal_ofi_libdir" != ""; then :
+ if test "" != ""; then :
# libdir was specified - search only there
- opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_ofi_libdir"
- LDFLAGS="$LDFLAGS -L$opal_ofi_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
-$as_echo_n "checking for library containing fi_getinfo... " >&6; }
-if ${ac_cv_search_fi_getinfo+:} false; then :
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L"
+ LDFLAGS="$LDFLAGS -L"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -123429,42 +123630,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char fi_getinfo ();
+char ucp_cleanup ();
int
main ()
{
-return fi_getinfo ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' fabric; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fi_getinfo=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fi_getinfo+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_fi_getinfo+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_fi_getinfo=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
-$as_echo "$ac_cv_search_fi_getinfo" >&6; }
-ac_res=$ac_cv_search_fi_getinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -123473,22 +123674,22 @@
fi
if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- unset ac_cv_search_fi_getinfo
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
else
# libdir was not specified - go through search path
- opal_check_package_libdir="$opal_ofi_dir"
+ opal_check_package_libdir=""
if test "$opal_check_package_libdir" = "" || \
test "$opal_check_package_libdir" = "/usr" || \
test "$opal_check_package_libdir" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
-$as_echo_n "checking for library containing fi_getinfo... " >&6; }
-if ${ac_cv_search_fi_getinfo+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -123501,42 +123702,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char fi_getinfo ();
+char ucp_cleanup ();
int
main ()
{
-return fi_getinfo ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' fabric; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fi_getinfo=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fi_getinfo+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_fi_getinfo+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_fi_getinfo=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
-$as_echo "$ac_cv_search_fi_getinfo" >&6; }
-ac_res=$ac_cv_search_fi_getinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -123546,21 +123747,21 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- unset ac_cv_search_fi_getinfo
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
-$as_echo_n "checking for library containing fi_getinfo... " >&6; }
-if ${ac_cv_search_fi_getinfo+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -123573,42 +123774,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char fi_getinfo ();
+char ucp_cleanup ();
int
main ()
{
-return fi_getinfo ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' fabric; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fi_getinfo=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fi_getinfo+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_fi_getinfo+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_fi_getinfo=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
-$as_echo "$ac_cv_search_fi_getinfo" >&6; }
-ac_res=$ac_cv_search_fi_getinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -123618,22 +123819,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- unset ac_cv_search_fi_getinfo
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib64"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
-$as_echo_n "checking for library containing fi_getinfo... " >&6; }
-if ${ac_cv_search_fi_getinfo+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -123646,42 +123847,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char fi_getinfo ();
+char ucp_cleanup ();
int
main ()
{
-return fi_getinfo ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' fabric; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fi_getinfo=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fi_getinfo+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_fi_getinfo+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_fi_getinfo=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
-$as_echo "$ac_cv_search_fi_getinfo" >&6; }
-ac_res=$ac_cv_search_fi_getinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -123691,9 +123892,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- unset ac_cv_search_fi_getinfo
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
@@ -123790,12 +123991,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libfabric requires libnl v1 or v3" >&5
-$as_echo_n "checking if libfabric requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
+$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void fi_getinfo (void);
+extern void ucp_cleanup (void);
int main(int argc, char *argv[]) {
- fi_getinfo ();
+ ucp_cleanup ();
return 0;
}
EOF
@@ -123807,14 +124008,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:123810: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS 1>&5 2>&1
+echo "configure:124011: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:123817: \$? = $opal_status" >&5
+ echo "configure:124018: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -123834,8 +124035,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib fabric" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib fabric" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
fi
@@ -123849,15 +124050,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
fi
@@ -123866,19 +124067,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs fabric"
+ opal_libnlv1_libs="$opal_libnlv1_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -123957,19 +124158,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs fabric"
+ opal_libnlv3_libs="$opal_libnlv3_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -124110,11 +124311,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_fi_getinfo" != "no" &&
- test "$ac_cv_search_fi_getinfo" != "none required"; then :
- opal_ofi_LIBS="$ac_cv_search_fi_getinfo "
+ if test "$ac_cv_search_ucp_cleanup" != "no" &&
+ test "$ac_cv_search_ucp_cleanup" != "none required"; then :
+ ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
else
- opal_ofi_LIBS=""
+ ompi_check_ucx_LIBS="-luct -lucm -lucs"
fi
opal_check_package_happy="yes"
else
@@ -124133,15 +124334,15 @@
# see comment above
- unset ac_cv_search_fi_getinfo
+ unset ac_cv_search_ucp_cleanup
opal_check_package_lib_happy="no"
- if test "$opal_ofi_libdir" != ""; then :
+ if test "" != ""; then :
# libdir was specified - search only there
- opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_ofi_libdir"
- LDFLAGS="$LDFLAGS -L$opal_ofi_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
-$as_echo_n "checking for library containing fi_getinfo... " >&6; }
-if ${ac_cv_search_fi_getinfo+:} false; then :
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L"
+ LDFLAGS="$LDFLAGS -L"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -124154,42 +124355,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char fi_getinfo ();
+char ucp_cleanup ();
int
main ()
{
-return fi_getinfo ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' fabric; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fi_getinfo=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fi_getinfo+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_fi_getinfo+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_fi_getinfo=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
-$as_echo "$ac_cv_search_fi_getinfo" >&6; }
-ac_res=$ac_cv_search_fi_getinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -124198,22 +124399,22 @@
fi
if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- unset ac_cv_search_fi_getinfo
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
else
# libdir was not specified - go through search path
- opal_check_package_libdir="$opal_ofi_dir"
+ opal_check_package_libdir=""
if test "$opal_check_package_libdir" = "" || \
test "$opal_check_package_libdir" = "/usr" || \
test "$opal_check_package_libdir" = "/usr/local"; then :
# try as is...
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
-$as_echo_n "checking for library containing fi_getinfo... " >&6; }
-if ${ac_cv_search_fi_getinfo+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -124226,42 +124427,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char fi_getinfo ();
+char ucp_cleanup ();
int
main ()
{
-return fi_getinfo ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' fabric; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fi_getinfo=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fi_getinfo+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_fi_getinfo+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_fi_getinfo=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
-$as_echo "$ac_cv_search_fi_getinfo" >&6; }
-ac_res=$ac_cv_search_fi_getinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -124271,21 +124472,21 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- unset ac_cv_search_fi_getinfo
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
-$as_echo_n "checking for library containing fi_getinfo... " >&6; }
-if ${ac_cv_search_fi_getinfo+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -124298,42 +124499,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char fi_getinfo ();
+char ucp_cleanup ();
int
main ()
{
-return fi_getinfo ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' fabric; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fi_getinfo=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fi_getinfo+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_fi_getinfo+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_fi_getinfo=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
-$as_echo "$ac_cv_search_fi_getinfo" >&6; }
-ac_res=$ac_cv_search_fi_getinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -124343,22 +124544,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- unset ac_cv_search_fi_getinfo
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_ofi_LDFLAGS="$opal_ofi_LDFLAGS -L$opal_check_package_libdir/lib64"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing fi_getinfo" >&5
-$as_echo_n "checking for library containing fi_getinfo... " >&6; }
-if ${ac_cv_search_fi_getinfo+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -124371,42 +124572,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char fi_getinfo ();
+char ucp_cleanup ();
int
main ()
{
-return fi_getinfo ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' fabric; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_fi_getinfo=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_fi_getinfo+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_fi_getinfo+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_fi_getinfo=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_fi_getinfo" >&5
-$as_echo "$ac_cv_search_fi_getinfo" >&6; }
-ac_res=$ac_cv_search_fi_getinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -124416,9 +124617,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- unset ac_cv_search_fi_getinfo
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
@@ -124515,12 +124716,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libfabric requires libnl v1 or v3" >&5
-$as_echo_n "checking if libfabric requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
+$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void fi_getinfo (void);
+extern void ucp_cleanup (void);
int main(int argc, char *argv[]) {
- fi_getinfo ();
+ ucp_cleanup ();
return 0;
}
EOF
@@ -124532,14 +124733,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:124535: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lfabric $LIBS $opal_ofi_LIBS 1>&5 2>&1
+echo "configure:124736: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:124542: \$? = $opal_status" >&5
+ echo "configure:124743: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -124559,8 +124760,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib fabric" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib fabric" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
fi
@@ -124574,15 +124775,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libfabric links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
fi
@@ -124591,19 +124792,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas fabric requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs fabric"
+ opal_libnlv1_libs="$opal_libnlv1_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -124682,19 +124883,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libfabric requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libfabric (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libfabric (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libfabric." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libfabric." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs fabric"
+ opal_libnlv3_libs="$opal_libnlv3_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -124835,11 +125036,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_fi_getinfo" != "no" &&
- test "$ac_cv_search_fi_getinfo" != "none required"; then :
- opal_ofi_LIBS="$ac_cv_search_fi_getinfo "
+ if test "$ac_cv_search_ucp_cleanup" != "no" &&
+ test "$ac_cv_search_ucp_cleanup" != "none required"; then :
+ ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
else
- opal_ofi_LIBS=""
+ ompi_check_ucx_LIBS="-luct -lucm -lucs"
fi
opal_check_package_happy="yes"
else
@@ -124874,28 +125075,76 @@
if test "$opal_check_package_happy" = "yes"; then :
-
+ ompi_check_ucx_happy="yes"
else
- opal_ofi_CPPFLAGS="$opal_check_package_opal_ofi_orig_CPPFLAGS"
- opal_ofi_LDFLAGS="$opal_check_package_opal_ofi_orig_LDFLAGS"
- opal_ofi_LIBS="$opal_check_package_opal_ofi_orig_LIBS"
- opal_ofi_happy=no
+ ompi_check_ucx_CPPFLAGS="$opal_check_package_ompi_check_ucx_orig_CPPFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ ompi_check_ucx_LIBS="$opal_check_package_ompi_check_ucx_orig_LIBS"
+ ompi_check_ucx_happy="no"
fi
- CPPFLAGS="$opal_check_package_opal_ofi_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_opal_ofi_save_LDFLAGS"
- LIBS="$opal_check_package_opal_ofi_save_LIBS"
+ CPPFLAGS="$opal_check_package_ompi_check_ucx_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ LIBS="$opal_check_package_ompi_check_ucx_save_LIBS"
+
+ if test "$ompi_check_ucx_happy" = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for UCX version compatibility" >&5
+$as_echo_n "checking for UCX version compatibility... " >&6; }
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
+int
+main ()
+{
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ompi_check_ucx_happy="yes"
+else
+ ompi_check_ucx_happy="no"
fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- CPPFLAGS=$opal_check_ofi_save_CPPFLAGS
- LDFLAGS=$opal_check_ofi_save_LDFLAGS
- LIBS=$opal_check_ofi_save_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_check_ucx_happy" >&5
+$as_echo "$ompi_check_ucx_happy" >&6; }
+fi
+ if test "$ompi_check_ucx_happy" = "no"; then :
+ ompi_check_ucx_dir=/opt/ucx
+fi
+fi
+ if test "$ompi_check_ucx_happy" != yes; then :
+ if test -n "$with_ucx_libdir"; then :
+ ompi_check_ucx_libdir="$with_ucx_libdir"
+else
+ files=`ls $ompi_check_ucx_dir/lib64/libucp.* 2> /dev/null | wc -l`
+ if test "$files" -gt 0; then :
+ ompi_check_ucx_libdir=$ompi_check_ucx_dir/lib64
+else
+ ompi_check_ucx_libdir=$ompi_check_ucx_dir/lib
+fi
+fi
+
+ ompi_check_ucx_btl_uct_save_CPPFLAGS="$CPPFLAGS"
+ ompi_check_ucx_btl_uct_save_LDFLAGS="$LDFLAGS"
+ ompi_check_ucx_btl_uct_save_LIBS="$LIBS"
+ opal_check_package_ompi_check_ucx_save_CPPFLAGS="$CPPFLAGS"
+ opal_check_package_ompi_check_ucx_save_LDFLAGS="$LDFLAGS"
+ opal_check_package_ompi_check_ucx_save_LIBS="$LIBS"
+ opal_check_package_ompi_check_ucx_orig_CPPFLAGS="$ompi_check_ucx_CPPFLAGS"
+ opal_check_package_ompi_check_ucx_orig_LDFLAGS="$ompi_check_ucx_LDFLAGS"
+ opal_check_package_ompi_check_ucx_orig_LIBS="$ompi_check_ucx_LIBS"
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
@@ -124908,7 +125157,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
+ for opal_var in dir_prefix; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -124927,7 +125176,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
+ opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
eval $opal_str
unset opal_str
@@ -124935,322 +125184,357 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="OpenFabrics OFI Libfabric: $opal_ofi_happy"
- ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
-
- if test -z "$ompi_summary_section_current" ; then
- if test -z "$ompi_summary_sections" ; then
- ompi_summary_sections=$ompi_summary_section
- else
- ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
- fi
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
- else
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
- fi
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
+ # so this sucks, but there's no way to get through the progression
+ # of header includes without killing off the cache variable and trying
+ # again...
+ unset ac_cv_header_ucp_api_ucp_h
+ # get rid of the trailing slash(es)
+ dir_prefix=$(echo $ompi_check_ucx_dir | sed -e 'sX/*$XXg')
+ opal_check_package_header_happy="no"
+ if test "$dir_prefix" = "/usr" || \
+ test "$dir_prefix" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
+$as_echo "looking for header without includes" >&6; }
+ for ac_header in ucp/api/ucp.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_UCP_API_UCP_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
+fi
+done
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ if test "$opal_check_package_header_happy" = "no"; then :
+ # no go on the as is - reset the cache and try again
+ unset ac_cv_header_ucp_api_ucp_h
+fi
+fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ if test "$opal_check_package_header_happy" = "no"; then :
+ if test "$dir_prefix" != ""; then :
+ ompi_check_ucx_CPPFLAGS="$ompi_check_ucx_CPPFLAGS -I$dir_prefix/include"
+ CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
+fi
+ for ac_header in ucp/api/ucp.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "ucp/api/ucp.h" "ac_cv_header_ucp_api_ucp_h" "$ac_includes_default"
+if test "x$ac_cv_header_ucp_api_ucp_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_UCP_API_UCP_H 1
+_ACEOF
+ opal_check_package_header_happy="yes"
+fi
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+done
+ if test "$opal_check_package_header_happy" = "yes"; then :
- if test $opal_ofi_happy = no; then :
- if test -n "$with_ofi" && test "$with_ofi" != "no"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OFI libfabric support requested (via --with-ofi or --with-libfabric), but not found." >&5
-$as_echo "$as_me: WARNING: OFI libfabric support requested (via --with-ofi or --with-libfabric), but not found." >&2;}
- as_fn_error $? "Cannot continue." "$LINENO" 5
-fi
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
-fi
+ # see comment above
+ unset ac_cv_search_ucp_cleanup
+ opal_check_package_lib_happy="no"
+ if test "$ompi_check_ucx_libdir" != ""; then :
+ # libdir was specified - search only there
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$ompi_check_ucx_libdir"
+ LDFLAGS="$LDFLAGS -L$ompi_check_ucx_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OFI libfabric is available" >&5
-$as_echo_n "checking if OFI libfabric is available... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $opal_ofi_happy" >&5
-$as_echo "$opal_ofi_happy" >&6; }
-fi
-
- opal_btl_usnic_happy=$opal_ofi_happy
-fi
-
- # The usnic BTL requires at least OFI libfabric v1.1 (there was a
- # critical bug in libfabric v1.0).
- if test "$opal_btl_usnic_happy" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OFI libfabric is >= v1.1" >&5
-$as_echo_n "checking whether OFI libfabric is >= v1.1... " >&6; }
- opal_btl_usnic_CPPFLAGS_save=$CPPFLAGS
- CPPFLAGS="$opal_ofi_CPPFLAGS $CPPFLAGS"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#include
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
int
main ()
{
-
-#if !defined(FI_MAJOR_VERSION)
-#error your version of OFI libfabric is too old
-#elif FI_VERSION(FI_MAJOR_VERSION, FI_MINOR_VERSION) < FI_VERSION(1, 1)
-#error your version of OFI libfabric is too old
-#endif
-
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- opal_btl_usnic_happy=yes
-else
- opal_btl_usnic_happy=no
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $opal_btl_usnic_happy" >&5
-$as_echo "$opal_btl_usnic_happy" >&6; }
- CPPFLAGS=$opal_btl_usnic_CPPFLAGS_save
-
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
fi
-
- # Make sure we can find the OFI libfabric usnic extensions header
- if test "$opal_btl_usnic_happy" = "yes" ; then :
- opal_btl_usnic_CPPFLAGS_save=$CPPFLAGS
- CPPFLAGS="$opal_ofi_CPPFLAGS $CPPFLAGS"
- ac_fn_c_check_header_mongrel "$LINENO" "rdma/fi_ext_usnic.h" "ac_cv_header_rdma_fi_ext_usnic_h" "$ac_includes_default"
-if test "x$ac_cv_header_rdma_fi_ext_usnic_h" = xyes; then :
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- opal_btl_usnic_happy=no
+ ac_cv_search_ucp_cleanup=no
fi
-
-
- CPPFLAGS=$opal_btl_usnic_CPPFLAGS_save
-
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
fi
-
- # All done
- if test "$opal_btl_usnic_happy" = "yes"; then :
- should_build=$should_build
-else
- if test "$with_usnic" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --with-usnic was specified, but Cisco usNIC support cannot be built" >&5
-$as_echo "$as_me: WARNING: --with-usnic was specified, but Cisco usNIC support cannot be built" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
else
- should_build=0
+ opal_check_package_lib_happy="no"
fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir="$ompi_check_ucx_dir"
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="Cisco usNIC: $opal_btl_usnic_happy"
- ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
-
- if test -z "$ompi_summary_section_current" ; then
- if test -z "$ompi_summary_sections" ; then
- ompi_summary_sections=$ompi_summary_section
- else
- ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
- fi
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
- else
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
- fi
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
+else
+ ac_cv_search_ucp_cleanup=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
fi
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: after, should_build=$should_build"
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
+fi
+fi
- if test "$should_build" = "1"; then :
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
+$as_echo "looking for library in lib" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+else
+ ac_cv_search_ucp_cleanup=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- # See if it dropped an output file for us to pick up some
- # shell variables in.
- infile="$srcdir/opal/mca/btl/usnic/post_configure.sh"
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
+fi
+fi
+fi
- # Add this subdir to the mast list of all MCA component subdirs
- all_components="$all_components usnic"
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ if test "$opal_check_package_libdir" != ""; then :
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
+ LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
+$as_echo "looking for library in lib64" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- if test "$compile_mode" = "dso" ; then
- dso_components="$dso_components usnic"
- else
- if test "btl" = "common"; then
- # Static libraries in "common" frameworks are installed, and
- # therefore must obey the $FRAMEWORK_LIB_PREFIX that was
- # set.
- static_ltlibs="mca/btl/usnic/lib${OPAL_LIB_PREFIX}mca_btl_usnic.la $static_ltlibs"
- else
- # Other frameworks do not have to obey the
- # $FRAMEWORK_LIB_PREFIX prefix.
- static_ltlibs="mca/btl/usnic/libmca_btl_usnic.la $static_ltlibs"
- fi
- echo "extern const mca_base_component_t mca_btl_usnic_component;" >> $outfile.extern
- echo " &mca_btl_usnic_component, " >> $outfile.struct
- static_components="$static_components usnic"
- fi
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
- # Output pretty results
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:usnic can compile" >&5
-$as_echo_n "checking if MCA component btl:usnic can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else
+ ac_cv_search_ucp_cleanup=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
+fi
- if test -f $infile; then
- # check for direct call header to include. This will be
- # AC_SUBSTed later.
- if test "$DIRECT_btl" = "usnic" ; then
- if test "`$GREP DIRECT_CALL_HEADER $infile`" != "" ; then
- line="`$GREP DIRECT_CALL_HEADER $infile | cut -d= -f2-`"
- str="MCA_opal_btl_DIRECT_CALL_HEADER=$line"
- eval $str
- else
-as_fn_error $? "*** btl component usnic was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
- else
- # were we supposed to have found something in the
- # post_configure.sh, but the file didn't exist?
- if test "$DIRECT_btl" = "usnic" ; then
-as_fn_error $? "*** btl component usnic was supposed to be direct-called, but
-*** does not appear to support direct calling.
-*** Aborting" "$LINENO" 5
- fi
- fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ # no go on the as is.. see what happens later...
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
+fi
+fi
+fi
+fi
- # if the component is building, add it's WRAPPER_EXTRA_LDFLAGS and
- # WRAPPER_EXTRA_LIBS. If the component doesn't specify it's
- # WRAPPER_EXTRA_LIBS and WRAPPER_EXTRA_LDFLAGS, try using LDFLAGS and LIBS if
- # component didn't have it's own configure script (in which case,
- # we know it didn't set LDFLAGS and LIBS because it can't) Don't
- # have to do this if the component is building dynamically,
- # because it will link against these (without a dependency from
- # libmpi.so to these flags)
- if test "$compile_mode" = "static"; then
- if test "$btl_usnic_WRAPPER_EXTRA_LDFLAGS" = ""; then :
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # libnl v1 and libnl3 are known to *not* coexist
+ # harmoniously in the same process. Check to see if this
+ # new package will introduce such a conflict.
@@ -125263,7 +125547,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in opal_libnl_sane; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -125282,56 +125566,16 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
-
- for arg in $btl_usnic_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
-else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
-fi
-fi
- done
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
-
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
-else
+ opal_libnl_sane=1
+ case $host in
+ *linux*)
@@ -125344,7 +125588,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
+ for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -125363,7 +125607,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
+ opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
eval $opal_str
unset opal_str
@@ -125371,187 +125615,276 @@
opal_scope_index=`expr $opal_scope_index + 1`
- for arg in $btl_usnic_WRAPPER_EXTRA_LDFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_ldflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
+$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
+ cat > conftest_c.$ac_ext << EOF
+extern void ucp_cleanup (void);
+int main(int argc, char *argv[]) {
+ ucp_cleanup ();
+ return 0;
+}
+EOF
+
+ this_requires_v1=0
+ this_requires_v3=0
+ result_msg=
+
+# 1 is the command
+# 2 is actions to do if success
+# 3 is actions to do if fail
+echo "configure:125642: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
+opal_status=$?
+
+# 1 is the message
+# 2 is whether to put a prefix or not
+if test -n "1"; then
+ echo "configure:125649: \$? = $opal_status" >&5
+else
+ echo \$? = $opal_status >&5
fi
- done
+if test "$opal_status" = "0"; then
+ unset opal_status
+ ldd_output=`ldd conftest`
+ if echo $ldd_output | grep -q libnl-3.so; then :
+ this_requires_v3=1
+ result_msg="v3"
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_ldflags"; then :
- mca_wrapper_extra_ldflags=$arg
+ if echo $ldd_output | grep -q libnl.so; then :
+ this_requires_v1=1
+ result_msg="v1 $result_msg"
+fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
+$as_echo "$result_msg" >&6; }
+
else
- mca_wrapper_extra_ldflags="$mca_wrapper_extra_ldflags $arg"
+ unset opal_status
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
+
fi
+
+ # Assume that our configuration is sane; this may get reset below
+ libnl_sane=1
+
+ # Note: in all the checks below, only add this library to the list
+ # of libraries (for v1 or v3 as relevant) if we do not fail.
+ # I.e., assume that a higher level will refuse to use this library
+ # if we return failure.
+
+ # Does this library require both v1 and v3? If so, fail.
+ if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+
+ libnl_sane=0
fi
- done
+ # Does this library require v1, but some prior library required
+ # v3? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
+ if test $opal_libnl_version -eq 3; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+ libnl_sane=0
+else
+ opal_libnlv1_libs="$opal_libnlv1_libs ucp"
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv1_libs
+# Go through each item in the variable and only keep the unique ones
-fi
- if test "$btl_usnic_WRAPPER_EXTRA_LIBS" = ""; then :
+opal_count=0
+for val in ${opal_libnlv1_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
+ # Loop over every token we've seen so far
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ # Check the ending condition
+
+ opal_done="`expr $opal_i \>= $opal_count`"
+
+ # Increment the counter
+
+ opal_i="`expr $opal_i + 1`"
done
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+ # If we didn't find the token, add it to the "array"
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
+ fi
+done
+
+# Take all the items in the "array" and assemble them back into a
+# single variable
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
- for arg in $btl_usnic_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
+
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
+
+# Done; do the assignment
+
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
+
+# Clean up
+
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=1
fi
- done
+
fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
+
+ # Does this library require v3, but some prior library required
+ # v1? If so, fail.
+ if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
+ if test $opal_libnl_version -eq 1; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
+$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
+
+ libnl_sane=0
else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
-fi
-fi
- done
+ opal_libnlv3_libs="$opal_libnlv3_libs ucp"
+# 1 is the variable name to be uniq-ized
+opal_name=opal_libnlv3_libs
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+# Go through each item in the variable and only keep the unique ones
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
+opal_count=0
+for val in ${opal_libnlv3_libs}; do
+ opal_done=0
+ opal_i=1
+ opal_found=0
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
+ # Loop over every token we've seen so far
+ opal_done="`expr $opal_i \> $opal_count`"
+ while test "$opal_found" = "0" && test "$opal_done" = "0"; do
-else
+ # Have we seen this token already? Prefix the comparison with
+ # "x" so that "-Lfoo" values won't be cause an error.
+ opal_eval="expr x$val = x\$opal_array_$opal_i"
+ opal_found=`eval $opal_eval`
+ # Check the ending condition
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+ opal_done="`expr $opal_i \>= $opal_count`"
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ # Increment the counter
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
+ opal_i="`expr $opal_i + 1`"
done
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
+ # If we didn't find the token, add it to the "array"
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+ if test "$opal_found" = "0"; then
+ opal_eval="opal_array_$opal_i=$val"
+ eval $opal_eval
+ opal_count="`expr $opal_count + 1`"
+ else
+ opal_i="`expr $opal_i - 1`"
+ fi
+done
+# Take all the items in the "array" and assemble them back into a
+# single variable
- for arg in $btl_usnic_WRAPPER_EXTRA_LIBS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_libs}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_libs"; then :
- mca_wrapper_extra_libs=$arg
-else
- mca_wrapper_extra_libs="$mca_wrapper_extra_libs $arg"
+opal_i=1
+opal_done="`expr $opal_i \> $opal_count`"
+opal_newval=
+while test "$opal_done" = "0"; do
+ opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
+ eval $opal_eval
+
+ opal_eval="unset opal_array_$opal_i"
+ eval $opal_eval
+
+ opal_done="`expr $opal_i \>= $opal_count`"
+ opal_i="`expr $opal_i + 1`"
+done
+
+# Done; do the assignment
+
+opal_newval="`echo $opal_newval`"
+opal_eval="$opal_name=\"$opal_newval\""
+eval $opal_eval
+
+# Clean up
+
+unset opal_name opal_i opal_done opal_newval opal_eval opal_count
+ opal_libnl_version=3
fi
+
fi
- done
+
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ rm -f conftest conftest_c.$ac_ext
+
+ opal_libnl_sane=$libnl_sane
# Unwind the index
@@ -125575,75 +125908,10 @@
done
-fi
-
- fi
-
- # if needed, copy over WRAPPER_EXTRA_CPPFLAGS. Since a configure script
- # component can never be used in a STOP_AT_FIRST framework, we
- # don't have to implement the else clause in the literal check...
- if test "$btl_usnic_WRAPPER_EXTRA_CPPFLAGS" != ""; then :
- stop_at_first=0
- if test "$compile_mode" = "static" && test "$stop_at_first" = "1"; then :
- if test "$with_devel_headers" = "yes"; then :
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_tmp opal_append; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_tmp opal_append\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- for arg in $btl_usnic_WRAPPER_EXTRA_CPPFLAGS; do
- opal_tmp=`echo $arg | cut -c1-2`
- opal_append=1
- if test "$opal_tmp" = "-I" || test "$opal_tmp" = "-L" || test "$opal_tmp" = "-l"; then :
- for val in ${mca_wrapper_extra_cppflags}; do
- if test "x$val" = "x$arg"; then :
- opal_append=0
-fi
- done
-fi
- if test "$opal_append" = "1"; then :
- if test -z "$mca_wrapper_extra_cppflags"; then :
- mca_wrapper_extra_cppflags=$arg
-else
- mca_wrapper_extra_cppflags="$mca_wrapper_extra_cppflags $arg"
-fi
-fi
- done
+ ;;
+ esac
+ opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -125666,734 +125934,190 @@
done
+ if test $opal_check_package_libnl_check_ok -eq 0; then :
+ opal_check_package_lib_happy=no
+fi
+
fi
+
+ if test "$opal_check_package_lib_happy" = "yes"; then :
+ # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
+ if test "$ac_cv_search_ucp_cleanup" != "no" &&
+ test "$ac_cv_search_ucp_cleanup" != "none required"; then :
+ ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ignoring btl_usnic_WRAPPER_EXTRA_CPPFLAGS ($btl_usnic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&5
-$as_echo "$as_me: WARNING: ignoring btl_usnic_WRAPPER_EXTRA_CPPFLAGS ($btl_usnic_WRAPPER_EXTRA_CPPFLAGS): component conditions not met" >&2;}
+ ompi_check_ucx_LIBS="-luct -lucm -lucs"
fi
+ opal_check_package_happy="yes"
+else
+ opal_check_package_happy="no"
fi
+
+else
+ opal_check_package_happy="no"
+fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if MCA component btl:usnic can compile" >&5
-$as_echo_n "checking if MCA component btl:usnic can compile... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+ # This is stolen from autoconf to peek under the covers to get the
+ # cache variable for the library check. one should not copy this
+ # code into other places unless you want much pain and suffering
- # If this component was requested as the default for this
- # type, then abort.
- if test "$with_btl" = "usnic" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"usnic\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"usnic\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "usnic" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: MCA component \"usnic\" failed to configure properly" >&5
-$as_echo "$as_me: WARNING: MCA component \"usnic\" failed to configure properly" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This component was selected as the default (direct call)" >&5
-$as_echo "$as_me: WARNING: This component was selected as the default (direct call)" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- fi
+ # see comment above
+ unset ac_cv_search_ucp_cleanup
+ opal_check_package_lib_happy="no"
+ if test "$ompi_check_ucx_libdir" != ""; then :
+ # libdir was specified - search only there
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$ompi_check_ucx_libdir"
+ LDFLAGS="$LDFLAGS -L$ompi_check_ucx_libdir"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
- # add component to all component list
- all_components="$all_components usnic"
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
-
- if test "$should_build" -eq 1 && test "X$enable_opal_btl_usnic_unit_tests" = "Xyes"; then
- OPAL_BTL_USNIC_BUILD_UNIT_TESTS_TRUE=
- OPAL_BTL_USNIC_BUILD_UNIT_TESTS_FALSE='#'
else
- OPAL_BTL_USNIC_BUILD_UNIT_TESTS_TRUE='#'
- OPAL_BTL_USNIC_BUILD_UNIT_TESTS_FALSE=
+ ac_cv_search_ucp_cleanup=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
+else
+ opal_check_package_lib_happy="no"
fi
+ if test "$opal_check_package_lib_happy" = "no"; then :
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
+fi
+else
+ # libdir was not specified - go through search path
+ opal_check_package_libdir="$ompi_check_ucx_dir"
+ if test "$opal_check_package_libdir" = "" || \
+ test "$opal_check_package_libdir" = "/usr" || \
+ test "$opal_check_package_libdir" = "/usr/local"; then :
+ # try as is...
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
+$as_echo "looking for library without search path" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char ucp_cleanup ();
+int
+main ()
+{
+return ucp_cleanup ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ucp; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_ucp_cleanup=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
+ break
+fi
+done
+if ${ac_cv_search_ucp_cleanup+:} false; then :
- # set the AM_CONDITIONAL on how we should build
- if test "$compile_mode" = "dso"; then :
- BUILD_opal_btl_usnic_DSO=1
else
- BUILD_opal_btl_usnic_DSO=0
+ ac_cv_search_ucp_cleanup=no
fi
- if test "$BUILD_opal_btl_usnic_DSO" = "1"; then
- MCA_BUILD_opal_btl_usnic_DSO_TRUE=
- MCA_BUILD_opal_btl_usnic_DSO_FALSE='#'
-else
- MCA_BUILD_opal_btl_usnic_DSO_TRUE='#'
- MCA_BUILD_opal_btl_usnic_DSO_FALSE=
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
fi
-
-
- if test "$should_build" = "1"; then :
- components_last_result=1
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+ opal_check_package_lib_happy="yes"
else
- components_last_result=0
-fi
-
- unset compile_mode
-
-
-
-
-
- opal_show_subsubsubtitle "MCA component btl:vader (m4 configuration macro)"
-
- opal_show_verbose "OPAL_MCA_M4_CONFIG_COMPONENT: before, should_build=$components_looking_for_succeed"
-
-
-
- component_path="$srcdir/opal/mca/btl/vader"
- want_component=0
-
- # build if:
- # - the component type is direct and we are that component
- # - there is no opal_ignore file
- # - there is an opal_ignore, but there is an empty opal_unignore
- # - there is an opal_ignore, but username is in opal_unignore
- if test -d $component_path ; then
- # decide if we want the component to be built or not. This
- # is spread out because some of the logic is a little complex
- # and test's syntax isn't exactly the greatest. We want to
- # build the component by default.
- want_component=1
- if test -f $component_path/.opal_ignore ; then
- # If there is an opal_ignore file, don't build
- # the component. Note that this decision can be
- # overridden by the unignore logic below.
- want_component=0
- fi
- if test -f $component_path/.opal_unignore ; then
- # if there is an empty opal_unignore, that is
- # equivalent to having your userid in the unignore file.
- # If userid is in the file, unignore the ignore file.
- if test ! -s $component_path/.opal_unignore ; then
- want_component=1
- elif test ! -z "`$GREP $OPAL_CONFIGURE_USER $component_path/.opal_unignore`" ; then
- want_component=1
- fi
- fi
- # if this component type is direct and we are not it, we don't want
- # to be built. Otherwise, we do want to be built.
- if test ! -z "$DIRECT_btl" ; then
- if test "$DIRECT_btl" = "vader" ; then
- want_component=1
- else
- want_component=0
- fi
- fi
- fi
-
- # if we were explicitly disabled, don't build :)
- if test "$DISABLE_btl" = "1"; then :
- want_component=0
-fi
- if test "$DISABLE_btl_vader" = "1"; then :
- want_component=0
-fi
-
- if test "$want_component" = "1"; then :
- should_build=$components_looking_for_succeed
-else
- should_build=0
-fi
-
- # Allow the component to override the build mode if it really wants to.
- # It is, of course, free to end up calling MCA_COMPONENT_COMPILE_MODE
-
- SHARED_FRAMEWORK="$DSO_btl"
- SHARED_COMPONENT="$DSO_btl_vader"
-
- STATIC_FRAMEWORK="$STATIC_btl"
- STATIC_COMPONENT="$STATIC_btl_vader"
-
- shared_mode_override=static
-
- # Setup for either shared or static
- if test "$STATIC_FRAMEWORK" = "1" || \
- test "$STATIC_COMPONENT" = "1" || \
- test "$STATIC_all" = "1" ; then
- compile_mode="static"
- elif test "$shared_mode_override" = "dso" || \
- test "$SHARED_FRAMEWORK" = "1" || \
- test "$SHARED_COMPONENT" = "1" || \
- test "$DSO_all" = "1"; then
- compile_mode="dso"
- else
- compile_mode="static"
- fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MCA component btl:vader compile mode" >&5
-$as_echo_n "checking for MCA component btl:vader compile mode... " >&6; }
- if test "$DIRECT_btl" = "vader" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode - direct" >&5
-$as_echo "$compile_mode - direct" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $compile_mode" >&5
-$as_echo "$compile_mode" >&6; }
- fi
-
-
- # try to configure the component
-
- ac_config_files="$ac_config_files opal/mca/btl/vader/Makefile"
-
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in btl_vader_xpmem_happy btl_vader_cma_happy btl_vader_knem_happy; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"btl_vader_xpmem_happy btl_vader_cma_happy btl_vader_knem_happy\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- # Check for single-copy APIs
-
-
- if test -z "$opal_check_xpmem_happy" ; then
- # check for a cray installed xpmem first
-
- if test -z "$opal_check_cray_xpmem_happy" ; then
-
-# Check whether --with-cray_xpmem was given.
-if test "${with_cray_xpmem+set}" = set; then :
- withval=$with_cray_xpmem;
-else
- with_cray_xpmem=auto
-fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Cray XPMEM support" >&5
-$as_echo_n "checking for Cray XPMEM support... " >&6; }
- if test "$with_cray_xpmem" = "no"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- opal_check_xpmem_happy=no
-else
- if test "$with_cray_xpmem" = "auto" || test "$with_cray_xpmem" = "yes"; then :
-
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CRAY_XPMEM" >&5
-$as_echo_n "checking for CRAY_XPMEM... " >&6; }
-
-if test -n "$CRAY_XPMEM_CFLAGS"; then
- pkg_cv_CRAY_XPMEM_CFLAGS="$CRAY_XPMEM_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cray-xpmem\""; } >&5
- ($PKG_CONFIG --exists --print-errors "cray-xpmem") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_CRAY_XPMEM_CFLAGS=`$PKG_CONFIG --cflags "cray-xpmem" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$CRAY_XPMEM_LIBS"; then
- pkg_cv_CRAY_XPMEM_LIBS="$CRAY_XPMEM_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cray-xpmem\""; } >&5
- ($PKG_CONFIG --exists --print-errors "cray-xpmem") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_CRAY_XPMEM_LIBS=`$PKG_CONFIG --libs "cray-xpmem" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$CRAY_XPMEM_STATIC_LIBS"; then
- pkg_cv_CRAY_XPMEM_STATIC_LIBS="$CRAY_XPMEM_STATIC_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cray-xpmem\""; } >&5
- ($PKG_CONFIG --exists --print-errors "cray-xpmem") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_CRAY_XPMEM_STATIC_LIBS=`$PKG_CONFIG --libs --static "cray-xpmem" 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi
- if test $_pkg_short_errors_supported = yes; then
- CRAY_XPMEM_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "cray-xpmem" 2>&1`
- else
- CRAY_XPMEM_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "cray-xpmem" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$CRAY_XPMEM_PKG_ERRORS" >&5
-
- opal_check_cray_xpmem_happy="no"
- if test "$with_cray_xpmem" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cray XPMEM support requested but pkg-config failed." >&5
-$as_echo "$as_me: WARNING: Cray XPMEM support requested but pkg-config failed." >&2;}
- as_fn_error $? "Aborting" "$LINENO" 5
-fi
-
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- opal_check_cray_xpmem_happy="no"
- if test "$with_cray_xpmem" = "yes"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cray XPMEM support requested but pkg-config failed." >&5
-$as_echo "$as_me: WARNING: Cray XPMEM support requested but pkg-config failed." >&2;}
- as_fn_error $? "Aborting" "$LINENO" 5
-fi
-
-else
- CRAY_XPMEM_CFLAGS=$pkg_cv_CRAY_XPMEM_CFLAGS
- CRAY_XPMEM_LIBS=$pkg_cv_CRAY_XPMEM_LIBS
- CRAY_XPMEM_STATIC_LIBS=$pkg_cv_CRAY_XPMEM_STATIC_LIBS
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- opal_check_cray_xpmem_happy="yes"
-fi
-fi
-
-fi
-
- if test "$opal_check_cray_xpmem_happy" = "yes" && test "$enable_static" = "yes"; then :
- CRAY_XPMEM_LIBS = $CRAY_XPMEM_STATIC_LIBS
-fi
- fi
-
- if test "$opal_check_cray_xpmem_happy" = "yes"; then :
- opal_check_xpmem_LDFLAGS="$opal_check_xpmem_LDFLAGS $CRAY_XPMEM_LIBS"
- opal_check_xpmem_CPPFLAGS="$opal_check_xpmem_CPPFLAGS $CRAY_XPMEM_CFLAGS"
- opal_check_xpmem_LIBS="$opal_check_xpmem_LIBS $CRAY_XPMEM_LIBS"
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_XPMEM_H 1
-_ACEOF
-
- opal_check_xpmem_happy=yes
-else
- opal_check_xpmem_happy=no
-fi
-
-
- if test "$opal_check_xpmem_happy" = no ; then
-
-# Check whether --with-xpmem was given.
-if test "${with_xpmem+set}" = set; then :
- withval=$with_xpmem;
-fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-xpmem value" >&5
-$as_echo_n "checking --with-xpmem value... " >&6; }
- if test "$with_xpmem" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-xpmem)" >&5
-$as_echo "simple no (specified --without-xpmem)" >&6; }
-else
- if test "$with_xpmem" = "yes" || test "x$with_xpmem" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
-$as_echo "simple ok (unspecified value)" >&6; }
-else
- if test ! -d "$with_xpmem"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_xpmem not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_xpmem not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- if test "x`ls $with_xpmem/include/xpmem.h 2> /dev/null`" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_xpmem/include/xpmem.h not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_xpmem/include/xpmem.h not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_xpmem)" >&5
-$as_echo "sanity check ok ($with_xpmem)" >&6; }
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-
-# Check whether --with-xpmem-libdir was given.
-if test "${with_xpmem_libdir+set}" = set; then :
- withval=$with_xpmem_libdir;
-fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-xpmem-libdir value" >&5
-$as_echo_n "checking --with-xpmem-libdir value... " >&6; }
- if test "$with_xpmem_libdir" = "no" ; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple no (specified --without-xpmem-libdir)" >&5
-$as_echo "simple no (specified --without-xpmem-libdir)" >&6; }
-else
- if test "$with_xpmem_libdir" = "yes" || test "x$with_xpmem_libdir" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: simple ok (unspecified value)" >&5
-$as_echo "simple ok (unspecified value)" >&6; }
-else
- if test ! -d "$with_xpmem_libdir"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Directory $with_xpmem_libdir not found" >&5
-$as_echo "$as_me: WARNING: Directory $with_xpmem_libdir not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- if test "x`ls $with_xpmem_libdir/libxpmem.* 2> /dev/null`" = "x"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Expected file $with_xpmem_libdir/libxpmem.* not found" >&5
-$as_echo "$as_me: WARNING: Expected file $with_xpmem_libdir/libxpmem.* not found" >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: sanity check ok ($with_xpmem_libdir)" >&5
-$as_echo "sanity check ok ($with_xpmem_libdir)" >&6; }
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
- if test ! "$with_xpmem" = "no" ; then
- if test ! -z "$with_xpmem" && test "$with_xpmem" != "yes" ; then
- opal_check_xpmem_dir="$with_xpmem"
- fi
-
- if test ! -z "$with_xpmem_libdir" && test "$with_xpmem_libdir" != "yes" ; then
- opal_check_xpmem_libdir="$with_xpmem_libdir"
- fi
-
-
- opal_check_package_opal_check_xpmem_save_CPPFLAGS="$CPPFLAGS"
- opal_check_package_opal_check_xpmem_save_LDFLAGS="$LDFLAGS"
- opal_check_package_opal_check_xpmem_save_LIBS="$LIBS"
-
- opal_check_package_opal_check_xpmem_orig_CPPFLAGS="$opal_check_xpmem_CPPFLAGS"
- opal_check_package_opal_check_xpmem_orig_LDFLAGS="$opal_check_xpmem_LDFLAGS"
- opal_check_package_opal_check_xpmem_orig_LIBS="$opal_check_xpmem_LIBS"
-
-
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
-
-
-
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
-
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in dir_prefix; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
-
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
-
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"dir_prefix\""
- eval $opal_str
- unset opal_str
-
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
-
-
- # so this sucks, but there's no way to get through the progression
- # of header includes without killing off the cache variable and trying
- # again...
- unset ac_cv_header_xpmem_h
-
- # get rid of the trailing slash(es)
- dir_prefix=$(echo $opal_check_xpmem_dir | sed -e 'sX/*$XXg')
- opal_check_package_header_happy="no"
- if test "$dir_prefix" = "/usr" || \
- test "$dir_prefix" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for header without includes" >&5
-$as_echo "looking for header without includes" >&6; }
- for ac_header in xpmem.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "xpmem.h" "ac_cv_header_xpmem_h" "$ac_includes_default"
-if test "x$ac_cv_header_xpmem_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_XPMEM_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
-fi
-
-done
-
- if test "$opal_check_package_header_happy" = "no"; then :
- # no go on the as is - reset the cache and try again
- unset ac_cv_header_xpmem_h
-fi
-fi
-
- if test "$opal_check_package_header_happy" = "no"; then :
- if test "$dir_prefix" != ""; then :
- opal_check_xpmem_CPPFLAGS="$opal_check_xpmem_CPPFLAGS -I$dir_prefix/include"
- CPPFLAGS="$CPPFLAGS -I$dir_prefix/include"
-fi
- for ac_header in xpmem.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "xpmem.h" "ac_cv_header_xpmem_h" "$ac_includes_default"
-if test "x$ac_cv_header_xpmem_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_XPMEM_H 1
-_ACEOF
- opal_check_package_header_happy="yes"
-fi
-
-done
-
- if test "$opal_check_package_header_happy" = "yes"; then :
-
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
-
-
- # see comment above
- unset ac_cv_search_xpmem_make
- opal_check_package_lib_happy="no"
- if test "$opal_check_xpmem_libdir" != ""; then :
- # libdir was specified - search only there
- opal_check_xpmem_LDFLAGS="$opal_check_xpmem_LDFLAGS -L$opal_check_xpmem_libdir"
- LDFLAGS="$LDFLAGS -L$opal_check_xpmem_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing xpmem_make" >&5
-$as_echo_n "checking for library containing xpmem_make... " >&6; }
-if ${ac_cv_search_xpmem_make+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char xpmem_make ();
-int
-main ()
-{
-return xpmem_make ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' xpmem; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_xpmem_make=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_xpmem_make+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_xpmem_make+:} false; then :
-
-else
- ac_cv_search_xpmem_make=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_xpmem_make" >&5
-$as_echo "$ac_cv_search_xpmem_make" >&6; }
-ac_res=$ac_cv_search_xpmem_make
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
-fi
-
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- unset ac_cv_search_xpmem_make
-fi
-else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$opal_check_xpmem_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing xpmem_make" >&5
-$as_echo_n "checking for library containing xpmem_make... " >&6; }
-if ${ac_cv_search_xpmem_make+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char xpmem_make ();
-int
-main ()
-{
-return xpmem_make ();
- ;
- return 0;
-}
-_ACEOF
-for ac_lib in '' xpmem; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_xpmem_make=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_xpmem_make+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_xpmem_make+:} false; then :
-
-else
- ac_cv_search_xpmem_make=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_xpmem_make" >&5
-$as_echo "$ac_cv_search_xpmem_make" >&6; }
-ac_res=$ac_cv_search_xpmem_make
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
+ opal_check_package_lib_happy="no"
fi
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- unset ac_cv_search_xpmem_make
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_check_xpmem_LDFLAGS="$opal_check_xpmem_LDFLAGS -L$opal_check_package_libdir/lib"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing xpmem_make" >&5
-$as_echo_n "checking for library containing xpmem_make... " >&6; }
-if ${ac_cv_search_xpmem_make+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -126406,42 +126130,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char xpmem_make ();
+char ucp_cleanup ();
int
main ()
{
-return xpmem_make ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' xpmem; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_xpmem_make=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_xpmem_make+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_xpmem_make+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_xpmem_make=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_xpmem_make" >&5
-$as_echo "$ac_cv_search_xpmem_make" >&6; }
-ac_res=$ac_cv_search_xpmem_make
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -126451,22 +126175,22 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- unset ac_cv_search_xpmem_make
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
if test "$opal_check_package_lib_happy" = "no"; then :
if test "$opal_check_package_libdir" != ""; then :
- opal_check_xpmem_LDFLAGS="$opal_check_xpmem_LDFLAGS -L$opal_check_package_libdir/lib64"
+ ompi_check_ucx_LDFLAGS="$ompi_check_ucx_LDFLAGS -L$opal_check_package_libdir/lib64"
LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing xpmem_make" >&5
-$as_echo_n "checking for library containing xpmem_make... " >&6; }
-if ${ac_cv_search_xpmem_make+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ucp_cleanup" >&5
+$as_echo_n "checking for library containing ucp_cleanup... " >&6; }
+if ${ac_cv_search_ucp_cleanup+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -126479,42 +126203,42 @@
#ifdef __cplusplus
extern "C"
#endif
-char xpmem_make ();
+char ucp_cleanup ();
int
main ()
{
-return xpmem_make ();
+return ucp_cleanup ();
;
return 0;
}
_ACEOF
-for ac_lib in '' xpmem; do
+for ac_lib in '' ucp; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ LIBS="-l$ac_lib -luct -lucm -lucs $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_xpmem_make=$ac_res
+ ac_cv_search_ucp_cleanup=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if ${ac_cv_search_xpmem_make+:} false; then :
+ if ${ac_cv_search_ucp_cleanup+:} false; then :
break
fi
done
-if ${ac_cv_search_xpmem_make+:} false; then :
+if ${ac_cv_search_ucp_cleanup+:} false; then :
else
- ac_cv_search_xpmem_make=no
+ ac_cv_search_ucp_cleanup=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_xpmem_make" >&5
-$as_echo "$ac_cv_search_xpmem_make" >&6; }
-ac_res=$ac_cv_search_xpmem_make
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ucp_cleanup" >&5
+$as_echo "$ac_cv_search_ucp_cleanup" >&6; }
+ac_res=$ac_cv_search_ucp_cleanup
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
opal_check_package_lib_happy="yes"
@@ -126524,9 +126248,9 @@
if test "$opal_check_package_lib_happy" = "no"; then :
# no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- unset ac_cv_search_xpmem_make
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ unset ac_cv_search_ucp_cleanup
fi
fi
fi
@@ -126623,12 +126347,12 @@
ac_compiler_gnu=$ac_cv_c_compiler_gnu
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libxpmem requires libnl v1 or v3" >&5
-$as_echo_n "checking if libxpmem requires libnl v1 or v3... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libucp requires libnl v1 or v3" >&5
+$as_echo_n "checking if libucp requires libnl v1 or v3... " >&6; }
cat > conftest_c.$ac_ext << EOF
-extern void xpmem_make (void);
+extern void ucp_cleanup (void);
int main(int argc, char *argv[]) {
- xpmem_make ();
+ ucp_cleanup ();
return 0;
}
EOF
@@ -126640,14 +126364,14 @@
# 1 is the command
# 2 is actions to do if success
# 3 is actions to do if fail
-echo "configure:126643: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lxpmem $LIBS $opal_check_xpmem_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lxpmem $LIBS $opal_check_xpmem_LIBS 1>&5 2>&1
+echo "configure:126367: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS" >&5
+$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lucp $LIBS $ompi_check_ucx_LIBS 1>&5 2>&1
opal_status=$?
# 1 is the message
# 2 is whether to put a prefix or not
if test -n "1"; then
- echo "configure:126650: \$? = $opal_status" >&5
+ echo "configure:126374: \$? = $opal_status" >&5
else
echo \$? = $opal_status >&5
fi
@@ -126667,8 +126391,8 @@
else
unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib xpmem" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib xpmem" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib ucp" >&5
+$as_echo "$as_me: WARNING: Could not link a simple program with lib ucp" >&2;}
fi
@@ -126682,15 +126406,15 @@
# Does this library require both v1 and v3? If so, fail.
if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libxpmem links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libxpmem links to both libnl and libnl-3." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&5
+$as_echo "$as_me: WARNING: Unfortunately, libucp links to both libnl and libnl-3." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libxpmem (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libxpmem (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libxpmem." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libxpmem." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
fi
@@ -126699,19 +126423,19 @@
# v3? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas xpmem requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas xpmem requires libnl" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas ucp requires libnl" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libxpmem (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libxpmem (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libxpmem." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libxpmem." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv1_libs="$opal_libnlv1_libs xpmem"
+ opal_libnlv1_libs="$opal_libnlv1_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv1_libs
@@ -126790,19 +126514,19 @@
# v1? If so, fail.
if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libxpmem requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libxpmem requires libnl-3" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&5
+$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libucp requires libnl-3" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libxpmem (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libxpmem (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libxpmem." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libxpmem." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libucp (not Open MPI)." >&5
+$as_echo "$as_me: WARNING: This is an error in libucp (not Open MPI)." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libucp." >&5
+$as_echo "$as_me: WARNING: Open MPI will therefore skip using libucp." >&2;}
libnl_sane=0
else
- opal_libnlv3_libs="$opal_libnlv3_libs xpmem"
+ opal_libnlv3_libs="$opal_libnlv3_libs ucp"
# 1 is the variable name to be uniq-ized
opal_name=opal_libnlv3_libs
@@ -126943,11 +126667,11 @@
if test "$opal_check_package_lib_happy" = "yes"; then :
# The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_xpmem_make" != "no" &&
- test "$ac_cv_search_xpmem_make" != "none required"; then :
- opal_check_xpmem_LIBS="$ac_cv_search_xpmem_make "
+ if test "$ac_cv_search_ucp_cleanup" != "no" &&
+ test "$ac_cv_search_ucp_cleanup" != "none required"; then :
+ ompi_check_ucx_LIBS="$ac_cv_search_ucp_cleanup -luct -lucm -lucs"
else
- opal_check_xpmem_LIBS=""
+ ompi_check_ucx_LIBS="-luct -lucm -lucs"
fi
opal_check_package_happy="yes"
else
@@ -126955,353 +126679,439 @@
fi
-else
- opal_check_package_happy="no"
fi
-else
+ unset opal_check_package_header_happy
- # This is stolen from autoconf to peek under the covers to get the
- # cache variable for the library check. one should not copy this
- # code into other places unless you want much pain and suffering
+ # Unwind the index
+ opal_scope_index=`expr $opal_scope_index - 1`
+ opal_scope_test=`expr $opal_scope_index \> 0`
+ if test "$opal_scope_test" = "0"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
+$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
+$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
+ as_fn_error $? "Cannot continue" "$LINENO" 5
+ fi
- # see comment above
- unset ac_cv_search_xpmem_make
- opal_check_package_lib_happy="no"
- if test "$opal_check_xpmem_libdir" != ""; then :
- # libdir was specified - search only there
- opal_check_xpmem_LDFLAGS="$opal_check_xpmem_LDFLAGS -L$opal_check_xpmem_libdir"
- LDFLAGS="$LDFLAGS -L$opal_check_xpmem_libdir"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing xpmem_make" >&5
-$as_echo_n "checking for library containing xpmem_make... " >&6; }
-if ${ac_cv_search_xpmem_make+:} false; then :
- $as_echo_n "(cached) " >&6
+ # Get the variable names from that index
+ opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
+ eval $opal_str
+
+ # Iterate over all the variables and unset them all
+ for opal_var in $opal_str; do
+ unset $opal_var
+ done
+
+
+
+ if test "$opal_check_package_happy" = "yes"; then :
+ ompi_check_ucx_happy="yes"
else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ ompi_check_ucx_CPPFLAGS="$opal_check_package_ompi_check_ucx_orig_CPPFLAGS"
+ ompi_check_ucx_LDFLAGS="$opal_check_package_ompi_check_ucx_orig_LDFLAGS"
+ ompi_check_ucx_LIBS="$opal_check_package_ompi_check_ucx_orig_LIBS"
+ ompi_check_ucx_happy="no"
+fi
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char xpmem_make ();
+ CPPFLAGS="$opal_check_package_ompi_check_ucx_save_CPPFLAGS"
+ LDFLAGS="$opal_check_package_ompi_check_ucx_save_LDFLAGS"
+ LIBS="$opal_check_package_ompi_check_ucx_save_LIBS"
+
+
+ CPPFLAGS="$ompi_check_ucx_btl_uct_save_CPPFLAGS"
+ LDFLAGS="$ompi_check_ucx_btl_uct_save_LDFLAGS"
+ LIBS="$ompi_check_ucx_btl_uct_save_LIBS"
+
+ if test "$ompi_check_ucx_happy" = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for UCX version compatibility" >&5
+$as_echo_n "checking for UCX version compatibility... " >&6; }
+
+ old_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
int
main ()
{
-return xpmem_make ();
+
;
return 0;
}
_ACEOF
-for ac_lib in '' xpmem; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_xpmem_make=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_xpmem_make+:} false; then :
- break
-fi
-done
-if ${ac_cv_search_xpmem_make+:} false; then :
-
+if ac_fn_c_try_compile "$LINENO"; then :
+ ompi_check_ucx_happy="yes"
else
- ac_cv_search_xpmem_make=no
+ ompi_check_ucx_happy="no"
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ompi_check_ucx_happy" >&5
+$as_echo "$ompi_check_ucx_happy" >&6; }
+ CPPFLAGS=$old_CPPFLAGS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_xpmem_make" >&5
-$as_echo "$ac_cv_search_xpmem_make" >&6; }
-ac_res=$ac_cv_search_xpmem_make
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
-else
- opal_check_package_lib_happy="no"
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- unset ac_cv_search_xpmem_make
+ old_CPPFLAGS="$CPPFLAGS"
+ if test -n "$ompi_check_ucx_dir"; then :
+ CPPFLAGS="$CPPFLAGS -I$ompi_check_ucx_dir/include"
fi
-else
- # libdir was not specified - go through search path
- opal_check_package_libdir="$opal_check_xpmem_dir"
- if test "$opal_check_package_libdir" = "" || \
- test "$opal_check_package_libdir" = "/usr" || \
- test "$opal_check_package_libdir" = "/usr/local"; then :
- # try as is...
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library without search path" >&5
-$as_echo "looking for library without search path" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing xpmem_make" >&5
-$as_echo_n "checking for library containing xpmem_make... " >&6; }
-if ${ac_cv_search_xpmem_make+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ # Turn off UCX version v1.8 due to issue #8321
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking UCX version" >&5
+$as_echo_n "checking UCX version... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char xpmem_make ();
+#include
+ #if (UCP_API_MAJOR == 1) && (UCP_API_MINOR == 8)
+ #error "Invalid version"
+ #endif
int
main ()
{
-return xpmem_make ();
+
;
return 0;
}
_ACEOF
-for ac_lib in '' xpmem; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_xpmem_make=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_xpmem_make+:} false; then :
- break
+if ac_fn_c_try_cpp "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (not 1.8.x)" >&5
+$as_echo "ok (not 1.8.x)" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: bad (1.8.x)" >&5
+$as_echo "bad (1.8.x)" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: UCX support skipped because version 1.8.x was found, which has a known catastrophic issue." >&5
+$as_echo "$as_me: WARNING: UCX support skipped because version 1.8.x was found, which has a known catastrophic issue." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Please upgrade to UCX version 1.9 or higher." >&5
+$as_echo "$as_me: WARNING: Please upgrade to UCX version 1.9 or higher." >&2;}
+ ompi_check_ucx_happy=no
fi
-done
-if ${ac_cv_search_xpmem_make+:} false; then :
+rm -f conftest.err conftest.i conftest.$ac_ext
+ if test "$ompi_check_ucx_happy" = yes; then :
+ ac_fn_c_check_decl "$LINENO" "ucp_tag_send_nbr" "ac_cv_have_decl_ucp_tag_send_nbr" "#include
+"
+if test "x$ac_cv_have_decl_ucp_tag_send_nbr" = xyes; then :
+ ac_have_decl=1
else
- ac_cv_search_xpmem_make=no
+ ac_have_decl=0
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_TAG_SEND_NBR $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+
+$as_echo "#define HAVE_UCP_TAG_SEND_NBR 1" >>confdefs.h
+
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_xpmem_make" >&5
-$as_echo "$ac_cv_search_xpmem_make" >&6; }
-ac_res=$ac_cv_search_xpmem_make
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+
+ ac_fn_c_check_decl "$LINENO" "ucp_ep_flush_nb" "ac_cv_have_decl_ucp_ep_flush_nb" "#include
+"
+if test "x$ac_cv_have_decl_ucp_ep_flush_nb" = xyes; then :
+ ac_have_decl=1
else
- opal_check_package_lib_happy="no"
+ ac_have_decl=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- unset ac_cv_search_xpmem_make
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_EP_FLUSH_NB $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_worker_flush_nb" "ac_cv_have_decl_ucp_worker_flush_nb" "#include
+"
+if test "x$ac_cv_have_decl_ucp_worker_flush_nb" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_WORKER_FLUSH_NB $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_request_check_status" "ac_cv_have_decl_ucp_request_check_status" "#include
+"
+if test "x$ac_cv_have_decl_ucp_request_check_status" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- opal_check_xpmem_LDFLAGS="$opal_check_xpmem_LDFLAGS -L$opal_check_package_libdir/lib"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib" >&5
-$as_echo "looking for library in lib" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing xpmem_make" >&5
-$as_echo_n "checking for library containing xpmem_make... " >&6; }
-if ${ac_cv_search_xpmem_make+:} false; then :
- $as_echo_n "(cached) " >&6
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_REQUEST_CHECK_STATUS $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_put_nb" "ac_cv_have_decl_ucp_put_nb" "#include
+"
+if test "x$ac_cv_have_decl_ucp_put_nb" = xyes; then :
+ ac_have_decl=1
else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ ac_have_decl=0
+fi
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char xpmem_make ();
-int
-main ()
-{
-return xpmem_make ();
- ;
- return 0;
-}
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_PUT_NB $ac_have_decl
_ACEOF
-for ac_lib in '' xpmem; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_xpmem_make=$ac_res
+ac_fn_c_check_decl "$LINENO" "ucp_get_nb" "ac_cv_have_decl_ucp_get_nb" "#include
+"
+if test "x$ac_cv_have_decl_ucp_get_nb" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_xpmem_make+:} false; then :
- break
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_GET_NB $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_put_nbx" "ac_cv_have_decl_ucp_put_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_put_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-done
-if ${ac_cv_search_xpmem_make+:} false; then :
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_PUT_NBX $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_get_nbx" "ac_cv_have_decl_ucp_get_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_get_nbx" = xyes; then :
+ ac_have_decl=1
else
- ac_cv_search_xpmem_make=no
+ ac_have_decl=0
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_GET_NBX $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_atomic_op_nbx" "ac_cv_have_decl_ucp_atomic_op_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_atomic_op_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_xpmem_make" >&5
-$as_echo "$ac_cv_search_xpmem_make" >&6; }
-ac_res=$ac_cv_search_xpmem_make
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_OP_NBX $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_ep_flush_nbx" "ac_cv_have_decl_ucp_ep_flush_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_ep_flush_nbx" = xyes; then :
+ ac_have_decl=1
else
- opal_check_package_lib_happy="no"
+ ac_have_decl=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- unset ac_cv_search_xpmem_make
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_EP_FLUSH_NBX $ac_have_decl
+_ACEOF
+
+ ac_fn_c_check_decl "$LINENO" "ucm_test_events" "ac_cv_have_decl_ucm_test_events" "#include
+"
+if test "x$ac_cv_have_decl_ucm_test_events" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCM_TEST_EVENTS $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucm_test_external_events" "ac_cv_have_decl_ucm_test_external_events" "#include
+"
+if test "x$ac_cv_have_decl_ucm_test_external_events" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCM_TEST_EXTERNAL_EVENTS $ac_have_decl
+_ACEOF
+
+ ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_AND" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_AND" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_AND" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- if test "$opal_check_package_libdir" != ""; then :
- opal_check_xpmem_LDFLAGS="$opal_check_xpmem_LDFLAGS -L$opal_check_package_libdir/lib64"
- LDFLAGS="$LDFLAGS -L$opal_check_package_libdir/lib64"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: looking for library in lib64" >&5
-$as_echo "looking for library in lib64" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing xpmem_make" >&5
-$as_echo_n "checking for library containing xpmem_make... " >&6; }
-if ${ac_cv_search_xpmem_make+:} false; then :
- $as_echo_n "(cached) " >&6
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_POST_OP_AND $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_OR" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_OR" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_OR" = xyes; then :
+ ac_have_decl=1
else
- ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+ ac_have_decl=0
+fi
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char xpmem_make ();
-int
-main ()
-{
-return xpmem_make ();
- ;
- return 0;
-}
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_POST_OP_OR $ac_have_decl
_ACEOF
-for ac_lib in '' xpmem; do
- if test -z "$ac_lib"; then
- ac_res="none required"
- else
- ac_res=-l$ac_lib
- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
- fi
- if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_search_xpmem_make=$ac_res
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_POST_OP_XOR" "ac_cv_have_decl_UCP_ATOMIC_POST_OP_XOR" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_POST_OP_XOR" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext
- if ${ac_cv_search_xpmem_make+:} false; then :
- break
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_POST_OP_XOR $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FAND" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FAND" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FAND" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-done
-if ${ac_cv_search_xpmem_make+:} false; then :
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FAND $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FOR" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FOR" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FOR" = xyes; then :
+ ac_have_decl=1
else
- ac_cv_search_xpmem_make=no
+ ac_have_decl=0
fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FOR $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_ATOMIC_FETCH_OP_FXOR" "ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FXOR" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATOMIC_FETCH_OP_FXOR" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_xpmem_make" >&5
-$as_echo "$ac_cv_search_xpmem_make" >&6; }
-ac_res=$ac_cv_search_xpmem_make
-if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- opal_check_package_lib_happy="yes"
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATOMIC_FETCH_OP_FXOR $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" "ac_cv_have_decl_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" "#include
+"
+if test "x$ac_cv_have_decl_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN" = xyes; then :
+ ac_have_decl=1
else
- opal_check_package_lib_happy="no"
+ ac_have_decl=0
fi
- if test "$opal_check_package_lib_happy" = "no"; then :
- # no go on the as is.. see what happens later...
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- unset ac_cv_search_xpmem_make
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_PARAM_FIELD_ESTIMATED_NUM_PPN $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK" "ac_cv_have_decl_UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK" "#include
+"
+if test "x$ac_cv_have_decl_UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCP_OP_ATTR_FLAG_MULTI_SEND" "ac_cv_have_decl_UCP_OP_ATTR_FLAG_MULTI_SEND" "#include
+"
+if test "x$ac_cv_have_decl_UCP_OP_ATTR_FLAG_MULTI_SEND" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_OP_ATTR_FLAG_MULTI_SEND $ac_have_decl
+_ACEOF
+
+ ac_fn_c_check_decl "$LINENO" "UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" "ac_cv_have_decl_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" "#include
+"
+if test "x$ac_cv_have_decl_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+
+$as_echo "#define HAVE_UCP_WORKER_ADDRESS_FLAGS 1" >>confdefs.h
+
fi
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # libnl v1 and libnl3 are known to *not* coexist
- # harmoniously in the same process. Check to see if this
- # new package will introduce such a conflict.
+ ac_fn_c_check_decl "$LINENO" "UCP_ATTR_FIELD_MEMORY_TYPES" "ac_cv_have_decl_UCP_ATTR_FIELD_MEMORY_TYPES" "#include
+"
+if test "x$ac_cv_have_decl_UCP_ATTR_FIELD_MEMORY_TYPES" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_ATTR_FIELD_MEMORY_TYPES $ac_have_decl
+_ACEOF
+if test $ac_have_decl = 1; then :
+$as_echo "#define HAVE_UCP_ATTR_MEMORY_TYPES 1" >>confdefs.h
- # Is the private index set? If not, set it.
- if test "x$opal_scope_index" = "x"; then
- opal_scope_index=1
- fi
+fi
- # First, check to see if any of these variables are already set.
- # This is a simple sanity check to ensure we're not already
- # overwriting pre-existing variables (that have a non-empty
- # value). It's not a perfect check, but at least it's something.
- for opal_var in opal_libnl_sane; do
- opal_str="opal_str=\"\$$opal_var\""
- eval $opal_str
+ ac_fn_c_check_decl "$LINENO" "ucp_tag_send_nbx" "ac_cv_have_decl_ucp_tag_send_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_tag_send_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
- if test "x$opal_str" != "x"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Found configure shell variable clash at line $LINENO!" >&5
-$as_echo "$as_me: WARNING: Found configure shell variable clash at line $LINENO!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_PUSH called on \"$opal_var\"," >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: but it is already defined with value \"$opal_str\"" >&5
-$as_echo "$as_me: WARNING: but it is already defined with value \"$opal_str\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
- fi
- done
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_TAG_SEND_NBX $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_tag_send_sync_nbx" "ac_cv_have_decl_ucp_tag_send_sync_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_tag_send_sync_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
- # Ok, we passed the simple sanity check. Save all these names so
- # that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_libnl_sane\""
- eval $opal_str
- unset opal_str
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_TAG_SEND_SYNC_NBX $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "ucp_tag_recv_nbx" "ac_cv_have_decl_ucp_tag_recv_nbx" "#include
+"
+if test "x$ac_cv_have_decl_ucp_tag_recv_nbx" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
- env | grep opal_scope
- opal_scope_index=`expr $opal_scope_index + 1`
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCP_TAG_RECV_NBX $ac_have_decl
+_ACEOF
+
+ ac_fn_c_check_type "$LINENO" "ucp_request_param_t" "ac_cv_type_ucp_request_param_t" "#include
+"
+if test "x$ac_cv_type_ucp_request_param_t" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_UCP_REQUEST_PARAM_T 1
+_ACEOF
+
+
+fi
+
+
+fi
+ CPPFLAGS=$old_CPPFLAGS
- opal_libnl_sane=1
- case $host in
- *linux*)
@@ -127314,7 +127124,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg; do
+ for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -127333,7 +127143,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"this_requires_v1 libnl_sane this_requires_v3 ldd_output result_msg\""
+ opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
eval $opal_str
unset opal_str
@@ -127341,303 +127151,21 @@
opal_scope_index=`expr $opal_scope_index + 1`
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libxpmem requires libnl v1 or v3" >&5
-$as_echo_n "checking if libxpmem requires libnl v1 or v3... " >&6; }
- cat > conftest_c.$ac_ext << EOF
-extern void xpmem_make (void);
-int main(int argc, char *argv[]) {
- xpmem_make ();
- return 0;
-}
-EOF
-
- this_requires_v1=0
- this_requires_v3=0
- result_msg=
-
-# 1 is the command
-# 2 is actions to do if success
-# 3 is actions to do if fail
-echo "configure:127368: $CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lxpmem $LIBS $opal_check_xpmem_LIBS" >&5
-$CC -o conftest $CFLAGS $CPPFLAGS conftest_c.$ac_ext $LDFLAGS -lxpmem $LIBS $opal_check_xpmem_LIBS 1>&5 2>&1
-opal_status=$?
-
-# 1 is the message
-# 2 is whether to put a prefix or not
-if test -n "1"; then
- echo "configure:127375: \$? = $opal_status" >&5
-else
- echo \$? = $opal_status >&5
-fi
-if test "$opal_status" = "0"; then
- unset opal_status
- ldd_output=`ldd conftest`
- if echo $ldd_output | grep -q libnl-3.so; then :
- this_requires_v3=1
- result_msg="v3"
-fi
- if echo $ldd_output | grep -q libnl.so; then :
- this_requires_v1=1
- result_msg="v1 $result_msg"
-fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result_msg" >&5
-$as_echo "$result_msg" >&6; }
-
-else
- unset opal_status
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Could not link a simple program with lib xpmem" >&5
-$as_echo "$as_me: WARNING: Could not link a simple program with lib xpmem" >&2;}
-
-fi
-
- # Assume that our configuration is sane; this may get reset below
- libnl_sane=1
-
- # Note: in all the checks below, only add this library to the list
- # of libraries (for v1 or v3 as relevant) if we do not fail.
- # I.e., assume that a higher level will refuse to use this library
- # if we return failure.
-
- # Does this library require both v1 and v3? If so, fail.
- if test $this_requires_v1 -eq 1 && test $this_requires_v3 -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unfortunately, libxpmem links to both libnl and libnl-3." >&5
-$as_echo "$as_me: WARNING: Unfortunately, libxpmem links to both libnl and libnl-3." >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libxpmem (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libxpmem (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libxpmem." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libxpmem." >&2;}
-
- libnl_sane=0
-fi
-
- # Does this library require v1, but some prior library required
- # v3? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v1 -eq 1; then :
- if test $opal_libnl_version -eq 3; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas xpmem requires libnl" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv3_libs requires libnl-3 whereas xpmem requires libnl" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libxpmem (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libxpmem (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libxpmem." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libxpmem." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv1_libs="$opal_libnlv1_libs xpmem"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv1_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv1_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
-
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
-
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
-
- # Check the ending condition
-
- opal_done="`expr $opal_i \>= $opal_count`"
-
- # Increment the counter
-
- opal_i="`expr $opal_i + 1`"
- done
-
- # If we didn't find the token, add it to the "array"
-
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
- else
- opal_i="`expr $opal_i - 1`"
- fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
-
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
-
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
-
-# Done; do the assignment
-
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
-
-# Clean up
-
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=1
-fi
-
-fi
-
- # Does this library require v3, but some prior library required
- # v1? If so, fail.
- if test $libnl_sane -eq 1 && test $this_requires_v3 -eq 1; then :
- if test $opal_libnl_version -eq 1; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libxpmem requires libnl-3" >&5
-$as_echo "$as_me: WARNING: libnl version conflict: $opal_libnlv1_libs requires libnl whereas libxpmem requires libnl-3" >&2;}
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is a configuration that is *known* to cause run-time crashes." >&5
-$as_echo "$as_me: WARNING: This is a configuration that is *known* to cause run-time crashes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This is an error in libxpmem (not Open MPI)." >&5
-$as_echo "$as_me: WARNING: This is an error in libxpmem (not Open MPI)." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Open MPI will therefore skip using libxpmem." >&5
-$as_echo "$as_me: WARNING: Open MPI will therefore skip using libxpmem." >&2;}
-
- libnl_sane=0
-else
- opal_libnlv3_libs="$opal_libnlv3_libs xpmem"
-
-# 1 is the variable name to be uniq-ized
-opal_name=opal_libnlv3_libs
-
-# Go through each item in the variable and only keep the unique ones
-
-opal_count=0
-for val in ${opal_libnlv3_libs}; do
- opal_done=0
- opal_i=1
- opal_found=0
-
- # Loop over every token we've seen so far
-
- opal_done="`expr $opal_i \> $opal_count`"
- while test "$opal_found" = "0" && test "$opal_done" = "0"; do
-
- # Have we seen this token already? Prefix the comparison with
- # "x" so that "-Lfoo" values won't be cause an error.
-
- opal_eval="expr x$val = x\$opal_array_$opal_i"
- opal_found=`eval $opal_eval`
-
- # Check the ending condition
-
- opal_done="`expr $opal_i \>= $opal_count`"
-
- # Increment the counter
-
- opal_i="`expr $opal_i + 1`"
- done
-
- # If we didn't find the token, add it to the "array"
+ ompi_summary_section=$(echo Transports | tr ' ' '_')
+ ompi_summary_line="Open UCX: $ompi_check_ucx_happy"
+ ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
- if test "$opal_found" = "0"; then
- opal_eval="opal_array_$opal_i=$val"
- eval $opal_eval
- opal_count="`expr $opal_count + 1`"
+ if test -z "$ompi_summary_section_current" ; then
+ if test -z "$ompi_summary_sections" ; then
+ ompi_summary_sections=$ompi_summary_section
+ else
+ ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
+ fi
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
else
- opal_i="`expr $opal_i - 1`"
- fi
-done
-
-# Take all the items in the "array" and assemble them back into a
-# single variable
-
-opal_i=1
-opal_done="`expr $opal_i \> $opal_count`"
-opal_newval=
-while test "$opal_done" = "0"; do
- opal_eval="opal_newval=\"$opal_newval \$opal_array_$opal_i\""
- eval $opal_eval
-
- opal_eval="unset opal_array_$opal_i"
- eval $opal_eval
-
- opal_done="`expr $opal_i \>= $opal_count`"
- opal_i="`expr $opal_i + 1`"
-done
-
-# Done; do the assignment
-
-opal_newval="`echo $opal_newval`"
-opal_eval="$opal_name=\"$opal_newval\""
-eval $opal_eval
-
-# Clean up
-
-unset opal_name opal_i opal_done opal_newval opal_eval opal_count
- opal_libnl_version=3
-fi
-
-fi
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- rm -f conftest conftest_c.$ac_ext
-
- opal_libnl_sane=$libnl_sane
-
-
- # Unwind the index
- opal_scope_index=`expr $opal_scope_index - 1`
- opal_scope_test=`expr $opal_scope_index \> 0`
- if test "$opal_scope_test" = "0"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&5
-$as_echo "$as_me: WARNING: OPAL_VAR_SCOPE_POP popped too many OPAL configure scopes." >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This usually indicates an error in configure." >&5
-$as_echo "$as_me: WARNING: This usually indicates an error in configure." >&2;}
- as_fn_error $? "Cannot continue" "$LINENO" 5
+ eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
fi
- # Get the variable names from that index
- opal_str="opal_str=\"\$opal_scope_$opal_scope_index\""
- eval $opal_str
-
- # Iterate over all the variables and unset them all
- for opal_var in $opal_str; do
- unset $opal_var
- done
-
-
- ;;
- esac
-
- opal_check_package_libnl_check_ok=$opal_libnl_sane
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -127660,28 +127188,26 @@
done
- if test $opal_check_package_libnl_check_ok -eq 0; then :
- opal_check_package_lib_happy=no
fi
-
fi
- if test "$opal_check_package_lib_happy" = "yes"; then :
- # The result of AC SEARCH_LIBS is cached in $ac_cv_search_[function]
- if test "$ac_cv_search_xpmem_make" != "no" &&
- test "$ac_cv_search_xpmem_make" != "none required"; then :
- opal_check_xpmem_LIBS="$ac_cv_search_xpmem_make "
-else
- opal_check_xpmem_LIBS=""
-fi
- opal_check_package_happy="yes"
+ if test "$ompi_check_ucx_happy" = "yes"; then :
+ btl_uct_CPPFLAGS="$btl_uct_CPPFLAGS $ompi_check_ucx_CPPFLAGS"
+ btl_uct_LDFLAGS="$btl_uct_LDFLAGS $ompi_check_ucx_LDFLAGS"
+ btl_uct_LIBS="$btl_uct_LIBS $ompi_check_ucx_LIBS"
+
+$as_echo "#define HAVE_UCX 1" >>confdefs.h
+
+ btl_uct_happy="yes"
else
- opal_check_package_happy="no"
+ if test ! -z "$with_ucx" && test "$with_ucx" != "no"; then :
+ as_fn_error $? "UCX support requested but not found. Aborting" "$LINENO" 5
fi
+$as_echo "#define HAVE_UCX 0" >>confdefs.h
+ btl_uct_happy="no"
fi
- unset opal_check_package_header_happy
# Unwind the index
@@ -127705,28 +127231,26 @@
done
-
- if test "$opal_check_package_happy" = "yes"; then :
- opal_check_xpmem_happy="yes"
-else
- opal_check_xpmem_CPPFLAGS="$opal_check_package_opal_check_xpmem_orig_CPPFLAGS"
- opal_check_xpmem_LDFLAGS="$opal_check_package_opal_check_xpmem_orig_LDFLAGS"
- opal_check_xpmem_LIBS="$opal_check_package_opal_check_xpmem_orig_LIBS"
-
+ # Check whether --enable-uct-version-check was given.
+if test "${enable_uct_version_check+set}" = set; then :
+ enableval=$enable_uct_version_check;
fi
- CPPFLAGS="$opal_check_package_opal_check_xpmem_save_CPPFLAGS"
- LDFLAGS="$opal_check_package_opal_check_xpmem_save_LDFLAGS"
- LIBS="$opal_check_package_opal_check_xpmem_save_LIBS"
-
-
- if test "$opal_check_xpmem_happy" = "no" && test -n "$with_xpmem" && test "$with_xpmem" != "yes" ; then
- as_fn_error $? "XPMEM support requested but not found. Aborting" "$LINENO" 5
- fi
- fi
- fi
-
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking check uct version" >&5
+$as_echo_n "checking check uct version... " >&6; }
+ if test "$enable_uct_version_check" != "no"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ fi
+ max_allowed_uct_major=1
+ max_allowed_uct_minor=8
+ if test "$btl_uct_happy" = "yes" && test "$enable_uct_version_check" != "no"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking UCT version compatibility" >&5
+$as_echo_n "checking UCT version compatibility... " >&6; }
# Is the private index set? If not, set it.
@@ -127738,7 +127262,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in ompi_summary_section ompi_summary_line ompi_summary_section_current; do
+ for opal_var in CPPFLAGS_save; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -127757,29 +127281,42 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"ompi_summary_section ompi_summary_line ompi_summary_section_current\""
+ opal_str="opal_scope_$opal_scope_index=\"CPPFLAGS_save\""
eval $opal_str
unset opal_str
env | grep opal_scope
opal_scope_index=`expr $opal_scope_index + 1`
+ CPPFLAGS_save="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $btl_uct_CPPFLAGS"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include
+ #if (UCT_VERNO_MAJOR > $max_allowed_uct_major)
+ #error "UCT MAJOR VERNO > $max_allowed_uct_major"
+ #endif
+ #if (UCT_VERNO_MINOR > $max_allowed_uct_minor)
+ #error "UCT MINOR VERNO > $max_allowed_uct_minor"
+ #endif
+int
+main ()
+{
- ompi_summary_section=$(echo Transports | tr ' ' '_')
- ompi_summary_line="Shared memory/XPMEM: $opal_check_xpmem_happy"
- ompi_summary_section_current=$(eval echo \$ompi_summary_values_$ompi_summary_section)
-
- if test -z "$ompi_summary_section_current" ; then
- if test -z "$ompi_summary_sections" ; then
- ompi_summary_sections=$ompi_summary_section
- else
- ompi_summary_sections="$ompi_summary_sections $ompi_summary_section"
- fi
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_line\"
- else
- eval ompi_summary_values_$ompi_summary_section=\"$ompi_summary_section_current,$ompi_summary_line\"
- fi
-
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: UCT version compatible" >&5
+$as_echo "UCT version compatible" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: UCT version not compatible - need UCX $max_allowed_uct_major.$max_allowed_uct_minor or older" >&5
+$as_echo "UCT version not compatible - need UCX $max_allowed_uct_major.$max_allowed_uct_minor or older" >&6; }
+ btl_uct_happy="no"
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+ CPPFLAGS="$CPPFLAGS_save"
# Unwind the index
opal_scope_index=`expr $opal_scope_index - 1`
@@ -127801,21 +127338,9 @@
unset $opal_var
done
-
fi
- if test "$opal_check_xpmem_happy" = "yes"; then :
-
- btl_vader_CPPFLAGS="$btl_vader_CPPFLAGS $opal_check_xpmem_CPPFLAGS"
- btl_vader_LDFLAGS="$btl_vader_LDFLAGS $opal_check_xpmem_LDFLAGS"
- btl_vader_LIBS="$btl_vader_LIBS $opal_check_xpmem_LIBS"
- btl_vader_xpmem_happy=1
-else
- btl_vader_xpmem_happy=0
-fi
-
-
- if test -z "$opal_check_knem_happy" ; then
+ if test "$btl_uct_happy" = "yes" ; then
# Is the private index set? If not, set it.
@@ -127827,7 +127352,7 @@
# This is a simple sanity check to ensure we're not already
# overwriting pre-existing variables (that have a non-empty
# value). It's not a perfect check, but at least it's something.
- for opal_var in opal_check_knem_btl_vader_save_CPPFLAGS opal_check_knem_dir; do
+ for opal_var in CPPFLAGS_save; do
opal_str="opal_str=\"\$$opal_var\""
eval $opal_str
@@ -127846,7 +127371,7 @@
# Ok, we passed the simple sanity check. Save all these names so
# that we can unset them at the end of the scope.
- opal_str="opal_scope_$opal_scope_index=\"opal_check_knem_btl_vader_save_CPPFLAGS opal_check_knem_dir\""
+ opal_str="opal_scope_$opal_scope_index=\"CPPFLAGS_save\""
eval $opal_str
unset opal_str
@@ -127854,64 +127379,141 @@
opal_scope_index=`expr $opal_scope_index + 1`
-# Check whether --with-knem was given.
-if test "${with_knem+set}" = set; then :
- withval=$with_knem;
+ CPPFLAGS_save="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $btl_uct_CPPFLAGS"
+
+ ac_fn_c_check_decl "$LINENO" "UCT_PROGRESS_THREAD_SAFE" "ac_cv_have_decl_UCT_PROGRESS_THREAD_SAFE" "#include
+"
+if test "x$ac_cv_have_decl_UCT_PROGRESS_THREAD_SAFE" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
+fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_UCT_PROGRESS_THREAD_SAFE $ac_have_decl
+_ACEOF
+ac_fn_c_check_decl "$LINENO" "UCT_CB_FLAG_SYNC" "ac_cv_have_decl_UCT_CB_FLAG_SYNC" "#include